@overmap-ai/blocks 1.0.26 → 1.0.27-alpha.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.
@@ -1,6 +1,6 @@
1
1
  (function(global, factory) {
2
- typeof exports === "object" && typeof module !== "undefined" ? factory(exports, require("react/jsx-runtime"), require("@radix-ui/themes"), require("react"), require("react-responsive"), require("@radix-ui/react-icons"), require("@radix-ui/react-context-menu"), require("@radix-ui/react-dropdown-menu"), require("react-device-detect"), require("@radix-ui/react-dialog"), require("re-resizable"), require("react-transition-group"), require("react-dom"), require("@radix-ui/react-slot"), require("@radix-ui/react-dismissable-layer"), require("@radix-ui/react-toggle-group"), require("@radix-ui/react-toolbar"), require("@radix-ui/react-toast"), require("react-error-boundary"), require("feather-icons-react"), require("@table-library/react-table-library/table.js"), require("@table-library/react-table-library/theme.js"), require("@table-library/react-table-library/sort.js"), require("@table-library/react-table-library/select.js"), require("@table-library/react-table-library/pagination.js")) : typeof define === "function" && define.amd ? define(["exports", "react/jsx-runtime", "@radix-ui/themes", "react", "react-responsive", "@radix-ui/react-icons", "@radix-ui/react-context-menu", "@radix-ui/react-dropdown-menu", "react-device-detect", "@radix-ui/react-dialog", "re-resizable", "react-transition-group", "react-dom", "@radix-ui/react-slot", "@radix-ui/react-dismissable-layer", "@radix-ui/react-toggle-group", "@radix-ui/react-toolbar", "@radix-ui/react-toast", "react-error-boundary", "feather-icons-react", "@table-library/react-table-library/table.js", "@table-library/react-table-library/theme.js", "@table-library/react-table-library/sort.js", "@table-library/react-table-library/select.js", "@table-library/react-table-library/pagination.js"], factory) : (global = typeof globalThis !== "undefined" ? globalThis : global || self, factory(global.blocks = {}, global.jsxRuntime, global.themes, global.React, global.reactResponsive, global.reactIcons, global.RadixContextMenu, global.RadixDropdownMenu, global.reactDeviceDetect, global.RadixDialogPrimitive, global.reResizable, global.reactTransitionGroup, global.ReactDOM, global.reactSlot, global.reactDismissableLayer, global.reactToggleGroup, global.reactToolbar, global.RadixToast, global.reactErrorBoundary, global.FeatherIcon, global.table_js, global.theme_js, global.sort_js, global.select_js, global.pagination_js));
3
- })(this, function(exports2, jsxRuntime, themes, React, reactResponsive, reactIcons, RadixContextMenu, RadixDropdownMenu, reactDeviceDetect, RadixDialogPrimitive, reResizable, reactTransitionGroup, ReactDOM, reactSlot, reactDismissableLayer, reactToggleGroup, reactToolbar, RadixToast, reactErrorBoundary, FeatherIcon, table_js, theme_js, sort_js, select_js, pagination_js) {
2
+ typeof exports === "object" && typeof module !== "undefined" ? factory(exports, require("react/jsx-runtime"), require("@radix-ui/themes"), require("react"), require("react-responsive"), require("@react-hook/resize-observer"), require("@radix-ui/react-icons"), require("@radix-ui/react-dialog"), require("@radix-ui/react-context-menu"), require("@radix-ui/react-dropdown-menu"), require("@radix-ui/react-slot"), require("react-device-detect"), require("re-resizable"), require("react-transition-group"), require("react-dom"), require("@radix-ui/react-dismissable-layer"), require("@radix-ui/react-toggle-group"), require("@radix-ui/react-toolbar"), require("@radix-ui/react-toast"), require("@radix-ui/react-toggle"), require("react-error-boundary"), require("feather-icons-react"), require("@table-library/react-table-library/table.js"), require("@table-library/react-table-library/theme.js"), require("@table-library/react-table-library/sort.js"), require("@table-library/react-table-library/select.js"), require("@table-library/react-table-library/pagination.js")) : typeof define === "function" && define.amd ? define(["exports", "react/jsx-runtime", "@radix-ui/themes", "react", "react-responsive", "@react-hook/resize-observer", "@radix-ui/react-icons", "@radix-ui/react-dialog", "@radix-ui/react-context-menu", "@radix-ui/react-dropdown-menu", "@radix-ui/react-slot", "react-device-detect", "re-resizable", "react-transition-group", "react-dom", "@radix-ui/react-dismissable-layer", "@radix-ui/react-toggle-group", "@radix-ui/react-toolbar", "@radix-ui/react-toast", "@radix-ui/react-toggle", "react-error-boundary", "feather-icons-react", "@table-library/react-table-library/table.js", "@table-library/react-table-library/theme.js", "@table-library/react-table-library/sort.js", "@table-library/react-table-library/select.js", "@table-library/react-table-library/pagination.js"], factory) : (global = typeof globalThis !== "undefined" ? globalThis : global || self, factory(global.blocks = {}, global.jsxRuntime, global.themes, global.React, global.reactResponsive, global.useResizeObserver, global.reactIcons, global.RadixDialogPrimitive, global.RadixContextMenu, global.RadixDropdownMenu, global.reactSlot, global.reactDeviceDetect, global.reResizable, global.reactTransitionGroup, global.ReactDOM, global.reactDismissableLayer, global.reactToggleGroup, global.reactToolbar, global.RadixToast, global.Toggle, global.reactErrorBoundary, global.FeatherIcon, global.table_js, global.theme_js, global.sort_js, global.select_js, global.pagination_js));
3
+ })(this, function(exports2, jsxRuntime, themes, React, reactResponsive, useResizeObserver, reactIcons, RadixDialogPrimitive, RadixContextMenu, RadixDropdownMenu, reactSlot, reactDeviceDetect, reResizable, reactTransitionGroup, ReactDOM, reactDismissableLayer, reactToggleGroup, reactToolbar, RadixToast, Toggle, reactErrorBoundary, FeatherIcon, table_js, theme_js, sort_js, select_js, pagination_js) {
4
4
  "use strict";
5
5
  function _interopNamespaceDefault(e) {
6
6
  const n = Object.create(null, { [Symbol.toStringTag]: { value: "Module" } });
@@ -18,10 +18,11 @@
18
18
  n.default = e;
19
19
  return Object.freeze(n);
20
20
  }
21
+ const RadixDialogPrimitive__namespace = /* @__PURE__ */ _interopNamespaceDefault(RadixDialogPrimitive);
21
22
  const RadixContextMenu__namespace = /* @__PURE__ */ _interopNamespaceDefault(RadixContextMenu);
22
23
  const RadixDropdownMenu__namespace = /* @__PURE__ */ _interopNamespaceDefault(RadixDropdownMenu);
23
- const RadixDialogPrimitive__namespace = /* @__PURE__ */ _interopNamespaceDefault(RadixDialogPrimitive);
24
24
  const RadixToast__namespace = /* @__PURE__ */ _interopNamespaceDefault(RadixToast);
25
+ const Toggle__namespace = /* @__PURE__ */ _interopNamespaceDefault(Toggle);
25
26
  function getDefaultExportFromCjs(x) {
26
27
  return x && x.__esModule && Object.prototype.hasOwnProperty.call(x, "default") ? x["default"] : x;
27
28
  }
@@ -189,12 +190,38 @@
189
190
  }, [filterFunction, filterValue, values]);
