@ktnpm_devops/react-component 0.18.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.
Files changed (362) hide show
  1. package/dist/data/LiveExplorerTable/LiveExplorerTable.d.ts.map +1 -1
  2. package/dist/data/LiveExplorerTable/LiveExplorerTable.types.d.ts +5 -0
  3. package/dist/data/LiveExplorerTable/LiveExplorerTable.types.d.ts.map +1 -1
  4. package/dist/index10.cjs +1 -1
  5. package/dist/index10.js +1 -1
  6. package/dist/index100.cjs +22 -28
  7. package/dist/index100.cjs.map +1 -1
  8. package/dist/index100.js +22 -28
  9. package/dist/index100.js.map +1 -1
  10. package/dist/index101.cjs +48 -22
  11. package/dist/index101.cjs.map +1 -1
  12. package/dist/index101.js +47 -21
  13. package/dist/index101.js.map +1 -1
  14. package/dist/index102.cjs +16 -34
  15. package/dist/index102.cjs.map +1 -1
  16. package/dist/index102.js +16 -34
  17. package/dist/index102.js.map +1 -1
  18. package/dist/index103.cjs +36 -43
  19. package/dist/index103.cjs.map +1 -1
  20. package/dist/index103.js +35 -42
  21. package/dist/index103.js.map +1 -1
  22. package/dist/index104.cjs +6 -24
  23. package/dist/index104.cjs.map +1 -1
  24. package/dist/index104.js +5 -23
  25. package/dist/index104.js.map +1 -1
  26. package/dist/index105.cjs +21 -39
  27. package/dist/index105.cjs.map +1 -1
  28. package/dist/index105.js +20 -38
  29. package/dist/index105.js.map +1 -1
  30. package/dist/index106.cjs +22 -9
  31. package/dist/index106.cjs.map +1 -1
  32. package/dist/index106.js +21 -8
  33. package/dist/index106.js.map +1 -1
  34. package/dist/index107.cjs +6 -10
  35. package/dist/index107.cjs.map +1 -1
  36. package/dist/index107.js +5 -9
  37. package/dist/index107.js.map +1 -1
  38. package/dist/index108.cjs +19 -20
  39. package/dist/index108.cjs.map +1 -1
  40. package/dist/index108.js +18 -19
  41. package/dist/index108.js.map +1 -1
  42. package/dist/index109.cjs +19 -14
  43. package/dist/index109.cjs.map +1 -1
  44. package/dist/index109.js +18 -13
  45. package/dist/index109.js.map +1 -1
  46. package/dist/index11.cjs +1 -1
  47. package/dist/index11.js +1 -1
  48. package/dist/index110.cjs +33 -10
  49. package/dist/index110.cjs.map +1 -1
  50. package/dist/index110.js +32 -9
  51. package/dist/index110.js.map +1 -1
  52. package/dist/index111.cjs +2 -65
  53. package/dist/index111.cjs.map +1 -1
  54. package/dist/index111.js +3 -66
  55. package/dist/index111.js.map +1 -1
  56. package/dist/index112.cjs +49 -46
  57. package/dist/index112.cjs.map +1 -1
  58. package/dist/index112.js +49 -46
  59. package/dist/index112.js.map +1 -1
  60. package/dist/index113.cjs +22 -21
  61. package/dist/index113.cjs.map +1 -1
  62. package/dist/index113.js +21 -20
  63. package/dist/index113.js.map +1 -1
  64. package/dist/index114.cjs +69 -6
  65. package/dist/index114.cjs.map +1 -1
  66. package/dist/index114.js +68 -5
  67. package/dist/index114.js.map +1 -1
  68. package/dist/index115.cjs +7 -47
  69. package/dist/index115.cjs.map +1 -1
  70. package/dist/index115.js +7 -47
  71. package/dist/index115.js.map +1 -1
  72. package/dist/index116.cjs +40 -18
  73. package/dist/index116.cjs.map +1 -1
  74. package/dist/index116.js +39 -17
  75. package/dist/index116.js.map +1 -1
  76. package/dist/index117.cjs +35 -36
  77. package/dist/index117.cjs.map +1 -1
  78. package/dist/index117.js +34 -35
  79. package/dist/index117.js.map +1 -1
  80. package/dist/index118.cjs +42 -21
  81. package/dist/index118.cjs.map +1 -1
  82. package/dist/index118.js +42 -21
  83. package/dist/index118.js.map +1 -1
  84. package/dist/index119.cjs +22 -67
  85. package/dist/index119.cjs.map +1 -1
  86. package/dist/index119.js +23 -68
  87. package/dist/index119.js.map +1 -1
  88. package/dist/index12.cjs +1 -1
  89. package/dist/index12.js +1 -1
  90. package/dist/index120.cjs +38 -6
  91. package/dist/index120.cjs.map +1 -1
  92. package/dist/index120.js +38 -6
  93. package/dist/index120.js.map +1 -1
  94. package/dist/index121.cjs +9 -40
  95. package/dist/index121.cjs.map +1 -1
  96. package/dist/index121.js +8 -39
  97. package/dist/index121.js.map +1 -1
  98. package/dist/index122.cjs +10 -42
  99. package/dist/index122.cjs.map +1 -1
  100. package/dist/index122.js +9 -41
  101. package/dist/index122.js.map +1 -1
  102. package/dist/index123.cjs +20 -7
  103. package/dist/index123.cjs.map +1 -1
  104. package/dist/index123.js +19 -6
  105. package/dist/index123.js.map +1 -1
  106. package/dist/index124.cjs +14 -58
  107. package/dist/index124.cjs.map +1 -1
  108. package/dist/index124.js +13 -57
  109. package/dist/index124.js.map +1 -1
  110. package/dist/index125.cjs +10 -57
  111. package/dist/index125.cjs.map +1 -1
  112. package/dist/index125.js +9 -56
  113. package/dist/index125.js.map +1 -1
  114. package/dist/index126.cjs +69 -39
  115. package/dist/index126.cjs.map +1 -1
  116. package/dist/index126.js +68 -38
  117. package/dist/index126.js.map +1 -1
  118. package/dist/index127.cjs +24 -92
  119. package/dist/index127.cjs.map +1 -1
  120. package/dist/index127.js +23 -91
  121. package/dist/index127.js.map +1 -1
  122. package/dist/index128.cjs +22 -34
  123. package/dist/index128.cjs.map +1 -1
  124. package/dist/index128.js +22 -34
  125. package/dist/index128.js.map +1 -1
  126. package/dist/index13.cjs +1 -1
  127. package/dist/index13.js +1 -1
  128. package/dist/index14.cjs +1 -1
  129. package/dist/index14.js +1 -1
  130. package/dist/index15.cjs +1 -1
  131. package/dist/index15.js +1 -1
  132. package/dist/index16.cjs +1 -1
  133. package/dist/index16.js +1 -1
  134. package/dist/index17.cjs +1 -1
  135. package/dist/index17.js +1 -1
  136. package/dist/index18.cjs +1 -1
  137. package/dist/index18.js +1 -1
  138. package/dist/index19.cjs +1 -1
  139. package/dist/index19.js +1 -1
  140. package/dist/index20.cjs +1 -1
  141. package/dist/index20.js +1 -1
  142. package/dist/index21.cjs +1 -1
  143. package/dist/index21.js +1 -1
  144. package/dist/index22.cjs +1 -1
  145. package/dist/index22.js +1 -1
  146. package/dist/index23.cjs +1 -1
  147. package/dist/index23.js +1 -1
  148. package/dist/index24.cjs +1 -1
  149. package/dist/index24.js +1 -1
  150. package/dist/index25.cjs +1 -1
  151. package/dist/index25.js +1 -1
  152. package/dist/index26.cjs +1 -1
  153. package/dist/index26.js +1 -1
  154. package/dist/index27.cjs +1 -1
  155. package/dist/index27.js +1 -1
  156. package/dist/index28.cjs +1 -1
  157. package/dist/index28.js +1 -1
  158. package/dist/index29.cjs +1 -1
  159. package/dist/index29.js +1 -1
  160. package/dist/index30.cjs +10 -10
  161. package/dist/index30.js +10 -10
  162. package/dist/index31.cjs +4 -4
  163. package/dist/index31.js +4 -4
  164. package/dist/index32.cjs +3 -3
  165. package/dist/index32.js +3 -3
  166. package/dist/index33.cjs +1 -1
  167. package/dist/index33.js +1 -1
  168. package/dist/index34.cjs +2 -1
  169. package/dist/index34.cjs.map +1 -1
  170. package/dist/index34.js +2 -1
  171. package/dist/index34.js.map +1 -1
  172. package/dist/index35.cjs +1 -1
  173. package/dist/index35.js +1 -1
  174. package/dist/index36.cjs +2 -2
  175. package/dist/index36.js +2 -2
  176. package/dist/index37.cjs +1 -1
  177. package/dist/index37.js +1 -1
  178. package/dist/index38.cjs +1 -1
  179. package/dist/index38.js +1 -1
  180. package/dist/index39.cjs +1 -1
  181. package/dist/index39.js +1 -1
  182. package/dist/index40.cjs +1 -1
  183. package/dist/index40.js +1 -1
  184. package/dist/index41.cjs +1 -1
  185. package/dist/index41.js +1 -1
  186. package/dist/index43.cjs +1 -1
  187. package/dist/index43.js +1 -1
  188. package/dist/index44.cjs +1 -1
  189. package/dist/index44.js +1 -1
  190. package/dist/index45.cjs +3 -3
  191. package/dist/index45.js +3 -3
  192. package/dist/index46.cjs +1 -1
  193. package/dist/index46.js +1 -1
  194. package/dist/index47.cjs +1 -1
  195. package/dist/index47.js +1 -1
  196. package/dist/index48.cjs +1 -1
  197. package/dist/index48.js +1 -1
  198. package/dist/index49.cjs +1 -1
  199. package/dist/index49.js +1 -1
  200. package/dist/index50.cjs +1 -1
  201. package/dist/index50.js +1 -1
  202. package/dist/index51.cjs +1 -1
  203. package/dist/index51.js +1 -1
  204. package/dist/index52.cjs +2 -2
  205. package/dist/index52.js +2 -2
  206. package/dist/index53.cjs +1 -1
  207. package/dist/index53.js +1 -1
  208. package/dist/index54.cjs +1 -1
  209. package/dist/index54.js +1 -1
  210. package/dist/index55.cjs +2 -2
  211. package/dist/index55.js +2 -2
  212. package/dist/index56.cjs +1 -1
  213. package/dist/index56.js +1 -1
  214. package/dist/index57.cjs +1 -1
  215. package/dist/index57.js +1 -1
  216. package/dist/index58.cjs +1 -1
  217. package/dist/index58.js +1 -1
  218. package/dist/index60.cjs +64 -19
  219. package/dist/index60.cjs.map +1 -1
  220. package/dist/index60.js +64 -19
  221. package/dist/index60.js.map +1 -1
  222. package/dist/index61.cjs +12 -15
  223. package/dist/index61.cjs.map +1 -1
  224. package/dist/index61.js +12 -15
  225. package/dist/index61.js.map +1 -1
  226. package/dist/index63.cjs +34 -22
  227. package/dist/index63.cjs.map +1 -1
  228. package/dist/index63.js +34 -22
  229. package/dist/index63.js.map +1 -1
  230. package/dist/index64.cjs +16 -13
  231. package/dist/index64.cjs.map +1 -1
  232. package/dist/index64.js +16 -13
  233. package/dist/index64.js.map +1 -1
  234. package/dist/index65.cjs +11 -2
  235. package/dist/index65.cjs.map +1 -1
  236. package/dist/index65.js +11 -2
  237. package/dist/index65.js.map +1 -1
  238. package/dist/index66.cjs +14 -8
  239. package/dist/index66.cjs.map +1 -1
  240. package/dist/index66.js +15 -9
  241. package/dist/index66.js.map +1 -1
  242. package/dist/index67.cjs +19 -22
  243. package/dist/index67.cjs.map +1 -1
  244. package/dist/index67.js +20 -23
  245. package/dist/index67.js.map +1 -1
  246. package/dist/index68.cjs +36 -6
  247. package/dist/index68.cjs.map +1 -1
  248. package/dist/index68.js +36 -6
  249. package/dist/index68.js.map +1 -1
  250. package/dist/index69.cjs +36 -12
  251. package/dist/index69.cjs.map +1 -1
  252. package/dist/index69.js +36 -12
  253. package/dist/index69.js.map +1 -1
  254. package/dist/index70.cjs +49 -16
  255. package/dist/index70.cjs.map +1 -1
  256. package/dist/index70.js +50 -17
  257. package/dist/index70.js.map +1 -1
  258. package/dist/index71.cjs +17 -17
  259. package/dist/index71.js +18 -18
  260. package/dist/index72.cjs +2 -20
  261. package/dist/index72.cjs.map +1 -1
  262. package/dist/index72.js +3 -21
  263. package/dist/index72.js.map +1 -1
  264. package/dist/index73.cjs +5 -11
  265. package/dist/index73.cjs.map +1 -1
  266. package/dist/index73.js +6 -12
  267. package/dist/index73.js.map +1 -1
  268. package/dist/index74.cjs +17 -2
  269. package/dist/index74.cjs.map +1 -1
  270. package/dist/index74.js +17 -2
  271. package/dist/index74.js.map +1 -1
  272. package/dist/index75.cjs +10 -19
  273. package/dist/index75.cjs.map +1 -1
  274. package/dist/index75.js +11 -20
  275. package/dist/index75.js.map +1 -1
  276. package/dist/index77.cjs +42 -24
  277. package/dist/index77.cjs.map +1 -1
  278. package/dist/index77.js +43 -25
  279. package/dist/index77.js.map +1 -1
  280. package/dist/index78.cjs +6 -17
  281. package/dist/index78.cjs.map +1 -1
  282. package/dist/index78.js +5 -16
  283. package/dist/index78.js.map +1 -1
  284. package/dist/index79.cjs +17 -6
  285. package/dist/index79.cjs.map +1 -1
  286. package/dist/index79.js +16 -5
  287. package/dist/index79.js.map +1 -1
  288. package/dist/index80.cjs +1 -1
  289. package/dist/index80.js +1 -1
  290. package/dist/index81.cjs +19 -64
  291. package/dist/index81.cjs.map +1 -1
  292. package/dist/index81.js +20 -65
  293. package/dist/index81.js.map +1 -1
  294. package/dist/index82.cjs +34 -46
  295. package/dist/index82.cjs.map +1 -1
  296. package/dist/index82.js +34 -46
  297. package/dist/index82.js.map +1 -1
  298. package/dist/index84.cjs +54 -30
  299. package/dist/index84.cjs.map +1 -1
  300. package/dist/index84.js +54 -30
  301. package/dist/index84.js.map +1 -1
  302. package/dist/index85.cjs +134 -40
  303. package/dist/index85.cjs.map +1 -1
  304. package/dist/index85.js +133 -39
  305. package/dist/index85.js.map +1 -1
  306. package/dist/index86.cjs +38 -32
  307. package/dist/index86.cjs.map +1 -1
  308. package/dist/index86.js +38 -32
  309. package/dist/index86.js.map +1 -1
  310. package/dist/index87.cjs +79 -13
  311. package/dist/index87.cjs.map +1 -1
  312. package/dist/index87.js +80 -14
  313. package/dist/index87.js.map +1 -1
  314. package/dist/index88.cjs +15 -18
  315. package/dist/index88.cjs.map +1 -1
  316. package/dist/index88.js +15 -18
  317. package/dist/index88.js.map +1 -1
  318. package/dist/index89.cjs +26 -14
  319. package/dist/index89.cjs.map +1 -1
  320. package/dist/index89.js +26 -14
  321. package/dist/index89.js.map +1 -1
  322. package/dist/index90.cjs +17 -8
  323. package/dist/index90.cjs.map +1 -1
  324. package/dist/index90.js +18 -9
  325. package/dist/index90.js.map +1 -1
  326. package/dist/index91.cjs +19 -116
  327. package/dist/index91.cjs.map +1 -1
  328. package/dist/index91.js +18 -115
  329. package/dist/index91.js.map +1 -1
  330. package/dist/index92.cjs +16 -25
  331. package/dist/index92.cjs.map +1 -1
  332. package/dist/index92.js +17 -26
  333. package/dist/index92.js.map +1 -1
  334. package/dist/index93.cjs +16 -34
  335. package/dist/index93.cjs.map +1 -1
  336. package/dist/index93.js +16 -34
  337. package/dist/index93.js.map +1 -1
  338. package/dist/index94.cjs +116 -22
  339. package/dist/index94.cjs.map +1 -1
  340. package/dist/index94.js +115 -21
  341. package/dist/index94.js.map +1 -1
  342. package/dist/index95.cjs +35 -77
  343. package/dist/index95.cjs.map +1 -1
  344. package/dist/index95.js +35 -77
  345. package/dist/index95.js.map +1 -1
  346. package/dist/index96.cjs +39 -9
  347. package/dist/index96.cjs.map +1 -1
  348. package/dist/index96.js +38 -8
  349. package/dist/index96.js.map +1 -1
  350. package/dist/index97.cjs +86 -127
  351. package/dist/index97.cjs.map +1 -1
  352. package/dist/index97.js +87 -128
  353. package/dist/index97.js.map +1 -1
  354. package/dist/index98.cjs +19 -25
  355. package/dist/index98.cjs.map +1 -1
  356. package/dist/index98.js +20 -26
  357. package/dist/index98.js.map +1 -1
  358. package/dist/index99.cjs +4 -19
  359. package/dist/index99.cjs.map +1 -1
  360. package/dist/index99.js +5 -20
  361. package/dist/index99.js.map +1 -1
  362. package/package.json +1 -1
