@jsenv/navi 0.26.22 → 0.26.23

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.
@@ -71,7 +71,7 @@ const useActionStatus = (action) => {
71
71
  };
72
72
  };
73
73
 
74
- installImportMetaCssBuild(import.meta);import.meta.css = [/* css */`
74
+ installImportMetaCssBuild(import.meta);const css$H = /* css */`
75
75
  .action_error {
76
76
  margin-top: 0;
77
77
  margin-bottom: 20px;
@@ -79,7 +79,7 @@ installImportMetaCssBuild(import.meta);import.meta.css = [/* css */`
79
79
  background: #fdd;
80
80
  border: 1px solid red;
81
81
  }
82
- `, "@jsenv/navi/src/action/action_renderer.jsx"];
82
+ `;
83
83
  const renderIdleDefault = () => null;
84
84
  const renderLoadingDefault = () => null;
85
85
  const renderAbortedDefault = () => null;
@@ -96,6 +96,7 @@ const ActionRenderer = ({
96
96
  children,
97
97
  disabled
98
98
  }) => {
99
+ import.meta.css = [css$H, "@jsenv/navi/src/action/action_renderer.jsx"];
99
100
  if (action === undefined) {
100
101
  throw new Error("ActionRenderer requires an action to render, but none was provided.");
101
102
  }
@@ -16304,7 +16305,7 @@ installImportMetaCssBuild(import.meta);
16304
16305
  * - Centers in viewport when no anchor element provided or anchor is too big
16305
16306
  */
16306
16307
 
16307
- const css$E = /* css */`
16308
+ const css$G = /* css */`
16308
16309
  @layer navi {
16309
16310
  .navi_callout {
16310
16311
  --callout-success-color: #4caf50;
@@ -16478,7 +16479,7 @@ const openCallout = (message, {
16478
16479
  showErrorStack,
16479
16480
  debug = false
16480
16481
  } = {}) => {
16481
- import.meta.css = [css$E, "@jsenv/navi/src/field/validation/callout/callout.js"];
16482
+ import.meta.css = [css$G, "@jsenv/navi/src/field/validation/callout/callout.js"];
16482
16483
  const callout = {
16483
16484
  opened: true,
16484
16485
  close: null,
@@ -19604,7 +19605,7 @@ const setupNetworkMonitoring = () => {
19604
19605
  };
19605
19606
  setupNetworkMonitoring();
19606
19607
 
19607
- installImportMetaCssBuild(import.meta);const css$D = /* css */`
19608
+ installImportMetaCssBuild(import.meta);const css$F = /* css */`
19608
19609
  .navi_loading_indicator_fluid_container {
19609
19610
  position: relative;
19610
19611
  display: flex;
@@ -19634,7 +19635,7 @@ const LoadingIndicatorFluid = ({
19634
19635
  radius,
19635
19636
  ...rest
19636
19637
  }) => {
19637
- import.meta.css = [css$D, "@jsenv/navi/src/graphic/loading/loading_indicator_fluid.jsx"];
19638
+ import.meta.css = [css$F, "@jsenv/navi/src/graphic/loading/loading_indicator_fluid.jsx"];
19638
19639
  const ref = useRef(null);
19639
19640
  // The container dimensions can be deduced from the ref itself as the indicator is absolute inset 0
19640
19641
  const [containerWidth, setContainerWidth] = useState(0);
@@ -19822,7 +19823,7 @@ const LoadingRectangleSvg = ({
19822
19823
  });
19823
19824
  };
19824
19825
 
19825
- installImportMetaCssBuild(import.meta);const css$C = /* css */`
19826
+ installImportMetaCssBuild(import.meta);const css$E = /* css */`
19826
19827
  .navi_loading_outline_wrapper {
19827
19828
  position: absolute;
19828
19829
  top: var(--loading-rectangle-top, 0);
@@ -19840,7 +19841,7 @@ installImportMetaCssBuild(import.meta);const css$C = /* css */`
19840
19841
  }
19841
19842
  `;
19842
19843
  const LoadingOutline = props => {
19843
- import.meta.css = [css$C, "@jsenv/navi/src/graphic/loading/loading_outline.jsx"];
19844
+ import.meta.css = [css$E, "@jsenv/navi/src/graphic/loading/loading_outline.jsx"];
19844
19845
  if (props.containerRef) {
19845
19846
  const container = props.containerRef.current;
19846
19847
  if (!container) {
@@ -20786,7 +20787,7 @@ const selectByTextStrings = (element, range, startText, endText) => {
20786
20787
  };
20787
20788
 
20788
20789
  installImportMetaCssBuild(import.meta);// https://jsfiddle.net/v5xzJ/4/
20789
- const css$B = /* css */`
20790
+ const css$D = /* css */`
20790
20791
  @layer navi {
20791
20792
  .navi_text {
20792
20793
  &[data-skeleton] {
@@ -21185,7 +21186,7 @@ const TextDispatcher = props => {
21185
21186
  });
21186
21187
  };
21187
21188
  const TextUI = props => {
21188
- import.meta.css = [css$B, "@jsenv/navi/src/text/text.jsx"];
21189
+ import.meta.css = [css$D, "@jsenv/navi/src/text/text.jsx"];
21189
21190
  let {
21190
21191
  ref,
21191
21192
  spacing,
@@ -21357,7 +21358,7 @@ const TextWithSelectRange = ({
21357
21358
  });
21358
21359
  };
21359
21360
 
21360
- installImportMetaCssBuild(import.meta);const css$A = /* css */`
21361
+ installImportMetaCssBuild(import.meta);const css$C = /* css */`
21361
21362
  .navi_text_anchor {
21362
21363
  vertical-align: baseline;
21363
21364
  user-select: none;
@@ -21392,7 +21393,7 @@ const TextAnchor = ({
21392
21393
  textSize,
21393
21394
  lineLayout
21394
21395
  }) => {
21395
- import.meta.css = [css$A, "@jsenv/navi/src/text/text_anchor.jsx"];
21396
+ import.meta.css = [css$C, "@jsenv/navi/src/text/text_anchor.jsx"];
21396
21397
  const anchorRef = useRef();
21397
21398
  const setTopOffset = (childEl, topOffset) => {
21398
21399
  // position:relative + top shifts the element visually.
@@ -21494,7 +21495,7 @@ const computeTopOffset = ({
21494
21495
  };
21495
21496
  const charTopCanvas = document.createElement("canvas");
21496
21497
 
21497
- installImportMetaCssBuild(import.meta);const css$z = /* css */`
21498
+ installImportMetaCssBuild(import.meta);const css$B = /* css */`
21498
21499
  @layer navi {
21499
21500
  /* Ensure data attributes from box.jsx can win to update display */
21500
21501
  .navi_icon {
@@ -21567,7 +21568,7 @@ const Icon = ({
21567
21568
  lineLayout,
21568
21569
  ...props
21569
21570
  }) => {
21570
- import.meta.css = [css$z, "@jsenv/navi/src/text/icon.jsx"];
21571
+ import.meta.css = [css$B, "@jsenv/navi/src/text/icon.jsx"];
21571
21572
  const innerChildren = href ? jsx("svg", {
21572
21573
  width: "100%",
21573
21574
  height: "100%",
@@ -22519,7 +22520,7 @@ const useUIState = (uiStateController) => {
22519
22520
  return trackedUIState;
22520
22521
  };
22521
22522
 
22522
- installImportMetaCssBuild(import.meta);const css$y = /* css */`
22523
+ installImportMetaCssBuild(import.meta);const css$A = /* css */`
22523
22524
  @layer navi {
22524
22525
  .navi_button {
22525
22526
  --button-border-radius: 2px;
@@ -22805,7 +22806,7 @@ const ButtonDispatcher = props => {
22805
22806
  });
22806
22807
  };
22807
22808
  const ButtonUI = props => {
22808
- import.meta.css = [css$y, "@jsenv/navi/src/field/button.jsx"];
22809
+ import.meta.css = [css$A, "@jsenv/navi/src/field/button.jsx"];
22809
22810
  const {
22810
22811
  ref,
22811
22812
  readOnly,
@@ -23130,7 +23131,7 @@ const WarningSvg = () => {
23130
23131
  });
23131
23132
  };
23132
23133
 
23133
- installImportMetaCssBuild(import.meta);const css$x = /* css */`
23134
+ installImportMetaCssBuild(import.meta);const css$z = /* css */`
23134
23135
  @layer navi {
23135
23136
  .navi_message_box {
23136
23137
  --background-color-info: var(--navi-info-color-light);
@@ -23183,7 +23184,7 @@ const MessageBox = ({
23183
23184
  onClose,
23184
23185
  ...rest
23185
23186
  }) => {
23186
- import.meta.css = [css$x, "@jsenv/navi/src/text/message_box.jsx"];
23187
+ import.meta.css = [css$z, "@jsenv/navi/src/text/message_box.jsx"];
23187
23188
  const [hasTitleChild, setHasTitleChild] = useState(false);
23188
23189
  const innerLeftStripe = leftStripe === undefined ? hasTitleChild : leftStripe;
23189
23190
  if (icon === true) {
@@ -23242,7 +23243,7 @@ const MessageBoxPseudoClasses = [":-navi-status-info", ":-navi-status-success",
23242
23243
  const MessageBoxStatusContext = createContext();
23243
23244
  const MessageBoxReportTitleChildContext = createContext();
23244
23245
 
23245
- installImportMetaCssBuild(import.meta);const css$w = /* css */`
23246
+ installImportMetaCssBuild(import.meta);const css$y = /* css */`
23246
23247
  .navi_message_box {
23247
23248
  .navi_title {
23248
23249
  margin-top: 0;
@@ -23252,7 +23253,7 @@ installImportMetaCssBuild(import.meta);const css$w = /* css */`
23252
23253
  }
