@uniformdev/design-system 20.26.1 → 20.26.3-alpha.7

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/esm/index.js CHANGED
@@ -4621,6 +4621,12 @@ var Fieldset = React7.forwardRef(
4621
4621
  // src/components/Input/Input.tsx
4622
4622
  import * as React8 from "react";
4623
4623
 
4624
+ // src/utils/disableMouseWheelEvent.ts
4625
+ var disableMouseWheelEvent = (e) => {
4626
+ e.stopPropagation();
4627
+ e.currentTarget.blur();
4628
+ };
4629
+
4624
4630
  // src/components/Input/Label.tsx
4625
4631
  import { jsx as jsx36 } from "@emotion/react/jsx-runtime";
4626
4632
  var Label = ({ children, className, testId, ...props }) => {
@@ -4655,8 +4661,10 @@ var Input = React8.forwardRef(
4655
4661
  classNameContainer,
4656
4662
  classNameControl,
4657
4663
  classNameLabel,
4664
+ enableMouseWheel = false,
4658
4665
  ...props
4659
4666
  }, ref) => {
4667
+ const isNumberInputAndMouseWheelDisabled = enableMouseWheel !== true && props.type === "number";
4660
4668
  return /* @__PURE__ */ jsxs22(
4661
4669
  "div",
4662
4670
  {
@@ -4691,6 +4699,7 @@ var Input = React8.forwardRef(
4691
4699
  ],
4692
4700
  "aria-label": showLabel || typeof label !== "string" ? void 0 : label,
4693
4701
  className: typeof classNameControl === "string" ? classNameControl : "",
4702
+ onWheel: isNumberInputAndMouseWheelDisabled ? disableMouseWheelEvent : void 0,
4694
4703
  ...props,
4695
4704
  ref
4696
4705
  }
@@ -9620,6 +9629,68 @@ var KeyValueInputItem = ({
9620
9629
  ] });
9621
9630
  };
9622
9631
 
9632
+ // src/components/Popover/Popover.tsx
9633
+ import {
9634
+ Popover as AriakitPopover,
9635
+ PopoverDisclosure as PopoverDisclosure2,
9636
+ PopoverProvider as PopoverProvider2,
9637
+ usePopoverContext,
9638
+ usePopoverStore as usePopoverStore2
9639
+ } from "@ariakit/react";
9640
+ import { useEffect as useEffect12 } from "react";
9641
+ import { Fragment as Fragment10, jsx as jsx92, jsxs as jsxs59 } from "@emotion/react/jsx-runtime";
9642
+ var Popover3 = ({
9643
+ iconColor = "action",
9644
+ icon = "info",
9645
+ iconSize = "1rem",
9646
+ buttonText,
9647
+ ariaLabel,
9648
+ placement = "bottom",
9649
+ testId,
9650
+ trigger: trigger2,
9651
+ children,
9652
+ onInit,
9653
+ variant = "small",
9654
+ maxWidth = variant === "large" ? "24rem" : "14rem",
9655
+ ...otherProps
9656
+ }) => {
9657
+ const popover2 = usePopoverStore2({ placement });
9658
+ useEffect12(() => {
9659
+ onInit == null ? void 0 : onInit({ store: popover2 });
9660
+ }, [popover2]);
9661
+ return /* @__PURE__ */ jsxs59(PopoverProvider2, { store: popover2, children: [
9662
+ /* @__PURE__ */ jsx92(
9663
+ PopoverDisclosure2,
9664
+ {
9665
+ css: [PopoverBtn, trigger2 ? void 0 : PopoverDefaulterTriggerBtn],
9666
+ title: buttonText,
9667
+ "data-testid": testId,
9668
+ children: trigger2 ? trigger2 : /* @__PURE__ */ jsxs59(Fragment10, { children: [
9669
+ /* @__PURE__ */ jsx92(Icon, { icon, iconColor, size: iconSize }),
9670
+ /* @__PURE__ */ jsx92("span", { hidden: true, children: buttonText })
9671
+ ] })
9672
+ }
9673
+ ),
9674
+ /* @__PURE__ */ jsx92(
9675
+ AriakitPopover,
9676
+ {
9677
+ unmountOnHide: true,
9678
+ style: {
9679
+ maxWidth
9680
+ },
9681
+ css: [Popover, variant === "large" ? PopoverVariantLarge : PopoverVariantSmall],
9682
+ ...otherProps,
9683
+ "aria-label": ariaLabel,
9684
+ children
9685
+ }
9686
+ )
9687
+ ] });
9688
+ };
9689
+ var usePopoverComponentContext = () => {
9690
+ const contextValue = usePopoverContext();
9691
+ return contextValue;
9692
+ };
9693
+
9623
9694
  // src/components/LimitsBar/LimitsBar.styles.ts
9624
9695
  import { css as css70 } from "@emotion/react";
9625
9696
  var LimitsBarContainer = css70`
@@ -9637,13 +9708,8 @@ var LimitsBarProgressBarLine = css70`
9637
9708
  inset: 0;
9638
9709
  transition: transform var(--duration-fast) var(--timing-ease-out);
9639
9710
  `;
9640
- var LimitsBarLabelContainer = css70`
9641
- display: flex;
9642
- justify-content: space-between;
9643
- font-weight: var(--fw-bold);
9644
- `;
9645
- var LimitsBarLabel = css70`
9646
- font-size: var(--fs-baase);
9711
+ var LimitsBarCountText = css70`
9712
+ font-size: var(--fs-sm);
9647
9713
  `;
9648
9714
  var LimitsBarBgColor = (statusColor) => css70`
9649
9715
  background: ${statusColor};
@@ -9653,36 +9719,40 @@ var LimitsBarTextColor = (statusColor) => css70`
9653
9719
  `;
9654
9720
 
9655
9721
  // src/components/LimitsBar/LimitsBar.tsx
9656
- import { jsx as jsx92, jsxs as jsxs59 } from "@emotion/react/jsx-runtime";
9657
- var LimitsBar = ({ current, max, label }) => {
9722
+ import { jsx as jsx93, jsxs as jsxs60 } from "@emotion/react/jsx-runtime";
9723
+ var LimitsBar = ({ current, max, popoverContent }) => {
9658
9724
  const maxPercentage = 100;
9659
- const progressBarValue = Math.ceil(current / max * maxPercentage);
9660
- const colorMap = {
9661
- base: "var(--gray-400)",
9662
- warn: "#facc15",
9663
- // Not in the design system token at present
9664
- danger: "var(--brand-secondary-5)"
9725
+ const isUnlimited = max < 0;
9726
+ const progressBarValue = isUnlimited ? maxPercentage : Math.min(Math.ceil(current / max * maxPercentage), maxPercentage);
9727
+ const percentage = isUnlimited ? 0 : current / max * 100;
9728
+ const getBarColor = () => {
9729
+ if (isUnlimited) return "var(--utility-success-icon)";
9730
+ if (percentage >= 100) return "var(--utility-danger-icon)";
9731
+ if (percentage >= 90) return "var(--utility-caution-icon)";
9732
+ return "var(--utility-success-icon)";
9665
9733
  };
9666
- const statusColor = progressBarValue === 100 ? colorMap.danger : progressBarValue >= 75 ? colorMap.warn : colorMap.base;
9667
- return /* @__PURE__ */ jsxs59("div", { css: LimitsBarContainer, children: [
9668
- /* @__PURE__ */ jsxs59("div", { css: LimitsBarLabelContainer, children: [
9669
- /* @__PURE__ */ jsx92("span", { css: LimitsBarLabel, children: label }),
9670
- /* @__PURE__ */ jsxs59("span", { css: [LimitsBarLabel, LimitsBarTextColor(statusColor)], children: [
9671
- current,
9672
- " of ",
9673
- max
9674
- ] })
9675
- ] }),
9676
- /* @__PURE__ */ jsx92(
9734
+ const getTextColor = () => {
9735
+ if (isUnlimited) return "var(--utility-success-icon)";
9736
+ if (percentage >= 100) return "var(--utility-danger-title)";
9737
+ if (percentage >= 90) return "var(--utility-caution-title)";
9738
+ return "var(--typography-light)";
9739
+ };
9740
+ const statusColor = getBarColor();
9741
+ const textColor = getTextColor();
9742
+ const displayText = isUnlimited ? `${current} of unlimited` : `${current} of ${max}`;
9743
+ const ariaValueMax = isUnlimited ? -1 : max;
9744
+ const ariaValueText = displayText;
9745
+ return /* @__PURE__ */ jsxs60("div", { css: [LimitsBarContainer, functionalColors], children: [
9746
+ /* @__PURE__ */ jsx93(
9677
9747
  "div",
9678
9748
  {
9679
9749
  role: "progressbar",
9680
9750
  "aria-valuenow": current,
9681
9751
  "aria-valuemin": 0,
9682
- "aria-valuemax": max,
9683
- "aria-valuetext": `${current} of ${max}`,
9752
+ "aria-valuemax": ariaValueMax,
9753
+ "aria-valuetext": ariaValueText,
9684
9754
  css: LimitsBarProgressBar,
9685
- children: /* @__PURE__ */ jsx92(
9755
+ children: /* @__PURE__ */ jsx93(
9686
9756
  "span",
9687
9757
  {
9688
9758
  role: "presentation",
@@ -9693,7 +9763,11 @@ var LimitsBar = ({ current, max, label }) => {
9693
9763
  }
9694
9764
  )
9695
9765
  }
9696
- )
9766
+ ),
9767
+ /* @__PURE__ */ jsxs60(HorizontalRhythm, { gap: "sm", align: "center", children: [
9768
+ /* @__PURE__ */ jsx93("span", { css: [LimitsBarCountText, LimitsBarTextColor(textColor)], "aria-label": "usage count", children: displayText }),
9769
+ popoverContent ? /* @__PURE__ */ jsx93(Popover3, { buttonText: "Info", placement: "top", children: popoverContent }) : null
9770
+ ] })
9697
9771
  ] });
9698
9772
  };
9699
9773
 
@@ -9712,10 +9786,10 @@ var LinkListTitle = css71`
9712
9786
  `;
9713
9787
 
9714
9788
  // src/components/LinkList/LinkList.tsx
9715
- import { jsx as jsx93, jsxs as jsxs60 } from "@emotion/react/jsx-runtime";
9789
+ import { jsx as jsx94, jsxs as jsxs61 } from "@emotion/react/jsx-runtime";
9716
9790
  var LinkList = ({ title, children, ...props }) => {
9717
- return /* @__PURE__ */ jsxs60("div", { css: LinkListContainer, ...props, children: [
9718
- /* @__PURE__ */ jsx93(Heading2, { level: 3, css: LinkListTitle, withMarginBottom: false, children: title }),
9791
+ return /* @__PURE__ */ jsxs61("div", { css: LinkListContainer, ...props, children: [
9792
+ /* @__PURE__ */ jsx94(Heading2, { level: 3, css: LinkListTitle, withMarginBottom: false, children: title }),
9719
9793
  children
9720
9794
  ] });
9721
9795
  };
@@ -9751,10 +9825,10 @@ var ScrollableListInner = css72`
9751
9825
  `;
9752
9826
 
9753
9827
  // src/components/List/ScrollableList.tsx
9754
- import { jsx as jsx94, jsxs as jsxs61 } from "@emotion/react/jsx-runtime";
9828
+ import { jsx as jsx95, jsxs as jsxs62 } from "@emotion/react/jsx-runtime";
9755
9829
  var ScrollableList = ({ label, children, ...props }) => {
9756
- return /* @__PURE__ */ jsxs61("div", { css: [ScrollableListContainer, scrollbarStyles], ...props, children: [
9757
- label ? /* @__PURE__ */ jsx94(
9830
+ return /* @__PURE__ */ jsxs62("div", { css: [ScrollableListContainer, scrollbarStyles], ...props, children: [
9831
+ label ? /* @__PURE__ */ jsx95(
9758
9832
  "span",
9759
9833
  {
9760
9834
  css: css73`
@@ -9763,7 +9837,7 @@ var ScrollableList = ({ label, children, ...props }) => {
9763
9837
  children: label
9764
9838
  }
9765
9839
  ) : null,
9766
- /* @__PURE__ */ jsx94("div", { css: [ScrollableListInner, scrollbarStyles], children })
9840
+ /* @__PURE__ */ jsx95("div", { css: [ScrollableListInner, scrollbarStyles], children })
9767
9841
  ] });
9768
9842
  };
9769
9843
 
@@ -9835,7 +9909,7 @@ var ScrollableListIconVisible = css74`
9835
9909
  `;
9836
9910
 
9837
9911
  // src/components/List/ScrollableListInputItem.tsx