package/dist/index120.cjs CHANGED
@@ -1,10 +1,42 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
- const DEFAULT_LABELS = {
4
- loading: "Loading chart...",
5
- empty: "No data available.",
6
- retry: "Retry",
7
- noValue: "No data"
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;
8
39
  };
9
- exports.DEFAULT_LABELS = DEFAULT_LABELS;
40
+ ViewportReporter.displayName = "ViewportReporter";
41
+ exports.ViewportReporter = ViewportReporter;
10
42
  //# sourceMappingURL=index120.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"index120.cjs","sources":["../src/charts/GroupedBarChartCard/defaultLabels.ts"],"sourcesContent":["import type { GroupedBarChartLabels } from './GroupedBarChartCard.types';\n\n/** English defaults, matching the texts of the other chart cards. */\nexport const DEFAULT_LABELS: GroupedBarChartLabels = {\n loading: 'Loading chart...',\n empty: 'No data available.',\n retry: 'Retry',\n noValue: 'No data',\n};\n"],"names":[],"mappings":";;AAGO,MAAM,iBAAwC;AAAA,EACnD,SAAS;AAAA,EACT,OAAO;AAAA,EACP,OAAO;AAAA,EACP,SAAS;AACX;;"}
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,10 +1,42 @@
1
- const DEFAULT_LABELS = {
2
- loading: "Loading chart...",
3
- empty: "No data available.",
4
- retry: "Retry",
5
- noValue: "No data"
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;
6
37
  };