23253
23254
  `;
23254
23255
  const Title = props => {
23255
- import.meta.css = [css$w, "@jsenv/navi/src/text/title.jsx"];
23256
+ import.meta.css = [css$y, "@jsenv/navi/src/text/title.jsx"];
23256
23257
  const messageBoxStatus = useContext(MessageBoxStatusContext);
23257
23258
  const innerAs = props.as || (messageBoxStatus ? "h4" : "h1");
23258
23259
  const titleLevel = parseInt(innerAs.slice(1));
@@ -23330,7 +23331,7 @@ const useDimColorWhen = (elementRef, shouldDim) => {
23330
23331
  });
23331
23332
  };
23332
23333
 
23333
- installImportMetaCssBuild(import.meta);const css$v = /* css */`
23334
+ installImportMetaCssBuild(import.meta);const css$x = /* css */`
23334
23335
  @layer navi {
23335
23336
  .navi_link {
23336
23337
  --link-border-radius: unset;
@@ -23682,7 +23683,7 @@ Object.assign(PSEUDO_CLASSES, {
23682
23683
  }
23683
23684
  });
23684
23685
  const Link = props => {
23685
- import.meta.css = [css$v, "@jsenv/navi/src/nav/link/link.jsx"];
23686
+ import.meta.css = [css$x, "@jsenv/navi/src/nav/link/link.jsx"];
23686
23687
  return renderActionableComponent(props, {
23687
23688
  Basic: LinkBasic,
23688
23689
  WithAction: LinkWithAction
@@ -23948,7 +23949,7 @@ installImportMetaCssBuild(import.meta);/**
23948
23949
  * TabList component with support for horizontal and vertical layouts
23949
23950
  * https://dribbble.com/search/tabs
23950
23951
  */
23951
- const css$u = /* css */`
23952
+ const css$w = /* css */`
23952
23953
  @layer navi {
23953
23954
  .navi_nav {
23954
23955
  --nav-border: none;
@@ -24084,7 +24085,7 @@ const Nav = ({
24084
24085
  panelBorderConnection,
24085
24086
  ...props
24086
24087
  }) => {
24087
- import.meta.css = [css$u, "@jsenv/navi/src/nav/link/nav.jsx"];
24088
+ import.meta.css = [css$w, "@jsenv/navi/src/nav/link/nav.jsx"];
24088
24089
  children = toChildArray(children);
24089
24090
  return jsx(Box, {
24090
24091
  as: "nav",
@@ -24132,7 +24133,7 @@ const useFocusGroup = (
24132
24133
 
24133
24134
  installImportMetaCssBuild(import.meta);const rightArrowPath = "M680-480L360-160l-80-80 240-240-240-240 80-80 320 320z";
24134
24135
  const downArrowPath = "M480-280L160-600l80-80 240 240 240-240 80 80-320 320z";
24135
- const css$t = /* css */`
24136
+ const css$v = /* css */`
24136
24137
  .navi_summary_marker {
24137
24138
  width: 1em;
24138
24139
  height: 1em;
@@ -24217,7 +24218,7 @@ const SummaryMarker = ({
24217
24218
  open,
24218
24219
  loading
24219
24220
  }) => {
24220
- import.meta.css = [css$t, "@jsenv/navi/src/field/details/summary_marker.jsx"];
24221
+ import.meta.css = [css$v, "@jsenv/navi/src/field/details/summary_marker.jsx"];
24221
24222
  const showLoading = useDebounceTrue(loading, 300);
24222
24223
  const mountedRef = useRef(false);
24223
24224
  const prevOpenRef = useRef(open);
@@ -24271,7 +24272,7 @@ const SummaryMarker = ({
24271
24272
  });
24272
24273
  };
24273
24274
 
24274
- installImportMetaCssBuild(import.meta);const css$s = /* css */`
24275
+ installImportMetaCssBuild(import.meta);const css$u = /* css */`
24275
24276
  .navi_details {
24276
24277
  position: relative;
24277
24278
  z-index: 1;
@@ -24308,7 +24309,7 @@ installImportMetaCssBuild(import.meta);const css$s = /* css */`
24308
24309
  }
