bc778bfd97
deps: react-leaflet 1.8 -> 4.2 (+ leaflet 1.9) — the last legacy react-* lib
...
Ground-up hooks rewrite of the app's core map. Removes the final batch of
React-19-blocking warnings (legacy context on Map/LayersControl/TileLayer/
Marker/CircleMarker/Circle/Tooltip + ReactDOM.render from the old controls).
Core: <Map> -> <MapContainer>; .leafletElement refs (6 files) -> the map/
layer instances directly, via a <MapReady> child (useMap) + plain refs on
Marker/Circle/GeoJSON; controlled viewport (onViewportChanged + state.center/
zoom) -> <MapEvents> (useMapEvents moveend/zoomend) + imperative setView;
onClick -> eventHandlers={{click}}; Path styling -> pathOptions/style;
subsUnion takes the L.Map directly.
The 4 v1-only plugins reimplemented (new in-repo helpers under Maps/):
- react-leaflet-control -> MapControl (L.Control + createPortal)
- react-leaflet-google -> GoogleMutantLayer (createLayerComponent +
leaflet.gridlayer.googlemutant; Google Maps API already loaded by Gkeys)
- react-leaflet-fullscreen -> createControlComponent + leaflet.fullscreen
- leaflet-sleep / leaflet-graphicscale kept as vanilla (work on leaflet 1.9)
Browser-verified: /fires (tiles, OSM+Google layer switch, custom control,
fullscreen, graphic scale, pan/zoom -> re-fetch, no NaN), fire detail
(GeoJSON rect + fitBounds), home (3 maps coexist; SelectionMap draggable
marker -> updatePosition + distance circle). Console now shows 0 React
warnings on home/fires. REST smoke byte-identical.
2026-07-21 18:45:15 +02:00
a1a1b9a801
deps: react-bootstrap 0.31 -> 2 (Bootstrap 5 CSS deferred as debt)
...
Removes the largest batch of React-19-blocking warnings: the 0.31
components (Grid, FormGroup, ControlLabel, Navbar.Header/Brand, Checkbox,
SafeAnchor) all leaned on legacy context / defaultProps.
29 files converted: Grid->Container, FormGroup/ControlLabel/FormControl/
HelpBlock -> Form.Group/Label/Control/Text, Checkbox -> Form.Check (label
as prop), bsStyle->variant (default->secondary), bsSize->size,
pull-right->float-end. Custom Col.js now re-exports v2's Col; custom
NavItem.js rewritten self-contained (no SafeAnchor/createChainedFunction);
Navigation.js drops react-bootstrap Navbar (raw markup anyway).
CSS stays on Bootstrap 4 (alexwine:bootstrap-4) for now: the BS4->5 jump
is entangled with the jQuery carousel/swipe + navbar-collapse and is
tracked as separate debt in UPGRADE.md. Only .form-label needed a shim
(forms.scss). Browser-verified home carousel+navbar, signup form + terms
checkbox, login form; REST smoke byte-identical.
2026-07-21 12:44:46 +02:00
12bdbe8fed
deps: i18next 10 -> 23, react-i18next 7 -> 14
...
Modernizes the whole i18n stack:
- 48 translate([], {wait:true}) / translate() HOCs -> withTranslation()
- react.wait:true -> react.useSuspense:false
- whitelist -> supportedLngs; added compatibilityJSON: 'v3' so our
natural-language keys + v3 _plural layout keep working (custom
separators ss/eth/dj preserved)
- backends: xhr -> i18next-http-backend (client), sync-fs ->
i18next-fs-backend (server); dropped i18next-localstorage-cache
(was enabled:false); languagedetector 2 -> 8
- ReSendEmail: <Interpolate> (removed in v10) -> <Trans values={{email}}/>,
dropped the removed bare t export
- saveMissing handler signature (lngs, ns, key, fallbackValue)
Silences the per-component Translate/I18n legacy-context warnings.
Browser-verified es/en switch and <Trans> interpolation on /fires;
REST smoke byte-identical.
2026-07-18 06:28:41 +02:00
f1eae84e25
deps: react-helmet -> react-helmet-async 2
...
react-helmet 5 is unmaintained and breaks under React 18 StrictMode.
Same <Helmet> API in the 15 pages; HelmetProvider wraps <App/> in the
client entry. Browser-verified: per-page titles, meta description and
hreflang alternates all inject. REST smoke byte-identical.
2026-07-18 06:14:14 +02:00
vjrj
1fdf86dd47
Union of subs 'null' when app is initialized
2018-11-18 16:24:49 +01:00
vjrj
cbc3d07f4a
Removed fragment in SubsMap
2018-03-03 11:38:49 +01:00
vjrj
dc92574bc3
Full screen on maps
2018-02-27 11:37:54 +01:00
vjrj
7ce9317876
Maps colors improved
2018-02-20 13:39:05 +01:00
vjrj
824f66df03
import L
2018-02-17 08:26:46 +01:00
vjrj
eee1abf3ed
Fix some minor bug in SubsMap
2018-02-16 20:40:17 +01:00
vjrj
ac4331edbd
Subs union to server side
2018-02-14 18:21:50 +01:00
vjrj
8a6584acb9
Fix for participe btn
2018-02-12 14:57:13 +01:00
vjrj
cd80d72e32
Added share it
2018-02-12 12:18:50 +01:00
vjrj
e46ae3a000
Added zones nav link
2018-02-12 09:49:13 +01:00
vjrj
9fafc17749
Partipe btn and link
2018-01-25 16:53:50 +01:00
vjrj
31e7810d5f
Removed 'Participe' text
2018-01-25 16:23:35 +01:00
vjrj
5cf985aada
Disable map sleep in chrome
2018-01-25 15:54:27 +01:00
vjrj
ce18aab493
Style improvements in home, navigation, and footer
2018-01-25 12:54:01 +01:00
vjrj
be33520673
Removed space
2018-01-24 21:29:46 +01:00
vjrj
3a85cfacf2
Fix home style issues
2018-01-24 20:21:42 +01:00
vjrj
3eeb14e30e
Added SubscriptionsMap
2018-01-24 16:52:07 +01:00