38
+ ViewportReporter.displayName = "ViewportReporter";
7
39
  export {
8
- DEFAULT_LABELS
40
+ ViewportReporter
9
41
  };
10
42
  //# sourceMappingURL=index120.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index120.js","sources":["../src/charts/GroupedBarChartCard/defaultLabels.ts"],"sourcesContent":["import type { GroupedBarChartLabels } from './GroupedBarChartCard.types';\n\n/** English defaults, matching the texts of the other chart cards. */\nexport const DEFAULT_LABELS: GroupedBarChartLabels = {\n loading: 'Loading chart...',\n empty: 'No data available.',\n retry: 'Retry',\n noValue: 'No data',\n};\n"],"names":[],"mappings":"AAGO,MAAM,iBAAwC;AAAA,EACnD,SAAS;AAAA,EACT,OAAO;AAAA,EACP,OAAO;AAAA,EACP,SAAS;AACX;"}
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,42 +1,11 @@
1
1
  "use strict";
2
- Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toStringTag]: { value: "Module" } });
3
- const root = "krc-root-ij8wB";
4
- const header = "krc-header-poY0R";
5
- const headerText = "krc-headerText-ShzOl";
6
- const title = "krc-title-H3VpM";
7
- const subtitle = "krc-subtitle-n6tgG";
8
- const headerActions = "krc-headerActions-WY-hn";
9
- const toolbar = "krc-toolbar-lMVmb";
10
- const chartContainer = "krc-chartContainer-nlbUx";
11
- const loading = "krc-loading-xub77";
12
- const empty = "krc-empty-vJ4UM";
13
- const error = "krc-error-d-7n5";
14
- const retryButton = "krc-retryButton-LT8qy";
15
- const styles = {
16
- root,
17
- header,
18
- headerText,
19
- title,
20
- subtitle,
21
- headerActions,
22
- toolbar,
23
- chartContainer,
24
- loading,
25
- empty,
26
- error,
27
- retryButton
28
- };
29
- exports.chartContainer = chartContainer;
30
- exports.default = styles;
31
- exports.empty = empty;
32
- exports.error = error;
33
- exports.header = header;
34
- exports.headerActions = headerActions;
35
- exports.headerText = headerText;
36
- exports.loading = loading;
37
- exports.retryButton = retryButton;
38
- exports.root = root;
39
- exports.subtitle = subtitle;
40
- exports.title = title;
41
- exports.toolbar = toolbar;
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;
42
11
  //# sourceMappingURL=index121.cjs.map