24309
24310
  `;
24310
24311
  const Details = props => {
24311
- import.meta.css = [css$s, "@jsenv/navi/src/field/details/details.jsx"];
24312
+ import.meta.css = [css$u, "@jsenv/navi/src/field/details/details.jsx"];
24312
24313
  const {
24313
24314
  value = "on",
24314
24315
  persists
@@ -24623,7 +24624,7 @@ const fieldPropSet = new Set([
24623
24624
  "data-testid",
24624
24625
  ]);
24625
24626
 
24626
- installImportMetaCssBuild(import.meta);const css$r = /* css */`
24627
+ installImportMetaCssBuild(import.meta);const css$t = /* css */`
24627
24628
  @layer navi {
24628
24629
  label {
24629
24630
  &[data-interactive] {
@@ -24641,7 +24642,7 @@ installImportMetaCssBuild(import.meta);const css$r = /* css */`
24641
24642
  }
24642
24643
  `;
24643
24644
  const Label = props => {
24644
- import.meta.css = [css$r, "@jsenv/navi/src/field/label.jsx"];
24645
+ import.meta.css = [css$t, "@jsenv/navi/src/field/label.jsx"];
24645
24646
  const {
24646
24647
  readOnly,
24647
24648
  disabled,
@@ -24691,7 +24692,7 @@ const reportDisabledToLabel = value => {
24691
24692
  reportDisabled?.(value);
24692
24693
  };
24693
24694
 
24694
- installImportMetaCssBuild(import.meta);const css$q = /* css */`
24695
+ installImportMetaCssBuild(import.meta);const css$s = /* css */`
24695
24696
  @layer navi {
24696
24697
  .navi_checkbox {
24697
24698
  --margin: 3px 3px 3px 4px;
@@ -25083,7 +25084,7 @@ const InputCheckboxDispatcher = props => {
25083
25084
  });
25084
25085
  };
25085
25086
  const InputCheckboxUI = props => {
25086
- import.meta.css = [css$q, "@jsenv/navi/src/field/input_checkbox.jsx"];
25087
+ import.meta.css = [css$s, "@jsenv/navi/src/field/input_checkbox.jsx"];
25087
25088
  const {
25088
25089
  ref,
25089
25090
  /* eslint-disable no-unused-vars */
@@ -25484,7 +25485,7 @@ forwardRef((props, ref) => {
25484
25485
  });
25485
25486
  });
25486
25487
 
25487
- installImportMetaCssBuild(import.meta);const css$p = /* css */`
25488
+ installImportMetaCssBuild(import.meta);const css$r = /* css */`
25488
25489
  @layer navi {
25489
25490
  .navi_radio {
25490
25491
  --margin: 3px 3px 0 5px;
@@ -25838,7 +25839,7 @@ const InputRadioDispatcher = props => {
25838
25839
  });
25839
25840
  };
25840
25841
  const InputRadioUI = props => {
25841
- import.meta.css = [css$p, "@jsenv/navi/src/field/input_radio.jsx"];
25842
+ import.meta.css = [css$r, "@jsenv/navi/src/field/input_radio.jsx"];
25842
25843
  const {
25843
25844
  ref,
25844
25845
  /* eslint-disable no-unused-vars */
@@ -26068,7 +26069,7 @@ const InputRadioWithAction = () => {
26068
26069
  throw new Error(`<Input type="radio" /> with an action make no sense. Use <RadioList action={something} /> instead`);
26069
26070
  };
26070
26071
 
26071
- installImportMetaCssBuild(import.meta);const css$o = /* css */`
26072
+ installImportMetaCssBuild(import.meta);const css$q = /* css */`
26072
26073
  @layer navi {
26073
26074
  .navi_input_range {
26074
26075
  --border-radius: 6px;
@@ -26330,7 +26331,7 @@ const InputRangeDispatcher = props => {
26330
26331
  });
26331
26332
  };
26332
26333
  const InputRangeUI = props => {
26333
- import.meta.css = [css$o, "@jsenv/navi/src/field/input_range.jsx"];
26334
+ import.meta.css = [css$q, "@jsenv/navi/src/field/input_range.jsx"];
26334
26335
  const {
26335
26336
  ref,
26336
26337
  onInput,
@@ -26607,7 +26608,7 @@ const SearchSvg = () => jsx("svg", {
26607
26608
  })
26608
26609
  });
26609
26610
 
26610
- installImportMetaCssBuild(import.meta);const css$n = /* css */`
26611
+ installImportMetaCssBuild(import.meta);const css$p = /* css */`
26611
26612
  @layer navi {
26612
26613
  .navi_separator {
26613
26614
  --size: 1px;
@@ -26647,7 +26648,7 @@ const Separator = ({
26647
26648
  vertical,
26648
26649
  ...props
26649
26650
  }) => {
26650
- import.meta.css = [css$n, "@jsenv/navi/src/layout/separator.jsx"];
26651
+ import.meta.css = [css$p, "@jsenv/navi/src/layout/separator.jsx"];
26651
26652
  return jsx(Box, {
26652
26653
  as: vertical ? "span" : "hr",
26653
26654
  ...props,
@@ -27059,7 +27060,7 @@ const RenderWindowContext = createContext(null);
27059
27060
  // Carries the separator element/function down to each ListItem so separators
27060
27061
  // are only rendered between items that actually mount (post-filter, post-window).
27061
27062
  const SeparatorContext = createContext(null);
27062
- const css$m = /* css */`
27063
+ const css$o = /* css */`
27063
27064
  @layer navi {
27064
27065
  .navi_list_container {
27065
27066
  --list-outline-width: 1px;
@@ -27486,7 +27487,7 @@ const ListDispatcher = props => {
27486
27487
  });
27487
27488
  };
27488
27489
  const ListUI = props => {
27489
- import.meta.css = [css$m, "@jsenv/navi/src/field/list/list.jsx"];
27490
+ import.meta.css = [css$o, "@jsenv/navi/src/field/list/list.jsx"];
27490
27491
  const {
27491
27492
  ref,
27492
27493
  renderBudget = RENDER_BUDGET_DEFAULT,
@@ -28965,7 +28966,7 @@ installImportMetaCssBuild(import.meta);/**
28965
28966
  * - <InputCheckbox /> for type="checkbox"
28966
28967
  * - <InputRadio /> for type="radio"
28967
28968
  */
28968
- const css$l = /* css */`
28969
+ const css$n = /* css */`
28969
28970
  @layer navi {
28970
28971
  .navi_input {
28971
28972
  --border-radius: 2px;
@@ -29219,7 +29220,7 @@ const InputTextualDispatcher = props => {
29219
29220
  };
29220
29221
  const InputNativeContext = createContext(null);
29221
29222
  const InputTextualUI = props => {
29222
- import.meta.css = [css$l, "@jsenv/navi/src/field/input_textual.jsx"];
29223
+ import.meta.css = [css$n, "@jsenv/navi/src/field/input_textual.jsx"];
29223
29224
  const {
29224
29225
  ref,
29225
29226
  type,
@@ -29840,7 +29841,7 @@ installImportMetaCssBuild(import.meta);/**
29840
29841
  * This means an editable thing MUST have a parent with position relative that wraps the content and the eventual editable input
29841
29842
  *
29842
29843
  */
29843
- const css$k = /* css */`
29844
+ const css$m = /* css */`
29844
29845
  .navi_editable_wrapper {
29845
29846
  --inset-top: 0px;
29846
29847
  --inset-right: 0px;
@@ -29889,7 +29890,7 @@ const useEditionController = () => {
29889
29890
  };
29890
29891
  };
29891
29892
  const Editable = props => {
29892
- import.meta.css = [css$k, "@jsenv/navi/src/field/edition/editable.jsx"];
29893
+ import.meta.css = [css$m, "@jsenv/navi/src/field/edition/editable.jsx"];
29893
29894
  let {
29894
29895
  children,
29895
29896
  action,
@@ -30303,7 +30304,7 @@ const FormWithAction = props => {
30303
30304
  // form.dispatchEvent(customEvent);
30304
30305
  // };
30305
30306
 
30306
- installImportMetaCssBuild(import.meta);const css$j = /* css */`
30307
+ installImportMetaCssBuild(import.meta);const css$l = /* css */`
30307
30308
  .navi_group {
30308
30309
  --border-width: 1px;
30309
30310
 
@@ -30400,7 +30401,7 @@ const Group = ({
30400
30401
  vertical = row,
30401
30402
  ...props
30402
30403
  }) => {
30403
- import.meta.css = [css$j, "@jsenv/navi/src/field/group.jsx"];
30404
+ import.meta.css = [css$l, "@jsenv/navi/src/field/group.jsx"];
30404
30405
  if (typeof borderWidth === "string") {
30405
30406
  borderWidth = parseFloat(borderWidth);
30406
30407
  }
@@ -30591,7 +30592,7 @@ const useCleanup = () => {
30591
30592
  return cleanupMethods;
30592
30593
  };
30593
30594
 
30594
- installImportMetaCssBuild(import.meta);const css$i = /* css */`
30595
+ installImportMetaCssBuild(import.meta);const css$k = /* css */`
30595
30596
  .navi_dialog {
30596
30597
  &[open] {
30597
30598
  display: flex;
@@ -30604,7 +30605,7 @@ installImportMetaCssBuild(import.meta);const css$i = /* css */`
30604
30605
  }
