Add store location map manager #20

Open
nalalangan wants to merge 206 commits from feature/location-map-manager into feature/store-selector-modal

206 Commits

Author SHA1 Message Date
Nico
815cd1b37f fix: trim map message empty state 2026-06-17 10:36:26 -07:00
Nico
0580914516 fix: compact map confirmation dialogs 2026-06-17 00:49:02 -07:00
Nico
c9fbbafe58 fix: focus selected map area editor 2026-06-17 00:34:35 -07:00
Nico
5ba538065f fix: expand map from every edge 2026-06-17 00:22:01 -07:00
Nico
1c50c67410 fix: expand map while dragging areas 2026-06-16 22:44:32 -07:00
Nico
dedfc30998 test: cover member map buying flow 2026-06-16 22:30:55 -07:00
Nico
5ad3c46836 fix: allow private lan cors origins 2026-06-16 09:13:17 -07:00
Nico
1c081038dd fix: adjust buy quantities with arrow keys 2026-06-16 00:52:26 -07:00
Nico
37614ea499 fix: navigate buy modal with arrow keys 2026-06-16 00:39:14 -07:00
Nico
25b1efc214 fix: keep added map areas in bounds 2026-06-16 00:25:45 -07:00
Nico
fc883e9f62 fix: request map area delete from keyboard 2026-06-16 00:20:12 -07:00
Nico
d3194959fc fix: save map drafts with shortcut 2026-06-16 00:15:03 -07:00
Nico
662fdbb6c5 fix: close selected map area with escape 2026-06-16 00:03:49 -07:00
Nico
11bace3c1b fix: support map undo shortcuts 2026-06-15 23:55:32 -07:00
Nico
ff68413e62 fix: close map layers with escape 2026-06-15 23:35:13 -07:00
Nico
407d8a6943 fix: expose map item panels 2026-06-15 23:27:09 -07:00
Nico
82eab81149 fix: expose map layer filter group 2026-06-15 23:19:40 -07:00
Nico
35ce919cd2 fix: expose map overview sections 2026-06-15 23:08:31 -07:00
Nico
32a4724858 fix: expose map status to assistive tech 2026-06-15 23:00:15 -07:00
Nico
57ed1dc70f fix: name selected map area actions 2026-06-15 18:11:24 -07:00
Nico
7251cec05e fix: name map buy modal dialog 2026-06-15 16:47:04 -07:00
Nico
567d4b6088 fix: close map buy modal with escape 2026-06-15 16:27:14 -07:00
Nico
853a30093f fix: label map buy quantity controls 2026-06-15 16:22:31 -07:00
Nico
b09edae159 fix: clear map leave guard history 2026-06-15 16:11:20 -07:00
Nico
14c01d6152 fix: improve map buy modal controls 2026-06-15 16:03:46 -07:00
Nico
984b55a4da fix: clear clean map undo state 2026-06-15 15:27:30 -07:00
Nico
4a866763ac fix: guard map browser history leaves 2026-06-15 15:08:07 -07:00
Nico
ed40554ef3 fix: preserve map selection history 2026-06-15 13:21:48 -07:00
Nico
dcafea4a95 fix: ignore no-op map field edits 2026-06-14 23:50:34 -07:00
Nico
2fb7bc6d45 fix: reset expanded map item lists 2026-06-14 23:42:41 -07:00
Nico
66d217dfc0 fix: keep selected map area after publish 2026-06-14 23:16:29 -07:00
Nico
4290b5bb50 fix: keep selected map area in view mode 2026-06-14 23:08:14 -07:00
Nico
d116129c62 fix: simplify map state messages 2026-06-14 22:58:28 -07:00
Nico
a482828244 fix: support lan dev api access 2026-06-04 23:42:32 -07:00
Nico
8ba41b06c6 fix: stabilize mobile map toolbar 2026-06-04 23:33:02 -07:00
Nico
932033682d fix: ignore no-op map edge edits 2026-06-04 23:21:07 -07:00
Nico
ac028bc446 fix: keep map area edits inside canvas 2026-06-04 23:09:28 -07:00
Nico
03a4817c5e fix: keep selected map handle reachable on zoom 2026-06-04 22:57:26 -07:00
Nico
870253eee5 fix: refit mobile maps after viewport changes 2026-06-04 22:45:40 -07:00
Nico
90404b778a fix: keep selected map area reachable 2026-06-04 22:26:30 -07:00
Nico
771436b4ca fix: simplify map edit controls 2026-06-04 22:12:47 -07:00
Nico
8ad160196c fix: simplify draft preview controls 2026-06-04 21:54:10 -07:00
Nico
95afcf3978 fix: announce map area item counts 2026-06-04 21:46:59 -07:00
Nico
1ab359d343 fix: announce locked map areas 2026-06-04 21:35:10 -07:00
Nico
67ae2763b2 fix: show locked map area badge 2026-06-04 21:25:15 -07:00
Nico
691d27fe1b fix: clarify map area toggle states 2026-06-04 21:14:45 -07:00
Nico
635347bea2 fix: clarify member map empty state 2026-06-04 21:05:48 -07:00
Nico
4c753579dd fix: stabilize map toolbar controls 2026-06-04 20:54:53 -07:00
Nico
05c9577c71 fix: size map item actions for touch 2026-06-04 20:35:38 -07:00
Nico
40776821a6 fix: omit redundant unmapped map heading 2026-06-04 20:28:14 -07:00
Nico
2af22f6bb2 fix: compact map layer reset 2026-06-04 20:20:43 -07:00
Nico
1020d11382 fix: unify map edit tool toggle 2026-06-04 20:13:31 -07:00
Nico
a7a4a8714a fix: stabilize mobile map toolbar 2026-06-04 20:06:50 -07:00
Nico
4e276797c6 fix: clarify draft viewing status 2026-06-04 19:52:02 -07:00
Nico
e5927a4811 fix: clarify draft view action 2026-06-04 19:41:52 -07:00
Nico
0c8f18e1e5 fix: hide unavailable map draft actions 2026-06-04 19:29:17 -07:00
Nico
15324c25f2 fix: compact map preview topbar 2026-06-04 19:03:43 -07:00
Nico
3bd55846a4 fix: hide zero map overview rows 2026-06-04 18:54:08 -07:00
Nico
a45f02b727 fix: hide zero draft summary rows 2026-06-04 18:39:51 -07:00
Nico
5262e89d11 fix: omit empty zone detail rows 2026-06-04 18:28:21 -07:00
Nico
7af995f561 fix: hide unavailable map setup action 2026-06-04 18:19:06 -07:00
Nico
76f3b8b086 fix: compact map setup panel 2026-06-04 18:09:06 -07:00
Nico
a2db8cd655 fix: compact map state cards 2026-06-04 17:59:24 -07:00
Nico
5f1eb30080 fix: stabilize map history controls 2026-06-04 17:47:29 -07:00
Nico
11979af190 fix: keep selected map areas on top 2026-06-04 17:37:19 -07:00
Nico
85061b93d1 fix: compact map toolbar icons 2026-06-04 17:25:35 -07:00
Nico
f25307cb47 refactor: extract map draft state helpers 2026-06-04 17:14:50 -07:00
Nico
f397f19e48 refactor: split location map manager 2026-06-04 17:04:09 -07:00
Nico
26b05d9729 test: cover fitted map panning 2026-06-04 16:49:33 -07:00
Nico
0778c1a71c fix: fit compact store maps 2026-06-04 16:41:28 -07:00
Nico
bf60bd6a3f fix: auto-fit mobile store maps 2026-06-04 16:18:11 -07:00
Nico
faf96ef929 fix: stabilize mobile map toolbar 2026-06-04 16:00:37 -07:00
Nico
155ab77541 fix: compact map message state 2026-06-04 15:47:20 -07:00
Nico
1a01c788f6 fix: compact map load error state 2026-06-04 15:37:15 -07:00
Nico
b96cb65d6f fix: compact map sheet empty states 2026-06-04 15:28:43 -07:00
Nico
913d458fd6 fix: add map sheet close action 2026-06-04 15:17:06 -07:00
Nico
9f4420b23c fix: close map layers on mode switches 2026-06-04 15:03:03 -07:00
Nico
0d05bf761e fix: keep map context while loading 2026-06-04 14:51:48 -07:00
Nico
8f06f3e072 fix: ignore stale map buy responses 2026-06-04 14:42:23 -07:00
Nico
cfa6e70c13 fix: unlock map controls after stale save 2026-06-04 14:29:55 -07:00
Nico
9772d7e043 fix: ignore stale map draft action responses 2026-06-04 14:18:16 -07:00
Nico
27a50d599c fix: close stale map delete confirmation 2026-06-04 14:07:19 -07:00
Nico
a2837facaa fix: close stale map buy modal on location change 2026-06-04 13:59:12 -07:00
Nico
5e5b6f9cbd fix: reset map layers on location load 2026-06-04 13:49:25 -07:00
Nico
10d442698b fix: compact mobile map toolbar 2026-06-04 13:40:08 -07:00
Nico
a862eba0fa fix: keep selected map area after save 2026-06-04 13:31:32 -07:00
Nico
64b8071578 fix: reset map scroll on fit 2026-06-04 13:20:57 -07:00
Nico
37a7b79cd8 test: cover unmapped bought map items 2026-06-04 13:09:43 -07:00
Nico
8510c1180a fix: keep bought map items in layer state 2026-06-04 13:01:22 -07:00
Nico
e0417783e9 fix: stabilize mobile map toolbar 2026-06-04 12:45:17 -07:00
Nico
8614c0d984 fix: include recent bought items in map data 2026-06-04 12:37:53 -07:00
Nico
48aab43220 test: cover location map draft visibility 2026-06-04 12:28:02 -07:00
Nico
1874851b37 test: update buy modal e2e for location lists 2026-06-04 12:20:04 -07:00
Nico
d5b38b6711 fix: align buy modal image placeholder 2026-06-04 12:09:57 -07:00
Nico
abda001208 fix: keep map buy flow moving after refresh failure 2026-06-04 11:54:57 -07:00
Nico
bddae7d489 fix: advance map buy modal after partial buys 2026-06-04 11:38:10 -07:00
Nico
628a4f48c2 fix: expand long zone map item lists 2026-06-04 11:29:52 -07:00
Nico
4c42808396 fix: expand long unmapped map lists 2026-06-04 11:19:43 -07:00
Nico
1658b7f979 fix: buy unmapped map items in place 2026-06-04 11:11:01 -07:00
Nico
a92c0a69c2 fix: prevent rebuying map completed items 2026-06-04 10:56:31 -07:00
Nico
35b514911b fix: buy map zone items in place 2026-06-04 10:48:06 -07:00
Nico
ada2193085 fix: clear map selection with escape 2026-06-04 10:27:36 -07:00
Nico
1b7aaa1989 fix: collapse map layers on zone selection 2026-06-04 10:17:30 -07:00
Nico
6a5d90df09 fix: focus selected map zone details 2026-06-04 10:06:54 -07:00
Nico
95ac122266 fix: stabilize map toolbar controls 2026-06-04 09:49:20 -07:00
Nico
aff9b2cac9 fix: add mobile map sheet handle 2026-06-04 09:28:26 -07:00
Nico
604025588e refactor: extract map view controls 2026-06-04 09:13:39 -07:00
Nico
bc7b8e41f8 fix: stabilize mobile map toolbar slots 2026-06-04 08:58:04 -07:00
Nico
95b14b447f refactor: extract map object actions 2026-06-04 08:41:54 -07:00
Nico
03814b8b4c refactor: extract map draft actions 2026-06-04 08:29:15 -07:00
Nico
3f6eade576 refactor: extract map draft state hook 2026-06-04 08:16:44 -07:00
Nico
d5cfd22014 fix: compact map setup states 2026-06-04 07:53:12 -07:00
Nico
ea05691a65 fix: stabilize mobile map toolbar slots 2026-06-04 07:38:49 -07:00
Nico
19d345ac9a refactor: split map object rendering 2026-06-04 07:33:48 -07:00
Nico
505d9ce0f2 refactor: split map bottom sheet sections 2026-06-04 07:17:26 -07:00
Nico
11ac4c9eb2 fix: avoid duplicate hidden map recovery 2026-06-04 07:05:38 -07:00
Nico
214df9faec fix: use toggle buttons for map area flags 2026-06-04 06:57:00 -07:00
Nico
69488bb1ba fix: size mobile map actions for touch 2026-06-04 06:41:12 -07:00
Nico
f86709f45e fix: pan mobile map while editing 2026-06-04 06:32:17 -07:00
Nico
a0feb0e0c9 refactor: extract map leave guard 2026-06-04 06:22:31 -07:00
Nico
90878a6d7f fix: silence store selector debug logs 2026-06-04 06:11:14 -07:00
Nico
f9aa38e57a fix: wrap narrow map toolbar controls 2026-06-04 06:01:50 -07:00
Nico
97a502362d fix: reserve mobile map history slot 2026-06-04 05:52:53 -07:00
Nico
be15ac9fd4 fix: guard unsaved map household switch 2026-06-04 05:38:33 -07:00
Nico
0fec9dcc3e fix: guard unsaved map logout 2026-06-04 05:29:42 -07:00
Nico
d78dca7b1a fix: guard unsaved map app navigation 2026-06-04 05:19:49 -07:00
Nico
5324ee893a fix: stabilize mobile map toolbar width 2026-06-04 05:06:57 -07:00
Nico
34c818b035 fix: scope map object zone links 2026-06-04 04:50:25 -07:00
Nico
44cc376e1b fix: ignore stale map load responses 2026-06-04 04:40:09 -07:00
Nico
567087ab53 fix: show retry state for map load failures 2026-06-04 04:28:59 -07:00
Nico
1f52d43ca4 fix: stabilize map manager size props 2026-06-04 04:14:42 -07:00
Nico
b0cfaeba60 fix: memoize map bottom sheet summaries 2026-06-04 04:05:36 -07:00
Nico
c945a71f45 fix: stabilize mobile map toolbar widths 2026-06-04 03:55:53 -07:00
Nico
9390bfdf53 fix: memoize map manager derived data 2026-06-04 03:48:47 -07:00
Nico
2a3e028281 fix: clarify bought item map layer 2026-06-04 03:38:57 -07:00
Nico
e5ccc26a89 fix: summarize draft map areas 2026-06-04 03:30:10 -07:00
Nico
8808dad38e fix: clarify map edit tool labels 2026-06-04 03:20:21 -07:00
Nico
7f73a3aed3 fix: summarize unselected location maps 2026-06-04 03:09:19 -07:00
Nico
4fd3807ebf fix: stabilize mobile map toolbar controls 2026-06-04 02:58:26 -07:00
Nico
af08bf5c94 fix: compact map topbar back control 2026-06-04 02:44:19 -07:00
Nico
bf34cc341a fix: precompute map zone item counts 2026-06-04 02:33:43 -07:00
Nico
59b82650a6 fix: use toggle pills for map layers 2026-06-04 02:22:52 -07:00
Nico
80f7831647 fix: simplify mobile map editor controls 2026-06-04 02:12:33 -07:00
Nico
e3998acc12 fix: label map object types 2026-06-04 01:36:59 -07:00
Nico
6c9323cdd8 fix: align draft setup actions 2026-06-04 01:27:20 -07:00
Nico
24f2283caf fix: remove duplicate map edit action 2026-06-04 01:18:01 -07:00
Nico
493b0b3d34 fix: expose map layer reset 2026-06-04 01:05:24 -07:00
Nico
164a95e058 fix: compact map geometry controls 2026-06-04 00:34:18 -07:00
Nico
2b534eed6a fix: hide draft maps from members 2026-06-03 23:47:24 -07:00
Nico
b941d5ffed fix: clarify partial unmapped map filters 2026-06-03 23:15:00 -07:00
Nico
76dcea237e fix: clarify partial map item filters 2026-06-03 23:04:53 -07:00
Nico
e2128a4ad7 fix: lock canvas recovery while saving 2026-06-03 22:52:51 -07:00
Nico
ba48ece884 fix: add first map area from canvas 2026-06-03 22:42:35 -07:00
Nico
784d0f4d48 fix: recover hidden areas from map canvas 2026-06-03 22:24:40 -07:00
Nico
0a16ad3e7e fix: clarify filtered zone map counts 2026-06-03 22:08:09 -07:00
Nico
214e2626fe fix: explain hidden unmapped map items 2026-06-03 21:53:39 -07:00
Nico
0ab839ef7d fix: clarify locked map area controls 2026-06-03 21:44:28 -07:00
Nico
daa283b160 fix: recover hidden map areas 2026-06-03 21:36:22 -07:00
Nico
5b8b7ee2b8 fix: clear hidden map area selection 2026-06-03 21:25:23 -07:00
Nico
1bcf4ea6d1 fix: preserve cleared map area labels 2026-06-03 21:09:27 -07:00
Nico
306812d692 fix: reuse map area display names 2026-06-03 20:43:52 -07:00
Nico
415a7223cd fix: keep saved map drafts after publish failure 2026-06-03 20:34:13 -07:00
Nico
daef7a86de fix: preserve map area accessible names 2026-06-03 20:10:31 -07:00
Nico
ff78149336 fix: disable map zoom controls at limits 2026-06-03 19:54:01 -07:00
Nico
46293cd3c2 fix: prioritize selected map draft actions 2026-06-03 19:42:00 -07:00
Nico
0701a62ff1 fix: mention keyboard map nudging 2026-06-03 19:09:47 -07:00
Nico
c8a29d20a8 fix: nudge map areas with arrow keys 2026-06-03 19:02:24 -07:00
Nico
e09a95e172 fix: explain hidden map zones 2026-06-03 18:44:29 -07:00
Nico
aaf0876b63 fix: support keyboard map area selection 2026-06-03 18:15:11 -07:00
Nico
381a21015c fix: fit maps on mobile viewports 2026-06-03 18:02:55 -07:00
Nico
bff830dd4b fix: bound map object numeric edits 2026-06-03 17:29:57 -07:00
Nico
f8b3a684b8 fix: warn before leaving unsaved map drafts 2026-06-03 17:18:04 -07:00
Nico
fd22cc1fe8 fix: lock map actions while saving 2026-06-03 16:56:32 -07:00
Nico
c236efdd72 fix: show unmapped map list overflow 2026-06-03 16:41:03 -07:00
Nico
24a6405a1a fix: reset map layer filters 2026-06-03 15:50:56 -07:00
Nico
3ac80c9a5b fix: prioritize blank map setup 2026-06-03 15:41:04 -07:00
Nico
a8f747984d fix: compact selected zone panel 2026-06-03 15:22:54 -07:00
Nico
757a5fb5b7 fix: close map object settings 2026-06-03 15:12:49 -07:00
Nico
bc6cfb97a1 fix: show changed map layers 2026-06-03 15:03:54 -07:00
Nico
eef8accf45 fix: identify selected map area 2026-06-03 14:52:42 -07:00
Nico
eb89c1f6fc fix: prioritize map draft actions 2026-06-03 14:43:06 -07:00
Nico
18b11edba9 fix: compact mobile map toolbar 2026-06-03 14:28:53 -07:00
Nico
ff6468bd71 fix: compact mobile map status chip 2026-06-03 14:12:01 -07:00
Nico
c0ed1c0472 fix: clarify map setup without zones 2026-06-03 14:02:00 -07:00
Nico
1eaddd8a07 fix: avoid dirty map state on selection 2026-06-03 13:49:33 -07:00
Nico
04b538011e fix: publish pending map edits 2026-06-03 13:38:44 -07:00
Nico
138c3e3aa8 fix: clarify map zone item empty states 2026-06-03 13:21:26 -07:00
Nico
607f74e679 fix: clarify member map empty state 2026-06-03 13:05:30 -07:00
Nico
0361420813 fix: distinguish mobile map edit modes 2026-06-03 12:56:56 -07:00
Nico
ad74262604 test: cover mobile map editor layout 2026-06-03 12:48:07 -07:00
Nico
82e948ee66 fix: confirm leaving unsaved map edits 2026-06-03 12:37:02 -07:00
Nico
d370e23529 fix: declutter map setup state 2026-06-03 12:27:37 -07:00
Nico
023aef10ec fix: enlarge map resize handle 2026-06-03 12:18:53 -07:00
Nico
c87aa8f474 test: cover starter map layout 2026-06-03 12:09:22 -07:00
Nico
96f1cf4625 fix: clarify selected zone item count 2026-06-03 11:55:08 -07:00
Nico
80f09f324d fix: compact map counts without labels 2026-06-03 11:44:01 -07:00
Nico
5b964eef1f fix: wrap long map labels 2026-06-03 11:35:49 -07:00
Nico
7bb76a8eb4 fix: clarify visible map status 2026-06-03 11:25:20 -07:00
Nico
6cddc1f95a test: cover draft map persistence 2026-06-03 11:11:05 -07:00
Nico
66e5c41563 fix: prioritize map object settings 2026-06-03 11:01:56 -07:00
Nico
9d538f97bf fix: preserve map return context 2026-06-03 10:39:15 -07:00
Nico
2a7fa1871f test: cover map object editing flow 2026-06-03 02:14:41 -07:00
Nico
6f57b485d8 feat: preserve draft map previews 2026-06-03 01:59:28 -07:00
Nico
b739be29ba feat: add drag pan for location maps 2026-06-03 01:44:40 -07:00
Nico
c100174ea8 feat: polish location map editor 2026-06-03 01:23:12 -07:00
Nico
78893545b2 feat: add location map manager 2026-06-02 01:59:20 -07:00