@@ -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,42 +1,11 @@
1
- const root = "krc-root-ij8wB";
2
- const header = "krc-header-poY0R";
3
- const headerText = "krc-headerText-ShzOl";
4
- const title = "krc-title-H3VpM";
5
- const subtitle = "krc-subtitle-n6tgG";
6
- const headerActions = "krc-headerActions-WY-hn";
7
- const toolbar = "krc-toolbar-lMVmb";
8
- const chartContainer = "krc-chartContainer-nlbUx";
9
- const loading = "krc-loading-xub77";
10
- const empty = "krc-empty-vJ4UM";
11
- const error = "krc-error-d-7n5";
12
- const retryButton = "krc-retryButton-LT8qy";
13
- const styles = {
14
- root,
15
- header,
16
- headerText,
17
- title,
18
- subtitle,
19
- headerActions,
20
- toolbar,
21
- chartContainer,
22
- loading,
23
- empty,
24
- error,
25
- retryButton
26
- };
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";
27
8
  export {
28
- chartContainer,
29
- styles as default,
30
- empty,
31
- error,
32
- header,
33
- headerActions,
34
- headerText,
35
- loading,
36
- retryButton,
37
- root,
38
- subtitle,
39
- title,
40
- toolbar
9
+ MapStatusBars
41
10
  };