30605
30606
  `;
30606
30607
  const Dialog = props => {
30607
- import.meta.css = [css$i, "@jsenv/navi/src/popup/dialog.jsx"];
30608
+ import.meta.css = [css$k, "@jsenv/navi/src/popup/dialog.jsx"];
30608
30609
  const {
30609
30610
  children,
30610
30611
  scrollTrap,
@@ -30715,7 +30716,7 @@ const requestDialogClose = (popoverElement, {
30715
30716
  });
30716
30717
  };
30717
30718
 
30718
- installImportMetaCssBuild(import.meta);const css$h = /* css */`
30719
+ installImportMetaCssBuild(import.meta);const css$j = /* css */`
30719
30720
  .navi_popover_backdrop {
30720
30721
  position: fixed;
30721
30722
  inset: 0;
@@ -30731,7 +30732,7 @@ installImportMetaCssBuild(import.meta);const css$h = /* css */`
30731
30732
  }
30732
30733
  `;
30733
30734
  const Popover = props => {
30734
- import.meta.css = [css$h, "@jsenv/navi/src/popup/popover.jsx"];
30735
+ import.meta.css = [css$j, "@jsenv/navi/src/popup/popover.jsx"];
30735
30736
  const {
30736
30737
  scrollTrap,
30737
30738
  pointerTrap,
@@ -30933,7 +30934,7 @@ const requestPopoverClose = (popoverElement, {
30933
30934
  });
30934
30935
  };
30935
30936
 
30936
- installImportMetaCssBuild(import.meta);const css$g = /* css */`
30937
+ installImportMetaCssBuild(import.meta);const css$i = /* css */`
30937
30938
  @layer navi {
30938
30939
  .navi_select {
30939
30940
  --select-border-radius: 2px;
@@ -31281,7 +31282,7 @@ const SelectDispatcher = props => {
31281
31282
  });
31282
31283
  };
31283
31284
  const SelectUI = props => {
31284
- import.meta.css = [css$g, "@jsenv/navi/src/field/select.jsx"];
31285
+ import.meta.css = [css$i, "@jsenv/navi/src/field/select.jsx"];
31285
31286
  const {
31286
31287
  placeholder = "Select…",
31287
31288
  trigger,
@@ -32473,7 +32474,7 @@ const Z_INDEX_DROP_PREVIEW = Z_INDEX_STICKY_CORNER + 1;
32473
32474
 
32474
32475
  const Z_INDEX_TABLE_UI = Z_INDEX_STICKY_CORNER + 1;
32475
32476
 
32476
- installImportMetaCssBuild(import.meta);const css$f = /* css */`
32477
+ installImportMetaCssBuild(import.meta);const css$h = /* css */`
32477
32478
  .navi_table_drag_clone_container {
32478
32479
  position: absolute;
32479
32480
  top: var(--table-visual-top);
@@ -32653,7 +32654,7 @@ const moveItem = (array, indexA, indexB) => {
32653
32654
  return newArray;
32654
32655
  };
32655
32656
  const TableDragCloneContainer = forwardRef((props, ref) => {
32656
- import.meta.css = [css$f, "@jsenv/navi/src/field/table/drag/table_drag.jsx"];
32657
+ import.meta.css = [css$h, "@jsenv/navi/src/field/table/drag/table_drag.jsx"];
32657
32658
  const {
32658
32659
  tableId
32659
32660
  } = props;
@@ -32951,7 +32952,7 @@ installImportMetaCssBuild(import.meta);const ROW_MIN_HEIGHT = 30;
32951
32952
  const ROW_MAX_HEIGHT = 100;
32952
32953
  const COLUMN_MIN_WIDTH = 50;
32953
32954
  const COLUMN_MAX_WIDTH = 500;
32954
- const css$e = /* css */`
32955
+ const css$g = /* css */`
32955
32956
  @layer navi {
32956
32957
  .navi_table {
32957
32958
  --table-resizer-handle-color: #063b7c;
@@ -33111,7 +33112,7 @@ const css$e = /* css */`
33111
33112
 
