@ktnpm_devops/react-component 0.17.0 → 0.19.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/composites/CustomRangePicker/CustomRangePicker.d.ts.map +1 -1
- package/dist/composites/DatePickerDropdown/DatePickerDropdown.d.ts.map +1 -1
- package/dist/composites/FilterDropdown/FilterDropdown.d.ts.map +1 -1
- package/dist/composites/MultiSelectDropdown/MultiSelectDropdown.d.ts.map +1 -1
- package/dist/composites/SingleSelectDropdown/SingleSelectDropdown.d.ts.map +1 -1
- package/dist/constants.d.ts +2 -0
- package/dist/constants.d.ts.map +1 -1
- package/dist/data/LiveExplorerTable/LiveExplorerTable.d.ts.map +1 -1
- package/dist/data/LiveExplorerTable/LiveExplorerTable.types.d.ts +5 -0
- package/dist/data/LiveExplorerTable/LiveExplorerTable.types.d.ts.map +1 -1
- package/dist/hooks/usePanelPlacement.d.ts +24 -0
- package/dist/hooks/usePanelPlacement.d.ts.map +1 -0
- package/dist/index10.cjs +1 -1
- package/dist/index10.js +1 -1
- package/dist/index100.cjs +27 -39
- package/dist/index100.cjs.map +1 -1
- package/dist/index100.js +26 -38
- package/dist/index100.js.map +1 -1
- package/dist/index101.cjs +46 -7
- package/dist/index101.cjs.map +1 -1
- package/dist/index101.js +47 -8
- package/dist/index101.js.map +1 -1
- package/dist/index102.cjs +17 -10
- package/dist/index102.cjs.map +1 -1
- package/dist/index102.js +17 -10
- package/dist/index102.js.map +1 -1
- package/dist/index103.cjs +37 -20
- package/dist/index103.cjs.map +1 -1
- package/dist/index103.js +36 -19
- package/dist/index103.js.map +1 -1
- package/dist/index104.cjs +7 -14
- package/dist/index104.cjs.map +1 -1
- package/dist/index104.js +6 -13
- package/dist/index104.js.map +1 -1
- package/dist/index105.cjs +21 -10
- package/dist/index105.cjs.map +1 -1
- package/dist/index105.js +20 -9
- package/dist/index105.js.map +1 -1
- package/dist/index106.cjs +16 -64
- package/dist/index106.cjs.map +1 -1
- package/dist/index106.js +16 -64
- package/dist/index106.js.map +1 -1
- package/dist/index107.cjs +2 -11
- package/dist/index107.cjs.map +1 -1
- package/dist/index107.js +2 -11
- package/dist/index107.js.map +1 -1
- package/dist/index108.cjs +19 -48
- package/dist/index108.cjs.map +1 -1
- package/dist/index108.js +18 -47
- package/dist/index108.js.map +1 -1
- package/dist/index109.cjs +19 -18
- package/dist/index109.cjs.map +1 -1
- package/dist/index109.js +18 -17
- package/dist/index109.js.map +1 -1
- package/dist/index11.cjs +1 -1
- package/dist/index11.js +1 -1
- package/dist/index110.cjs +30 -33
- package/dist/index110.cjs.map +1 -1
- package/dist/index110.js +30 -33
- package/dist/index110.js.map +1 -1
- package/dist/index111.cjs +2 -50
- package/dist/index111.cjs.map +1 -1
- package/dist/index111.js +3 -51
- package/dist/index111.js.map +1 -1
- package/dist/index112.cjs +50 -32
- package/dist/index112.cjs.map +1 -1
- package/dist/index112.js +50 -32
- package/dist/index112.js.map +1 -1
- package/dist/index113.cjs +22 -15
- package/dist/index113.cjs.map +1 -1
- package/dist/index113.js +21 -14
- package/dist/index113.js.map +1 -1
- package/dist/index114.cjs +69 -21
- package/dist/index114.cjs.map +1 -1
- package/dist/index114.js +68 -20
- package/dist/index114.js.map +1 -1
- package/dist/index115.cjs +7 -39
- package/dist/index115.cjs.map +1 -1
- package/dist/index115.js +6 -38
- package/dist/index115.js.map +1 -1
- package/dist/index116.cjs +34 -64
- package/dist/index116.cjs.map +1 -1
- package/dist/index116.js +34 -64
- package/dist/index116.js.map +1 -1
- package/dist/index117.cjs +35 -57
- package/dist/index117.cjs.map +1 -1
- package/dist/index117.js +34 -56
- package/dist/index117.js.map +1 -1
- package/dist/index118.cjs +43 -15
- package/dist/index118.cjs.map +1 -1
- package/dist/index118.js +42 -14
- package/dist/index118.js.map +1 -1
- package/dist/index119.cjs +24 -21
- package/dist/index119.cjs.map +1 -1
- package/dist/index119.js +23 -20
- package/dist/index119.js.map +1 -1
- package/dist/index12.cjs +1 -1
- package/dist/index12.js +1 -1
- package/dist/index120.cjs +38 -16
- package/dist/index120.cjs.map +1 -1
- package/dist/index120.js +38 -16
- package/dist/index120.js.map +1 -1
- package/dist/index121.cjs +9 -7
- package/dist/index121.cjs.map +1 -1
- package/dist/index121.js +8 -6
- package/dist/index121.js.map +1 -1
- package/dist/index122.cjs +10 -18
- package/dist/index122.cjs.map +1 -1
- package/dist/index122.js +9 -17
- package/dist/index122.js.map +1 -1
- package/dist/index123.cjs +20 -7
- package/dist/index123.cjs.map +1 -1
- package/dist/index123.js +19 -6
- package/dist/index123.js.map +1 -1
- package/dist/index124.cjs +14 -19
- package/dist/index124.cjs.map +1 -1
- package/dist/index124.js +13 -18
- package/dist/index124.js.map +1 -1
- package/dist/index125.cjs +10 -84
- package/dist/index125.cjs.map +1 -1
- package/dist/index125.js +9 -83
- package/dist/index125.js.map +1 -1
- package/dist/index126.cjs +64 -16
- package/dist/index126.cjs.map +1 -1
- package/dist/index126.js +64 -16
- package/dist/index126.js.map +1 -1
- package/dist/index127.cjs +21 -30
- package/dist/index127.cjs.map +1 -1
- package/dist/index127.js +21 -30
- package/dist/index127.js.map +1 -1
- package/dist/index128.cjs +28 -1164
- package/dist/index128.cjs.map +1 -1
- package/dist/index128.js +26 -1163
- package/dist/index128.js.map +1 -1
- package/dist/index129.cjs +13 -1574
- package/dist/index129.cjs.map +1 -1
- package/dist/index129.js +12 -1574
- package/dist/index129.js.map +1 -1
- package/dist/index13.cjs +1 -1
- package/dist/index13.js +1 -1
- package/dist/index130.cjs +1161 -32
- package/dist/index130.cjs.map +1 -1
- package/dist/index130.js +1162 -32
- package/dist/index130.js.map +1 -1
- package/dist/index131.cjs +1578 -0
- package/dist/index131.cjs.map +1 -0
- package/dist/index131.js +1579 -0
- package/dist/index131.js.map +1 -0
- package/dist/index132.cjs +37 -0
- package/dist/index132.cjs.map +1 -0
- package/dist/index132.js +37 -0
- package/dist/index132.js.map +1 -0
- package/dist/index14.cjs +1 -1
- package/dist/index14.js +1 -1
- package/dist/index15.cjs +1 -1
- package/dist/index15.js +1 -1
- package/dist/index16.cjs +2 -2
- package/dist/index16.js +2 -2
- package/dist/index17.cjs +1 -1
- package/dist/index17.js +1 -1
- package/dist/index18.cjs +1 -1
- package/dist/index18.js +1 -1
- package/dist/index19.cjs +1 -1
- package/dist/index19.js +1 -1
- package/dist/index20.cjs +1 -1
- package/dist/index20.js +1 -1
- package/dist/index21.cjs +1 -1
- package/dist/index21.js +1 -1
- package/dist/index22.cjs +2 -2
- package/dist/index22.js +2 -2
- package/dist/index23.cjs +2 -2
- package/dist/index23.js +2 -2
- package/dist/index24.cjs +2 -2
- package/dist/index24.js +2 -2
- package/dist/index25.cjs +49 -35
- package/dist/index25.cjs.map +1 -1
- package/dist/index25.js +49 -35
- package/dist/index25.js.map +1 -1
- package/dist/index26.cjs +1 -1
- package/dist/index26.js +1 -1
- package/dist/index27.cjs +83 -56
- package/dist/index27.cjs.map +1 -1
- package/dist/index27.js +83 -56
- package/dist/index27.js.map +1 -1
- package/dist/index28.cjs +1 -1
- package/dist/index28.js +1 -1
- package/dist/index29.cjs +51 -39
- package/dist/index29.cjs.map +1 -1
- package/dist/index29.js +51 -39
- package/dist/index29.js.map +1 -1
- package/dist/index30.cjs +11 -11
- package/dist/index30.js +11 -11
- package/dist/index31.cjs +4 -4
- package/dist/index31.js +4 -4
- package/dist/index32.cjs +3 -3
- package/dist/index32.js +3 -3
- package/dist/index33.cjs +1 -1
- package/dist/index33.js +1 -1
- package/dist/index34.cjs +3 -2
- package/dist/index34.cjs.map +1 -1
- package/dist/index34.js +3 -2
- package/dist/index34.js.map +1 -1
- package/dist/index35.cjs +2 -2
- package/dist/index35.js +2 -2
- package/dist/index36.cjs +2 -2
- package/dist/index36.js +2 -2
- package/dist/index37.cjs +1 -1
- package/dist/index37.js +1 -1
- package/dist/index38.cjs +138 -62
- package/dist/index38.cjs.map +1 -1
- package/dist/index38.js +138 -62
- package/dist/index38.js.map +1 -1
- package/dist/index39.cjs +1 -1
- package/dist/index39.js +1 -1
- package/dist/index40.cjs +2 -2
- package/dist/index40.js +2 -2
- package/dist/index41.cjs +2 -2
- package/dist/index41.js +2 -2
- package/dist/index42.cjs +2 -2
- package/dist/index42.js +2 -2
- package/dist/index43.cjs +1 -1
- package/dist/index43.js +1 -1
- package/dist/index44.cjs +2 -2
- package/dist/index44.js +2 -2
- package/dist/index45.cjs +4 -4
- package/dist/index45.js +4 -4
- package/dist/index46.cjs +1 -1
- package/dist/index46.js +1 -1
- package/dist/index47.cjs +1 -1
- package/dist/index47.js +1 -1
- package/dist/index48.cjs +1 -1
- package/dist/index48.js +1 -1
- package/dist/index49.cjs +2 -2
- package/dist/index49.js +2 -2
- package/dist/index50.cjs +86 -47
- package/dist/index50.cjs.map +1 -1
- package/dist/index50.js +86 -47
- package/dist/index50.js.map +1 -1
- package/dist/index51.cjs +1 -1
- package/dist/index51.js +1 -1
- package/dist/index52.cjs +3 -3
- package/dist/index52.js +3 -3
- package/dist/index53.cjs +1 -1
- package/dist/index53.js +1 -1
- package/dist/index54.cjs +1 -1
- package/dist/index54.js +1 -1
- package/dist/index55.cjs +3 -3
- package/dist/index55.js +3 -3
- package/dist/index56.cjs +1 -1
- package/dist/index56.js +1 -1
- package/dist/index57.cjs +1 -1
- package/dist/index57.js +1 -1
- package/dist/index58.cjs +2 -2
- package/dist/index58.js +2 -2
- package/dist/index60.cjs +64 -13
- package/dist/index60.cjs.map +1 -1
- package/dist/index60.js +64 -13
- package/dist/index60.js.map +1 -1
- package/dist/index61.cjs +10 -19
- package/dist/index61.cjs.map +1 -1
- package/dist/index61.js +11 -20
- package/dist/index61.js.map +1 -1
- package/dist/index62.cjs +145 -19
- package/dist/index62.cjs.map +1 -1
- package/dist/index62.js +143 -17
- package/dist/index62.js.map +1 -1
- package/dist/index63.cjs +35 -5
- package/dist/index63.cjs.map +1 -1
- package/dist/index63.js +36 -6
- package/dist/index63.js.map +1 -1
- package/dist/index64.cjs +22 -143
- package/dist/index64.cjs.map +1 -1
- package/dist/index64.js +20 -141
- package/dist/index64.js.map +1 -1
- package/dist/index65.cjs +10 -16
- package/dist/index65.cjs.map +1 -1
- package/dist/index65.js +10 -16
- package/dist/index65.js.map +1 -1
- package/dist/index66.cjs +16 -19
- package/dist/index66.cjs.map +1 -1
- package/dist/index66.js +17 -20
- package/dist/index66.js.map +1 -1
- package/dist/index67.cjs +16 -13
- package/dist/index67.cjs.map +1 -1
- package/dist/index67.js +17 -14
- package/dist/index67.js.map +1 -1
- package/dist/index68.cjs +36 -39
- package/dist/index68.cjs.map +1 -1
- package/dist/index68.js +36 -39
- package/dist/index68.js.map +1 -1
- package/dist/index69.cjs +26 -17
- package/dist/index69.cjs.map +1 -1
- package/dist/index69.js +27 -18
- package/dist/index69.js.map +1 -1
- package/dist/index70.cjs +49 -19
- package/dist/index70.cjs.map +1 -1
- package/dist/index70.js +49 -19
- package/dist/index70.js.map +1 -1
- package/dist/index71.cjs +19 -4
- package/dist/index71.cjs.map +1 -1
- package/dist/index71.js +20 -5
- package/dist/index71.js.map +1 -1
- package/dist/index72.cjs +7 -116
- package/dist/index72.cjs.map +1 -1
- package/dist/index72.js +6 -115
- package/dist/index72.js.map +1 -1
- package/dist/index73.cjs +5 -38
- package/dist/index73.cjs.map +1 -1
- package/dist/index73.js +6 -39
- package/dist/index73.js.map +1 -1
- package/dist/index74.cjs +16 -52
- package/dist/index74.cjs.map +1 -1
- package/dist/index74.js +17 -53
- package/dist/index74.js.map +1 -1
- package/dist/index75.cjs +15 -39
- package/dist/index75.cjs.map +1 -1
- package/dist/index75.js +14 -38
- package/dist/index75.js.map +1 -1
- package/dist/index76.cjs +45 -91
- package/dist/index76.cjs.map +1 -1
- package/dist/index76.js +45 -91
- package/dist/index76.js.map +1 -1
- package/dist/index77.cjs +42 -30
- package/dist/index77.cjs.map +1 -1
- package/dist/index77.js +42 -30
- package/dist/index77.js.map +1 -1
- package/dist/index78.cjs +6 -22
- package/dist/index78.cjs.map +1 -1
- package/dist/index78.js +5 -21
- package/dist/index78.js.map +1 -1
- package/dist/index79.cjs +16 -68
- package/dist/index79.cjs.map +1 -1
- package/dist/index79.js +16 -68
- package/dist/index79.js.map +1 -1
- package/dist/index80.cjs +6 -7
- package/dist/index80.cjs.map +1 -1
- package/dist/index80.js +5 -6
- package/dist/index80.js.map +1 -1
- package/dist/index81.cjs +19 -34
- package/dist/index81.cjs.map +1 -1
- package/dist/index81.js +20 -35
- package/dist/index81.js.map +1 -1
- package/dist/index82.cjs +40 -134
- package/dist/index82.cjs.map +1 -1
- package/dist/index82.js +39 -133
- package/dist/index82.js.map +1 -1
- package/dist/index83.cjs +13 -40
- package/dist/index83.cjs.map +1 -1
- package/dist/index83.js +14 -41
- package/dist/index83.js.map +1 -1
- package/dist/index84.cjs +53 -2
- package/dist/index84.cjs.map +1 -1
- package/dist/index84.js +54 -3
- package/dist/index84.js.map +1 -1
- package/dist/index85.cjs +134 -40
- package/dist/index85.cjs.map +1 -1
- package/dist/index85.js +133 -39
- package/dist/index85.js.map +1 -1
- package/dist/index86.cjs +40 -28
- package/dist/index86.cjs.map +1 -1
- package/dist/index86.js +40 -28
- package/dist/index86.js.map +1 -1
- package/dist/index87.cjs +80 -2
- package/dist/index87.cjs.map +1 -1
- package/dist/index87.js +81 -3
- package/dist/index87.js.map +1 -1
- package/dist/index88.cjs +15 -18
- package/dist/index88.cjs.map +1 -1
- package/dist/index88.js +15 -18
- package/dist/index88.js.map +1 -1
- package/dist/index89.cjs +28 -19
- package/dist/index89.cjs.map +1 -1
- package/dist/index89.js +29 -20
- package/dist/index89.js.map +1 -1
- package/dist/index90.cjs +17 -44
- package/dist/index90.cjs.map +1 -1
- package/dist/index90.js +18 -45
- package/dist/index90.js.map +1 -1
- package/dist/index91.cjs +13 -22
- package/dist/index91.cjs.map +1 -1
- package/dist/index91.js +14 -23
- package/dist/index91.js.map +1 -1
- package/dist/index92.cjs +28 -22
- package/dist/index92.cjs.map +1 -1
- package/dist/index92.js +28 -22
- package/dist/index92.js.map +1 -1
- package/dist/index93.cjs +17 -2
- package/dist/index93.cjs.map +1 -1
- package/dist/index93.js +18 -3
- package/dist/index93.js.map +1 -1
- package/dist/index94.cjs +116 -19
- package/dist/index94.cjs.map +1 -1
- package/dist/index94.js +115 -18
- package/dist/index94.js.map +1 -1
- package/dist/index95.cjs +38 -2
- package/dist/index95.cjs.map +1 -1
- package/dist/index95.js +39 -3
- package/dist/index95.js.map +1 -1
- package/dist/index96.cjs +39 -24
- package/dist/index96.cjs.map +1 -1
- package/dist/index96.js +38 -23
- package/dist/index96.js.map +1 -1
- package/dist/index97.cjs +87 -30
- package/dist/index97.cjs.map +1 -1
- package/dist/index97.js +87 -30
- package/dist/index97.js.map +1 -1
- package/dist/index98.cjs +39 -43
- package/dist/index98.cjs.map +1 -1
- package/dist/index98.js +38 -42
- package/dist/index98.js.map +1 -1
- package/dist/index99.cjs +9 -24
- package/dist/index99.cjs.map +1 -1
- package/dist/index99.js +8 -23
- package/dist/index99.js.map +1 -1
- package/dist/style.css +42 -4
- package/dist/utils/clippingRect.d.ts +15 -0
- package/dist/utils/clippingRect.d.ts.map +1 -0
- package/dist/utils/clippingRect.test.d.ts +2 -0
- package/dist/utils/clippingRect.test.d.ts.map +1 -0
- package/package.json +1 -1
package/dist/index120.cjs
CHANGED
|
@@ -1,20 +1,42 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
3
|
-
const
|
|
4
|
-
const
|
|
5
|
-
const
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
3
|
+
const react = require("react");
|
|
4
|
+
const reactLeaflet = require("react-leaflet");
|
|
5
|
+
const normalizeViewport = require("./index132.cjs");
|
|
6
|
+
const VIEWPORT_EVENTS = "moveend resize";
|
|
7
|
+
const ViewportReporter = ({ onViewportChange }) => {
|
|
8
|
+
const map = reactLeaflet.useMap();
|
|
9
|
+
const handlerRef = react.useRef(onViewportChange);
|
|
10
|
+
const lastRef = react.useRef(null);
|
|
11
|
+
react.useEffect(() => {
|
|
12
|
+
handlerRef.current = onViewportChange;
|
|
13
|
+
});
|
|
14
|
+
react.useEffect(() => {
|
|
15
|
+
const report = () => {
|
|
16
|
+
const bounds = map.getBounds();
|
|
17
|
+
const center = map.getCenter();
|
|
18
|
+
const next = normalizeViewport.normalizeViewport(
|
|
19
|
+
{
|
|
20
|
+
west: bounds.getWest(),
|
|
21
|
+
south: bounds.getSouth(),
|
|
22
|
+
east: bounds.getEast(),
|
|
23
|
+
north: bounds.getNorth()
|
|
24
|
+
},
|
|
25
|
+
map.getZoom(),
|
|
26
|
+
[center.lat, center.lng]
|
|
27
|
+
);
|
|
28
|
+
if (lastRef.current != null && normalizeViewport.sameViewport(lastRef.current, next)) return;
|
|
29
|
+
lastRef.current = next;
|
|
30
|
+
handlerRef.current(next);
|
|
31
|
+
};
|
|
32
|
+
report();
|
|
33
|
+
map.on(VIEWPORT_EVENTS, report);
|
|
34
|
+
return () => {
|
|
35
|
+
map.off(VIEWPORT_EVENTS, report);
|
|
36
|
+
};
|
|
37
|
+
}, [map]);
|
|
38
|
+
return null;
|
|
11
39
|
};
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
USE_PROFILES: { html: true },
|
|
15
|
-
ADD_ATTR: ["target", "rel"]
|
|
16
|
-
});
|
|
17
|
-
const parseMarkdown = (markdown) => sanitizeHtml(marked_esm.marked.parse(markdown));
|
|
18
|
-
exports.parseMarkdown = parseMarkdown;
|
|
19
|
-
exports.sanitizeHtml = sanitizeHtml;
|
|
40
|
+
ViewportReporter.displayName = "ViewportReporter";
|
|
41
|
+
exports.ViewportReporter = ViewportReporter;
|
|
20
42
|
//# sourceMappingURL=index120.cjs.map
|
package/dist/index120.cjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index120.cjs","sources":["../src/
|
|
1
|
+
{"version":3,"file":"index120.cjs","sources":["../src/geo/GeoMapCard/ViewportReporter.tsx"],"sourcesContent":["import { useEffect, useRef } from 'react';\nimport { useMap } from 'react-leaflet';\nimport type { GeoViewport } from '../../types/geo.types';\nimport type { ViewportReporterProps } from './GeoMapCard.types';\nimport { normalizeViewport, sameViewport } from './normalizeViewport';\n\n/** `moveend` closes every pan, zoom and keyboard move; `resize` a size change without one. */\nconst VIEWPORT_EVENTS = 'moveend resize';\n\n/**\n * A childless child of `MapContainer` that tells the consumer what is visible,\n * so it can fetch points by area instead of all at once.\n *\n * The handler is read through a ref: a new function on every parent render must\n * neither re-subscribe nor re-emit. Identical viewports are dropped, since a resize\n * is usually followed by a `moveend` for the same view.\n */\nexport const ViewportReporter = ({ onViewportChange }: ViewportReporterProps) => {\n const map = useMap();\n const handlerRef = useRef(onViewportChange);\n const lastRef = useRef<GeoViewport | null>(null);\n\n useEffect(() => {\n handlerRef.current = onViewportChange;\n });\n\n useEffect(() => {\n const report = () => {\n const bounds = map.getBounds();\n const center = map.getCenter();\n const next = normalizeViewport(\n {\n west: bounds.getWest(),\n south: bounds.getSouth(),\n east: bounds.getEast(),\n north: bounds.getNorth(),\n },\n map.getZoom(),\n [center.lat, center.lng],\n );\n\n if (lastRef.current != null && sameViewport(lastRef.current, next)) return;\n\n lastRef.current = next;\n handlerRef.current(next);\n };\n\n // react-leaflet renders children once the map exists with its initial view.\n report();\n map.on(VIEWPORT_EVENTS, report);\n\n return () => {\n map.off(VIEWPORT_EVENTS, report);\n };\n }, [map]);\n\n return null;\n};\n\nViewportReporter.displayName = 'ViewportReporter';\n"],"names":["useMap","useRef","useEffect","normalizeViewport","sameViewport"],"mappings":";;;;;AAOA,MAAM,kBAAkB;AAUjB,MAAM,mBAAmB,CAAC,EAAE,uBAA8C;AAC/E,QAAM,MAAMA,aAAAA,OAAA;AACZ,QAAM,aAAaC,MAAAA,OAAO,gBAAgB;AAC1C,QAAM,UAAUA,MAAAA,OAA2B,IAAI;AAE/CC,QAAAA,UAAU,MAAM;AACd,eAAW,UAAU;AAAA,EACvB,CAAC;AAEDA,QAAAA,UAAU,MAAM;AACd,UAAM,SAAS,MAAM;AACnB,YAAM,SAAS,IAAI,UAAA;AACnB,YAAM,SAAS,IAAI,UAAA;AACnB,YAAM,OAAOC,kBAAAA;AAAAA,QACX;AAAA,UACE,MAAM,OAAO,QAAA;AAAA,UACb,OAAO,OAAO,SAAA;AAAA,UACd,MAAM,OAAO,QAAA;AAAA,UACb,OAAO,OAAO,SAAA;AAAA,QAAS;AAAA,QAEzB,IAAI,QAAA;AAAA,QACJ,CAAC,OAAO,KAAK,OAAO,GAAG;AAAA,MAAA;AAGzB,UAAI,QAAQ,WAAW,QAAQC,kBAAAA,aAAa,QAAQ,SAAS,IAAI,EAAG;AAEpE,cAAQ,UAAU;AAClB,iBAAW,QAAQ,IAAI;AAAA,IACzB;AAGA,WAAA;AACA,QAAI,GAAG,iBAAiB,MAAM;AAE9B,WAAO,MAAM;AACX,UAAI,IAAI,iBAAiB,MAAM;AAAA,IACjC;AAAA,EACF,GAAG,CAAC,GAAG,CAAC;AAER,SAAO;AACT;AAEA,iBAAiB,cAAc;;"}
|
package/dist/index120.js
CHANGED
|
@@ -1,20 +1,42 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
1
|
+
import { useRef, useEffect } from "react";
|
|
2
|
+
import { useMap } from "react-leaflet";
|
|
3
|
+
import { normalizeViewport, sameViewport } from "./index132.js";
|
|
4
|
+
const VIEWPORT_EVENTS = "moveend resize";
|
|
5
|
+
const ViewportReporter = ({ onViewportChange }) => {
|
|
6
|
+
const map = useMap();
|
|
7
|
+
const handlerRef = useRef(onViewportChange);
|
|
8
|
+
const lastRef = useRef(null);
|
|
9
|
+
useEffect(() => {
|
|
10
|
+
handlerRef.current = onViewportChange;
|
|
11
|
+
});
|
|
12
|
+
useEffect(() => {
|
|
13
|
+
const report = () => {
|
|
14
|
+
const bounds = map.getBounds();
|
|
15
|
+
const center = map.getCenter();
|
|
16
|
+
const next = normalizeViewport(
|
|
17
|
+
{
|
|
18
|
+
west: bounds.getWest(),
|
|
19
|
+
south: bounds.getSouth(),
|
|
20
|
+
east: bounds.getEast(),
|
|
21
|
+
north: bounds.getNorth()
|
|
22
|
+
},
|
|
23
|
+
map.getZoom(),
|
|
24
|
+
[center.lat, center.lng]
|
|
25
|
+
);
|
|
26
|
+
if (lastRef.current != null && sameViewport(lastRef.current, next)) return;
|
|
27
|
+
lastRef.current = next;
|
|
28
|
+
handlerRef.current(next);
|
|
29
|
+
};
|
|
30
|
+
report();
|
|
31
|
+
map.on(VIEWPORT_EVENTS, report);
|
|
32
|
+
return () => {
|
|
33
|
+
map.off(VIEWPORT_EVENTS, report);
|
|
34
|
+
};
|
|
35
|
+
}, [map]);
|
|
36
|
+
return null;
|
|
9
37
|
};
|
|
10
|
-
|
|
11
|
-
const sanitizeHtml = (html) => purify.sanitize(html, {
|
|
12
|
-
USE_PROFILES: { html: true },
|
|
13
|
-
ADD_ATTR: ["target", "rel"]
|
|
14
|
-
});
|
|
15
|
-
const parseMarkdown = (markdown) => sanitizeHtml(g.parse(markdown));
|
|
38
|
+
ViewportReporter.displayName = "ViewportReporter";
|
|
16
39
|
export {
|
|
17
|
-
|
|
18
|
-
sanitizeHtml
|
|
40
|
+
ViewportReporter
|
|
19
41
|
};
|
|
20
42
|
//# sourceMappingURL=index120.js.map
|
package/dist/index120.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index120.js","sources":["../src/
|
|
1
|
+
{"version":3,"file":"index120.js","sources":["../src/geo/GeoMapCard/ViewportReporter.tsx"],"sourcesContent":["import { useEffect, useRef } from 'react';\nimport { useMap } from 'react-leaflet';\nimport type { GeoViewport } from '../../types/geo.types';\nimport type { ViewportReporterProps } from './GeoMapCard.types';\nimport { normalizeViewport, sameViewport } from './normalizeViewport';\n\n/** `moveend` closes every pan, zoom and keyboard move; `resize` a size change without one. */\nconst VIEWPORT_EVENTS = 'moveend resize';\n\n/**\n * A childless child of `MapContainer` that tells the consumer what is visible,\n * so it can fetch points by area instead of all at once.\n *\n * The handler is read through a ref: a new function on every parent render must\n * neither re-subscribe nor re-emit. Identical viewports are dropped, since a resize\n * is usually followed by a `moveend` for the same view.\n */\nexport const ViewportReporter = ({ onViewportChange }: ViewportReporterProps) => {\n const map = useMap();\n const handlerRef = useRef(onViewportChange);\n const lastRef = useRef<GeoViewport | null>(null);\n\n useEffect(() => {\n handlerRef.current = onViewportChange;\n });\n\n useEffect(() => {\n const report = () => {\n const bounds = map.getBounds();\n const center = map.getCenter();\n const next = normalizeViewport(\n {\n west: bounds.getWest(),\n south: bounds.getSouth(),\n east: bounds.getEast(),\n north: bounds.getNorth(),\n },\n map.getZoom(),\n [center.lat, center.lng],\n );\n\n if (lastRef.current != null && sameViewport(lastRef.current, next)) return;\n\n lastRef.current = next;\n handlerRef.current(next);\n };\n\n // react-leaflet renders children once the map exists with its initial view.\n report();\n map.on(VIEWPORT_EVENTS, report);\n\n return () => {\n map.off(VIEWPORT_EVENTS, report);\n };\n }, [map]);\n\n return null;\n};\n\nViewportReporter.displayName = 'ViewportReporter';\n"],"names":[],"mappings":";;;AAOA,MAAM,kBAAkB;AAUjB,MAAM,mBAAmB,CAAC,EAAE,uBAA8C;AAC/E,QAAM,MAAM,OAAA;AACZ,QAAM,aAAa,OAAO,gBAAgB;AAC1C,QAAM,UAAU,OAA2B,IAAI;AAE/C,YAAU,MAAM;AACd,eAAW,UAAU;AAAA,EACvB,CAAC;AAED,YAAU,MAAM;AACd,UAAM,SAAS,MAAM;AACnB,YAAM,SAAS,IAAI,UAAA;AACnB,YAAM,SAAS,IAAI,UAAA;AACnB,YAAM,OAAO;AAAA,QACX;AAAA,UACE,MAAM,OAAO,QAAA;AAAA,UACb,OAAO,OAAO,SAAA;AAAA,UACd,MAAM,OAAO,QAAA;AAAA,UACb,OAAO,OAAO,SAAA;AAAA,QAAS;AAAA,QAEzB,IAAI,QAAA;AAAA,QACJ,CAAC,OAAO,KAAK,OAAO,GAAG;AAAA,MAAA;AAGzB,UAAI,QAAQ,WAAW,QAAQ,aAAa,QAAQ,SAAS,IAAI,EAAG;AAEpE,cAAQ,UAAU;AAClB,iBAAW,QAAQ,IAAI;AAAA,IACzB;AAGA,WAAA;AACA,QAAI,GAAG,iBAAiB,MAAM;AAE9B,WAAO,MAAM;AACX,UAAI,IAAI,iBAAiB,MAAM;AAAA,IACjC;AAAA,EACF,GAAG,CAAC,GAAG,CAAC;AAER,SAAO;AACT;AAEA,iBAAiB,cAAc;"}
|
package/dist/index121.cjs
CHANGED
|
@@ -1,9 +1,11 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
Object.
|
|
3
|
-
const
|
|
4
|
-
const
|
|
5
|
-
|
|
6
|
-
}
|
|
7
|
-
|
|
8
|
-
|
|
2
|
+
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
3
|
+
const jsxRuntime = require("react/jsx-runtime");
|
|
4
|
+
const GeoMapCard_module = require("./index126.cjs");
|
|
5
|
+
const MapStatusBars = ({ notice, emptyMessage }) => /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
|
|
6
|
+
notice && /* @__PURE__ */ jsxRuntime.jsx("div", { className: GeoMapCard_module.default.warning, role: "status", children: notice }),
|
|
7
|
+
emptyMessage && /* @__PURE__ */ jsxRuntime.jsx("div", { className: GeoMapCard_module.default.status, role: "status", children: emptyMessage })
|
|
8
|
+
] });
|
|
9
|
+
MapStatusBars.displayName = "MapStatusBars";
|
|
10
|
+
exports.MapStatusBars = MapStatusBars;
|
|
9
11
|
//# sourceMappingURL=index121.cjs.map
|
package/dist/index121.cjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index121.cjs","sources":[],"sourcesContent":[],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index121.cjs","sources":["../src/geo/GeoMapCard/MapStatusBars.tsx"],"sourcesContent":["import type { MapStatusBarsProps } from './GeoMapCard.types';\nimport styles from './GeoMapCard.module.css';\n\n/**\n * The bars above the map. They sit outside it on purpose: anything drawn over the\n * map would have to stack above Leaflet's panes, far past the library's z-index cap.\n */\nexport const MapStatusBars = ({ notice, emptyMessage }: MapStatusBarsProps) => (\n <>\n {notice && (\n <div className={styles.warning} role=\"status\">\n {notice}\n </div>\n )}\n {emptyMessage && (\n <div className={styles.status} role=\"status\">\n {emptyMessage}\n </div>\n )}\n </>\n);\n\nMapStatusBars.displayName = 'MapStatusBars';\n"],"names":["jsxs","Fragment","styles"],"mappings":";;;;AAOO,MAAM,gBAAgB,CAAC,EAAE,QAAQ,aAAA,MACtCA,gCAAAC,WAAAA,UAAA,EACG,UAAA;AAAA,EAAA,yCACE,OAAA,EAAI,WAAWC,kBAAAA,QAAO,SAAS,MAAK,UAClC,UAAA,OAAA,CACH;AAAA,EAED,+CACE,OAAA,EAAI,WAAWA,kBAAAA,QAAO,QAAQ,MAAK,UACjC,UAAA,aAAA,CACH;AAAA,EAAA,CAEJ;AAGF,cAAc,cAAc;;"}
|
package/dist/index121.js
CHANGED
|
@@ -1,9 +1,11 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
}
|
|
1
|
+
import { jsxs, Fragment, jsx } from "react/jsx-runtime";
|
|
2
|
+
import styles from "./index126.js";
|
|
3
|
+
const MapStatusBars = ({ notice, emptyMessage }) => /* @__PURE__ */ jsxs(Fragment, { children: [
|
|
4
|
+
notice && /* @__PURE__ */ jsx("div", { className: styles.warning, role: "status", children: notice }),
|
|
5
|
+
emptyMessage && /* @__PURE__ */ jsx("div", { className: styles.status, role: "status", children: emptyMessage })
|
|
6
|
+
] });
|
|
7
|
+
MapStatusBars.displayName = "MapStatusBars";
|
|
5
8
|
export {
|
|
6
|
-
|
|
7
|
-
root
|
|
9
|
+
MapStatusBars
|
|
8
10
|
};
|
|
9
11
|
//# sourceMappingURL=index121.js.map
|
package/dist/index121.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index121.js","sources":[],"sourcesContent":[],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index121.js","sources":["../src/geo/GeoMapCard/MapStatusBars.tsx"],"sourcesContent":["import type { MapStatusBarsProps } from './GeoMapCard.types';\nimport styles from './GeoMapCard.module.css';\n\n/**\n * The bars above the map. They sit outside it on purpose: anything drawn over the\n * map would have to stack above Leaflet's panes, far past the library's z-index cap.\n */\nexport const MapStatusBars = ({ notice, emptyMessage }: MapStatusBarsProps) => (\n <>\n {notice && (\n <div className={styles.warning} role=\"status\">\n {notice}\n </div>\n )}\n {emptyMessage && (\n <div className={styles.status} role=\"status\">\n {emptyMessage}\n </div>\n )}\n </>\n);\n\nMapStatusBars.displayName = 'MapStatusBars';\n"],"names":[],"mappings":";;AAOO,MAAM,gBAAgB,CAAC,EAAE,QAAQ,aAAA,MACtC,qBAAA,UAAA,EACG,UAAA;AAAA,EAAA,8BACE,OAAA,EAAI,WAAW,OAAO,SAAS,MAAK,UAClC,UAAA,OAAA,CACH;AAAA,EAED,oCACE,OAAA,EAAI,WAAW,OAAO,QAAQ,MAAK,UACjC,UAAA,aAAA,CACH;AAAA,EAAA,CAEJ;AAGF,cAAc,cAAc;"}
|
package/dist/index122.cjs
CHANGED
|
@@ -1,21 +1,13 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
Object.
|
|
3
|
-
const
|
|
4
|
-
const
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
region,
|
|
10
|
-
toast,
|
|
11
|
-
toastIn,
|
|
12
|
-
success,
|
|
13
|
-
error
|
|
2
|
+
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
3
|
+
const buildNotice = (info, maxPoints) => {
|
|
4
|
+
const reasons = [];
|
|
5
|
+
if (info.skipped > 0) reasons.push(`${info.skipped} without usable coordinates`);
|
|
6
|
+
if (info.dropped > 0) reasons.push(`${info.dropped} over the ${maxPoints} marker cap`);
|
|
7
|
+
if (reasons.length === 0) return null;
|
|
8
|
+
return `Showing ${info.drawn} of ${info.total} points (${reasons.join(", ")}).`;
|
|
14
9
|
};
|
|
15
|
-
|
|
16
|
-
exports.
|
|
17
|
-
exports.
|
|
18
|
-
exports.success = success;
|
|
19
|
-
exports.toast = toast;
|
|
20
|
-
exports.toastIn = toastIn;
|
|
10
|
+
const describePoint = (point, categoryLabel) => [point.label, point.category != null ? `${categoryLabel}: ${point.category}` : null, point.detail].filter((part) => part != null && part !== "").join(" — ");
|
|
11
|
+
exports.buildNotice = buildNotice;
|
|
12
|
+
exports.describePoint = describePoint;
|
|
21
13
|
//# sourceMappingURL=index122.cjs.map
|
package/dist/index122.cjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index122.cjs","sources":[],"sourcesContent":[],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index122.cjs","sources":["../src/geo/GeoMapCard/describePoints.ts"],"sourcesContent":["import type { GeoPoint, GeoRenderInfo } from '../../types/geo.types';\n\n/** States what was left out, so a truncated map never passes for a complete one. */\nexport const buildNotice = (info: GeoRenderInfo, maxPoints: number): string | null => {\n const reasons: string[] = [];\n\n if (info.skipped > 0) reasons.push(`${info.skipped} without usable coordinates`);\n if (info.dropped > 0) reasons.push(`${info.dropped} over the ${maxPoints} marker cap`);\n\n if (reasons.length === 0) return null;\n\n return `Showing ${info.drawn} of ${info.total} points (${reasons.join(', ')}).`;\n};\n\n/** One line carrying everything the tooltip shows, for the screen reader too. */\nexport const describePoint = (point: GeoPoint, categoryLabel: string): string =>\n [point.label, point.category != null ? `${categoryLabel}: ${point.category}` : null, point.detail]\n .filter((part): part is string => part != null && part !== '')\n .join(' — ');\n"],"names":[],"mappings":";;AAGO,MAAM,cAAc,CAAC,MAAqB,cAAqC;AACpF,QAAM,UAAoB,CAAA;AAE1B,MAAI,KAAK,UAAU,EAAG,SAAQ,KAAK,GAAG,KAAK,OAAO,6BAA6B;AAC/E,MAAI,KAAK,UAAU,EAAG,SAAQ,KAAK,GAAG,KAAK,OAAO,aAAa,SAAS,aAAa;AAErF,MAAI,QAAQ,WAAW,EAAG,QAAO;AAEjC,SAAO,WAAW,KAAK,KAAK,OAAO,KAAK,KAAK,YAAY,QAAQ,KAAK,IAAI,CAAC;AAC7E;AAGO,MAAM,gBAAgB,CAAC,OAAiB,kBAC7C,CAAC,MAAM,OAAO,MAAM,YAAY,OAAO,GAAG,aAAa,KAAK,MAAM,QAAQ,KAAK,MAAM,MAAM,MAAM,EAC9F,OAAO,CAAC,SAAyB,QAAQ,QAAQ,SAAS,EAAE,EAC5D,KAAK,KAAK;;;"}
|
package/dist/index122.js
CHANGED
|
@@ -1,21 +1,13 @@
|
|
|
1
|
-
const
|
|
2
|
-
const
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
region,
|
|
8
|
-
toast,
|
|
9
|
-
toastIn,
|
|
10
|
-
success,
|
|
11
|
-
error
|
|
1
|
+
const buildNotice = (info, maxPoints) => {
|
|
2
|
+
const reasons = [];
|
|
3
|
+
if (info.skipped > 0) reasons.push(`${info.skipped} without usable coordinates`);
|
|
4
|
+
if (info.dropped > 0) reasons.push(`${info.dropped} over the ${maxPoints} marker cap`);
|
|
5
|
+
if (reasons.length === 0) return null;
|
|
6
|
+
return `Showing ${info.drawn} of ${info.total} points (${reasons.join(", ")}).`;
|
|
12
7
|
};
|
|
8
|
+
const describePoint = (point, categoryLabel) => [point.label, point.category != null ? `${categoryLabel}: ${point.category}` : null, point.detail].filter((part) => part != null && part !== "").join(" — ");
|
|
13
9
|
export {
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
region,
|
|
17
|
-
success,
|
|
18
|
-
toast,
|
|
19
|
-
toastIn
|
|
10
|
+
buildNotice,
|
|
11
|
+
describePoint
|
|
20
12
|
};
|
|
21
13
|
//# sourceMappingURL=index122.js.map
|
package/dist/index122.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index122.js","sources":[],"sourcesContent":[],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index122.js","sources":["../src/geo/GeoMapCard/describePoints.ts"],"sourcesContent":["import type { GeoPoint, GeoRenderInfo } from '../../types/geo.types';\n\n/** States what was left out, so a truncated map never passes for a complete one. */\nexport const buildNotice = (info: GeoRenderInfo, maxPoints: number): string | null => {\n const reasons: string[] = [];\n\n if (info.skipped > 0) reasons.push(`${info.skipped} without usable coordinates`);\n if (info.dropped > 0) reasons.push(`${info.dropped} over the ${maxPoints} marker cap`);\n\n if (reasons.length === 0) return null;\n\n return `Showing ${info.drawn} of ${info.total} points (${reasons.join(', ')}).`;\n};\n\n/** One line carrying everything the tooltip shows, for the screen reader too. */\nexport const describePoint = (point: GeoPoint, categoryLabel: string): string =>\n [point.label, point.category != null ? `${categoryLabel}: ${point.category}` : null, point.detail]\n .filter((part): part is string => part != null && part !== '')\n .join(' — ');\n"],"names":[],"mappings":"AAGO,MAAM,cAAc,CAAC,MAAqB,cAAqC;AACpF,QAAM,UAAoB,CAAA;AAE1B,MAAI,KAAK,UAAU,EAAG,SAAQ,KAAK,GAAG,KAAK,OAAO,6BAA6B;AAC/E,MAAI,KAAK,UAAU,EAAG,SAAQ,KAAK,GAAG,KAAK,OAAO,aAAa,SAAS,aAAa;AAErF,MAAI,QAAQ,WAAW,EAAG,QAAO;AAEjC,SAAO,WAAW,KAAK,KAAK,OAAO,KAAK,KAAK,YAAY,QAAQ,KAAK,IAAI,CAAC;AAC7E;AAGO,MAAM,gBAAgB,CAAC,OAAiB,kBAC7C,CAAC,MAAM,OAAO,MAAM,YAAY,OAAO,GAAG,aAAa,KAAK,MAAM,QAAQ,KAAK,MAAM,MAAM,MAAM,EAC9F,OAAO,CAAC,SAAyB,QAAQ,QAAQ,SAAS,EAAE,EAC5D,KAAK,KAAK;"}
|
package/dist/index123.cjs
CHANGED
|
@@ -1,9 +1,22 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
Object.
|
|
3
|
-
const
|
|
4
|
-
const
|
|
5
|
-
|
|
6
|
-
}
|
|
7
|
-
|
|
8
|
-
|
|
2
|
+
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
3
|
+
const jsxRuntime = require("react/jsx-runtime");
|
|
4
|
+
const clsx = require("./index59.cjs");
|
|
5
|
+
const GeoMapCard_module = require("./index126.cjs");
|
|
6
|
+
const MapLegend = ({ items, title }) => /* @__PURE__ */ jsxRuntime.jsx("div", { className: "leaflet-bottom leaflet-right", children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: clsx.clsx("leaflet-control", GeoMapCard_module.default.legend), children: [
|
|
7
|
+
/* @__PURE__ */ jsxRuntime.jsx("p", { className: GeoMapCard_module.default.legendTitle, children: title }),
|
|
8
|
+
/* @__PURE__ */ jsxRuntime.jsx("ul", { className: GeoMapCard_module.default.legendList, children: items.map((item) => /* @__PURE__ */ jsxRuntime.jsxs("li", { className: GeoMapCard_module.default.legendItem, children: [
|
|
9
|
+
/* @__PURE__ */ jsxRuntime.jsx(
|
|
10
|
+
"span",
|
|
11
|
+
{
|
|
12
|
+
className: GeoMapCard_module.default.legendSwatch,
|
|
13
|
+
style: { backgroundColor: item.color },
|
|
14
|
+
"aria-hidden": "true"
|
|
15
|
+
}
|
|
16
|
+
),
|
|
17
|
+
item.label
|
|
18
|
+
] }, item.label)) })
|
|
19
|
+
] }) });
|
|
20
|
+
MapLegend.displayName = "MapLegend";
|
|
21
|
+
exports.MapLegend = MapLegend;
|
|
9
22
|
//# sourceMappingURL=index123.cjs.map
|
package/dist/index123.cjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index123.cjs","sources":[],"sourcesContent":[],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index123.cjs","sources":["../src/geo/GeoMapCard/MapLegend.tsx"],"sourcesContent":["import clsx from 'clsx';\nimport type { MapLegendProps } from './GeoMapCard.types';\nimport styles from './GeoMapCard.module.css';\n\n/**\n * Rendered inside `MapContainer` with Leaflet's own control classes, so it sits\n * in Leaflet's control pane and needs no `z-index` of its own — which is how the\n * library's \"no z-index above 10\" rule is met without asking for an exception.\n */\nexport const MapLegend = ({ items, title }: MapLegendProps) => (\n <div className=\"leaflet-bottom leaflet-right\">\n <div className={clsx('leaflet-control', styles.legend)}>\n <p className={styles.legendTitle}>{title}</p>\n <ul className={styles.legendList}>\n {items.map((item) => (\n <li key={item.label} className={styles.legendItem}>\n <span\n className={styles.legendSwatch}\n style={{ backgroundColor: item.color }}\n aria-hidden=\"true\"\n />\n {item.label}\n </li>\n ))}\n </ul>\n </div>\n </div>\n);\n\nMapLegend.displayName = 'MapLegend';\n"],"names":["jsx","clsx","styles","jsxs"],"mappings":";;;;;AASO,MAAM,YAAY,CAAC,EAAE,OAAO,MAAA,MACjCA,2BAAAA,IAAC,OAAA,EAAI,WAAU,gCACb,0CAAC,OAAA,EAAI,WAAWC,KAAAA,KAAK,mBAAmBC,kBAAAA,QAAO,MAAM,GACnD,UAAA;AAAA,EAAAF,2BAAAA,IAAC,KAAA,EAAE,WAAWE,kBAAAA,QAAO,aAAc,UAAA,OAAM;AAAA,EACzCF,2BAAAA,IAAC,MAAA,EAAG,WAAWE,kBAAAA,QAAO,YACnB,UAAA,MAAM,IAAI,CAAC,SACVC,2BAAAA,KAAC,MAAA,EAAoB,WAAWD,kBAAAA,QAAO,YACrC,UAAA;AAAA,IAAAF,2BAAAA;AAAAA,MAAC;AAAA,MAAA;AAAA,QACC,WAAWE,kBAAAA,QAAO;AAAA,QAClB,OAAO,EAAE,iBAAiB,KAAK,MAAA;AAAA,QAC/B,eAAY;AAAA,MAAA;AAAA,IAAA;AAAA,IAEb,KAAK;AAAA,EAAA,KANC,KAAK,KAOd,CACD,EAAA,CACH;AAAA,EAAA,CACF,EAAA,CACF;AAGF,UAAU,cAAc;;"}
|
package/dist/index123.js
CHANGED
|
@@ -1,9 +1,22 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
}
|
|
1
|
+
import { jsx, jsxs } from "react/jsx-runtime";
|
|
2
|
+
import { clsx } from "./index59.js";
|
|
3
|
+
import styles from "./index126.js";
|
|
4
|
+
const MapLegend = ({ items, title }) => /* @__PURE__ */ jsx("div", { className: "leaflet-bottom leaflet-right", children: /* @__PURE__ */ jsxs("div", { className: clsx("leaflet-control", styles.legend), children: [
|
|
5
|
+
/* @__PURE__ */ jsx("p", { className: styles.legendTitle, children: title }),
|
|
6
|
+
/* @__PURE__ */ jsx("ul", { className: styles.legendList, children: items.map((item) => /* @__PURE__ */ jsxs("li", { className: styles.legendItem, children: [
|
|
7
|
+
/* @__PURE__ */ jsx(
|
|
8
|
+
"span",
|
|
9
|
+
{
|
|
10
|
+
className: styles.legendSwatch,
|
|
11
|
+
style: { backgroundColor: item.color },
|
|
12
|
+
"aria-hidden": "true"
|
|
13
|
+
}
|
|
14
|
+
),
|
|
15
|
+
item.label
|
|
16
|
+
] }, item.label)) })
|
|
17
|
+
] }) });
|
|
18
|
+
MapLegend.displayName = "MapLegend";
|
|
5
19
|
export {
|
|
6
|
-
|
|
7
|
-
root
|
|
20
|
+
MapLegend
|
|
8
21
|
};
|
|
9
22
|
//# sourceMappingURL=index123.js.map
|
package/dist/index123.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index123.js","sources":[],"sourcesContent":[],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index123.js","sources":["../src/geo/GeoMapCard/MapLegend.tsx"],"sourcesContent":["import clsx from 'clsx';\nimport type { MapLegendProps } from './GeoMapCard.types';\nimport styles from './GeoMapCard.module.css';\n\n/**\n * Rendered inside `MapContainer` with Leaflet's own control classes, so it sits\n * in Leaflet's control pane and needs no `z-index` of its own — which is how the\n * library's \"no z-index above 10\" rule is met without asking for an exception.\n */\nexport const MapLegend = ({ items, title }: MapLegendProps) => (\n <div className=\"leaflet-bottom leaflet-right\">\n <div className={clsx('leaflet-control', styles.legend)}>\n <p className={styles.legendTitle}>{title}</p>\n <ul className={styles.legendList}>\n {items.map((item) => (\n <li key={item.label} className={styles.legendItem}>\n <span\n className={styles.legendSwatch}\n style={{ backgroundColor: item.color }}\n aria-hidden=\"true\"\n />\n {item.label}\n </li>\n ))}\n </ul>\n </div>\n </div>\n);\n\nMapLegend.displayName = 'MapLegend';\n"],"names":[],"mappings":";;;AASO,MAAM,YAAY,CAAC,EAAE,OAAO,MAAA,MACjC,oBAAC,OAAA,EAAI,WAAU,gCACb,+BAAC,OAAA,EAAI,WAAW,KAAK,mBAAmB,OAAO,MAAM,GACnD,UAAA;AAAA,EAAA,oBAAC,KAAA,EAAE,WAAW,OAAO,aAAc,UAAA,OAAM;AAAA,EACzC,oBAAC,MAAA,EAAG,WAAW,OAAO,YACnB,UAAA,MAAM,IAAI,CAAC,SACV,qBAAC,MAAA,EAAoB,WAAW,OAAO,YACrC,UAAA;AAAA,IAAA;AAAA,MAAC;AAAA,MAAA;AAAA,QACC,WAAW,OAAO;AAAA,QAClB,OAAO,EAAE,iBAAiB,KAAK,MAAA;AAAA,QAC/B,eAAY;AAAA,MAAA;AAAA,IAAA;AAAA,IAEb,KAAK;AAAA,EAAA,KANC,KAAK,KAOd,CACD,EAAA,CACH;AAAA,EAAA,CACF,EAAA,CACF;AAGF,UAAU,cAAc;"}
|
package/dist/index124.cjs
CHANGED
|
@@ -1,21 +1,16 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
Object.
|
|
3
|
-
const
|
|
4
|
-
const
|
|
5
|
-
const
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
exports.
|
|
16
|
-
exports.divider = divider;
|
|
17
|
-
exports.dividerHandle = dividerHandle;
|
|
18
|
-
exports.left = left;
|
|
19
|
-
exports.right = right;
|
|
20
|
-
exports.root = root;
|
|
2
|
+
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
3
|
+
const jsxRuntime = require("react/jsx-runtime");
|
|
4
|
+
const GeoMapCard_module = require("./index126.cjs");
|
|
5
|
+
const PointListing = ({ markers, label, onSelectPoint }) => /* @__PURE__ */ jsxRuntime.jsx("ul", { className: GeoMapCard_module.default.srOnly, "aria-label": label, children: markers.map(({ point, sourceIndex, description, selected }) => /* @__PURE__ */ jsxRuntime.jsx("li", { children: onSelectPoint ? /* @__PURE__ */ jsxRuntime.jsx(
|
|
6
|
+
"button",
|
|
7
|
+
{
|
|
8
|
+
type: "button",
|
|
9
|
+
"aria-pressed": selected,
|
|
10
|
+
onClick: () => onSelectPoint({ point, index: sourceIndex }),
|
|
11
|
+
children: description
|
|
12
|
+
}
|
|
13
|
+
) : description }, point.id)) });
|
|
14
|
+
PointListing.displayName = "PointListing";
|
|
15
|
+
exports.PointListing = PointListing;
|
|
21
16
|
//# sourceMappingURL=index124.cjs.map
|
package/dist/index124.cjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index124.cjs","sources":[],"sourcesContent":[],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index124.cjs","sources":["../src/geo/GeoMapCard/PointListing.tsx"],"sourcesContent":["import type { PointListingProps } from './GeoMapCard.types';\nimport styles from './GeoMapCard.module.css';\n\n/**\n * Leaflet draws its `CircleMarker`s as SVG paths, which take no keyboard focus\n * and expose nothing to a screen reader. The same points are therefore also\n * published as a visually hidden list — part of the component's contract, not a\n * patch: it gives keyboard access, gives the reader the data, and gives the\n * tests a surface that does not depend on Leaflet rendering at all.\n */\nexport const PointListing = ({ markers, label, onSelectPoint }: PointListingProps) => (\n <ul className={styles.srOnly} aria-label={label}>\n {markers.map(({ point, sourceIndex, description, selected }) => (\n <li key={point.id}>\n {onSelectPoint ? (\n <button\n type=\"button\"\n aria-pressed={selected}\n onClick={() => onSelectPoint({ point, index: sourceIndex })}\n >\n {description}\n </button>\n ) : (\n description\n )}\n </li>\n ))}\n </ul>\n);\n\nPointListing.displayName = 'PointListing';\n"],"names":["jsx","styles"],"mappings":";;;;AAUO,MAAM,eAAe,CAAC,EAAE,SAAS,OAAO,oBAC7CA,2BAAAA,IAAC,MAAA,EAAG,WAAWC,kBAAAA,QAAO,QAAQ,cAAY,OACvC,UAAA,QAAQ,IAAI,CAAC,EAAE,OAAO,aAAa,aAAa,SAAA,MAC/CD,2BAAAA,IAAC,MAAA,EACE,UAAA,gBACCA,2BAAAA;AAAAA,EAAC;AAAA,EAAA;AAAA,IACC,MAAK;AAAA,IACL,gBAAc;AAAA,IACd,SAAS,MAAM,cAAc,EAAE,OAAO,OAAO,aAAa;AAAA,IAEzD,UAAA;AAAA,EAAA;AACH,IAEA,YAAA,GAVK,MAAM,EAYf,CACD,EAAA,CACH;AAGF,aAAa,cAAc;;"}
|
package/dist/index124.js
CHANGED
|
@@ -1,21 +1,16 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
const
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
1
|
+
import { jsx } from "react/jsx-runtime";
|
|
2
|
+
import styles from "./index126.js";
|
|
3
|
+
const PointListing = ({ markers, label, onSelectPoint }) => /* @__PURE__ */ jsx("ul", { className: styles.srOnly, "aria-label": label, children: markers.map(({ point, sourceIndex, description, selected }) => /* @__PURE__ */ jsx("li", { children: onSelectPoint ? /* @__PURE__ */ jsx(
|
|
4
|
+
"button",
|
|
5
|
+
{
|
|
6
|
+
type: "button",
|
|
7
|
+
"aria-pressed": selected,
|
|
8
|
+
onClick: () => onSelectPoint({ point, index: sourceIndex }),
|
|
9
|
+
children: description
|
|
10
|
+
}
|
|
11
|
+
) : description }, point.id)) });
|
|
12
|
+
PointListing.displayName = "PointListing";
|
|
13
13
|
export {
|
|
14
|
-
|
|
15
|
-
divider,
|
|
16
|
-
dividerHandle,
|
|
17
|
-
left,
|
|
18
|
-
right,
|
|
19
|
-
root
|
|
14
|
+
PointListing
|
|
20
15
|
};
|
|
21
16
|
//# sourceMappingURL=index124.js.map
|
package/dist/index124.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index124.js","sources":[],"sourcesContent":[],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index124.js","sources":["../src/geo/GeoMapCard/PointListing.tsx"],"sourcesContent":["import type { PointListingProps } from './GeoMapCard.types';\nimport styles from './GeoMapCard.module.css';\n\n/**\n * Leaflet draws its `CircleMarker`s as SVG paths, which take no keyboard focus\n * and expose nothing to a screen reader. The same points are therefore also\n * published as a visually hidden list — part of the component's contract, not a\n * patch: it gives keyboard access, gives the reader the data, and gives the\n * tests a surface that does not depend on Leaflet rendering at all.\n */\nexport const PointListing = ({ markers, label, onSelectPoint }: PointListingProps) => (\n <ul className={styles.srOnly} aria-label={label}>\n {markers.map(({ point, sourceIndex, description, selected }) => (\n <li key={point.id}>\n {onSelectPoint ? (\n <button\n type=\"button\"\n aria-pressed={selected}\n onClick={() => onSelectPoint({ point, index: sourceIndex })}\n >\n {description}\n </button>\n ) : (\n description\n )}\n </li>\n ))}\n </ul>\n);\n\nPointListing.displayName = 'PointListing';\n"],"names":[],"mappings":";;AAUO,MAAM,eAAe,CAAC,EAAE,SAAS,OAAO,oBAC7C,oBAAC,MAAA,EAAG,WAAW,OAAO,QAAQ,cAAY,OACvC,UAAA,QAAQ,IAAI,CAAC,EAAE,OAAO,aAAa,aAAa,SAAA,MAC/C,oBAAC,MAAA,EACE,UAAA,gBACC;AAAA,EAAC;AAAA,EAAA;AAAA,IACC,MAAK;AAAA,IACL,gBAAc;AAAA,IACd,SAAS,MAAM,cAAc,EAAE,OAAO,OAAO,aAAa;AAAA,IAEzD,UAAA;AAAA,EAAA;AACH,IAEA,YAAA,GAVK,MAAM,EAYf,CACD,EAAA,CACH;AAGF,aAAa,cAAc;"}
|
package/dist/index125.cjs
CHANGED
|
@@ -1,87 +1,13 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
Object.
|
|
3
|
-
const
|
|
4
|
-
const
|
|
5
|
-
|
|
6
|
-
const
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
const badge = "krc-badge-yVq9o";
|
|
12
|
-
const clear = "krc-clear-11V9Q";
|
|
13
|
-
const panel = "krc-panel-xf2f8";
|
|
14
|
-
const header = "krc-header--VMR-";
|
|
15
|
-
const search = "krc-search-4gQgB";
|
|
16
|
-
const headerActions = "krc-headerActions-orxXD";
|
|
17
|
-
const chip = "krc-chip--n-9m";
|
|
18
|
-
const chipGhost = "krc-chipGhost-oayjh";
|
|
19
|
-
const list = "krc-list-NRoxf";
|
|
20
|
-
const status = "krc-status-j7xbM";
|
|
21
|
-
const statusError = "krc-statusError-u6rfB";
|
|
22
|
-
const option = "krc-option-ZAXum";
|
|
23
|
-
const optionLabel = "krc-optionLabel-MdDyI";
|
|
24
|
-
const optionCount = "krc-optionCount-JSQl9";
|
|
25
|
-
const create = "krc-create-hO8Cq";
|
|
26
|
-
const footer = "krc-footer-2yk6S";
|
|
27
|
-
const selection = "krc-selection-aYDH-";
|
|
28
|
-
const selectionDelta = "krc-selectionDelta-S1dV7";
|
|
29
|
-
const footerActions = "krc-footerActions-77iCX";
|
|
30
|
-
const styles = {
|
|
31
|
-
root,
|
|
32
|
-
trigger,
|
|
33
|
-
active,
|
|
34
|
-
triggerContent,
|
|
35
|
-
chevron,
|
|
36
|
-
label,
|
|
37
|
-
valueGroup,
|
|
38
|
-
value,
|
|
39
|
-
badge,
|
|
40
|
-
clear,
|
|
41
|
-
panel,
|
|
42
|
-
header,
|
|
43
|
-
search,
|
|
44
|
-
headerActions,
|
|
45
|
-
chip,
|
|
46
|
-
chipGhost,
|
|
47
|
-
list,
|
|
48
|
-
status,
|
|
49
|
-
statusError,
|
|
50
|
-
option,
|
|
51
|
-
optionLabel,
|
|
52
|
-
optionCount,
|
|
53
|
-
create,
|
|
54
|
-
footer,
|
|
55
|
-
selection,
|
|
56
|
-
selectionDelta,
|
|
57
|
-
footerActions
|
|
2
|
+
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
3
|
+
const constants = require("./index62.cjs");
|
|
4
|
+
const resolveTiles = (tileLayer, basemap, theme, basemapKey) => {
|
|
5
|
+
if (tileLayer != null) return tileLayer;
|
|
6
|
+
const url = constants.BASEMAP_TILES[basemap === "auto" ? theme : basemap];
|
|
7
|
+
return {
|
|
8
|
+
url: basemapKey ? `${url}?key=${encodeURIComponent(basemapKey)}` : url,
|
|
9
|
+
attribution: constants.BASEMAP_TILES.attribution
|
|
10
|
+
};
|
|
58
11
|
};
|
|
59
|
-
exports.
|
|
60
|
-
exports.badge = badge;
|
|
61
|
-
exports.chevron = chevron;
|
|
62
|
-
exports.chip = chip;
|
|
63
|
-
exports.chipGhost = chipGhost;
|
|
64
|
-
exports.clear = clear;
|
|
65
|
-
exports.create = create;
|
|
66
|
-
exports.default = styles;
|
|
67
|
-
exports.footer = footer;
|
|
68
|
-
exports.footerActions = footerActions;
|
|
69
|
-
exports.header = header;
|
|
70
|
-
exports.headerActions = headerActions;
|
|
71
|
-
exports.label = label;
|
|
72
|
-
exports.list = list;
|
|
73
|
-
exports.option = option;
|
|
74
|
-
exports.optionCount = optionCount;
|
|
75
|
-
exports.optionLabel = optionLabel;
|
|
76
|
-
exports.panel = panel;
|
|
77
|
-
exports.root = root;
|
|
78
|
-
exports.search = search;
|
|
79
|
-
exports.selection = selection;
|
|
80
|
-
exports.selectionDelta = selectionDelta;
|
|
81
|
-
exports.status = status;
|
|
82
|
-
exports.statusError = statusError;
|
|
83
|
-
exports.trigger = trigger;
|
|
84
|
-
exports.triggerContent = triggerContent;
|
|
85
|
-
exports.value = value;
|
|
86
|
-
exports.valueGroup = valueGroup;
|
|
12
|
+
exports.resolveTiles = resolveTiles;
|
|
87
13
|
//# sourceMappingURL=index125.cjs.map
|
package/dist/index125.cjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index125.cjs","sources":[],"sourcesContent":[],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index125.cjs","sources":["../src/geo/GeoMapCard/resolveTiles.ts"],"sourcesContent":["import { BASEMAP_TILES } from '../../constants';\nimport type { ThemeMode } from '../../hooks/useThemeMode';\nimport type { GeoBasemap, GeoTileLayer } from '../../types/geo.types';\n\n/**\n * The tile source to draw: a caller-supplied layer wins outright; otherwise the\n * CARTO basemap for the theme, carrying the API key when one is given.\n */\nexport const resolveTiles = (\n tileLayer: GeoTileLayer | undefined,\n basemap: GeoBasemap,\n theme: ThemeMode,\n basemapKey: string | undefined,\n): GeoTileLayer => {\n if (tileLayer != null) return tileLayer;\n\n const url = BASEMAP_TILES[basemap === 'auto' ? theme : basemap];\n\n return {\n url: basemapKey ? `${url}?key=${encodeURIComponent(basemapKey)}` : url,\n attribution: BASEMAP_TILES.attribution,\n };\n};\n"],"names":["BASEMAP_TILES"],"mappings":";;;AAQO,MAAM,eAAe,CAC1B,WACA,SACA,OACA,eACiB;AACjB,MAAI,aAAa,KAAM,QAAO;AAE9B,QAAM,MAAMA,UAAAA,cAAc,YAAY,SAAS,QAAQ,OAAO;AAE9D,SAAO;AAAA,IACL,KAAK,aAAa,GAAG,GAAG,QAAQ,mBAAmB,UAAU,CAAC,KAAK;AAAA,IACnE,aAAaA,UAAAA,cAAc;AAAA,EAAA;AAE/B;;"}
|