42
11
  //# sourceMappingURL=index121.js.map
@@ -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,45 +1,13 @@
1
1
  "use strict";
2
- Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toStringTag]: { value: "Module" } });
3
- const root = "krc-root-0iK-T";
4
- const header = "krc-header-vLmNI";
5
- const title = "krc-title-J9FSG";
6
- const headerActions = "krc-headerActions-8Sd6i";
7
- const toolbar = "krc-toolbar-65kLR";
8
- const toolbarLabel = "krc-toolbarLabel-kmRLQ";
9
- const toolbarSelect = "krc-toolbarSelect-t7OKN";
10
- const chartContainer = "krc-chartContainer-1-iIe";
11
- const loading = "krc-loading-MRlom";
12
- const error = "krc-error-esslq";
13
- const retryButton = "krc-retryButton-js385";
14
- const empty = "krc-empty-qYFPa";
15
- const warning = "krc-warning-ll4Hc";
16
- const styles = {
17
- root,
18
- header,
19
- title,
20
- headerActions,
21
- toolbar,
22
- toolbarLabel,
23
- toolbarSelect,
24
- chartContainer,
25
- loading,
26
- error,
27
- retryButton,
28
- empty,
29
- warning
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(", ")}).`;
30
9
  };
31
- exports.chartContainer = chartContainer;
32
- exports.default = styles;
33
- exports.empty = empty;
34
- exports.error = error;
35
- exports.header = header;
36
- exports.headerActions = headerActions;
37
- exports.loading = loading;
38
- exports.retryButton = retryButton;
39
- exports.root = root;
40
- exports.title = title;
41
- exports.toolbar = toolbar;
42
- exports.toolbarLabel = toolbarLabel;
43
- exports.toolbarSelect = toolbarSelect;
44
- exports.warning = warning;
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;
45
13
  //# sourceMappingURL=index122.cjs.map
@@ -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,45 +1,13 @@
1
- const root = "krc-root-0iK-T";
2
- const header = "krc-header-vLmNI";
3
- const title = "krc-title-J9FSG";
4
- const headerActions = "krc-headerActions-8Sd6i";
5
- const toolbar = "krc-toolbar-65kLR";
6
- const toolbarLabel = "krc-toolbarLabel-kmRLQ";
7
- const toolbarSelect = "krc-toolbarSelect-t7OKN";
8
- const chartContainer = "krc-chartContainer-1-iIe";
9
- const loading = "krc-loading-MRlom";
10
- const error = "krc-error-esslq";
11
- const retryButton = "krc-retryButton-js385";
12
- const empty = "krc-empty-qYFPa";
13
- const warning = "krc-warning-ll4Hc";
14
- const styles = {
15
- root,
16
- header,
17
- title,
18
- headerActions,
19
- toolbar,
20
- toolbarLabel,
21
- toolbarSelect,
22
- chartContainer,
23
- loading,
24
- error,
25
- retryButton,
26
- empty,
27
- warning
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(", ")}).`;
28
7
  };