190
191
  return [filteredOptions, filterValue, setFilterValue];
191
192
  }
193
+ const useSize = (target) => {
194
+ const [size, setSize] = React.useState();
195
+ React.useLayoutEffect(() => {
196
+ var _a;
197
+ setSize((_a = target.current) == null ? void 0 : _a.getBoundingClientRect());
198
+ }, [target]);
199
+ const handleResize = React.useCallback((entry) => {
200
+ const rect = entry.contentRect;
201
+ setSize(rect);
202
+ }, []);
203
+ useResizeObserver(target, handleResize);
204
+ return size;
205
+ };
192
206
  const splitTextForEllipsisAndExpansion = (text, numChars) => {
193
207
  const indexOfSpace = text.indexOf(" ", numChars);
194
208
  const firstLine = indexOfSpace === -1 ? text : text.substring(0, indexOfSpace);
195
209
  const secondLine = indexOfSpace === -1 ? "" : text.substring(indexOfSpace);
196
210
  return [firstLine, secondLine];
197
211
  };
212
+ function useOvermapResponsiveValue(value) {
213
+ const { size } = useViewportSize();
214
+ if (value === null || value === void 0)
215
+ return value;
216
+ if (typeof value === "object") {
217
+ if (!("initial" in value)) {
218
+ throw new Error("Expected initial property to be set in Responsive object");
219
+ } else {
220
+ return value[size];
221
+ }
222
+ }
223
+ return value;
224
+ }
198
225
  const _Badge = React.forwardRef(function Badge2({ className, severity = "primary", color, children, ...rest }, ref) {
199
226
  const severityColor = useSeverityColor(severity);
200
227
  return /* @__PURE__ */ jsxRuntime.jsx(
@@ -212,7 +239,7 @@
212
239
  const zeroMinWidth = "_zeroMinWidth_curjh_1";
213
240
  const zeroMinHeight = "_zeroMinHeight_curjh_5";
214
241
  const radius = "_radius_curjh_9";
215
- const styles$n = {
242
+ const styles$p = {
216
243
  zeroMinWidth,
217
244
  zeroMinHeight,
218
245
  radius
@@ -224,9 +251,9 @@
224
251
  themes.Flex,
225
252
  {
226
253
  className: classNames(className, {
227
- [styles$n.radius]: radius2,
228
- [styles$n.zeroMinWidth]: zeroMinWidth2,
229
- [styles$n.zeroMinHeight]: zeroMinHeight2
254
+ [styles$p.radius]: radius2,
255
+ [styles$p.zeroMinWidth]: zeroMinWidth2,
256
+ [styles$p.zeroMinHeight]: zeroMinHeight2
230
257
  }),
231
258
  ref,
232
259
  ...rest,
@@ -279,16 +306,16 @@
279
306
  const hoverSpin90Clockwise = "_hoverSpin90Clockwise_r73gr_15";
280
307
  const hoverSpin180Clockwise = "_hoverSpin180Clockwise_r73gr_25";
281
308
  const hoverSpin360Clockwise = "_hoverSpin360Clockwise_r73gr_35";
282
- const styles$m = {
309
+ const styles$o = {
283
310
  fluid: fluid$1,
284
311
  hoverSpin90Clockwise,
285
312
  hoverSpin180Clockwise,
286
313
  hoverSpin360Clockwise
287
314
  };
288
315
  const hoverEffectClassNameMapping = {
289
- spin90Clockwise: styles$m.hoverSpin90Clockwise,
290
- spin180Clockwise: styles$m.hoverSpin180Clockwise,
291
- spin360Clockwise: styles$m.hoverSpin360Clockwise
316
+ spin90Clockwise: styles$o.hoverSpin90Clockwise,
317
+ spin180Clockwise: styles$o.hoverSpin180Clockwise,
318
+ spin360Clockwise: styles$o.hoverSpin360Clockwise
292
319
  };
293
320
  const clickOnEnterOrSpace = (e) => {
294
321
  if (e.key === "Enter" || e.key === " ") {
@@ -309,12 +336,12 @@
309
336
  const useButtonGroupContext = () => React.useContext(ButtonGroupContext);
310
337
  const spinner = "_spinner_isifr_9";
311
338
  const spin = "_spin_isifr_9";
312
- const styles$l = {
339
+ const styles$n = {
313
340
  spinner,
314
341
  spin
315
342
  };
316
343
  const Spinner = React.memo(() => {
317
- return /* @__PURE__ */ jsxRuntime.jsx("div", { className: styles$l.spinner });
344
+ return /* @__PURE__ */ jsxRuntime.jsx("div", { className: styles$n.spinner });
318
345
  });
319
346
  Spinner.displayName = "Spinner";
320
347
  const _Button$1 = React.forwardRef(function Button(props, ref) {
@@ -350,7 +377,7 @@
350
377
  ref,
351
378
  type,
352
379
  className: classNames(className, hoverEffectClasses, {
353
- [styles$m.fluid]: fluid2
380
+ [styles$o.fluid]: fluid2
354
381
  }),
355
382
  color,
356
383
  size: useResponsiveMapping(size, SizeMapping),
@@ -392,7 +419,7 @@
392
419
  themes.IconButton,
393
420
  {
394
421
  className: classNames(className, hoverEffectClasses, {
395
- [styles$m.fluid]: fluid2
422
+ [styles$o.fluid]: fluid2
396
423
  }),
397
424
  ref,
398
425
  color,
@@ -407,7 +434,7 @@
407
434
  });
408
435
  const IconButton = React.memo(_Button);
409
436
  const merged = "_merged_wdgxo_1";
410
- const styles$k = {
437
+ const styles$m = {
411
438
  merged
412
439
  };
413
440
  const GhostVariantSizeToGapMapping = {
@@ -434,7 +461,7 @@
434
461
  themes.Flex,
435
462
  {
436
463
  className: classNames("overmap-button-group", className, {
437
- [styles$k.merged]: merged2
464
+ [styles$m.merged]: merged2
438
465
  }),
439
466
  ref,
440
467
  gap: merged2 ? gap ?? mergedAutoGap : gap ?? "2",
@@ -447,7 +474,7 @@
447
474
  });
448
475
  const ButtonGroup = React.memo(_ButtonGroup);
449
476
  const separators = "_separators_1f7v1_1";
450
- const styles$j = {
477
+ const styles$l = {
451
478
  separators
452
479
  };
453
480
  const ButtonListBorder = React.memo(
@@ -478,7 +505,7 @@
478
505
  size,
479
506
  severity: "info",
480
507
  variant: buttonVariant,
481
- className: classNames(className, styles$j.separators),
508
+ className: classNames(className, styles$l.separators),
482
509
  merged: true,
483
510
  gap: "0",
484
511
  direction: "column",
@@ -660,11 +687,96 @@
660
687
  [openAlertDialog]
661
688
  );
662
689
  };
690
+ const OverlayContent = "_OverlayContent_1nr9w_1";
691
+ const OverlayOverlay = "_OverlayOverlay_1nr9w_6";
692
+ const styles$k = {
693
+ OverlayContent,
694
+ OverlayOverlay
695
+ };
696
+ const Overlay$2 = React.memo(
697
+ React.forwardRef((props, ref) => {
698
+ const {
699
+ children,
700
+ defaultOpen = false,
701
+ onInterruptClose,
702
+ content,
703
+ onClose,
704
+ open: controlledOpen,
705
+ onOpenChange: controlledOpenChange,
706
+ className,
707
+ style,
708
+ overlay: overlay2 = false,
709
+ overlayClass,
710
+ overlayStyle
711
+ } = props;
712
+ const [uncontrolledOpen, setUncontrolledOpen] = React.useState(defaultOpen ?? false);
713
+ const open = React.useMemo(
714
+ () => controlledOpen !== void 0 ? controlledOpen : uncontrolledOpen,
715
+ [controlledOpen, uncontrolledOpen]
716
+ );
717
+ const handleOpenChange = React.useCallback(
718
+ (nextOpen) => {
719
+ if (controlledOpenChange) {
720
+ controlledOpenChange(nextOpen);
721
+ } else if (!nextOpen && onInterruptClose) {
722
+ const closeInner = () => {
723
+ setUncontrolledOpen(false);
724
+ if (onClose)
725
+ onClose();
726
+ };
727
+ onInterruptClose(closeInner);
728
+ } else if (!nextOpen) {
729
+ setUncontrolledOpen(false);
730
+ if (onClose)
731
+ onClose();
732
+ } else {
733
+ setUncontrolledOpen(nextOpen);
734
+ }
735
+ },
736
+ [controlledOpenChange, onClose, onInterruptClose]
737
+ );
738
+ const close = React.useCallback(
739
+ (closeOptions) => {
740
+ if (closeOptions == null ? void 0 : closeOptions.force) {
741
+ setUncontrolledOpen(false);
742
+ } else {
743
+ handleOpenChange(false);
744
+ }
745
+ },
746
+ [handleOpenChange]
747
+ );
748
+ return /* @__PURE__ */ jsxRuntime.jsxs(RadixDialogPrimitive__namespace.Root, { open, onOpenChange: handleOpenChange, modal: overlay2, children: [
749
+ children !== void 0 && /* @__PURE__ */ jsxRuntime.jsx(RadixDialogPrimitive__namespace.Trigger, { children }),
750
+ /* @__PURE__ */ jsxRuntime.jsx(RadixDialogPrimitive__namespace.Portal, { children: /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
751
+ overlay2 && /* @__PURE__ */ jsxRuntime.jsx(themes.Theme, { asChild: true, children: /* @__PURE__ */ jsxRuntime.jsx(
752
+ RadixDialogPrimitive__namespace.Overlay,
753
+ {
754
+ className: classNames(
755
+ "overmap-overlay-overlay",
756
+ styles$k.OverlayOverlay,
757
+ overlayClass
758
+ ),
759
+ style: overlayStyle
760
+ }
761
+ ) }),
762
+ /* @__PURE__ */ jsxRuntime.jsx(themes.Theme, { asChild: true, children: /* @__PURE__ */ jsxRuntime.jsx(
763
+ RadixDialogPrimitive__namespace.Content,
764
+ {
765
+ className: classNames("overmap-overlay-content", styles$k.OverlayContent, className),
766
+ style,
767
+ ref,
768
+ children: content(close)
769
+ }
770
+ ) })
771
+ ] }) })
772
+ ] });
773
+ })
774
+ );
663
775
  const BaseMenuItem$1 = "_BaseMenuItem_5r3et_1";
664
776
  const RemoveOutline = "_RemoveOutline_5r3et_15";
665
777
  const BaseMenuSeparator$1 = "_BaseMenuSeparator_5r3et_19";
666
778
  const BaseMenuInput$1 = "_BaseMenuInput_5r3et_27";
667
- const styles$i = {
779
+ const styles$j = {
668
780
  BaseMenuItem: BaseMenuItem$1,
669
781
  RemoveOutline,
670
782
  BaseMenuSeparator: BaseMenuSeparator$1,
@@ -675,7 +787,7 @@
675
787
  return /* @__PURE__ */ jsxRuntime.jsx(
676
788
  themes.Box,
677
789
  {
678
- className: classNames(styles$i.BaseMenuItem, className),
790
+ className: classNames(styles$j.BaseMenuItem, className),
679
791
  ref,
680
792
  position: "relative",
681
793
  px: "2",
@@ -691,11 +803,11 @@
691
803
  );
692
804
  const BaseMenuInput = React.memo(
693
805
  React.forwardRef((props) => {
694
- return /* @__PURE__ */ jsxRuntime.jsx(themes.Box, { className: styles$i.BaseMenuInput, px: "2", height: "6", width: "max-content", children: /* @__PURE__ */ jsxRuntime.jsx(Input, { ...props, variant: "ghost" }) });
806
+ return /* @__PURE__ */ jsxRuntime.jsx(themes.Box, { className: styles$j.BaseMenuInput, px: "2", height: "6", width: "max-content", children: /* @__PURE__ */ jsxRuntime.jsx(Input, { ...props, variant: "ghost" }) });
695
807
  })
696
808
  );
697
809
  const BaseMenuSeparator = React.memo(function BaseMenuSeparator2() {
698
- return /* @__PURE__ */ jsxRuntime.jsx(themes.Box, { className: styles$i.BaseMenuSeparator, width: "100%", py: "1", children: /* @__PURE__ */ jsxRuntime.jsx(themes.Box, { height: "0", width: "100%" }) });
810
+ return /* @__PURE__ */ jsxRuntime.jsx(themes.Box, { className: styles$j.BaseMenuSeparator, width: "100%", py: "1", children: /* @__PURE__ */ jsxRuntime.jsx(themes.Box, { height: "0", width: "100%" }) });
699
811
  });
700
812
  const useCloseOnSelectHandler = (closeOnSelect) => {
701
813
  return React.useCallback(
@@ -758,7 +870,7 @@
758
870
  const itemContent = /* @__PURE__ */ jsxRuntime.jsx(
759
871
  ItemElement,
760
872
  {
761
- className: classNames(className, styles$i.RemoveOutline),
873
+ className: classNames(className, styles$j.RemoveOutline),
762
874
  onSelect: closeOnSelectHandler(onSelect),
763
875
  textValue: "",
764
876
  asChild: true,
@@ -821,7 +933,7 @@
821
933
  items.map(({ content, value: itemValue, onSelect, ...rest }, index) => /* @__PURE__ */ jsxRuntime.jsx(
822
934
  ItemElement,
823
935
  {
824
- className: styles$i.RemoveOutline,
936
+ className: styles$j.RemoveOutline,
825
937
  checked: itemValue === value,
826
938
  onCheckedChange: handleCheckedChange(itemValue),
827
939
  onSelect: closeOnSelectHandler(onSelect),
@@ -900,7 +1012,7 @@
900
1012
  items.map(({ value, content, className, onSelect, ...rest }, index) => /* @__PURE__ */ jsxRuntime.jsx(
901
1013
  ItemElement,
902
1014
  {
903
- className: classNames(className, styles$i.RemoveOutline),
1015
+ className: classNames(className, styles$j.RemoveOutline),
904
1016
  onSelect: closeOnSelectHandler(onSelect),
905
1017
  onCheckedChange: handleCheckedChange(value),
906
1018
  checked: values.includes(value),
@@ -932,7 +1044,7 @@
932
1044
  }) {
933
1045
  return /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
934
1046
  /* @__PURE__ */ jsxRuntime.jsx(GroupElement, { ...rest, children: items.map(({ triggerIndicator, content, subContent, className, ...rest2 }, index) => /* @__PURE__ */ jsxRuntime.jsxs(SubElement, { children: [
935
- /* @__PURE__ */ jsxRuntime.jsx(SubTriggerElement, { className: classNames(className, styles$i.RemoveOutline), asChild: true, ...rest2, children: /* @__PURE__ */ jsxRuntime.jsx(BaseMenuItem, { rightSlot: triggerIndicator, children: content }) }),
1047
+ /* @__PURE__ */ jsxRuntime.jsx(SubTriggerElement, { className: classNames(className, styles$j.RemoveOutline), asChild: true, ...rest2, children: /* @__PURE__ */ jsxRuntime.jsx(BaseMenuItem, { rightSlot: triggerIndicator, children: content }) }),
936
1048
  /* @__PURE__ */ jsxRuntime.jsx(SubContentElement, { sideOffset: 10, children: subContent })
937
1049
  ] }, index)) }),
938
1050
  separator && /* @__PURE__ */ jsxRuntime.jsx(BaseMenuSeparator, {})
@@ -980,11 +1092,20 @@
980
1092
  });
981
1093
  SubItemGroup.displayName = "SubItemGroup";
982
1094
  const Root$2 = React.memo((props) => {
983
- const { disabled: disabled2 = false, children, modal = false, content, ...rest } = props;
1095
+ const { disabled: disabled2 = false, children, modal = false, content, className, ...rest } = props;
984
1096
  const infoColor = useSeverityColor("info");
985
1097
  return /* @__PURE__ */ jsxRuntime.jsxs(themes.ContextMenu.Root, { modal, children: [
986
1098
  /* @__PURE__ */ jsxRuntime.jsx(themes.ContextMenu.Trigger, { disabled: disabled2, children }),
987
- /* @__PURE__ */ jsxRuntime.jsx(themes.ContextMenu.Content, { variant: "soft", color: infoColor, ...rest, children: content })
1099
+ /* @__PURE__ */ jsxRuntime.jsx(
1100
+ themes.ContextMenu.Content,
1101
+ {
1102
+ className: classNames("overmap-context-menu", className),
1103
+ variant: "soft",
1104
+ color: infoColor,
1105
+ ...rest,
1106
+ children: content
1107
+ }
1108
+ )
988
1109
  ] });
989
1110
  });
990
1111
  Root$2.displayName = "ContextMenuRoot";
@@ -1218,6 +1339,20 @@
1218
1339
  }
1219
1340
  )
1220
1341
  );
1342
+ const DownloadButtonUtility = React.memo((props) => {
1343
+ const { children, file } = props;
1344
+ const anchorRef = React.useRef(null);
1345
+ const objectURL = React.useMemo(() => URL.createObjectURL(file), [file]);
1346
+ const handleClick = React.useCallback(() => {
1347
+ if (anchorRef.current)
1348
+ anchorRef.current.click();
1349
+ }, []);
1350
+ return /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
1351
+ /* @__PURE__ */ jsxRuntime.jsx(reactSlot.Slot, { onClick: handleClick, children }),
1352
+ /* @__PURE__ */ jsxRuntime.jsx("a", { style: { display: "none" }, href: objectURL, target: "_blank", rel: "noreferrer", ref: anchorRef })
1353
+ ] });
1354
+ });
1355
+ DownloadButtonUtility.displayName = "DownloadButtonUtility";
1221
1356
  const HoverUtility = React.memo(function Root2({ children }) {
1222
1357
  const [isHovered, setIsHovered] = React.useState(reactDeviceDetect.isMobile);
1223
1358
  const handlePointerEnter = React.useCallback(() => {
@@ -1233,7 +1368,7 @@
1233
1368
  });
1234
1369
  });
1235
1370
  const fluid = "_fluid_7n1wr_1";
1236
- const styles$h = {
1371
+ const styles$i = {
1237
1372
  fluid
1238
1373
  };
1239
1374
  const _Select = React.forwardRef(function Select2({
@@ -1257,7 +1392,7 @@
1257
1392
  themes.Select.Trigger,
1258
1393
  {
1259
1394
  className: classNames(className, {
1260
- [styles$h.fluid]: fluid2
1395
+ [styles$i.fluid]: fluid2
1261
1396
  }),
1262
1397
  id,
1263
1398
  ref,
@@ -1269,7 +1404,7 @@
1269
1404
  themes.Select.Content,
1270
1405
  {
1271
1406
  side,
1272
- className: styles$h.contentDefault,
1407
+ className: styles$i.contentDefault,
1273
1408
  position: "popper",
1274
1409
  variant: variant !== "surface" ? "soft" : "solid",
1275
1410
  color: itemSeverityColor,
@@ -1382,7 +1517,7 @@
1382
1517
  );
1383
1518
  })
1384
1519
  );
1385
- const styles$g = {
1520
+ const styles$h = {
1386
1521
  "default": "_default_u936h_1"
1387
1522
  };
1388
1523
  const _Switch = React.forwardRef(function Switch2({ className, severity = "primary", icon, defaultChecked = false, onCheckedChange, ...rest }, ref) {
@@ -1410,7 +1545,7 @@
1410
1545
  /* @__PURE__ */ jsxRuntime.jsx(
1411
1546
  themes.Switch,
1412
1547
  {
1413
- className: classNames("overmap-switch", className, styles$g.default),
1548
+ className: classNames("overmap-switch", className, styles$h.default),
1414
1549
  ref: ref ? ref : fallbackRef,
1415
1550
  color: severityColor,
1416
1551
  radius: "full",
@@ -1428,7 +1563,7 @@
1428
1563
  const resizeHandle$1 = "_resizeHandle_1onyo_10";
1429
1564
  const left$1 = "_left_1onyo_13";
1430
1565
  const overlay = "_overlay_1onyo_33";
1431
- const styles$f = {
1566
+ const styles$g = {
1432
1567
  sidebarContent,
1433
1568
  right: right$1,
1434
1569
  resizeHandle: resizeHandle$1,
@@ -1461,13 +1596,13 @@
1461
1596
  setContainer(tempContainer);
1462
1597
  }, [containerSelector]);
1463
1598
  return /* @__PURE__ */ jsxRuntime.jsx(RadixDialogPrimitive__namespace.Root, { open, modal, children: /* @__PURE__ */ jsxRuntime.jsxs(RadixDialogPrimitive__namespace.Portal, { container, children: [
1464
- overlay2 && /* @__PURE__ */ jsxRuntime.jsx(RadixDialogPrimitive__namespace.Overlay, { className: classNames(styles$f.overlay) }),
1599
+ overlay2 && /* @__PURE__ */ jsxRuntime.jsx(RadixDialogPrimitive__namespace.Overlay, { className: classNames(styles$g.overlay) }),
1465
1600
  /* @__PURE__ */ jsxRuntime.jsx(
1466
1601
  RadixDialogPrimitive__namespace.Content,
1467
1602
  {
1468
- className: classNames("overmap-sidebar", "rt-DialogContent", styles$f.sidebarContent, {
1469
- [styles$f.left]: isLeft,
1470
- [styles$f.right]: isRight
1603
+ className: classNames("overmap-sidebar", "rt-DialogContent", styles$g.sidebarContent, {
1604
+ [styles$g.left]: isLeft,
1605
+ [styles$g.right]: isRight
1471
1606
  }),
1472
1607
  ref,
1473
1608
  asChild: true,
@@ -1479,7 +1614,7 @@
1479
1614
  maxWidth,
1480
1615
  defaultSize: defaultSidebarSize,
1481
1616
  enable: { right: resizable2 && isLeft, left: resizable2 && isRight },
1482
- handleClasses: { left: styles$f.resizeHandle, right: styles$f.resizeHandle },
1617
+ handleClasses: { left: styles$g.resizeHandle, right: styles$g.resizeHandle },
1483
1618
  handleComponent: {
1484
1619
  right: /* @__PURE__ */ jsxRuntime.jsx(reactIcons.DragHandleDots2Icon, {}),
1485
1620
  left: /* @__PURE__ */ jsxRuntime.jsx(reactIcons.DragHandleDots2Icon, {})
@@ -1622,7 +1757,7 @@
1622
1757
  const ExitActiveLeft$1 = "_ExitActiveLeft_1jwyv_46";
1623
1758
  const ExitDoneLeft$1 = "_ExitDoneLeft_1jwyv_51";
1624
1759
  const Overlay$1 = "_Overlay_1jwyv_56";
1625
- const styles$e = {
1760
+ const styles$f = {
1626
1761
  EnterRight: EnterRight$1,
1627
1762
  EnterActiveRight: EnterActiveRight$1,
1628
1763
  EnterDoneRight: EnterDoneRight$1,
@@ -1698,12 +1833,12 @@
1698
1833
  const { onPointerDownCapture: handlePointerDownCapture } = usePointerDownOutside(handleDismiss, parentContainer);
1699
1834
  const CSSTransitionClassNames = React.useMemo(
1700
1835
  () => ({
1701
- enter: isLeft ? styles$e.EnterLeft : styles$e.EnterRight,
1702
- enterActive: isLeft ? styles$e.EnterActiveLeft : styles$e.EnterActiveRight,
1703
- enterDone: isLeft ? styles$e.EnterDoneLeft : styles$e.EnterDoneRight,
1704
- exit: isLeft ? styles$e.ExitLeft : styles$e.ExitRight,
1705
- exitActive: isLeft ? styles$e.ExitActiveLeft : styles$e.ExitActiveRight,
1706
- exitDone: isLeft ? styles$e.ExitDoneLeft : styles$e.ExitDoneRight
1836
+ enter: isLeft ? styles$f.EnterLeft : styles$f.EnterRight,
1837
+ enterActive: isLeft ? styles$f.EnterActiveLeft : styles$f.EnterActiveRight,
1838
+ enterDone: isLeft ? styles$f.EnterDoneLeft : styles$f.EnterDoneRight,
1839
+ exit: isLeft ? styles$f.ExitLeft : styles$f.ExitRight,
1840
+ exitActive: isLeft ? styles$f.ExitActiveLeft : styles$f.ExitActiveRight,
1841
+ exitDone: isLeft ? styles$f.ExitDoneLeft : styles$f.ExitDoneRight
1707
1842
  }),
1708
1843
  [isLeft]
1709
1844
  );
@@ -1934,7 +2069,7 @@
1934
2069
  const ExitActiveLeft = "_ExitActiveLeft_1jwyv_46";
1935
2070
  const ExitDoneLeft = "_ExitDoneLeft_1jwyv_51";
1936
2071
  const Overlay = "_Overlay_1jwyv_56";
1937
- const styles$d = {
2072
+ const styles$e = {
1938
2073
  EnterRight,
1939
2074
  EnterActiveRight,
1940
2075
  EnterDoneRight,
@@ -1989,12 +2124,12 @@
1989
2124
  }, [initialWidth]);
1990
2125
  const CSSTransitionClassNames = React.useMemo(
1991
2126
  () => ({
1992
- enter: isLeft ? styles$d.EnterLeft : styles$d.EnterRight,
1993
- enterActive: isLeft ? styles$d.EnterActiveLeft : styles$d.EnterActiveRight,
1994
- enterDone: isLeft ? styles$d.EnterDoneLeft : styles$d.EnterDoneRight,
1995
- exit: isLeft ? styles$d.ExitLeft : styles$d.ExitRight,
1996
- exitActive: isLeft ? styles$d.ExitActiveLeft : styles$d.ExitActiveRight,
1997
- exitDone: isLeft ? styles$d.ExitDoneLeft : styles$d.ExitDoneRight
2127
+ enter: isLeft ? styles$e.EnterLeft : styles$e.EnterRight,
2128
+ enterActive: isLeft ? styles$e.EnterActiveLeft : styles$e.EnterActiveRight,
2129
+ enterDone: isLeft ? styles$e.EnterDoneLeft : styles$e.EnterDoneRight,
2130
+ exit: isLeft ? styles$e.ExitLeft : styles$e.ExitRight,
2131
+ exitActive: isLeft ? styles$e.ExitActiveLeft : styles$e.ExitActiveRight,
2132
+ exitDone: isLeft ? styles$e.ExitDoneLeft : styles$e.ExitDoneRight
1998
2133
  }),
1999
2134
  [isLeft]
2000
2135
  );
@@ -2077,7 +2212,7 @@
2077
2212
  const noRightIcon = "_noRightIcon_1octa_18";
2078
2213
  const ghost$1 = "_ghost_1octa_22";
2079
2214
  const charCount$1 = "_charCount_1octa_40";
2080
- const styles$c = {
2215
+ const styles$d = {
2081
2216
  accommodateCharCount,
2082
2217
  wrapper: wrapper$2,
2083
2218
  "default": "_default_1octa_10",
@@ -2104,9 +2239,9 @@
2104
2239
  return /* @__PURE__ */ jsxRuntime.jsxs(
2105
2240
  themes.TextField.Root,
2106
2241
  {
2107
- className: classNames(styles$c.wrapper, className, {
2108
- [styles$c.ghost]: variant === "ghost",
2109
- [styles$c.accommodateCharCount]: displayInputLength
2242
+ className: classNames(styles$d.wrapper, className, {
2243
+ [styles$d.ghost]: variant === "ghost",
2244
+ [styles$d.accommodateCharCount]: displayInputLength
2110
2245
  }),
2111
2246
  size: computedSize,
2112
2247
  variant: variant !== "ghost" ? variant : void 0,
@@ -2116,9 +2251,9 @@
2116
2251
  /* @__PURE__ */ jsxRuntime.jsx(
2117
2252
  themes.TextField.Input,
2118
2253
  {
2119
- className: classNames(styles$c.default, {
2120
- [styles$c.noLeftIcon]: !leftSlot,
2121
- [styles$c.noRightIcon]: !rightSlot
2254
+ className: classNames(styles$d.default, {
2255
+ [styles$d.noLeftIcon]: !leftSlot,
2256
+ [styles$d.noRightIcon]: !rightSlot
2122
2257
  }),
2123
2258
  ref,
2124
2259
  value,
@@ -2129,7 +2264,7 @@
2129
2264
  }
2130
2265
  ),
2131
2266
  rightSlot && /* @__PURE__ */ jsxRuntime.jsx(themes.TextField.Slot, { children: rightSlot }),
2132
- displayInputLength && /* @__PURE__ */ jsxRuntime.jsx(themes.Text, { as: "p", className: styles$c.charCount, size: "1", color: "gray", children: rest.maxLength !== void 0 ? `${valueAsString == null ? void 0 : valueAsString.length}/${rest.maxLength}` : `${valueAsString == null ? void 0 : valueAsString.length}` })
2267
+ displayInputLength && /* @__PURE__ */ jsxRuntime.jsx(themes.Text, { as: "p", className: styles$d.charCount, size: "1", color: "gray", children: rest.maxLength !== void 0 ? `${valueAsString == null ? void 0 : valueAsString.length}/${rest.maxLength}` : `${valueAsString == null ? void 0 : valueAsString.length}` })
2133
2268
  ]
2134
2269
  }
2135
2270
  );
@@ -2153,7 +2288,7 @@
2153
2288
  return React.cloneElement(children, { ...childProps });
2154
2289
  });
2155
2290
  const wrapper$1 = "_wrapper_tmtz0_1";
2156
- const styles$b = {
2291
+ const styles$c = {
2157
2292
  wrapper: wrapper$1
2158
2293
  };
2159
2294
  const _Popover = React.forwardRef(function Popover2({ className, trigger, open, onOpenChange, defaultOpen = false, modal = false, children, ...rest }, ref) {
@@ -2163,7 +2298,7 @@
2163
2298
  themes.Popover.Content,
2164
2299
  {
2165
2300
  ref,
2166
- className: classNames("overmap-popover", className, styles$b.wrapper),
2301
+ className: classNames("overmap-popover", className, styles$c.wrapper),
2167
2302
  ...rest,
2168
2303
  children: children(themes.Popover.Close)
2169
2304
  }
@@ -2178,7 +2313,7 @@
2178
2313
  const resizable = "_resizable_1ssf2_23";
2179
2314
  const resizeHandle = "_resizeHandle_1ssf2_28";
2180
2315
  const panelMainContent = "_panelMainContent_1ssf2_48";
2181
- const styles$a = {
2316
+ const styles$b = {
2182
2317
  wrapper,
2183
2318
  panelContent,
2184
2319
  left,
@@ -2364,7 +2499,7 @@
2364
2499
  return /* @__PURE__ */ jsxRuntime.jsxs(
2365
2500
  themes.Flex,
2366
2501
  {
2367
- className: styles$a.wrapper,
2502
+ className: styles$b.wrapper,
2368
2503
  style: { minWidth: `${leftMinWidth + rightMinWidth}px` },
2369
2504
  ref: wrapperRef,
2370
2505
  width: "100%",
@@ -2386,7 +2521,7 @@
2386
2521
  themes.Box,
2387
2522
  {
2388
2523
  ref: leftPanelRef,
2389
- className: classNames(styles$a.panelContent, styles$a.left),
2524
+ className: classNames(styles$b.panelContent, styles$b.left),
2390
2525
  style: leftPanelTransitionStyles[state],
2391
2526
  width: "auto",
2392
2527
  height: "100%",
@@ -2395,7 +2530,7 @@
2395
2530
  children: /* @__PURE__ */ jsxRuntime.jsx(
2396
2531
  reResizable.Resizable,
2397
2532
  {
2398
- className: styles$a.resizable,
2533
+ className: styles$b.resizable,
2399
2534
  size: {
2400
2535
  width: leftPanelWidth,
2401
2536
  height: "100%"
@@ -2404,7 +2539,7 @@
2404
2539
  enable: { right: (resizeable == null ? void 0 : resizeable.left) !== void 0 ? resizeable.left : true },
2405
2540
  minWidth: leftMinWidth,
2406
2541
  maxWidth: leftPanelMaxWidth,
2407
- handleClasses: { right: classNames(styles$a.resizeHandle, styles$a.left) },
2542
+ handleClasses: { right: classNames(styles$b.resizeHandle, styles$b.left) },
2408
2543
  handleComponent: {
2409
2544
  right: /* @__PURE__ */ jsxRuntime.jsx(reactIcons.DragHandleDots2Icon, { height: "14px", width: "14px" })
2410
2545
  },
@@ -2415,7 +2550,7 @@
2415
2550
  )
2416
2551
  }
2417
2552
  ),
2418
- /* @__PURE__ */ jsxRuntime.jsx("div", { className: styles$a.panelMainContent, children }),
2553
+ /* @__PURE__ */ jsxRuntime.jsx("div", { className: styles$b.panelMainContent, children }),
2419
2554
  /* @__PURE__ */ jsxRuntime.jsx(
2420
2555
  reactTransitionGroup.Transition,
2421
2556
  {
@@ -2429,7 +2564,7 @@
2429
2564
  themes.Box,
2430
2565
  {
2431
2566
  ref: rightPanelRef,
2432
- className: classNames(styles$a.panelContent, styles$a.right),
2567
+ className: classNames(styles$b.panelContent, styles$b.right),
2433
2568
  style: rightPanelTransitionStyles[state],
2434
2569
  width: "auto",
2435
2570
  height: "100%",
@@ -2438,13 +2573,13 @@
2438
2573
  children: /* @__PURE__ */ jsxRuntime.jsx(
2439
2574
  reResizable.Resizable,
2440
2575
  {
2441
- className: styles$a.resizable,
2576
+ className: styles$b.resizable,
2442
2577
  size: { width: rightPanelWidth, height: "100%" },
2443
2578
  onResizeStop: handleResizeRightPanel,
2444
2579
  enable: { left: (resizeable == null ? void 0 : resizeable.right) !== void 0 ? resizeable.right : true },
2445
2580
  minWidth: rightMinWidth,
2446
2581
  maxWidth: rightPanelMaxWidth,
2447
- handleClasses: { left: classNames(styles$a.resizeHandle, styles$a.right) },
2582
+ handleClasses: { left: classNames(styles$b.resizeHandle, styles$b.right) },
2448
2583
  handleComponent: { left: /* @__PURE__ */ jsxRuntime.jsx(reactIcons.DragHandleDots2Icon, { height: "14px", width: "14px" }) },
2449
2584
  children: rightPanel
2450
2585
  }
@@ -2462,7 +2597,7 @@
2462
2597
  const buttonContainer = "_buttonContainer_16xvh_16";
2463
2598
  const optionsButtonContainer = "_optionsButtonContainer_16xvh_21";
2464
2599
  const optionsButton = "_optionsButton_16xvh_21";
2465
- const styles$9 = {
2600
+ const styles$a = {
2466
2601
  multiPagePopover,
2467
2602
  pageTitle,
2468
2603
  buttonContainer,
@@ -2476,7 +2611,7 @@
2476
2611
  const optionButtons = popoverOption.options.map((option, i) => /* @__PURE__ */ jsxRuntime.jsx(
2477
2612
  Button2,
2478
2613
  {
2479
- className: classNames(styles$9.optionsButton, option.buttonClassName),
2614
+ className: classNames(styles$a.optionsButton, option.buttonClassName),
2480
2615
  variant: "ghost",
2481
2616
  radius: "large",
2482
2617
  style: {
@@ -2492,12 +2627,12 @@
2492
2627
  `${option.value}-page-${page}-button-${i}`
2493
2628
  ));
2494
2629
  return /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
2495
- popoverOption.title && /* @__PURE__ */ jsxRuntime.jsx(themes.Text, { className: styles$9.pageTitle, size: "3", children: popoverOption.title }),
2630
+ popoverOption.title && /* @__PURE__ */ jsxRuntime.jsx(themes.Text, { className: styles$a.pageTitle, size: "3", children: popoverOption.title }),
2496
2631
  popoverOption.content,
2497
2632
  /* @__PURE__ */ jsxRuntime.jsx(
2498
2633
  "div",
2499
2634
  {
2500
- className: classNames(styles$9.optionsButtonContainer, popoverOption.buttonsContainerClassName),
2635
+ className: classNames(styles$a.optionsButtonContainer, popoverOption.buttonsContainerClassName),
2501
2636
  style: {
2502
2637
  flexDirection: direction === "vertical" ? "column" : "row"
2503
2638
  },
@@ -2515,7 +2650,7 @@
2515
2650
  return /* @__PURE__ */ jsxRuntime.jsx(
2516
2651
  Popover,
2517
2652
  {
2518
- className: classNames(styles$9.multiPagePopover, className),
2653
+ className: classNames(styles$a.multiPagePopover, className),
2519
2654
  ref,
2520
2655
  onOpenAutoFocus: resetPopoverContent,
2521
2656
  onCloseAutoFocus: resetPopoverContent,
@@ -2527,7 +2662,7 @@
2527
2662
  const MultiPagePopover = React.memo(_MultiPagePopover);
2528
2663
  const charCount = "_charCount_1lz28_1";
2529
2664
  const ghost = "_ghost_1lz28_5";
2530
- const styles$8 = {
2665
+ const styles$9 = {
2531
2666
  charCount,
2532
2667
  ghost
2533
2668
  };
@@ -2563,7 +2698,7 @@
2563
2698
  themes.TextArea,
2564
2699
  {
2565
2700
  className: classNames("overmap-textarea", className, {
2566
- [styles$8.ghost]: variant === "ghost"
2701
+ [styles$9.ghost]: variant === "ghost"
2567
2702
  }),
2568
2703
  style: { resize },
2569
2704
  variant: variant !== "ghost" ? variant : void 0,
@@ -2573,7 +2708,7 @@
2573
2708
  ...rest
2574
2709
  }
2575
2710
  ),
2576
- displayInputLength && /* @__PURE__ */ jsxRuntime.jsx(themes.Text, { as: "p", className: styles$8.charCount, color: infoColor, align: "right", children: displayInputLengthValue })
2711
+ displayInputLength && /* @__PURE__ */ jsxRuntime.jsx(themes.Text, { as: "p", className: styles$9.charCount, color: infoColor, align: "right", children: displayInputLengthValue })
2577
2712
  ] });
2578
2713
  });
2579
2714
  const TextArea = React.memo(_TextArea);
@@ -2619,7 +2754,7 @@
2619
2754
  );
2620
2755
  });
2621
2756
  const ToggleGroup = React.memo(_ToggleGroup);
2622
- const styles$7 = {
2757
+ const styles$8 = {
2623
2758
  "default": "_default_xqvoc_1"
2624
2759
  };
2625
2760
  const Root = React.memo(
@@ -2627,7 +2762,7 @@
2627
2762
  return /* @__PURE__ */ jsxRuntime.jsx(
2628
2763
  reactToolbar.Root,
2629
2764
  {
2630
- className: classNames(className, "overmap-toolbar", styles$7.default),
2765
+ className: classNames(className, "overmap-toolbar", styles$8.default),
2631
2766
  ref,
2632
2767
  asChild: true,
2633
2768
  ...rest,
@@ -2668,7 +2803,7 @@
2668
2803
  const ToastRoot = "_ToastRoot_1i6bp_24";
2669
2804
  const slideIn = "_slideIn_1i6bp_1";
2670
2805
  const swipeOut = "_swipeOut_1i6bp_1";
2671
- const styles$6 = {
2806
+ const styles$7 = {
2672
2807
  ToastViewport,
2673
2808
  actionButton,
2674
2809
  ToastRoot,
@@ -2686,7 +2821,7 @@
2686
2821
  },
2687
2822
  [onClose]
2688
2823
  );
2689
- return /* @__PURE__ */ jsxRuntime.jsx(RadixToast__namespace.Root, { asChild: true, ref, ...rest, open, type: sensitivity, onOpenChange: handleOpenChange, children: /* @__PURE__ */ jsxRuntime.jsx(themes.Callout.Root, { className: styles$6.ToastRoot, variant: "surface", color, size, children: /* @__PURE__ */ jsxRuntime.jsxs(themes.Flex, { width: "100%", align: "center", gap: "4", justify: "between", children: [
2824
+ return /* @__PURE__ */ jsxRuntime.jsx(RadixToast__namespace.Root, { asChild: true, ref, ...rest, open, type: sensitivity, onOpenChange: handleOpenChange, children: /* @__PURE__ */ jsxRuntime.jsx(themes.Callout.Root, { className: styles$7.ToastRoot, variant: "surface", color, size, children: /* @__PURE__ */ jsxRuntime.jsxs(themes.Flex, { width: "100%", align: "center", gap: "4", justify: "between", children: [
2690
2825
  /* @__PURE__ */ jsxRuntime.jsxs(themes.Flex, { align: "center", gap: "3", children: [
2691
2826
  /* @__PURE__ */ jsxRuntime.jsx(themes.Callout.Icon, { children: icon }),
2692
2827
  /* @__PURE__ */ jsxRuntime.jsxs(themes.Flex, { direction: "column", gap: "2", children: [
@@ -2694,7 +2829,7 @@
2694
2829
  /* @__PURE__ */ jsxRuntime.jsx(RadixToast__namespace.Title, { asChild: true, children: /* @__PURE__ */ jsxRuntime.jsx(themes.Callout.Text, { size: "3", weight: "medium", children: title }) }),
2695
2830
  /* @__PURE__ */ jsxRuntime.jsx(RadixToast__namespace.Description, { asChild: true, children: /* @__PURE__ */ jsxRuntime.jsx(themes.Callout.Text, { children: description }) })
2696
2831
  ] }),
2697
- action && /* @__PURE__ */ jsxRuntime.jsx(RadixToast__namespace.Action, { className: styles$6.actionButton, altText: action.altText, asChild: true, children: action.content })
2832
+ action && /* @__PURE__ */ jsxRuntime.jsx(RadixToast__namespace.Action, { className: styles$7.actionButton, altText: action.altText, asChild: true, children: action.content })
2698
2833
  ] })
2699
2834
  ] }),
2700
2835
  /* @__PURE__ */ jsxRuntime.jsx(RadixToast__namespace.Close, { asChild: true, children: /* @__PURE__ */ jsxRuntime.jsx(IconButton, { "aria-label": "Close", variant: "ghost", severity, children: /* @__PURE__ */ jsxRuntime.jsx(reactIcons.Cross2Icon, {}) }) })
@@ -2770,11 +2905,11 @@
2770
2905
  }, []);
2771
2906
  return /* @__PURE__ */ jsxRuntime.jsx(ToastContext.Provider, { value: toastContextValue, children: /* @__PURE__ */ jsxRuntime.jsxs(RadixToast.ToastProvider, { ...rest, children: [
2772
2907
  children,
2773
- /* @__PURE__ */ jsxRuntime.jsx(RadixToast.ToastViewport, { className: classNames(className, styles$6.ToastViewport), hotkey }),
2908
+ /* @__PURE__ */ jsxRuntime.jsx(RadixToast.ToastViewport, { className: classNames(className, styles$7.ToastViewport), hotkey }),
2774
2909
  toasts.map(({ id, onClose, ...toastProps }) => /* @__PURE__ */ jsxRuntime.jsx(Toast, { ...toastProps, onClose: () => handleCloseToast(id, 0, onClose) }, id))
2775
2910
  ] }) });
2776
2911
  });
2777
- const styles$5 = {
2912
+ const styles$6 = {
2778
2913
  "default": "_default_1odpt_1"
2779
2914
  };
2780
2915
  const Tooltip = React.memo(
@@ -2782,7 +2917,7 @@
2782
2917
  return /* @__PURE__ */ jsxRuntime.jsx(
2783
2918
  themes.Tooltip,
2784
2919
  {
2785
- className: classNames("overmap-tooltip", className, styles$5.default),
2920
+ className: classNames("overmap-tooltip", className, styles$6.default),
2786
2921
  ref,
2787
2922
  content: /* @__PURE__ */ jsxRuntime.jsx(themes.Flex, { align: "center", gap: "1", width: "max-content", height: "max-content", justify: "center", children: content }),
2788
2923
  ...rest,
@@ -2791,6 +2926,29 @@
2791
2926
  );
2792
2927
  })
2793
2928
  );
2929
+ const ToggleButton$1 = "_ToggleButton_13aus_1";
2930
+ const styles$5 = {
2931
+ ToggleButton: ToggleButton$1
2932
+ };
2933
+ const ToggleButton = React.memo(
2934
+ React.forwardRef((props, ref) => {
2935
+ const { children, className, severity, fluid: fluid2, variant = "solid", size, hoverEffects, ...rest } = props;
2936
+ return /* @__PURE__ */ jsxRuntime.jsx(Toggle__namespace.Root, { ref, asChild: true, ...rest, children: /* @__PURE__ */ jsxRuntime.jsx(
2937
+ IconButton,
2938
+ {
2939
+ className: classNames(className, styles$5.ToggleButton),
2940
+ "aria-label": props["aria-label"],
2941
+ severity,
2942
+ fluid: fluid2,
2943
+ variant,
2944
+ hoverEffects,
2945
+ size,
2946
+ "data-variant": variant,
2947
+ children
2948
+ }
2949
+ ) });
2950
+ })
2951
+ );
2794
2952
  const noWrap = "_noWrap_1wpa5_1";
2795
2953
  const styles$4 = {
2796
2954
  noWrap
@@ -2904,6 +3062,50 @@
2904
3062
  return /* @__PURE__ */ jsxRuntime.jsx(reactErrorBoundary.ErrorBoundary, { fallback: /* @__PURE__ */ jsxRuntime.jsx(ErrorFallback, { absoluteCentering }), onError: logError, children: props.children });
2905
3063
  });
2906
3064
  OvermapErrorBoundary.displayName = "OvermapErrorBoundary";
3065
+ const OvermapItemSizeDependantProps = {
3066
+ "1": {
3067
+ gap: "1",
3068
+ px: "1",
3069
+ height: "5",
3070
+ fontSize: "var(--font-size-1)"
3071
+ },
3072
+ "2": {
3073
+ gap: "2",
3074
+ px: "2",
3075
+ height: "6",
3076
+ fontSize: "var(--font-size-2)"
3077
+ },
3078
+ "3": {
3079
+ gap: "2",
3080
+ px: "3",
3081
+ height: "7",
3082
+ fontSize: "var(--font-size-3)"
3083
+ },
3084
+ "4": {
3085
+ gap: "2",
3086
+ px: "4",
3087
+ height: "8",
3088
+ fontSize: "var(--font-size-4)"
3089
+ },
3090
+ "5": {
3091
+ gap: "3",
3092
+ px: "5",
3093
+ height: "9",
3094
+ fontSize: "var(--font-size-5)"
3095
+ }
3096
+ };
3097
+ const OvermapItem = React.memo(
3098
+ React.forwardRef((props, ref) => {
3099
+ const { leftSlot, rightSlot, children, size, style, ...rest } = props;
3100
+ const computedSize = useOvermapResponsiveValue(size);
3101
+ const { fontSize, ...restSizeProps } = OvermapItemSizeDependantProps[computedSize ?? "2"];
3102
+ return /* @__PURE__ */ jsxRuntime.jsxs(themes.Flex, { ref, align: "center", style: { fontSize, ...style }, ...restSizeProps, ...rest, children: [
3103
+ leftSlot && /* @__PURE__ */ jsxRuntime.jsx(themes.Flex, { width: "max-content", height: "max-content", align: "center", children: leftSlot }),
3104
+ /* @__PURE__ */ jsxRuntime.jsx(themes.Flex, { height: "max-content", align: "center", grow: "1", children }),
3105
+ rightSlot && /* @__PURE__ */ jsxRuntime.jsx(themes.Flex, { width: "max-content", height: "max-content", align: "center", children: rightSlot })
3106
+ ] });
3107
+ })
3108
+ );
2907
3109
  function _extends() {
2908
3110
  _extends = Object.assign ? Object.assign.bind() : function(target) {
2909
3111
  for (var i = 1; i < arguments.length; i++) {
@@ -4283,6 +4485,7 @@
4283
4485
  exports2.ContextSelectMenu = ContextSelectMenu;
4284
4486
  exports2.DefaultTheme = DefaultTheme;
4285
4487
  exports2.Dialog = Dialog;
4488
+ exports2.DownloadButtonUtility = DownloadButtonUtility;
4286
4489
  exports2.DropdownItemMenu = DropdownItemMenu;
4287
4490
  exports2.DropdownMenu = DropdownMenu;
4288
4491
  exports2.DropdownMenuItemGroup = DropdownMenuItemGroup;
@@ -4301,7 +4504,9 @@
4301
4504
  exports2.LeftAndRightPanels = LeftAndRightPanels;
4302
4505
  exports2.MultiPagePopover = MultiPagePopover;
4303
4506
  exports2.MultiSelect = MultiSelect;
4507
+ exports2.Overlay = Overlay$2;
4304
4508
  exports2.OvermapErrorBoundary = OvermapErrorBoundary;
4509
+ exports2.OvermapItem = OvermapItem;
4305
4510
  exports2.Popover = Popover;
4306
4511
  exports2.Select = Select;
4307
4512
  exports2.SelectAllCheckbox = SelectAllCheckbox;
@@ -4317,6 +4522,7 @@
4317
4522
  exports2.Toast = Toast;
4318
4523
  exports2.ToastContext = ToastContext;
4319
4524
  exports2.ToastProvider = ToastProvider;
4525
+ exports2.ToggleButton = ToggleButton;
4320
4526
  exports2.ToggleGroup = ToggleGroup;
4321
4527
  exports2.Toolbar = Toolbar;
4322
4528
  exports2.Tooltip = Tooltip;
@@ -4327,6 +4533,7 @@
4327
4533
  exports2.useKeyboardShortcut = useKeyboardShortcut;
4328
4534
  exports2.useLayoutContext = useLayoutContext;
4329
4535
  exports2.useSeverityColor = useSeverityColor;
4536
+ exports2.useSize = useSize;
4330
4537
  exports2.useStopEventPropagation = useStopEventPropagation;
4331
4538
  exports2.useTextFilter = useTextFilter;
4332
4539
  exports2.useToast = useToast;