9838
- import { jsx as jsx95, jsxs as jsxs62 } from "@emotion/react/jsx-runtime";
9912
+ import { jsx as jsx96, jsxs as jsxs63 } from "@emotion/react/jsx-runtime";
9839
9913
  var ScrollableListInputItem = ({
9840
9914
  label,
9841
9915
  icon,
@@ -9845,7 +9919,7 @@ var ScrollableListInputItem = ({
9845
9919
  labelTestId,
9846
9920
  ...props
9847
9921
  }) => {
9848
- return /* @__PURE__ */ jsx95(
9922
+ return /* @__PURE__ */ jsx96(
9849
9923
  "div",
9850
9924
  {
9851
9925
  css: [
@@ -9854,13 +9928,13 @@ var ScrollableListInputItem = ({
9854
9928
  active2 ? ScrollableListItemActive : void 0
9855
9929
  ],
9856
9930
  ...props,
9857
- children: /* @__PURE__ */ jsxs62("label", { "data-testid": labelTestId, css: ScrollableListInputLabel, children: [
9858
- /* @__PURE__ */ jsxs62("span", { css: ScrollableListInputText, children: [
9931
+ children: /* @__PURE__ */ jsxs63("label", { "data-testid": labelTestId, css: ScrollableListInputLabel, children: [
9932
+ /* @__PURE__ */ jsxs63("span", { css: ScrollableListInputText, children: [
9859
9933
  icon,
9860
9934
  label
9861
9935
  ] }),
9862
- /* @__PURE__ */ jsx95("div", { css: ScrollableListHiddenInput, children }),
9863
- /* @__PURE__ */ jsx95(
9936
+ /* @__PURE__ */ jsx96("div", { css: ScrollableListHiddenInput, children }),
9937
+ /* @__PURE__ */ jsx96(
9864
9938
  Icon,
9865
9939
  {
9866
9940
  icon: CgCheck3,
@@ -9878,7 +9952,7 @@ var ScrollableListInputItem = ({
9878
9952
 
9879
9953
  // src/components/List/ScrollableListItem.tsx
9880
9954
  import { CgCheck as CgCheck4 } from "@react-icons/all-files/cg/CgCheck";
9881
- import { jsx as jsx96, jsxs as jsxs63 } from "@emotion/react/jsx-runtime";
9955
+ import { jsx as jsx97, jsxs as jsxs64 } from "@emotion/react/jsx-runtime";
9882
9956
  var ScrollableListItem = ({
9883
9957
  buttonText,
9884
9958
  icon,
@@ -9886,7 +9960,7 @@ var ScrollableListItem = ({
9886
9960
  disableShadow,
9887
9961
  ...props
9888
9962
  }) => {
9889
- return /* @__PURE__ */ jsx96(
9963
+ return /* @__PURE__ */ jsx97(
9890
9964
  "div",
9891
9965
  {
9892
9966
  css: [
@@ -9894,12 +9968,12 @@ var ScrollableListItem = ({
9894
9968
  disableShadow ? void 0 : ScrollableListItemShadow,
9895
9969
  active2 ? ScrollableListItemActive : void 0
9896
9970
  ],
9897
- children: /* @__PURE__ */ jsxs63("button", { css: ScrollableListItemBtn, type: "button", ...props, children: [
9898
- /* @__PURE__ */ jsxs63(HorizontalRhythm, { gap: "xs", align: "center", children: [
9971
+ children: /* @__PURE__ */ jsxs64("button", { css: ScrollableListItemBtn, type: "button", ...props, children: [
9972
+ /* @__PURE__ */ jsxs64(HorizontalRhythm, { gap: "xs", align: "center", children: [
9899
9973
  icon,
9900
- /* @__PURE__ */ jsx96("span", { children: buttonText })
9974
+ /* @__PURE__ */ jsx97("span", { children: buttonText })
9901
9975
  ] }),
9902
- /* @__PURE__ */ jsx96(
9976
+ /* @__PURE__ */ jsx97(
9903
9977
  Icon,
9904
9978
  {
9905
9979
  icon: CgCheck4,
@@ -9966,7 +10040,7 @@ function loadingDot(size, backgroundColor) {
9966
10040
  }
9967
10041
 
9968
10042
  // src/components/LoadingIndicator/LoadingIndicator.tsx
9969
- import { jsx as jsx97, jsxs as jsxs64 } from "@emotion/react/jsx-runtime";
10043
+ import { jsx as jsx98, jsxs as jsxs65 } from "@emotion/react/jsx-runtime";
9970
10044
  var cssColorMap = {
9971
10045
  gray: "var(--gray-700)",
9972
10046
  "accent-alt": "var(--accent-alt-dark)"
@@ -9974,10 +10048,10 @@ var cssColorMap = {
9974
10048
  var LoadingIndicator = ({ size = "lg", color = "gray", ...props }) => {
9975
10049
  const cssColor = cssColorMap[color];
9976
10050
  const dotStyle = loadingDot(size, cssColor);
9977
- return /* @__PURE__ */ jsxs64("div", { role: "alert", css: loader, "data-testid": "loading-indicator", ...props, children: [
9978
- /* @__PURE__ */ jsx97("span", { css: dotStyle }),
9979
- /* @__PURE__ */ jsx97("span", { css: dotStyle }),
9980
- /* @__PURE__ */ jsx97("span", { css: dotStyle })
10051
+ return /* @__PURE__ */ jsxs65("div", { role: "alert", css: loader, "data-testid": "loading-indicator", ...props, children: [
10052
+ /* @__PURE__ */ jsx98("span", { css: dotStyle }),
10053
+ /* @__PURE__ */ jsx98("span", { css: dotStyle }),
10054
+ /* @__PURE__ */ jsx98("span", { css: dotStyle })
9981
10055
  ] });
9982
10056
  };
9983
10057
 
@@ -10202,7 +10276,7 @@ var loaderAnimationContainer = css76`
10202
10276
  `;
10203
10277
 
10204
10278
  // src/components/LoadingOverlay/LoadingOverlay.tsx
10205
- import { jsx as jsx98, jsxs as jsxs65 } from "@emotion/react/jsx-runtime";
10279
+ import { jsx as jsx99, jsxs as jsxs66 } from "@emotion/react/jsx-runtime";
10206
10280
  var LoadingOverlay = ({
10207
10281
  isActive,
10208
10282
  statusMessage,
@@ -10214,7 +10288,7 @@ var LoadingOverlay = ({
10214
10288
  children,
10215
10289
  position = "absolute"
10216
10290
  }) => {
10217
- return /* @__PURE__ */ jsxs65(
10291
+ return /* @__PURE__ */ jsxs66(
10218
10292
  "div",
10219
10293
  {
10220
10294
  role: "alert",
@@ -10227,11 +10301,11 @@ var LoadingOverlay = ({
10227
10301
  "aria-hidden": !isActive,
10228
10302
  "aria-busy": isActive && !isPaused,
10229
10303
  children: [
10230
- /* @__PURE__ */ jsx98("div", { css: loadingOverlayBackground(overlayBackgroundColor) }),
10231
- /* @__PURE__ */ jsx98("div", { css: { position: "relative", maxWidth: "100%", margin: isTopAligned ? "0" : "auto" }, children: /* @__PURE__ */ jsxs65("div", { css: loadingOverlayBody, children: [
10232
- /* @__PURE__ */ jsx98(LoadingAnimation, { label: "Loading...", isPaused, width: loaderSize }),
10233
- statusMessage ? /* @__PURE__ */ jsx98("div", { css: loadingOverlayMessage, children: statusMessage }) : null,
10234
- /* @__PURE__ */ jsx98("div", { css: { width: "100%", marginTop: "var(--spacing-md)" }, children })
10304
+ /* @__PURE__ */ jsx99("div", { css: loadingOverlayBackground(overlayBackgroundColor) }),
10305
+ /* @__PURE__ */ jsx99("div", { css: { position: "relative", maxWidth: "100%", margin: isTopAligned ? "0" : "auto" }, children: /* @__PURE__ */ jsxs66("div", { css: loadingOverlayBody, children: [
10306
+ /* @__PURE__ */ jsx99(LoadingAnimation, { label: "Loading...", isPaused, width: loaderSize }),
10307
+ statusMessage ? /* @__PURE__ */ jsx99("div", { css: loadingOverlayMessage, children: statusMessage }) : null,
10308
+ /* @__PURE__ */ jsx99("div", { css: { width: "100%", marginTop: "var(--spacing-md)" }, children })
10235
10309
  ] }) })
10236
10310
  ]
10237
10311
  }
@@ -10243,7 +10317,7 @@ var LoadingAnimation = ({
10243
10317
  css: css110,
10244
10318
  isPaused
10245
10319
  }) => {
10246
- return /* @__PURE__ */ jsxs65(
10320
+ return /* @__PURE__ */ jsxs66(
10247
10321
  "div",
10248
10322
  {
10249
10323
  "aria-label": label,
@@ -10254,38 +10328,38 @@ var LoadingAnimation = ({
10254
10328
  css: [loaderAnimationContainer, css110],
10255
10329
  className: `loader-container${isPaused ? " paused" : ""}`,
10256
10330
  children: [
10257
- /* @__PURE__ */ jsxs65("div", { className: "bottom-cubes", children: [
10258
- /* @__PURE__ */ jsxs65("div", { className: "cube cube-1 bottom-cube", children: [
10259
- /* @__PURE__ */ jsx98("div", { className: "face left" }),
10260
- /* @__PURE__ */ jsx98("div", { className: "face right" }),
10261
- /* @__PURE__ */ jsx98("div", { className: "face top" })
10331
+ /* @__PURE__ */ jsxs66("div", { className: "bottom-cubes", children: [
10332
+ /* @__PURE__ */ jsxs66("div", { className: "cube cube-1 bottom-cube", children: [
10333
+ /* @__PURE__ */ jsx99("div", { className: "face left" }),
10334
+ /* @__PURE__ */ jsx99("div", { className: "face right" }),
10335
+ /* @__PURE__ */ jsx99("div", { className: "face top" })
10262
10336
  ] }),
10263
- /* @__PURE__ */ jsxs65("div", { className: "cube cube-2 bottom-cube", children: [
10264
- /* @__PURE__ */ jsx98("div", { className: "face left" }),
10265
- /* @__PURE__ */ jsx98("div", { className: "face right" }),
10266
- /* @__PURE__ */ jsx98("div", { className: "face top" })
10337
+ /* @__PURE__ */ jsxs66("div", { className: "cube cube-2 bottom-cube", children: [
10338
+ /* @__PURE__ */ jsx99("div", { className: "face left" }),
10339
+ /* @__PURE__ */ jsx99("div", { className: "face right" }),
10340
+ /* @__PURE__ */ jsx99("div", { className: "face top" })
10267
10341
  ] }),
10268
- /* @__PURE__ */ jsxs65("div", { className: "cube cube-3 bottom-cube", children: [
10269
- /* @__PURE__ */ jsx98("div", { className: "face left" }),
10270
- /* @__PURE__ */ jsx98("div", { className: "face right" }),
10271
- /* @__PURE__ */ jsx98("div", { className: "face top" })
10342
+ /* @__PURE__ */ jsxs66("div", { className: "cube cube-3 bottom-cube", children: [
10343
+ /* @__PURE__ */ jsx99("div", { className: "face left" }),
10344
+ /* @__PURE__ */ jsx99("div", { className: "face right" }),
10345
+ /* @__PURE__ */ jsx99("div", { className: "face top" })
10272
10346
  ] })
10273
10347
  ] }),
10274
- /* @__PURE__ */ jsxs65("div", { className: "top-cubes", children: [
10275
- /* @__PURE__ */ jsxs65("div", { className: "cube cube-1", children: [
10276
- /* @__PURE__ */ jsx98("div", { className: "face left" }),
10277
- /* @__PURE__ */ jsx98("div", { className: "face right" }),
10278
- /* @__PURE__ */ jsx98("div", { className: "face top" })
10348
+ /* @__PURE__ */ jsxs66("div", { className: "top-cubes", children: [
10349
+ /* @__PURE__ */ jsxs66("div", { className: "cube cube-1", children: [
10350
+ /* @__PURE__ */ jsx99("div", { className: "face left" }),
10351
+ /* @__PURE__ */ jsx99("div", { className: "face right" }),
10352
+ /* @__PURE__ */ jsx99("div", { className: "face top" })
10279
10353
  ] }),
10280
- /* @__PURE__ */ jsxs65("div", { className: "cube cube-2", children: [
10281
- /* @__PURE__ */ jsx98("div", { className: "face left" }),
10282
- /* @__PURE__ */ jsx98("div", { className: "face right" }),
10283
- /* @__PURE__ */ jsx98("div", { className: "face top" })
10354
+ /* @__PURE__ */ jsxs66("div", { className: "cube cube-2", children: [
10355
+ /* @__PURE__ */ jsx99("div", { className: "face left" }),
10356
+ /* @__PURE__ */ jsx99("div", { className: "face right" }),
10357
+ /* @__PURE__ */ jsx99("div", { className: "face top" })
10284
10358
  ] }),
10285
- /* @__PURE__ */ jsxs65("div", { className: "cube cube-3", children: [
10286
- /* @__PURE__ */ jsx98("div", { className: "face left" }),
10287
- /* @__PURE__ */ jsx98("div", { className: "face right" }),
10288
- /* @__PURE__ */ jsx98("div", { className: "face top" })
10359
+ /* @__PURE__ */ jsxs66("div", { className: "cube cube-3", children: [
10360
+ /* @__PURE__ */ jsx99("div", { className: "face left" }),
10361
+ /* @__PURE__ */ jsx99("div", { className: "face right" }),
10362
+ /* @__PURE__ */ jsx99("div", { className: "face top" })
10289
10363
  ] })
10290
10364
  ] })
10291
10365
  ]
@@ -10293,7 +10367,7 @@ var LoadingAnimation = ({
10293
10367
  );
10294
10368
  };
10295
10369
  var LoadingIcon = ({ height, width, ...props }) => {
10296
- return /* @__PURE__ */ jsx98(
10370
+ return /* @__PURE__ */ jsx99(
10297
10371
  "svg",
10298
10372
  {
10299
10373
  viewBox: "0 0 38 38",
@@ -10303,9 +10377,9 @@ var LoadingIcon = ({ height, width, ...props }) => {
10303
10377
  stroke: "currentColor",
10304
10378
  ...props,
10305
10379
  "data-testid": "loading-icon",
10306
- children: /* @__PURE__ */ jsx98("g", { fill: "none", fillRule: "evenodd", children: /* @__PURE__ */ jsxs65("g", { transform: "translate(1 1)", strokeWidth: "2", children: [
10307
- /* @__PURE__ */ jsx98("circle", { strokeOpacity: ".25", cx: "18", cy: "18", r: "18" }),
10308
- /* @__PURE__ */ jsx98("path", { d: "M36 18c0-9.94-8.06-18-18-18", transform: "rotate(166.645 18 18)", children: /* @__PURE__ */ jsx98(
10380
+ children: /* @__PURE__ */ jsx99("g", { fill: "none", fillRule: "evenodd", children: /* @__PURE__ */ jsxs66("g", { transform: "translate(1 1)", strokeWidth: "2", children: [
10381
+ /* @__PURE__ */ jsx99("circle", { strokeOpacity: ".25", cx: "18", cy: "18", r: "18" }),
10382
+ /* @__PURE__ */ jsx99("path", { d: "M36 18c0-9.94-8.06-18-18-18", transform: "rotate(166.645 18 18)", children: /* @__PURE__ */ jsx99(
10309
10383
  "animateTransform",
10310
10384
  {
10311
10385
  attributeName: "transform",
@@ -10324,7 +10398,7 @@ var LoadingIcon = ({ height, width, ...props }) => {
10324
10398
  // src/components/Modal/Modal.tsx
10325
10399
  import { PortalContext } from "@ariakit/react";
10326
10400
  import { CgClose as CgClose4 } from "@react-icons/all-files/cg/CgClose";
10327
- import React17, { useEffect as useEffect12, useRef as useRef7 } from "react";
10401
+ import React17, { useEffect as useEffect13, useRef as useRef7 } from "react";
10328
10402
 
10329
10403
  // src/components/Modal/Modal.styles.ts
10330
10404
  import { css as css77 } from "@emotion/react";
@@ -10411,7 +10485,7 @@ var modalDialogInnerStyles = css77`
10411
10485
  `;
10412
10486
 
10413
10487
  // src/components/Modal/Modal.tsx
10414
- import { jsx as jsx99, jsxs as jsxs66 } from "@emotion/react/jsx-runtime";
10488
+ import { jsx as jsx100, jsxs as jsxs67 } from "@emotion/react/jsx-runtime";
10415
10489
  var defaultModalWidth = "75rem";
10416
10490
  var defaultModalHeight = "51rem";
10417
10491
  var Modal = React17.forwardRef(
@@ -10441,7 +10515,7 @@ var Modal = React17.forwardRef(
10441
10515
  },
10442
10516
  shortcut: "escape"
10443
10517
  });
10444
- useEffect12(() => {
10518
+ useEffect13(() => {
10445
10519
  var _a;
10446
10520
  if (!document.contains(dialogRef.current)) {
10447
10521
  console.warn(
@@ -10455,7 +10529,7 @@ var Modal = React17.forwardRef(
10455
10529
  (_a2 = dialogRef.current) == null ? void 0 : _a2.close();
10456
10530
  };
10457
10531
  }, []);
10458
- return /* @__PURE__ */ jsx99(
10532
+ return /* @__PURE__ */ jsx100(
10459
10533
  "dialog",
10460
10534
  {
10461
10535
  ref: (element) => {
@@ -10493,7 +10567,7 @@ var Modal = React17.forwardRef(
10493
10567
  e.preventDefault();
10494
10568
  },
10495
10569
  ...modalProps,
10496
- children: /* @__PURE__ */ jsx99(PortalContext.Provider, { value: dialogRef.current, children: /* @__PURE__ */ jsxs66(
10570
+ children: /* @__PURE__ */ jsx100(PortalContext.Provider, { value: dialogRef.current, children: /* @__PURE__ */ jsxs67(
10497
10571
  "div",
10498
10572
  {
10499
10573
  css: [modalInnerStyles, { height: height === "auto" ? "auto" : "100%" }],
@@ -10502,9 +10576,9 @@ var Modal = React17.forwardRef(
10502
10576
  mouseDownInsideModal.current = true;
10503
10577
  },
10504
10578
  children: [
10505
- header2 || onRequestClose ? /* @__PURE__ */ jsxs66("div", { css: modalHeaderStyles, children: [
10506
- header2 ? /* @__PURE__ */ jsx99("div", { css: modalHeaderHeaderStyles, children: header2 }) : null,
10507
- onRequestClose ? /* @__PURE__ */ jsx99(
10579
+ header2 || onRequestClose ? /* @__PURE__ */ jsxs67("div", { css: modalHeaderStyles, children: [
10580
+ header2 ? /* @__PURE__ */ jsx100("div", { css: modalHeaderHeaderStyles, children: header2 }) : null,
10581
+ onRequestClose ? /* @__PURE__ */ jsx100(
10508
10582
  Button,
10509
10583
  {
10510
10584
  type: "button",
@@ -10513,11 +10587,11 @@ var Modal = React17.forwardRef(
10513
10587
  title: "Close dialog",
10514
10588
  buttonType: "ghost",
10515
10589
  "data-testid": "close-dialog",
10516
- children: /* @__PURE__ */ jsx99(Icon, { icon: CgClose4, iconColor: "currentColor", size: 24 })
10590
+ children: /* @__PURE__ */ jsx100(Icon, { icon: CgClose4, iconColor: "currentColor", size: 24 })
10517
10591
  }
10518
10592
  ) : null
10519
10593
  ] }) : null,
10520
- /* @__PURE__ */ jsx99(
10594
+ /* @__PURE__ */ jsx100(
10521
10595
  "div",
10522
10596
  {
10523
10597
  css: [
@@ -10529,7 +10603,7 @@ var Modal = React17.forwardRef(
10529
10603
  children
10530
10604
  }
10531
10605
  ),
10532
- buttonGroup ? /* @__PURE__ */ jsx99(HorizontalRhythm, { children: buttonGroup }) : null
10606
+ buttonGroup ? /* @__PURE__ */ jsx100(HorizontalRhythm, { children: buttonGroup }) : null
10533
10607
  ]
10534
10608
  }
10535
10609
  ) })
@@ -10541,10 +10615,10 @@ Modal.displayName = "Modal";
10541
10615
 
10542
10616
  // src/components/Modal/ModalDialog.tsx
10543
10617
  import { forwardRef as forwardRef18 } from "react";
10544
- import { jsx as jsx100, jsxs as jsxs67 } from "@emotion/react/jsx-runtime";
10618
+ import { jsx as jsx101, jsxs as jsxs68 } from "@emotion/react/jsx-runtime";
10545
10619
  var ModalDialog = forwardRef18(
10546
10620
  ({ header: header2, buttonGroup, modalSize = "lg", children, height = "auto", onRequestClose, ...props }, ref) => {
10547
- return /* @__PURE__ */ jsx100(
10621
+ return /* @__PURE__ */ jsx101(
10548
10622
  Modal,
10549
10623
  {
10550
10624
  ...props,
@@ -10556,10 +10630,10 @@ var ModalDialog = forwardRef18(
10556
10630
  withoutContentPadding: true,
10557
10631
  css: modalDialogInnerStyles,
10558
10632
  width: "",
10559
- children: /* @__PURE__ */ jsxs67(VerticalRhythm, { css: modalDialogWrapper(Boolean(onRequestClose)), children: [
10560
- /* @__PURE__ */ jsx100("div", { css: modalHeaderStyles, children: header2 }),
10561
- /* @__PURE__ */ jsx100("div", { css: { flex: 1 }, children }),
10562
- /* @__PURE__ */ jsx100(HorizontalRhythm, { children: buttonGroup })
10633
+ children: /* @__PURE__ */ jsxs68(VerticalRhythm, { css: modalDialogWrapper(Boolean(onRequestClose)), children: [
10634
+ /* @__PURE__ */ jsx101("div", { css: modalHeaderStyles, children: header2 }),
10635
+ /* @__PURE__ */ jsx101("div", { css: { flex: 1 }, children }),
10636
+ /* @__PURE__ */ jsx101(HorizontalRhythm, { children: buttonGroup })
10563
10637
  ] })
10564
10638
  }
10565
10639
  );
@@ -10579,10 +10653,10 @@ var ObjectGridContainer = (gridCount) => css78`
10579
10653
  `;
10580
10654
 
10581
10655
  // src/components/Objects/ObjectGridContainer.tsx
10582
- import { jsx as jsx101 } from "@emotion/react/jsx-runtime";
10656
+ import { jsx as jsx102 } from "@emotion/react/jsx-runtime";
10583
10657
  var ObjectGridContainer2 = forwardRef19(
10584
10658
  ({ gridCount = 3, children, ...props }, ref) => {
10585
- return /* @__PURE__ */ jsx101(
10659
+ return /* @__PURE__ */ jsx102(
10586
10660
  "div",
10587
10661
  {
10588
10662
  ref,
@@ -10667,7 +10741,7 @@ var ObjectGridItemSubtitle = css79`
10667
10741
  `;
10668
10742
 
10669
10743
  // src/components/Objects/ObjectGridItem.tsx
10670
- import { jsx as jsx102, jsxs as jsxs68 } from "@emotion/react/jsx-runtime";
10744
+ import { jsx as jsx103, jsxs as jsxs69 } from "@emotion/react/jsx-runtime";
10671
10745
  var ObjectGridItem2 = ({
10672
10746
  header: header2,
10673
10747
  cover,
@@ -10682,20 +10756,20 @@ var ObjectGridItem2 = ({
10682
10756
  const onStopPropagation = (e) => {
10683
10757
  e.stopPropagation();
10684
10758
  };
10685
- return /* @__PURE__ */ jsxs68(
10759
+ return /* @__PURE__ */ jsxs69(
10686
10760
  "div",
10687
10761
  {
10688
10762
  css: [ObjectGridItem, props.onClick ? ObjectGridWithOnClick : void 0],
10689
10763
  "aria-selected": isSelected,
10690
10764
  ...props,
10691
10765
  children: [
10692
- /* @__PURE__ */ jsx102("div", { css: ObjectGridItemMediaWrapper, children: /* @__PURE__ */ jsx102("div", { css: ObjectGridItemMediaInner, children: cover }) }),
10693
- /* @__PURE__ */ jsxs68("div", { css: ObjectGridItemContentWrapper, children: [
10694
- /* @__PURE__ */ jsxs68(VerticalRhythm, { gap: "0", css: ObjectGridItemInnerWrapper, children: [
10695
- /* @__PURE__ */ jsx102(HorizontalRhythm, { gap: "xs", align: "center", children: header2 }),
10696
- /* @__PURE__ */ jsx102("div", { css: ObjectGridItemSubtitle, children })
10766
+ /* @__PURE__ */ jsx103("div", { css: ObjectGridItemMediaWrapper, children: /* @__PURE__ */ jsx103("div", { css: ObjectGridItemMediaInner, children: cover }) }),
10767
+ /* @__PURE__ */ jsxs69("div", { css: ObjectGridItemContentWrapper, children: [
10768
+ /* @__PURE__ */ jsxs69(VerticalRhythm, { gap: "0", css: ObjectGridItemInnerWrapper, children: [
10769
+ /* @__PURE__ */ jsx103(HorizontalRhythm, { gap: "xs", align: "center", children: header2 }),
10770
+ /* @__PURE__ */ jsx103("div", { css: ObjectGridItemSubtitle, children })
10697
10771
  ] }),
10698
- /* @__PURE__ */ jsxs68(
10772
+ /* @__PURE__ */ jsxs69(
10699
10773
  HorizontalRhythm,
10700
10774
  {
10701
10775
  gap: "xs",
@@ -10704,10 +10778,10 @@ var ObjectGridItem2 = ({
10704
10778
  onClick: hasOnClick ? onStopPropagation : void 0,
10705
10779
  children: [
10706
10780
  rightSlot,
10707
- menuItems ? /* @__PURE__ */ jsx102(
10781
+ menuItems ? /* @__PURE__ */ jsx103(
10708
10782
  Menu,
10709
10783
  {
10710
- menuTrigger: /* @__PURE__ */ jsx102(MenuThreeDots, { "data-testid": menuTestId != null ? menuTestId : "object-grid-item-menu-btn" }),
10784
+ menuTrigger: /* @__PURE__ */ jsx103(MenuThreeDots, { "data-testid": menuTestId != null ? menuTestId : "object-grid-item-menu-btn" }),
10711
10785
  placement: "bottom-end",
10712
10786
  children: menuItems
10713
10787
  }
@@ -10801,11 +10875,11 @@ var CoverSelectedChip = css80`
10801
10875
  `;
10802
10876
 
10803
10877
  // src/components/Objects/ObjectGridItemCardCover.tsx
10804
- import { Fragment as Fragment10, jsx as jsx103, jsxs as jsxs69 } from "@emotion/react/jsx-runtime";
10878
+ import { Fragment as Fragment11, jsx as jsx104, jsxs as jsxs70 } from "@emotion/react/jsx-runtime";
10805
10879
  var ObjectGridItemCardCover = (props) => {
10806
10880
  if ("imageUrl" in props && props.imageUrl) {
10807
10881
  const { imageUrl, srcSet, alt } = props;
10808
- return /* @__PURE__ */ jsx103("div", { css: CoverContainer, children: /* @__PURE__ */ jsx103(
10882
+ return /* @__PURE__ */ jsx104("div", { css: CoverContainer, children: /* @__PURE__ */ jsx104(
10809
10883
  "img",
10810
10884
  {
10811
10885
  src: imageUrl,
@@ -10820,9 +10894,9 @@ var ObjectGridItemCardCover = (props) => {
10820
10894
  }
10821
10895
  if ("icon" in props && props.icon) {
10822
10896
  const { icon, iconColor } = props;
10823
- return /* @__PURE__ */ jsx103("div", { css: CoverContainer, children: /* @__PURE__ */ jsxs69("div", { css: CoverIconWrapper, "data-testid": "object-grid-item-thumbnail", children: [
10824
- /* @__PURE__ */ jsx103(Icon, { icon, iconColor: iconColor != null ? iconColor : "currentColor", css: CoverIconGhost }),
10825
- /* @__PURE__ */ jsx103(Icon, { icon, iconColor: iconColor != null ? iconColor : "currentColor", size: 48 })
10897
+ return /* @__PURE__ */ jsx104("div", { css: CoverContainer, children: /* @__PURE__ */ jsxs70("div", { css: CoverIconWrapper, "data-testid": "object-grid-item-thumbnail", children: [
10898
+ /* @__PURE__ */ jsx104(Icon, { icon, iconColor: iconColor != null ? iconColor : "currentColor", css: CoverIconGhost }),
10899
+ /* @__PURE__ */ jsx104(Icon, { icon, iconColor: iconColor != null ? iconColor : "currentColor", size: 48 })
10826
10900
  ] }) });
10827
10901
  }
10828
10902
  };
@@ -10833,12 +10907,12 @@ var ObjectGridItemCover = ({
10833
10907
  coverSlotBottomRight,
10834
10908
  ...props
10835
10909
  }) => {
10836
- return /* @__PURE__ */ jsxs69(Fragment10, { children: [
10837
- coverSlotLeft ? /* @__PURE__ */ jsx103("div", { css: [CoverSlot, CoverSlotLeft], children: coverSlotLeft }) : null,
10838
- /* @__PURE__ */ jsx103(ObjectGridItemCardCover, { ...props }),
10839
- coverSlotRight ? /* @__PURE__ */ jsx103("div", { css: [CoverSlot, CoverSlotRight], children: coverSlotRight }) : null,
10840
- coverSlotBottomLeft ? /* @__PURE__ */ jsx103("div", { css: [CoverSlotBottom, CoverSlotBottomLeft], children: coverSlotBottomLeft }) : null,
10841
- coverSlotBottomRight ? /* @__PURE__ */ jsx103("div", { css: [CoverSlotBottom, CoverSlotBottomRight], children: coverSlotBottomRight }) : null
10910
+ return /* @__PURE__ */ jsxs70(Fragment11, { children: [
10911
+ coverSlotLeft ? /* @__PURE__ */ jsx104("div", { css: [CoverSlot, CoverSlotLeft], children: coverSlotLeft }) : null,
10912
+ /* @__PURE__ */ jsx104(ObjectGridItemCardCover, { ...props }),
10913
+ coverSlotRight ? /* @__PURE__ */ jsx104("div", { css: [CoverSlot, CoverSlotRight], children: coverSlotRight }) : null,
10914
+ coverSlotBottomLeft ? /* @__PURE__ */ jsx104("div", { css: [CoverSlotBottom, CoverSlotBottomLeft], children: coverSlotBottomLeft }) : null,
10915
+ coverSlotBottomRight ? /* @__PURE__ */ jsx104("div", { css: [CoverSlotBottom, CoverSlotBottomRight], children: coverSlotBottomRight }) : null
10842
10916
  ] });
10843
10917
  };
10844
10918
  var ObjectGridItemCoverButton = ({
@@ -10848,7 +10922,7 @@ var ObjectGridItemCoverButton = ({
10848
10922
  selectedText = "selected",
10849
10923
  ...props
10850
10924
  }) => {
10851
- return /* @__PURE__ */ jsx103(
10925
+ return /* @__PURE__ */ jsx104(
10852
10926
  "button",
10853
10927
  {
10854
10928
  type: "button",
@@ -10858,11 +10932,11 @@ var ObjectGridItemCoverButton = ({
10858
10932
  onSelection(id);
10859
10933
  },
10860
10934
  "aria-selected": isSelected,
10861
- children: /* @__PURE__ */ jsx103(
10935
+ children: /* @__PURE__ */ jsx104(
10862
10936
  ObjectGridItemCover,
10863
10937
  {
10864
10938
  ...props,
10865
- coverSlotBottomRight: isSelected ? /* @__PURE__ */ jsx103("div", { css: CoverSelectedChip, children: /* @__PURE__ */ jsx103(Chip, { text: selectedText, size: "xs", theme: "accent-dark" }) }) : null
10939
+ coverSlotBottomRight: isSelected ? /* @__PURE__ */ jsx104("div", { css: CoverSelectedChip, children: /* @__PURE__ */ jsx104(Chip, { text: selectedText, size: "xs", theme: "accent-dark" }) }) : null
10866
10940
  }
10867
10941
  )
10868
10942
  }
@@ -10870,7 +10944,7 @@ var ObjectGridItemCoverButton = ({
10870
10944
  };
10871
10945
 
10872
10946
  // src/components/Objects/ObjectGridItemHeading.tsx
10873
- import { useEffect as useEffect13, useRef as useRef8, useState as useState12 } from "react";
10947
+ import { useEffect as useEffect14, useRef as useRef8, useState as useState12 } from "react";
10874
10948
 
10875
10949
  // src/components/Objects/styles/ObjectGridItemHeading.styles.ts
10876
10950
  import { css as css81 } from "@emotion/react";
@@ -10888,7 +10962,7 @@ var PopoverContent = css81`
10888
10962
  `;
10889
10963
 
10890
10964
  // src/components/Objects/ObjectGridItemHeading.tsx
10891
- import { jsx as jsx104, jsxs as jsxs70 } from "@emotion/react/jsx-runtime";
10965
+ import { jsx as jsx105, jsxs as jsxs71 } from "@emotion/react/jsx-runtime";
10892
10966
  var ObjectGridItemHeading2 = ({
10893
10967
  heading,
10894
10968
  beforeHeadingSlot,
@@ -10901,7 +10975,7 @@ var ObjectGridItemHeading2 = ({
10901
10975
  const onStopPropagation = (e) => {
10902
10976
  e.stopPropagation();
10903
10977
  };
10904
- useEffect13(() => {
10978
+ useEffect14(() => {
10905
10979
  const currentHeading = headingRef.current;
10906
10980
  const observer = new ResizeObserver((entries) => {
10907
10981
  for (const entry of entries) {
@@ -10918,15 +10992,15 @@ var ObjectGridItemHeading2 = ({
10918
10992
  }
10919
10993
  };
10920
10994
  }, []);
10921
- return /* @__PURE__ */ jsxs70(HorizontalRhythm, { align: "center", gap: "xs", css: { minWidth: 0 }, children: [
10922
- beforeHeadingSlot ? /* @__PURE__ */ jsx104(HorizontalRhythm, { gap: "xs", align: "center", onClick: onStopPropagation, children: beforeHeadingSlot }) : null,
10923
- /* @__PURE__ */ jsx104(Tooltip, { title: hasTruncation && tooltip ? tooltip : "", children: /* @__PURE__ */ jsx104("div", { role: "heading", css: ObjectGridItemHeading, ref: headingRef, ...props, children: heading }) }),
10924
- afterHeadingSlot ? /* @__PURE__ */ jsx104(HorizontalRhythm, { gap: "xs", align: "center", onClick: onStopPropagation, children: afterHeadingSlot }) : null
10995
+ return /* @__PURE__ */ jsxs71(HorizontalRhythm, { align: "center", gap: "xs", css: { minWidth: 0 }, children: [
10996
+ beforeHeadingSlot ? /* @__PURE__ */ jsx105(HorizontalRhythm, { gap: "xs", align: "center", onClick: onStopPropagation, children: beforeHeadingSlot }) : null,
10997
+ /* @__PURE__ */ jsx105(Tooltip, { title: hasTruncation && tooltip ? tooltip : "", children: /* @__PURE__ */ jsx105("div", { role: "heading", css: ObjectGridItemHeading, ref: headingRef, ...props, children: heading }) }),
10998
+ afterHeadingSlot ? /* @__PURE__ */ jsx105(HorizontalRhythm, { gap: "xs", align: "center", onClick: onStopPropagation, children: afterHeadingSlot }) : null
10925
10999
  ] });
10926
11000
  };
10927
11001
 
10928
11002
  // src/components/Objects/ObjectGridItemIconWithTooltip.tsx
10929
- import { jsx as jsx105 } from "@emotion/react/jsx-runtime";
11003
+ import { jsx as jsx106 } from "@emotion/react/jsx-runtime";
10930
11004
  var ObjectGridItemIconWithTooltip = ({
10931
11005
  tooltipTitle,
10932
11006
  placement = "bottom-start",
@@ -10934,7 +11008,7 @@ var ObjectGridItemIconWithTooltip = ({
10934
11008
  iconColor = "accent-dark",
10935
11009
  ...props
10936
11010
  }) => {
10937
- return /* @__PURE__ */ jsx105(Tooltip, { title: tooltipTitle, placement, ...props, css: { minWidth: "max-content" }, children: /* @__PURE__ */ jsx105("span", { css: { whiteSpace: "nowrap" }, children: /* @__PURE__ */ jsx105(Icon, { icon, iconColor, size: "1rem" }) }) });
11011
+ return /* @__PURE__ */ jsx106(Tooltip, { title: tooltipTitle, placement, ...props, css: { minWidth: "max-content" }, children: /* @__PURE__ */ jsx106("span", { css: { whiteSpace: "nowrap" }, children: /* @__PURE__ */ jsx106(Icon, { icon, iconColor, size: "1rem" }) }) });
10938
11012
  };
10939
11013
 
10940
11014
  // src/components/Objects/styles/ObjectGridItemLoadingSkeleton.styles.ts
@@ -10981,11 +11055,11 @@ var ObjectGridItemLoadingContentContainer = css82`
10981
11055
  `;
10982
11056
 
10983
11057
  // src/components/Objects/ObjectGridItemLoadingSkeleton.tsx
10984
- import { jsx as jsx106, jsxs as jsxs71 } from "@emotion/react/jsx-runtime";
11058
+ import { jsx as jsx107, jsxs as jsxs72 } from "@emotion/react/jsx-runtime";
10985
11059
  var ObjectGridItemLoadingSkeleton2 = () => {
10986
- return /* @__PURE__ */ jsxs71("div", { css: ObjectGridItemLoadingSkeleton, children: [
10987
- /* @__PURE__ */ jsx106("div", { css: ObjectGridItemLoadingImageWrapper, "data-testid": "object-grid-item-cover-skeleton", children: /* @__PURE__ */ jsx106("span", { css: ObjectGridItemLoadingImage, role: "presentation" }) }),
10988
- /* @__PURE__ */ jsxs71(
11060
+ return /* @__PURE__ */ jsxs72("div", { css: ObjectGridItemLoadingSkeleton, children: [
11061
+ /* @__PURE__ */ jsx107("div", { css: ObjectGridItemLoadingImageWrapper, "data-testid": "object-grid-item-cover-skeleton", children: /* @__PURE__ */ jsx107("span", { css: ObjectGridItemLoadingImage, role: "presentation" }) }),
11062
+ /* @__PURE__ */ jsxs72(
10989
11063
  HorizontalRhythm,
10990
11064
  {
10991
11065
  css: ObjectGridItemLoadingContentWrapper,
@@ -10993,13 +11067,13 @@ var ObjectGridItemLoadingSkeleton2 = () => {
10993
11067
  justify: "space-between",
10994
11068
  gap: "sm",
10995
11069
  children: [
10996
- /* @__PURE__ */ jsxs71(VerticalRhythm, { css: ObjectGridItemLoadingContentContainer, gap: "0", children: [
10997
- /* @__PURE__ */ jsx106(HorizontalRhythm, { gap: "xs", align: "center", children: /* @__PURE__ */ jsx106("span", { role: "presentation", css: ObjectGridItemLoadingText("18ch") }) }),
10998
- /* @__PURE__ */ jsx106("span", { role: "presentation", css: ObjectGridItemLoadingText("12ch") })
11070
+ /* @__PURE__ */ jsxs72(VerticalRhythm, { css: ObjectGridItemLoadingContentContainer, gap: "0", children: [
11071
+ /* @__PURE__ */ jsx107(HorizontalRhythm, { gap: "xs", align: "center", children: /* @__PURE__ */ jsx107("span", { role: "presentation", css: ObjectGridItemLoadingText("18ch") }) }),
11072
+ /* @__PURE__ */ jsx107("span", { role: "presentation", css: ObjectGridItemLoadingText("12ch") })
10999
11073
  ] }),
11000
- /* @__PURE__ */ jsxs71(HorizontalRhythm, { css: ObjectGridItemLoadingContentContainer, gap: "xs", justify: "flex-end", children: [
11001
- /* @__PURE__ */ jsx106("span", { role: "presentation", css: ObjectGridItemLoadingText("6ch") }),
11002
- /* @__PURE__ */ jsx106("span", { role: "presentation", css: ObjectGridItemLoadingText("24px") })
11074
+ /* @__PURE__ */ jsxs72(HorizontalRhythm, { css: ObjectGridItemLoadingContentContainer, gap: "xs", justify: "flex-end", children: [
11075
+ /* @__PURE__ */ jsx107("span", { role: "presentation", css: ObjectGridItemLoadingText("6ch") }),
11076
+ /* @__PURE__ */ jsx107("span", { role: "presentation", css: ObjectGridItemLoadingText("24px") })
11003
11077
  ] })
11004
11078
  ]
11005
11079
  }
@@ -11088,12 +11162,12 @@ var ObjectListItemHeadingWrapper = css83`
11088
11162
  `;
11089
11163
 
11090
11164
  // src/components/Objects/ObjectItemLoadingSkeleton.tsx
11091
- import { jsx as jsx107, jsxs as jsxs72 } from "@emotion/react/jsx-runtime";
11165
+ import { jsx as jsx108, jsxs as jsxs73 } from "@emotion/react/jsx-runtime";
11092
11166
  var ObjectItemLoadingSkeleton = ({
11093
11167
  showCover,
11094
11168
  renderAs = "single"
11095
11169
  }) => {
11096
- return /* @__PURE__ */ jsxs72(
11170
+ return /* @__PURE__ */ jsxs73(
11097
11171
  "div",
11098
11172
  {
11099
11173
  css: [
@@ -11103,10 +11177,10 @@ var ObjectItemLoadingSkeleton = ({
11103
11177
  }
11104
11178
  ],
11105
11179
  children: [
11106
- showCover ? /* @__PURE__ */ jsx107("div", { "data-testid": "object-list-item-cover-skeleton", children: /* @__PURE__ */ jsx107("span", { role: "presentation", css: ObjectListItemLoadingImage }) }) : null,
11107
- /* @__PURE__ */ jsx107(VerticalRhythm, { css: ObjectListItemLoadingInner, justify: "space-between", gap: "sm", children: /* @__PURE__ */ jsxs72(VerticalRhythm, { gap: "xs", children: [
11108
- /* @__PURE__ */ jsx107(HorizontalRhythm, { gap: "xs", align: "center", children: /* @__PURE__ */ jsx107("span", { role: "presentation", css: ObjectListItemLoadingText("30ch") }) }),
11109
- renderAs === "single" ? null : /* @__PURE__ */ jsx107("span", { role: "presentation", css: ObjectListItemLoadingText("20ch") })
11180
+ showCover ? /* @__PURE__ */ jsx108("div", { "data-testid": "object-list-item-cover-skeleton", children: /* @__PURE__ */ jsx108("span", { role: "presentation", css: ObjectListItemLoadingImage }) }) : null,
11181
+ /* @__PURE__ */ jsx108(VerticalRhythm, { css: ObjectListItemLoadingInner, justify: "space-between", gap: "sm", children: /* @__PURE__ */ jsxs73(VerticalRhythm, { gap: "xs", children: [
11182
+ /* @__PURE__ */ jsx108(HorizontalRhythm, { gap: "xs", align: "center", children: /* @__PURE__ */ jsx108("span", { role: "presentation", css: ObjectListItemLoadingText("30ch") }) }),
11183
+ renderAs === "single" ? null : /* @__PURE__ */ jsx108("span", { role: "presentation", css: ObjectListItemLoadingText("20ch") })
11110
11184
  ] }) })
11111
11185
  ]
11112
11186
  }
@@ -11114,7 +11188,7 @@ var ObjectItemLoadingSkeleton = ({
11114
11188
  };
11115
11189
 
11116
11190
  // src/components/Objects/ObjectListItem.tsx
11117
- import { jsx as jsx108, jsxs as jsxs73 } from "@emotion/react/jsx-runtime";
11191
+ import { jsx as jsx109, jsxs as jsxs74 } from "@emotion/react/jsx-runtime";
11118
11192
  var ObjectListItem2 = ({ minContainerQueryWidth = "34rem", ...props }) => {
11119
11193
  const {
11120
11194
  renderAs,
@@ -11127,7 +11201,7 @@ var ObjectListItem2 = ({ minContainerQueryWidth = "34rem", ...props }) => {
11127
11201
  portalElement,
11128
11202
  ...divProps
11129
11203
  } = props;
11130
- return /* @__PURE__ */ jsxs73(
11204
+ return /* @__PURE__ */ jsxs74(
11131
11205
  "div",
11132
11206
  {
11133
11207
  role: "listitem",
@@ -11136,8 +11210,8 @@ var ObjectListItem2 = ({ minContainerQueryWidth = "34rem", ...props }) => {
11136
11210
  "aria-selected": isSelected,
11137
11211
  ...divProps,
11138
11212
  children: [
11139
- /* @__PURE__ */ jsx108(HorizontalRhythm, { gap: "sm", align: "center", children: dragHandle }),
11140
- /* @__PURE__ */ jsxs73(
11213
+ /* @__PURE__ */ jsx109(HorizontalRhythm, { gap: "sm", align: "center", children: dragHandle }),
11214
+ /* @__PURE__ */ jsxs74(
11141
11215
  "div",
11142
11216
  {
11143
11217
  css: [
@@ -11147,15 +11221,15 @@ var ObjectListItem2 = ({ minContainerQueryWidth = "34rem", ...props }) => {
11147
11221
  }`
11148
11222
  ],
11149
11223
  children: [
11150
- cover ? /* @__PURE__ */ jsx108(HorizontalRhythm, { gap: "sm", align: "center", children: cover }) : null,
11151
- /* @__PURE__ */ jsxs73(
11224
+ cover ? /* @__PURE__ */ jsx109(HorizontalRhythm, { gap: "sm", align: "center", children: cover }) : null,
11225
+ /* @__PURE__ */ jsxs74(
11152
11226
  VerticalRhythm,
11153
11227
  {
11154
11228
  gap: "0",
11155
11229
  justify: renderAs === "multi" ? "flex-start" : "center",
11156
11230
  "data-testid": "title-container",
11157
11231
  children: [
11158
- /* @__PURE__ */ jsx108(
11232
+ /* @__PURE__ */ jsx109(
11159
11233
  HorizontalRhythm,
11160
11234
  {
11161
11235
  gap: "xs",
@@ -11168,14 +11242,14 @@ var ObjectListItem2 = ({ minContainerQueryWidth = "34rem", ...props }) => {
11168
11242
  ]
11169
11243
  }
11170
11244
  ),
11171
- /* @__PURE__ */ jsx108(HorizontalRhythm, { gap: "xs", align: renderAs === "multi" ? "flex-start" : "center", children: rightSlot })
11245
+ /* @__PURE__ */ jsx109(HorizontalRhythm, { gap: "xs", align: renderAs === "multi" ? "flex-start" : "center", children: rightSlot })
11172
11246
  ]
11173
11247
  }
11174
11248
  ),
11175
- menuItems ? /* @__PURE__ */ jsx108(HorizontalRhythm, { gap: "0", align: "flex-start", children: /* @__PURE__ */ jsx108(
11249
+ menuItems ? /* @__PURE__ */ jsx109(HorizontalRhythm, { gap: "0", align: "flex-start", children: /* @__PURE__ */ jsx109(
11176
11250
  Menu,
11177
11251
  {
11178
- menuTrigger: /* @__PURE__ */ jsx108(MenuThreeDots, { "data-testid": "object-list-item-menu-btn" }),
11252
+ menuTrigger: /* @__PURE__ */ jsx109(MenuThreeDots, { "data-testid": "object-list-item-menu-btn" }),
11179
11253
  placement: "bottom-end",
11180
11254
  portalElement,
11181
11255
  children: menuItems
@@ -11187,22 +11261,22 @@ var ObjectListItem2 = ({ minContainerQueryWidth = "34rem", ...props }) => {
11187
11261
  };
11188
11262
 
11189
11263
  // src/components/Objects/ObjectListItemContainer.tsx
11190
- import { jsx as jsx109 } from "@emotion/react/jsx-runtime";
11264
+ import { jsx as jsx110 } from "@emotion/react/jsx-runtime";
11191
11265
  var ObjectListItemContainer2 = ({ children, gap = "0", ...props }) => {
11192
- return /* @__PURE__ */ jsx109(VerticalRhythm, { gap, css: ObjectListItemContainer, role: "list", ...props, children });
11266
+ return /* @__PURE__ */ jsx110(VerticalRhythm, { gap, css: ObjectListItemContainer, role: "list", ...props, children });
11193
11267
  };
11194
11268
 
11195
11269
  // src/components/Objects/ObjectListItemCover.tsx
11196
- import { jsx as jsx110 } from "@emotion/react/jsx-runtime";
11270
+ import { jsx as jsx111 } from "@emotion/react/jsx-runtime";
11197
11271
  var ObjectListItemCover2 = ({
11198
11272
  imageUrl,
11199
11273
  noImageText = "Image not available",
11200
11274
  ...props
11201
11275
  }) => {
11202
11276
  if (!imageUrl) {
11203
- return /* @__PURE__ */ jsx110("div", { css: ObjectListItemCover, role: "presentation", "data-testid": "object-list-item-thumbnail", children: noImageText });
11277
+ return /* @__PURE__ */ jsx111("div", { css: ObjectListItemCover, role: "presentation", "data-testid": "object-list-item-thumbnail", children: noImageText });
11204
11278
  }
11205
- return /* @__PURE__ */ jsx110("div", { css: ObjectListItemCover, children: /* @__PURE__ */ jsx110(
11279
+ return /* @__PURE__ */ jsx111("div", { css: ObjectListItemCover, children: /* @__PURE__ */ jsx111(
11206
11280
  "img",
11207
11281
  {
11208
11282
  src: imageUrl,
@@ -11231,17 +11305,17 @@ var ObjectListItemHeadingAfterWrapper = css84`
11231
11305
  `;
11232
11306
 
11233
11307
  // src/components/Objects/ObjectListItemHeading.tsx
11234
- import { jsx as jsx111, jsxs as jsxs74 } from "@emotion/react/jsx-runtime";
11308
+ import { jsx as jsx112, jsxs as jsxs75 } from "@emotion/react/jsx-runtime";
11235
11309
  var ObjectListItemHeading2 = ({
11236
11310
  heading,
11237
11311
  beforeHeadingSlot,
11238
11312
  afterHeadingSlot,
11239
11313
  ...props
11240
11314
  }) => {
11241
- return /* @__PURE__ */ jsxs74("div", { css: ObjectListItemHeading, ...props, children: [
11242
- beforeHeadingSlot ? /* @__PURE__ */ jsx111(HorizontalRhythm, { gap: "xs", align: "center", children: beforeHeadingSlot }) : null,
11243
- /* @__PURE__ */ jsxs74(HorizontalRhythm, { css: ObjectListItemHeadingAfterWrapper, gap: "xs", align: "flex-start", children: [
11244
- /* @__PURE__ */ jsx111("div", { role: "heading", "data-testid": "reference-item-name", children: heading }),
11315
+ return /* @__PURE__ */ jsxs75("div", { css: ObjectListItemHeading, ...props, children: [
11316
+ beforeHeadingSlot ? /* @__PURE__ */ jsx112(HorizontalRhythm, { gap: "xs", align: "center", children: beforeHeadingSlot }) : null,
11317
+ /* @__PURE__ */ jsxs75(HorizontalRhythm, { css: ObjectListItemHeadingAfterWrapper, gap: "xs", align: "flex-start", children: [
11318
+ /* @__PURE__ */ jsx112("div", { role: "heading", "data-testid": "reference-item-name", children: heading }),
11245
11319
  afterHeadingSlot
11246
11320
  ] })
11247
11321
  ] });
@@ -11279,7 +11353,7 @@ var page = css85`
11279
11353
  `;
11280
11354
 
11281
11355
  // src/components/Pagination/Pagination.tsx
11282
- import { jsx as jsx112 } from "@emotion/react/jsx-runtime";
11356
+ import { jsx as jsx113 } from "@emotion/react/jsx-runtime";
11283
11357
  function Pagination({
11284
11358
  limit,
11285
11359
  offset,
@@ -11294,12 +11368,12 @@ function Pagination({
11294
11368
  if (pageCount <= 1) {
11295
11369
  return null;
11296
11370
  }
11297
- return /* @__PURE__ */ jsx112(
11371
+ return /* @__PURE__ */ jsx113(
11298
11372
  Paginate,
11299
11373
  {
11300
11374
  forcePage: currentPage,
11301
- previousLabel: /* @__PURE__ */ jsx112("div", { className: prevNextControls, children: "<" }),
11302
- nextLabel: /* @__PURE__ */ jsx112("div", { className: prevNextControls, children: ">" }),
11375
+ previousLabel: /* @__PURE__ */ jsx113("div", { className: prevNextControls, children: "<" }),
11376
+ nextLabel: /* @__PURE__ */ jsx113("div", { className: prevNextControls, children: ">" }),
11303
11377
  breakLabel: "...",
11304
11378
  pageCount,
11305
11379
  marginPagesDisplayed: 2,
@@ -11368,7 +11442,7 @@ var inputIconBtn = css86`
11368
11442
  `;
11369
11443
 
11370
11444
  // src/components/ParameterInputs/LabelLeadingIcon.tsx
11371
- import { jsx as jsx113, jsxs as jsxs75 } from "@emotion/react/jsx-runtime";
11445
+ import { jsx as jsx114, jsxs as jsxs76 } from "@emotion/react/jsx-runtime";
11372
11446
  var LabelLeadingIcon = ({
11373
11447
  icon,
11374
11448
  iconColor,
@@ -11379,7 +11453,7 @@ var LabelLeadingIcon = ({
11379
11453
  ...props
11380
11454
  }) => {
11381
11455
  const titleFr = title != null ? title : isLocked ? "Read-only pattern parameter" : "Click to connect to external content";
11382
- return /* @__PURE__ */ jsx113(Tooltip, { title: titleFr, children: /* @__PURE__ */ jsxs75(
11456
+ return /* @__PURE__ */ jsx114(Tooltip, { title: titleFr, children: /* @__PURE__ */ jsxs76(
11383
11457
  "button",
11384
11458
  {
11385
11459
  css: inputIconBtn,
@@ -11389,7 +11463,7 @@ var LabelLeadingIcon = ({
11389
11463
  ...props,
11390
11464
  "data-testid": "lock-button",
11391
11465
  children: [
11392
- /* @__PURE__ */ jsx113(
11466
+ /* @__PURE__ */ jsx114(
11393
11467
  Icon,
11394
11468
  {
11395
11469
  icon: isLocked ? "lock" : icon ? icon : "arrows-expand-down-right",
@@ -11425,12 +11499,12 @@ var ParameterDrawerHeaderTitle = css87`
11425
11499
  `;
11426
11500
 
11427
11501
  // src/components/ParameterInputs/ParameterDrawerHeader.tsx
11428
- import { jsx as jsx114, jsxs as jsxs76 } from "@emotion/react/jsx-runtime";
11502
+ import { jsx as jsx115, jsxs as jsxs77 } from "@emotion/react/jsx-runtime";
11429
11503
  var ParameterDrawerHeader = ({ title, iconBeforeTitle, children }) => {
11430
- return /* @__PURE__ */ jsxs76("div", { css: ParameterDrawerHeaderContainer, children: [
11431
- /* @__PURE__ */ jsxs76("header", { css: ParameterDrawerHeaderTitleGroup, children: [
11504
+ return /* @__PURE__ */ jsxs77("div", { css: ParameterDrawerHeaderContainer, children: [
11505
+ /* @__PURE__ */ jsxs77("header", { css: ParameterDrawerHeaderTitleGroup, children: [
11432
11506
  iconBeforeTitle,
11433
- /* @__PURE__ */ jsx114(Heading2, { level: 3, withMarginBottom: false, css: ParameterDrawerHeaderTitle, title, children: title })
11507
+ /* @__PURE__ */ jsx115(Heading2, { level: 3, withMarginBottom: false, css: ParameterDrawerHeaderTitle, title, children: title })
11434
11508
  ] }),
11435
11509
  children
11436
11510
  ] });
@@ -11460,11 +11534,11 @@ var fieldsetLegend2 = css88`
11460
11534
  `;
11461
11535
 
11462
11536
  // src/components/ParameterInputs/ParameterGroup.tsx
11463
- import { jsx as jsx115, jsxs as jsxs77 } from "@emotion/react/jsx-runtime";
11537
+ import { jsx as jsx116, jsxs as jsxs78 } from "@emotion/react/jsx-runtime";
11464
11538
  var ParameterGroup = forwardRef20(
11465
11539
  ({ legend, isDisabled, children, ...props }, ref) => {
11466
- return /* @__PURE__ */ jsxs77("fieldset", { css: fieldsetStyles, disabled: isDisabled, ref, ...props, children: [
11467
- /* @__PURE__ */ jsx115("legend", { css: fieldsetLegend2, children: legend }),
11540
+ return /* @__PURE__ */ jsxs78("fieldset", { css: fieldsetStyles, disabled: isDisabled, ref, ...props, children: [
11541
+ /* @__PURE__ */ jsx116("legend", { css: fieldsetLegend2, children: legend }),
11468
11542
  children
11469
11543
  ] });
11470
11544
  }
@@ -11515,32 +11589,32 @@ var previewModalImage = css89`
11515
11589
  `;
11516
11590
 
11517
11591
  // src/components/ParameterInputs/ParameterImagePreview.tsx
11518
- import { Fragment as Fragment11, jsx as jsx116, jsxs as jsxs78 } from "@emotion/react/jsx-runtime";
11592
+ import { Fragment as Fragment12, jsx as jsx117, jsxs as jsxs79 } from "@emotion/react/jsx-runtime";
11519
11593
  function ParameterImagePreview({ imageSrc }) {
11520
11594
  const [showModal, setShowModal] = useState13(false);
11521
- return imageSrc ? /* @__PURE__ */ jsxs78("div", { css: previewWrapper, children: [
11522
- /* @__PURE__ */ jsx116(PreviewImageModal, { open: showModal, imageSrc, onRequestClose: () => setShowModal(false) }),
11523
- /* @__PURE__ */ jsx116(
11595
+ return imageSrc ? /* @__PURE__ */ jsxs79("div", { css: previewWrapper, children: [
11596
+ /* @__PURE__ */ jsx117(PreviewImageModal, { open: showModal, imageSrc, onRequestClose: () => setShowModal(false) }),
11597
+ /* @__PURE__ */ jsx117(
11524
11598
  "button",
11525
11599
  {
11526
11600
  css: previewLink,
11527
11601
  onClick: () => {
11528
11602
  setShowModal(true);
11529
11603
  },
11530
- children: /* @__PURE__ */ jsx116(Image, { src: imageSrc, "data-testid": "parameter-image-preview" })
11604
+ children: /* @__PURE__ */ jsx117(Image, { src: imageSrc, "data-testid": "parameter-image-preview" })
11531
11605
  }
11532
11606
  )
11533
11607
  ] }) : null;
11534
11608
  }
11535
11609
  var PreviewImageModal = ({ open, onRequestClose, imageSrc }) => {
11536
- return open ? /* @__PURE__ */ jsx116(Fragment11, { children: createPortal2(
11537
- /* @__PURE__ */ jsx116(
11610
+ return open ? /* @__PURE__ */ jsx117(Fragment12, { children: createPortal2(
11611
+ /* @__PURE__ */ jsx117(
11538
11612
  Modal,
11539
11613
  {
11540
11614
  header: "Image Preview",
11541
11615
  onRequestClose,
11542
- buttonGroup: /* @__PURE__ */ jsx116(Button, { buttonType: "secondary", onClick: onRequestClose, children: "Ok" }),
11543
- children: /* @__PURE__ */ jsx116("div", { css: previewModalWrapper, children: /* @__PURE__ */ jsx116(Image, { src: imageSrc, css: previewModalImage, "data-testid": "parameter-image-preview" }) })
11616
+ buttonGroup: /* @__PURE__ */ jsx117(Button, { buttonType: "secondary", onClick: onRequestClose, children: "Ok" }),
11617
+ children: /* @__PURE__ */ jsx117("div", { css: previewModalWrapper, children: /* @__PURE__ */ jsx117(Image, { src: imageSrc, css: previewModalImage, "data-testid": "parameter-image-preview" }) })
11544
11618
  }
11545
11619
  ),
11546
11620
  document.body
@@ -11841,20 +11915,20 @@ var linkParameterIcon = css90`
11841
11915
  `;
11842
11916
 
11843
11917
  // src/components/ParameterInputs/ParameterLabel.tsx
11844
- import { jsx as jsx117 } from "@emotion/react/jsx-runtime";
11918
+ import { jsx as jsx118 } from "@emotion/react/jsx-runtime";
11845
11919
  var ParameterLabel = ({ id, asSpan, children, testId, ...props }) => {
11846
- return !asSpan ? /* @__PURE__ */ jsx117("label", { ...props, htmlFor: id, css: labelText2, "data-testid": testId, children }) : /* @__PURE__ */ jsx117("span", { "aria-labelledby": id, css: labelText2, children });
11920
+ return !asSpan ? /* @__PURE__ */ jsx118("label", { ...props, htmlFor: id, css: labelText2, "data-testid": testId, children }) : /* @__PURE__ */ jsx118("span", { "aria-labelledby": id, css: labelText2, children });
11847
11921
  };
11848
11922
 
11849
11923
  // src/components/ParameterInputs/ParameterMenuButton.tsx
11850
11924
  import { forwardRef as forwardRef21 } from "react";
11851
- import { jsx as jsx118 } from "@emotion/react/jsx-runtime";
11925
+ import { jsx as jsx119 } from "@emotion/react/jsx-runtime";
11852
11926
  var ParameterMenuButton = forwardRef21(
11853
11927
  ({ label, children }, ref) => {
11854
- return /* @__PURE__ */ jsx118(
11928
+ return /* @__PURE__ */ jsx119(
11855
11929
  Menu,
11856
11930
  {
11857
- menuTrigger: /* @__PURE__ */ jsx118(
11931
+ menuTrigger: /* @__PURE__ */ jsx119(
11858
11932
  "button",
11859
11933
  {
11860
11934
  className: "parameter-menu",
@@ -11862,7 +11936,7 @@ var ParameterMenuButton = forwardRef21(
11862
11936
  type: "button",
11863
11937
  "aria-label": `${label} options`,
11864
11938
  ref,
11865
- children: /* @__PURE__ */ jsx118(Icon, { icon: "more-alt", iconColor: "currentColor", size: "0.9rem" })
11939
+ children: /* @__PURE__ */ jsx119(Icon, { icon: "more-alt", iconColor: "currentColor", size: "0.9rem" })
11866
11940
  }
11867
11941
  ),
11868
11942
  children
@@ -11898,7 +11972,7 @@ var overrideMarker = css91`
11898
11972
  `;
11899
11973
 
11900
11974
  // src/components/ParameterInputs/ParameterShell.tsx
11901
- import { jsx as jsx119, jsxs as jsxs79 } from "@emotion/react/jsx-runtime";
11975
+ import { jsx as jsx120, jsxs as jsxs80 } from "@emotion/react/jsx-runtime";
11902
11976
  var extractParameterProps = (props) => {
11903
11977
  const {
11904
11978
  id,
@@ -11961,19 +12035,19 @@ var ParameterShell = ({
11961
12035
  const [manualErrorMessage, setManualErrorMessage] = useState14(void 0);
11962
12036
  const setErrorMessage = (message) => setManualErrorMessage(message);
11963
12037
  const errorMessaging = errorMessage || manualErrorMessage;
11964
- return /* @__PURE__ */ jsxs79("div", { css: inputContainer2, ...props, id, children: [
11965
- hiddenLabel || title ? null : /* @__PURE__ */ jsxs79(ParameterLabel, { id, css: labelText2, children: [
12038
+ return /* @__PURE__ */ jsxs80("div", { css: inputContainer2, ...props, id, children: [
12039
+ hiddenLabel || title ? null : /* @__PURE__ */ jsxs80(ParameterLabel, { id, css: labelText2, children: [
11966
12040
  labelLeadingIcon != null ? labelLeadingIcon : null,
11967
12041
  label,
11968
12042
  labelTrailingIcon != null ? labelTrailingIcon : null
11969
12043
  ] }),
11970
- !title ? null : /* @__PURE__ */ jsxs79(ParameterLabel, { id, asSpan: true, testId: "parameter-label", children: [
12044
+ !title ? null : /* @__PURE__ */ jsxs80(ParameterLabel, { id, asSpan: true, testId: "parameter-label", children: [
11971
12045
  labelLeadingIcon != null ? labelLeadingIcon : null,
11972
12046
  title,
11973
12047
  labelTrailingIcon != null ? labelTrailingIcon : null
11974
12048
  ] }),
11975
- /* @__PURE__ */ jsxs79("div", { css: inputWrapper, children: [
11976
- actionItems ? /* @__PURE__ */ jsx119(
12049
+ /* @__PURE__ */ jsxs80("div", { css: inputWrapper, children: [
12050
+ actionItems ? /* @__PURE__ */ jsx120(
11977
12051
  "div",
11978
12052
  {
11979
12053
  css: [
@@ -11986,8 +12060,8 @@ var ParameterShell = ({
11986
12060
  children: actionItems
11987
12061
  }
11988
12062
  ) : null,
11989
- menuItems ? /* @__PURE__ */ jsx119(ParameterMenuButton, { label: `${label} menu`, children: menuItems }) : null,
11990
- /* @__PURE__ */ jsx119(
12063
+ menuItems ? /* @__PURE__ */ jsx120(ParameterMenuButton, { label: `${label} menu`, children: menuItems }) : null,
12064
+ /* @__PURE__ */ jsx120(
11991
12065
  ParameterShellContext.Provider,
11992
12066
  {
11993
12067
  value: {
@@ -11997,14 +12071,14 @@ var ParameterShell = ({
11997
12071
  errorMessage: errorMessaging,
11998
12072
  handleManuallySetErrorMessage: (message) => setErrorMessage(message)
11999
12073
  },
12000
- children: isParameterGroup ? /* @__PURE__ */ jsx119("div", { style: { flexGrow: 1 }, children }) : /* @__PURE__ */ jsxs79(ParameterShellPlaceholder, { children: [
12074
+ children: isParameterGroup ? /* @__PURE__ */ jsx120("div", { style: { flexGrow: 1 }, children }) : /* @__PURE__ */ jsxs80(ParameterShellPlaceholder, { children: [
12001
12075
  children,
12002
- hasOverriddenValue && onResetOverriddenValue ? /* @__PURE__ */ jsx119(ParameterOverrideMarker, { onClick: onResetOverriddenValue }) : null
12076
+ hasOverriddenValue && onResetOverriddenValue ? /* @__PURE__ */ jsx120(ParameterOverrideMarker, { onClick: onResetOverriddenValue }) : null
12003
12077
  ] })
12004
12078
  }
12005
12079
  )
12006
12080
  ] }),
12007
- /* @__PURE__ */ jsx119(
12081
+ /* @__PURE__ */ jsx120(
12008
12082
  FieldMessage,
12009
12083
  {
12010
12084
  helperMessageTestId: captionTestId,
@@ -12018,17 +12092,17 @@ var ParameterShell = ({
12018
12092
  ] });
12019
12093
  };
12020
12094
  var ParameterShellPlaceholder = ({ children }) => {
12021
- return /* @__PURE__ */ jsx119("div", { css: emptyParameterShell, children });
12095
+ return /* @__PURE__ */ jsx120("div", { css: emptyParameterShell, children });
12022
12096
  };
12023
- var ParameterOverrideMarker = (props) => /* @__PURE__ */ jsx119(Tooltip, { title: "The default value has been overridden", children: /* @__PURE__ */ jsx119("button", { type: "button", css: overrideMarker, ...props, children: /* @__PURE__ */ jsx119("span", { hidden: true, children: "reset overridden value to default" }) }) });
12097
+ var ParameterOverrideMarker = (props) => /* @__PURE__ */ jsx120(Tooltip, { title: "The default value has been overridden", children: /* @__PURE__ */ jsx120("button", { type: "button", css: overrideMarker, ...props, children: /* @__PURE__ */ jsx120("span", { hidden: true, children: "reset overridden value to default" }) }) });
12024
12098
 
12025
12099
  // src/components/ParameterInputs/ParameterImage.tsx
12026
- import { Fragment as Fragment12, jsx as jsx120, jsxs as jsxs80 } from "@emotion/react/jsx-runtime";
12100
+ import { Fragment as Fragment13, jsx as jsx121, jsxs as jsxs81 } from "@emotion/react/jsx-runtime";
12027
12101
  var ParameterImage = forwardRef22(
12028
12102
  ({ children, ...props }, ref) => {
12029
12103
  const { shellProps, innerProps } = extractParameterProps(props);
12030
- return /* @__PURE__ */ jsxs80(ParameterShell, { "data-test-id": "parameter-image", ...shellProps, children: [
12031
- /* @__PURE__ */ jsx120(ParameterImageInner, { ref, ...innerProps }),
12104
+ return /* @__PURE__ */ jsxs81(ParameterShell, { "data-test-id": "parameter-image", ...shellProps, children: [
12105
+ /* @__PURE__ */ jsx121(ParameterImageInner, { ref, ...innerProps }),
12032
12106
  children
12033
12107
  ] });
12034
12108
  }
@@ -12037,8 +12111,8 @@ var ParameterImageInner = forwardRef22((props, ref) => {
12037
12111
  const { value } = props;
12038
12112
  const { id, label, hiddenLabel, errorMessage } = useParameterShell();
12039
12113
  const deferredValue = useDeferredValue(value);
12040
- return /* @__PURE__ */ jsxs80(Fragment12, { children: [
12041
- /* @__PURE__ */ jsx120(
12114
+ return /* @__PURE__ */ jsxs81(Fragment13, { children: [
12115
+ /* @__PURE__ */ jsx121(
12042
12116
  "input",
12043
12117
  {
12044
12118
  css: input3,
@@ -12050,49 +12124,49 @@ var ParameterImageInner = forwardRef22((props, ref) => {
12050
12124
  ...props
12051
12125
  }
12052
12126
  ),
12053
- errorMessage || props.disablePreview ? null : /* @__PURE__ */ jsx120(ParameterImagePreview, { imageSrc: deferredValue })
12127
+ errorMessage || props.disablePreview ? null : /* @__PURE__ */ jsx121(ParameterImagePreview, { imageSrc: deferredValue })
12054
12128
  ] });
12055
12129
  });
12056
12130
 
12057
12131
  // src/components/ParameterInputs/ParameterInput.tsx
12058
12132
  import { forwardRef as forwardRef23 } from "react";
12059
- import { jsx as jsx121 } from "@emotion/react/jsx-runtime";
12133
+ import { jsx as jsx122 } from "@emotion/react/jsx-runtime";
12060
12134
  var ParameterInput = forwardRef23((props, ref) => {
12061
12135
  const { shellProps, innerProps } = extractParameterProps(props);
12062
- return /* @__PURE__ */ jsx121(ParameterShell, { "data-testid": "parameter-input", ...shellProps, children: /* @__PURE__ */ jsx121(ParameterInputInner, { ref, ...innerProps }) });
12136
+ return /* @__PURE__ */ jsx122(ParameterShell, { "data-testid": "parameter-input", ...shellProps, children: /* @__PURE__ */ jsx122(ParameterInputInner, { ref, ...innerProps }) });
12137
+ });
12138
+ var ParameterInputInner = forwardRef23(({ enableMouseWheel = false, ...props }, ref) => {
12139
+ const { id, label, hiddenLabel } = useParameterShell();
12140
+ const isNumberInputAndMouseWheelDisabled = enableMouseWheel !== true && props.type === "number";
12141
+ return /* @__PURE__ */ jsx122(
12142
+ "input",
12143
+ {
12144
+ css: input3,
12145
+ id,
12146
+ type: props.type || "text",
12147
+ "aria-label": hiddenLabel && typeof label === "string" ? label : void 0,
12148
+ autoComplete: "off",
12149
+ ref,
12150
+ onWheel: isNumberInputAndMouseWheelDisabled ? disableMouseWheelEvent : void 0,
12151
+ ...props
12152
+ }
12153
+ );
12063
12154
  });
12064
- var ParameterInputInner = forwardRef23(
12065
- ({ ...props }, ref) => {
12066
- const { id, label, hiddenLabel } = useParameterShell();
12067
- return /* @__PURE__ */ jsx121(
12068
- "input",
12069
- {
12070
- css: input3,
12071
- id,
12072
- type: props.type || "text",
12073
- "aria-label": hiddenLabel && typeof label === "string" ? label : void 0,
12074
- autoComplete: "off",
12075
- ref,
12076
- ...props
12077
- }
12078
- );
12079
- }
12080
- );
12081
12155
 
12082
12156
  // src/components/ParameterInputs/ParameterLink.tsx
12083
12157
  import { forwardRef as forwardRef24 } from "react";
12084
- import { jsx as jsx122, jsxs as jsxs81 } from "@emotion/react/jsx-runtime";
12158
+ import { jsx as jsx123, jsxs as jsxs82 } from "@emotion/react/jsx-runtime";
12085
12159
  var ParameterLink = forwardRef24(
12086
12160
  ({ disabled: disabled2, onConnectLink, externalLink, ...props }, ref) => {
12087
12161
  const { shellProps, innerProps } = extractParameterProps(props);
12088
- return /* @__PURE__ */ jsx122(
12162
+ return /* @__PURE__ */ jsx123(
12089
12163
  ParameterShell,
12090
12164
  {
12091
12165
  "data-testid": "link-parameter-editor",
12092
12166
  ...shellProps,
12093
12167
  label: innerProps.value ? shellProps.label : "",
12094
12168
  title: !innerProps.value && typeof shellProps.label === "string" ? shellProps.label : void 0,
12095
- children: /* @__PURE__ */ jsx122(
12169
+ children: /* @__PURE__ */ jsx123(
12096
12170
  ParameterLinkInner,
12097
12171
  {
12098
12172
  onConnectLink,
@@ -12109,9 +12183,9 @@ var ParameterLinkInner = forwardRef24(
12109
12183
  ({ externalLink, onConnectLink, disabled: disabled2, buttonText = "Select link", ...props }, ref) => {
12110
12184
  const { id, label, hiddenLabel } = useParameterShell();
12111
12185
  if (!props.value)
12112
- return /* @__PURE__ */ jsx122("button", { type: "button", css: dataConnectButton, disabled: disabled2, onClick: onConnectLink, children: buttonText });
12113
- return /* @__PURE__ */ jsxs81("div", { css: inputWrapper, children: [
12114
- /* @__PURE__ */ jsx122(
12186
+ return /* @__PURE__ */ jsx123("button", { type: "button", css: dataConnectButton, disabled: disabled2, onClick: onConnectLink, children: buttonText });
12187
+ return /* @__PURE__ */ jsxs82("div", { css: inputWrapper, children: [
12188
+ /* @__PURE__ */ jsx123(
12115
12189
  "input",
12116
12190
  {
12117
12191
  type: "text",
@@ -12123,8 +12197,8 @@ var ParameterLinkInner = forwardRef24(
12123
12197
  ...props
12124
12198
  }
12125
12199
  ),
12126
- /* @__PURE__ */ jsxs81("div", { css: linkParameterControls, children: [
12127
- /* @__PURE__ */ jsx122(
12200
+ /* @__PURE__ */ jsxs82("div", { css: linkParameterControls, children: [
12201
+ /* @__PURE__ */ jsx123(
12128
12202
  "button",
12129
12203
  {
12130
12204
  type: "button",
@@ -12136,7 +12210,7 @@ var ParameterLinkInner = forwardRef24(
12136
12210
  children: "edit"
12137
12211
  }
12138
12212
  ),
12139
- externalLink ? /* @__PURE__ */ jsx122(
12213
+ externalLink ? /* @__PURE__ */ jsx123(
12140
12214
  "a",
12141
12215
  {
12142
12216
  href: externalLink,
@@ -12144,7 +12218,7 @@ var ParameterLinkInner = forwardRef24(
12144
12218
  title: "Open link in new tab",
12145
12219
  target: "_blank",
12146
12220
  rel: "noopener noreferrer",
12147
- children: /* @__PURE__ */ jsx122(Icon, { icon: "arrows-expand-up-right", iconColor: "currentColor", size: "1rem" })
12221
+ children: /* @__PURE__ */ jsx123(Icon, { icon: "arrows-expand-up-right", iconColor: "currentColor", size: "1rem" })
12148
12222
  }
12149
12223
  ) : null
12150
12224
  ] })
@@ -12153,15 +12227,15 @@ var ParameterLinkInner = forwardRef24(
12153
12227
  );
12154
12228
 
12155
12229
  // src/components/ParameterInputs/ParameterMultiSelect.tsx
12156
- import { jsx as jsx123 } from "@emotion/react/jsx-runtime";
12230
+ import { jsx as jsx124 } from "@emotion/react/jsx-runtime";
12157
12231
  var ParameterMultiSelect = ({ disabled: disabled2 = false, ...props }) => {
12158
12232
  const { shellProps, innerProps } = extractParameterProps(props);
12159
- return /* @__PURE__ */ jsx123(ParameterShell, { ...shellProps, children: /* @__PURE__ */ jsx123(ParameterMultiSelectInner, { isDisabled: disabled2, ...innerProps }) });
12233
+ return /* @__PURE__ */ jsx124(ParameterShell, { ...shellProps, children: /* @__PURE__ */ jsx124(ParameterMultiSelectInner, { isDisabled: disabled2, ...innerProps }) });
12160
12234
  };
12161
12235
  var ParameterMultiSelectInner = (props) => {
12162
12236
  var _a;
12163
12237
  const { id, label } = useParameterShell();
12164
- return /* @__PURE__ */ jsx123(
12238
+ return /* @__PURE__ */ jsx124(
12165
12239
  InputComboBox,
12166
12240
  {
12167
12241
  menuPortalTarget: document.body,
@@ -12211,7 +12285,7 @@ var ParameterMultiSelectInner = (props) => {
12211
12285
  };
12212
12286
 
12213
12287
  // src/components/ParameterInputs/ParameterNameAndPublicIdInput.tsx
12214
- import { Fragment as Fragment13, jsx as jsx124, jsxs as jsxs82 } from "@emotion/react/jsx-runtime";
12288
+ import { Fragment as Fragment14, jsx as jsx125, jsxs as jsxs83 } from "@emotion/react/jsx-runtime";
12215
12289
  var ParameterNameAndPublicIdInput = ({
12216
12290
  id,
12217
12291
  onBlur,
@@ -12237,8 +12311,8 @@ var ParameterNameAndPublicIdInput = ({
12237
12311
  navigator.clipboard.writeText(values[publicIdFieldName]);
12238
12312
  };
12239
12313
  autoFocus == null ? void 0 : autoFocus();
12240
- return /* @__PURE__ */ jsxs82(Fragment13, { children: [
12241
- /* @__PURE__ */ jsx124(
12314
+ return /* @__PURE__ */ jsxs83(Fragment14, { children: [
12315
+ /* @__PURE__ */ jsx125(
12242
12316
  ParameterInput,
12243
12317
  {
12244
12318
  id: nameIdField,
@@ -12257,7 +12331,7 @@ var ParameterNameAndPublicIdInput = ({
12257
12331
  value: values[nameIdField]
12258
12332
  }
12259
12333
  ),
12260
- /* @__PURE__ */ jsx124(
12334
+ /* @__PURE__ */ jsx125(
12261
12335
  ParameterInput,
12262
12336
  {
12263
12337
  id: publicIdFieldName,
@@ -12271,11 +12345,11 @@ var ParameterNameAndPublicIdInput = ({
12271
12345
  caption: !publicIdError ? publicIdCaption : void 0,
12272
12346
  placeholder: publicIdPlaceholderText,
12273
12347
  errorMessage: publicIdError,
12274
- menuItems: /* @__PURE__ */ jsx124(
12348
+ menuItems: /* @__PURE__ */ jsx125(
12275
12349
  MenuItem,
12276
12350
  {
12277
12351
  disabled: !values[publicIdFieldName],
12278
- icon: /* @__PURE__ */ jsx124(Icon, { icon: "path-trim", iconColor: "currentColor" }),
12352
+ icon: /* @__PURE__ */ jsx125(Icon, { icon: "path-trim", iconColor: "currentColor" }),
12279
12353
  onClick: handleCopyPidFieldValue,
12280
12354
  children: "Copy"
12281
12355
  }
@@ -12283,7 +12357,7 @@ var ParameterNameAndPublicIdInput = ({
12283
12357
  value: values[publicIdFieldName]
12284
12358
  }
12285
12359
  ),
12286
- (warnOverLength == null ? void 0 : warnOverLength.length) && values[publicIdFieldName].length > warnOverLength.length ? /* @__PURE__ */ jsx124(Callout, { type: "caution", children: warnOverLength.message }) : null
12360
+ (warnOverLength == null ? void 0 : warnOverLength.length) && values[publicIdFieldName].length > warnOverLength.length ? /* @__PURE__ */ jsx125(Callout, { type: "caution", children: warnOverLength.message }) : null
12287
12361
  ] });
12288
12362
  };
12289
12363
 
@@ -12432,7 +12506,7 @@ var defaultParameterConfiguration = {
12432
12506
  // src/components/ParameterInputs/ParameterRichText.tsx
12433
12507
  import { deepEqual as deepEqual2 } from "fast-equals";
12434
12508
  import { ParagraphNode as ParagraphNode2 } from "lexical";
12435
- import { useEffect as useEffect22, useState as useState20 } from "react";
12509
+ import { useEffect as useEffect23, useState as useState20 } from "react";
12436
12510
 
12437
12511
  // src/components/ParameterInputs/rich-text/CustomCodeNode.ts
12438
12512
  import { CodeNode } from "@lexical/code";
@@ -12453,10 +12527,10 @@ CustomCodeNode.importDOM = function() {
12453
12527
  import { useLexicalComposerContext } from "@lexical/react/LexicalComposerContext";
12454
12528
  import { mergeRegister } from "@lexical/utils";
12455
12529
  import { ParagraphNode } from "lexical";
12456
- import { useEffect as useEffect14 } from "react";
12530
+ import { useEffect as useEffect15 } from "react";
12457
12531
  function DisableStylesPlugin() {
12458
12532
  const [editor] = useLexicalComposerContext();
12459
- useEffect14(() => {
12533
+ useEffect15(() => {
12460
12534
  return mergeRegister(
12461
12535
  // Disable text alignment on paragraph nodes
12462
12536
  editor.registerNodeTransform(ParagraphNode, (node) => {
@@ -12715,10 +12789,10 @@ var tableHeaderElement = css93`
12715
12789
  import { useLexicalComposerContext as useLexicalComposerContext2 } from "@lexical/react/LexicalComposerContext";
12716
12790
  import { $insertFirst } from "@lexical/utils";
12717
12791
  import { $createParagraphNode, $getRoot, $insertNodes } from "lexical";
12718
- import { useEffect as useEffect15 } from "react";
12792
+ import { useEffect as useEffect16 } from "react";
12719
12793
  var ImprovedAssetSelectionPlugin = () => {
12720
12794
  const [editor] = useLexicalComposerContext2();
12721
- useEffect15(() => {
12795
+ useEffect16(() => {
12722
12796
  editor.getRootElement();
12723
12797
  const onRootClick = (event) => {
12724
12798
  if (event.target !== editor.getRootElement()) {
@@ -12789,11 +12863,13 @@ import {
12789
12863
  FOCUS_COMMAND,
12790
12864
  PASTE_COMMAND
12791
12865
  } from "lexical";
12792
- import { useCallback as useCallback8, useEffect as useEffect16, useRef as useRef9, useState as useState15 } from "react";
12866
+ import { useCallback as useCallback8, useEffect as useEffect17, useRef as useRef9, useState as useState15 } from "react";
12793
12867
 
12794
12868
  // src/components/ParameterInputs/rich-text/utils.ts
12795
12869
  import { $isAtNodeEnd } from "@lexical/selection";
12796
- import { $isElementNode } from "lexical";
12870
+ import {
12871
+ $isElementNode
12872
+ } from "lexical";
12797
12873
  var getElementNodesInSelection = (selection) => {
12798
12874
  const nodesInSelection = selection.getNodes();
12799
12875
  if (nodesInSelection.length === 0) {
@@ -12824,9 +12900,30 @@ var getSelectedNode = (selection) => {
12824
12900
  return $isAtNodeEnd(anchor) ? anchorNode : focusNode;
12825
12901
  }
12826
12902
  };
12903
+ var walkSerializedEditorState = (node, callback) => {
12904
+ callback(node);
12905
+ for (const child of node.children) {
12906
+ if ("children" in child) {
12907
+ walkSerializedEditorState(child, callback);
12908
+ } else {
12909
+ callback(child);
12910
+ }
12911
+ }
12912
+ };
12913
+ var normalizeStateForDeepEqualComparison = (editorState) => {
12914
+ walkSerializedEditorState(editorState.root, (node) => {
12915
+ if ("direction" in node) {
12916
+ node.direction = null;
12917
+ }
12918
+ if ("textFormat" in node) {
12919
+ delete node.textFormat;
12920
+ }
12921
+ });
12922
+ return editorState;
12923
+ };
12827
12924
 
12828
12925
  // src/components/ParameterInputs/rich-text/LinkNodePlugin.tsx
12829
- import { Fragment as Fragment14, jsx as jsx125, jsxs as jsxs83 } from "@emotion/react/jsx-runtime";
12926
+ import { Fragment as Fragment15, jsx as jsx126, jsxs as jsxs84 } from "@emotion/react/jsx-runtime";
12830
12927
  var isProjectMapLinkValue = (value) => {
12831
12928
  return (value == null ? void 0 : value.type) === "projectMapNode" && Boolean(
12832
12929
  value.nodeId && value.path && value.projectMapId
@@ -13142,13 +13239,13 @@ function LinkNodePlugin({
13142
13239
  const linkPopoverElRef = useRef9(null);
13143
13240
  const [isEditorFocused, setIsEditorFocused] = useState15(false);
13144
13241
  const [isLinkPopoverFocused, setIsLinkPopoverFocused] = useState15(false);
13145
- useEffect16(() => {
13242
+ useEffect17(() => {
13146
13243
  if (!isEditorFocused && !isLinkPopoverFocused) {
13147
13244
  setLinkPopoverState(void 0);
13148
13245
  return;
13149
13246
  }
13150
13247
  }, [isEditorFocused, isLinkPopoverFocused]);
13151
- useEffect16(() => {
13248
+ useEffect17(() => {
13152
13249
  if (!editor.hasNodes([LinkNode])) {
13153
13250
  throw new Error("LinkNode not registered on editor");
13154
13251
  }
@@ -13286,7 +13383,7 @@ function LinkNodePlugin({
13286
13383
  }
13287
13384
  });
13288
13385
  }, [editor, positioningAnchorEl]);
13289
- useEffect16(() => {
13386
+ useEffect17(() => {
13290
13387
  return editor.registerUpdateListener(({ editorState }) => {
13291
13388
  requestAnimationFrame(() => {
13292
13389
  editorState.read(() => {
@@ -13313,8 +13410,8 @@ function LinkNodePlugin({
13313
13410
  });
13314
13411
  });
13315
13412
  };
13316
- return /* @__PURE__ */ jsxs83(Fragment14, { children: [
13317
- /* @__PURE__ */ jsx125(
13413
+ return /* @__PURE__ */ jsxs84(Fragment15, { children: [
13414
+ /* @__PURE__ */ jsx126(
13318
13415
  NodeEventPlugin,
13319
13416
  {
13320
13417
  nodeType: LinkNode,
@@ -13324,7 +13421,7 @@ function LinkNodePlugin({
13324
13421
  }
13325
13422
  }
13326
13423
  ),
13327
- linkPopoverState ? /* @__PURE__ */ jsx125(
13424
+ linkPopoverState ? /* @__PURE__ */ jsx126(
13328
13425
  "div",
13329
13426
  {
13330
13427
  css: linkPopover,
@@ -13333,8 +13430,8 @@ function LinkNodePlugin({
13333
13430
  top: linkPopoverState.position.y
13334
13431
  },
13335
13432
  ref: linkPopoverElRef,
13336
- children: /* @__PURE__ */ jsxs83("div", { css: linkPopoverContainer, children: [
13337
- linkPopoverState.node.__link.type === "projectMapNode" ? linkPopoverState.node.__link.path : /* @__PURE__ */ jsx125(
13433
+ children: /* @__PURE__ */ jsxs84("div", { css: linkPopoverContainer, children: [
13434
+ linkPopoverState.node.__link.type === "projectMapNode" ? linkPopoverState.node.__link.path : /* @__PURE__ */ jsx126(
13338
13435
  "a",
13339
13436
  {
13340
13437
  href: parsePath(
@@ -13346,7 +13443,7 @@ function LinkNodePlugin({
13346
13443
  children: parsePath(linkPopoverState.node.__link.path)
13347
13444
  }
13348
13445
  ),
13349
- /* @__PURE__ */ jsx125(
13446
+ /* @__PURE__ */ jsx126(
13350
13447
  Button,
13351
13448
  {
13352
13449
  size: "xs",
@@ -13354,7 +13451,7 @@ function LinkNodePlugin({
13354
13451
  onEditLinkNode(linkPopoverState.node);
13355
13452
  },
13356
13453
  buttonType: "ghost",
13357
- children: /* @__PURE__ */ jsx125(Icon, { icon: "pen", size: "1rem", title: "Edit link" })
13454
+ children: /* @__PURE__ */ jsx126(Icon, { icon: "pen", size: "1rem", title: "Edit link" })
13358
13455
  }
13359
13456
  )
13360
13457
  ] })
@@ -13390,7 +13487,7 @@ import {
13390
13487
  OUTDENT_CONTENT_COMMAND,
13391
13488
  SELECTION_CHANGE_COMMAND
13392
13489
  } from "lexical";
13393
- import { useEffect as useEffect17, useRef as useRef10 } from "react";
13490
+ import { useEffect as useEffect18, useRef as useRef10 } from "react";
13394
13491
  function isIndentPermitted(maxDepth) {
13395
13492
  const selection = $getSelection2();
13396
13493
  if (!$isRangeSelection2(selection)) {
@@ -13446,7 +13543,7 @@ function $indentOverTab(selection) {
13446
13543
  function ListIndentPlugin({ maxDepth }) {
13447
13544
  const [editor] = useLexicalComposerContext4();
13448
13545
  const isInListItemNode = useRef10(false);
13449
- useEffect17(() => {
13546
+ useEffect18(() => {
13450
13547
  return editor.registerCommand(
13451
13548
  SELECTION_CHANGE_COMMAND,
13452
13549
  () => {
@@ -13463,7 +13560,7 @@ function ListIndentPlugin({ maxDepth }) {
13463
13560
  COMMAND_PRIORITY_NORMAL
13464
13561
  );
13465
13562
  }, [editor]);
13466
- useEffect17(() => {
13563
+ useEffect18(() => {
13467
13564
  return mergeRegister3(
13468
13565
  editor.registerCommand(
13469
13566
  INDENT_CONTENT_COMMAND,
@@ -13512,8 +13609,8 @@ import {
13512
13609
  TableCellNode
13513
13610
  } from "@lexical/table";
13514
13611
  import { $getRoot as $getRoot2, $getSelection as $getSelection3, $isRangeSelection as $isRangeSelection3 } from "lexical";
13515
- import { forwardRef as forwardRef25, useCallback as useCallback9, useEffect as useEffect18, useLayoutEffect, useState as useState16 } from "react";
13516
- import { jsx as jsx126, jsxs as jsxs84 } from "@emotion/react/jsx-runtime";
13612
+ import { forwardRef as forwardRef25, useCallback as useCallback9, useEffect as useEffect19, useLayoutEffect, useState as useState16 } from "react";
13613
+ import { jsx as jsx127, jsxs as jsxs85 } from "@emotion/react/jsx-runtime";
13517
13614
  function computeSelectionCount(selection) {
13518
13615
  const selectionShape = selection.getShape();
13519
13616
  return {
@@ -13535,7 +13632,7 @@ var TableActionMenuTrigger = forwardRef25((props, ref) => {
13535
13632
  const relativeY = rect.top - parentRect.top + positioningAnchorEl.scrollTop;
13536
13633
  setCoordinates({ x: relativeX, y: relativeY });
13537
13634
  }, [tableCellEl, positioningAnchorEl]);
13538
- return /* @__PURE__ */ jsx126(
13635
+ return /* @__PURE__ */ jsx127(
13539
13636
  IconButton,
13540
13637
  {
13541
13638
  ref,
@@ -13549,7 +13646,7 @@ var TableActionMenuTrigger = forwardRef25((props, ref) => {
13549
13646
  size: "xs",
13550
13647
  buttonType: "unimportant",
13551
13648
  ...rest,
13552
- children: /* @__PURE__ */ jsx126(Icon, { icon: "chevron-down", size: "1rem", iconColor: "currentColor" })
13649
+ children: /* @__PURE__ */ jsx127(Icon, { icon: "chevron-down", size: "1rem", iconColor: "currentColor" })
13553
13650
  }
13554
13651
  );
13555
13652
  });
@@ -13570,7 +13667,7 @@ function TableActionMenu({
13570
13667
  const incrementMenuTriggerKey = () => {
13571
13668
  setMenuTriggerKey((key) => key += 1);
13572
13669
  };
13573
- useEffect18(() => {
13670
+ useEffect19(() => {
13574
13671
  return editor.registerMutationListener(
13575
13672
  TableCellNode,
13576
13673
  (nodeMutations) => {
@@ -13584,7 +13681,7 @@ function TableActionMenu({
13584
13681
  { skipInitialization: true }
13585
13682
  );
13586
13683
  }, [editor, tableCellNode]);
13587
- useEffect18(() => {
13684
+ useEffect19(() => {
13588
13685
  editor.getEditorState().read(() => {
13589
13686
  const selection = $getSelection3();
13590
13687
  if ($isTableSelection(selection)) {
@@ -13703,10 +13800,10 @@ function TableActionMenu({
13703
13800
  const menuItemCss = css95({
13704
13801
  fontSize: "var(--fs-sm)"
13705
13802
  });
13706
- return /* @__PURE__ */ jsxs84(
13803
+ return /* @__PURE__ */ jsxs85(
13707
13804
  Menu,
13708
13805
  {
13709
- menuTrigger: /* @__PURE__ */ jsx126(
13806
+ menuTrigger: /* @__PURE__ */ jsx127(
13710
13807
  TableActionMenuTrigger,
13711
13808
  {
13712
13809
  tableCellEl,
@@ -13717,7 +13814,7 @@ function TableActionMenu({
13717
13814
  portalElement: menuPortalEl,
13718
13815
  maxMenuHeight: "300px",
13719
13816
  children: [
13720
- /* @__PURE__ */ jsxs84(
13817
+ /* @__PURE__ */ jsxs85(
13721
13818
  MenuItem,
13722
13819
  {
13723
13820
  onClick: () => {
@@ -13731,33 +13828,33 @@ function TableActionMenu({
13731
13828
  ]
13732
13829
  }
13733
13830
  ),
13734
- /* @__PURE__ */ jsxs84(MenuItem, { onClick: () => insertTableRowAtSelection(true), css: menuItemCss, children: [
13831
+ /* @__PURE__ */ jsxs85(MenuItem, { onClick: () => insertTableRowAtSelection(true), css: menuItemCss, children: [
13735
13832
  "Insert ",
13736
13833
  selectionCounts.rows === 1 ? "row" : `${selectionCounts.rows} rows`,
13737
13834
  " below"
13738
13835
  ] }),
13739
- /* @__PURE__ */ jsx126(MenuItemSeparator, {}),
13740
- /* @__PURE__ */ jsxs84(MenuItem, { onClick: () => insertTableColumnAtSelection(false), css: menuItemCss, children: [
13836
+ /* @__PURE__ */ jsx127(MenuItemSeparator, {}),
13837
+ /* @__PURE__ */ jsxs85(MenuItem, { onClick: () => insertTableColumnAtSelection(false), css: menuItemCss, children: [
13741
13838
  "Insert ",
13742
13839
  selectionCounts.columns === 1 ? "column" : `${selectionCounts.columns} columns`,
13743
13840
  " left"
13744
13841
  ] }),
13745
- /* @__PURE__ */ jsxs84(MenuItem, { onClick: () => insertTableColumnAtSelection(true), css: menuItemCss, children: [
13842
+ /* @__PURE__ */ jsxs85(MenuItem, { onClick: () => insertTableColumnAtSelection(true), css: menuItemCss, children: [
13746
13843
  "Insert ",
13747
13844
  selectionCounts.columns === 1 ? "column" : `${selectionCounts.columns} columns`,
13748
13845
  " right"
13749
13846
  ] }),
13750
- /* @__PURE__ */ jsx126(MenuItemSeparator, {}),
13751
- /* @__PURE__ */ jsx126(MenuItem, { onClick: () => deleteTableColumnAtSelection(), css: menuItemCss, children: "Delete column" }),
13752
- /* @__PURE__ */ jsx126(MenuItem, { onClick: () => deleteTableRowAtSelection(), css: menuItemCss, children: "Delete row" }),
13753
- /* @__PURE__ */ jsx126(MenuItem, { onClick: () => deleteTableAtSelection(), css: menuItemCss, children: "Delete table" }),
13754
- /* @__PURE__ */ jsx126(MenuItemSeparator, {}),
13755
- /* @__PURE__ */ jsxs84(MenuItem, { onClick: () => toggleTableRowIsHeader(), css: menuItemCss, children: [
13847
+ /* @__PURE__ */ jsx127(MenuItemSeparator, {}),
13848
+ /* @__PURE__ */ jsx127(MenuItem, { onClick: () => deleteTableColumnAtSelection(), css: menuItemCss, children: "Delete column" }),
13849
+ /* @__PURE__ */ jsx127(MenuItem, { onClick: () => deleteTableRowAtSelection(), css: menuItemCss, children: "Delete row" }),
13850
+ /* @__PURE__ */ jsx127(MenuItem, { onClick: () => deleteTableAtSelection(), css: menuItemCss, children: "Delete table" }),
13851
+ /* @__PURE__ */ jsx127(MenuItemSeparator, {}),
13852
+ /* @__PURE__ */ jsxs85(MenuItem, { onClick: () => toggleTableRowIsHeader(), css: menuItemCss, children: [
13756
13853
  (tableCellNode.__headerState & TableCellHeaderStates.ROW) === TableCellHeaderStates.ROW ? "Remove" : "Add",
13757
13854
  " ",
13758
13855
  "row header"
13759
13856
  ] }),
13760
- /* @__PURE__ */ jsxs84(MenuItem, { onClick: () => toggleTableColumnIsHeader(), css: menuItemCss, children: [
13857
+ /* @__PURE__ */ jsxs85(MenuItem, { onClick: () => toggleTableColumnIsHeader(), css: menuItemCss, children: [
13761
13858
  (tableCellNode.__headerState & TableCellHeaderStates.COLUMN) === TableCellHeaderStates.COLUMN ? "Remove" : "Add",
13762
13859
  " ",
13763
13860
  "column header"
@@ -13774,7 +13871,7 @@ function TableCellActionMenuContainer({
13774
13871
  const [tableCellNode, setTableMenuCellNode] = useState16(null);
13775
13872
  const [tableCellNodeEl, _setTableMenuCellNodeEl] = useState16(null);
13776
13873
  const [tableCellMenuPortalEl, setTableMenuCellMenuPortalEl] = useState16(null);
13777
- useEffect18(() => {
13874
+ useEffect19(() => {
13778
13875
  const newPortalEl = document.createElement("div");
13779
13876
  setTableMenuCellMenuPortalEl(newPortalEl);
13780
13877
  menuPortalEl.appendChild(newPortalEl);
@@ -13818,14 +13915,14 @@ function TableCellActionMenuContainer({
13818
13915
  setTableMenuCellNodeElem(null);
13819
13916
  }
13820
13917
  }, [editor, setTableMenuCellNodeElem]);
13821
- useEffect18(() => {
13918
+ useEffect19(() => {
13822
13919
  return editor.registerUpdateListener(() => {
13823
13920
  editor.getEditorState().read(() => {
13824
13921
  $moveMenu();
13825
13922
  });
13826
13923
  });
13827
13924
  });
13828
- return tableCellNode != null && tableCellNodeEl != null && tableCellMenuPortalEl != null && /* @__PURE__ */ jsx126(
13925
+ return tableCellNode != null && tableCellNodeEl != null && tableCellMenuPortalEl != null && /* @__PURE__ */ jsx127(
13829
13926
  TableActionMenu,
13830
13927
  {
13831
13928
  tableCellNode,
@@ -13841,7 +13938,7 @@ function TableActionMenuPlugin({
13841
13938
  menuPortalEl
13842
13939
  }) {
13843
13940
  const isEditable = useLexicalEditable();
13844
- return isEditable ? /* @__PURE__ */ jsx126(TableCellActionMenuContainer, { menuPortalEl, positioningAnchorEl }) : null;
13941
+ return isEditable ? /* @__PURE__ */ jsx127(TableCellActionMenuContainer, { menuPortalEl, positioningAnchorEl }) : null;
13845
13942
  }
13846
13943
 
13847
13944
  // src/components/ParameterInputs/rich-text/TableCellResizerPlugin.tsx
@@ -13857,9 +13954,9 @@ import {
13857
13954
  } from "@lexical/table";
13858
13955
  import { calculateZoomLevel } from "@lexical/utils";
13859
13956
  import { $getNearestNodeFromDOMNode } from "lexical";
13860
- import { useCallback as useCallback10, useEffect as useEffect19, useMemo as useMemo6, useRef as useRef11, useState as useState17 } from "react";
13957
+ import { useCallback as useCallback10, useEffect as useEffect20, useMemo as useMemo6, useRef as useRef11, useState as useState17 } from "react";
13861
13958
  import { createPortal as createPortal3 } from "react-dom";
13862
- import { Fragment as Fragment15, jsx as jsx127, jsxs as jsxs85 } from "@emotion/react/jsx-runtime";
13959
+ import { Fragment as Fragment16, jsx as jsx128, jsxs as jsxs86 } from "@emotion/react/jsx-runtime";
13863
13960
  var MIN_ROW_HEIGHT = 33;
13864
13961
  var MIN_COLUMN_WIDTH = 50;
13865
13962
  var tableResizer = css96`
@@ -13902,7 +13999,7 @@ function TableCellResizer({ editor, positioningAnchorEl }) {
13902
13999
  const isMouseDownOnEvent = (event) => {
13903
14000
  return (event.buttons & 1) === 1;
13904
14001
  };
13905
- useEffect19(() => {
14002
+ useEffect20(() => {
13906
14003
  const onMouseMove = (event) => {
13907
14004
  setTimeout(() => {
13908
14005
  const target = event.target;
@@ -14160,8 +14257,8 @@ function TableCellResizer({ editor, positioningAnchorEl }) {
14160
14257
  };
14161
14258
  }, [activeCell, draggingDirection, mouseCurrentPos, positioningAnchorEl]);
14162
14259
  const resizerStyles = getResizers();
14163
- return /* @__PURE__ */ jsx127("div", { ref: resizerRef, children: activeCell != null && !isMouseDown && /* @__PURE__ */ jsxs85(Fragment15, { children: [
14164
- /* @__PURE__ */ jsx127(
14260
+ return /* @__PURE__ */ jsx128("div", { ref: resizerRef, children: activeCell != null && !isMouseDown && /* @__PURE__ */ jsxs86(Fragment16, { children: [
14261
+ /* @__PURE__ */ jsx128(
14165
14262
  "div",
14166
14263
  {
14167
14264
  css: tableResizer,
@@ -14169,7 +14266,7 @@ function TableCellResizer({ editor, positioningAnchorEl }) {
14169
14266
  onMouseDown: toggleResize("right")
14170
14267
  }
14171
14268
  ),
14172
- /* @__PURE__ */ jsx127(
14269
+ /* @__PURE__ */ jsx128(
14173
14270
  "div",
14174
14271
  {
14175
14272
  css: tableResizer,
@@ -14184,7 +14281,7 @@ function TableCellResizerPlugin({ positioningAnchorEl }) {
14184
14281
  const isEditable = useLexicalEditable2();
14185
14282
  return useMemo6(
14186
14283
  () => isEditable ? createPortal3(
14187
- /* @__PURE__ */ jsx127(TableCellResizer, { editor, positioningAnchorEl }),
14284
+ /* @__PURE__ */ jsx128(TableCellResizer, { editor, positioningAnchorEl }),
14188
14285
  positioningAnchorEl
14189
14286
  ) : null,
14190
14287
  [editor, isEditable, positioningAnchorEl]
@@ -14201,11 +14298,11 @@ import {
14201
14298
  COMMAND_PRIORITY_NORMAL as COMMAND_PRIORITY_NORMAL2,
14202
14299
  SELECTION_CHANGE_COMMAND as SELECTION_CHANGE_COMMAND2
14203
14300
  } from "lexical";
14204
- import { useEffect as useEffect20, useState as useState18 } from "react";
14301
+ import { useEffect as useEffect21, useState as useState18 } from "react";
14205
14302
  var TableSelectionPlugin = () => {
14206
14303
  const [editor] = useLexicalComposerContext7();
14207
14304
  const [closestTableCellNode, setClosestTableCellNode] = useState18(null);
14208
- useEffect20(() => {
14305
+ useEffect21(() => {
14209
14306
  return editor.registerCommand(
14210
14307
  SELECTION_CHANGE_COMMAND2,
14211
14308
  () => {
@@ -14227,7 +14324,7 @@ var TableSelectionPlugin = () => {
14227
14324
  COMMAND_PRIORITY_NORMAL2
14228
14325
  );
14229
14326
  }, [editor]);
14230
- useEffect20(() => {
14327
+ useEffect21(() => {
14231
14328
  const onControlA = (event) => {
14232
14329
  if (event.key === "a" && (event.ctrlKey || event.metaKey)) {
14233
14330
  if (!closestTableCellNode) {
@@ -14274,7 +14371,7 @@ import {
14274
14371
  FORMAT_TEXT_COMMAND,
14275
14372
  SELECTION_CHANGE_COMMAND as SELECTION_CHANGE_COMMAND3
14276
14373
  } from "lexical";
14277
- import { useCallback as useCallback11, useEffect as useEffect21 } from "react";
14374
+ import { useCallback as useCallback11, useEffect as useEffect22 } from "react";
14278
14375
 
14279
14376
  // src/components/ParameterInputs/rich-text/toolbar/constants.ts
14280
14377
  var FORMATS_WITH_ICON = /* @__PURE__ */ new Map([
@@ -14420,7 +14517,7 @@ var useRichTextToolbarState = ({ config }) => {
14420
14517
  };
14421
14518
 
14422
14519
  // src/components/ParameterInputs/rich-text/toolbar/RichTextToolbar.tsx
14423
- import { Fragment as Fragment16, jsx as jsx128, jsxs as jsxs86 } from "@emotion/react/jsx-runtime";
14520
+ import { Fragment as Fragment17, jsx as jsx129, jsxs as jsxs87 } from "@emotion/react/jsx-runtime";
14424
14521
  var toolbar = css97`
14425
14522
  ${scrollbarStyles}
14426
14523
  background: var(--gray-50);
@@ -14480,7 +14577,7 @@ var toolbarChevron = css97`
14480
14577
  margin-left: var(--spacing-xs);
14481
14578
  `;
14482
14579
  var RichTextToolbarIcon = ({ icon }) => {
14483
- return /* @__PURE__ */ jsx128(Icon, { icon, css: toolbarIcon, size: "1rem" });
14580
+ return /* @__PURE__ */ jsx129(Icon, { icon, css: toolbarIcon, size: "1rem" });
14484
14581
  };
14485
14582
  var RichTextToolbar = ({ config, customControls, onInsertTable, onInsertAsset }) => {
14486
14583
  const [editor] = useLexicalComposerContext8();
@@ -14575,7 +14672,7 @@ var RichTextToolbar = ({ config, customControls, onInsertTable, onInsertAsset })
14575
14672
  setIsLink(false);
14576
14673
  }
14577
14674
  }, [editor, setActiveElement, setActiveFormats, setIsLink]);
14578
- useEffect21(() => {
14675
+ useEffect22(() => {
14579
14676
  return editor.registerCommand(
14580
14677
  SELECTION_CHANGE_COMMAND3,
14581
14678
  (_payload) => {
@@ -14585,7 +14682,7 @@ var RichTextToolbar = ({ config, customControls, onInsertTable, onInsertAsset })
14585
14682
  COMMAND_PRIORITY_CRITICAL2
14586
14683
  );
14587
14684
  }, [editor, updateToolbar]);
14588
- useEffect21(() => {
14685
+ useEffect22(() => {
14589
14686
  return editor.registerUpdateListener(({ editorState }) => {
14590
14687
  requestAnimationFrame(() => {
14591
14688
  editorState.read(() => {
@@ -14594,14 +14691,14 @@ var RichTextToolbar = ({ config, customControls, onInsertTable, onInsertAsset })
14594
14691
  });
14595
14692
  });
14596
14693
  }, [editor, updateToolbar]);
14597
- return /* @__PURE__ */ jsxs86("div", { css: toolbar, "data-testid": "rich-text-toolbar", children: [
14598
- /* @__PURE__ */ jsxs86(
14694
+ return /* @__PURE__ */ jsxs87("div", { css: toolbar, "data-testid": "rich-text-toolbar", children: [
14695
+ /* @__PURE__ */ jsxs87(
14599
14696
  Menu,
14600
14697
  {
14601
- menuTrigger: /* @__PURE__ */ jsxs86("button", { css: [richTextToolbarButton, textStyleButton], title: "Text styles", type: "button", children: [
14698
+ menuTrigger: /* @__PURE__ */ jsxs87("button", { css: [richTextToolbarButton, textStyleButton], title: "Text styles", type: "button", children: [
14602
14699
  visibleTextualElements.some((element) => element.type === activeElement) ? getLabelForElement(activeElement) : getLabelForElement("paragraph"),
14603
14700
  " ",
14604
- /* @__PURE__ */ jsx128(Icon, { icon: "chevron-down", css: [toolbarIcon, toolbarChevron], size: "1rem" })
14701
+ /* @__PURE__ */ jsx129(Icon, { icon: "chevron-down", css: [toolbarIcon, toolbarChevron], size: "1rem" })
14605
14702
  ] }),
14606
14703
  placement: "bottom-start",
14607
14704
  children: [
@@ -14611,7 +14708,7 @@ var RichTextToolbar = ({ config, customControls, onInsertTable, onInsertAsset })
14611
14708
  type: "paragraph"
14612
14709
  },
14613
14710
  ...visibleTextualElements
14614
- ].map((element) => /* @__PURE__ */ jsx128(
14711
+ ].map((element) => /* @__PURE__ */ jsx129(
14615
14712
  MenuItem,
14616
14713
  {
14617
14714
  "data-testid": "menu-item",
@@ -14622,12 +14719,12 @@ var RichTextToolbar = ({ config, customControls, onInsertTable, onInsertAsset })
14622
14719
  },
14623
14720
  element.type
14624
14721
  )),
14625
- visibleTextualElements.length === 0 ? /* @__PURE__ */ jsx128(MenuItem, { disabled: true, children: "Alternative text styles are not available" }) : null
14722
+ visibleTextualElements.length === 0 ? /* @__PURE__ */ jsx129(MenuItem, { disabled: true, children: "Alternative text styles are not available" }) : null
14626
14723
  ]
14627
14724
  }
14628
14725
  ),
14629
- visibleFormatsWithIcon.length > 0 || visibleFormatsWithoutIcon.length > 0 ? /* @__PURE__ */ jsxs86("div", { css: toolbarGroup, "data-testid": "rich-text-toolbar-formatting", children: [
14630
- visibleFormatsWithIcon.map((format) => /* @__PURE__ */ jsx128(Tooltip, { title: format.label, placement: "top", children: /* @__PURE__ */ jsx128(
14726
+ visibleFormatsWithIcon.length > 0 || visibleFormatsWithoutIcon.length > 0 ? /* @__PURE__ */ jsxs87("div", { css: toolbarGroup, "data-testid": "rich-text-toolbar-formatting", children: [
14727
+ visibleFormatsWithIcon.map((format) => /* @__PURE__ */ jsx129(Tooltip, { title: format.label, placement: "top", children: /* @__PURE__ */ jsx129(
14631
14728
  "button",
14632
14729
  {
14633
14730
  "data-testid": `formatting-button-${format.type}`,
@@ -14639,15 +14736,15 @@ var RichTextToolbar = ({ config, customControls, onInsertTable, onInsertAsset })
14639
14736
  richTextToolbarButton,
14640
14737
  activeFormats.includes(format.type) ? richTextToolbarButtonActive : null
14641
14738
  ],
14642
- children: /* @__PURE__ */ jsx128(RichTextToolbarIcon, { icon: FORMATS_WITH_ICON.get(format.type) })
14739
+ children: /* @__PURE__ */ jsx129(RichTextToolbarIcon, { icon: FORMATS_WITH_ICON.get(format.type) })
14643
14740
  }
14644
14741
  ) }, format.type)),
14645
- visibleFormatsWithoutIcon.length > 0 ? /* @__PURE__ */ jsx128(
14742
+ visibleFormatsWithoutIcon.length > 0 ? /* @__PURE__ */ jsx129(
14646
14743
  Menu,
14647
14744
  {
14648
- menuTrigger: /* @__PURE__ */ jsx128("button", { css: richTextToolbarButton, title: "Alternative text styles", type: "button", children: /* @__PURE__ */ jsx128(Icon, { icon: "more-alt", css: toolbarIcon }) }),
14745
+ menuTrigger: /* @__PURE__ */ jsx129("button", { css: richTextToolbarButton, title: "Alternative text styles", type: "button", children: /* @__PURE__ */ jsx129(Icon, { icon: "more-alt", css: toolbarIcon }) }),
14649
14746
  placement: "bottom-start",
14650
- children: visibleFormatsWithoutIcon.map((format) => /* @__PURE__ */ jsx128(
14747
+ children: visibleFormatsWithoutIcon.map((format) => /* @__PURE__ */ jsx129(
14651
14748
  MenuItem,
14652
14749
  {
14653
14750
  onClick: () => {
@@ -14660,8 +14757,8 @@ var RichTextToolbar = ({ config, customControls, onInsertTable, onInsertAsset })
14660
14757
  }
14661
14758
  ) : null
14662
14759
  ] }) : null,
14663
- visibleElementsWithIcons.size > 0 || customControls ? /* @__PURE__ */ jsxs86("div", { css: toolbarGroup, "data-testid": "rich-text-toolbar-elements", children: [
14664
- linkElementVisible ? /* @__PURE__ */ jsx128(Tooltip, { title: "Link", placement: "top", children: /* @__PURE__ */ jsx128(
14760
+ visibleElementsWithIcons.size > 0 || customControls ? /* @__PURE__ */ jsxs87("div", { css: toolbarGroup, "data-testid": "rich-text-toolbar-elements", children: [
14761
+ linkElementVisible ? /* @__PURE__ */ jsx129(Tooltip, { title: "Link", placement: "top", children: /* @__PURE__ */ jsx129(
14665
14762
  "button",
14666
14763
  {
14667
14764
  "data-testid": "element-link",
@@ -14674,11 +14771,11 @@ var RichTextToolbar = ({ config, customControls, onInsertTable, onInsertAsset })
14674
14771
  }
14675
14772
  },
14676
14773
  css: [richTextToolbarButton, isLink ? richTextToolbarButtonActive : null],
14677
- children: /* @__PURE__ */ jsx128(RichTextToolbarIcon, { icon: "link" })
14774
+ children: /* @__PURE__ */ jsx129(RichTextToolbarIcon, { icon: "link" })
14678
14775
  }
14679
14776
  ) }) : null,
14680
- visibleLists.size > 0 ? /* @__PURE__ */ jsxs86(Fragment16, { children: [
14681
- visibleLists.has("unorderedList") ? /* @__PURE__ */ jsx128(Tooltip, { title: "Bullet List", placement: "top", children: /* @__PURE__ */ jsx128(
14777
+ visibleLists.size > 0 ? /* @__PURE__ */ jsxs87(Fragment17, { children: [
14778
+ visibleLists.has("unorderedList") ? /* @__PURE__ */ jsx129(Tooltip, { title: "Bullet List", placement: "top", children: /* @__PURE__ */ jsx129(
14682
14779
  "button",
14683
14780
  {
14684
14781
  "data-testid": "element-unordered-list",
@@ -14694,10 +14791,10 @@ var RichTextToolbar = ({ config, customControls, onInsertTable, onInsertAsset })
14694
14791
  richTextToolbarButton,
14695
14792
  activeElement === "unorderedList" ? richTextToolbarButtonActive : null
14696
14793
  ],
14697
- children: /* @__PURE__ */ jsx128(RichTextToolbarIcon, { icon: "layout-list" })
14794
+ children: /* @__PURE__ */ jsx129(RichTextToolbarIcon, { icon: "layout-list" })
14698
14795
  }
14699
14796
  ) }) : null,
14700
- visibleLists.has("orderedList") ? /* @__PURE__ */ jsx128(Tooltip, { title: "Ordered List", placement: "top", children: /* @__PURE__ */ jsx128(
14797
+ visibleLists.has("orderedList") ? /* @__PURE__ */ jsx129(Tooltip, { title: "Ordered List", placement: "top", children: /* @__PURE__ */ jsx129(
14701
14798
  "button",
14702
14799
  {
14703
14800
  "data-testid": "element-ordered-list",
@@ -14713,58 +14810,58 @@ var RichTextToolbar = ({ config, customControls, onInsertTable, onInsertAsset })
14713
14810
  richTextToolbarButton,
14714
14811
  activeElement === "orderedList" ? richTextToolbarButtonActive : null
14715
14812
  ],
14716
- children: /* @__PURE__ */ jsx128(RichTextToolbarIcon, { icon: "layout-list-numbered" })
14813
+ children: /* @__PURE__ */ jsx129(RichTextToolbarIcon, { icon: "layout-list-numbered" })
14717
14814
  }
14718
14815
  ) }) : null
14719
14816
  ] }) : null,
14720
14817
  customControls ? customControls : null
14721
14818
  ] }) : null,
14722
- visibleInsertElementsWithIcons.size > 0 ? /* @__PURE__ */ jsx128("div", { css: toolbarGroup, "data-testid": "rich-text-toolbar-insert", children: /* @__PURE__ */ jsxs86(
14819
+ visibleInsertElementsWithIcons.size > 0 ? /* @__PURE__ */ jsx129("div", { css: toolbarGroup, "data-testid": "rich-text-toolbar-insert", children: /* @__PURE__ */ jsxs87(
14723
14820
  Menu,
14724
14821
  {
14725
- menuTrigger: /* @__PURE__ */ jsxs86("button", { css: richTextToolbarButton, title: "Insert block element", type: "button", children: [
14822
+ menuTrigger: /* @__PURE__ */ jsxs87("button", { css: richTextToolbarButton, title: "Insert block element", type: "button", children: [
14726
14823
  "Insert",
14727
- /* @__PURE__ */ jsx128(Icon, { icon: "chevron-down", css: [toolbarIcon, toolbarChevron], size: "1rem" })
14824
+ /* @__PURE__ */ jsx129(Icon, { icon: "chevron-down", css: [toolbarIcon, toolbarChevron], size: "1rem" })
14728
14825
  ] }),
14729
14826
  placement: "bottom-start",
14730
14827
  children: [
14731
- quoteElementVisible ? /* @__PURE__ */ jsx128(
14828
+ quoteElementVisible ? /* @__PURE__ */ jsx129(
14732
14829
  MenuItem,
14733
14830
  {
14734
14831
  onClick: () => {
14735
14832
  onSelectElement("quote");
14736
14833
  },
14737
- icon: /* @__PURE__ */ jsx128(Icon, { icon: "quote", iconColor: "currentColor" }),
14834
+ icon: /* @__PURE__ */ jsx129(Icon, { icon: "quote", iconColor: "currentColor" }),
14738
14835
  children: "Quote"
14739
14836
  }
14740
14837
  ) : null,
14741
- codeElementVisible ? /* @__PURE__ */ jsx128(
14838
+ codeElementVisible ? /* @__PURE__ */ jsx129(
14742
14839
  MenuItem,
14743
14840
  {
14744
14841
  onClick: () => {
14745
14842
  onSelectElement("code");
14746
14843
  },
14747
- icon: /* @__PURE__ */ jsx128(Icon, { icon: "code-slash", iconColor: "currentColor" }),
14844
+ icon: /* @__PURE__ */ jsx129(Icon, { icon: "code-slash", iconColor: "currentColor" }),
14748
14845
  children: "Code"
14749
14846
  }
14750
14847
  ) : null,
14751
- tableElementVisible && onInsertTable !== void 0 ? /* @__PURE__ */ jsx128(
14848
+ tableElementVisible && onInsertTable !== void 0 ? /* @__PURE__ */ jsx129(
14752
14849
  MenuItem,
14753
14850
  {
14754
14851
  onClick: () => {
14755
14852
  onSelectElement("table");
14756
14853
  },
14757
- icon: /* @__PURE__ */ jsx128(Icon, { icon: "view-grid", iconColor: "currentColor" }),
14854
+ icon: /* @__PURE__ */ jsx129(Icon, { icon: "view-grid", iconColor: "currentColor" }),
14758
14855
  children: "Table"
14759
14856
  }
14760
14857
  ) : null,
14761
- assetElementVisible && onInsertAsset !== void 0 ? /* @__PURE__ */ jsx128(
14858
+ assetElementVisible && onInsertAsset !== void 0 ? /* @__PURE__ */ jsx129(
14762
14859
  MenuItem,
14763
14860
  {
14764
14861
  onClick: () => {
14765
14862
  onSelectElement("asset");
14766
14863
  },
14767
- icon: /* @__PURE__ */ jsx128(Icon, { icon: "image", iconColor: "currentColor" }),
14864
+ icon: /* @__PURE__ */ jsx129(Icon, { icon: "image", iconColor: "currentColor" }),
14768
14865
  children: "Asset"
14769
14866
  }
14770
14867
  ) : null
@@ -14776,7 +14873,7 @@ var RichTextToolbar = ({ config, customControls, onInsertTable, onInsertAsset })
14776
14873
  var RichTextToolbar_default = RichTextToolbar;
14777
14874
 
14778
14875
  // src/components/ParameterInputs/ParameterRichText.tsx
14779
- import { Fragment as Fragment17, jsx as jsx129, jsxs as jsxs87 } from "@emotion/react/jsx-runtime";
14876
+ import { Fragment as Fragment18, jsx as jsx130, jsxs as jsxs88 } from "@emotion/react/jsx-runtime";
14780
14877
  var ParameterRichText = ({
14781
14878
  label,
14782
14879
  labelLeadingIcon,
@@ -14805,7 +14902,7 @@ var ParameterRichText = ({
14805
14902
  onInsertAsset,
14806
14903
  minimalInteractivity
14807
14904
  }) => {
14808
- return /* @__PURE__ */ jsxs87(
14905
+ return /* @__PURE__ */ jsxs88(
14809
14906
  ParameterShell,
14810
14907
  {
14811
14908
  "data-testid": "parameter-richtext",
@@ -14819,7 +14916,7 @@ var ParameterRichText = ({
14819
14916
  captionTestId,
14820
14917
  menuItems,
14821
14918
  children: [
14822
- /* @__PURE__ */ jsx129(
14919
+ /* @__PURE__ */ jsx130(
14823
14920
  ParameterRichTextInner,
14824
14921
  {
14825
14922
  value,
@@ -14841,7 +14938,7 @@ var ParameterRichText = ({
14841
14938
  children
14842
14939
  }
14843
14940
  ),
14844
- menuItems ? /* @__PURE__ */ jsx129(ParameterMenuButton, { label: `${label} menu`, children: /* @__PURE__ */ jsx129(Fragment17, { children: menuItems }) }) : null
14941
+ menuItems ? /* @__PURE__ */ jsx130(ParameterMenuButton, { label: `${label} menu`, children: /* @__PURE__ */ jsx130(Fragment18, { children: menuItems }) }) : null
14845
14942
  ]
14846
14943
  }
14847
14944
  );
@@ -15002,8 +15099,8 @@ var ParameterRichTextInner = ({
15002
15099
  },
15003
15100
  editable: !readOnly
15004
15101
  };
15005
- return /* @__PURE__ */ jsxs87(Fragment17, { children: [
15006
- /* @__PURE__ */ jsx129("div", { css: [editorWrapper], className: editorWrapperClassName, children: /* @__PURE__ */ jsx129(LexicalComposer, { initialConfig: lexicalConfig, children: /* @__PURE__ */ jsx129(
15102
+ return /* @__PURE__ */ jsxs88(Fragment18, { children: [
15103
+ /* @__PURE__ */ jsx130("div", { css: [editorWrapper], className: editorWrapperClassName, children: /* @__PURE__ */ jsx130(LexicalComposer, { initialConfig: lexicalConfig, children: /* @__PURE__ */ jsx130(
15007
15104
  RichText,
15008
15105
  {
15009
15106
  onChange,
@@ -15049,15 +15146,20 @@ var RichText = ({
15049
15146
  minimalInteractivity
15050
15147
  }) => {
15051
15148
  const [editor] = useLexicalComposerContext9();
15052
- useEffect22(() => {
15149
+ useEffect23(() => {
15053
15150
  if (onRichTextInit) {
15054
15151
  onRichTextInit(editor);
15055
15152
  }
15056
15153
  }, [editor, onRichTextInit]);
15057
- useEffect22(() => {
15154
+ useEffect23(() => {
15058
15155
  const removeUpdateListener = editor.registerUpdateListener(({ editorState, prevEditorState, tags }) => {
15059
15156
  requestAnimationFrame(() => {
15060
- if (!deepEqual2(editorState.toJSON(), prevEditorState.toJSON())) {
15157
+ const previousEditorState = prevEditorState.toJSON();
15158
+ const currentEditorState = editorState.toJSON();
15159
+ if (!deepEqual2(
15160
+ normalizeStateForDeepEqualComparison(currentEditorState),
15161
+ normalizeStateForDeepEqualComparison(previousEditorState)
15162
+ )) {
15061
15163
  onChange == null ? void 0 : onChange(editorState.toJSON(), tags);
15062
15164
  }
15063
15165
  });
@@ -15066,7 +15168,7 @@ var RichText = ({
15066
15168
  removeUpdateListener();
15067
15169
  };
15068
15170
  }, [editor, onChange]);
15069
- useEffect22(() => {
15171
+ useEffect23(() => {
15070
15172
  editor.setEditable(!readOnly);
15071
15173
  }, [editor, readOnly]);
15072
15174
  const [editorContainerRef, setEditorContainerRef] = useState20(null);
@@ -15081,8 +15183,8 @@ var RichText = ({
15081
15183
  setPortalContainerRef(_portalContainerRef);
15082
15184
  }
15083
15185
  };
15084
- return /* @__PURE__ */ jsxs87(Fragment17, { children: [
15085
- readOnly || minimalInteractivity ? null : /* @__PURE__ */ jsx129(
15186
+ return /* @__PURE__ */ jsxs88(Fragment18, { children: [
15187
+ readOnly || minimalInteractivity ? null : /* @__PURE__ */ jsx130(
15086
15188
  RichTextToolbar_default,
15087
15189
  {
15088
15190
  config,
@@ -15091,8 +15193,8 @@ var RichText = ({
15091
15193
  onInsertAsset
15092
15194
  }
15093
15195
  ),
15094
- /* @__PURE__ */ jsxs87("div", { css: editorContainerWrapper, ref: onPortalContainerRef, children: [
15095
- /* @__PURE__ */ jsxs87(
15196
+ /* @__PURE__ */ jsxs88("div", { css: editorContainerWrapper, ref: onPortalContainerRef, children: [
15197
+ /* @__PURE__ */ jsxs88(
15096
15198
  "div",
15097
15199
  {
15098
15200
  css: editorContainer,
@@ -15100,33 +15202,33 @@ var RichText = ({
15100
15202
  ref: onEditorContainerRef,
15101
15203
  "data-testid": "value-container",
15102
15204
  children: [
15103
- /* @__PURE__ */ jsx129(
15205
+ /* @__PURE__ */ jsx130(
15104
15206
  RichTextPlugin,
15105
15207
  {
15106
- contentEditable: /* @__PURE__ */ jsx129(ContentEditable, { css: editorInput, className: editorInputClassName }),
15107
- placeholder: /* @__PURE__ */ jsx129("div", { css: editorPlaceholder, children: readOnly ? "empty" : "start editing..." }),
15208
+ contentEditable: /* @__PURE__ */ jsx130(ContentEditable, { css: editorInput, className: editorInputClassName }),
15209
+ placeholder: /* @__PURE__ */ jsx130("div", { css: editorPlaceholder, children: readOnly ? "empty" : "start editing..." }),
15108
15210
  ErrorBoundary: LexicalErrorBoundary
15109
15211
  }
15110
15212
  ),
15111
- /* @__PURE__ */ jsx129(ListPlugin, {}),
15112
- /* @__PURE__ */ jsx129(ListIndentPlugin, { maxDepth: 4 }),
15113
- /* @__PURE__ */ jsx129(TablePlugin, { hasCellMerge: false, hasCellBackgroundColor: false }),
15114
- /* @__PURE__ */ jsx129("div", { css: editorContainerOverflowWrapper, "data-testid": "table-action-menu-plugin", children: editorContainerRef && portalContainerRef && !minimalInteractivity ? /* @__PURE__ */ jsx129(
15213
+ /* @__PURE__ */ jsx130(ListPlugin, {}),
15214
+ /* @__PURE__ */ jsx130(ListIndentPlugin, { maxDepth: 4 }),
15215
+ /* @__PURE__ */ jsx130(TablePlugin, { hasCellMerge: false, hasCellBackgroundColor: false }),
15216
+ /* @__PURE__ */ jsx130("div", { css: editorContainerOverflowWrapper, "data-testid": "table-action-menu-plugin", children: editorContainerRef && portalContainerRef && !minimalInteractivity ? /* @__PURE__ */ jsx130(
15115
15217
  TableActionMenuPlugin,
15116
15218
  {
15117
15219
  positioningAnchorEl: editorContainerRef,
15118
15220
  menuPortalEl: portalContainerRef
15119
15221
  }
15120
15222
  ) : null }),
15121
- editorContainerRef && !minimalInteractivity ? /* @__PURE__ */ jsx129(TableCellResizerPlugin, { positioningAnchorEl: editorContainerRef }) : null,
15122
- readOnly ? null : /* @__PURE__ */ jsx129(HistoryPlugin, {}),
15123
- /* @__PURE__ */ jsx129(DisableStylesPlugin, {}),
15124
- /* @__PURE__ */ jsx129(MarkdownShortcutPlugin, { transformers: MARKDOWN_TRANSFORMERS })
15223
+ editorContainerRef && !minimalInteractivity ? /* @__PURE__ */ jsx130(TableCellResizerPlugin, { positioningAnchorEl: editorContainerRef }) : null,
15224
+ readOnly ? null : /* @__PURE__ */ jsx130(HistoryPlugin, {}),
15225
+ /* @__PURE__ */ jsx130(DisableStylesPlugin, {}),
15226
+ /* @__PURE__ */ jsx130(MarkdownShortcutPlugin, { transformers: MARKDOWN_TRANSFORMERS })
15125
15227
  ]
15126
15228
  }
15127
15229
  ),
15128
- /* @__PURE__ */ jsx129(Fragment17, { children }),
15129
- editorContainerRef ? /* @__PURE__ */ jsx129(
15230
+ /* @__PURE__ */ jsx130(Fragment18, { children }),
15231
+ editorContainerRef ? /* @__PURE__ */ jsx130(
15130
15232
  LinkNodePlugin,
15131
15233
  {
15132
15234
  onConnectLink: onConnectLink ? onConnectLink : () => Promise.resolve(),
@@ -15137,25 +15239,25 @@ var RichText = ({
15137
15239
  positioningAnchorEl: editorContainerRef
15138
15240
  }
15139
15241
  ) : null,
15140
- /* @__PURE__ */ jsx129(TableSelectionPlugin_default, {}),
15141
- /* @__PURE__ */ jsx129(ImprovedAssetSelectionPlugin_default, {})
15242
+ /* @__PURE__ */ jsx130(TableSelectionPlugin_default, {}),
15243
+ /* @__PURE__ */ jsx130(ImprovedAssetSelectionPlugin_default, {})
15142
15244
  ] })
15143
15245
  ] });
15144
15246
  };
15145
15247
 
15146
15248
  // src/components/ParameterInputs/ParameterSelect.tsx
15147
15249
  import { forwardRef as forwardRef26 } from "react";
15148
- import { jsx as jsx130, jsxs as jsxs88 } from "@emotion/react/jsx-runtime";
15250
+ import { jsx as jsx131, jsxs as jsxs89 } from "@emotion/react/jsx-runtime";
15149
15251
  var ParameterSelect = forwardRef26(
15150
15252
  ({ defaultOption, options, ...props }, ref) => {
15151
15253
  const { shellProps, innerProps } = extractParameterProps(props);
15152
- return /* @__PURE__ */ jsx130(ParameterShell, { ...shellProps, children: /* @__PURE__ */ jsx130(ParameterSelectInner, { options, defaultOption, ...innerProps, ref }) });
15254
+ return /* @__PURE__ */ jsx131(ParameterShell, { ...shellProps, children: /* @__PURE__ */ jsx131(ParameterSelectInner, { options, defaultOption, ...innerProps, ref }) });
15153
15255
  }
15154
15256
  );
15155
15257
  var ParameterSelectInner = forwardRef26(
15156
15258
  ({ defaultOption, options, ...props }, ref) => {
15157
15259
  const { id, label, hiddenLabel } = useParameterShell();
15158
- return /* @__PURE__ */ jsxs88(
15260
+ return /* @__PURE__ */ jsxs89(
15159
15261
  "select",
15160
15262
  {
15161
15263
  css: [input3, selectInput],
@@ -15164,10 +15266,10 @@ var ParameterSelectInner = forwardRef26(
15164
15266
  ref,
15165
15267
  ...props,
15166
15268
  children: [
15167
- defaultOption ? /* @__PURE__ */ jsx130("option", { value: "", children: defaultOption }) : null,
15269
+ defaultOption ? /* @__PURE__ */ jsx131("option", { value: "", children: defaultOption }) : null,
15168
15270
  options.map((option) => {
15169
15271
  var _a;
15170
- return /* @__PURE__ */ jsx130("option", { value: (_a = option.value) != null ? _a : option.label, children: option.label }, option.label);
15272
+ return /* @__PURE__ */ jsx131("option", { value: (_a = option.value) != null ? _a : option.label, children: option.label }, option.label);
15171
15273
  })
15172
15274
  ]
15173
15275
  }
@@ -15177,14 +15279,14 @@ var ParameterSelectInner = forwardRef26(
15177
15279
 
15178
15280
  // src/components/ParameterInputs/ParameterTextarea.tsx
15179
15281
  import { forwardRef as forwardRef27 } from "react";
15180
- import { jsx as jsx131 } from "@emotion/react/jsx-runtime";
15282
+ import { jsx as jsx132 } from "@emotion/react/jsx-runtime";
15181
15283
  var ParameterTextarea = forwardRef27((props, ref) => {
15182
15284
  const { shellProps, innerProps } = extractParameterProps(props);
15183
- return /* @__PURE__ */ jsx131(ParameterShell, { "data-testid": "parameter-textarea", ...shellProps, children: /* @__PURE__ */ jsx131(ParameterTextareaInner, { ref, ...innerProps }) });
15285
+ return /* @__PURE__ */ jsx132(ParameterShell, { "data-testid": "parameter-textarea", ...shellProps, children: /* @__PURE__ */ jsx132(ParameterTextareaInner, { ref, ...innerProps }) });
15184
15286
  });
15185
15287
  var ParameterTextareaInner = forwardRef27(({ ...props }, ref) => {
15186
15288
  const { id, label, hiddenLabel } = useParameterShell();
15187
- return /* @__PURE__ */ jsx131(
15289
+ return /* @__PURE__ */ jsx132(
15188
15290
  "textarea",
15189
15291
  {
15190
15292
  css: [input3, textarea2],
@@ -15198,84 +15300,22 @@ var ParameterTextareaInner = forwardRef27(({ ...props }, ref) => {
15198
15300
 
15199
15301
  // src/components/ParameterInputs/ParameterToggle.tsx
15200
15302
  import { forwardRef as forwardRef28 } from "react";
15201
- import { jsx as jsx132, jsxs as jsxs89 } from "@emotion/react/jsx-runtime";
15303
+ import { jsx as jsx133, jsxs as jsxs90 } from "@emotion/react/jsx-runtime";
15202
15304
  var ParameterToggle = forwardRef28((props, ref) => {
15203
15305
  const { shellProps, innerProps } = extractParameterProps(props);
15204
- return /* @__PURE__ */ jsx132(ParameterShell, { ...shellProps, children: /* @__PURE__ */ jsx132(ParameterToggleInner, { ref, ...innerProps }) });
15306
+ return /* @__PURE__ */ jsx133(ParameterShell, { ...shellProps, children: /* @__PURE__ */ jsx133(ParameterToggleInner, { ref, ...innerProps }) });
15205
15307
  });
15206
15308
  var ParameterToggleInner = forwardRef28(
15207
15309
  ({ children, ...props }, ref) => {
15208
15310
  const { id, label } = useParameterShell();
15209
- return /* @__PURE__ */ jsxs89("label", { css: inputToggleLabel2, children: [
15210
- /* @__PURE__ */ jsx132("input", { css: toggleInput2, type: props.type, id, ref, ...props }),
15211
- /* @__PURE__ */ jsx132("span", { css: inlineLabel2, children: label }),
15311
+ return /* @__PURE__ */ jsxs90("label", { css: inputToggleLabel2, children: [
15312
+ /* @__PURE__ */ jsx133("input", { css: toggleInput2, type: props.type, id, ref, ...props }),
15313
+ /* @__PURE__ */ jsx133("span", { css: inlineLabel2, children: label }),
15212
15314
  children
15213
15315
  ] });
15214
15316
  }
15215
15317
  );
15216
15318
 
15217
- // src/components/Popover/Popover.tsx
15218
- import {
15219
- Popover as AriakitPopover,
15220
- PopoverDisclosure as PopoverDisclosure2,
15221
- PopoverProvider as PopoverProvider2,
15222
- usePopoverContext,
15223
- usePopoverStore as usePopoverStore2
15224
- } from "@ariakit/react";
15225
- import { useEffect as useEffect23 } from "react";
15226
- import { Fragment as Fragment18, jsx as jsx133, jsxs as jsxs90 } from "@emotion/react/jsx-runtime";
15227
- var Popover3 = ({
15228
- iconColor = "action",
15229
- icon = "info",
15230
- iconSize = "1rem",
15231
- buttonText,
15232
- ariaLabel,
15233
- placement = "bottom",
15234
- testId,
15235
- trigger: trigger2,
15236
- children,
15237
- onInit,
15238
- variant = "small",
15239
- maxWidth = variant === "large" ? "24rem" : "14rem",
15240
- ...otherProps
15241
- }) => {
15242
- const popover2 = usePopoverStore2({ placement });
15243
- useEffect23(() => {
15244
- onInit == null ? void 0 : onInit({ store: popover2 });
15245
- }, [popover2]);
15246
- return /* @__PURE__ */ jsxs90(PopoverProvider2, { store: popover2, children: [
15247
- /* @__PURE__ */ jsx133(
15248
- PopoverDisclosure2,
15249
- {
15250
- css: [PopoverBtn, trigger2 ? void 0 : PopoverDefaulterTriggerBtn],
15251
- title: buttonText,
15252
- "data-testid": testId,
15253
- children: trigger2 ? trigger2 : /* @__PURE__ */ jsxs90(Fragment18, { children: [
15254
- /* @__PURE__ */ jsx133(Icon, { icon, iconColor, size: iconSize }),
15255
- /* @__PURE__ */ jsx133("span", { hidden: true, children: buttonText })
15256
- ] })
15257
- }
15258
- ),
15259
- /* @__PURE__ */ jsx133(
15260
- AriakitPopover,
15261
- {
15262
- unmountOnHide: true,
15263
- style: {
15264
- maxWidth
15265
- },
15266
- css: [Popover, variant === "large" ? PopoverVariantLarge : PopoverVariantSmall],
15267
- ...otherProps,
15268
- "aria-label": ariaLabel,
15269
- children
15270
- }
15271
- )
15272
- ] });
15273
- };
15274
- var usePopoverComponentContext = () => {
15275
- const contextValue = usePopoverContext();
15276
- return contextValue;
15277
- };
15278
-
15279
15319
  // src/components/ProgressBar/ProgressBar.styles.ts
15280
15320
  import { css as css99, keyframes as keyframes4 } from "@emotion/react";
15281
15321
  var container3 = css99`