8
+ const describePoint = (point, categoryLabel) => [point.label, point.category != null ? `${categoryLabel}: ${point.category}` : null, point.detail].filter((part) => part != null && part !== "").join(" — ");
29
9
  export {
30
- chartContainer,
31
- styles as default,
32
- empty,
33
- error,
34
- header,
35
- headerActions,
36
- loading,
37
- retryButton,
38
- root,
39
- title,
40
- toolbar,
41
- toolbarLabel,
42
- toolbarSelect,
43
- warning
10
+ buildNotice,
11
+ describePoint
44
12
  };
45
13
  //# sourceMappingURL=index122.js.map
@@ -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.defineProperties(exports, { __esModule: { value: true }, [Symbol.toStringTag]: { value: "Module" } });
3
- const root = "krc-root-bWynN";
4
- const styles = {
5
- root
6
- };
7
- exports.default = styles;
8
- exports.root = root;
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
@@ -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
- const root = "krc-root-bWynN";
2
- const styles = {
3
- root
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
- styles as default,
7
- root
20
+ MapLegend
8
21
  };
9
22
  //# sourceMappingURL=index123.js.map
@@ -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,60 +1,16 @@
1
1
  "use strict";
2
- Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toStringTag]: { value: "Module" } });
3
- const root = "krc-root-GYECa";
4
- const header = "krc-header-7V-0i";
5
- const title = "krc-title-SiRcV";
6
- const headerActions = "krc-headerActions-HY6nM";
7
- const splitContainer = "krc-splitContainer-ovkIf";
8
- const tablePanel = "krc-tablePanel-gbWQx";
9
- const chartPanel = "krc-chartPanel-eBJ9W";
10
- const table = "krc-table-40WZx";
11
- const tableRow = "krc-tableRow-yQlEa";
12
- const tableRowSelected = "krc-tableRowSelected-vIEfO";
13
- const pagination = "krc-pagination-nyCxO";
14
- const paginationButton = "krc-paginationButton-k-cQB";
15
- const paginationInfo = "krc-paginationInfo-ouuPw";
16
- const placeholder = "krc-placeholder-YDeIw";
17
- const loading = "krc-loading-UoiCd";
18
- const error = "krc-error-Subfi";
19
- const retryButton = "krc-retryButton-k8HPu";
20
- const empty = "krc-empty-OoPZo";
21
- const styles = {
22
- root,
23
- header,
24
- title,
25
- headerActions,
26
- splitContainer,
27
- tablePanel,
28
- chartPanel,
29
- table,
30
- tableRow,
31
- tableRowSelected,
32
- pagination,
33
- paginationButton,
34
- paginationInfo,
35
- placeholder,
36
- loading,
37
- error,
38
- retryButton,
39
- empty
40
- };
41
- exports.chartPanel = chartPanel;
42
- exports.default = styles;
43
- exports.empty = empty;
44
- exports.error = error;
45
- exports.header = header;
46
- exports.headerActions = headerActions;
47
- exports.loading = loading;
48
- exports.pagination = pagination;
49
- exports.paginationButton = paginationButton;
50
- exports.paginationInfo = paginationInfo;
51
- exports.placeholder = placeholder;
52
- exports.retryButton = retryButton;
53
- exports.root = root;
54
- exports.splitContainer = splitContainer;
55
- exports.table = table;
56
- exports.tablePanel = tablePanel;
57
- exports.tableRow = tableRow;
58
- exports.tableRowSelected = tableRowSelected;
59
- exports.title = title;
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;
60
16
  //# sourceMappingURL=index124.cjs.map