33112
33113
  // Column resize components
33113
33114
  const TableColumnResizer = props => {
33114
- import.meta.css = [css$e, "@jsenv/navi/src/field/table/resize/table_resize.jsx"];
33115
+ import.meta.css = [css$g, "@jsenv/navi/src/field/table/resize/table_resize.jsx"];
33115
33116
  const defaultRef = useRef();
33116
33117
  const ref = props.ref || defaultRef;
33117
33118
  return jsxs("div", {
@@ -33578,7 +33579,7 @@ const findPreviousTableRow = currentRow => {
33578
33579
  return currentIndex > 0 ? allRows[currentIndex - 1] : null;
33579
33580
  };
33580
33581
 
33581
- installImportMetaCssBuild(import.meta);const css$d = /* css */`
33582
+ installImportMetaCssBuild(import.meta);const css$f = /* css */`
33582
33583
  @layer navi {
33583
33584
  .navi_table {
33584
33585
  --selection-border-color: var(--navi-selection-border-color, #0078d4);
@@ -33680,7 +33681,7 @@ const useTableSelectionController = ({
33680
33681
  onSelectionChange,
33681
33682
  selectionColor
33682
33683
  }) => {
33683
- import.meta.css = [css$d, "@jsenv/navi/src/field/table/selection/table_selection.jsx"];
33684
+ import.meta.css = [css$f, "@jsenv/navi/src/field/table/selection/table_selection.jsx"];
33684
33685
  const selectionController = useSelectionController({
33685
33686
  elementRef: tableRef,
33686
33687
  layout: "grid",
@@ -34151,7 +34152,7 @@ const useTableStickyContextValue = ({
34151
34152
  };
34152
34153
 
34153
34154
  installImportMetaCssBuild(import.meta);// TODO: sticky left/top frontier should likely use "followPosition"
34154
- const css$c = /* css */`
34155
+ const css$e = /* css */`
34155
34156
  @layer navi {
34156
34157
  .navi_table {
34157
34158
  --sticky-frontier-color: #c0c0c0;
@@ -34394,7 +34395,7 @@ const css$c = /* css */`
34394
34395
  const TableStickyFrontier = ({
34395
34396
  tableRef
34396
34397
  }) => {
34397
- import.meta.css = [css$c, "@jsenv/navi/src/field/table/sticky/table_sticky.jsx"];
34398
+ import.meta.css = [css$e, "@jsenv/navi/src/field/table/sticky/table_sticky.jsx"];
34398
34399
  const stickyLeftFrontierGhostRef = useRef();
34399
34400
  const stickyLeftFrontierPreviewRef = useRef();
34400
34401
  const stickyTopFrontierGhostRef = useRef();
@@ -34623,7 +34624,7 @@ const initMoveStickyFrontierViaPointer = (pointerdownEvent, {
34623
34624
  * inset 0 -1px 0 0 color; // Bottom border
34624
34625
  */
34625
34626
 
34626
- const css$b = /* css */ `
34627
+ const css$d = /* css */ `
34627
34628
  .navi_table_root {
34628
34629
  position: relative;
34629
34630
  max-width: var(--table-max-width, none);
@@ -34826,7 +34827,7 @@ const css$b = /* css */ `
34826
34827
  }
34827
34828
  `;
34828
34829
 
34829
- installImportMetaCssBuild(import.meta);const css$a = /* css */`
34830
+ installImportMetaCssBuild(import.meta);const css$c = /* css */`
34830
34831
  .navi_table_ui {
34831
34832
  position: fixed;
34832
34833
  inset: 0;
@@ -34837,7 +34838,7 @@ installImportMetaCssBuild(import.meta);const css$a = /* css */`
34837
34838
  }
34838
34839
  `;
34839
34840
  const TableUI = forwardRef((props, ref) => {
34840
- import.meta.css = [css$a, "@jsenv/navi/src/field/table/table_ui.jsx"];
34841
+ import.meta.css = [css$c, "@jsenv/navi/src/field/table/table_ui.jsx"];
34841
34842
  const {
34842
34843
  tableRef,
34843
34844
  tableId,
@@ -34943,7 +34944,7 @@ const RowIndexContext = createContext();
34943
34944
  const TableSectionContext = createContext();
34944
34945
  const useIsInTableHead = () => useContext(TableSectionContext) === "head";
34945
34946
  const Table = props => {
34946
- import.meta.css = [css$b, "@jsenv/navi/src/field/table/table.jsx"];
34947
+ import.meta.css = [css$d, "@jsenv/navi/src/field/table/table.jsx"];
34947
34948
  const tableDefaultRef = useRef();
34948
34949
  const tableDefaultId = `table-${useId()}`;
34949
34950
  const {
@@ -35764,7 +35765,7 @@ const normalizeKey = (key) => {
35764
35765
  return key;
35765
35766
  };
35766
35767
 
35767
- installImportMetaCssBuild(import.meta);import.meta.css = [/* css */`
35768
+ installImportMetaCssBuild(import.meta);const css$b = /* css */`
35768
35769
  .navi_shortcut_container[data-visually-hidden] {
35769
35770
  /* Visually hidden container - doesn't affect layout */
35770
35771
  position: absolute;
@@ -35798,10 +35799,11 @@ installImportMetaCssBuild(import.meta);import.meta.css = [/* css */`
35798
35799
  opacity: 0;
35799
35800
  pointer-events: none;
35800
35801
  }
35801
- `, "@jsenv/navi/src/keyboard/active_keyboard_shortcuts.jsx"];
35802
+ `;
35802
35803
  const ActiveKeyboardShortcuts = ({
35803
35804
  visible
35804
35805
  }) => {
35806
+ import.meta.css = [css$b, "@jsenv/navi/src/keyboard/active_keyboard_shortcuts.jsx"];
35805
35807
  const activeShortcuts = activeShortcutsSignal.value;
35806
35808
  return jsx("div", {
35807
35809
  className: "navi_shortcut_container",
@@ -35840,7 +35842,7 @@ const KeyboardShortcutAriaElement = ({
35840
35842
  });
35841
35843
  };
35842
35844
 
35843
- installImportMetaCssBuild(import.meta);const css$9 = /* css */`
35845
+ installImportMetaCssBuild(import.meta);const css$a = /* css */`
35844
35846
  @layer navi {
35845
35847
  .navi_clipboard_container {
35846
35848
  --height: 1.5em;
@@ -35872,7 +35874,7 @@ const ButtonCopyToClipboard = ({
35872
35874
  children,
35873
35875
  ...props
35874
35876
  }) => {
35875
- import.meta.css = [css$9, "@jsenv/navi/src/field/button_copy_to_clipboard.jsx"];
35877
+ import.meta.css = [css$a, "@jsenv/navi/src/field/button_copy_to_clipboard.jsx"];
35876
35878
  const [copied, setCopied] = useState(false);
35877
35879
  const renderedRef = useRef();
35878
35880
  useEffect(() => {
@@ -35953,7 +35955,7 @@ const Address = ({
35953
35955
  });
35954
35956
  };
35955
35957
 
35956
- installImportMetaCssBuild(import.meta);const css$8 = /* css */`
35958
+ installImportMetaCssBuild(import.meta);const css$9 = /* css */`
35957
35959
  @layer navi {
35958
35960
  }
35959
35961
  .navi_badge {
@@ -35987,7 +35989,7 @@ const Badge = ({
35987
35989
  className,
35988
35990
  ...props
35989
35991
  }) => {
35990
- import.meta.css = [css$8, "@jsenv/navi/src/text/badge.jsx"];
35992
+ import.meta.css = [css$9, "@jsenv/navi/src/text/badge.jsx"];
35991
35993
  const defaultRef = useRef();
35992
35994
  const ref = props.ref || defaultRef;
35993
35995
  useAccentColorAttributes(ref, null);
@@ -36077,7 +36079,7 @@ const formatNumber = (value, { lang } = {}) => {
36077
36079
  return new Intl.NumberFormat(lang).format(value);
36078
36080
  };
36079
36081
 
36080
- installImportMetaCssBuild(import.meta);const css$7 = /* css */`
36082
+ installImportMetaCssBuild(import.meta);const css$8 = /* css */`
36081
36083
  @layer navi {
36082
36084
  }
36083
36085
  .navi_text.navi_badge_count {
@@ -36190,7 +36192,7 @@ const BadgeCount = ({
36190
36192
  lineLayout,
36191
36193
  ...props
36192
36194
  }) => {
36193
- import.meta.css = [css$7, "@jsenv/navi/src/text/badge_count.jsx"];
36195
+ import.meta.css = [css$8, "@jsenv/navi/src/text/badge_count.jsx"];
36194
36196
  const defaultRef = useRef();
36195
36197
  const ref = props.ref || defaultRef;
36196
36198
  useAccentColorAttributes(ref, null);
@@ -36329,7 +36331,7 @@ const BadgeCountCircle = ({
36329
36331
  });
36330
36332
  };
36331
36333
 
36332
- installImportMetaCssBuild(import.meta);const css$6 = /* css */`
36334
+ installImportMetaCssBuild(import.meta);const css$7 = /* css */`
36333
36335
  @layer navi {
36334
36336
  .navi_caption {
36335
36337
  --color: #6b7280;
@@ -36350,7 +36352,7 @@ const Caption = ({
36350
36352
  className,
36351
36353
  ...rest
36352
36354
  }) => {
36353
- import.meta.css = [css$6, "@jsenv/navi/src/text/caption.jsx"];
36355
+ import.meta.css = [css$7, "@jsenv/navi/src/text/caption.jsx"];
36354
36356
  return jsx(Text, {
36355
36357
  as: "small",
36356
36358
  size: "0.8em" // We use em to be relative to the parent (we want to be smaller than the surrounding text)
@@ -36827,7 +36829,7 @@ const interpolate = (template, values) => {
36827
36829
  });
36828
36830
  };
36829
36831
 
36830
- installImportMetaCssBuild(import.meta);const css$5 = /* css */`
36832
+ installImportMetaCssBuild(import.meta);const css$6 = /* css */`
36831
36833
  @layer navi {
36832
36834
  .navi_quantity {
36833
36835
  --unit-color: color-mix(in srgb, currentColor 50%, white);
@@ -36932,7 +36934,7 @@ const Quantity = ({
36932
36934
  bold = true,
36933
36935
  ...props
36934
36936
  }) => {
36935
- import.meta.css = [css$5, "@jsenv/navi/src/text/quantity.jsx"];
36937
+ import.meta.css = [css$6, "@jsenv/navi/src/text/quantity.jsx"];
36936
36938
  const value = parseQuantityValue(children);
36937
36939
  const valueRounded = integer && typeof value === "number" ? Math.round(value) : value;
36938
36940
  const valueFormatted = typeof valueRounded === "number" ? formatNumber(valueRounded, {
@@ -37021,7 +37023,7 @@ const parseQuantityValue = children => {
37021
37023
  return Number.isNaN(parsed) ? children : parsed;
37022
37024
  };
37023
37025
 
37024
- installImportMetaCssBuild(import.meta);const css$4 = /* css */`
37026
+ installImportMetaCssBuild(import.meta);const css$5 = /* css */`
37025
37027
  @layer navi {
37026
37028
  .navi_meter {
37027
37029
  --loader-color: var(--navi-loader-color);
@@ -37159,7 +37161,7 @@ const Meter = ({
37159
37161
  style,
37160
37162
  ...rest
37161
37163
  }) => {
37162
- import.meta.css = [css$4, "@jsenv/navi/src/text/meter.jsx"];
37164
+ import.meta.css = [css$5, "@jsenv/navi/src/text/meter.jsx"];
37163
37165
  const defaultRef = useRef();
37164
37166
  const ref = rest.ref || defaultRef;
37165
37167
  value = Number(value);
@@ -37286,7 +37288,7 @@ const Paragraph = props => {
37286
37288
  });
37287
37289
  };
37288
37290
 
37289
- installImportMetaCssBuild(import.meta);const css$3 = /* css */`
37291
+ installImportMetaCssBuild(import.meta);const css$4 = /* css */`
37290
37292
  @keyframes navi_image_shimmer {
37291
37293
  0% {
37292
37294
  background-position: -200% 0;
@@ -37341,7 +37343,7 @@ const Image = ({
37341
37343
  placeholderDark = false,
37342
37344
  ...rest
37343
37345
  }) => {
37344
- import.meta.css = [css$3, "@jsenv/navi/src/graphic/image.jsx"];
37346
+ import.meta.css = [css$4, "@jsenv/navi/src/graphic/image.jsx"];
37345
37347
  const loadedRef = useRef();
37346
37348
  let resolvedPlaceholder = placeholderColor;
37347
37349
  if (resolvedPlaceholder === undefined) {
@@ -37424,7 +37426,7 @@ installImportMetaCssBuild(import.meta);/**
37424
37426
  * @param {ReactNode[]} props.children - SVG elements (first is base, rest are overlays)
37425
37427
  * @returns {ReactElement} A composed SVG with all elements properly masked
37426
37428
  */
37427
- import.meta.css = [/* css */`
37429
+ const css$3 = /* css */`
37428
37430
  .svg_mask_content * {
37429
37431
  color: black !important;
37430
37432
  opacity: 1 !important;
@@ -37433,11 +37435,12 @@ import.meta.css = [/* css */`
37433
37435
  stroke: black !important;
37434
37436
  stroke-opacity: 1 !important;
37435
37437
  }
37436
- `, "@jsenv/navi/src/graphic/svg_mask_overlay.jsx"];
37438
+ `;
37437
37439
  const SVGMaskOverlay = ({
37438
37440
  viewBox,
37439
37441
  children
37440
37442
  }) => {
37443
+ import.meta.css = [css$3, "@jsenv/navi/src/graphic/svg_mask_overlay.jsx"];
37441
37444
  if (!Array.isArray(children)) {
37442
37445
  return children;
37443
37446
  }