@ogc-maps/storybook-components 0.14.0 → 0.16.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 (203) hide show
  1. package/LICENSE +661 -0
  2. package/dist/{BasemapSwitcher-BW7lyZ2Y.js → BasemapSwitcher-DuqVusX0.js} +9 -9
  3. package/dist/CollapsibleControl-BTIkiTmU.js +60 -0
  4. package/dist/CoordinateDisplay-BblQ34mS.js +154 -0
  5. package/dist/{ExportButton-Ck1dESnc.js → ExportButton-C8hCCsav.js} +7 -7
  6. package/dist/{FeatureDetailPanel-CkFpdEKW.js → FeatureDetailPanel-DgCHiNi9.js} +16 -16
  7. package/dist/FeatureTooltip-DHjMZC0u.js +49 -0
  8. package/dist/{LayerPanel-SCdJ8948.js → LayerPanel-BkDbZ66Z.js} +23 -23
  9. package/dist/Legend-CvBd-v0n.js +285 -0
  10. package/dist/PropertyList-0EonV_BQ.js +33 -0
  11. package/dist/SearchPanel-DIb7aYVs.js +725 -0
  12. package/dist/components/BasemapSwitcher/index.js +1 -1
  13. package/dist/components/CollapsibleControl/CollapsibleControl.d.ts +4 -1
  14. package/dist/components/CollapsibleControl/CollapsibleControl.d.ts.map +1 -1
  15. package/dist/components/CollapsibleControl/index.js +1 -1
  16. package/dist/components/CompassControl/CompassControl.d.ts +19 -0
  17. package/dist/components/CompassControl/CompassControl.d.ts.map +1 -0
  18. package/dist/components/CompassControl/index.d.ts +3 -0
  19. package/dist/components/CompassControl/index.d.ts.map +1 -0
  20. package/dist/components/CoordinateDisplay/CoordinateDisplay.d.ts +35 -4
  21. package/dist/components/CoordinateDisplay/CoordinateDisplay.d.ts.map +1 -1
  22. package/dist/components/CoordinateDisplay/CoordinateDisplay.test.d.ts +2 -0
  23. package/dist/components/CoordinateDisplay/CoordinateDisplay.test.d.ts.map +1 -0
  24. package/dist/components/CoordinateDisplay/index.d.ts +1 -1
  25. package/dist/components/CoordinateDisplay/index.d.ts.map +1 -1
  26. package/dist/components/CoordinateDisplay/index.js +5 -3
  27. package/dist/components/Cql2FilterEditor/Cql2FilterEditor.d.ts +9 -0
  28. package/dist/components/Cql2FilterEditor/Cql2FilterEditor.d.ts.map +1 -0
  29. package/dist/components/Cql2FilterEditor/Cql2Preview.d.ts +6 -0
  30. package/dist/components/Cql2FilterEditor/Cql2Preview.d.ts.map +1 -0
  31. package/dist/components/Cql2FilterEditor/FilterRuleEditor.d.ts +9 -0
  32. package/dist/components/Cql2FilterEditor/FilterRuleEditor.d.ts.map +1 -0
  33. package/dist/components/Cql2FilterEditor/FilterRuleGroupEditor.d.ts +10 -0
  34. package/dist/components/Cql2FilterEditor/FilterRuleGroupEditor.d.ts.map +1 -0
  35. package/dist/components/Cql2FilterEditor/FilterValueInput.d.ts +12 -0
  36. package/dist/components/Cql2FilterEditor/FilterValueInput.d.ts.map +1 -0
  37. package/dist/components/Cql2FilterEditor/ParameterizableField.d.ts +30 -0
  38. package/dist/components/Cql2FilterEditor/ParameterizableField.d.ts.map +1 -0
  39. package/dist/components/Cql2FilterEditor/index.d.ts +2 -0
  40. package/dist/components/Cql2FilterEditor/index.d.ts.map +1 -0
  41. package/dist/components/Cql2FilterEditor/operatorOptions.d.ts +9 -0
  42. package/dist/components/Cql2FilterEditor/operatorOptions.d.ts.map +1 -0
  43. package/dist/components/Cql2FilterEditor/styles.d.ts +3 -0
  44. package/dist/components/Cql2FilterEditor/styles.d.ts.map +1 -0
  45. package/dist/components/ExportButton/index.js +1 -1
  46. package/dist/components/ExportModal/ExportModal.d.ts +20 -1
  47. package/dist/components/ExportModal/ExportModal.d.ts.map +1 -1
  48. package/dist/components/ExportModal/index.d.ts +1 -1
  49. package/dist/components/ExportModal/index.d.ts.map +1 -1
  50. package/dist/components/FeatureDetailPanel/index.js +1 -1
  51. package/dist/components/FeatureTooltip/index.js +1 -1
  52. package/dist/components/GlobalSearchBar/GlobalSearchBar.d.ts +25 -0
  53. package/dist/components/GlobalSearchBar/GlobalSearchBar.d.ts.map +1 -0
  54. package/dist/components/GlobalSearchBar/GlobalSearchBar.test.d.ts +2 -0
  55. package/dist/components/GlobalSearchBar/GlobalSearchBar.test.d.ts.map +1 -0
  56. package/dist/components/GlobalSearchBar/index.d.ts +3 -0
  57. package/dist/components/GlobalSearchBar/index.d.ts.map +1 -0
  58. package/dist/components/GlobalSearchConfigEditor/GlobalSearchConfigEditor.d.ts +22 -0
  59. package/dist/components/GlobalSearchConfigEditor/GlobalSearchConfigEditor.d.ts.map +1 -0
  60. package/dist/components/GlobalSearchConfigEditor/GlobalSearchConfigEditor.test.d.ts +2 -0
  61. package/dist/components/GlobalSearchConfigEditor/GlobalSearchConfigEditor.test.d.ts.map +1 -0
  62. package/dist/components/GlobalSearchConfigEditor/index.d.ts +3 -0
  63. package/dist/components/GlobalSearchConfigEditor/index.d.ts.map +1 -0
  64. package/dist/components/ImageryEditor/ImageryEditor.d.ts +0 -1
  65. package/dist/components/ImageryEditor/ImageryEditor.d.ts.map +1 -1
  66. package/dist/components/ImageryEditor/index.d.ts +2 -1
  67. package/dist/components/ImageryEditor/index.d.ts.map +1 -1
  68. package/dist/components/ImageryPanel/ImageryPanel.d.ts.map +1 -1
  69. package/dist/components/InfoControl/InfoControl.d.ts +12 -0
  70. package/dist/components/InfoControl/InfoControl.d.ts.map +1 -0
  71. package/dist/components/InfoControl/InfoModal.d.ts +16 -0
  72. package/dist/components/InfoControl/InfoModal.d.ts.map +1 -0
  73. package/dist/components/InfoControl/index.d.ts +5 -0
  74. package/dist/components/InfoControl/index.d.ts.map +1 -0
  75. package/dist/components/LayerEditor/LayerEditor.d.ts +6 -1
  76. package/dist/components/LayerEditor/LayerEditor.d.ts.map +1 -1
  77. package/dist/components/LayerEditor/LayerList.d.ts +8 -1
  78. package/dist/components/LayerEditor/LayerList.d.ts.map +1 -1
  79. package/dist/components/LayerEditor/index.d.ts +1 -1
  80. package/dist/components/LayerEditor/index.d.ts.map +1 -1
  81. package/dist/components/LayerPanel/index.js +1 -1
  82. package/dist/components/Legend/Legend.d.ts +7 -1
  83. package/dist/components/Legend/Legend.d.ts.map +1 -1
  84. package/dist/components/Legend/index.js +1 -1
  85. package/dist/components/PropertyFilterPanel/PropertyFilterPanel.d.ts +21 -0
  86. package/dist/components/PropertyFilterPanel/PropertyFilterPanel.d.ts.map +1 -0
  87. package/dist/components/PropertyFilterPanel/index.d.ts +3 -0
  88. package/dist/components/PropertyFilterPanel/index.d.ts.map +1 -0
  89. package/dist/components/QueryPanel/QueryPanel.d.ts +14 -0
  90. package/dist/components/QueryPanel/QueryPanel.d.ts.map +1 -0
  91. package/dist/components/QueryPanel/index.d.ts +3 -0
  92. package/dist/components/QueryPanel/index.d.ts.map +1 -0
  93. package/dist/components/ResultsDrawer/ResultsDrawer.d.ts +29 -4
  94. package/dist/components/ResultsDrawer/ResultsDrawer.d.ts.map +1 -1
  95. package/dist/components/ResultsDrawer/index.d.ts +1 -1
  96. package/dist/components/ResultsDrawer/index.d.ts.map +1 -1
  97. package/dist/components/ResultsDrawer/tableUtils.d.ts +11 -0
  98. package/dist/components/ResultsDrawer/tableUtils.d.ts.map +1 -0
  99. package/dist/components/ScaleBarControl/ScaleBarControl.d.ts +32 -0
  100. package/dist/components/ScaleBarControl/ScaleBarControl.d.ts.map +1 -0
  101. package/dist/components/ScaleBarControl/index.d.ts +2 -0
  102. package/dist/components/ScaleBarControl/index.d.ts.map +1 -0
  103. package/dist/components/SearchPanel/SearchPanel.d.ts +15 -2
  104. package/dist/components/SearchPanel/SearchPanel.d.ts.map +1 -1
  105. package/dist/components/SearchPanel/index.js +1 -1
  106. package/dist/components/SelectionPanel/SelectionPanel.d.ts +3 -1
  107. package/dist/components/SelectionPanel/SelectionPanel.d.ts.map +1 -1
  108. package/dist/components/SideMenuPanel/SideMenuPanel.d.ts +51 -0
  109. package/dist/components/SideMenuPanel/SideMenuPanel.d.ts.map +1 -0
  110. package/dist/components/SideMenuPanel/index.d.ts +3 -0
  111. package/dist/components/SideMenuPanel/index.d.ts.map +1 -0
  112. package/dist/components/SourceEditor/SourceEditor.d.ts +3 -1
  113. package/dist/components/SourceEditor/SourceEditor.d.ts.map +1 -1
  114. package/dist/components/SourceEditor/SourceList.d.ts +6 -1
  115. package/dist/components/SourceEditor/SourceList.d.ts.map +1 -1
  116. package/dist/components/SourceEditor/index.d.ts +1 -1
  117. package/dist/components/SourceEditor/index.d.ts.map +1 -1
  118. package/dist/components/StyleEditor/DataDrivenColorEditor.d.ts +8 -3
  119. package/dist/components/StyleEditor/DataDrivenColorEditor.d.ts.map +1 -1
  120. package/dist/components/StyleEditor/PropertyField.d.ts +6 -3
  121. package/dist/components/StyleEditor/PropertyField.d.ts.map +1 -1
  122. package/dist/components/StyleEditor/PropertyGroup.d.ts +6 -3
  123. package/dist/components/StyleEditor/PropertyGroup.d.ts.map +1 -1
  124. package/dist/components/StyleEditor/StyleEditor.d.ts +7 -3
  125. package/dist/components/StyleEditor/StyleEditor.d.ts.map +1 -1
  126. package/dist/components/UIConfigEditor/UIConfigEditor.d.ts +13 -2
  127. package/dist/components/UIConfigEditor/UIConfigEditor.d.ts.map +1 -1
  128. package/dist/components/UserMenu/UserMenu.d.ts +15 -0
  129. package/dist/components/UserMenu/UserMenu.d.ts.map +1 -0
  130. package/dist/components/UserMenu/index.d.ts +3 -0
  131. package/dist/components/UserMenu/index.d.ts.map +1 -0
  132. package/dist/components/ViewEditor/ViewEditor.d.ts.map +1 -1
  133. package/dist/components/index.d.ts +26 -5
  134. package/dist/components/index.d.ts.map +1 -1
  135. package/dist/components/shared/controlIcons.d.ts +10 -0
  136. package/dist/components/shared/controlIcons.d.ts.map +1 -0
  137. package/dist/geo-DUdRIR7u.js +9776 -0
  138. package/dist/hooks/index.d.ts +5 -3
  139. package/dist/hooks/index.d.ts.map +1 -1
  140. package/dist/hooks/index.js +68 -59
  141. package/dist/hooks/useExport.d.ts +7 -7
  142. package/dist/hooks/useExport.d.ts.map +1 -1
  143. package/dist/id-C2J6iu8_.js +11 -0
  144. package/dist/index-BtQnyWPg.js +3718 -0
  145. package/dist/main.js +13801 -2600
  146. package/dist/schemas/config.d.ts +2127 -5011
  147. package/dist/schemas/config.d.ts.map +1 -1
  148. package/dist/schemas/index.d.ts +1 -1
  149. package/dist/schemas/index.d.ts.map +1 -1
  150. package/dist/schemas/index.js +35 -24
  151. package/dist/style.css +1 -1
  152. package/dist/types/index.d.ts +47 -2
  153. package/dist/types/index.d.ts.map +1 -1
  154. package/dist/types/index.js +56 -33
  155. package/dist/useSelection-BFHYsPvU.js +224 -0
  156. package/dist/utils/colorPalettes.d.ts +4 -2
  157. package/dist/utils/colorPalettes.d.ts.map +1 -1
  158. package/dist/utils/colorThemes.d.ts +12 -0
  159. package/dist/utils/colorThemes.d.ts.map +1 -0
  160. package/dist/utils/cql2.d.ts +34 -5
  161. package/dist/utils/cql2.d.ts.map +1 -1
  162. package/dist/utils/exportConverters.d.ts +16 -0
  163. package/dist/utils/exportConverters.d.ts.map +1 -0
  164. package/dist/utils/geo.d.ts +59 -0
  165. package/dist/utils/geo.d.ts.map +1 -1
  166. package/dist/utils/id.d.ts +2 -0
  167. package/dist/utils/id.d.ts.map +1 -0
  168. package/dist/utils/index.d.ts +9 -0
  169. package/dist/utils/index.d.ts.map +1 -1
  170. package/dist/utils/index.js +477 -0
  171. package/dist/utils/ogcApi.d.ts +31 -6
  172. package/dist/utils/ogcApi.d.ts.map +1 -1
  173. package/dist/utils/propertyFilters.d.ts +35 -0
  174. package/dist/utils/propertyFilters.d.ts.map +1 -0
  175. package/dist/utils/queryParameters.d.ts +23 -0
  176. package/dist/utils/queryParameters.d.ts.map +1 -0
  177. package/dist/utils/queryableHelpers.d.ts +4 -0
  178. package/dist/utils/queryableHelpers.d.ts.map +1 -1
  179. package/dist/utils/slugify.d.ts +2 -0
  180. package/dist/utils/slugify.d.ts.map +1 -0
  181. package/package.json +31 -14
  182. package/dist/CollapsibleControl-qo9daiD8.js +0 -53
  183. package/dist/CoordinateDisplay-PxPmVjpm.js +0 -47
  184. package/dist/FeatureTooltip-DxzN-jnp.js +0 -49
  185. package/dist/Legend-BLWBzD7Y.js +0 -275
  186. package/dist/PropertyList-BGXHLVBM.js +0 -33
  187. package/dist/SearchPanel-4Y12jfuP.js +0 -401
  188. package/dist/components/PropertyDisplayEditor/__tests__/PropertyDisplayEditor.test.d.ts +0 -2
  189. package/dist/components/PropertyDisplayEditor/__tests__/PropertyDisplayEditor.test.d.ts.map +0 -1
  190. package/dist/geo-PA_KiJwy.js +0 -1169
  191. package/dist/index-Cz_PEKV1.js +0 -3035
  192. package/dist/schemas/__tests__/config.test.d.ts +0 -2
  193. package/dist/schemas/__tests__/config.test.d.ts.map +0 -1
  194. package/dist/utils/__tests__/cql2.test.d.ts +0 -2
  195. package/dist/utils/__tests__/cql2.test.d.ts.map +0 -1
  196. package/dist/utils/__tests__/expressionColors.test.d.ts +0 -2
  197. package/dist/utils/__tests__/expressionColors.test.d.ts.map +0 -1
  198. package/dist/utils/__tests__/propertyDisplay.test.d.ts +0 -2
  199. package/dist/utils/__tests__/propertyDisplay.test.d.ts.map +0 -1
  200. package/dist/utils/__tests__/queryableHelpers.test.d.ts +0 -2
  201. package/dist/utils/__tests__/queryableHelpers.test.d.ts.map +0 -1
  202. package/dist/utils/__tests__/wkt.test.d.ts +0 -2
  203. package/dist/utils/__tests__/wkt.test.d.ts.map +0 -1