@@ -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,60 +1,16 @@
1
- const root = "krc-root-GYECa";
2
- const header = "krc-header-7V-0i";
3
- const title = "krc-title-SiRcV";
4
- const headerActions = "krc-headerActions-HY6nM";
5
- const splitContainer = "krc-splitContainer-ovkIf";
6
- const tablePanel = "krc-tablePanel-gbWQx";
7
- const chartPanel = "krc-chartPanel-eBJ9W";
8
- const table = "krc-table-40WZx";
9
- const tableRow = "krc-tableRow-yQlEa";
10
- const tableRowSelected = "krc-tableRowSelected-vIEfO";
11
- const pagination = "krc-pagination-nyCxO";
12
- const paginationButton = "krc-paginationButton-k-cQB";
13
- const paginationInfo = "krc-paginationInfo-ouuPw";
14
- const placeholder = "krc-placeholder-YDeIw";
15
- const loading = "krc-loading-UoiCd";
16
- const error = "krc-error-Subfi";
17
- const retryButton = "krc-retryButton-k8HPu";
18
- const empty = "krc-empty-OoPZo";
19
- const styles = {
20
- root,
21
- header,
22
- title,
23
- headerActions,
24
- splitContainer,
25
- tablePanel,
26
- chartPanel,
27
- table,
28
- tableRow,
29
- tableRowSelected,
30
- pagination,
31
- paginationButton,
32
- paginationInfo,
33
- placeholder,
34
- loading,
35
- error,
36
- retryButton,
37
- empty
38
- };
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";
39
13
  export {
40
- chartPanel,
41
- styles as default,
42
- empty,
43
- error,
44
- header,
45
- headerActions,
46
- loading,
47
- pagination,
48
- paginationButton,
49
- paginationInfo,
50
- placeholder,
51
- retryButton,
52
- root,
53
- splitContainer,
54
- table,
55
- tablePanel,
56
- tableRow,
57
- tableRowSelected,
58
- title
14
+ PointListing
59
15
  };
60
16
  //# sourceMappingURL=index124.js.map
@@ -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;"}