@@ -1,4 +1,4 @@
1
- import { B as r } from "../../BasemapSwitcher-BW7lyZ2Y.js";
1
+ import { B as r } from "../../BasemapSwitcher-DuqVusX0.js";
2
2
  export {
3
3
  r as BasemapSwitcher
4
4
  };
@@ -1,3 +1,4 @@
1
+ import { ControlCorner } from '../../types';
1
2
  export interface CollapsibleControlProps {
2
3
  /** Icon component to display when collapsed (e.g., LuLayers3 from react-icons/lu) */
3
4
  icon: React.ComponentType<{
@@ -6,6 +7,8 @@ export interface CollapsibleControlProps {
6
7
  }>;
7
8
  /** Accessible label for the control (shown as tooltip/aria-label) */
8
9
  label: string;
10
+ /** Which corner of the map this control sits in — determines expansion direction */
11
+ corner?: ControlCorner;
9
12
  /** Initial collapsed state (uncontrolled mode) */
10
13
  defaultCollapsed?: boolean;
11
14
  /** Controlled collapsed state */
@@ -27,5 +30,5 @@ export interface CollapsibleControlProps {
27
30
  * - Uncontrolled: Pass `defaultCollapsed` prop
28
31
  * - Controlled: Pass `collapsed` and `onToggle` props
29
32
  */
30
- export declare function CollapsibleControl({ icon: Icon, label, defaultCollapsed, collapsed: controlledCollapsed, onToggle, children, className, }: CollapsibleControlProps): import("react/jsx-runtime").JSX.Element;
33
+ export declare function CollapsibleControl({ icon: Icon, label, corner, defaultCollapsed, collapsed: controlledCollapsed, onToggle, children, className, }: CollapsibleControlProps): import("react/jsx-runtime").JSX.Element;
31
34
  //# sourceMappingURL=CollapsibleControl.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"CollapsibleControl.d.ts","sourceRoot":"","sources":["../../../src/components/CollapsibleControl/CollapsibleControl.tsx"],"names":[],"mappings":"AAGA,MAAM,WAAW,uBAAuB;IACtC,qFAAqF;IACrF,IAAI,EAAE,KAAK,CAAC,aAAa,CAAC;QAAE,IAAI,CAAC,EAAE,MAAM,CAAC;QAAC,SAAS,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IACjE,qEAAqE;IACrE,KAAK,EAAE,MAAM,CAAC;IACd,kDAAkD;IAClD,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,iCAAiC;IACjC,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,8DAA8D;IAC9D,QAAQ,CAAC,EAAE,CAAC,SAAS,EAAE,OAAO,KAAK,IAAI,CAAC;IACxC,sCAAsC;IACtC,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B,+CAA+C;IAC/C,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED;;;;;;;;;GASG;AACH,wBAAgB,kBAAkB,CAAC,EACjC,IAAI,EAAE,IAAI,EACV,KAAK,EACL,gBAAuB,EACvB,SAAS,EAAE,mBAAmB,EAC9B,QAAQ,EACR,QAAQ,EACR,SAAc,GACf,EAAE,uBAAuB,2CA4DzB"}
1
+ {"version":3,"file":"CollapsibleControl.d.ts","sourceRoot":"","sources":["../../../src/components/CollapsibleControl/CollapsibleControl.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AASjD,MAAM,WAAW,uBAAuB;IACtC,qFAAqF;IACrF,IAAI,EAAE,KAAK,CAAC,aAAa,CAAC;QAAE,IAAI,CAAC,EAAE,MAAM,CAAC;QAAC,SAAS,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IACjE,qEAAqE;IACrE,KAAK,EAAE,MAAM,CAAC;IACd,oFAAoF;IACpF,MAAM,CAAC,EAAE,aAAa,CAAC;IACvB,kDAAkD;IAClD,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,iCAAiC;IACjC,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,8DAA8D;IAC9D,QAAQ,CAAC,EAAE,CAAC,SAAS,EAAE,OAAO,KAAK,IAAI,CAAC;IACxC,sCAAsC;IACtC,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B,+CAA+C;IAC/C,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED;;;;;;;;;GASG;AACH,wBAAgB,kBAAkB,CAAC,EACjC,IAAI,EAAE,IAAI,EACV,KAAK,EACL,MAAoB,EACpB,gBAAuB,EACvB,SAAS,EAAE,mBAAmB,EAC9B,QAAQ,EACR,QAAQ,EACR,SAAc,GACf,EAAE,uBAAuB,2CA8DzB"}
@@ -1,4 +1,4 @@
1
- import { C as r } from "../../CollapsibleControl-qo9daiD8.js";
1
+ import { C as r } from "../../CollapsibleControl-BTIkiTmU.js";
2
2
  export {
3
3
  r as CollapsibleControl
4
4
  };
@@ -0,0 +1,19 @@
1
+ export interface CompassControlProps {
2
+ /** Current map bearing in degrees. Positive values rotate the map clockwise. */
3
+ bearing: number;
4
+ /** Called when the user clicks the compass to reset bearing to 0. */
5
+ onReset: () => void;
6
+ /** Accessible label / tooltip. */
7
+ ariaLabel?: string;
8
+ className?: string;
9
+ }
10
+ /**
11
+ * A framework-agnostic compass control. Renders a circular button with a
12
+ * compass needle that rotates as the map bearing changes. Clicking the
13
+ * button fires `onReset` so the caller can animate the map back to north.
14
+ *
15
+ * The component is fully controlled — it has no internal state and no
16
+ * dependency on MapLibre or any specific map library.
17
+ */
18
+ export declare function CompassControl({ bearing, onReset, ariaLabel, className, }: CompassControlProps): import("react/jsx-runtime").JSX.Element;
19
+ //# sourceMappingURL=CompassControl.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CompassControl.d.ts","sourceRoot":"","sources":["../../../src/components/CompassControl/CompassControl.tsx"],"names":[],"mappings":"AAAA,MAAM,WAAW,mBAAmB;IAClC,gFAAgF;IAChF,OAAO,EAAE,MAAM,CAAC;IAChB,qEAAqE;IACrE,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,kCAAkC;IAClC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED;;;;;;;GAOG;AACH,wBAAgB,cAAc,CAAC,EAC7B,OAAO,EACP,OAAO,EACP,SAA4C,EAC5C,SAAc,GACf,EAAE,mBAAmB,2CA8DrB"}
@@ -0,0 +1,3 @@
1
+ export { CompassControl } from './CompassControl';
2
+ export type { CompassControlProps } from './CompassControl';
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/CompassControl/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,YAAY,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC"}
@@ -10,17 +10,48 @@ export interface CoordinateDisplayProps {
10
10
  formats: CoordinateFormatOption[];
11
11
  onFormatChange: (formatId: string) => void;
12
12
  className?: string;
13
+ /**
14
+ * When provided, the coordinate readout becomes a button that expands into
15
+ * a "go to lat/lng" input form. Wire this to `map.flyTo` in the consumer.
16
+ */
17
+ onNavigate?: (lat: number, lng: number) => void;
18
+ /** Controlled expand/collapse state for the navigate form. */
19
+ isExpanded?: boolean;
20
+ /** Called when the user clicks the expand toggle. */
21
+ onToggleExpand?: (next: boolean) => void;
13
22
  }
14
23
  /**
15
- * Format coordinates as decimal degrees
24
+ * Format coordinates as decimal degrees.
16
25
  */
17
26
  export declare function formatDecimal(lat: number, lng: number): string;
18
27
  /**
19
- * Format coordinates as degrees, minutes, seconds (DMS)
28
+ * Format coordinates as degrees, minutes, seconds (DMS).
20
29
  */
21
30
  export declare function formatDMS(lat: number, lng: number): string;
22
31
  /**
23
- * CoordinateDisplay - Shows mouse coordinates with selectable format
32
+ * Format coordinates as degrees with decimal minutes (DDM).
24
33
  */
25
- export declare function CoordinateDisplay({ latitude, longitude, activeFormat, formats, onFormatChange, className, }: CoordinateDisplayProps): import("react/jsx-runtime").JSX.Element;
34
+ export declare function formatDDM(lat: number, lng: number): string;
35
+ /**
36
+ * Parse a single coordinate component. Accepts decimal degrees, DDM, or DMS,
37
+ * with an optional hemisphere letter (N/S/E/W). Returns `null` if the string
38
+ * is unparseable. Doesn't range-check — callers do that against axis-specific
39
+ * limits.
40
+ *
41
+ * Supported shapes:
42
+ * "40.7128" → 40.7128
43
+ * "-74.006" → -74.006
44
+ * "40.7128 N" → 40.7128
45
+ * "74.006 W" → -74.006
46
+ * "40 42.768 N" → 40.7128
47
+ * "40 42' 46.08\" N" → 40.7128
48
+ * "40°42'46.08\"N" → 40.7128
49
+ */
50
+ export declare function parseCoordinate(input: string): number | null;
51
+ /**
52
+ * CoordinateDisplay - Shows mouse coordinates with selectable format.
53
+ * When `onNavigate` is provided, clicking the readout expands the control into
54
+ * a lat/lng input form for "go-to" navigation.
55
+ */
56
+ export declare function CoordinateDisplay({ latitude, longitude, activeFormat, formats, onFormatChange, className, onNavigate, isExpanded: isExpandedProp, onToggleExpand, }: CoordinateDisplayProps): import("react/jsx-runtime").JSX.Element;
26
57
  //# sourceMappingURL=CoordinateDisplay.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"CoordinateDisplay.d.ts","sourceRoot":"","sources":["../../../src/components/CoordinateDisplay/CoordinateDisplay.tsx"],"names":[],"mappings":"AAAA,MAAM,WAAW,sBAAsB;IACrC,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,KAAK,MAAM,CAAC;CAC9C;AAED,MAAM,WAAW,sBAAsB;IACrC,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,YAAY,EAAE,MAAM,CAAC;IACrB,OAAO,EAAE,sBAAsB,EAAE,CAAC;IAClC,cAAc,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,IAAI,CAAC;IAC3C,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED;;GAEG;AACH,wBAAgB,aAAa,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM,CAE9D;AAED;;GAEG;AACH,wBAAgB,SAAS,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM,CAc1D;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,EAChC,QAAQ,EACR,SAAS,EACT,YAAY,EACZ,OAAO,EACP,cAAc,EACd,SAAc,GACf,EAAE,sBAAsB,2CA2BxB"}
1
+ {"version":3,"file":"CoordinateDisplay.d.ts","sourceRoot":"","sources":["../../../src/components/CoordinateDisplay/CoordinateDisplay.tsx"],"names":[],"mappings":"AAEA,MAAM,WAAW,sBAAsB;IACrC,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,KAAK,MAAM,CAAC;CAC9C;AAED,MAAM,WAAW,sBAAsB;IACrC,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,YAAY,EAAE,MAAM,CAAC;IACrB,OAAO,EAAE,sBAAsB,EAAE,CAAC;IAClC,cAAc,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,IAAI,CAAC;IAC3C,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB;;;OAGG;IACH,UAAU,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,KAAK,IAAI,CAAC;IAChD,8DAA8D;IAC9D,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,qDAAqD;IACrD,cAAc,CAAC,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,CAAC;CAC1C;AAED;;GAEG;AACH,wBAAgB,aAAa,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM,CAE9D;AAED;;GAEG;AACH,wBAAgB,SAAS,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM,CAc1D;AAED;;GAEG;AACH,wBAAgB,SAAS,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM,CAY1D;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,eAAe,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAiD5D;AAED;;;;GAIG;AACH,wBAAgB,iBAAiB,CAAC,EAChC,QAAQ,EACR,SAAS,EACT,YAAY,EACZ,OAAO,EACP,cAAc,EACd,SAAc,EACd,UAAU,EACV,UAAU,EAAE,cAAc,EAC1B,cAAc,GACf,EAAE,sBAAsB,2CAwHxB"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=CoordinateDisplay.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CoordinateDisplay.test.d.ts","sourceRoot":"","sources":["../../../src/components/CoordinateDisplay/CoordinateDisplay.test.ts"],"names":[],"mappings":""}
@@ -1,2 +1,2 @@
1
- export { CoordinateDisplay, formatDecimal, formatDMS, type CoordinateDisplayProps, type CoordinateFormatOption, } from './CoordinateDisplay';
1
+ export { CoordinateDisplay, formatDecimal, formatDMS, formatDDM, parseCoordinate, type CoordinateDisplayProps, type CoordinateFormatOption, } from './CoordinateDisplay';
2
2
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/CoordinateDisplay/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,iBAAiB,EACjB,aAAa,EACb,SAAS,EACT,KAAK,sBAAsB,EAC3B,KAAK,sBAAsB,GAC5B,MAAM,qBAAqB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/CoordinateDisplay/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,iBAAiB,EACjB,aAAa,EACb,SAAS,EACT,SAAS,EACT,eAAe,EACf,KAAK,sBAAsB,EAC3B,KAAK,sBAAsB,GAC5B,MAAM,qBAAqB,CAAC"}
@@ -1,6 +1,8 @@
1
- import { C as r, f, a as m } from "../../CoordinateDisplay-PxPmVjpm.js";
1
+ import { C as r, f as s, a as t, b as e, p as f } from "../../CoordinateDisplay-BblQ34mS.js";
2
2
  export {
3
3
  r as CoordinateDisplay,
4
- f as formatDMS,
5
- m as formatDecimal
4
+ s as formatDDM,
5
+ t as formatDMS,
6
+ e as formatDecimal,
7
+ f as parseCoordinate
6
8
  };
@@ -0,0 +1,9 @@
1
+ import { Cql2FilterConfig, AvailableProperty } from '../../types';
2
+ export interface Cql2FilterEditorProps {
3
+ value: Cql2FilterConfig | undefined;
4
+ onChange: (config: Cql2FilterConfig | undefined) => void;
5
+ availableProperties?: AvailableProperty[];
6
+ geometryProperties?: string[];
7
+ }
8
+ export declare function Cql2FilterEditor({ value, onChange, availableProperties, geometryProperties }: Cql2FilterEditorProps): import("react/jsx-runtime").JSX.Element;
9
+ //# sourceMappingURL=Cql2FilterEditor.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Cql2FilterEditor.d.ts","sourceRoot":"","sources":["../../../src/components/Cql2FilterEditor/Cql2FilterEditor.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,iBAAiB,EAAkD,MAAM,aAAa,CAAC;AAOvH,MAAM,WAAW,qBAAqB;IACpC,KAAK,EAAE,gBAAgB,GAAG,SAAS,CAAC;IACpC,QAAQ,EAAE,CAAC,MAAM,EAAE,gBAAgB,GAAG,SAAS,KAAK,IAAI,CAAC;IACzD,mBAAmB,CAAC,EAAE,iBAAiB,EAAE,CAAC;IAC1C,kBAAkB,CAAC,EAAE,MAAM,EAAE,CAAC;CAC/B;AAiBD,wBAAgB,gBAAgB,CAAC,EAAE,KAAK,EAAE,QAAQ,EAAE,mBAAmB,EAAE,kBAAkB,EAAE,EAAE,qBAAqB,2CAwPnH"}
@@ -0,0 +1,6 @@
1
+ import { FilterRuleGroup } from '../../types';
2
+ export interface Cql2PreviewProps {
3
+ value: FilterRuleGroup;
4
+ }
5
+ export declare function Cql2Preview({ value }: Cql2PreviewProps): import("react/jsx-runtime").JSX.Element;
6
+ //# sourceMappingURL=Cql2Preview.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Cql2Preview.d.ts","sourceRoot":"","sources":["../../../src/components/Cql2FilterEditor/Cql2Preview.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAGnD,MAAM,WAAW,gBAAgB;IAC/B,KAAK,EAAE,eAAe,CAAC;CACxB;AAED,wBAAgB,WAAW,CAAC,EAAE,KAAK,EAAE,EAAE,gBAAgB,2CAmCtD"}
@@ -0,0 +1,9 @@
1
+ import { FilterRule, AvailableProperty } from '../../types';
2
+ export interface FilterRuleEditorProps {
3
+ value: FilterRule;
4
+ onChange: (rule: FilterRule) => void;
5
+ onRemove: () => void;
6
+ availableProperties?: AvailableProperty[];
7
+ }
8
+ export declare function FilterRuleEditor({ value, onChange, onRemove, availableProperties }: FilterRuleEditorProps): import("react/jsx-runtime").JSX.Element;
9
+ //# sourceMappingURL=FilterRuleEditor.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FilterRuleEditor.d.ts","sourceRoot":"","sources":["../../../src/components/Cql2FilterEditor/FilterRuleEditor.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAKjE,MAAM,WAAW,qBAAqB;IACpC,KAAK,EAAE,UAAU,CAAC;IAClB,QAAQ,EAAE,CAAC,IAAI,EAAE,UAAU,KAAK,IAAI,CAAC;IACrC,QAAQ,EAAE,MAAM,IAAI,CAAC;IACrB,mBAAmB,CAAC,EAAE,iBAAiB,EAAE,CAAC;CAC3C;AAED,wBAAgB,gBAAgB,CAAC,EAAE,KAAK,EAAE,QAAQ,EAAE,QAAQ,EAAE,mBAAmB,EAAE,EAAE,qBAAqB,2CAkGzG"}
@@ -0,0 +1,10 @@
1
+ import { FilterRuleGroup, AvailableProperty } from '../../types';
2
+ export interface FilterRuleGroupEditorProps {
3
+ value: FilterRuleGroup;
4
+ onChange: (group: FilterRuleGroup) => void;
5
+ onRemove?: () => void;
6
+ availableProperties?: AvailableProperty[];
7
+ depth: number;
8
+ }
9
+ export declare function FilterRuleGroupEditor({ value, onChange, onRemove, availableProperties, depth, }: FilterRuleGroupEditorProps): import("react/jsx-runtime").JSX.Element;
10
+ //# sourceMappingURL=FilterRuleGroupEditor.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FilterRuleGroupEditor.d.ts","sourceRoot":"","sources":["../../../src/components/Cql2FilterEditor/FilterRuleGroupEditor.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAc,eAAe,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAMlF,MAAM,WAAW,0BAA0B;IACzC,KAAK,EAAE,eAAe,CAAC;IACvB,QAAQ,EAAE,CAAC,KAAK,EAAE,eAAe,KAAK,IAAI,CAAC;IAC3C,QAAQ,CAAC,EAAE,MAAM,IAAI,CAAC;IACtB,mBAAmB,CAAC,EAAE,iBAAiB,EAAE,CAAC;IAC1C,KAAK,EAAE,MAAM,CAAC;CACf;AA2BD,wBAAgB,qBAAqB,CAAC,EACpC,KAAK,EACL,QAAQ,EACR,QAAQ,EACR,mBAAmB,EACnB,KAAK,GACN,EAAE,0BAA0B,2CAoH5B"}
@@ -0,0 +1,12 @@
1
+ import { FilterOperator, FilterRuleValue, SpatialConfig } from '../../types';
2
+ export interface FilterValueInputProps {
3
+ operator: FilterOperator;
4
+ value: FilterRuleValue;
5
+ onChange: (value: FilterRuleValue) => void;
6
+ spatial?: SpatialConfig;
7
+ onSpatialChange?: (spatial: SpatialConfig) => void;
8
+ propertyType?: string;
9
+ propertyEnum?: string[];
10
+ }
11
+ export declare function FilterValueInput({ operator, value, onChange, spatial, onSpatialChange, propertyType, propertyEnum, }: FilterValueInputProps): import("react/jsx-runtime").JSX.Element;
12
+ //# sourceMappingURL=FilterValueInput.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FilterValueInput.d.ts","sourceRoot":"","sources":["../../../src/components/Cql2FilterEditor/FilterValueInput.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,cAAc,EAAE,eAAe,EAAE,aAAa,EAAyD,MAAM,aAAa,CAAC;AA0FzI,MAAM,WAAW,qBAAqB;IACpC,QAAQ,EAAE,cAAc,CAAC;IACzB,KAAK,EAAE,eAAe,CAAC;IACvB,QAAQ,EAAE,CAAC,KAAK,EAAE,eAAe,KAAK,IAAI,CAAC;IAC3C,OAAO,CAAC,EAAE,aAAa,CAAC;IACxB,eAAe,CAAC,EAAE,CAAC,OAAO,EAAE,aAAa,KAAK,IAAI,CAAC;IACnD,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;CACzB;AAED,wBAAgB,gBAAgB,CAAC,EAC/B,QAAQ,EACR,KAAK,EACL,QAAQ,EACR,OAAO,EACP,eAAe,EACf,YAAY,EACZ,YAAY,GACb,EAAE,qBAAqB,2CA4BvB"}
@@ -0,0 +1,30 @@
1
+ import { ReactNode } from 'react';
2
+ import { Cql2DistanceUnit } from '../../types';
3
+ export type ParamRef<T> = {
4
+ kind: 'parameter';
5
+ name: string;
6
+ label: string;
7
+ default?: T;
8
+ };
9
+ export type Parameterizable<T> = T | ParamRef<T> | undefined;
10
+ export declare function isParamRef<T>(v: Parameterizable<T>): v is ParamRef<T>;
11
+ export interface ParameterizableFieldProps<T> {
12
+ value: Parameterizable<T>;
13
+ onChange: (v: Parameterizable<T>) => void;
14
+ /** Label used as the default `param.label` when toggling V→P */
15
+ defaultParamLabel: string;
16
+ /** Value used when no value is set yet (e.g. when toggling P→V on an empty param) */
17
+ emptyValue: T;
18
+ /** Renders the input for the literal value (V mode) and the parameter default (P mode) */
19
+ renderInput: (value: T | undefined, onChange: (v: T | undefined) => void) => ReactNode;
20
+ }
21
+ /**
22
+ * Toggles between a literal value and a `{kind:'parameter'}` reference.
23
+ * In P mode, exposes name/label inputs plus the same `renderInput` for the default value.
24
+ */
25
+ export declare function ParameterizableField<T>({ value, onChange, defaultParamLabel, emptyValue, renderInput, }: ParameterizableFieldProps<T>): import("react/jsx-runtime").JSX.Element;
26
+ export declare function UnitsSelect({ value, onChange, }: {
27
+ value: Cql2DistanceUnit | undefined;
28
+ onChange: (v: Cql2DistanceUnit) => void;
29
+ }): import("react/jsx-runtime").JSX.Element;
30
+ //# sourceMappingURL=ParameterizableField.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ParameterizableField.d.ts","sourceRoot":"","sources":["../../../src/components/Cql2FilterEditor/ParameterizableField.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAEvC,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAGpD,MAAM,MAAM,QAAQ,CAAC,CAAC,IAAI;IAAE,IAAI,EAAE,WAAW,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC,CAAA;CAAE,CAAC;AAC1F,MAAM,MAAM,eAAe,CAAC,CAAC,IAAI,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,GAAG,SAAS,CAAC;AAE7D,wBAAgB,UAAU,CAAC,CAAC,EAAE,CAAC,EAAE,eAAe,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,QAAQ,CAAC,CAAC,CAAC,CAErE;AAED,MAAM,WAAW,yBAAyB,CAAC,CAAC;IAC1C,KAAK,EAAE,eAAe,CAAC,CAAC,CAAC,CAAC;IAC1B,QAAQ,EAAE,CAAC,CAAC,EAAE,eAAe,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC;IAC1C,gEAAgE;IAChE,iBAAiB,EAAE,MAAM,CAAC;IAC1B,qFAAqF;IACrF,UAAU,EAAE,CAAC,CAAC;IACd,0FAA0F;IAC1F,WAAW,EAAE,CAAC,KAAK,EAAE,CAAC,GAAG,SAAS,EAAE,QAAQ,EAAE,CAAC,CAAC,EAAE,CAAC,GAAG,SAAS,KAAK,IAAI,KAAK,SAAS,CAAC;CACxF;AAED;;;GAGG;AACH,wBAAgB,oBAAoB,CAAC,CAAC,EAAE,EACtC,KAAK,EACL,QAAQ,EACR,iBAAiB,EACjB,UAAU,EACV,WAAW,GACZ,EAAE,yBAAyB,CAAC,CAAC,CAAC,2CAmD9B;AAED,wBAAgB,WAAW,CAAC,EAC1B,KAAK,EACL,QAAQ,GACT,EAAE;IACD,KAAK,EAAE,gBAAgB,GAAG,SAAS,CAAC;IACpC,QAAQ,EAAE,CAAC,CAAC,EAAE,gBAAgB,KAAK,IAAI,CAAC;CACzC,2CAcA"}
@@ -0,0 +1,2 @@
1
+ export { Cql2FilterEditor, type Cql2FilterEditorProps } from './Cql2FilterEditor';
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/Cql2FilterEditor/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,KAAK,qBAAqB,EAAE,MAAM,oBAAoB,CAAC"}
@@ -0,0 +1,9 @@
1
+ import { FilterOperator, FilterRuleValue } from '../../types';
2
+ export interface OperatorOption {
3
+ value: FilterOperator;
4
+ label: string;
5
+ }
6
+ export declare function getOperatorsForType(propertyType?: string, format?: string): OperatorOption[];
7
+ export declare function isSpatialOperator(op: FilterOperator): boolean;
8
+ export declare function getDefaultValue(operator: FilterOperator): FilterRuleValue;
9
+ //# sourceMappingURL=operatorOptions.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"operatorOptions.d.ts","sourceRoot":"","sources":["../../../src/components/Cql2FilterEditor/operatorOptions.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAEnE,MAAM,WAAW,cAAc;IAC7B,KAAK,EAAE,cAAc,CAAC;IACtB,KAAK,EAAE,MAAM,CAAC;CACf;AA4CD,wBAAgB,mBAAmB,CAAC,YAAY,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,cAAc,EAAE,CAI5F;AAED,wBAAgB,iBAAiB,CAAC,EAAE,EAAE,cAAc,GAAG,OAAO,CAE7D;AAED,wBAAgB,eAAe,CAAC,QAAQ,EAAE,cAAc,GAAG,eAAe,CAsBzE"}
@@ -0,0 +1,3 @@
1
+ export declare const inputClass = "mapui:rounded mapui:border mapui:border-slate-300 mapui:px-2 mapui:py-1 mapui:text-sm mapui:outline-none focus:mapui:border-blue-500 focus:mapui:ring-1 focus:mapui:ring-blue-500";
2
+ export declare const smallInputClass = "mapui:rounded mapui:border mapui:border-slate-300 mapui:px-2 mapui:py-1 mapui:text-sm mapui:outline-none focus:mapui:border-blue-500 focus:mapui:ring-1 focus:mapui:ring-blue-500 mapui:w-24";
3
+ //# sourceMappingURL=styles.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"styles.d.ts","sourceRoot":"","sources":["../../../src/components/Cql2FilterEditor/styles.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,UAAU,sLAC8J,CAAC;AAEtL,eAAO,MAAM,eAAe,iMAA6B,CAAC"}
@@ -1,4 +1,4 @@
1
- import { E as r } from "../../ExportButton-Ck1dESnc.js";
1
+ import { E as r } from "../../ExportButton-C8hCCsav.js";
2
2
  export {
3
3
  r as ExportButton
4
4
  };
@@ -9,21 +9,40 @@ export interface ExportFormatOption {
9
9
  extension: string;
10
10
  description?: string;
11
11
  }
12
+ export type ExportMode = 'all' | 'selected';
12
13
  export interface ExportRequest {
13
14
  layer: ExportableLayer;
14
15
  format: ExportFormatOption;
15
16
  filtered: boolean;
17
+ mode: ExportMode;
18
+ }
19
+ export interface PdfExportOptions {
20
+ title: string;
21
+ filename: string;
22
+ includeLegend: boolean;
23
+ includeScaleBar: boolean;
24
+ includeNorthArrow: boolean;
16
25
  }
17
26
  export interface ExportModalProps {
18
27
  open: boolean;
19
28
  layers: ExportableLayer[];
20
29
  availableFormats: ExportFormatOption[];
21
30
  hasActiveFilter: (layerId: string) => boolean;
31
+ /** Number of currently-selected features. When > 0, the "Selected only" mode becomes available. */
32
+ selectionCount?: number;
33
+ /** If provided, the modal preselects and locks onto this layer id for "Selected only" exports. */
34
+ selectionLayerId?: string | null;
22
35
  loading?: boolean;
23
36
  progress?: string | null;
24
37
  error?: string | null;
25
38
  onExport: (request: ExportRequest) => void;
26
39
  onClose: () => void;
40
+ /** When true, a "PDF — Map snapshot" option appears in the format list. */
41
+ pdfAvailable?: boolean;
42
+ onPdfExport?: (options: PdfExportOptions) => void;
43
+ pdfLoading?: boolean;
44
+ pdfProgress?: string | null;
45
+ pdfError?: string | null;
27
46
  }
28
- export declare function ExportModal({ open, layers, availableFormats, hasActiveFilter, loading, progress, error, onExport, onClose, }: ExportModalProps): import("react/jsx-runtime").JSX.Element | null;
47
+ export declare function ExportModal({ open, layers, availableFormats, hasActiveFilter, selectionCount, selectionLayerId, loading, progress, error, onExport, onClose, pdfAvailable, onPdfExport, pdfLoading, pdfProgress, pdfError, }: ExportModalProps): import("react/jsx-runtime").JSX.Element | null;
29
48
  //# sourceMappingURL=ExportModal.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"ExportModal.d.ts","sourceRoot":"","sources":["../../../src/components/ExportModal/ExportModal.tsx"],"names":[],"mappings":"AAEA,MAAM,WAAW,eAAe;IAC9B,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,kBAAkB;IACjC,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,aAAa;IAC5B,KAAK,EAAE,eAAe,CAAC;IACvB,MAAM,EAAE,kBAAkB,CAAC;IAC3B,QAAQ,EAAE,OAAO,CAAC;CACnB;AAED,MAAM,WAAW,gBAAgB;IAC/B,IAAI,EAAE,OAAO,CAAC;IACd,MAAM,EAAE,eAAe,EAAE,CAAC;IAC1B,gBAAgB,EAAE,kBAAkB,EAAE,CAAC;IACvC,eAAe,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,OAAO,CAAC;IAC9C,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,QAAQ,EAAE,CAAC,OAAO,EAAE,aAAa,KAAK,IAAI,CAAC;IAC3C,OAAO,EAAE,MAAM,IAAI,CAAC;CACrB;AAED,wBAAgB,WAAW,CAAC,EAC1B,IAAI,EACJ,MAAM,EACN,gBAAgB,EAChB,eAAe,EACf,OAAe,EACf,QAAQ,EACR,KAAK,EACL,QAAQ,EACR,OAAO,GACR,EAAE,gBAAgB,kDA4JlB"}
1
+ {"version":3,"file":"ExportModal.d.ts","sourceRoot":"","sources":["../../../src/components/ExportModal/ExportModal.tsx"],"names":[],"mappings":"AAEA,MAAM,WAAW,eAAe;IAC9B,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,kBAAkB;IACjC,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,MAAM,UAAU,GAAG,KAAK,GAAG,UAAU,CAAC;AAE5C,MAAM,WAAW,aAAa;IAC5B,KAAK,EAAE,eAAe,CAAC;IACvB,MAAM,EAAE,kBAAkB,CAAC;IAC3B,QAAQ,EAAE,OAAO,CAAC;IAClB,IAAI,EAAE,UAAU,CAAC;CAClB;AAED,MAAM,WAAW,gBAAgB;IAC/B,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;IACjB,aAAa,EAAE,OAAO,CAAC;IACvB,eAAe,EAAE,OAAO,CAAC;IACzB,iBAAiB,EAAE,OAAO,CAAC;CAC5B;AAID,MAAM,WAAW,gBAAgB;IAC/B,IAAI,EAAE,OAAO,CAAC;IACd,MAAM,EAAE,eAAe,EAAE,CAAC;IAC1B,gBAAgB,EAAE,kBAAkB,EAAE,CAAC;IACvC,eAAe,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,OAAO,CAAC;IAC9C,mGAAmG;IACnG,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,kGAAkG;IAClG,gBAAgB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACjC,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,QAAQ,EAAE,CAAC,OAAO,EAAE,aAAa,KAAK,IAAI,CAAC;IAC3C,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,2EAA2E;IAC3E,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,WAAW,CAAC,EAAE,CAAC,OAAO,EAAE,gBAAgB,KAAK,IAAI,CAAC;IAClD,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CAC1B;AAED,wBAAgB,WAAW,CAAC,EAC1B,IAAI,EACJ,MAAM,EACN,gBAAgB,EAChB,eAAe,EACf,cAAkB,EAClB,gBAAuB,EACvB,OAAe,EACf,QAAQ,EACR,KAAK,EACL,QAAQ,EACR,OAAO,EACP,YAAoB,EACpB,WAAW,EACX,UAAkB,EAClB,WAAW,EACX,QAAQ,GACT,EAAE,gBAAgB,kDA+UlB"}
@@ -1,3 +1,3 @@
1
1
  export { ExportModal } from './ExportModal';
2
- export type { ExportModalProps, ExportFormatOption, ExportRequest, ExportableLayer } from './ExportModal';
2
+ export type { ExportModalProps, ExportFormatOption, ExportRequest, ExportableLayer, ExportMode, PdfExportOptions, } from './ExportModal';
3
3
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/ExportModal/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,YAAY,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/ExportModal/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,YAAY,EACV,gBAAgB,EAChB,kBAAkB,EAClB,aAAa,EACb,eAAe,EACf,UAAU,EACV,gBAAgB,GACjB,MAAM,eAAe,CAAC"}
@@ -1,4 +1,4 @@
1
- import { F as r } from "../../FeatureDetailPanel-CkFpdEKW.js";
1
+ import { F as r } from "../../FeatureDetailPanel-DgCHiNi9.js";
2
2
  export {
3
3
  r as FeatureDetailPanel
4
4
  };
@@ -1,4 +1,4 @@
1
- import { F as r } from "../../FeatureTooltip-DxzN-jnp.js";
1
+ import { F as r } from "../../FeatureTooltip-DHjMZC0u.js";
2
2
  export {
3
3
  r as FeatureTooltip
4
4
  };
@@ -0,0 +1,25 @@
1
+ import { GlobalSearchConfig, LayerConfig } from '../../types';
2
+ export type FeatureMatch = {
3
+ id: string | number;
4
+ label: string;
5
+ matchedProperty: string;
6
+ geometry?: GeoJSON.Geometry;
7
+ bbox?: [number, number, number, number];
8
+ properties?: Record<string, unknown>;
9
+ };
10
+ export type GroupedResults = Record<string, {
11
+ layer: LayerConfig;
12
+ matches: FeatureMatch[];
13
+ }>;
14
+ export interface GlobalSearchBarProps {
15
+ config: GlobalSearchConfig;
16
+ layers: LayerConfig[];
17
+ value: string;
18
+ onChange: (q: string) => void;
19
+ results: GroupedResults;
20
+ onResultClick: (layerId: string, match: FeatureMatch) => void;
21
+ isLoading?: boolean;
22
+ className?: string;
23
+ }
24
+ export declare function GlobalSearchBar({ config, value, onChange, results, onResultClick, isLoading, className, }: GlobalSearchBarProps): import("react/jsx-runtime").JSX.Element;
25
+ //# sourceMappingURL=GlobalSearchBar.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"GlobalSearchBar.d.ts","sourceRoot":"","sources":["../../../src/components/GlobalSearchBar/GlobalSearchBar.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,kBAAkB,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAEnE,MAAM,MAAM,YAAY,GAAG;IACzB,EAAE,EAAE,MAAM,GAAG,MAAM,CAAC;IACpB,KAAK,EAAE,MAAM,CAAC;IACd,eAAe,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,EAAE,OAAO,CAAC,QAAQ,CAAC;IAC5B,IAAI,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;IACxC,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACtC,CAAC;AAEF,MAAM,MAAM,cAAc,GAAG,MAAM,CACjC,MAAM,EACN;IAAE,KAAK,EAAE,WAAW,CAAC;IAAC,OAAO,EAAE,YAAY,EAAE,CAAA;CAAE,CAChD,CAAC;AAEF,MAAM,WAAW,oBAAoB;IACnC,MAAM,EAAE,kBAAkB,CAAC;IAC3B,MAAM,EAAE,WAAW,EAAE,CAAC;IACtB,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,CAAC,CAAC,EAAE,MAAM,KAAK,IAAI,CAAC;IAC9B,OAAO,EAAE,cAAc,CAAC;IACxB,aAAa,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,YAAY,KAAK,IAAI,CAAC;IAC9D,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAQD,wBAAgB,eAAe,CAAC,EAC9B,MAAM,EACN,KAAK,EACL,QAAQ,EACR,OAAO,EACP,aAAa,EACb,SAAiB,EACjB,SAAc,GACf,EAAE,oBAAoB,2CAgNtB"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=GlobalSearchBar.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"GlobalSearchBar.test.d.ts","sourceRoot":"","sources":["../../../src/components/GlobalSearchBar/GlobalSearchBar.test.tsx"],"names":[],"mappings":""}
@@ -0,0 +1,3 @@
1
+ export { GlobalSearchBar } from './GlobalSearchBar';
2
+ export type { GlobalSearchBarProps, FeatureMatch, GroupedResults, } from './GlobalSearchBar';
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/GlobalSearchBar/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,YAAY,EACV,oBAAoB,EACpB,YAAY,EACZ,cAAc,GACf,MAAM,mBAAmB,CAAC"}
@@ -0,0 +1,22 @@
1
+ import { GlobalSearchConfig, GlobalSearchProperty, LayerConfig, AvailableProperty } from '../../types';
2
+ export interface GlobalSearchConfigEditorProps {
3
+ value: GlobalSearchConfig;
4
+ onChange: (next: GlobalSearchConfig) => void;
5
+ layers: LayerConfig[];
6
+ propertiesByLayer: Record<string, AvailableProperty[]>;
7
+ isLoadingProperties?: Record<string, boolean>;
8
+ }
9
+ export declare function addLayerEntry(value: GlobalSearchConfig, layerId: string): GlobalSearchConfig;
10
+ export declare function removeLayerEntry(value: GlobalSearchConfig, layerId: string): GlobalSearchConfig;
11
+ export declare function addPropertyToLayer(value: GlobalSearchConfig, layerId: string, initialName?: string): GlobalSearchConfig;
12
+ export declare function removePropertyAt(value: GlobalSearchConfig, layerId: string, index: number): GlobalSearchConfig;
13
+ export declare function updatePropertyAt(value: GlobalSearchConfig, layerId: string, index: number, patch: Partial<GlobalSearchProperty>): GlobalSearchConfig;
14
+ /**
15
+ * Set or clear `autocomplete` / `prefetch` independently. The two flags are
16
+ * orthogonal: `autocomplete` enables the property for global-search matching;
17
+ * `prefetch` is a case-insensitive booster on top that only matters when
18
+ * `autocomplete` is also on.
19
+ */
20
+ export declare function togglePropertyFlag(value: GlobalSearchConfig, layerId: string, index: number, flag: 'autocomplete' | 'prefetch', checked: boolean): GlobalSearchConfig;
21
+ export declare function GlobalSearchConfigEditor({ value, onChange, layers, propertiesByLayer, isLoadingProperties, }: GlobalSearchConfigEditorProps): import("react/jsx-runtime").JSX.Element;
22
+ //# sourceMappingURL=GlobalSearchConfigEditor.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"GlobalSearchConfigEditor.d.ts","sourceRoot":"","sources":["../../../src/components/GlobalSearchConfigEditor/GlobalSearchConfigEditor.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,kBAAkB,EAElB,oBAAoB,EACpB,WAAW,EACX,iBAAiB,EAClB,MAAM,aAAa,CAAC;AAGrB,MAAM,WAAW,6BAA6B;IAC5C,KAAK,EAAE,kBAAkB,CAAC;IAC1B,QAAQ,EAAE,CAAC,IAAI,EAAE,kBAAkB,KAAK,IAAI,CAAC;IAC7C,MAAM,EAAE,WAAW,EAAE,CAAC;IACtB,iBAAiB,EAAE,MAAM,CAAC,MAAM,EAAE,iBAAiB,EAAE,CAAC,CAAC;IACvD,mBAAmB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAC/C;AAOD,wBAAgB,aAAa,CAAC,KAAK,EAAE,kBAAkB,EAAE,OAAO,EAAE,MAAM,GAAG,kBAAkB,CAI5F;AAED,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,kBAAkB,EAAE,OAAO,EAAE,MAAM,GAAG,kBAAkB,CAE/F;AAED,wBAAgB,kBAAkB,CAChC,KAAK,EAAE,kBAAkB,EACzB,OAAO,EAAE,MAAM,EACf,WAAW,SAAK,GACf,kBAAkB,CASpB;AAED,wBAAgB,gBAAgB,CAC9B,KAAK,EAAE,kBAAkB,EACzB,OAAO,EAAE,MAAM,EACf,KAAK,EAAE,MAAM,GACZ,kBAAkB,CASpB;AAED,wBAAgB,gBAAgB,CAC9B,KAAK,EAAE,kBAAkB,EACzB,OAAO,EAAE,MAAM,EACf,KAAK,EAAE,MAAM,EACb,KAAK,EAAE,OAAO,CAAC,oBAAoB,CAAC,GACnC,kBAAkB,CAYpB;AAED;;;;;GAKG;AACH,wBAAgB,kBAAkB,CAChC,KAAK,EAAE,kBAAkB,EACzB,OAAO,EAAE,MAAM,EACf,KAAK,EAAE,MAAM,EACb,IAAI,EAAE,cAAc,GAAG,UAAU,EACjC,OAAO,EAAE,OAAO,GACf,kBAAkB,CAmBpB;AAID,wBAAgB,wBAAwB,CAAC,EACvC,KAAK,EACL,QAAQ,EACR,MAAM,EACN,iBAAiB,EACjB,mBAAmB,GACpB,EAAE,6BAA6B,2CA0S/B"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=GlobalSearchConfigEditor.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"GlobalSearchConfigEditor.test.d.ts","sourceRoot":"","sources":["../../../src/components/GlobalSearchConfigEditor/GlobalSearchConfigEditor.test.tsx"],"names":[],"mappings":""}
@@ -0,0 +1,3 @@
1
+ export { GlobalSearchConfigEditor } from './GlobalSearchConfigEditor';
2
+ export type { GlobalSearchConfigEditorProps } from './GlobalSearchConfigEditor';
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/GlobalSearchConfigEditor/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,wBAAwB,EAAE,MAAM,4BAA4B,CAAC;AACtE,YAAY,EAAE,6BAA6B,EAAE,MAAM,4BAA4B,CAAC"}
@@ -8,6 +8,5 @@ export interface ImageryEditorProps {
8
8
  /** Auth config for the selected source — passed to collection fetching */
9
9
  sourceAuth?: SourceAuth;
10
10
  }
11
- export declare function slugify(text: string): string;
12
11
  export declare function ImageryEditor({ value, onChange, availableSources, sourceUrl, sourceAuth, }: ImageryEditorProps): import("react/jsx-runtime").JSX.Element;
13
12
  //# sourceMappingURL=ImageryEditor.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"ImageryEditor.d.ts","sourceRoot":"","sources":["../../../src/components/ImageryEditor/ImageryEditor.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,kBAAkB,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAKhF,MAAM,WAAW,kBAAkB;IACjC,KAAK,EAAE,kBAAkB,CAAC;IAC1B,QAAQ,EAAE,CAAC,KAAK,EAAE,kBAAkB,KAAK,IAAI,CAAC;IAC9C,gBAAgB,CAAC,EAAE,YAAY,EAAE,CAAC;IAClC,8EAA8E;IAC9E,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,0EAA0E;IAC1E,UAAU,CAAC,EAAE,UAAU,CAAC;CACzB;AAKD,wBAAgB,OAAO,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAE5C;AAED,wBAAgB,aAAa,CAAC,EAC5B,KAAK,EACL,QAAQ,EACR,gBAAqB,EACrB,SAAS,EACT,UAAU,GACX,EAAE,kBAAkB,2CAoTpB"}
1
+ {"version":3,"file":"ImageryEditor.d.ts","sourceRoot":"","sources":["../../../src/components/ImageryEditor/ImageryEditor.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,kBAAkB,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAMhF,MAAM,WAAW,kBAAkB;IACjC,KAAK,EAAE,kBAAkB,CAAC;IAC1B,QAAQ,EAAE,CAAC,KAAK,EAAE,kBAAkB,KAAK,IAAI,CAAC;IAC9C,gBAAgB,CAAC,EAAE,YAAY,EAAE,CAAC;IAClC,8EAA8E;IAC9E,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,0EAA0E;IAC1E,UAAU,CAAC,EAAE,UAAU,CAAC;CACzB;AAKD,wBAAgB,aAAa,CAAC,EAC5B,KAAK,EACL,QAAQ,EACR,gBAAqB,EACrB,SAAS,EACT,UAAU,GACX,EAAE,kBAAkB,2CAqUpB"}
@@ -1,4 +1,5 @@
1
- export { ImageryEditor, slugify } from './ImageryEditor';
1
+ export { ImageryEditor } from './ImageryEditor';
2
+ export { slugify } from '../../utils/slugify';
2
3
  export type { ImageryEditorProps } from './ImageryEditor';
3
4
  export { ImageryList } from './ImageryList';
4
5
  export type { ImageryListProps } from './ImageryList';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/ImageryEditor/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,OAAO,EAAE,MAAM,iBAAiB,CAAC;AACzD,YAAY,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AAC1D,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,YAAY,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/ImageryEditor/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAC;AAC9C,YAAY,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AAC1D,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,YAAY,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"ImageryPanel.d.ts","sourceRoot":"","sources":["../../../src/components/ImageryPanel/ImageryPanel.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AAEtD,MAAM,WAAW,iBAAiB;IAChC,aAAa,EAAE,kBAAkB,EAAE,CAAC;IACpC,kBAAkB,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;IAC9C,eAAe,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;IAC7D,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB;AAED,wBAAgB,YAAY,CAAC,EAC3B,aAAa,EACb,kBAAkB,EAClB,eAAe,EACf,SAAc,EACd,SAAS,GACV,EAAE,iBAAiB,2CAsDnB"}
1
+ {"version":3,"file":"ImageryPanel.d.ts","sourceRoot":"","sources":["../../../src/components/ImageryPanel/ImageryPanel.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AA0BtD,MAAM,WAAW,iBAAiB;IAChC,aAAa,EAAE,kBAAkB,EAAE,CAAC;IACpC,kBAAkB,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;IAC9C,eAAe,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;IAC7D,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB;AAED,wBAAgB,YAAY,CAAC,EAC3B,aAAa,EACb,kBAAkB,EAClB,eAAe,EACf,SAAc,EACd,SAAS,GACV,EAAE,iBAAiB,2CAuDnB"}
@@ -0,0 +1,12 @@
1
+ export interface InfoControlProps {
2
+ /** Called when the user clicks the info button. */
3
+ onClick: () => void;
4
+ /** Accessible label for the button. */
5
+ ariaLabel?: string;
6
+ /** Tooltip shown on hover. */
7
+ title?: string;
8
+ className?: string;
9
+ }
10
+ /** 40×40 white info button. Fires `onClick` so the caller can open a modal. */
11
+ export declare function InfoControl({ onClick, ariaLabel, title, className, }: InfoControlProps): import("react/jsx-runtime").JSX.Element;
12
+ //# sourceMappingURL=InfoControl.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"InfoControl.d.ts","sourceRoot":"","sources":["../../../src/components/InfoControl/InfoControl.tsx"],"names":[],"mappings":"AAEA,MAAM,WAAW,gBAAgB;IAC/B,mDAAmD;IACnD,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,uCAAuC;IACvC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,8BAA8B;IAC9B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,+EAA+E;AAC/E,wBAAgB,WAAW,CAAC,EAC1B,OAAO,EACP,SAA6B,EAC7B,KAAwB,EACxB,SAAc,GACf,EAAE,gBAAgB,2CAYlB"}
@@ -0,0 +1,16 @@
1
+ export interface InfoModalProps {
2
+ /** Whether the modal is currently open. The parent owns this state. */
3
+ open: boolean;
4
+ /** Heading shown at the top of the modal. */
5
+ title?: string;
6
+ /** Markdown body to render inside the modal. */
7
+ markdown: string;
8
+ /** Called when the user dismisses the modal (X, ESC, or backdrop). */
9
+ onClose: () => void;
10
+ }
11
+ /**
12
+ * Markdown modal dialog. Dismissed via the X button, ESC key, or backdrop click.
13
+ * Links in the body always open in a new tab.
14
+ */
15
+ export declare function InfoModal({ open, title, markdown, onClose, }: InfoModalProps): import("react/jsx-runtime").JSX.Element | null;
16
+ //# sourceMappingURL=InfoModal.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"InfoModal.d.ts","sourceRoot":"","sources":["../../../src/components/InfoControl/InfoModal.tsx"],"names":[],"mappings":"AAKA,MAAM,WAAW,cAAc;IAC7B,uEAAuE;IACvE,IAAI,EAAE,OAAO,CAAC;IACd,6CAA6C;IAC7C,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,gDAAgD;IAChD,QAAQ,EAAE,MAAM,CAAC;IACjB,sEAAsE;IACtE,OAAO,EAAE,MAAM,IAAI,CAAC;CACrB;AAyCD;;;GAGG;AACH,wBAAgB,SAAS,CAAC,EACxB,IAAI,EACJ,KAAwB,EACxB,QAAQ,EACR,OAAO,GACR,EAAE,cAAc,kDAoDhB"}
@@ -0,0 +1,5 @@
1
+ export { InfoControl } from './InfoControl';
2
+ export type { InfoControlProps } from './InfoControl';
3
+ export { InfoModal } from './InfoModal';
4
+ export type { InfoModalProps } from './InfoModal';
5
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/InfoControl/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,YAAY,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;AACtD,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,YAAY,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC"}