@uniformdev/design-system 19.69.0 → 19.71.1-alpha.103

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
@@ -27,7 +27,7 @@ var Theme = ({ disableReset = false, disableGlobalReset = false }) => {
27
27
  {
28
28
  dangerouslySetInnerHTML: {
29
29
  __html: `
30
- :root, :host {
30
+ :root, :host, ::backdrop {
31
31
  --brand-primary-1: #438fd5; /* bright blue */
32
32
  --brand-primary-2: #f4220b; /* red */
33
33
  --brand-primary-3: #83c6e1; /* slate blue */
@@ -91,7 +91,7 @@ var Theme = ({ disableReset = false, disableGlobalReset = false }) => {
91
91
 
92
92
  /* off brand */
93
93
  --input-border: rgba(31, 43, 52, 0.5);
94
- --ring: 0 0 0 0 var(--white), 0 0 0 3px var(--brand-primary-3);
94
+ --ring: 0 0 0 0 var(--white), 0 0 0 2px var(--brand-primary-3);
95
95
  --ring-inset: inset 0 0 0 0 var(--white), inset 0 0 0 3px var(--brand-primary-3);
96
96
 
97
97
  /* site settings */
@@ -133,12 +133,22 @@ var Theme = ({ disableReset = false, disableGlobalReset = false }) => {
133
133
  /* max text width */
134
134
  --prose: 65ch;
135
135
 
136
+ /* elevation */
137
+ --elevation-0: none;
138
+ --elevation-100: 0 0 2px 0 rgba(13, 24, 39, 0.08), 0 2px 4px 0 rgba(17, 24, 39, 0.08);
139
+ --elevation-200: 0 0 2px 0 rgba(17, 24, 39, 0.07), 0 2px 4px 0 rgba(13, 24, 39, 0.07), 0 4px 8px 0 rgba(17, 24, 39, 0.07);
140
+ --elevation-300: 0 8px 16px 0 rgba(17, 24, 39, 0.06), 0 2px 4px 0 rgba(13, 24, 39, 0.06), 0 4px 8px 0 rgba(17, 24, 39, 0.06);
141
+ --elevation-400: 0 8px 16px 0 rgba(17, 24, 39, 0.05), 0 16px 24px 0 rgba(13, 24, 39, 0.05), 0 4px 8px 0 rgba(17, 24, 39, 0.05);
142
+ --elevation-500: 0 8px 16px 0 rgba(17, 24, 39, 0.04), 0 16px 24px 0 rgba(13, 24, 39, 0.04), 0 24px 32px 0 rgba(17, 24, 39, 0.04);
143
+ --elevation-600: 0 32px 40px 0 rgba(17, 24, 39, 0.03), 0 16px 24px 0 rgba(13, 24, 39, 0.03), 0 24px 32px 0 rgba(17, 24, 39, 0.03);
144
+
145
+ /* deprecated in favour of --elevation-* variables */
136
146
  /* brand shadow styles */
137
- --shadow-sm: rgba(31, 43, 52, 0.05) 0px 0px 0px 1px;
138
- --shadow-base: rgba(31, 43, 52, 0.25) 0 2px 5px -1px,
139
- rgba(31, 43, 52, 0.3) 0px 1px 3px -1px;
140
- --shadow-md: 0px 4px 4px rgba(31, 43, 52, 0.25), 0 2px 4px -2px rgba(31, 43, 52, 0.1);
141
- --shadow-xl: 0px 0px 24px rgba(31, 43, 52, 0.3);
147
+ --shadow-sm: var(--elevation-100);
148
+ --shadow-base: var(--elevation-200);
149
+ --shadow-md: var(--elevation-300);
150
+ --shadow-xl: var(--elevation-600);
151
+ /* deprecated in favour of --elevation-* variables */
142
152
 
143
153
  /* rounder corners */
144
154
  --rounded-sm: 0.125rem; /* 2px */
@@ -1887,9 +1897,9 @@ var AddListButtonBtnSmall = css9`
1887
1897
  font-weight: var(--fw-regular);
1888
1898
  margin-block: var(--spacing-md) 0;
1889
1899
  `;
1890
- var AddListButtonIconMathPlus = (disabled, theme) => css9`
1900
+ var AddListButtonIconMathPlus = (disabled2, theme) => css9`
1891
1901
  box-sizing: border-box;
1892
- background: ${disabled ? "var(--gray-300)" : theme};
1902
+ background: ${disabled2 ? "var(--gray-300)" : theme};
1893
1903
  color: var(--white);
1894
1904
  padding: calc(var(--spacing-xs) - 0.15rem);
1895
1905
  `;
@@ -1903,7 +1913,7 @@ import { jsx as jsx8, jsxs as jsxs3 } from "@emotion/react/jsx-runtime";
1903
1913
  var AddListButton = ({
1904
1914
  buttonText = "Add Item",
1905
1915
  onButtonClick,
1906
- disabled,
1916
+ disabled: disabled2,
1907
1917
  icon = "math-plus",
1908
1918
  variant = "regular",
1909
1919
  theme = "var(--primary-action-default)",
@@ -1925,7 +1935,7 @@ var AddListButton = ({
1925
1935
  css: [variantStylesMap[variant], AddListButtonTheme(theme)],
1926
1936
  onClick: onButtonClick,
1927
1937
  title: buttonText,
1928
- disabled,
1938
+ disabled: disabled2,
1929
1939
  ...buttonProps,
1930
1940
  children: [
1931
1941
  icon === "math-plus" ? /* @__PURE__ */ jsx8(
@@ -1934,7 +1944,7 @@ var AddListButton = ({
1934
1944
  icon: mapIcon[icon],
1935
1945
  iconColor: "currentColor",
1936
1946
  size: "1.25em",
1937
- css: [AddListButtonIcon, AddListButtonIconMathPlus(disabled, theme)]
1947
+ css: [AddListButtonIcon, AddListButtonIconMathPlus(disabled2, theme)]
1938
1948
  }
1939
1949
  ) : /* @__PURE__ */ jsx8(Icon, { icon: mapIcon[icon], iconColor: "currentColor", size: "1.25em", css: AddListButtonIcon }),
1940
1950
  buttonText
@@ -1999,6 +2009,7 @@ var Heading = ({
1999
2009
  Heading2,
2000
2010
  {
2001
2011
  ...hAttributes,
2012
+ role: typeof as === "string" && /^h/.test(as) ? "heading" : void 0,
2002
2013
  css: [headingStyle[level], commonHeadingAttr(withMarginBottom), commonLineHeight],
2003
2014
  children
2004
2015
  }
@@ -2285,7 +2296,7 @@ var IntegrationHeaderSection = ({
2285
2296
  icon,
2286
2297
  docsLink,
2287
2298
  badgeText,
2288
- menu: menu2,
2299
+ menu,
2289
2300
  children,
2290
2301
  ...props
2291
2302
  }) => {
@@ -2300,7 +2311,7 @@ var IntegrationHeaderSection = ({
2300
2311
  /* @__PURE__ */ jsxs5("div", { css: IntegrationHeaderSectionTitleGroup, "data-testid": "integration-header-text", children: [
2301
2312
  /* @__PURE__ */ jsx13("h1", { css: IntegrationHeaderSectionTitle, children: title2 }),
2302
2313
  badgeText ? /* @__PURE__ */ jsx13(Badge, { text: badgeText }) : null,
2303
- menu2 ? /* @__PURE__ */ jsx13("div", { children: menu2 }) : null,
2314
+ menu ? /* @__PURE__ */ jsx13("div", { children: menu }) : null,
2304
2315
  docsLink ? /* @__PURE__ */ jsx13(
2305
2316
  Link,
2306
2317
  {
@@ -11523,13 +11534,13 @@ var HorizontalRhythm = ({
11523
11534
  };
11524
11535
 
11525
11536
  // src/components/Menu/Menu.tsx
11526
- import * as React8 from "react";
11527
11537
  import {
11528
11538
  Menu as BaseMenu,
11529
11539
  MenuButton,
11530
- useMenuState
11531
- } from "reakit/Menu";
11532
- import { Portal } from "reakit/Portal";
11540
+ MenuProvider,
11541
+ useMenuStore
11542
+ } from "@ariakit/react";
11543
+ import * as React8 from "react";
11533
11544
 
11534
11545
  // src/components/Menu/filterMenuSeparators.ts
11535
11546
  import React7, { isValidElement } from "react";
@@ -11576,17 +11587,18 @@ var menuItem = (textTheme, forceActive) => css25`
11576
11587
  font-weight: var(--fw-regular);
11577
11588
  flex-grow: 1;
11578
11589
  gap: var(--spacing-xs);
11579
-
11590
+ cursor: default;
11580
11591
  white-space: nowrap;
11581
11592
  transition: background-color var(--duration-fast) var(--timing-ease-out);
11582
11593
  ${forceActive ? activeMenuItem : ""}
11583
11594
 
11584
- &:disabled {
11585
- color: var(--gray-300);
11595
+ &[aria-disabled="true"] {
11596
+ opacity: 0.5;
11586
11597
  }
11587
11598
 
11588
11599
  &:hover,
11589
- &:focus {
11600
+ &:focus,
11601
+ &[data-active-item] {
11590
11602
  ${typeof forceActive === "undefined" ? activeMenuItem : ""}
11591
11603
  }
11592
11604
  `;
@@ -11603,6 +11615,7 @@ var menuItemWithIcon = css25`
11603
11615
  }
11604
11616
  `;
11605
11617
  var menuItemSeparator = css25`
11618
+ border: 0;
11606
11619
  border-top: 1px solid var(--gray-300);
11607
11620
  width: 100%;
11608
11621
  margin-block: var(--spacing-sm);
@@ -11659,7 +11672,7 @@ function isMenuSeparator(child) {
11659
11672
 
11660
11673
  // src/components/Menu/Menu.styles.ts
11661
11674
  import { css as css26 } from "@emotion/react";
11662
- var menu = css26`
11675
+ var menuStyles = css26`
11663
11676
  box-shadow: var(--shadow-base);
11664
11677
  border-radius: var(--rounded-base);
11665
11678
  background: var(--gray-50);
@@ -11667,21 +11680,9 @@ var menu = css26`
11667
11680
  flex-direction: column;
11668
11681
  padding: var(--spacing-sm);
11669
11682
  outline: none;
11670
- overflow-x: hidden;
11671
- overflow-y: auto;
11672
11683
  position: relative;
11673
11684
  z-index: var(--z-50);
11674
11685
 
11675
- // work around for smaller screens not being able to access large menus
11676
- // see uni-2997
11677
- max-height: 55vh; // firefox support
11678
-
11679
- ${supports("max-height: 60dvh")} {
11680
- max-height: 55dvh; // modern browser support
11681
- }
11682
-
11683
- ${scrollbarStyles}
11684
-
11685
11686
  &:focus {
11686
11687
  outline: none;
11687
11688
  }
@@ -11689,91 +11690,102 @@ var menu = css26`
11689
11690
 
11690
11691
  // src/components/Menu/Menu.tsx
11691
11692
  import { jsx as jsx26, jsxs as jsxs15 } from "@emotion/react/jsx-runtime";
11692
- var MenuContext = React8.createContext({});
11693
- var useMenuContext = () => {
11694
- return React8.useContext(MenuContext);
11695
- };
11696
- var Menu = ({
11697
- menuLabel,
11693
+ var legacyPlacements = ["auto", "auto-start", "auto-end"];
11694
+ var Menu = React8.forwardRef(function Menu2({
11698
11695
  menuTrigger,
11699
- placement = "auto",
11700
- menuItemsContainerCssClasses,
11696
+ menuLabel,
11701
11697
  children,
11698
+ placement,
11702
11699
  forceVisible,
11700
+ withoutPortal,
11703
11701
  disableAutoSeparatorManagement,
11704
- withoutPortal = false
11705
- }) => {
11706
- const menuState = useMenuState({ placement, visible: forceVisible });
11707
- const [isRendered, setIsRendered] = React8.useState(false);
11708
- React8.useEffect(() => {
11709
- if (forceVisible !== void 0) {
11710
- menuState.setVisible(forceVisible);
11711
- }
11712
- }, [forceVisible, menuState]);
11713
- React8.useEffect(() => {
11714
- if (menuState.visible) {
11715
- setIsRendered(true);
11716
- }
11717
- }, [menuState.visible, setIsRendered]);
11718
- const Wrapper = withoutPortal ? React8.Fragment : Portal;
11719
- return /* @__PURE__ */ jsxs15(MenuContext.Provider, { value: menuState, children: [
11720
- /* @__PURE__ */ jsx26(MenuButton, { ...menuState, ref: menuTrigger.ref, ...menuTrigger.props, children: (triggerProps) => React8.cloneElement(menuTrigger, triggerProps) }),
11721
- /* @__PURE__ */ jsx26(Wrapper, { children: /* @__PURE__ */ jsx26(
11702
+ menuItemsContainerCssClasses,
11703
+ ...props
11704
+ }, ref) {
11705
+ const placementOverride = legacyPlacements.includes(placement) ? void 0 : placement;
11706
+ const menu = useMenuStore({ placement: placementOverride });
11707
+ return /* @__PURE__ */ jsxs15(MenuProvider, { store: menu, open: forceVisible, children: [
11708
+ /* @__PURE__ */ jsx26(MenuButton, { ref, render: menuTrigger }),
11709
+ /* @__PURE__ */ jsx26(
11722
11710
  BaseMenu,
11723
11711
  {
11724
- ...menuState,
11725
- "data-auto-resize-opt-in": true,
11726
- focusable: false,
11727
- "aria-label": menuLabel,
11728
- ...!isRendered ? { unstable_popoverStyles: { position: "absolute", opacity: "0" } } : void 0,
11712
+ gutter: 0,
11713
+ shift: menu.parent ? -4 : 0,
11714
+ ...props,
11729
11715
  css: [
11730
- menu,
11716
+ menuStyles,
11731
11717
  typeof menuItemsContainerCssClasses === "object" ? menuItemsContainerCssClasses : void 0
11732
11718
  ],
11733
11719
  className: typeof menuItemsContainerCssClasses === "string" ? menuItemsContainerCssClasses : "",
11734
11720
  "data-testid": "more-menu",
11721
+ hideOnHoverOutside: (event) => {
11722
+ var _a;
11723
+ if (!menu.parent)
11724
+ return false;
11725
+ const { contentElement, anchorElement } = menu.getState();
11726
+ const [target] = event.composedPath();
11727
+ if (!target)
11728
+ return false;
11729
+ const activeElement = (_a = target.ownerDocument) == null ? void 0 : _a.activeElement;
11730
+ if (anchorElement == null ? void 0 : anchorElement.contains(target))
11731
+ return false;
11732
+ if (contentElement == null ? void 0 : contentElement.contains(target))
11733
+ return false;
11734
+ if (activeElement && target.contains(activeElement))
11735
+ return false;
11736
+ return true;
11737
+ },
11735
11738
  children: disableAutoSeparatorManagement ? children : filterMenuSeparators(children)
11736
11739
  }
11737
- ) })
11740
+ )
11738
11741
  ] });
11739
- };
11742
+ });
11740
11743
 
11741
11744
  // src/components/Menu/MenuItem.tsx
11745
+ import { MenuItem as BaseMenuItem } from "@ariakit/react";
11742
11746
  import * as React9 from "react";
11743
- import { MenuItem as BaseMenuItem } from "reakit";
11744
11747
  import { jsx as jsx27, jsxs as jsxs16 } from "@emotion/react/jsx-runtime";
11748
+ var renderAsButton = (renderProps) => /* @__PURE__ */ jsx27("button", { type: "button", ...renderProps });
11745
11749
  var MenuItem = React9.forwardRef(
11746
- ({ children, className, hideMenuOnClick = true, icon, textColor = "base", active, ...props }, ref) => {
11747
- const menuState = useMenuContext();
11748
- const resolveProps = (originalProps) => {
11749
- const resolvedProps2 = { ...originalProps };
11750
- if (resolvedProps2.onClick) {
11751
- const origOnClick = resolvedProps2.onClick;
11752
- resolvedProps2.onClick = (e) => {
11753
- var _a;
11754
- (_a = menuState == null ? void 0 : menuState.hide) == null ? void 0 : _a.call(menuState);
11755
- origOnClick(e);
11756
- };
11757
- }
11758
- return resolvedProps2;
11759
- };
11760
- const resolvedProps = hideMenuOnClick ? resolveProps(props) : props;
11761
- const resolvedChildren = typeof children === "function" ? children(resolvedProps) : children;
11750
+ ({ children, className, hideMenuOnClick = true, icon, textColor = "base", active: active2, ...props }, ref) => {
11751
+ const resolvedChildren = typeof children === "function" ? children(props) : children;
11762
11752
  return /* @__PURE__ */ jsx27(
11763
11753
  BaseMenuItem,
11764
11754
  {
11765
11755
  ref,
11766
- type: "button",
11767
11756
  "data-testid": "button-menu",
11768
- ...menuState,
11769
- ...resolvedProps,
11770
- css: [menuItem(textColor, active), typeof className === "object" ? className : void 0],
11757
+ hideOnClick: hideMenuOnClick,
11758
+ css: [menuItem(textColor, active2), typeof className === "object" ? className : void 0],
11771
11759
  className: typeof className === "string" ? className : void 0,
11760
+ render: renderAsButton,
11761
+ ...props,
11772
11762
  children: icon ? renderWithIcon(resolvedChildren, icon) : resolvedChildren
11773
11763
  }
11774
11764
  );
11775
11765
  }
11776
11766
  );
11767
+ var MenuItemInner = ({
11768
+ ref,
11769
+ children,
11770
+ className,
11771
+ icon,
11772
+ textColor = "base",
11773
+ active: active2,
11774
+ ...props
11775
+ }) => {
11776
+ const resolvedChildren = typeof children === "function" ? children(props) : children;
11777
+ return /* @__PURE__ */ jsx27(
11778
+ "div",
11779
+ {
11780
+ "data-testid": "button-menu",
11781
+ role: "menuitem",
11782
+ css: [menuItem(textColor, active2), typeof className === "object" ? className : void 0],
11783
+ className: typeof className === "string" ? className : void 0,
11784
+ ...props,
11785
+ children: icon ? renderWithIcon(resolvedChildren, icon) : resolvedChildren
11786
+ }
11787
+ );
11788
+ };
11777
11789
  function renderWithIcon(children, icon) {
11778
11790
  return /* @__PURE__ */ jsxs16("span", { css: menuItemWithIcon, children: [
11779
11791
  icon,
@@ -11940,13 +11952,13 @@ var wholeButtonWithMenuIconOffset = css27`
11940
11952
  `;
11941
11953
 
11942
11954
  // src/components/ButtonWithMenu/ButtonWithMenu.tsx
11943
- import { Fragment as Fragment6, jsx as jsx28, jsxs as jsxs17 } from "@emotion/react/jsx-runtime";
11955
+ import { Fragment as Fragment5, jsx as jsx28, jsxs as jsxs17 } from "@emotion/react/jsx-runtime";
11944
11956
  var ButtonWithMenu = ({
11945
11957
  onButtonClick,
11946
11958
  buttonType = "secondary",
11947
11959
  buttonText,
11948
11960
  icon,
11949
- disabled,
11961
+ disabled: disabled2,
11950
11962
  children,
11951
11963
  placement,
11952
11964
  size = "lg",
@@ -11982,16 +11994,16 @@ var ButtonWithMenu = ({
11982
11994
  css: [
11983
11995
  sizes2[size],
11984
11996
  ButtonWithMenuContainer,
11985
- disabled ? buttonDisabledTheme[buttonType] : buttonTheme[buttonType]
11997
+ disabled2 ? buttonDisabledTheme[buttonType] : buttonTheme[buttonType]
11986
11998
  ],
11987
11999
  "data-testid": "multioptions-button",
11988
- children: onButtonClick ? /* @__PURE__ */ jsxs17(Fragment6, { children: [
12000
+ children: onButtonClick ? /* @__PURE__ */ jsxs17(Fragment5, { children: [
11989
12001
  /* @__PURE__ */ jsxs17(
11990
12002
  "button",
11991
12003
  {
11992
12004
  type: "button",
11993
12005
  css: ButtonWithMenuBtn,
11994
- disabled,
12006
+ disabled: disabled2,
11995
12007
  onClick: onButtonClick,
11996
12008
  "data-testid": "multioptions-button-main",
11997
12009
  ...buttonProps,
@@ -12001,8 +12013,8 @@ var ButtonWithMenu = ({
12001
12013
  ]
12002
12014
  }
12003
12015
  ),
12004
- disabled ? clickableButton : /* @__PURE__ */ jsx28(Menu, { menuLabel: "buttonMenu", placement, menuTrigger: clickableButton, children })
12005
- ] }) : /* @__PURE__ */ jsx28(Fragment6, { children: disabled ? dropdownButton : /* @__PURE__ */ jsx28(Menu, { menuLabel: "buttonMenu", placement, menuTrigger: dropdownButton, children }) })
12016
+ disabled2 ? clickableButton : /* @__PURE__ */ jsx28(Menu, { menuLabel: "buttonMenu", placement, menuTrigger: clickableButton, children })
12017
+ ] }) : /* @__PURE__ */ jsx28(Fragment5, { children: disabled2 ? dropdownButton : /* @__PURE__ */ jsx28(Menu, { menuLabel: "buttonMenu", placement, menuTrigger: dropdownButton, children }) })
12006
12018
  }
12007
12019
  );
12008
12020
  };
@@ -12362,7 +12374,7 @@ var Card = ({
12362
12374
  menuItems,
12363
12375
  children,
12364
12376
  titleWithMarginBottom = true,
12365
- disabled,
12377
+ disabled: disabled2,
12366
12378
  tag: Tag = "div",
12367
12379
  menuButtonTestId,
12368
12380
  ...props
@@ -12378,7 +12390,7 @@ var Card = ({
12378
12390
  {
12379
12391
  "aria-label": "More options",
12380
12392
  type: "button",
12381
- disabled,
12393
+ disabled: disabled2,
12382
12394
  css: CardMenu,
12383
12395
  "data-testid": menuButtonTestId != null ? menuButtonTestId : "list-card-menu",
12384
12396
  children: /* @__PURE__ */ jsx31(Icon, { icon: CgMoreAlt, iconColor: "currentColor", size: 32 })
@@ -12784,7 +12796,7 @@ var ChipActionButton = css36`
12784
12796
  `;
12785
12797
 
12786
12798
  // src/components/Chip/Chip.tsx
12787
- import { Fragment as Fragment7, jsx as jsx37, jsxs as jsxs22 } from "@emotion/react/jsx-runtime";
12799
+ import { Fragment as Fragment6, jsx as jsx37, jsxs as jsxs22 } from "@emotion/react/jsx-runtime";
12788
12800
  var chipTheme = {
12789
12801
  "accent-light": ChipThemeAccentLight,
12790
12802
  "accent-dark": ChipThemeAccentDark,
@@ -12807,7 +12819,7 @@ var Chip = ({
12807
12819
  md: ChipMedium
12808
12820
  };
12809
12821
  return /* @__PURE__ */ jsxs22("span", { css: [ChipContainer, chipSize[size], chipTheme[theme]], ...props, children: [
12810
- icon ? /* @__PURE__ */ jsxs22(Fragment7, { children: [
12822
+ icon ? /* @__PURE__ */ jsxs22(Fragment6, { children: [
12811
12823
  /* @__PURE__ */ jsx37("span", { role: "presentation", css: [ChipIcon], children: /* @__PURE__ */ jsx37(Icon, { icon, iconColor: "currentColor", size: "1rem" }) }),
12812
12824
  /* @__PURE__ */ jsx37("span", { role: "separator", css: ChipSeparator })
12813
12825
  ] }) : null,
@@ -13022,15 +13034,24 @@ import React10 from "react";
13022
13034
 
13023
13035
  // src/components/DescriptionList/DescriptionList.styles.ts
13024
13036
  import { css as css40 } from "@emotion/react";
13025
- var descriptionListStyles = css40`
13037
+ var descriptionListHorizontal = css40`
13026
13038
  display: grid;
13027
13039
  grid-template-columns: max-content auto;
13028
13040
  gap: var(--spacing-xs) var(--spacing-md);
13029
13041
  `;
13042
+ var descriptionListVertical = css40`
13043
+ display: flex;
13044
+ flex-direction: column;
13045
+ gap: var(--spacing-xs);
13046
+ `;
13030
13047
  var descriptionListLabelStyles = css40`
13031
13048
  display: flex;
13032
13049
  align-items: center;
13033
13050
  color: var(--gray-500);
13051
+
13052
+ dd + & {
13053
+ margin-top: var(--spacing-sm);
13054
+ }
13034
13055
  `;
13035
13056
  var descriptionListValueStyles = css40`
13036
13057
  display: flex;
@@ -13041,14 +13062,22 @@ var descriptionListValueStyles = css40`
13041
13062
  // src/components/DescriptionList/DescriptionList.tsx
13042
13063
  import { jsx as jsx41, jsxs as jsxs24 } from "@emotion/react/jsx-runtime";
13043
13064
  var DescriptionList = React10.forwardRef(
13044
- ({ items, ...listProps }, ref) => {
13065
+ ({ items, variant = "horizontal", ...listProps }, ref) => {
13045
13066
  if (!(items == null ? void 0 : items.length)) {
13046
13067
  return null;
13047
13068
  }
13048
- return /* @__PURE__ */ jsx41("dl", { ref, css: descriptionListStyles, ...listProps, children: items == null ? void 0 : items.map(({ label, value }) => /* @__PURE__ */ jsxs24(React10.Fragment, { children: [
13049
- /* @__PURE__ */ jsx41("dt", { css: descriptionListLabelStyles, children: label }),
13050
- /* @__PURE__ */ jsx41("dd", { css: descriptionListValueStyles, children: typeof value === "boolean" ? /* @__PURE__ */ jsx41(DescriptionListValueBoolean, { value }) : value })
13051
- ] }, label)) });
13069
+ return /* @__PURE__ */ jsx41(
13070
+ "dl",
13071
+ {
13072
+ ref,
13073
+ css: variant === "vertical" ? descriptionListVertical : descriptionListHorizontal,
13074
+ ...listProps,
13075
+ children: items == null ? void 0 : items.map(({ label, value }) => /* @__PURE__ */ jsxs24(React10.Fragment, { children: [
13076
+ /* @__PURE__ */ jsx41("dt", { css: descriptionListLabelStyles, children: label }),
13077
+ /* @__PURE__ */ jsx41("dd", { css: descriptionListValueStyles, children: typeof value === "boolean" ? /* @__PURE__ */ jsx41(DescriptionListValueBoolean, { value }) : value })
13078
+ ] }, label))
13079
+ }
13080
+ );
13052
13081
  }
13053
13082
  );
13054
13083
  DescriptionList.displayName = "DescriptionList";
@@ -13074,6 +13103,13 @@ var detailsContent = css41`
13074
13103
  animation: ${fadeInRtl} var(--duration-fast) var(--timing-ease-out) forwards;
13075
13104
  will-change: height;
13076
13105
  `;
13106
+ var detailsContentIndented = css41`
13107
+ margin-left: calc(1.25rem / 2);
13108
+ border-left: 1px solid var(--gray-300);
13109
+ padding-top: calc(var(--spacing-md) / 2);
13110
+ padding-left: var(--spacing-base);
13111
+ padding-bottom: var(--spacing-sm);
13112
+ `;
13077
13113
  var summary = css41`
13078
13114
  align-items: center;
13079
13115
  cursor: pointer;
@@ -13088,6 +13124,9 @@ var summary = css41`
13088
13124
  display: none;
13089
13125
  }
13090
13126
  `;
13127
+ var summaryCompact = css41`
13128
+ padding: 0;
13129
+ `;
13091
13130
  var summaryIcon = css41`
13092
13131
  transition: rotate var(--duration-fast) var(--timing-ease-out);
13093
13132
  rotate: -90deg;
@@ -13103,6 +13142,8 @@ var Details = ({
13103
13142
  children,
13104
13143
  isOpenByDefault = false,
13105
13144
  isOpen,
13145
+ isIndented = false,
13146
+ isCompact = false,
13106
13147
  onChange,
13107
13148
  ...props
13108
13149
  }) => {
@@ -13124,7 +13165,7 @@ var Details = ({
13124
13165
  ref: detailsRef,
13125
13166
  ...props,
13126
13167
  children: [
13127
- /* @__PURE__ */ jsxs25("summary", { "data-testid": "summary", css: summary, children: [
13168
+ /* @__PURE__ */ jsxs25("summary", { "data-testid": "summary", css: [summary, isCompact ? summaryCompact : null], children: [
13128
13169
  /* @__PURE__ */ jsx42(
13129
13170
  Icon,
13130
13171
  {
@@ -13136,7 +13177,14 @@ var Details = ({
13136
13177
  ),
13137
13178
  summary2
13138
13179
  ] }),
13139
- memoizedIsOpen ? /* @__PURE__ */ jsx42("div", { "data-testid": "details-content", css: detailsContent, children }) : null
13180
+ memoizedIsOpen ? /* @__PURE__ */ jsx42(
13181
+ "div",
13182
+ {
13183
+ "data-testid": "details-content",
13184
+ css: [detailsContent, isIndented ? detailsContentIndented : null],
13185
+ children
13186
+ }
13187
+ ) : null
13140
13188
  ]
13141
13189
  }
13142
13190
  );
@@ -13144,7 +13192,7 @@ var Details = ({
13144
13192
 
13145
13193
  // src/components/Drawer/Drawer.tsx
13146
13194
  import { CgChevronRight } from "@react-icons/all-files/cg/CgChevronRight";
13147
- import React13, { createContext as createContext4, useContext as useContext5, useEffect as useEffect5, useRef as useRef3, useState as useState6 } from "react";
13195
+ import React13, { createContext as createContext3, useContext as useContext4, useEffect as useEffect4, useRef as useRef3, useState as useState5 } from "react";
13148
13196
  import { createPortal } from "react-dom";
13149
13197
 
13150
13198
  // src/components/Drawer/Drawer.styles.ts
@@ -13255,22 +13303,27 @@ var drawerWrapperOverlayStyles = css42`
13255
13303
  `;
13256
13304
 
13257
13305
  // src/components/Drawer/DrawerProvider.tsx
13258
- import { createContext as createContext3, useCallback, useContext as useContext4, useRef as useRef2, useState as useState5 } from "react";
13306
+ import { createContext as createContext2, useCallback, useContext as useContext3, useRef as useRef2, useState as useState4 } from "react";
13259
13307
  import { jsx as jsx43 } from "@emotion/react/jsx-runtime";
13260
- var DrawerContext = createContext3({
13308
+ var DrawerContext = createContext2({
13261
13309
  providerId: "",
13262
13310
  drawersRegistry: [],
13263
13311
  registerDrawer: () => {
13264
13312
  },
13265
13313
  unregisterDrawer: () => {
13314
+ },
13315
+ registerTakeoverStackId: () => {
13316
+ },
13317
+ unregisterTakeoverStackId: () => {
13266
13318
  }
13267
13319
  });
13268
13320
  function renderDrawerId(drawer) {
13269
13321
  return `${drawer.stackId ? `\u{1F95E} ${drawer.stackId} ` : ""}\u{1F194} ${drawer.id}${drawer.instanceKey ? ` \u{1F511} ${drawer.instanceKey}` : ""}`;
13270
13322
  }
13271
13323
  var DrawerProvider = ({ children }) => {
13272
- const [drawersRegistry, setDrawersRegistry] = useState5([]);
13324
+ const [drawersRegistry, setDrawersRegistry] = useState4([]);
13273
13325
  const providerId = useRef2(crypto.randomUUID());
13326
+ const [drawerTakeoverStackId, setDrawerTakeoverStackId] = useState4(void 0);
13274
13327
  useShortcut({
13275
13328
  handler: () => {
13276
13329
  var _a, _b;
@@ -13328,6 +13381,22 @@ var DrawerProvider = ({ children }) => {
13328
13381
  },
13329
13382
  [setDrawersRegistry]
13330
13383
  );
13384
+ const registerTakeoverStackId = useCallback(
13385
+ (stackId) => {
13386
+ if (drawerTakeoverStackId !== stackId) {
13387
+ setDrawerTakeoverStackId(stackId);
13388
+ }
13389
+ },
13390
+ [drawerTakeoverStackId]
13391
+ );
13392
+ const unregisterTakeoverStackId = useCallback(
13393
+ (stackId) => {
13394
+ if (drawerTakeoverStackId === stackId) {
13395
+ setDrawerTakeoverStackId(void 0);
13396
+ }
13397
+ },
13398
+ [drawerTakeoverStackId]
13399
+ );
13331
13400
  return /* @__PURE__ */ jsx43(
13332
13401
  DrawerContext.Provider,
13333
13402
  {
@@ -13335,14 +13404,17 @@ var DrawerProvider = ({ children }) => {
13335
13404
  drawersRegistry,
13336
13405
  registerDrawer,
13337
13406
  unregisterDrawer,
13338
- providerId: providerId.current
13407
+ providerId: providerId.current,
13408
+ drawerTakeoverStackId,
13409
+ registerTakeoverStackId,
13410
+ unregisterTakeoverStackId
13339
13411
  },
13340
13412
  children
13341
13413
  }
13342
13414
  );
13343
13415
  };
13344
13416
  var useDrawer = () => {
13345
- return useContext4(DrawerContext);
13417
+ return useContext3(DrawerContext);
13346
13418
  };
13347
13419
  var useCloseCurrentDrawer = () => {
13348
13420
  const context = useDrawer();
@@ -13361,15 +13433,18 @@ function isEqualDrawerInstance(a, b) {
13361
13433
  // src/components/Drawer/Drawer.tsx
13362
13434
  import { jsx as jsx44, jsxs as jsxs26 } from "@emotion/react/jsx-runtime";
13363
13435
  var defaultSackId = "_default";
13364
- var CurrentDrawerContext = createContext4({});
13436
+ var CurrentDrawerContext = createContext3({});
13365
13437
  var useCurrentDrawer = () => {
13366
- return useContext5(CurrentDrawerContext);
13438
+ return useContext4(CurrentDrawerContext);
13367
13439
  };
13368
13440
  var Drawer = React13.forwardRef(
13369
13441
  ({ minWidth, maxWidth, position, leftAligned, ...drawerProps }, ref) => {
13442
+ var _a;
13370
13443
  const { stackId: inheritedStackId } = useCurrentDrawer();
13444
+ const { drawerTakeoverStackId } = useDrawer();
13371
13445
  const drawerRendererProps = { width: drawerProps.width, minWidth, maxWidth, position, leftAligned };
13372
- return drawerProps.stackId ? /* @__PURE__ */ jsx44(DrawerInner, { ref, ...drawerProps }) : inheritedStackId ? /* @__PURE__ */ jsx44(DrawerInner, { ref, ...drawerProps, stackId: inheritedStackId }) : /* @__PURE__ */ jsxs26(DrawerProvider, { children: [
13446
+ const resolvedStickyStackIdRef = useRef3((_a = drawerTakeoverStackId != null ? drawerTakeoverStackId : drawerProps.stackId) != null ? _a : inheritedStackId);
13447
+ return resolvedStickyStackIdRef.current ? /* @__PURE__ */ jsx44(DrawerInner, { ref, ...drawerProps, stackId: resolvedStickyStackIdRef.current }) : /* @__PURE__ */ jsxs26(DrawerProvider, { children: [
13373
13448
  /* @__PURE__ */ jsx44(DrawerInner, { ref, ...drawerProps }),
13374
13449
  /* @__PURE__ */ jsx44(DrawerRenderer, { stackId: defaultSackId, ...drawerRendererProps })
13375
13450
  ] });
@@ -13390,8 +13465,8 @@ var DrawerInner = ({
13390
13465
  }) => {
13391
13466
  const { registerDrawer, unregisterDrawer, providerId } = useDrawer();
13392
13467
  const closeButtonRef = useRef3(null);
13393
- const [rendererElement, setRendererElement] = useState6(null);
13394
- useEffect5(() => {
13468
+ const [rendererElement, setRendererElement] = useState5(null);
13469
+ useEffect4(() => {
13395
13470
  registerDrawer({
13396
13471
  drawer: {
13397
13472
  width,
@@ -13498,8 +13573,8 @@ var DrawerContent2 = ({ children, buttonGroup, noPadding = false, ...props }) =>
13498
13573
  };
13499
13574
 
13500
13575
  // src/components/Drawer/DrawerRenderer.tsx
13501
- import { useEffect as useEffect6, useMemo as useMemo2 } from "react";
13502
- import { Fragment as Fragment8, jsx as jsx46, jsxs as jsxs28 } from "@emotion/react/jsx-runtime";
13576
+ import { useEffect as useEffect5, useMemo as useMemo2 } from "react";
13577
+ import { Fragment as Fragment7, jsx as jsx46, jsxs as jsxs28 } from "@emotion/react/jsx-runtime";
13503
13578
  var drawerWidth = {
13504
13579
  narrow: "29rem",
13505
13580
  medium: "43rem",
@@ -13519,7 +13594,7 @@ var DrawerRenderer = ({
13519
13594
  }) => {
13520
13595
  const { drawersRegistry, providerId } = useDrawer();
13521
13596
  const drawersToRender = drawersRegistry.filter(({ stackId: sId }) => sId === stackId);
13522
- useEffect6(() => {
13597
+ useEffect5(() => {
13523
13598
  drawersToRender.forEach(({ isFirstRender, onFirstRender }) => {
13524
13599
  if (isFirstRender) {
13525
13600
  onFirstRender == null ? void 0 : onFirstRender();
@@ -13588,7 +13663,7 @@ var DrawerWrapper = ({
13588
13663
  offsetInPx = Math.round(maxLayeringInPx * relativeLevel);
13589
13664
  }
13590
13665
  const calculatedWidth = `calc(${width} - ${offsetInPx}px)`;
13591
- return /* @__PURE__ */ jsxs28(Fragment8, { children: [
13666
+ return /* @__PURE__ */ jsxs28(Fragment7, { children: [
13592
13667
  /* @__PURE__ */ jsx46("div", { css: drawerWrapperOverlayStyles, onClick: onOverlayClick }),
13593
13668
  /* @__PURE__ */ jsx46(
13594
13669
  "div",
@@ -13608,8 +13683,23 @@ var getDrawerAttributes = ({
13608
13683
  return { "data-drawer-id": `${providerId}-${stackId}-${id}`, "data-testid": "container-drawer" };
13609
13684
  };
13610
13685
 
13686
+ // src/components/Drawer/TakeoverDrawerRenderer.tsx
13687
+ import { useEffect as useEffect6 } from "react";
13688
+ import { jsx as jsx47 } from "@emotion/react/jsx-runtime";
13689
+ var TAKEOVER_STACK_ID = "takeover-stack";
13690
+ var TakeoverDrawerRenderer = (props) => {
13691
+ const { registerTakeoverStackId, unregisterTakeoverStackId } = useDrawer();
13692
+ useEffect6(() => {
13693
+ registerTakeoverStackId(TAKEOVER_STACK_ID);
13694
+ return () => {
13695
+ unregisterTakeoverStackId(TAKEOVER_STACK_ID);
13696
+ };
13697
+ }, [registerTakeoverStackId, unregisterTakeoverStackId]);
13698
+ return /* @__PURE__ */ jsx47(DrawerRenderer, { ...props, stackId: TAKEOVER_STACK_ID });
13699
+ };
13700
+
13611
13701
  // src/components/IconButton/IconButton.tsx
13612
- import { forwardRef as forwardRef4 } from "react";
13702
+ import { forwardRef as forwardRef5 } from "react";
13613
13703
 
13614
13704
  // src/components/IconButton/IconButton.styles.ts
13615
13705
  import { css as css44 } from "@emotion/react";
@@ -13639,16 +13729,16 @@ var variants = {
13639
13729
  };
13640
13730
 
13641
13731
  // src/components/IconButton/IconButton.tsx
13642
- import { jsx as jsx47 } from "@emotion/react/jsx-runtime";
13643
- var IconButton = forwardRef4(
13732
+ import { jsx as jsx48 } from "@emotion/react/jsx-runtime";
13733
+ var IconButton = forwardRef5(
13644
13734
  ({ children, size = "md", variant = "square", ...props }, ref) => {
13645
- return /* @__PURE__ */ jsx47(Button, { ref, css: [iconButton, variants[variant], sizes[size]], ...props, children });
13735
+ return /* @__PURE__ */ jsx48(Button, { ref, css: [iconButton, variants[variant], sizes[size]], ...props, children });
13646
13736
  }
13647
13737
  );
13648
13738
  IconButton.displayName = "IconButton";
13649
13739
 
13650
13740
  // src/components/Image/Image.tsx
13651
- import { useCallback as useCallback2, useEffect as useEffect7, useState as useState8 } from "react";
13741
+ import { useCallback as useCallback2, useEffect as useEffect7, useState as useState7 } from "react";
13652
13742
 
13653
13743
  // src/components/Input/styles/CaptionText.styles.ts
13654
13744
  import { css as css45 } from "@emotion/react";
@@ -13656,18 +13746,18 @@ var CaptionText = (dynamicSize) => css45`
13656
13746
  color: var(--gray-500);
13657
13747
  display: block;
13658
13748
  font-size: ${dynamicSize ? "clamp(var(--fs-xs), 87.5%,var(--fs-sm))" : "var(--fs-sm)"};
13659
- margin: var(--spacing-xs) 0;
13749
+ margin-block: var(--spacing-2xs) 1px;
13660
13750
  max-width: var(--prose);
13661
13751
  `;
13662
13752
 
13663
13753
  // src/components/Input/Caption.tsx
13664
- import { jsx as jsx48 } from "@emotion/react/jsx-runtime";
13754
+ import { jsx as jsx49 } from "@emotion/react/jsx-runtime";
13665
13755
  var Caption = ({ children, testId, dynamicSize = false, ...props }) => {
13666
- return /* @__PURE__ */ jsx48("small", { css: CaptionText(dynamicSize), "data-testid": testId, ...props, children });
13756
+ return /* @__PURE__ */ jsx49("small", { css: CaptionText(dynamicSize), "data-testid": testId, ...props, children });
13667
13757
  };
13668
13758
 
13669
13759
  // src/components/Input/CheckboxWithInfo.tsx
13670
- import { forwardRef as forwardRef5 } from "react";
13760
+ import { forwardRef as forwardRef6 } from "react";
13671
13761
 
13672
13762
  // src/components/Input/styles/CheckboxWithInfo.styles.ts
13673
13763
  import { css as css46 } from "@emotion/react";
@@ -13742,21 +13832,21 @@ var InfoDialogMessage = css46`
13742
13832
  `;
13743
13833
 
13744
13834
  // src/components/Input/CheckboxWithInfo.tsx
13745
- import { jsx as jsx49, jsxs as jsxs29 } from "@emotion/react/jsx-runtime";
13835
+ import { jsx as jsx50, jsxs as jsxs29 } from "@emotion/react/jsx-runtime";
13746
13836
  var InfoDialog = ({ message }) => {
13747
13837
  return /* @__PURE__ */ jsxs29("div", { "data-testid": "info-dialog", css: InfoDialogContainer, children: [
13748
- /* @__PURE__ */ jsx49(Icon, { icon: "info", iconColor: "action", size: "0.9rem" }),
13749
- /* @__PURE__ */ jsx49("div", { role: "paragraph", css: InfoDialogMessage, className: "info-message", children: message })
13838
+ /* @__PURE__ */ jsx50(Icon, { icon: "info", iconColor: "action", size: "0.9rem" }),
13839
+ /* @__PURE__ */ jsx50("div", { role: "paragraph", css: InfoDialogMessage, className: "info-message", children: message })
13750
13840
  ] });
13751
13841
  };
13752
- var CheckboxWithInfo = forwardRef5(
13842
+ var CheckboxWithInfo = forwardRef6(
13753
13843
  ({ label, name, info, ...props }, ref) => {
13754
13844
  return /* @__PURE__ */ jsxs29("div", { css: CheckboxWithInfoContainer, children: [
13755
13845
  /* @__PURE__ */ jsxs29("label", { css: CheckboxWithInfoLabel, children: [
13756
- /* @__PURE__ */ jsx49("input", { type: "checkbox", name, ref, css: CheckboxWithInfoInput, ...props }),
13757
- /* @__PURE__ */ jsx49("span", { children: label })
13846
+ /* @__PURE__ */ jsx50("input", { type: "checkbox", name, ref, css: CheckboxWithInfoInput, ...props }),
13847
+ /* @__PURE__ */ jsx50("span", { children: label })
13758
13848
  ] }),
13759
- info ? /* @__PURE__ */ jsx49(InfoDialog, { message: info }) : null
13849
+ info ? /* @__PURE__ */ jsx50(InfoDialog, { message: info }) : null
13760
13850
  ] });
13761
13851
  }
13762
13852
  );
@@ -13766,19 +13856,29 @@ import { MdWarning } from "@react-icons/all-files/md/MdWarning";
13766
13856
 
13767
13857
  // src/components/Input/styles/ErrorMessage.styles.ts
13768
13858
  import { css as css47 } from "@emotion/react";
13769
- var ErrorText = css47`
13859
+ var errorMessageStyles = css47`
13770
13860
  align-items: center;
13771
13861
  color: var(--brand-secondary-5);
13772
13862
  display: flex;
13773
13863
  gap: var(--spacing-sm);
13774
13864
  `;
13865
+ var errorMessageTextStyles = css47`
13866
+ /* We hide the text at width 5rem or below */
13867
+ max-width: max(0px, calc((100% - 5rem) * 9999));
13868
+ overflow: hidden;
13869
+ `;
13870
+ var errorMessageTextTruncatedStyles = css47`
13871
+ overflow: hidden;
13872
+ text-overflow: ellipsis;
13873
+ white-space: nowrap;
13874
+ `;
13775
13875
 
13776
13876
  // src/components/Input/ErrorMessage.tsx
13777
- import { jsx as jsx50, jsxs as jsxs30 } from "@emotion/react/jsx-runtime";
13778
- var ErrorMessage = ({ message, testId, ...otherProps }) => {
13779
- return message ? /* @__PURE__ */ jsxs30("span", { role: "alert", css: ErrorText, "data-testid": testId, ...otherProps, children: [
13780
- /* @__PURE__ */ jsx50("span", { children: /* @__PURE__ */ jsx50(Icon, { icon: MdWarning, size: "1rem", iconColor: "currentColor" }) }),
13781
- message
13877
+ import { jsx as jsx51, jsxs as jsxs30 } from "@emotion/react/jsx-runtime";
13878
+ var ErrorMessage = ({ message, testId, truncated = false, ...otherProps }) => {
13879
+ return message ? /* @__PURE__ */ jsxs30("span", { role: "alert", css: errorMessageStyles, "data-testid": testId, ...otherProps, title: message, children: [
13880
+ /* @__PURE__ */ jsx51("span", { children: /* @__PURE__ */ jsx51(Icon, { icon: MdWarning, size: "1rem", iconColor: "currentColor" }) }),
13881
+ /* @__PURE__ */ jsx51("span", { css: [errorMessageTextStyles, truncated ? errorMessageTextTruncatedStyles : null], children: message })
13782
13882
  ] }) : null;
13783
13883
  };
13784
13884
 
@@ -13826,12 +13926,12 @@ var fieldsetBody = css48`
13826
13926
  `;
13827
13927
 
13828
13928
  // src/components/Input/Fieldset.tsx
13829
- import { jsx as jsx51, jsxs as jsxs31 } from "@emotion/react/jsx-runtime";
13929
+ import { jsx as jsx52, jsxs as jsxs31 } from "@emotion/react/jsx-runtime";
13830
13930
  var Fieldset = React15.forwardRef(
13831
- ({ legend, disabled, children, invert, ...props }, ref) => {
13832
- return /* @__PURE__ */ jsxs31("fieldset", { css: fieldsetContainer(Boolean(invert)), ref, disabled, ...props, children: [
13931
+ ({ legend, disabled: disabled2, children, invert, ...props }, ref) => {
13932
+ return /* @__PURE__ */ jsxs31("fieldset", { css: fieldsetContainer(Boolean(invert)), ref, disabled: disabled2, ...props, children: [
13833
13933
  legend,
13834
- /* @__PURE__ */ jsx51("div", { css: fieldsetBody, children })
13934
+ /* @__PURE__ */ jsx52("div", { css: fieldsetBody, children })
13835
13935
  ] });
13836
13936
  }
13837
13937
  );
@@ -13855,10 +13955,10 @@ var InfoIcon2 = css49`
13855
13955
  `;
13856
13956
 
13857
13957
  // src/components/Input/InfoMessage.tsx
13858
- import { jsx as jsx52, jsxs as jsxs32 } from "@emotion/react/jsx-runtime";
13958
+ import { jsx as jsx53, jsxs as jsxs32 } from "@emotion/react/jsx-runtime";
13859
13959
  var InfoMessage = ({ message, testId, ...props }) => {
13860
13960
  return message ? /* @__PURE__ */ jsxs32("span", { role: "status", css: InfoText, "data-testid": testId, ...props, children: [
13861
- /* @__PURE__ */ jsx52("span", { children: /* @__PURE__ */ jsx52(Icon, { css: InfoIcon2, icon: MdInfoOutline, size: "1rem", iconColor: "currentColor" }) }),
13961
+ /* @__PURE__ */ jsx53("span", { children: /* @__PURE__ */ jsx53(Icon, { css: InfoIcon2, icon: MdInfoOutline, size: "1rem", iconColor: "currentColor" }) }),
13862
13962
  message
13863
13963
  ] }) : null;
13864
13964
  };
@@ -13867,9 +13967,9 @@ var InfoMessage = ({ message, testId, ...props }) => {
13867
13967
  import * as React16 from "react";
13868
13968
 
13869
13969
  // src/components/Input/Label.tsx
13870
- import { jsx as jsx53 } from "@emotion/react/jsx-runtime";
13970
+ import { jsx as jsx54 } from "@emotion/react/jsx-runtime";
13871
13971
  var Label = ({ children, className, testId, ...props }) => {
13872
- return /* @__PURE__ */ jsx53(
13972
+ return /* @__PURE__ */ jsx54(
13873
13973
  "label",
13874
13974
  {
13875
13975
  css: [labelText, typeof className === "object" ? className : void 0],
@@ -13897,16 +13997,16 @@ var WarningIcon = css50`
13897
13997
  `;
13898
13998
 
13899
13999
  // src/components/Input/WarningMessage.tsx
13900
- import { jsx as jsx54, jsxs as jsxs33 } from "@emotion/react/jsx-runtime";
14000
+ import { jsx as jsx55, jsxs as jsxs33 } from "@emotion/react/jsx-runtime";
13901
14001
  var WarningMessage = ({ message, testId, ...props }) => {
13902
14002
  return message ? /* @__PURE__ */ jsxs33("span", { role: "status", css: WarningText, "data-testid": testId, ...props, children: [
13903
- /* @__PURE__ */ jsx54("span", { children: /* @__PURE__ */ jsx54(Icon, { css: WarningIcon, icon: MdWarning2, size: "1rem", iconColor: "currentColor" }) }),
14003
+ /* @__PURE__ */ jsx55("span", { children: /* @__PURE__ */ jsx55(Icon, { css: WarningIcon, icon: MdWarning2, size: "1rem", iconColor: "currentColor" }) }),
13904
14004
  message
13905
14005
  ] }) : null;
13906
14006
  };
13907
14007
 
13908
14008
  // src/components/Input/Input.tsx
13909
- import { jsx as jsx55, jsxs as jsxs34 } from "@emotion/react/jsx-runtime";
14009
+ import { jsx as jsx56, jsxs as jsxs34 } from "@emotion/react/jsx-runtime";
13910
14010
  var Input = React16.forwardRef(
13911
14011
  ({
13912
14012
  label,
@@ -13932,7 +14032,7 @@ var Input = React16.forwardRef(
13932
14032
  css: [inputContainer, typeof classNameRoot === "object" ? classNameRoot : void 0],
13933
14033
  "data-testid": containerTestId ? containerTestId : "container-input-field",
13934
14034
  children: [
13935
- showLabel ? /* @__PURE__ */ jsx55(
14035
+ showLabel ? /* @__PURE__ */ jsx56(
13936
14036
  Label,
13937
14037
  {
13938
14038
  htmlFor: id,
@@ -13948,7 +14048,7 @@ var Input = React16.forwardRef(
13948
14048
  css: [inputContainer, typeof classNameContainer === "object" ? classNameContainer : void 0],
13949
14049
  className: typeof classNameContainer === "string" ? classNameContainer : "",
13950
14050
  children: [
13951
- /* @__PURE__ */ jsx55(
14051
+ /* @__PURE__ */ jsx56(
13952
14052
  "input",
13953
14053
  {
13954
14054
  id,
@@ -13964,13 +14064,13 @@ var Input = React16.forwardRef(
13964
14064
  ref
13965
14065
  }
13966
14066
  ),
13967
- icon ? /* @__PURE__ */ jsx55("div", { css: inputIcon, children: icon }) : null
14067
+ icon ? /* @__PURE__ */ jsx56("div", { css: inputIcon, children: icon }) : null
13968
14068
  ]
13969
14069
  }
13970
14070
  ),
13971
- caption ? /* @__PURE__ */ jsx55(Caption, { testId: captionTestId, children: caption }) : null,
13972
- errorMessage ? /* @__PURE__ */ jsx55(ErrorMessage, { message: errorMessage, testId: errorTestId }) : null,
13973
- warningMessage && !errorMessage ? /* @__PURE__ */ jsx55(WarningMessage, { message: warningMessage }) : null
14071
+ caption ? /* @__PURE__ */ jsx56(Caption, { testId: captionTestId, children: caption }) : null,
14072
+ errorMessage ? /* @__PURE__ */ jsx56(ErrorMessage, { message: errorMessage, testId: errorTestId }) : null,
14073
+ warningMessage && !errorMessage ? /* @__PURE__ */ jsx56(WarningMessage, { message: warningMessage }) : null
13974
14074
  ]
13975
14075
  }
13976
14076
  );
@@ -13979,10 +14079,10 @@ var Input = React16.forwardRef(
13979
14079
 
13980
14080
  // src/components/Input/InputComboBox.tsx
13981
14081
  import Select from "react-select";
13982
- import { jsx as jsx56 } from "@emotion/react/jsx-runtime";
14082
+ import { jsx as jsx57 } from "@emotion/react/jsx-runtime";
13983
14083
  function InputComboBox(props) {
13984
14084
  var _a;
13985
- return /* @__PURE__ */ jsx56(
14085
+ return /* @__PURE__ */ jsx57(
13986
14086
  Select,
13987
14087
  {
13988
14088
  ...props,
@@ -14113,7 +14213,7 @@ function InputComboBox(props) {
14113
14213
  // src/components/Input/InputInlineSelect.tsx
14114
14214
  import { css as css52 } from "@emotion/react";
14115
14215
  import { CgChevronDown as CgChevronDown2 } from "@react-icons/all-files/cg/CgChevronDown";
14116
- import { useRef as useRef4, useState as useState7 } from "react";
14216
+ import { useRef as useRef4, useState as useState6 } from "react";
14117
14217
 
14118
14218
  // src/components/Input/styles/InputInlineSelect.styles.ts
14119
14219
  import { css as css51 } from "@emotion/react";
@@ -14182,17 +14282,17 @@ var inlineSelectMenuClosed = css51`
14182
14282
  `;
14183
14283
 
14184
14284
  // src/components/Input/InputInlineSelect.tsx
14185
- import { jsx as jsx57, jsxs as jsxs35 } from "@emotion/react/jsx-runtime";
14285
+ import { jsx as jsx58, jsxs as jsxs35 } from "@emotion/react/jsx-runtime";
14186
14286
  var InputInlineSelect = ({
14187
14287
  classNameContainer,
14188
14288
  options,
14189
14289
  value,
14190
14290
  onChange,
14191
- disabled,
14291
+ disabled: disabled2,
14192
14292
  ...props
14193
14293
  }) => {
14194
14294
  var _a;
14195
- const [menuVisible, setMenuVisible] = useState7(false);
14295
+ const [menuVisible, setMenuVisible] = useState6(false);
14196
14296
  const divRef = useRef4(null);
14197
14297
  useOutsideClick(divRef, () => setMenuVisible(false));
14198
14298
  const selected = options.find((option) => option.value === value);
@@ -14214,24 +14314,24 @@ var InputInlineSelect = ({
14214
14314
  "aria-expanded": menuVisible,
14215
14315
  css: inlineSelectBtn,
14216
14316
  onClick: () => {
14217
- if (!disabled)
14317
+ if (!disabled2)
14218
14318
  setMenuVisible((prev) => !prev);
14219
14319
  },
14220
- disabled,
14320
+ disabled: disabled2,
14221
14321
  ...props,
14222
14322
  children: [
14223
- /* @__PURE__ */ jsx57("span", { children: (_a = selected == null ? void 0 : selected.label) != null ? _a : value }),
14224
- disabled ? null : /* @__PURE__ */ jsx57(Icon, { icon: CgChevronDown2, iconColor: "currentColor", size: 24 })
14323
+ /* @__PURE__ */ jsx58("span", { children: (_a = selected == null ? void 0 : selected.label) != null ? _a : value }),
14324
+ disabled2 ? null : /* @__PURE__ */ jsx58(Icon, { icon: CgChevronDown2, iconColor: "currentColor", size: 24 })
14225
14325
  ]
14226
14326
  }
14227
14327
  ),
14228
- /* @__PURE__ */ jsx57(
14328
+ /* @__PURE__ */ jsx58(
14229
14329
  "div",
14230
14330
  {
14231
14331
  id: `and-or-${props.id}`,
14232
14332
  css: [inlineSelectMenu, menuVisible ? void 0 : inlineSelectMenuClosed],
14233
14333
  "aria-hidden": !menuVisible,
14234
- children: options.map((opt) => /* @__PURE__ */ jsx57(
14334
+ children: options.map((opt) => /* @__PURE__ */ jsx58(
14235
14335
  "button",
14236
14336
  {
14237
14337
  type: "button",
@@ -14254,10 +14354,10 @@ var InputInlineSelect = ({
14254
14354
  // src/components/Input/InputKeywordSearch.tsx
14255
14355
  import { CgClose as CgClose4 } from "@react-icons/all-files/cg/CgClose";
14256
14356
  import { CgSearch } from "@react-icons/all-files/cg/CgSearch";
14257
- import { jsx as jsx58 } from "@emotion/react/jsx-runtime";
14357
+ import { jsx as jsx59 } from "@emotion/react/jsx-runtime";
14258
14358
  var InputKeywordSearch = ({
14259
14359
  onSearchTextChanged,
14260
- disabled = false,
14360
+ disabled: disabled2 = false,
14261
14361
  placeholder = "Keyword search",
14262
14362
  inputFieldName = "keywordSearch",
14263
14363
  disabledFieldSubmission = false,
@@ -14275,7 +14375,7 @@ var InputKeywordSearch = ({
14275
14375
  e.preventDefault();
14276
14376
  }
14277
14377
  };
14278
- return /* @__PURE__ */ jsx58(
14378
+ return /* @__PURE__ */ jsx59(
14279
14379
  Input,
14280
14380
  {
14281
14381
  type: "text",
@@ -14283,10 +14383,10 @@ var InputKeywordSearch = ({
14283
14383
  placeholder,
14284
14384
  showLabel: false,
14285
14385
  value,
14286
- icon: value ? /* @__PURE__ */ jsx58("button", { css: inputSearchCloseBtn, onClick: onClear, type: "button", children: /* @__PURE__ */ jsx58(Icon, { icon: CgClose4, iconColor: "red", size: "1rem" }) }) : /* @__PURE__ */ jsx58(Icon, { icon: CgSearch, iconColor: "gray", size: "1rem" }),
14386
+ icon: value ? /* @__PURE__ */ jsx59("button", { css: inputSearchCloseBtn, onClick: onClear, type: "button", children: /* @__PURE__ */ jsx59(Icon, { icon: CgClose4, iconColor: "red", size: "1rem" }) }) : /* @__PURE__ */ jsx59(Icon, { icon: CgSearch, iconColor: "gray", size: "1rem" }),
14287
14387
  onChange: handleSearchTextChanged,
14288
14388
  onKeyPress: preventSubmitOnField,
14289
- disabled,
14389
+ disabled: disabled2,
14290
14390
  "aria-label": placeholder,
14291
14391
  css: [
14292
14392
  compact ? {
@@ -14295,13 +14395,14 @@ var InputKeywordSearch = ({
14295
14395
  } : null,
14296
14396
  rounded ? { borderRadius: "var(--rounded-full)" } : null
14297
14397
  ],
14398
+ "data-testid": "input-search",
14298
14399
  ...props
14299
14400
  }
14300
14401
  );
14301
14402
  };
14302
14403
 
14303
14404
  // src/components/Input/InputSelect.tsx
14304
- import { Fragment as Fragment9, jsx as jsx59, jsxs as jsxs36 } from "@emotion/react/jsx-runtime";
14405
+ import { Fragment as Fragment8, jsx as jsx60, jsxs as jsxs36 } from "@emotion/react/jsx-runtime";
14305
14406
  var InputSelect = ({
14306
14407
  label,
14307
14408
  defaultOption,
@@ -14323,7 +14424,7 @@ var InputSelect = ({
14323
14424
  css: [inputContainer, typeof classNameContainer === "object" ? classNameContainer : void 0],
14324
14425
  className: typeof classNameContainer === "string" ? classNameContainer : "",
14325
14426
  children: [
14326
- showLabel ? /* @__PURE__ */ jsx59(Fragment9, { children: /* @__PURE__ */ jsxs36(
14427
+ showLabel ? /* @__PURE__ */ jsx60(Fragment8, { children: /* @__PURE__ */ jsxs36(
14327
14428
  Label,
14328
14429
  {
14329
14430
  htmlFor: props.id,
@@ -14350,14 +14451,14 @@ var InputSelect = ({
14350
14451
  className: typeof classNameControl === "string" ? classNameControl : "",
14351
14452
  ...props,
14352
14453
  children: [
14353
- defaultOption ? /* @__PURE__ */ jsx59("option", { value: "", children: defaultOption }) : null,
14354
- options.map((opt, index) => /* @__PURE__ */ jsx59("option", { value: opt.label, ...opt }, index))
14454
+ defaultOption ? /* @__PURE__ */ jsx60("option", { value: "", children: defaultOption }) : null,
14455
+ options.map((opt, index) => /* @__PURE__ */ jsx60("option", { value: opt.label, ...opt }, index))
14355
14456
  ]
14356
14457
  }
14357
14458
  ),
14358
- caption ? /* @__PURE__ */ jsx59(Caption, { children: caption }) : null,
14359
- errorMessage ? /* @__PURE__ */ jsx59(ErrorMessage, { message: errorMessage }) : null,
14360
- warningMessage && !errorMessage ? /* @__PURE__ */ jsx59(WarningMessage, { message: warningMessage }) : null
14459
+ caption ? /* @__PURE__ */ jsx60(Caption, { children: caption }) : null,
14460
+ errorMessage ? /* @__PURE__ */ jsx60(ErrorMessage, { message: errorMessage }) : null,
14461
+ warningMessage && !errorMessage ? /* @__PURE__ */ jsx60(WarningMessage, { message: warningMessage }) : null
14361
14462
  ]
14362
14463
  }
14363
14464
  );
@@ -14365,12 +14466,12 @@ var InputSelect = ({
14365
14466
 
14366
14467
  // src/components/Input/InputToggle.tsx
14367
14468
  import * as React17 from "react";
14368
- import { jsx as jsx60, jsxs as jsxs37 } from "@emotion/react/jsx-runtime";
14469
+ import { jsx as jsx61, jsxs as jsxs37 } from "@emotion/react/jsx-runtime";
14369
14470
  var InputToggle = React17.forwardRef(
14370
14471
  ({
14371
14472
  label,
14372
14473
  type,
14373
- disabled,
14474
+ disabled: disabled2,
14374
14475
  checked,
14375
14476
  name,
14376
14477
  caption,
@@ -14388,10 +14489,10 @@ var InputToggle = React17.forwardRef(
14388
14489
  return /* @__PURE__ */ jsxs37(
14389
14490
  Label,
14390
14491
  {
14391
- css: [inputToggleLabel, disabled ? inputDisabled : void 0],
14492
+ css: [inputToggleLabel, disabled2 ? inputDisabled : void 0],
14392
14493
  "data-testid": testId ? testId : "input-toggle",
14393
14494
  children: [
14394
- /* @__PURE__ */ jsx60(
14495
+ /* @__PURE__ */ jsx61(
14395
14496
  "input",
14396
14497
  {
14397
14498
  ref,
@@ -14399,15 +14500,15 @@ var InputToggle = React17.forwardRef(
14399
14500
  css: toggleInput,
14400
14501
  checked,
14401
14502
  name,
14402
- disabled,
14503
+ disabled: disabled2,
14403
14504
  ...props
14404
14505
  }
14405
14506
  ),
14406
- /* @__PURE__ */ jsx60("span", { css: [inlineLabel, fontWeightStyles[fontWeight]], children: label }),
14507
+ /* @__PURE__ */ jsx61("span", { css: [inlineLabel, fontWeightStyles[fontWeight]], children: label }),
14407
14508
  caption || errorMessage ? /* @__PURE__ */ jsxs37("span", { css: inputToggleMessageContainer, children: [
14408
- caption ? /* @__PURE__ */ jsx60(Caption, { children: caption }) : null,
14409
- errorMessage ? /* @__PURE__ */ jsx60(ErrorMessage, { message: errorMessage }) : null,
14410
- warningMessage && !errorMessage ? /* @__PURE__ */ jsx60(WarningMessage, { message: warningMessage }) : null
14509
+ caption ? /* @__PURE__ */ jsx61(Caption, { children: caption }) : null,
14510
+ errorMessage ? /* @__PURE__ */ jsx61(ErrorMessage, { message: errorMessage }) : null,
14511
+ warningMessage && !errorMessage ? /* @__PURE__ */ jsx61(WarningMessage, { message: warningMessage }) : null
14411
14512
  ] }) : null
14412
14513
  ]
14413
14514
  }
@@ -14416,9 +14517,9 @@ var InputToggle = React17.forwardRef(
14416
14517
  );
14417
14518
 
14418
14519
  // src/components/Input/Legend.tsx
14419
- import { jsx as jsx61 } from "@emotion/react/jsx-runtime";
14520
+ import { jsx as jsx62 } from "@emotion/react/jsx-runtime";
14420
14521
  var Legend = ({ children }) => {
14421
- return /* @__PURE__ */ jsx61("legend", { css: fieldsetLegend, children });
14522
+ return /* @__PURE__ */ jsx62("legend", { css: fieldsetLegend, children });
14422
14523
  };
14423
14524
 
14424
14525
  // src/components/Input/SuccessMessage.tsx
@@ -14440,23 +14541,23 @@ var SuccessIcon2 = css53`
14440
14541
  `;
14441
14542
 
14442
14543
  // src/components/Input/SuccessMessage.tsx
14443
- import { jsx as jsx62, jsxs as jsxs38 } from "@emotion/react/jsx-runtime";
14544
+ import { jsx as jsx63, jsxs as jsxs38 } from "@emotion/react/jsx-runtime";
14444
14545
  var SuccessMessage = ({ message, testId, ...props }) => {
14445
14546
  return message ? /* @__PURE__ */ jsxs38("span", { role: "status", css: SuccessText, "data-testid": testId, ...props, children: [
14446
- /* @__PURE__ */ jsx62("span", { children: /* @__PURE__ */ jsx62(Icon, { css: SuccessIcon2, icon: CgCheckO, size: "1rem", iconColor: "currentColor" }) }),
14547
+ /* @__PURE__ */ jsx63("span", { children: /* @__PURE__ */ jsx63(Icon, { css: SuccessIcon2, icon: CgCheckO, size: "1rem", iconColor: "currentColor" }) }),
14447
14548
  message
14448
14549
  ] }) : null;
14449
14550
  };
14450
14551
 
14451
14552
  // src/components/Input/Textarea.tsx
14452
- import { forwardRef as forwardRef9 } from "react";
14453
- import { Fragment as Fragment10, jsx as jsx63, jsxs as jsxs39 } from "@emotion/react/jsx-runtime";
14454
- var Textarea = forwardRef9(
14553
+ import { forwardRef as forwardRef10 } from "react";
14554
+ import { Fragment as Fragment9, jsx as jsx64, jsxs as jsxs39 } from "@emotion/react/jsx-runtime";
14555
+ var Textarea = forwardRef10(
14455
14556
  ({ label, icon, id, caption, showLabel = true, errorMessage, warningMessage, ...props }, ref) => {
14456
- return /* @__PURE__ */ jsxs39(Fragment10, { children: [
14457
- showLabel ? /* @__PURE__ */ jsx63("label", { htmlFor: id, css: [labelText], children: label }) : null,
14557
+ return /* @__PURE__ */ jsxs39(Fragment9, { children: [
14558
+ showLabel ? /* @__PURE__ */ jsx64("label", { htmlFor: id, css: [labelText], children: label }) : null,
14458
14559
  /* @__PURE__ */ jsxs39("div", { css: [inputContainer], children: [
14459
- /* @__PURE__ */ jsx63(
14560
+ /* @__PURE__ */ jsx64(
14460
14561
  "textarea",
14461
14562
  {
14462
14563
  ref,
@@ -14471,11 +14572,11 @@ var Textarea = forwardRef9(
14471
14572
  ...props
14472
14573
  }
14473
14574
  ),
14474
- icon ? /* @__PURE__ */ jsx63("div", { css: inputIcon, children: icon }) : null
14575
+ icon ? /* @__PURE__ */ jsx64("div", { css: inputIcon, children: icon }) : null
14475
14576
  ] }),
14476
- caption ? /* @__PURE__ */ jsx63(Caption, { children: caption }) : null,
14477
- errorMessage ? /* @__PURE__ */ jsx63(ErrorMessage, { message: errorMessage }) : null,
14478
- warningMessage && !errorMessage ? /* @__PURE__ */ jsx63(WarningMessage, { message: warningMessage }) : null
14577
+ caption ? /* @__PURE__ */ jsx64(Caption, { children: caption }) : null,
14578
+ errorMessage ? /* @__PURE__ */ jsx64(ErrorMessage, { message: errorMessage }) : null,
14579
+ warningMessage && !errorMessage ? /* @__PURE__ */ jsx64(WarningMessage, { message: warningMessage }) : null
14479
14580
  ] });
14480
14581
  }
14481
14582
  );
@@ -14511,6 +14612,15 @@ var imgLoaded = css54`
14511
14612
  var brokenImage = css54`
14512
14613
  height: 160px;
14513
14614
  `;
14615
+ var brokenImageMessage = css54`
14616
+ position: absolute;
14617
+ bottom: var(--spacing-xs);
14618
+ left: var(--spacing-xs);
14619
+ width: 100%;
14620
+ justify-content: center;
14621
+ padding-inline: var(--spacing-xs);
14622
+ font-size: var(--fs-sm);
14623
+ `;
14514
14624
  var variantFillImageWrapper = css54`
14515
14625
  display: flex;
14516
14626
  justify-content: center;
@@ -14519,10 +14629,11 @@ var variantFillImageWrapper = css54`
14519
14629
  `;
14520
14630
  var variantFillImageImg = css54`
14521
14631
  height: inherit;
14632
+ width: inherit;
14522
14633
  `;
14523
14634
 
14524
14635
  // src/components/Image/ImageBroken.tsx
14525
- import { jsx as jsx64, jsxs as jsxs40 } from "@emotion/react/jsx-runtime";
14636
+ import { jsx as jsx65, jsxs as jsxs40 } from "@emotion/react/jsx-runtime";
14526
14637
  var ImageBroken = ({ width, height, ...props }) => {
14527
14638
  return /* @__PURE__ */ jsxs40(
14528
14639
  "svg",
@@ -14537,11 +14648,11 @@ var ImageBroken = ({ width, height, ...props }) => {
14537
14648
  "data-testid": "broken-image",
14538
14649
  ...props,
14539
14650
  children: [
14540
- /* @__PURE__ */ jsx64("rect", { width: "214", height: "214", fill: "#F9FAFB" }),
14541
- /* @__PURE__ */ jsx64("rect", { width: "214", height: "214", fill: "url(#pattern0)" }),
14651
+ /* @__PURE__ */ jsx65("rect", { width: "214", height: "214", fill: "#F9FAFB" }),
14652
+ /* @__PURE__ */ jsx65("rect", { width: "214", height: "214", fill: "url(#pattern0)" }),
14542
14653
  /* @__PURE__ */ jsxs40("defs", { children: [
14543
- /* @__PURE__ */ jsx64("pattern", { id: "pattern0", patternContentUnits: "objectBoundingBox", width: "1", height: "1", children: /* @__PURE__ */ jsx64("use", { xlinkHref: "#image0_761_4353", transform: "scale(0.0025)" }) }),
14544
- /* @__PURE__ */ jsx64(
14654
+ /* @__PURE__ */ jsx65("pattern", { id: "pattern0", patternContentUnits: "objectBoundingBox", width: "1", height: "1", children: /* @__PURE__ */ jsx65("use", { xlinkHref: "#image0_761_4353", transform: "scale(0.0025)" }) }),
14655
+ /* @__PURE__ */ jsx65(
14545
14656
  "image",
14546
14657
  {
14547
14658
  id: "image0_761_4353",
@@ -14557,7 +14668,7 @@ var ImageBroken = ({ width, height, ...props }) => {
14557
14668
  };
14558
14669
 
14559
14670
  // src/components/Image/Image.tsx
14560
- import { Fragment as Fragment11, jsx as jsx65, jsxs as jsxs41 } from "@emotion/react/jsx-runtime";
14671
+ import { jsx as jsx66, jsxs as jsxs41 } from "@emotion/react/jsx-runtime";
14561
14672
  var MIN_LOADING_MS = 100;
14562
14673
  function Image({
14563
14674
  alt,
@@ -14569,8 +14680,8 @@ function Image({
14569
14680
  height,
14570
14681
  ...imgAttribs
14571
14682
  }) {
14572
- const [loading, setLoading] = useState8(true);
14573
- const [loadErrorText, setLoadErrorText] = useState8("");
14683
+ const [loading, setLoading] = useState7(true);
14684
+ const [loadErrorText, setLoadErrorText] = useState7("");
14574
14685
  const errorText = "The text you provided is not a valid URL";
14575
14686
  const updateImageSrc = useCallback2(() => {
14576
14687
  let message = "";
@@ -14617,7 +14728,7 @@ function Image({
14617
14728
  variant === "fill-container" ? variantFillImageWrapper : null
14618
14729
  ],
14619
14730
  children: [
14620
- src && !loadErrorText ? /* @__PURE__ */ jsx65(
14731
+ src && !loadErrorText ? /* @__PURE__ */ jsx66(
14621
14732
  "img",
14622
14733
  {
14623
14734
  ...imgAttribs,
@@ -14636,18 +14747,26 @@ function Image({
14636
14747
  onError: handleErrorEvent
14637
14748
  }
14638
14749
  ) : null,
14639
- src && loadErrorText ? /* @__PURE__ */ jsxs41(Fragment11, { children: [
14640
- /* @__PURE__ */ jsx65(
14641
- ImageBroken,
14642
- {
14643
- css: [brokenImage, img, imgLoaded],
14644
- width,
14645
- height,
14646
- "data-testid": "broken-image"
14647
- }
14648
- ),
14649
- /* @__PURE__ */ jsx65(ErrorMessage, { message: loadErrorText })
14650
- ] }) : null
14750
+ src && loadErrorText ? /* @__PURE__ */ jsxs41(
14751
+ "span",
14752
+ {
14753
+ style: {
14754
+ display: "inline-flex",
14755
+ position: "relative",
14756
+ ...variant === "fill-container" ? {} : { width, height }
14757
+ },
14758
+ children: [
14759
+ /* @__PURE__ */ jsx66(
14760
+ ImageBroken,
14761
+ {
14762
+ css: [brokenImage, img, imgLoaded],
14763
+ "data-testid": "broken-image"
14764
+ }
14765
+ ),
14766
+ /* @__PURE__ */ jsx66(ErrorMessage, { message: loadErrorText, css: brokenImageMessage, truncated: true })
14767
+ ]
14768
+ }
14769
+ ) : null
14651
14770
  ]
14652
14771
  }
14653
14772
  );
@@ -14788,7 +14907,7 @@ var IntegrationTileFloatingButtonMessage = (clicked) => css55`
14788
14907
  `;
14789
14908
 
14790
14909
  // src/components/Tiles/CreateTeamIntegrationTile.tsx
14791
- import { jsx as jsx66, jsxs as jsxs42 } from "@emotion/react/jsx-runtime";
14910
+ import { jsx as jsx67, jsxs as jsxs42 } from "@emotion/react/jsx-runtime";
14792
14911
  var CreateTeamIntegrationTile = ({
14793
14912
  title: title2 = "Create a custom integration for your team",
14794
14913
  buttonText = "Add Integration",
@@ -14797,7 +14916,7 @@ var CreateTeamIntegrationTile = ({
14797
14916
  ...props
14798
14917
  }) => {
14799
14918
  return /* @__PURE__ */ jsxs42("div", { css: [IntegrationTileContainer, IntegrationTileBtnDashedBorder], ...props, children: [
14800
- /* @__PURE__ */ jsx66("span", { css: IntegrationTileTitle, title: title2, children: title2 }),
14919
+ /* @__PURE__ */ jsx67("span", { css: IntegrationTileTitle, title: title2, children: title2 }),
14801
14920
  /* @__PURE__ */ jsxs42(
14802
14921
  Button,
14803
14922
  {
@@ -14808,7 +14927,7 @@ var CreateTeamIntegrationTile = ({
14808
14927
  css: IntegrationTitleFakeButton,
14809
14928
  children: [
14810
14929
  buttonText,
14811
- asDeepLink ? /* @__PURE__ */ jsx66(
14930
+ asDeepLink ? /* @__PURE__ */ jsx67(
14812
14931
  Icon,
14813
14932
  {
14814
14933
  icon: CgChevronRight2,
@@ -14818,7 +14937,7 @@ var CreateTeamIntegrationTile = ({
14818
14937
  order: 1;
14819
14938
  `
14820
14939
  }
14821
- ) : /* @__PURE__ */ jsx66(
14940
+ ) : /* @__PURE__ */ jsx67(
14822
14941
  Icon,
14823
14942
  {
14824
14943
  icon: CgAdd2,
@@ -14839,31 +14958,31 @@ var CreateTeamIntegrationTile = ({
14839
14958
  import { CgCheck } from "@react-icons/all-files/cg/CgCheck";
14840
14959
  import { CgLock } from "@react-icons/all-files/cg/CgLock";
14841
14960
  import { CgSandClock } from "@react-icons/all-files/cg/CgSandClock";
14842
- import { jsx as jsx67, jsxs as jsxs43 } from "@emotion/react/jsx-runtime";
14961
+ import { jsx as jsx68, jsxs as jsxs43 } from "@emotion/react/jsx-runtime";
14843
14962
  var IntegrationedAddedBadge = ({ text = "Added" }) => {
14844
14963
  return /* @__PURE__ */ jsxs43("span", { "data-testid": "integration-icon-installed", css: IntegrationAddedText, children: [
14845
- /* @__PURE__ */ jsx67(Icon, { icon: CgCheck, iconColor: "currentColor" }),
14964
+ /* @__PURE__ */ jsx68(Icon, { icon: CgCheck, iconColor: "currentColor" }),
14846
14965
  text
14847
14966
  ] });
14848
14967
  };
14849
14968
  var IntegrationCustomBadge = ({ text = "Custom" }) => {
14850
- return /* @__PURE__ */ jsx67("span", { "data-testid": "integration-is-private", css: IntegrationCustomBadgeText("gray"), children: text });
14969
+ return /* @__PURE__ */ jsx68("span", { "data-testid": "integration-is-private", css: IntegrationCustomBadgeText("gray"), children: text });
14851
14970
  };
14852
14971
  var IntegrationPremiumBadge = ({ text = "Premium" }) => {
14853
14972
  return /* @__PURE__ */ jsxs43("span", { css: IntegrationCustomBadgeText("blue"), children: [
14854
- /* @__PURE__ */ jsx67(Icon, { icon: CgLock, iconColor: "currentColor", size: 12 }),
14973
+ /* @__PURE__ */ jsx68(Icon, { icon: CgLock, iconColor: "currentColor", size: 12 }),
14855
14974
  text
14856
14975
  ] });
14857
14976
  };
14858
14977
  var IntegrationComingSoonBadge = ({ text = "Coming soon" }) => {
14859
14978
  return /* @__PURE__ */ jsxs43("span", { css: IntegrationCustomBadgeText("blue"), children: [
14860
- /* @__PURE__ */ jsx67(Icon, { icon: CgSandClock, iconColor: "currentColor", size: 12 }),
14979
+ /* @__PURE__ */ jsx68(Icon, { icon: CgSandClock, iconColor: "currentColor", size: 12 }),
14861
14980
  text
14862
14981
  ] });
14863
14982
  };
14864
14983
 
14865
14984
  // src/components/Tiles/ResolveIcon.tsx
14866
- import { jsx as jsx68 } from "@emotion/react/jsx-runtime";
14985
+ import { jsx as jsx69 } from "@emotion/react/jsx-runtime";
14867
14986
  var ResolveIcon = ({ icon, name, styleType = "logo", ...props }) => {
14868
14987
  const CompIcon = icon && typeof icon !== "string" ? icon : null;
14869
14988
  const mapClassName = {
@@ -14871,13 +14990,13 @@ var ResolveIcon = ({ icon, name, styleType = "logo", ...props }) => {
14871
14990
  logo: IntegrationTitleLogo
14872
14991
  };
14873
14992
  if (icon) {
14874
- return CompIcon ? /* @__PURE__ */ jsx68(CompIcon, { css: mapClassName[styleType], ...props }) : /* @__PURE__ */ jsx68("img", { src: icon, alt: name, css: mapClassName[styleType], ...props });
14993
+ return CompIcon ? /* @__PURE__ */ jsx69(CompIcon, { css: mapClassName[styleType], ...props }) : /* @__PURE__ */ jsx69("img", { src: icon, alt: name, css: mapClassName[styleType], ...props });
14875
14994
  }
14876
14995
  return null;
14877
14996
  };
14878
14997
 
14879
14998
  // src/components/Tiles/EditTeamIntegrationTile.tsx
14880
- import { jsx as jsx69, jsxs as jsxs44 } from "@emotion/react/jsx-runtime";
14999
+ import { jsx as jsx70, jsxs as jsxs44 } from "@emotion/react/jsx-runtime";
14881
15000
  var EditTeamIntegrationTile = ({
14882
15001
  id,
14883
15002
  icon,
@@ -14893,10 +15012,10 @@ var EditTeamIntegrationTile = ({
14893
15012
  "data-testid": "configure-integration-container",
14894
15013
  "integration-id": `${id.toLocaleLowerCase()}`,
14895
15014
  children: [
14896
- /* @__PURE__ */ jsx69(ResolveIcon, { icon, name, "data-testid": "integration-logo" }),
14897
- /* @__PURE__ */ jsx69("span", { css: IntegrationTileName, "data-testid": "integration-card-name", children: name }),
14898
- !isPublic ? /* @__PURE__ */ jsx69(IntegrationCustomBadge, {}) : null,
14899
- canEdit ? /* @__PURE__ */ jsx69(
15015
+ /* @__PURE__ */ jsx70(ResolveIcon, { icon, name, "data-testid": "integration-logo" }),
15016
+ /* @__PURE__ */ jsx70("span", { css: IntegrationTileName, "data-testid": "integration-card-name", children: name }),
15017
+ !isPublic ? /* @__PURE__ */ jsx70(IntegrationCustomBadge, {}) : null,
15018
+ canEdit ? /* @__PURE__ */ jsx70(
14900
15019
  Button,
14901
15020
  {
14902
15021
  buttonType: "unimportant",
@@ -14916,8 +15035,8 @@ var EditTeamIntegrationTile = ({
14916
15035
  // src/components/Tiles/IntegrationComingSoon.tsx
14917
15036
  import { css as css57 } from "@emotion/react";
14918
15037
  import { CgHeart } from "@react-icons/all-files/cg/CgHeart";
14919
- import { useEffect as useEffect8, useState as useState9 } from "react";
14920
- import { jsx as jsx70, jsxs as jsxs45 } from "@emotion/react/jsx-runtime";
15038
+ import { useEffect as useEffect8, useState as useState8 } from "react";
15039
+ import { jsx as jsx71, jsxs as jsxs45 } from "@emotion/react/jsx-runtime";
14921
15040
  var IntegrationComingSoon = ({
14922
15041
  name,
14923
15042
  icon,
@@ -14926,7 +15045,7 @@ var IntegrationComingSoon = ({
14926
15045
  timing = 1e3,
14927
15046
  ...props
14928
15047
  }) => {
14929
- const [upVote, setUpVote] = useState9(false);
15048
+ const [upVote, setUpVote] = useState8(false);
14930
15049
  const handleUpVoteInteraction = () => {
14931
15050
  setUpVote((prev) => !prev);
14932
15051
  onUpVoteClick();
@@ -14946,9 +15065,9 @@ var IntegrationComingSoon = ({
14946
15065
  "data-testid": `coming-soon-${id.toLowerCase()}-integration`,
14947
15066
  ...props,
14948
15067
  children: [
14949
- /* @__PURE__ */ jsx70(IntegrationComingSoonBadge, {}),
14950
- /* @__PURE__ */ jsx70(ResolveIcon, { icon, name }),
14951
- /* @__PURE__ */ jsx70("span", { css: IntegrationTileName, title: name, children: name }),
15068
+ /* @__PURE__ */ jsx71(IntegrationComingSoonBadge, {}),
15069
+ /* @__PURE__ */ jsx71(ResolveIcon, { icon, name }),
15070
+ /* @__PURE__ */ jsx71("span", { css: IntegrationTileName, title: name, children: name }),
14952
15071
  /* @__PURE__ */ jsxs45(
14953
15072
  Button,
14954
15073
  {
@@ -14959,8 +15078,8 @@ var IntegrationComingSoon = ({
14959
15078
  role: "link",
14960
15079
  css: [IntegrationTileFloatingButton, IntegrationTileFloatingButtonMessage(upVote)],
14961
15080
  children: [
14962
- /* @__PURE__ */ jsx70("strong", { children: "+1" }),
14963
- /* @__PURE__ */ jsx70(
15081
+ /* @__PURE__ */ jsx71("strong", { children: "+1" }),
15082
+ /* @__PURE__ */ jsx71(
14964
15083
  "span",
14965
15084
  {
14966
15085
  css: css57`
@@ -14971,7 +15090,7 @@ var IntegrationComingSoon = ({
14971
15090
  }
14972
15091
  ),
14973
15092
  /* @__PURE__ */ jsxs45("span", { "aria-hidden": !upVote, children: [
14974
- /* @__PURE__ */ jsx70(Icon, { icon: CgHeart, iconColor: "currentColor", size: 18 }),
15093
+ /* @__PURE__ */ jsx71(Icon, { icon: CgHeart, iconColor: "currentColor", size: 18 }),
14975
15094
  "Thanks!"
14976
15095
  ] })
14977
15096
  ]
@@ -15027,12 +15146,12 @@ var IntegrationLoadingFrame = css58`
15027
15146
  `;
15028
15147
 
15029
15148
  // src/components/Tiles/IntegrationLoadingTile.tsx
15030
- import { Fragment as Fragment12, jsx as jsx71, jsxs as jsxs46 } from "@emotion/react/jsx-runtime";
15149
+ import { Fragment as Fragment10, jsx as jsx72, jsxs as jsxs46 } from "@emotion/react/jsx-runtime";
15031
15150
  var IntegrationLoadingTile = ({ count = 1 }) => {
15032
15151
  const componentCount = Array.from(Array(count).keys());
15033
- return /* @__PURE__ */ jsx71(Fragment12, { children: componentCount.map((i) => /* @__PURE__ */ jsxs46("div", { css: IntegrationLoadingTileContainer, children: [
15034
- /* @__PURE__ */ jsx71("div", { css: [IntegrationLoadingTileImg, IntegrationLoadingFrame], role: "presentation" }),
15035
- /* @__PURE__ */ jsx71("div", { css: [IntegrationLoadingTileText, IntegrationLoadingFrame] })
15152
+ return /* @__PURE__ */ jsx72(Fragment10, { children: componentCount.map((i) => /* @__PURE__ */ jsxs46("div", { css: IntegrationLoadingTileContainer, children: [
15153
+ /* @__PURE__ */ jsx72("div", { css: [IntegrationLoadingTileImg, IntegrationLoadingFrame], role: "presentation" }),
15154
+ /* @__PURE__ */ jsx72("div", { css: [IntegrationLoadingTileText, IntegrationLoadingFrame] })
15036
15155
  ] }, i)) });
15037
15156
  };
15038
15157
 
@@ -15052,7 +15171,7 @@ var IntegrationModalImage = css59`
15052
15171
  `;
15053
15172
 
15054
15173
  // src/components/Tiles/IntegrationModalIcon.tsx
15055
- import { jsx as jsx72, jsxs as jsxs47 } from "@emotion/react/jsx-runtime";
15174
+ import { jsx as jsx73, jsxs as jsxs47 } from "@emotion/react/jsx-runtime";
15056
15175
  var IntegrationModalIcon = ({ icon, name, ...imgProps }) => {
15057
15176
  const CompIcon = icon && typeof icon !== "string" ? icon : null;
15058
15177
  let iconSrc = void 0;
@@ -15070,7 +15189,7 @@ var IntegrationModalIcon = ({ icon, name, ...imgProps }) => {
15070
15189
  }
15071
15190
  return /* @__PURE__ */ jsxs47("div", { css: IntegrationModalIconContainer, children: [
15072
15191
  /* @__PURE__ */ jsxs47("svg", { width: "49", height: "57", fill: "none", xmlns: "http://www.w3.org/2000/svg", role: "img", children: [
15073
- /* @__PURE__ */ jsx72(
15192
+ /* @__PURE__ */ jsx73(
15074
15193
  "path",
15075
15194
  {
15076
15195
  d: "m24.367 1.813 22.786 13.322V41.78L24.367 55.102 1.581 41.78V15.135L24.367 1.814Z",
@@ -15079,12 +15198,12 @@ var IntegrationModalIcon = ({ icon, name, ...imgProps }) => {
15079
15198
  strokeWidth: "2"
15080
15199
  }
15081
15200
  ),
15082
- /* @__PURE__ */ jsx72("defs", { children: /* @__PURE__ */ jsxs47("linearGradient", { id: "a", x1: "41.353", y1: "49.107", x2: "8.048", y2: "4.478", gradientUnits: "userSpaceOnUse", children: [
15083
- /* @__PURE__ */ jsx72("stop", { stopColor: "#1768B2" }),
15084
- /* @__PURE__ */ jsx72("stop", { offset: "1", stopColor: "#B3EFE4" })
15201
+ /* @__PURE__ */ jsx73("defs", { children: /* @__PURE__ */ jsxs47("linearGradient", { id: "a", x1: "41.353", y1: "49.107", x2: "8.048", y2: "4.478", gradientUnits: "userSpaceOnUse", children: [
15202
+ /* @__PURE__ */ jsx73("stop", { stopColor: "#1768B2" }),
15203
+ /* @__PURE__ */ jsx73("stop", { offset: "1", stopColor: "#B3EFE4" })
15085
15204
  ] }) })
15086
15205
  ] }),
15087
- CompIcon ? /* @__PURE__ */ jsx72(CompIcon, { role: "img", css: IntegrationModalImage, ...imgProps }) : iconSrc ? /* @__PURE__ */ jsx72(
15206
+ CompIcon ? /* @__PURE__ */ jsx73(CompIcon, { role: "img", css: IntegrationModalImage, ...imgProps }) : iconSrc ? /* @__PURE__ */ jsx73(
15088
15207
  "img",
15089
15208
  {
15090
15209
  src: iconSrc,
@@ -15098,7 +15217,7 @@ var IntegrationModalIcon = ({ icon, name, ...imgProps }) => {
15098
15217
  };
15099
15218
 
15100
15219
  // src/components/Tiles/IntegrationTile.tsx
15101
- import { jsx as jsx73, jsxs as jsxs48 } from "@emotion/react/jsx-runtime";
15220
+ import { jsx as jsx74, jsxs as jsxs48 } from "@emotion/react/jsx-runtime";
15102
15221
  var IntegrationTile = ({
15103
15222
  id,
15104
15223
  icon,
@@ -15120,12 +15239,12 @@ var IntegrationTile = ({
15120
15239
  "aria-label": name,
15121
15240
  ...btnProps,
15122
15241
  children: [
15123
- /* @__PURE__ */ jsx73(ResolveIcon, { icon, name }),
15124
- /* @__PURE__ */ jsx73("span", { css: IntegrationTileName, title: name, children: name }),
15125
- isInstalled ? /* @__PURE__ */ jsx73(IntegrationedAddedBadge, {}) : null,
15126
- requiedEntitlement && isPublic ? /* @__PURE__ */ jsx73(IntegrationPremiumBadge, {}) : null,
15127
- !isPublic ? /* @__PURE__ */ jsx73(IntegrationCustomBadge, {}) : null,
15128
- authorIcon ? /* @__PURE__ */ jsx73(ResolveIcon, { icon: authorIcon, name }) : null
15242
+ /* @__PURE__ */ jsx74(ResolveIcon, { icon, name }),
15243
+ /* @__PURE__ */ jsx74("span", { css: IntegrationTileName, title: name, children: name }),
15244
+ isInstalled ? /* @__PURE__ */ jsx74(IntegrationedAddedBadge, {}) : null,
15245
+ requiedEntitlement && isPublic ? /* @__PURE__ */ jsx74(IntegrationPremiumBadge, {}) : null,
15246
+ !isPublic ? /* @__PURE__ */ jsx74(IntegrationCustomBadge, {}) : null,
15247
+ authorIcon ? /* @__PURE__ */ jsx74(ResolveIcon, { icon: authorIcon, name }) : null
15129
15248
  ]
15130
15249
  }
15131
15250
  );
@@ -15156,11 +15275,24 @@ var Tile = css60`
15156
15275
  pointer-events: none;
15157
15276
  }
15158
15277
  `;
15278
+ var TileIsSelected = css60`
15279
+ border: calc(${tileBorderSize} + 1px) solid var(--primary-action-active);
15280
+ z-index: 1; // Used to elevate active state border over other Tile borders
15281
+ `;
15159
15282
 
15160
15283
  // src/components/Tiles/Tile.tsx
15161
- import { jsx as jsx74 } from "@emotion/react/jsx-runtime";
15162
- var Tile2 = ({ children, disabled, ...props }) => {
15163
- return /* @__PURE__ */ jsx74("button", { type: "button", css: Tile, disabled, ...props, children });
15284
+ import { jsx as jsx75 } from "@emotion/react/jsx-runtime";
15285
+ var Tile2 = ({ children, disabled: disabled2, isSelected, ...props }) => {
15286
+ return /* @__PURE__ */ jsx75(
15287
+ "button",
15288
+ {
15289
+ type: "button",
15290
+ css: [Tile, isSelected ? TileIsSelected : void 0],
15291
+ disabled: disabled2,
15292
+ ...props,
15293
+ children
15294
+ }
15295
+ );
15164
15296
  };
15165
15297
 
15166
15298
  // src/components/Tiles/styles/TileContainer.styles.ts
@@ -15183,7 +15315,7 @@ var TileContainerInner = (gap, templateColumns) => css61`
15183
15315
  `;
15184
15316
 
15185
15317
  // src/components/Tiles/TileContainer.tsx
15186
- import { jsx as jsx75 } from "@emotion/react/jsx-runtime";
15318
+ import { jsx as jsx76 } from "@emotion/react/jsx-runtime";
15187
15319
  var TileContainer = ({
15188
15320
  bgColor = "var(--brand-secondary-2)",
15189
15321
  containerPadding = "base",
@@ -15192,7 +15324,7 @@ var TileContainer = ({
15192
15324
  children,
15193
15325
  ...props
15194
15326
  }) => {
15195
- return /* @__PURE__ */ jsx75("div", { css: TileContainerWrapper(bgColor, containerPadding), ...props, children: /* @__PURE__ */ jsx75("div", { css: TileContainerInner(gap, gridTemplateColumns), children }) });
15327
+ return /* @__PURE__ */ jsx76("div", { css: TileContainerWrapper(bgColor, containerPadding), ...props, children: /* @__PURE__ */ jsx76("div", { css: TileContainerInner(gap, gridTemplateColumns), children }) });
15196
15328
  };
15197
15329
 
15198
15330
  // src/components/Tiles/styles/TileText.styles.ts
@@ -15207,10 +15339,10 @@ var TileText = css62`
15207
15339
  `;
15208
15340
 
15209
15341
  // src/components/Tiles/TileText.tsx
15210
- import { jsx as jsx76 } from "@emotion/react/jsx-runtime";
15342
+ import { jsx as jsx77 } from "@emotion/react/jsx-runtime";
15211
15343
  var TileText2 = ({ as = "heading", children, ...props }) => {
15212
15344
  const isHeading = as === "heading";
15213
- return /* @__PURE__ */ jsx76(
15345
+ return /* @__PURE__ */ jsx77(
15214
15346
  "span",
15215
15347
  {
15216
15348
  role: isHeading ? "heading" : void 0,
@@ -15239,6 +15371,7 @@ var IntegrationModalHeaderTitleGroup = css63`
15239
15371
  align-items: center;
15240
15372
  display: flex;
15241
15373
  gap: var(--spacing-base);
15374
+ padding: 0 var(--spacing-base);
15242
15375
  `;
15243
15376
  var IntegrationModalHeaderTitle = css63`
15244
15377
  margin-top: 0;
@@ -15247,12 +15380,18 @@ var IntegrationModalHeaderMenuPlacement = css63`
15247
15380
  margin-bottom: var(--spacing-base);
15248
15381
  `;
15249
15382
  var IntegrationModalHeaderContentWrapper = css63`
15383
+ background: var(--white);
15384
+ display: flex;
15385
+ padding: var(--spacing-base);
15386
+ flex-direction: column;
15387
+ gap: var(--spacing-base);
15388
+ height: 100%;
15250
15389
  position: relative;
15251
15390
  z-index: var(--z-10);
15252
15391
  `;
15253
15392
 
15254
15393
  // src/components/IntegrationModalHeader/IntegrationModalHeader.tsx
15255
- import { Fragment as Fragment13, jsx as jsx77, jsxs as jsxs49 } from "@emotion/react/jsx-runtime";
15394
+ import { Fragment as Fragment11, jsx as jsx78, jsxs as jsxs49 } from "@emotion/react/jsx-runtime";
15256
15395
  var HexModalBackground = ({ ...props }) => {
15257
15396
  return /* @__PURE__ */ jsxs49(
15258
15397
  "svg",
@@ -15264,7 +15403,7 @@ var HexModalBackground = ({ ...props }) => {
15264
15403
  xmlns: "http://www.w3.org/2000/svg",
15265
15404
  ...props,
15266
15405
  children: [
15267
- /* @__PURE__ */ jsx77(
15406
+ /* @__PURE__ */ jsx78(
15268
15407
  "path",
15269
15408
  {
15270
15409
  fillRule: "evenodd",
@@ -15273,7 +15412,7 @@ var HexModalBackground = ({ ...props }) => {
15273
15412
  fill: "url(#paint0_linear_196_2737)"
15274
15413
  }
15275
15414
  ),
15276
- /* @__PURE__ */ jsx77("defs", { children: /* @__PURE__ */ jsxs49(
15415
+ /* @__PURE__ */ jsx78("defs", { children: /* @__PURE__ */ jsxs49(
15277
15416
  "linearGradient",
15278
15417
  {
15279
15418
  id: "paint0_linear_196_2737",
@@ -15283,8 +15422,8 @@ var HexModalBackground = ({ ...props }) => {
15283
15422
  y2: "-95.2742",
15284
15423
  gradientUnits: "userSpaceOnUse",
15285
15424
  children: [
15286
- /* @__PURE__ */ jsx77("stop", { stopColor: "#81DCDE" }),
15287
- /* @__PURE__ */ jsx77("stop", { offset: "1", stopColor: "#428ED4" })
15425
+ /* @__PURE__ */ jsx78("stop", { stopColor: "#81DCDE" }),
15426
+ /* @__PURE__ */ jsx78("stop", { offset: "1", stopColor: "#428ED4" })
15288
15427
  ]
15289
15428
  }
15290
15429
  ) })
@@ -15292,24 +15431,24 @@ var HexModalBackground = ({ ...props }) => {
15292
15431
  }
15293
15432
  );
15294
15433
  };
15295
- var IntegrationModalHeader = ({ icon, name, menu: menu2, children }) => {
15296
- return /* @__PURE__ */ jsxs49(Fragment13, { children: [
15297
- /* @__PURE__ */ jsx77(HexModalBackground, { css: IntegrationModalHeaderSVGBackground, role: "presentation" }),
15298
- /* @__PURE__ */ jsx77("div", { css: IntegrationModalHeaderGroup, children: /* @__PURE__ */ jsxs49("div", { css: IntegrationModalHeaderTitleGroup, children: [
15299
- icon ? /* @__PURE__ */ jsx77(IntegrationModalIcon, { icon, name: name || "" }) : null,
15300
- /* @__PURE__ */ jsx77(Heading, { level: 3, css: IntegrationModalHeaderTitle, "data-testid": "integration-modal-title", children: name || "Create Team Integration" }),
15301
- menu2 ? /* @__PURE__ */ jsxs49("div", { css: IntegrationModalHeaderMenuPlacement, children: [
15302
- menu2,
15434
+ var IntegrationModalHeader = ({ icon, name, menu, children }) => {
15435
+ return /* @__PURE__ */ jsxs49(Fragment11, { children: [
15436
+ /* @__PURE__ */ jsx78(HexModalBackground, { css: IntegrationModalHeaderSVGBackground, role: "presentation" }),
15437
+ /* @__PURE__ */ jsx78("div", { css: IntegrationModalHeaderGroup, children: /* @__PURE__ */ jsxs49("div", { css: IntegrationModalHeaderTitleGroup, children: [
15438
+ icon ? /* @__PURE__ */ jsx78(IntegrationModalIcon, { icon, name: name || "" }) : null,
15439
+ /* @__PURE__ */ jsx78(Heading, { level: 3, css: IntegrationModalHeaderTitle, "data-testid": "integration-modal-title", children: name || "Create Team Integration" }),
15440
+ menu ? /* @__PURE__ */ jsxs49("div", { css: IntegrationModalHeaderMenuPlacement, children: [
15441
+ menu,
15303
15442
  " "
15304
15443
  ] }) : null
15305
15444
  ] }) }),
15306
- /* @__PURE__ */ jsx77("div", { css: IntegrationModalHeaderContentWrapper, children })
15445
+ /* @__PURE__ */ jsx78("div", { css: IntegrationModalHeaderContentWrapper, children })
15307
15446
  ] });
15308
15447
  };
15309
15448
 
15310
15449
  // src/components/JsonEditor/JsonEditor.tsx
15311
15450
  import MonacoEditor from "@monaco-editor/react";
15312
- import { jsx as jsx78 } from "@emotion/react/jsx-runtime";
15451
+ import { jsx as jsx79 } from "@emotion/react/jsx-runtime";
15313
15452
  var minEditorHeightPx = 150;
15314
15453
  var JsonEditor = ({ defaultValue, onChange, jsonSchema, height, readOnly }) => {
15315
15454
  let effectiveHeight = height;
@@ -15319,7 +15458,7 @@ var JsonEditor = ({ defaultValue, onChange, jsonSchema, height, readOnly }) => {
15319
15458
  if (typeof effectiveHeight === "number" && effectiveHeight < minEditorHeightPx) {
15320
15459
  effectiveHeight = minEditorHeightPx;
15321
15460
  }
15322
- return /* @__PURE__ */ jsx78(
15461
+ return /* @__PURE__ */ jsx79(
15323
15462
  MonacoEditor,
15324
15463
  {
15325
15464
  height: effectiveHeight,
@@ -15388,7 +15527,7 @@ var LimitsBarTextColor = (statusColor) => css64`
15388
15527
  `;
15389
15528
 
15390
15529
  // src/components/LimitsBar/LimitsBar.tsx
15391
- import { jsx as jsx79, jsxs as jsxs50 } from "@emotion/react/jsx-runtime";
15530
+ import { jsx as jsx80, jsxs as jsxs50 } from "@emotion/react/jsx-runtime";
15392
15531
  var LimitsBar = ({ current, max, label }) => {
15393
15532
  const maxPercentage = 100;
15394
15533
  const progressBarValue = Math.ceil(current / max * maxPercentage);
@@ -15401,14 +15540,14 @@ var LimitsBar = ({ current, max, label }) => {
15401
15540
  const statusColor = progressBarValue === 100 ? colorMap.danger : progressBarValue >= 75 ? colorMap.warn : colorMap.base;
15402
15541
  return /* @__PURE__ */ jsxs50("div", { css: LimitsBarContainer, children: [
15403
15542
  /* @__PURE__ */ jsxs50("div", { css: LimitsBarLabelContainer, children: [
15404
- /* @__PURE__ */ jsx79("span", { css: LimitsBarLabel, children: label }),
15543
+ /* @__PURE__ */ jsx80("span", { css: LimitsBarLabel, children: label }),
15405
15544
  /* @__PURE__ */ jsxs50("span", { css: [LimitsBarLabel, LimitsBarTextColor(statusColor)], children: [
15406
15545
  current,
15407
15546
  " of ",
15408
15547
  max
15409
15548
  ] })
15410
15549
  ] }),
15411
- /* @__PURE__ */ jsx79(
15550
+ /* @__PURE__ */ jsx80(
15412
15551
  "div",
15413
15552
  {
15414
15553
  role: "progressbar",
@@ -15417,7 +15556,7 @@ var LimitsBar = ({ current, max, label }) => {
15417
15556
  "aria-valuemax": max,
15418
15557
  "aria-valuetext": `${current} of ${max}`,
15419
15558
  css: LimitsBarProgressBar,
15420
- children: /* @__PURE__ */ jsx79(
15559
+ children: /* @__PURE__ */ jsx80(
15421
15560
  "span",
15422
15561
  {
15423
15562
  role: "presentation",
@@ -15449,10 +15588,10 @@ var LinkListTitle = css65`
15449
15588
  `;
15450
15589
 
15451
15590
  // src/components/LinkList/LinkList.tsx
15452
- import { jsx as jsx80, jsxs as jsxs51 } from "@emotion/react/jsx-runtime";
15591
+ import { jsx as jsx81, jsxs as jsxs51 } from "@emotion/react/jsx-runtime";
15453
15592
  var LinkList = ({ title: title2, padding = "var(--spacing-md)", children, ...props }) => {
15454
15593
  return /* @__PURE__ */ jsxs51("div", { css: LinkListContainer(padding), ...props, children: [
15455
- /* @__PURE__ */ jsx80(Heading, { level: 3, css: LinkListTitle, children: title2 }),
15594
+ /* @__PURE__ */ jsx81(Heading, { level: 3, css: LinkListTitle, children: title2 }),
15456
15595
  children
15457
15596
  ] });
15458
15597
  };
@@ -15488,10 +15627,10 @@ var ScrollableListInner = css66`
15488
15627
  `;
15489
15628
 
15490
15629
  // src/components/List/ScrollableList.tsx
15491
- import { jsx as jsx81, jsxs as jsxs52 } from "@emotion/react/jsx-runtime";
15630
+ import { jsx as jsx82, jsxs as jsxs52 } from "@emotion/react/jsx-runtime";
15492
15631
  var ScrollableList = ({ label, children, ...props }) => {
15493
15632
  return /* @__PURE__ */ jsxs52("div", { css: [ScrollableListContainer, scrollbarStyles], ...props, children: [
15494
- label ? /* @__PURE__ */ jsx81(
15633
+ label ? /* @__PURE__ */ jsx82(
15495
15634
  "span",
15496
15635
  {
15497
15636
  css: css67`
@@ -15500,7 +15639,7 @@ var ScrollableList = ({ label, children, ...props }) => {
15500
15639
  children: label
15501
15640
  }
15502
15641
  ) : null,
15503
- /* @__PURE__ */ jsx81("div", { css: [ScrollableListInner, scrollbarStyles], children })
15642
+ /* @__PURE__ */ jsx82("div", { css: [ScrollableListInner, scrollbarStyles], children })
15504
15643
  ] });
15505
15644
  };
15506
15645
 
@@ -15572,23 +15711,23 @@ var ScrollableListIconVisible = css68`
15572
15711
  `;
15573
15712
 
15574
15713
  // src/components/List/ScrollableListInputItem.tsx
15575
- import { jsx as jsx82, jsxs as jsxs53 } from "@emotion/react/jsx-runtime";
15714
+ import { jsx as jsx83, jsxs as jsxs53 } from "@emotion/react/jsx-runtime";
15576
15715
  var ScrollableListInputItem = ({
15577
15716
  label,
15578
15717
  icon,
15579
- active,
15718
+ active: active2,
15580
15719
  disableShadow = false,
15581
15720
  children,
15582
15721
  labelTestId,
15583
15722
  ...props
15584
15723
  }) => {
15585
- return /* @__PURE__ */ jsx82(
15724
+ return /* @__PURE__ */ jsx83(
15586
15725
  "div",
15587
15726
  {
15588
15727
  css: [
15589
15728
  ScrollableListItemContainer,
15590
15729
  disableShadow ? void 0 : ScrollableListItemShadow,
15591
- active ? ScrollableListItemActive : void 0
15730
+ active2 ? ScrollableListItemActive : void 0
15592
15731
  ],
15593
15732
  ...props,
15594
15733
  children: /* @__PURE__ */ jsxs53("label", { "data-testid": labelTestId, css: ScrollableListInputLabel, children: [
@@ -15596,16 +15735,16 @@ var ScrollableListInputItem = ({
15596
15735
  icon,
15597
15736
  label
15598
15737
  ] }),
15599
- /* @__PURE__ */ jsx82("div", { css: ScrollableListHiddenInput, children }),
15600
- /* @__PURE__ */ jsx82(
15738
+ /* @__PURE__ */ jsx83("div", { css: ScrollableListHiddenInput, children }),
15739
+ /* @__PURE__ */ jsx83(
15601
15740
  Icon,
15602
15741
  {
15603
15742
  icon: CgCheck2,
15604
15743
  iconColor: "currentColor",
15605
- css: [ScrollableListIcon, active ? ScrollableListIconVisible : void 0],
15744
+ css: [ScrollableListIcon, active2 ? ScrollableListIconVisible : void 0],
15606
15745
  size: 24,
15607
15746
  "data-testid": "check-mark",
15608
- "data-test-active": active
15747
+ "data-test-active": active2
15609
15748
  }
15610
15749
  )
15611
15750
  ] })
@@ -15615,33 +15754,33 @@ var ScrollableListInputItem = ({
15615
15754
 
15616
15755
  // src/components/List/ScrollableListItem.tsx
15617
15756
  import { CgCheck as CgCheck3 } from "@react-icons/all-files/cg/CgCheck";
15618
- import { jsx as jsx83, jsxs as jsxs54 } from "@emotion/react/jsx-runtime";
15757
+ import { jsx as jsx84, jsxs as jsxs54 } from "@emotion/react/jsx-runtime";
15619
15758
  var ScrollableListItem = ({
15620
15759
  buttonText,
15621
15760
  icon,
15622
- active,
15761
+ active: active2,
15623
15762
  disableShadow,
15624
15763
  ...props
15625
15764
  }) => {
15626
- return /* @__PURE__ */ jsx83(
15765
+ return /* @__PURE__ */ jsx84(
15627
15766
  "div",
15628
15767
  {
15629
15768
  css: [
15630
15769
  ScrollableListItemContainer,
15631
15770
  disableShadow ? void 0 : ScrollableListItemShadow,
15632
- active ? ScrollableListItemActive : void 0
15771
+ active2 ? ScrollableListItemActive : void 0
15633
15772
  ],
15634
15773
  children: /* @__PURE__ */ jsxs54("button", { css: ScrollableListItemBtn, type: "button", ...props, children: [
15635
15774
  /* @__PURE__ */ jsxs54(HorizontalRhythm, { gap: "xs", align: "center", children: [
15636
15775
  icon,
15637
- /* @__PURE__ */ jsx83("span", { children: buttonText })
15776
+ /* @__PURE__ */ jsx84("span", { children: buttonText })
15638
15777
  ] }),
15639
- /* @__PURE__ */ jsx83(
15778
+ /* @__PURE__ */ jsx84(
15640
15779
  Icon,
15641
15780
  {
15642
15781
  icon: CgCheck3,
15643
15782
  iconColor: "currentColor",
15644
- css: [ScrollableListIcon, active ? ScrollableListIconVisible : void 0],
15783
+ css: [ScrollableListIcon, active2 ? ScrollableListIconVisible : void 0],
15645
15784
  size: 24
15646
15785
  }
15647
15786
  )
@@ -15703,16 +15842,16 @@ function loadingDot(size) {
15703
15842
  }
15704
15843
 
15705
15844
  // src/components/LoadingIndicator/LoadingIndicator.tsx
15706
- import { jsx as jsx84, jsxs as jsxs55 } from "@emotion/react/jsx-runtime";
15845
+ import { jsx as jsx85, jsxs as jsxs55 } from "@emotion/react/jsx-runtime";
15707
15846
  var LoadingIndicator = ({
15708
15847
  size = "lg",
15709
15848
  ...props
15710
15849
  }) => {
15711
15850
  const dotStyle = loadingDot(size);
15712
15851
  return /* @__PURE__ */ jsxs55("div", { role: "alert", css: loader, "data-testid": "loading-indicator", ...props, children: [
15713
- /* @__PURE__ */ jsx84("span", { css: dotStyle }),
15714
- /* @__PURE__ */ jsx84("span", { css: dotStyle }),
15715
- /* @__PURE__ */ jsx84("span", { css: dotStyle })
15852
+ /* @__PURE__ */ jsx85("span", { css: dotStyle }),
15853
+ /* @__PURE__ */ jsx85("span", { css: dotStyle }),
15854
+ /* @__PURE__ */ jsx85("span", { css: dotStyle })
15716
15855
  ] });
15717
15856
  };
15718
15857
 
@@ -15752,7 +15891,7 @@ var loadingOverlayMessage = css70`
15752
15891
  `;
15753
15892
 
15754
15893
  // src/components/LoadingOverlay/LoadingOverlay.tsx
15755
- import { jsx as jsx85, jsxs as jsxs56 } from "@emotion/react/jsx-runtime";
15894
+ import { jsx as jsx86, jsxs as jsxs56 } from "@emotion/react/jsx-runtime";
15756
15895
  var LoadingOverlay = ({
15757
15896
  isActive,
15758
15897
  statusMessage,
@@ -15786,9 +15925,9 @@ var LoadingOverlay = ({
15786
15925
  "aria-hidden": !isActive,
15787
15926
  "aria-busy": isActive && !isPaused,
15788
15927
  children: [
15789
- /* @__PURE__ */ jsx85("div", { css: loadingOverlayBackground(overlayBackgroundColor) }),
15790
- /* @__PURE__ */ jsx85("div", { css: { position: "relative", maxWidth: "100%", margin: isTopAligned ? "0" : "auto" }, children: /* @__PURE__ */ jsxs56("div", { css: loadingOverlayBody, children: [
15791
- /* @__PURE__ */ jsx85(
15928
+ /* @__PURE__ */ jsx86("div", { css: loadingOverlayBackground(overlayBackgroundColor) }),
15929
+ /* @__PURE__ */ jsx86("div", { css: { position: "relative", maxWidth: "100%", margin: isTopAligned ? "0" : "auto" }, children: /* @__PURE__ */ jsxs56("div", { css: loadingOverlayBody, children: [
15930
+ /* @__PURE__ */ jsx86(
15792
15931
  AnimationFile,
15793
15932
  {
15794
15933
  lottieRef,
@@ -15803,15 +15942,15 @@ var LoadingOverlay = ({
15803
15942
  }
15804
15943
  }
15805
15944
  ),
15806
- statusMessage ? /* @__PURE__ */ jsx85("div", { css: loadingOverlayMessage, children: statusMessage }) : null,
15807
- /* @__PURE__ */ jsx85("div", { css: { width: "100%", marginTop: "var(--spacing-md)" }, children })
15945
+ statusMessage ? /* @__PURE__ */ jsx86("div", { css: loadingOverlayMessage, children: statusMessage }) : null,
15946
+ /* @__PURE__ */ jsx86("div", { css: { width: "100%", marginTop: "var(--spacing-md)" }, children })
15808
15947
  ] }) })
15809
15948
  ]
15810
15949
  }
15811
15950
  );
15812
15951
  };
15813
15952
  var LoadingIcon = ({ height, width, ...props }) => {
15814
- return /* @__PURE__ */ jsx85(
15953
+ return /* @__PURE__ */ jsx86(
15815
15954
  "svg",
15816
15955
  {
15817
15956
  viewBox: "0 0 38 38",
@@ -15821,9 +15960,9 @@ var LoadingIcon = ({ height, width, ...props }) => {
15821
15960
  stroke: "currentColor",
15822
15961
  ...props,
15823
15962
  "data-testid": "loading-icon",
15824
- children: /* @__PURE__ */ jsx85("g", { fill: "none", fillRule: "evenodd", children: /* @__PURE__ */ jsxs56("g", { transform: "translate(1 1)", strokeWidth: "2", children: [
15825
- /* @__PURE__ */ jsx85("circle", { strokeOpacity: ".25", cx: "18", cy: "18", r: "18" }),
15826
- /* @__PURE__ */ jsx85("path", { d: "M36 18c0-9.94-8.06-18-18-18", transform: "rotate(166.645 18 18)", children: /* @__PURE__ */ jsx85(
15963
+ children: /* @__PURE__ */ jsx86("g", { fill: "none", fillRule: "evenodd", children: /* @__PURE__ */ jsxs56("g", { transform: "translate(1 1)", strokeWidth: "2", children: [
15964
+ /* @__PURE__ */ jsx86("circle", { strokeOpacity: ".25", cx: "18", cy: "18", r: "18" }),
15965
+ /* @__PURE__ */ jsx86("path", { d: "M36 18c0-9.94-8.06-18-18-18", transform: "rotate(166.645 18 18)", children: /* @__PURE__ */ jsx86(
15827
15966
  "animateTransform",
15828
15967
  {
15829
15968
  attributeName: "transform",
@@ -15879,7 +16018,7 @@ var Popover = css71`
15879
16018
  `;
15880
16019
 
15881
16020
  // src/components/Popover/Popover.tsx
15882
- import { Fragment as Fragment14, jsx as jsx86, jsxs as jsxs57 } from "@emotion/react/jsx-runtime";
16021
+ import { Fragment as Fragment12, jsx as jsx87, jsxs as jsxs57 } from "@emotion/react/jsx-runtime";
15883
16022
  var Popover2 = ({
15884
16023
  iconColor = "action",
15885
16024
  icon = "info",
@@ -15893,27 +16032,28 @@ var Popover2 = ({
15893
16032
  ...otherProps
15894
16033
  }) => {
15895
16034
  const popover = usePopoverState({ placement });
15896
- return /* @__PURE__ */ jsxs57(Fragment14, { children: [
15897
- /* @__PURE__ */ jsx86(
16035
+ return /* @__PURE__ */ jsxs57(Fragment12, { children: [
16036
+ /* @__PURE__ */ jsx87(
15898
16037
  PopoverDisclosure,
15899
16038
  {
15900
16039
  ...popover,
15901
16040
  css: [PopoverBtn, trigger ? void 0 : PopoverDefaulterTriggerBtn],
15902
16041
  title: buttonText,
15903
16042
  "data-testid": testId,
15904
- children: trigger ? trigger : /* @__PURE__ */ jsxs57(Fragment14, { children: [
15905
- /* @__PURE__ */ jsx86(Icon, { icon, iconColor, size: iconSize }),
15906
- /* @__PURE__ */ jsx86("span", { hidden: true, children: buttonText })
16043
+ children: trigger ? trigger : /* @__PURE__ */ jsxs57(Fragment12, { children: [
16044
+ /* @__PURE__ */ jsx87(Icon, { icon, iconColor, size: iconSize }),
16045
+ /* @__PURE__ */ jsx87("span", { hidden: true, children: buttonText })
15907
16046
  ] })
15908
16047
  }
15909
16048
  ),
15910
- /* @__PURE__ */ jsx86(ReakitPopover, { css: Popover, ...otherProps, ...popover, role: "tooltip", "aria-label": ariaLabel, children })
16049
+ /* @__PURE__ */ jsx87(ReakitPopover, { css: Popover, ...otherProps, ...popover, role: "tooltip", "aria-label": ariaLabel, children })
15911
16050
  ] });
15912
16051
  };
15913
16052
 
15914
16053
  // src/components/MediaCard/MediaCard.styles.ts
15915
16054
  import { css as css72 } from "@emotion/react";
15916
16055
  var cardBase = css72`
16056
+ --mediacard-title-color: var(--gray-500);
15917
16057
  display: flex;
15918
16058
  flex-direction: column;
15919
16059
  justify-content: flex-start;
@@ -15923,6 +16063,12 @@ var cardBase = css72`
15923
16063
  min-height: unset;
15924
16064
  outline: none;
15925
16065
  cursor: pointer;
16066
+ transition: border-color var(--duration-xfast) ease-in-out;
16067
+
16068
+ &:hover {
16069
+ --mediacard-title-color: var(--brand-secondary-1);
16070
+ border-color: var(--primary-action-hover);
16071
+ }
15926
16072
  `;
15927
16073
  var coverWrapper = css72`
15928
16074
  position: relative;
@@ -15942,13 +16088,14 @@ var contentWrapper = css72`
15942
16088
  `;
15943
16089
  var title = css72`
15944
16090
  font-size: var(--fs-sm);
15945
- color: var(--gray-500);
16091
+ color: var(--mediacard-title-color);
15946
16092
  white-space: nowrap;
15947
16093
  overflow: hidden;
15948
16094
  text-overflow: ellipsis;
15949
16095
  outline: none;
15950
16096
  border: 0;
15951
16097
  background-color: transparent;
16098
+ transition: color var(--duration-fast) var(--timing-ease-out);
15952
16099
 
15953
16100
  &:focus-visible {
15954
16101
  outline: 2px solid var(--primary-action-default);
@@ -15982,7 +16129,7 @@ var menuButton = css72`
15982
16129
  `;
15983
16130
 
15984
16131
  // src/components/MediaCard/MediaCard.tsx
15985
- import { jsx as jsx87, jsxs as jsxs58 } from "@emotion/react/jsx-runtime";
16132
+ import { jsx as jsx88, jsxs as jsxs58 } from "@emotion/react/jsx-runtime";
15986
16133
  var MediaCard = ({
15987
16134
  title: title2,
15988
16135
  subtitle: subtitle2,
@@ -15997,13 +16144,13 @@ var MediaCard = ({
15997
16144
  e.stopPropagation();
15998
16145
  }, []);
15999
16146
  const hasMenuItems = Array.isArray(menuItems) ? menuItems.length > 0 : Boolean(menuItems);
16000
- return /* @__PURE__ */ jsxs58(Card, { css: cardBase, ...cardProps, onClick, children: [
16001
- /* @__PURE__ */ jsx87("button", { tabIndex: -1, css: coverWrapper, children: cover }),
16002
- /* @__PURE__ */ jsx87("div", { css: contentWrapper, children: /* @__PURE__ */ jsxs58(HorizontalRhythm, { gap: "sm", justify: "space-between", align: "center", css: { width: "100%" }, children: [
16147
+ return /* @__PURE__ */ jsxs58(Card, { css: cardBase, ...cardProps, onClick, "data-testid": "card-item", children: [
16148
+ /* @__PURE__ */ jsx88("button", { tabIndex: -1, css: coverWrapper, children: cover }),
16149
+ /* @__PURE__ */ jsx88("div", { css: contentWrapper, children: /* @__PURE__ */ jsxs58(HorizontalRhythm, { gap: "sm", justify: "space-between", align: "center", css: { width: "100%" }, children: [
16003
16150
  /* @__PURE__ */ jsxs58(VerticalRhythm, { gap: "0", align: "flex-start", css: { flex: 1, minWidth: 0 }, children: [
16004
16151
  /* @__PURE__ */ jsxs58(HorizontalRhythm, { gap: "xs", align: "center", css: { maxWidth: "100%" }, children: [
16005
- /* @__PURE__ */ jsx87("button", { css: title, "data-testid": "card-title", children: title2 }),
16006
- !infoPopover ? null : /* @__PURE__ */ jsx87("div", { css: { display: "flex", cursor: "default" }, onClick: onStopPropogation, children: /* @__PURE__ */ jsx87(
16152
+ /* @__PURE__ */ jsx88("button", { css: title, "data-testid": "card-title", children: title2 }),
16153
+ !infoPopover ? null : /* @__PURE__ */ jsx88("div", { css: { display: "flex", cursor: "default" }, onClick: onStopPropogation, children: /* @__PURE__ */ jsx88(
16007
16154
  Popover2,
16008
16155
  {
16009
16156
  baseId: `info-of-${title2}`,
@@ -16012,24 +16159,33 @@ var MediaCard = ({
16012
16159
  iconColor: "default",
16013
16160
  tabIndex: 0,
16014
16161
  css: { display: "block" },
16015
- children: /* @__PURE__ */ jsx87("div", { children: infoPopover })
16162
+ children: /* @__PURE__ */ jsx88("div", { children: infoPopover })
16016
16163
  }
16017
16164
  ) })
16018
16165
  ] }),
16019
- subtitle2 ? /* @__PURE__ */ jsx87("button", { tabIndex: -1, css: subtitle, children: subtitle2 }) : null
16166
+ subtitle2 ? /* @__PURE__ */ jsx88("button", { tabIndex: -1, css: subtitle, children: subtitle2 }) : null
16020
16167
  ] }),
16021
- sideSection2 ? /* @__PURE__ */ jsx87("div", { css: sideSection, onClick: onStopPropogation, children: sideSection2 }) : null,
16022
- hasMenuItems ? /* @__PURE__ */ jsx87(
16168
+ sideSection2 ? /* @__PURE__ */ jsx88("div", { css: sideSection, onClick: onStopPropogation, children: sideSection2 }) : null,
16169
+ hasMenuItems ? /* @__PURE__ */ jsx88(
16023
16170
  VerticalRhythm,
16024
16171
  {
16025
16172
  css: menuSection,
16026
16173
  align: "center",
16027
16174
  justify: "center",
16028
16175
  onClick: onStopPropogation,
16029
- children: /* @__PURE__ */ jsx87(
16176
+ children: /* @__PURE__ */ jsx88(
16030
16177
  Menu,
16031
16178
  {
16032
- menuTrigger: /* @__PURE__ */ jsx87("button", { type: "button", "aria-label": "More options", css: menuButton, children: /* @__PURE__ */ jsx87(Icon, { icon: "more-alt", iconColor: "gray", size: 16 }) }),
16179
+ menuTrigger: /* @__PURE__ */ jsx88(
16180
+ "button",
16181
+ {
16182
+ type: "button",
16183
+ "aria-label": "More options",
16184
+ css: menuButton,
16185
+ "data-testid": "button-more",
16186
+ children: /* @__PURE__ */ jsx88(Icon, { icon: "more-alt", iconColor: "gray", size: 16 })
16187
+ }
16188
+ ),
16033
16189
  menuLabel: `Menu of ${title2}`,
16034
16190
  children: menuItems
16035
16191
  }
@@ -16042,7 +16198,7 @@ var MediaCard = ({
16042
16198
 
16043
16199
  // src/components/Modal/Modal.tsx
16044
16200
  import { CgClose as CgClose5 } from "@react-icons/all-files/cg/CgClose";
16045
- import React19 from "react";
16201
+ import React19, { useEffect as useEffect10, useRef as useRef6 } from "react";
16046
16202
 
16047
16203
  // src/components/Modal/Modal.styles.ts
16048
16204
  import { css as css73 } from "@emotion/react";
@@ -16054,26 +16210,33 @@ var modalWrapperStyles = css73`
16054
16210
  justify-content: center;
16055
16211
  z-index: var(--z-drawer);
16056
16212
  `;
16057
- var modalBackdropStyles = css73`
16058
- position: absolute;
16059
- inset: 0;
16060
- background-color: var(--brand-secondary-1);
16061
- opacity: 0.4;
16062
- `;
16063
16213
  var modalStyles = css73`
16064
16214
  position: relative;
16215
+ max-width: calc(100% - var(--spacing-base) * 2);
16216
+ max-height: calc(100% - var(--spacing-base) * 2);
16217
+ padding: 0;
16218
+ background-color: transparent;
16219
+ z-index: 1;
16220
+
16221
+ &::backdrop {
16222
+ background-color: var(--brand-secondary-1);
16223
+ opacity: 0.4;
16224
+ }
16225
+ `;
16226
+ var modalInnerStyles = css73`
16227
+ position: relative;
16228
+ width: 100%;
16229
+ height: 100%;
16065
16230
  display: flex;
16066
16231
  flex-direction: column;
16067
16232
  justify-content: stretch;
16068
- max-width: calc(100% - var(--spacing-base) * 2);
16069
- max-height: calc(100% - var(--spacing-base) * 2);
16070
16233
  gap: var(--spacing-base);
16071
16234
  background: var(--gray-50);
16235
+ color: unset;
16236
+ padding: var(--spacing-base);
16237
+ box-shadow: var(--elevation-500);
16072
16238
  border-radius: var(--rounded-base);
16073
16239
  border: 1px solid var(--gray-300);
16074
- padding: var(--spacing-base);
16075
- color: unset;
16076
- z-index: 1;
16077
16240
  `;
16078
16241
  var modalHeaderStyles = css73`
16079
16242
  display: flex;
@@ -16082,6 +16245,9 @@ var modalHeaderStyles = css73`
16082
16245
  font-size: var(--fs-md);
16083
16246
  line-height: 1.2;
16084
16247
  `;
16248
+ var modalHeaderHeaderStyles = css73`
16249
+ max-width: calc(100% - 3rem);
16250
+ `;
16085
16251
  var modalCloseButtonStyles = css73`
16086
16252
  display: block;
16087
16253
  padding: 0;
@@ -16090,6 +16256,7 @@ var modalCloseButtonStyles = css73`
16090
16256
  margin-left: auto;
16091
16257
  `;
16092
16258
  var modalContentStyles = css73`
16259
+ position: relative;
16093
16260
  flex: 1;
16094
16261
  background-color: white;
16095
16262
  padding: var(--spacing-md);
@@ -16098,7 +16265,7 @@ var modalContentStyles = css73`
16098
16265
  `;
16099
16266
 
16100
16267
  // src/components/Modal/Modal.tsx
16101
- import { jsx as jsx88, jsxs as jsxs59 } from "@emotion/react/jsx-runtime";
16268
+ import { jsx as jsx89, jsxs as jsxs59 } from "@emotion/react/jsx-runtime";
16102
16269
  var defaultModalWidth = "75rem";
16103
16270
  var defaultModalHeight = "51rem";
16104
16271
  var Modal = React19.forwardRef(
@@ -16108,44 +16275,146 @@ var Modal = React19.forwardRef(
16108
16275
  onRequestClose,
16109
16276
  width = defaultModalWidth,
16110
16277
  height = defaultModalHeight,
16111
- wrapperClassName,
16112
16278
  withoutContentPadding = false,
16113
16279
  buttonGroup,
16114
16280
  ...modalProps
16115
16281
  }, ref) => {
16282
+ const dialogRef = useRef6(null);
16116
16283
  useShortcut({
16117
16284
  handler: onRequestClose,
16118
16285
  shortcut: "escape"
16119
16286
  });
16120
- return /* @__PURE__ */ jsxs59("div", { css: [modalWrapperStyles, wrapperClassName], children: [
16121
- /* @__PURE__ */ jsx88("div", { onClick: onRequestClose, css: modalBackdropStyles }),
16122
- /* @__PURE__ */ jsxs59("dialog", { ref, css: modalStyles, style: { width, height }, ...modalProps, children: [
16123
- /* @__PURE__ */ jsxs59("div", { css: modalHeaderStyles, children: [
16124
- /* @__PURE__ */ jsx88("div", { children: header }),
16125
- /* @__PURE__ */ jsx88(
16126
- Button,
16127
- {
16128
- type: "button",
16129
- onClick: onRequestClose,
16130
- css: modalCloseButtonStyles,
16131
- title: "Close dialog",
16132
- buttonType: "ghost",
16133
- "data-testid": "close-dialog",
16134
- children: /* @__PURE__ */ jsx88(Icon, { icon: CgClose5, iconColor: "gray", size: 24 })
16135
- }
16136
- )
16137
- ] }),
16138
- /* @__PURE__ */ jsx88("div", { css: [modalContentStyles, !withoutContentPadding ? null : { padding: 0 }], children }),
16139
- buttonGroup ? /* @__PURE__ */ jsx88(HorizontalRhythm, { children: buttonGroup }) : null
16140
- ] })
16141
- ] });
16287
+ useEffect10(() => {
16288
+ var _a;
16289
+ if (!document.contains(dialogRef.current)) {
16290
+ console.warn(
16291
+ "The Modal component could not be rendered because it's not attached to the current Document."
16292
+ );
16293
+ return;
16294
+ }
16295
+ (_a = dialogRef.current) == null ? void 0 : _a.showModal();
16296
+ return () => {
16297
+ var _a2;
16298
+ return (_a2 = dialogRef.current) == null ? void 0 : _a2.close();
16299
+ };
16300
+ }, []);
16301
+ return /* @__PURE__ */ jsx89(
16302
+ "dialog",
16303
+ {
16304
+ ref: (element) => {
16305
+ dialogRef.current = element;
16306
+ if (!ref) {
16307
+ return;
16308
+ }
16309
+ if (typeof ref === "function") {
16310
+ ref(element);
16311
+ } else {
16312
+ ref.current = element;
16313
+ }
16314
+ },
16315
+ css: modalStyles,
16316
+ style: { width, height: height === "auto" ? "min-content" : height },
16317
+ "data-testid": "side-dialog",
16318
+ onClick: onRequestClose,
16319
+ ...modalProps,
16320
+ children: /* @__PURE__ */ jsxs59("div", { css: modalInnerStyles, onClick: (e) => e.stopPropagation(), children: [
16321
+ /* @__PURE__ */ jsxs59("div", { css: modalHeaderStyles, children: [
16322
+ /* @__PURE__ */ jsx89("div", { css: modalHeaderHeaderStyles, children: header }),
16323
+ /* @__PURE__ */ jsx89(
16324
+ Button,
16325
+ {
16326
+ type: "button",
16327
+ onClick: onRequestClose,
16328
+ css: modalCloseButtonStyles,
16329
+ title: "Close dialog",
16330
+ buttonType: "ghost",
16331
+ "data-testid": "close-dialog",
16332
+ children: /* @__PURE__ */ jsx89(Icon, { icon: CgClose5, iconColor: "gray", size: 24 })
16333
+ }
16334
+ )
16335
+ ] }),
16336
+ /* @__PURE__ */ jsx89("div", { css: [modalContentStyles, !withoutContentPadding ? null : { padding: 0 }], children }),
16337
+ buttonGroup ? /* @__PURE__ */ jsx89(HorizontalRhythm, { children: buttonGroup }) : null
16338
+ ] })
16339
+ }
16340
+ );
16142
16341
  }
16143
16342
  );
16144
16343
  Modal.displayName = "Modal";
16145
16344
 
16345
+ // src/components/Pagination/Pagination.tsx
16346
+ import Paginate from "react-paginate";
16347
+
16348
+ // src/components/Pagination/Pagniation.styles.ts
16349
+ import { css as css74 } from "@emotion/css";
16350
+ var container = css74`
16351
+ align-items: center;
16352
+ display: flex;
16353
+ `;
16354
+ var disabled = css74`
16355
+ opacity: var(--opacity-50);
16356
+ `;
16357
+ var disabledLink = css74`
16358
+ cursor: pointer-default;
16359
+ `;
16360
+ var pageLink = css74`
16361
+ display: block;
16362
+ padding: var(--spacing-sm) var(--spacing-base);
16363
+ `;
16364
+ var prevNextControls = css74`
16365
+ padding: var(--spacing-sm) var(--spacing-base);
16366
+ `;
16367
+ var active = css74`
16368
+ border-radius: var(--rounded-base);
16369
+ background: var(--gray-200);
16370
+ `;
16371
+ var page = css74`
16372
+ margin-left: var(--spacing-xs);
16373
+ margin-right: var(--spacing-xs);
16374
+ `;
16375
+
16376
+ // src/components/Pagination/Pagination.tsx
16377
+ import { jsx as jsx90 } from "@emotion/react/jsx-runtime";
16378
+ function Pagination({
16379
+ limit,
16380
+ offset,
16381
+ total,
16382
+ onPageChange
16383
+ }) {
16384
+ if (limit < 1) {
16385
+ return null;
16386
+ }
16387
+ const pageCount = Math.ceil(total / limit);
16388
+ const currentPage = Math.ceil(offset / limit);
16389
+ if (pageCount <= 1) {
16390
+ return null;
16391
+ }
16392
+ return /* @__PURE__ */ jsx90(
16393
+ Paginate,
16394
+ {
16395
+ forcePage: currentPage,
16396
+ previousLabel: /* @__PURE__ */ jsx90("div", { className: prevNextControls, children: "<" }),
16397
+ nextLabel: /* @__PURE__ */ jsx90("div", { className: prevNextControls, children: ">" }),
16398
+ breakLabel: "...",
16399
+ pageCount,
16400
+ marginPagesDisplayed: 2,
16401
+ pageRangeDisplayed: 5,
16402
+ onPageChange: ({ selected }) => {
16403
+ onPageChange(limit, selected * limit);
16404
+ },
16405
+ containerClassName: container,
16406
+ disabledClassName: disabled,
16407
+ disabledLinkClassName: disabledLink,
16408
+ pageLinkClassName: pageLink,
16409
+ activeClassName: active,
16410
+ pageClassName: page
16411
+ }
16412
+ );
16413
+ }
16414
+
16146
16415
  // src/components/ParameterInputs/hooks/ParameterShellContext.tsx
16147
- import { createContext as createContext5, useContext as useContext6 } from "react";
16148
- var ParameterShellContext = createContext5({
16416
+ import { createContext as createContext4, useContext as useContext5 } from "react";
16417
+ var ParameterShellContext = createContext4({
16149
16418
  id: "",
16150
16419
  label: "",
16151
16420
  hiddenLabel: void 0,
@@ -16154,7 +16423,7 @@ var ParameterShellContext = createContext5({
16154
16423
  }
16155
16424
  });
16156
16425
  var useParameterShell = () => {
16157
- const { id, label, hiddenLabel, errorMessage, handleManuallySetErrorMessage } = useContext6(ParameterShellContext);
16426
+ const { id, label, hiddenLabel, errorMessage, handleManuallySetErrorMessage } = useContext5(ParameterShellContext);
16158
16427
  return {
16159
16428
  id,
16160
16429
  label,
@@ -16165,8 +16434,8 @@ var useParameterShell = () => {
16165
16434
  };
16166
16435
 
16167
16436
  // src/components/ParameterInputs/styles/LabelLeadingIcon.styles.ts
16168
- import { css as css74 } from "@emotion/react";
16169
- var inputIconBtn = css74`
16437
+ import { css as css75 } from "@emotion/react";
16438
+ var inputIconBtn = css75`
16170
16439
  align-items: center;
16171
16440
  border: none;
16172
16441
  border-radius: var(--rounded-base);
@@ -16192,7 +16461,7 @@ var inputIconBtn = css74`
16192
16461
  `;
16193
16462
 
16194
16463
  // src/components/ParameterInputs/LabelLeadingIcon.tsx
16195
- import { jsx as jsx89, jsxs as jsxs60 } from "@emotion/react/jsx-runtime";
16464
+ import { jsx as jsx91, jsxs as jsxs60 } from "@emotion/react/jsx-runtime";
16196
16465
  var LabelLeadingIcon = ({
16197
16466
  icon,
16198
16467
  iconColor,
@@ -16204,7 +16473,7 @@ var LabelLeadingIcon = ({
16204
16473
  ...props
16205
16474
  }) => {
16206
16475
  const titleFr = title2 != null ? title2 : isLocked ? "Read-only pattern parameter" : isBound ? "Connected to external content. Click to edit" : "Click to connect to external content";
16207
- return /* @__PURE__ */ jsx89(Tooltip, { title: titleFr, children: /* @__PURE__ */ jsxs60(
16476
+ return /* @__PURE__ */ jsx91(Tooltip, { title: titleFr, children: /* @__PURE__ */ jsxs60(
16208
16477
  "button",
16209
16478
  {
16210
16479
  css: inputIconBtn,
@@ -16213,7 +16482,7 @@ var LabelLeadingIcon = ({
16213
16482
  "aria-disabled": isLocked,
16214
16483
  ...props,
16215
16484
  children: [
16216
- /* @__PURE__ */ jsx89(
16485
+ /* @__PURE__ */ jsx91(
16217
16486
  Icon,
16218
16487
  {
16219
16488
  icon: isLocked ? "lock" : icon ? icon : "arrows-expand-down-right",
@@ -16229,8 +16498,8 @@ var LabelLeadingIcon = ({
16229
16498
  var ConnectToDataElementButton = LabelLeadingIcon;
16230
16499
 
16231
16500
  // src/components/ParameterInputs/styles/ParameterInput.styles.ts
16232
- import { css as css75 } from "@emotion/react";
16233
- var inputContainer2 = css75`
16501
+ import { css as css76 } from "@emotion/react";
16502
+ var inputContainer2 = css76`
16234
16503
  position: relative;
16235
16504
  scroll-margin: var(--spacing-2xl);
16236
16505
 
@@ -16243,14 +16512,14 @@ var inputContainer2 = css75`
16243
16512
  }
16244
16513
  }
16245
16514
  `;
16246
- var labelText2 = css75`
16515
+ var labelText2 = css76`
16247
16516
  align-items: center;
16248
16517
  display: flex;
16249
16518
  gap: var(--spacing-xs);
16250
16519
  font-weight: var(--fw-regular);
16251
16520
  margin: 0 0 var(--spacing-xs);
16252
16521
  `;
16253
- var input2 = css75`
16522
+ var input2 = css76`
16254
16523
  display: block;
16255
16524
  appearance: none;
16256
16525
  box-sizing: border-box;
@@ -16294,18 +16563,18 @@ var input2 = css75`
16294
16563
  color: var(--gray-400);
16295
16564
  }
16296
16565
  `;
16297
- var selectInput = css75`
16566
+ var selectInput = css76`
16298
16567
  background-image: url("data:image/svg+xml,%3Csvg width='24' height='24' viewBox='0 0 24 24' fill='none' xmlns='http://www.w3.org/2000/svg'%0A%3E%3Cpath d='M6.34317 7.75732L4.92896 9.17154L12 16.2426L19.0711 9.17157L17.6569 7.75735L12 13.4142L6.34317 7.75732Z' fill='currentColor' /%3E%3C/svg%3E");
16299
16568
  background-position: right var(--spacing-sm) center;
16300
16569
  background-repeat: no-repeat;
16301
16570
  background-size: 1rem;
16302
16571
  padding-right: var(--spacing-xl);
16303
16572
  `;
16304
- var inputWrapper = css75`
16573
+ var inputWrapper = css76`
16305
16574
  display: flex; // used to correct overflow with chrome textarea
16306
16575
  position: relative;
16307
16576
  `;
16308
- var inputIcon2 = css75`
16577
+ var inputIcon2 = css76`
16309
16578
  align-items: center;
16310
16579
  background: var(--white);
16311
16580
  border-radius: var(--rounded-md) 0 0 var(--rounded-md);
@@ -16321,7 +16590,7 @@ var inputIcon2 = css75`
16321
16590
  width: var(--spacing-lg);
16322
16591
  z-index: var(--z-10);
16323
16592
  `;
16324
- var inputToggleLabel2 = css75`
16593
+ var inputToggleLabel2 = css76`
16325
16594
  align-items: center;
16326
16595
  background: var(--white);
16327
16596
  cursor: pointer;
@@ -16332,7 +16601,7 @@ var inputToggleLabel2 = css75`
16332
16601
  min-height: var(--spacing-md);
16333
16602
  position: relative;
16334
16603
  `;
16335
- var toggleInput2 = css75`
16604
+ var toggleInput2 = css76`
16336
16605
  appearance: none;
16337
16606
  border: 1px solid var(--gray-300);
16338
16607
  background: var(--white);
@@ -16371,7 +16640,7 @@ var toggleInput2 = css75`
16371
16640
  border-color: var(--gray-300);
16372
16641
  }
16373
16642
  `;
16374
- var inlineLabel2 = css75`
16643
+ var inlineLabel2 = css76`
16375
16644
  padding-left: var(--spacing-lg);
16376
16645
  font-size: var(--fs-sm);
16377
16646
  font-weight: var(--fw-regular);
@@ -16387,13 +16656,18 @@ var inlineLabel2 = css75`
16387
16656
  }
16388
16657
  }
16389
16658
  `;
16390
- var inputMenu = css75`
16659
+ var inputMenu = css76`
16391
16660
  background: none;
16392
16661
  border: none;
16393
16662
  padding: var(--spacing-2xs);
16394
16663
  position: absolute;
16395
16664
  top: calc(var(--spacing-md) * -1.2);
16396
16665
  right: 0;
16666
+ `;
16667
+ var inputActionItems = css76`
16668
+ display: flex;
16669
+ `;
16670
+ var inputMenuHover = css76`
16397
16671
  opacity: var(--opacity-50);
16398
16672
  transition: background-color var(--duration-fast) var(--timing-ease-out);
16399
16673
 
@@ -16403,11 +16677,11 @@ var inputMenu = css75`
16403
16677
  background-color: var(--gray-200);
16404
16678
  }
16405
16679
  `;
16406
- var textarea2 = css75`
16680
+ var textarea2 = css76`
16407
16681
  resize: vertical;
16408
16682
  min-height: 2rem;
16409
16683
  `;
16410
- var dataConnectButton = css75`
16684
+ var dataConnectButton = css76`
16411
16685
  align-items: center;
16412
16686
  appearance: none;
16413
16687
  box-sizing: border-box;
@@ -16442,7 +16716,7 @@ var dataConnectButton = css75`
16442
16716
  pointer-events: none;
16443
16717
  }
16444
16718
  `;
16445
- var linkParameterBtn = css75`
16719
+ var linkParameterBtn = css76`
16446
16720
  border-radius: var(--rounded-base);
16447
16721
  background: var(--white);
16448
16722
  border: none;
@@ -16451,7 +16725,7 @@ var linkParameterBtn = css75`
16451
16725
  font-size: var(--fs-sm);
16452
16726
  line-height: 1;
16453
16727
  `;
16454
- var linkParameterControls = css75`
16728
+ var linkParameterControls = css76`
16455
16729
  position: absolute;
16456
16730
  inset: 0 0 0 auto;
16457
16731
  padding: 0 var(--spacing-base);
@@ -16460,7 +16734,7 @@ var linkParameterControls = css75`
16460
16734
  justify-content: center;
16461
16735
  gap: var(--spacing-base);
16462
16736
  `;
16463
- var linkParameterInput = (withExternalLinkIcon) => css75`
16737
+ var linkParameterInput = (withExternalLinkIcon) => css76`
16464
16738
  padding-right: calc(
16465
16739
  ${withExternalLinkIcon ? "calc(var(--spacing-lg) * 2 + var(--spacing-xs))" : "var(--spacing-xl)"} +
16466
16740
  var(--spacing-base)
@@ -16473,7 +16747,7 @@ var linkParameterInput = (withExternalLinkIcon) => css75`
16473
16747
  }
16474
16748
  }
16475
16749
  `;
16476
- var linkParameterIcon = css75`
16750
+ var linkParameterIcon = css76`
16477
16751
  align-items: center;
16478
16752
  color: var(--brand-secondary-3);
16479
16753
  display: flex;
@@ -16488,14 +16762,14 @@ var linkParameterIcon = css75`
16488
16762
  `;
16489
16763
 
16490
16764
  // src/components/ParameterInputs/ParameterDataResource.tsx
16491
- import { jsx as jsx90, jsxs as jsxs61 } from "@emotion/react/jsx-runtime";
16765
+ import { jsx as jsx92, jsxs as jsxs61 } from "@emotion/react/jsx-runtime";
16492
16766
  function ParameterDataResource({
16493
16767
  label,
16494
16768
  labelLeadingIcon,
16495
16769
  id,
16496
16770
  onConnectDatasource,
16497
16771
  caption,
16498
- disabled,
16772
+ disabled: disabled2,
16499
16773
  children
16500
16774
  }) {
16501
16775
  return /* @__PURE__ */ jsxs61("div", { "data-testid": "parameter-data-connect-button", children: [
@@ -16509,33 +16783,33 @@ function ParameterDataResource({
16509
16783
  type: "button",
16510
16784
  css: dataConnectButton,
16511
16785
  "aria-controls": id,
16512
- disabled,
16786
+ disabled: disabled2,
16513
16787
  onClick: onConnectDatasource,
16514
16788
  children: [
16515
- /* @__PURE__ */ jsx90("span", { className: "advance-input-icon", css: [inputIcon2], children: /* @__PURE__ */ jsx90(Icon, { icon: "stack", iconColor: "currentColor", size: "1rem" }) }),
16789
+ /* @__PURE__ */ jsx92("span", { className: "advance-input-icon", css: [inputIcon2], children: /* @__PURE__ */ jsx92(Icon, { icon: "stack", iconColor: "currentColor", size: "1rem" }) }),
16516
16790
  children
16517
16791
  ]
16518
16792
  }
16519
16793
  ),
16520
- caption ? /* @__PURE__ */ jsx90(Caption, { children: caption }) : null
16794
+ caption ? /* @__PURE__ */ jsx92(Caption, { children: caption }) : null
16521
16795
  ] });
16522
16796
  }
16523
16797
 
16524
16798
  // src/components/ParameterInputs/styles/ParameterDrawerHeader.styles.ts
16525
- import { css as css76 } from "@emotion/react";
16526
- var ParameterDrawerHeaderContainer = css76`
16799
+ import { css as css77 } from "@emotion/react";
16800
+ var ParameterDrawerHeaderContainer = css77`
16527
16801
  align-items: center;
16528
16802
  display: flex;
16529
16803
  gap: var(--spacing-base);
16530
16804
  justify-content: space-between;
16531
16805
  margin-bottom: var(--spacing-sm);
16532
16806
  `;
16533
- var ParameterDrawerHeaderTitleGroup = css76`
16807
+ var ParameterDrawerHeaderTitleGroup = css77`
16534
16808
  align-items: center;
16535
16809
  display: flex;
16536
16810
  gap: var(--spacing-sm);
16537
16811
  `;
16538
- var ParameterDrawerHeaderTitle = css76`
16812
+ var ParameterDrawerHeaderTitle = css77`
16539
16813
  text-overflow: ellipsis;
16540
16814
  white-space: nowrap;
16541
16815
  overflow: hidden;
@@ -16543,23 +16817,23 @@ var ParameterDrawerHeaderTitle = css76`
16543
16817
  `;
16544
16818
 
16545
16819
  // src/components/ParameterInputs/ParameterDrawerHeader.tsx
16546
- import { jsx as jsx91, jsxs as jsxs62 } from "@emotion/react/jsx-runtime";
16820
+ import { jsx as jsx93, jsxs as jsxs62 } from "@emotion/react/jsx-runtime";
16547
16821
  var ParameterDrawerHeader = ({ title: title2, iconBeforeTitle, children }) => {
16548
16822
  return /* @__PURE__ */ jsxs62("div", { css: ParameterDrawerHeaderContainer, children: [
16549
16823
  /* @__PURE__ */ jsxs62("header", { css: ParameterDrawerHeaderTitleGroup, children: [
16550
16824
  iconBeforeTitle,
16551
- /* @__PURE__ */ jsx91(Heading, { level: 3, withMarginBottom: false, css: ParameterDrawerHeaderTitle, title: title2, children: title2 })
16825
+ /* @__PURE__ */ jsx93(Heading, { level: 3, withMarginBottom: false, css: ParameterDrawerHeaderTitle, title: title2, children: title2 })
16552
16826
  ] }),
16553
16827
  children
16554
16828
  ] });
16555
16829
  };
16556
16830
 
16557
16831
  // src/components/ParameterInputs/ParameterGroup.tsx
16558
- import { forwardRef as forwardRef10 } from "react";
16832
+ import { forwardRef as forwardRef11 } from "react";
16559
16833
 
16560
16834
  // src/components/ParameterInputs/styles/ParameterGroup.styles.ts
16561
- import { css as css77 } from "@emotion/react";
16562
- var fieldsetStyles = css77`
16835
+ import { css as css78 } from "@emotion/react";
16836
+ var fieldsetStyles = css78`
16563
16837
  &:disabled,
16564
16838
  [readonly] {
16565
16839
  pointer-events: none;
@@ -16570,7 +16844,7 @@ var fieldsetStyles = css77`
16570
16844
  }
16571
16845
  }
16572
16846
  `;
16573
- var fieldsetLegend2 = css77`
16847
+ var fieldsetLegend2 = css78`
16574
16848
  display: block;
16575
16849
  font-weight: var(--fw-medium);
16576
16850
  margin-bottom: var(--spacing-sm);
@@ -16578,33 +16852,33 @@ var fieldsetLegend2 = css77`
16578
16852
  `;
16579
16853
 
16580
16854
  // src/components/ParameterInputs/ParameterGroup.tsx
16581
- import { jsx as jsx92, jsxs as jsxs63 } from "@emotion/react/jsx-runtime";
16582
- var ParameterGroup = forwardRef10(
16855
+ import { jsx as jsx94, jsxs as jsxs63 } from "@emotion/react/jsx-runtime";
16856
+ var ParameterGroup = forwardRef11(
16583
16857
  ({ legend, isDisabled, children, ...props }, ref) => {
16584
16858
  return /* @__PURE__ */ jsxs63("fieldset", { css: fieldsetStyles, disabled: isDisabled, ref, ...props, children: [
16585
- /* @__PURE__ */ jsx92("legend", { css: fieldsetLegend2, children: legend }),
16859
+ /* @__PURE__ */ jsx94("legend", { css: fieldsetLegend2, children: legend }),
16586
16860
  children
16587
16861
  ] });
16588
16862
  }
16589
16863
  );
16590
16864
 
16591
16865
  // src/components/ParameterInputs/ParameterImage.tsx
16592
- import { forwardRef as forwardRef12, useDeferredValue } from "react";
16866
+ import { forwardRef as forwardRef13, useDeferredValue } from "react";
16593
16867
 
16594
16868
  // src/components/ParameterInputs/ParameterImagePreview.tsx
16595
- import { useState as useState10 } from "react";
16869
+ import { useState as useState9 } from "react";
16596
16870
  import { createPortal as createPortal2 } from "react-dom";
16597
16871
 
16598
16872
  // src/components/ParameterInputs/styles/ParameterImage.styles.ts
16599
- import { css as css78 } from "@emotion/react";
16600
- var previewWrapper = css78`
16873
+ import { css as css79 } from "@emotion/react";
16874
+ var previewWrapper = css79`
16601
16875
  margin-top: var(--spacing-xs);
16602
16876
  background: var(--gray-50);
16603
16877
  padding: var(--spacing-sm);
16604
16878
  border: solid 1px var(--gray-300);
16605
16879
  border-radius: var(--rounded-sm);
16606
16880
  `;
16607
- var previewLink = css78`
16881
+ var previewLink = css79`
16608
16882
  display: block;
16609
16883
  width: 100%;
16610
16884
 
@@ -16612,7 +16886,7 @@ var previewLink = css78`
16612
16886
  max-height: 9rem;
16613
16887
  }
16614
16888
  `;
16615
- var previewModalWrapper = css78`
16889
+ var previewModalWrapper = css79`
16616
16890
  background: var(--gray-50);
16617
16891
  display: flex;
16618
16892
  height: 100%;
@@ -16621,7 +16895,7 @@ var previewModalWrapper = css78`
16621
16895
  border: solid 1px var(--gray-300);
16622
16896
  border-radius: var(--rounded-sm);
16623
16897
  `;
16624
- var previewModalImage = css78`
16898
+ var previewModalImage = css79`
16625
16899
  display: flex;
16626
16900
  height: 100%;
16627
16901
  width: 100%;
@@ -16633,33 +16907,33 @@ var previewModalImage = css78`
16633
16907
  `;
16634
16908
 
16635
16909
  // src/components/ParameterInputs/ParameterImagePreview.tsx
16636
- import { Fragment as Fragment15, jsx as jsx93, jsxs as jsxs64 } from "@emotion/react/jsx-runtime";
16910
+ import { Fragment as Fragment13, jsx as jsx95, jsxs as jsxs64 } from "@emotion/react/jsx-runtime";
16637
16911
  function ParameterImagePreview({ imageSrc }) {
16638
- const [showModal, setShowModal] = useState10(false);
16912
+ const [showModal, setShowModal] = useState9(false);
16639
16913
  return imageSrc ? /* @__PURE__ */ jsxs64("div", { css: previewWrapper, children: [
16640
- /* @__PURE__ */ jsx93(PreviewImageModal, { open: showModal, imageSrc, onRequestClose: () => setShowModal(false) }),
16641
- /* @__PURE__ */ jsx93(
16914
+ /* @__PURE__ */ jsx95(PreviewImageModal, { open: showModal, imageSrc, onRequestClose: () => setShowModal(false) }),
16915
+ /* @__PURE__ */ jsx95(
16642
16916
  "button",
16643
16917
  {
16644
16918
  css: previewLink,
16645
16919
  onClick: () => {
16646
16920
  setShowModal(true);
16647
16921
  },
16648
- children: /* @__PURE__ */ jsx93(Image, { src: imageSrc, "data-testid": "parameter-image-preview" })
16922
+ children: /* @__PURE__ */ jsx95(Image, { src: imageSrc, "data-testid": "parameter-image-preview" })
16649
16923
  }
16650
16924
  )
16651
16925
  ] }) : null;
16652
16926
  }
16653
16927
  var PreviewImageModal = ({ open, onRequestClose, imageSrc }) => {
16654
- return open ? /* @__PURE__ */ jsx93(Fragment15, { children: createPortal2(
16655
- /* @__PURE__ */ jsx93(
16928
+ return open ? /* @__PURE__ */ jsx95(Fragment13, { children: createPortal2(
16929
+ /* @__PURE__ */ jsx95(
16656
16930
  Modal,
16657
16931
  {
16658
16932
  header: "Image Preview",
16659
16933
  onRequestClose,
16660
16934
  withoutContentPadding: true,
16661
- buttonGroup: /* @__PURE__ */ jsx93(Button, { buttonType: "secondary", onClick: onRequestClose, children: "Ok" }),
16662
- children: /* @__PURE__ */ jsx93("div", { css: previewModalWrapper, children: /* @__PURE__ */ jsx93(Image, { src: imageSrc, css: previewModalImage, "data-testid": "parameter-image-preview" }) })
16935
+ buttonGroup: /* @__PURE__ */ jsx95(Button, { buttonType: "secondary", onClick: onRequestClose, children: "Ok" }),
16936
+ children: /* @__PURE__ */ jsx95("div", { css: previewModalWrapper, children: /* @__PURE__ */ jsx95(Image, { src: imageSrc, css: previewModalImage, "data-testid": "parameter-image-preview" }) })
16663
16937
  }
16664
16938
  ),
16665
16939
  document.body
@@ -16667,33 +16941,33 @@ var PreviewImageModal = ({ open, onRequestClose, imageSrc }) => {
16667
16941
  };
16668
16942
 
16669
16943
  // src/components/ParameterInputs/ParameterShell.tsx
16670
- import { css as css80 } from "@emotion/react";
16671
- import { useState as useState11 } from "react";
16944
+ import { css as css81 } from "@emotion/react";
16945
+ import { useState as useState10 } from "react";
16672
16946
 
16673
16947
  // src/components/ParameterInputs/ParameterLabel.tsx
16674
- import { jsx as jsx94 } from "@emotion/react/jsx-runtime";
16948
+ import { jsx as jsx96 } from "@emotion/react/jsx-runtime";
16675
16949
  var ParameterLabel = ({ id, asSpan, children, ...props }) => {
16676
- return !asSpan ? /* @__PURE__ */ jsx94("label", { ...props, htmlFor: id, css: labelText2, children }) : /* @__PURE__ */ jsx94("span", { "aria-labelledby": id, css: labelText2, children });
16950
+ return !asSpan ? /* @__PURE__ */ jsx96("label", { ...props, htmlFor: id, css: labelText2, children }) : /* @__PURE__ */ jsx96("span", { "aria-labelledby": id, css: labelText2, children });
16677
16951
  };
16678
16952
 
16679
16953
  // src/components/ParameterInputs/ParameterMenuButton.tsx
16680
- import { forwardRef as forwardRef11 } from "react";
16681
- import { jsx as jsx95 } from "@emotion/react/jsx-runtime";
16682
- var ParameterMenuButton = forwardRef11(
16954
+ import { forwardRef as forwardRef12 } from "react";
16955
+ import { jsx as jsx97 } from "@emotion/react/jsx-runtime";
16956
+ var ParameterMenuButton = forwardRef12(
16683
16957
  ({ label, children }, ref) => {
16684
- return /* @__PURE__ */ jsx95(
16958
+ return /* @__PURE__ */ jsx97(
16685
16959
  Menu,
16686
16960
  {
16687
16961
  menuLabel: `${label} menu`,
16688
- menuTrigger: /* @__PURE__ */ jsx95(
16962
+ menuTrigger: /* @__PURE__ */ jsx97(
16689
16963
  "button",
16690
16964
  {
16691
16965
  className: "parameter-menu",
16692
- css: inputMenu,
16966
+ css: [inputMenu, inputMenuHover],
16693
16967
  type: "button",
16694
16968
  "aria-label": `${label} options`,
16695
16969
  ref,
16696
- children: /* @__PURE__ */ jsx95(Icon, { icon: "more-alt", iconColor: "currentColor", size: "0.9rem" })
16970
+ children: /* @__PURE__ */ jsx97(Icon, { icon: "more-alt", iconColor: "currentColor", size: "0.9rem" })
16697
16971
  }
16698
16972
  ),
16699
16973
  children
@@ -16703,8 +16977,8 @@ var ParameterMenuButton = forwardRef11(
16703
16977
  );
16704
16978
 
16705
16979
  // src/components/ParameterInputs/styles/ParameterShell.styles.ts
16706
- import { css as css79 } from "@emotion/react";
16707
- var emptyParameterShell = css79`
16980
+ import { css as css80 } from "@emotion/react";
16981
+ var emptyParameterShell = css80`
16708
16982
  border-radius: var(--rounded-sm);
16709
16983
  background: var(--white);
16710
16984
  flex-grow: 1;
@@ -16712,7 +16986,7 @@ var emptyParameterShell = css79`
16712
16986
  position: relative;
16713
16987
  max-width: 100%;
16714
16988
  `;
16715
- var emptyParameterShellText = css79`
16989
+ var emptyParameterShellText = css80`
16716
16990
  background: var(--brand-secondary-6);
16717
16991
  border-radius: var(--rounded-sm);
16718
16992
  padding: var(--spacing-sm);
@@ -16720,7 +16994,7 @@ var emptyParameterShellText = css79`
16720
16994
  font-size: var(--fs-sm);
16721
16995
  margin: 0;
16722
16996
  `;
16723
- var overrideMarker = css79`
16997
+ var overrideMarker = css80`
16724
16998
  border-radius: var(--rounded-sm);
16725
16999
  border: 10px solid var(--gray-300);
16726
17000
  border-left-color: transparent;
@@ -16731,7 +17005,7 @@ var overrideMarker = css79`
16731
17005
  `;
16732
17006
 
16733
17007
  // src/components/ParameterInputs/ParameterShell.tsx
16734
- import { jsx as jsx96, jsxs as jsxs65 } from "@emotion/react/jsx-runtime";
17008
+ import { jsx as jsx98, jsxs as jsxs65 } from "@emotion/react/jsx-runtime";
16735
17009
  var extractParameterProps = (props) => {
16736
17010
  const {
16737
17011
  id,
@@ -16788,9 +17062,10 @@ var ParameterShell = ({
16788
17062
  onResetOverriddenValue,
16789
17063
  title: title2,
16790
17064
  children,
17065
+ isParameterGroup = false,
16791
17066
  ...props
16792
17067
  }) => {
16793
- const [manualErrorMessage, setManualErrorMessage] = useState11(void 0);
17068
+ const [manualErrorMessage, setManualErrorMessage] = useState10(void 0);
16794
17069
  const setErrorMessage = (message) => setManualErrorMessage(message);
16795
17070
  const errorMessaging = errorMessage || manualErrorMessage;
16796
17071
  return /* @__PURE__ */ jsxs65("div", { css: inputContainer2, ...props, id, children: [
@@ -16805,23 +17080,21 @@ var ParameterShell = ({
16805
17080
  labelTrailingIcon != null ? labelTrailingIcon : null
16806
17081
  ] }),
16807
17082
  /* @__PURE__ */ jsxs65("div", { css: inputWrapper, children: [
16808
- actionItems ? /* @__PURE__ */ jsx96(
17083
+ actionItems ? /* @__PURE__ */ jsx98(
16809
17084
  "div",
16810
17085
  {
16811
17086
  css: [
16812
17087
  inputMenu,
16813
- css80`
16814
- opacity: var(--opacity-100);
16815
- `,
16816
- menuItems ? css80`
17088
+ inputActionItems,
17089
+ menuItems ? css81`
16817
17090
  right: var(--spacing-md);
16818
17091
  ` : void 0
16819
17092
  ],
16820
17093
  children: actionItems
16821
17094
  }
16822
17095
  ) : null,
16823
- menuItems ? /* @__PURE__ */ jsx96(ParameterMenuButton, { label: `${label} menu`, children: menuItems }) : null,
16824
- /* @__PURE__ */ jsx96(
17096
+ menuItems ? /* @__PURE__ */ jsx98(ParameterMenuButton, { label: `${label} menu`, children: menuItems }) : null,
17097
+ /* @__PURE__ */ jsx98(
16825
17098
  ParameterShellContext.Provider,
16826
17099
  {
16827
17100
  value: {
@@ -16831,41 +17104,41 @@ var ParameterShell = ({
16831
17104
  errorMessage: errorMessaging,
16832
17105
  handleManuallySetErrorMessage: (message) => setErrorMessage(message)
16833
17106
  },
16834
- children: /* @__PURE__ */ jsxs65(ParameterShellPlaceholder, { children: [
17107
+ children: isParameterGroup ? /* @__PURE__ */ jsx98("div", { style: { flexGrow: 1 }, children }) : /* @__PURE__ */ jsxs65(ParameterShellPlaceholder, { children: [
16835
17108
  children,
16836
- hasOverriddenValue && onResetOverriddenValue ? /* @__PURE__ */ jsx96(ParameterOverrideMarker, { onClick: onResetOverriddenValue }) : null
17109
+ hasOverriddenValue && onResetOverriddenValue ? /* @__PURE__ */ jsx98(ParameterOverrideMarker, { onClick: onResetOverriddenValue }) : null
16837
17110
  ] })
16838
17111
  }
16839
17112
  )
16840
17113
  ] }),
16841
- caption ? /* @__PURE__ */ jsx96(Caption, { testId: captionTestId, children: caption }) : null,
16842
- errorMessaging ? /* @__PURE__ */ jsx96(ErrorMessage, { message: errorMessaging, testId: errorTestId }) : null,
16843
- warningMessage ? /* @__PURE__ */ jsx96(WarningMessage, { message: warningMessage }) : null,
16844
- infoMessage ? /* @__PURE__ */ jsx96(InfoMessage, { message: infoMessage }) : null
17114
+ caption ? /* @__PURE__ */ jsx98(Caption, { testId: captionTestId, children: caption }) : null,
17115
+ errorMessaging ? /* @__PURE__ */ jsx98(ErrorMessage, { message: errorMessaging, testId: errorTestId }) : null,
17116
+ warningMessage ? /* @__PURE__ */ jsx98(WarningMessage, { message: warningMessage }) : null,
17117
+ infoMessage ? /* @__PURE__ */ jsx98(InfoMessage, { message: infoMessage }) : null
16845
17118
  ] });
16846
17119
  };
16847
17120
  var ParameterShellPlaceholder = ({ children }) => {
16848
- return /* @__PURE__ */ jsx96("div", { css: emptyParameterShell, children });
17121
+ return /* @__PURE__ */ jsx98("div", { css: emptyParameterShell, children });
16849
17122
  };
16850
- var ParameterOverrideMarker = (props) => /* @__PURE__ */ jsx96(Tooltip, { title: "The default value has been overridden", children: /* @__PURE__ */ jsx96("button", { type: "button", css: overrideMarker, ...props, children: /* @__PURE__ */ jsx96("span", { hidden: true, children: "reset overridden value to default" }) }) });
17123
+ var ParameterOverrideMarker = (props) => /* @__PURE__ */ jsx98(Tooltip, { title: "The default value has been overridden", children: /* @__PURE__ */ jsx98("button", { type: "button", css: overrideMarker, ...props, children: /* @__PURE__ */ jsx98("span", { hidden: true, children: "reset overridden value to default" }) }) });
16851
17124
 
16852
17125
  // src/components/ParameterInputs/ParameterImage.tsx
16853
- import { Fragment as Fragment16, jsx as jsx97, jsxs as jsxs66 } from "@emotion/react/jsx-runtime";
16854
- var ParameterImage = forwardRef12(
17126
+ import { Fragment as Fragment14, jsx as jsx99, jsxs as jsxs66 } from "@emotion/react/jsx-runtime";
17127
+ var ParameterImage = forwardRef13(
16855
17128
  ({ children, ...props }, ref) => {
16856
17129
  const { shellProps, innerProps } = extractParameterProps(props);
16857
17130
  return /* @__PURE__ */ jsxs66(ParameterShell, { "data-test-id": "parameter-image", ...shellProps, children: [
16858
- /* @__PURE__ */ jsx97(ParameterImageInner, { ref, ...innerProps }),
17131
+ /* @__PURE__ */ jsx99(ParameterImageInner, { ref, ...innerProps }),
16859
17132
  children
16860
17133
  ] });
16861
17134
  }
16862
17135
  );
16863
- var ParameterImageInner = forwardRef12((props, ref) => {
17136
+ var ParameterImageInner = forwardRef13((props, ref) => {
16864
17137
  const { value } = props;
16865
17138
  const { id, label, hiddenLabel, errorMessage } = useParameterShell();
16866
17139
  const deferredValue = useDeferredValue(value);
16867
- return /* @__PURE__ */ jsxs66(Fragment16, { children: [
16868
- /* @__PURE__ */ jsx97(
17140
+ return /* @__PURE__ */ jsxs66(Fragment14, { children: [
17141
+ /* @__PURE__ */ jsx99(
16869
17142
  "input",
16870
17143
  {
16871
17144
  css: input2,
@@ -16877,21 +17150,21 @@ var ParameterImageInner = forwardRef12((props, ref) => {
16877
17150
  ...props
16878
17151
  }
16879
17152
  ),
16880
- errorMessage || props.disablePreview ? null : /* @__PURE__ */ jsx97(ParameterImagePreview, { imageSrc: deferredValue })
17153
+ errorMessage || props.disablePreview ? null : /* @__PURE__ */ jsx99(ParameterImagePreview, { imageSrc: deferredValue })
16881
17154
  ] });
16882
17155
  });
16883
17156
 
16884
17157
  // src/components/ParameterInputs/ParameterInput.tsx
16885
- import { forwardRef as forwardRef13 } from "react";
16886
- import { jsx as jsx98 } from "@emotion/react/jsx-runtime";
16887
- var ParameterInput = forwardRef13((props, ref) => {
17158
+ import { forwardRef as forwardRef14 } from "react";
17159
+ import { jsx as jsx100 } from "@emotion/react/jsx-runtime";
17160
+ var ParameterInput = forwardRef14((props, ref) => {
16888
17161
  const { shellProps, innerProps } = extractParameterProps(props);
16889
- return /* @__PURE__ */ jsx98(ParameterShell, { "data-testid": "parameter-input", ...shellProps, children: /* @__PURE__ */ jsx98(ParameterInputInner, { ref, ...innerProps }) });
17162
+ return /* @__PURE__ */ jsx100(ParameterShell, { "data-testid": "parameter-input", ...shellProps, children: /* @__PURE__ */ jsx100(ParameterInputInner, { ref, ...innerProps }) });
16890
17163
  });
16891
- var ParameterInputInner = forwardRef13(
17164
+ var ParameterInputInner = forwardRef14(
16892
17165
  ({ ...props }, ref) => {
16893
17166
  const { id, label, hiddenLabel } = useParameterShell();
16894
- return /* @__PURE__ */ jsx98(
17167
+ return /* @__PURE__ */ jsx100(
16895
17168
  "input",
16896
17169
  {
16897
17170
  css: input2,
@@ -16907,19 +17180,19 @@ var ParameterInputInner = forwardRef13(
16907
17180
  );
16908
17181
 
16909
17182
  // src/components/ParameterInputs/ParameterLink.tsx
16910
- import { forwardRef as forwardRef14 } from "react";
16911
- import { jsx as jsx99, jsxs as jsxs67 } from "@emotion/react/jsx-runtime";
16912
- var ParameterLink = forwardRef14(
16913
- ({ disabled, onConnectLink, externalLink, ...props }, ref) => {
17183
+ import { forwardRef as forwardRef15 } from "react";
17184
+ import { jsx as jsx101, jsxs as jsxs67 } from "@emotion/react/jsx-runtime";
17185
+ var ParameterLink = forwardRef15(
17186
+ ({ disabled: disabled2, onConnectLink, externalLink, ...props }, ref) => {
16914
17187
  const { shellProps, innerProps } = extractParameterProps(props);
16915
- return /* @__PURE__ */ jsx99(
17188
+ return /* @__PURE__ */ jsx101(
16916
17189
  ParameterShell,
16917
17190
  {
16918
17191
  "data-testid": "link-parameter-editor",
16919
17192
  ...shellProps,
16920
17193
  label: innerProps.value ? shellProps.label : "",
16921
17194
  title: !innerProps.value ? shellProps.label : void 0,
16922
- children: /* @__PURE__ */ jsx99(
17195
+ children: /* @__PURE__ */ jsx101(
16923
17196
  ParameterLinkInner,
16924
17197
  {
16925
17198
  onConnectLink,
@@ -16932,13 +17205,13 @@ var ParameterLink = forwardRef14(
16932
17205
  );
16933
17206
  }
16934
17207
  );
16935
- var ParameterLinkInner = forwardRef14(
16936
- ({ externalLink, onConnectLink, disabled, buttonText = "Select link", ...props }, ref) => {
17208
+ var ParameterLinkInner = forwardRef15(
17209
+ ({ externalLink, onConnectLink, disabled: disabled2, buttonText = "Select link", ...props }, ref) => {
16937
17210
  const { id, label, hiddenLabel } = useParameterShell();
16938
17211
  if (!props.value)
16939
- return /* @__PURE__ */ jsx99("button", { type: "button", css: dataConnectButton, disabled, onClick: onConnectLink, children: buttonText });
17212
+ return /* @__PURE__ */ jsx101("button", { type: "button", css: dataConnectButton, disabled: disabled2, onClick: onConnectLink, children: buttonText });
16940
17213
  return /* @__PURE__ */ jsxs67("div", { css: inputWrapper, children: [
16941
- /* @__PURE__ */ jsx99(
17214
+ /* @__PURE__ */ jsx101(
16942
17215
  "input",
16943
17216
  {
16944
17217
  type: "text",
@@ -16951,18 +17224,18 @@ var ParameterLinkInner = forwardRef14(
16951
17224
  }
16952
17225
  ),
16953
17226
  /* @__PURE__ */ jsxs67("div", { css: linkParameterControls, children: [
16954
- /* @__PURE__ */ jsx99(
17227
+ /* @__PURE__ */ jsx101(
16955
17228
  "button",
16956
17229
  {
16957
17230
  type: "button",
16958
17231
  css: linkParameterBtn,
16959
- disabled,
17232
+ disabled: disabled2,
16960
17233
  onClick: onConnectLink,
16961
17234
  title: "edit current selection",
16962
17235
  children: "edit"
16963
17236
  }
16964
17237
  ),
16965
- externalLink ? /* @__PURE__ */ jsx99(
17238
+ externalLink ? /* @__PURE__ */ jsx101(
16966
17239
  "a",
16967
17240
  {
16968
17241
  href: externalLink,
@@ -16970,7 +17243,7 @@ var ParameterLinkInner = forwardRef14(
16970
17243
  title: "Open link in new tab",
16971
17244
  target: "_blank",
16972
17245
  rel: "noopener noreferrer",
16973
- children: /* @__PURE__ */ jsx99(Icon, { icon: "arrows-expand-up-right", iconColor: "currentColor", size: "1rem" })
17246
+ children: /* @__PURE__ */ jsx101(Icon, { icon: "arrows-expand-up-right", iconColor: "currentColor", size: "1rem" })
16974
17247
  }
16975
17248
  ) : null
16976
17249
  ] })
@@ -16979,7 +17252,7 @@ var ParameterLinkInner = forwardRef14(
16979
17252
  );
16980
17253
 
16981
17254
  // src/components/ParameterInputs/ParameterNameAndPublicIdInput.tsx
16982
- import { Fragment as Fragment17, jsx as jsx100, jsxs as jsxs68 } from "@emotion/react/jsx-runtime";
17255
+ import { Fragment as Fragment15, jsx as jsx102, jsxs as jsxs68 } from "@emotion/react/jsx-runtime";
16983
17256
  var ParameterNameAndPublicIdInput = ({
16984
17257
  id,
16985
17258
  onBlur,
@@ -17005,8 +17278,8 @@ var ParameterNameAndPublicIdInput = ({
17005
17278
  navigator.clipboard.writeText(values[publicIdFieldName]);
17006
17279
  };
17007
17280
  autoFocus == null ? void 0 : autoFocus();
17008
- return /* @__PURE__ */ jsxs68(Fragment17, { children: [
17009
- /* @__PURE__ */ jsx100(
17281
+ return /* @__PURE__ */ jsxs68(Fragment15, { children: [
17282
+ /* @__PURE__ */ jsx102(
17010
17283
  ParameterInput,
17011
17284
  {
17012
17285
  id: nameIdField,
@@ -17017,7 +17290,7 @@ var ParameterNameAndPublicIdInput = ({
17017
17290
  "data-af": "true",
17018
17291
  onBlur,
17019
17292
  onChange: onNameChange,
17020
- caption: nameCaption,
17293
+ caption: !nameIdError ? nameCaption : void 0,
17021
17294
  placeholder: namePlaceholderText,
17022
17295
  readOnly,
17023
17296
  errorMessage: nameIdError,
@@ -17025,7 +17298,7 @@ var ParameterNameAndPublicIdInput = ({
17025
17298
  value: values[nameIdField]
17026
17299
  }
17027
17300
  ),
17028
- /* @__PURE__ */ jsx100(
17301
+ /* @__PURE__ */ jsx102(
17029
17302
  ParameterInput,
17030
17303
  {
17031
17304
  id: publicIdFieldName,
@@ -17036,14 +17309,14 @@ var ParameterNameAndPublicIdInput = ({
17036
17309
  autoComplete: "off",
17037
17310
  onBlur,
17038
17311
  onChange: onPublicIdChange,
17039
- caption: publicIdCaption,
17312
+ caption: !publicIdError ? publicIdCaption : void 0,
17040
17313
  placeholder: publicIdPlaceholderText,
17041
17314
  errorMessage: publicIdError,
17042
- menuItems: /* @__PURE__ */ jsx100(
17315
+ menuItems: /* @__PURE__ */ jsx102(
17043
17316
  MenuItem,
17044
17317
  {
17045
17318
  disabled: !values[publicIdFieldName],
17046
- icon: /* @__PURE__ */ jsx100(Icon, { icon: "path-trim", iconColor: "currentColor" }),
17319
+ icon: /* @__PURE__ */ jsx102(Icon, { icon: "path-trim", iconColor: "currentColor" }),
17047
17320
  onClick: handleCopyPidFieldValue,
17048
17321
  children: "Copy"
17049
17322
  }
@@ -17051,12 +17324,12 @@ var ParameterNameAndPublicIdInput = ({
17051
17324
  value: values[publicIdFieldName]
17052
17325
  }
17053
17326
  ),
17054
- (warnOverLength == null ? void 0 : warnOverLength.length) && values[publicIdFieldName].length > warnOverLength.length ? /* @__PURE__ */ jsx100(Callout, { type: "caution", children: warnOverLength.message }) : null
17327
+ (warnOverLength == null ? void 0 : warnOverLength.length) && values[publicIdFieldName].length > warnOverLength.length ? /* @__PURE__ */ jsx102(Callout, { type: "caution", children: warnOverLength.message }) : null
17055
17328
  ] });
17056
17329
  };
17057
17330
 
17058
17331
  // src/components/ParameterInputs/ParameterRichText.tsx
17059
- import { css as css84 } from "@emotion/react";
17332
+ import { css as css85 } from "@emotion/react";
17060
17333
  import { ListItemNode, ListNode as ListNode2 } from "@lexical/list";
17061
17334
  import {
17062
17335
  CODE,
@@ -17170,7 +17443,7 @@ var getLabelForElement = (type) => {
17170
17443
  // src/components/ParameterInputs/ParameterRichText.tsx
17171
17444
  import { deepEqual as deepEqual2 } from "fast-equals";
17172
17445
  import { ParagraphNode as ParagraphNode2 } from "lexical";
17173
- import { useEffect as useEffect14, useRef as useRef7 } from "react";
17446
+ import { useEffect as useEffect15, useRef as useRef8 } from "react";
17174
17447
 
17175
17448
  // src/components/ParameterInputs/rich-text/CustomCodeNode.ts
17176
17449
  import { CodeNode } from "@lexical/code";
@@ -17191,10 +17464,10 @@ CustomCodeNode.importDOM = function() {
17191
17464
  import { useLexicalComposerContext } from "@lexical/react/LexicalComposerContext";
17192
17465
  import { mergeRegister } from "@lexical/utils";
17193
17466
  import { ParagraphNode } from "lexical";
17194
- import { useEffect as useEffect10 } from "react";
17467
+ import { useEffect as useEffect11 } from "react";
17195
17468
  function DisableStylesPlugin() {
17196
17469
  const [editor] = useLexicalComposerContext();
17197
- useEffect10(() => {
17470
+ useEffect11(() => {
17198
17471
  return mergeRegister(
17199
17472
  // Disable text alignment on paragraph nodes
17200
17473
  editor.registerNodeTransform(ParagraphNode, (node) => {
@@ -17208,23 +17481,23 @@ function DisableStylesPlugin() {
17208
17481
  }
17209
17482
 
17210
17483
  // src/components/ParameterInputs/rich-text/editorStyles.ts
17211
- import { css as css81 } from "@emotion/css";
17212
- var textBold = css81`
17484
+ import { css as css82 } from "@emotion/css";
17485
+ var textBold = css82`
17213
17486
  font-weight: 700;
17214
17487
  `;
17215
- var textItalic = css81`
17488
+ var textItalic = css82`
17216
17489
  font-style: italic;
17217
17490
  `;
17218
- var textUnderline = css81`
17491
+ var textUnderline = css82`
17219
17492
  text-decoration: underline;
17220
17493
  `;
17221
- var textStrikethrough = css81`
17494
+ var textStrikethrough = css82`
17222
17495
  text-decoration: line-through;
17223
17496
  `;
17224
- var textUnderlineStrikethrough = css81`
17497
+ var textUnderlineStrikethrough = css82`
17225
17498
  text-decoration: underline line-through;
17226
17499
  `;
17227
- var textCode = css81`
17500
+ var textCode = css82`
17228
17501
  background-color: var(--gray-100);
17229
17502
  border-radius: var(--rounded-sm);
17230
17503
  display: inline-block;
@@ -17235,68 +17508,68 @@ var textCode = css81`
17235
17508
  padding-left: var(--spacing-xs);
17236
17509
  padding-right: var(--spacing-xs);
17237
17510
  `;
17238
- var textSuperscript = css81`
17511
+ var textSuperscript = css82`
17239
17512
  vertical-align: super;
17240
17513
  font-size: smaller;
17241
17514
  `;
17242
- var textSubscript = css81`
17515
+ var textSubscript = css82`
17243
17516
  vertical-align: sub;
17244
17517
  font-size: smaller;
17245
17518
  `;
17246
- var linkElement = css81`
17519
+ var linkElement = css82`
17247
17520
  ${link}
17248
17521
  ${linkColorDefault}
17249
17522
  text-decoration: underline;
17250
17523
  `;
17251
- var h12 = css81`
17524
+ var h12 = css82`
17252
17525
  font-size: clamp(1.35rem, var(--fluid-font-base), 1.7rem);
17253
17526
  `;
17254
- var h22 = css81`
17527
+ var h22 = css82`
17255
17528
  font-size: clamp(1.35rem, var(--fluid-font-base), 1.6rem);
17256
17529
  `;
17257
- var h32 = css81`
17530
+ var h32 = css82`
17258
17531
  font-size: clamp(1.25rem, var(--fluid-font-base), 1.5rem);
17259
17532
  `;
17260
- var h42 = css81`
17533
+ var h42 = css82`
17261
17534
  font-size: clamp(1.15rem, var(--fluid-font-base), 1.25rem);
17262
17535
  `;
17263
- var h52 = css81`
17536
+ var h52 = css82`
17264
17537
  font-size: clamp(var(--fs-base), var(--fluid-font-base), 1.15rem);
17265
17538
  `;
17266
- var h62 = css81`
17539
+ var h62 = css82`
17267
17540
  font-size: var(--fs-base);
17268
17541
  `;
17269
- var heading1Element = css81`
17542
+ var heading1Element = css82`
17270
17543
  ${h12}
17271
17544
  ${commonHeadingAttr(true)}
17272
17545
  ${commonLineHeight}
17273
17546
  `;
17274
- var heading2Element = css81`
17547
+ var heading2Element = css82`
17275
17548
  ${h22}
17276
17549
  ${commonHeadingAttr(true)}
17277
17550
  ${commonLineHeight}
17278
17551
  `;
17279
- var heading3Element = css81`
17552
+ var heading3Element = css82`
17280
17553
  ${h32}
17281
17554
  ${commonHeadingAttr(true)}
17282
17555
  ${commonLineHeight}
17283
17556
  `;
17284
- var heading4Element = css81`
17557
+ var heading4Element = css82`
17285
17558
  ${h42}
17286
17559
  ${commonHeadingAttr(true)}
17287
17560
  ${commonLineHeight}
17288
17561
  `;
17289
- var heading5Element = css81`
17562
+ var heading5Element = css82`
17290
17563
  ${h52}
17291
17564
  ${commonHeadingAttr(true)}
17292
17565
  ${commonLineHeight}
17293
17566
  `;
17294
- var heading6Element = css81`
17567
+ var heading6Element = css82`
17295
17568
  ${h62}
17296
17569
  ${commonHeadingAttr(true)}
17297
17570
  ${commonLineHeight}
17298
17571
  `;
17299
- var paragraphElement = css81`
17572
+ var paragraphElement = css82`
17300
17573
  line-height: 1.5;
17301
17574
  margin-bottom: var(--spacing-base);
17302
17575
 
@@ -17304,7 +17577,7 @@ var paragraphElement = css81`
17304
17577
  margin-bottom: 0;
17305
17578
  }
17306
17579
  `;
17307
- var orderedListElement = css81`
17580
+ var orderedListElement = css82`
17308
17581
  ${commonLineHeight}
17309
17582
  display: block;
17310
17583
  list-style: decimal;
@@ -17333,7 +17606,7 @@ var orderedListElement = css81`
17333
17606
  }
17334
17607
  }
17335
17608
  `;
17336
- var unorderedListElement = css81`
17609
+ var unorderedListElement = css82`
17337
17610
  ${commonLineHeight}
17338
17611
  display: block;
17339
17612
  list-style: disc;
@@ -17354,13 +17627,13 @@ var unorderedListElement = css81`
17354
17627
  }
17355
17628
  }
17356
17629
  `;
17357
- var listItemElement = css81`
17630
+ var listItemElement = css82`
17358
17631
  margin-left: var(--spacing-md);
17359
17632
  `;
17360
- var nestedListItemElement = css81`
17633
+ var nestedListItemElement = css82`
17361
17634
  list-style-type: none;
17362
17635
  `;
17363
- var blockquoteElement = css81`
17636
+ var blockquoteElement = css82`
17364
17637
  border-left: 0.25rem solid var(--gray-300);
17365
17638
  color: var(--gray-600);
17366
17639
  margin-bottom: var(--spacing-base);
@@ -17370,7 +17643,7 @@ var blockquoteElement = css81`
17370
17643
  margin-bottom: 0;
17371
17644
  }
17372
17645
  `;
17373
- var codeElement = css81`
17646
+ var codeElement = css82`
17374
17647
  background-color: var(--gray-100);
17375
17648
  border-radius: var(--rounded-sm);
17376
17649
  display: block;
@@ -17387,7 +17660,7 @@ var codeElement = css81`
17387
17660
  `;
17388
17661
 
17389
17662
  // src/components/ParameterInputs/rich-text/LinkNodePlugin.tsx
17390
- import { css as css82 } from "@emotion/react";
17663
+ import { css as css83 } from "@emotion/react";
17391
17664
  import { useLexicalComposerContext as useLexicalComposerContext2 } from "@lexical/react/LexicalComposerContext";
17392
17665
  import { NodeEventPlugin } from "@lexical/react/LexicalNodeEventPlugin";
17393
17666
  import { addClassNamesToElement, isHTMLAnchorElement, mergeRegister as mergeRegister2 } from "@lexical/utils";
@@ -17403,7 +17676,7 @@ import {
17403
17676
  ElementNode as ElementNode2,
17404
17677
  FOCUS_COMMAND
17405
17678
  } from "lexical";
17406
- import { useCallback as useCallback5, useEffect as useEffect11, useRef as useRef6, useState as useState12 } from "react";
17679
+ import { useCallback as useCallback5, useEffect as useEffect12, useRef as useRef7, useState as useState11 } from "react";
17407
17680
 
17408
17681
  // src/components/ParameterInputs/rich-text/utils.ts
17409
17682
  import { $isAtNodeEnd } from "@lexical/selection";
@@ -17441,7 +17714,7 @@ var getSelectedNode = (selection) => {
17441
17714
  };
17442
17715
 
17443
17716
  // src/components/ParameterInputs/rich-text/LinkNodePlugin.tsx
17444
- import { Fragment as Fragment18, jsx as jsx101, jsxs as jsxs69 } from "@emotion/react/jsx-runtime";
17717
+ import { Fragment as Fragment16, jsx as jsx103, jsxs as jsxs69 } from "@emotion/react/jsx-runtime";
17445
17718
  var isProjectMapLinkValue = (value) => {
17446
17719
  return (value == null ? void 0 : value.type) === "projectMapNode" && Boolean(
17447
17720
  value.nodeId && value.path && value.projectMapId
@@ -17728,16 +18001,16 @@ var OPEN_LINK_NODE_MODAL_COMMAND = createCommand(
17728
18001
  );
17729
18002
  var LINK_POPOVER_OFFSET_X = 0;
17730
18003
  var LINK_POPOVER_OFFSET_Y = 8;
17731
- var linkPopover = css82`
18004
+ var linkPopover = css83`
17732
18005
  position: absolute;
17733
18006
  z-index: 5;
17734
18007
  `;
17735
- var linkPopoverContainer = css82`
18008
+ var linkPopoverContainer = css83`
17736
18009
  ${Popover};
17737
18010
  align-items: center;
17738
18011
  display: flex;
17739
18012
  `;
17740
- var linkPopoverAnchor = css82`
18013
+ var linkPopoverAnchor = css83`
17741
18014
  ${link}
17742
18015
  ${linkColorDefault}
17743
18016
  `;
@@ -17746,17 +18019,17 @@ function LinkNodePlugin({ onConnectLink, getBoundPath }) {
17746
18019
  return path;
17747
18020
  };
17748
18021
  const [editor] = useLexicalComposerContext2();
17749
- const [linkPopoverState, setLinkPopoverState] = useState12();
17750
- const linkPopoverElRef = useRef6(null);
17751
- const [isEditorFocused, setIsEditorFocused] = useState12(false);
17752
- const [isLinkPopoverFocused, setIsLinkPopoverFocused] = useState12(false);
17753
- useEffect11(() => {
18022
+ const [linkPopoverState, setLinkPopoverState] = useState11();
18023
+ const linkPopoverElRef = useRef7(null);
18024
+ const [isEditorFocused, setIsEditorFocused] = useState11(false);
18025
+ const [isLinkPopoverFocused, setIsLinkPopoverFocused] = useState11(false);
18026
+ useEffect12(() => {
17754
18027
  if (!isEditorFocused && !isLinkPopoverFocused) {
17755
18028
  setLinkPopoverState(void 0);
17756
18029
  return;
17757
18030
  }
17758
18031
  }, [isEditorFocused, isLinkPopoverFocused]);
17759
- useEffect11(() => {
18032
+ useEffect12(() => {
17760
18033
  if (!editor.hasNodes([LinkNode])) {
17761
18034
  throw new Error("LinkNode not registered on editor");
17762
18035
  }
@@ -17857,7 +18130,7 @@ function LinkNodePlugin({ onConnectLink, getBoundPath }) {
17857
18130
  }
17858
18131
  });
17859
18132
  }, [editor]);
17860
- useEffect11(() => {
18133
+ useEffect12(() => {
17861
18134
  return editor.registerUpdateListener(({ editorState }) => {
17862
18135
  requestAnimationFrame(() => {
17863
18136
  editorState.read(() => {
@@ -17884,8 +18157,8 @@ function LinkNodePlugin({ onConnectLink, getBoundPath }) {
17884
18157
  });
17885
18158
  });
17886
18159
  };
17887
- return /* @__PURE__ */ jsxs69(Fragment18, { children: [
17888
- /* @__PURE__ */ jsx101(
18160
+ return /* @__PURE__ */ jsxs69(Fragment16, { children: [
18161
+ /* @__PURE__ */ jsx103(
17889
18162
  NodeEventPlugin,
17890
18163
  {
17891
18164
  nodeType: LinkNode,
@@ -17895,7 +18168,7 @@ function LinkNodePlugin({ onConnectLink, getBoundPath }) {
17895
18168
  }
17896
18169
  }
17897
18170
  ),
17898
- linkPopoverState ? /* @__PURE__ */ jsx101(
18171
+ linkPopoverState ? /* @__PURE__ */ jsx103(
17899
18172
  "div",
17900
18173
  {
17901
18174
  css: linkPopover,
@@ -17905,7 +18178,7 @@ function LinkNodePlugin({ onConnectLink, getBoundPath }) {
17905
18178
  },
17906
18179
  ref: linkPopoverElRef,
17907
18180
  children: /* @__PURE__ */ jsxs69("div", { css: linkPopoverContainer, children: [
17908
- linkPopoverState.node.__link.type === "projectMapNode" ? linkPopoverState.node.__link.path : /* @__PURE__ */ jsx101(
18181
+ linkPopoverState.node.__link.type === "projectMapNode" ? linkPopoverState.node.__link.path : /* @__PURE__ */ jsx103(
17909
18182
  "a",
17910
18183
  {
17911
18184
  href: parsePath(
@@ -17917,7 +18190,7 @@ function LinkNodePlugin({ onConnectLink, getBoundPath }) {
17917
18190
  children: parsePath(linkPopoverState.node.__link.path)
17918
18191
  }
17919
18192
  ),
17920
- /* @__PURE__ */ jsx101(
18193
+ /* @__PURE__ */ jsx103(
17921
18194
  Button,
17922
18195
  {
17923
18196
  size: "xs",
@@ -17925,7 +18198,7 @@ function LinkNodePlugin({ onConnectLink, getBoundPath }) {
17925
18198
  onEditLinkNode(linkPopoverState.node);
17926
18199
  },
17927
18200
  buttonType: "ghost",
17928
- children: /* @__PURE__ */ jsx101(Icon, { icon: "pen", size: "1rem", title: "Edit link" })
18201
+ children: /* @__PURE__ */ jsx103(Icon, { icon: "pen", size: "1rem", title: "Edit link" })
17929
18202
  }
17930
18203
  )
17931
18204
  ] })
@@ -17949,8 +18222,8 @@ import {
17949
18222
  COMMAND_PRIORITY_CRITICAL,
17950
18223
  INDENT_CONTENT_COMMAND
17951
18224
  } from "lexical";
17952
- import { useEffect as useEffect12 } from "react";
17953
- import { jsx as jsx102 } from "@emotion/react/jsx-runtime";
18225
+ import { useEffect as useEffect13 } from "react";
18226
+ import { jsx as jsx104 } from "@emotion/react/jsx-runtime";
17954
18227
  function isIndentPermitted(maxDepth) {
17955
18228
  const selection = $getSelection2();
17956
18229
  if (!$isRangeSelection2(selection)) {
@@ -17973,18 +18246,18 @@ function isIndentPermitted(maxDepth) {
17973
18246
  }
17974
18247
  function ListIndentPlugin({ maxDepth }) {
17975
18248
  const [editor] = useLexicalComposerContext3();
17976
- useEffect12(() => {
18249
+ useEffect13(() => {
17977
18250
  return editor.registerCommand(
17978
18251
  INDENT_CONTENT_COMMAND,
17979
18252
  () => !isIndentPermitted(maxDepth),
17980
18253
  COMMAND_PRIORITY_CRITICAL
17981
18254
  );
17982
18255
  }, [editor, maxDepth]);
17983
- return /* @__PURE__ */ jsx102(TabIndentationPlugin, {});
18256
+ return /* @__PURE__ */ jsx104(TabIndentationPlugin, {});
17984
18257
  }
17985
18258
 
17986
18259
  // src/components/ParameterInputs/rich-text/RichTextToolbar.tsx
17987
- import { css as css83 } from "@emotion/react";
18260
+ import { css as css84 } from "@emotion/react";
17988
18261
  import { $createCodeNode } from "@lexical/code";
17989
18262
  import {
17990
18263
  $isListNode as $isListNode2,
@@ -18006,9 +18279,9 @@ import {
18006
18279
  FORMAT_TEXT_COMMAND,
18007
18280
  SELECTION_CHANGE_COMMAND
18008
18281
  } from "lexical";
18009
- import { useCallback as useCallback6, useEffect as useEffect13, useMemo as useMemo3, useState as useState13 } from "react";
18010
- import { Fragment as Fragment19, jsx as jsx103, jsxs as jsxs70 } from "@emotion/react/jsx-runtime";
18011
- var toolbar = css83`
18282
+ import { useCallback as useCallback6, useEffect as useEffect14, useMemo as useMemo3, useState as useState12 } from "react";
18283
+ import { Fragment as Fragment17, jsx as jsx105, jsxs as jsxs70 } from "@emotion/react/jsx-runtime";
18284
+ var toolbar = css84`
18012
18285
  background: var(--gray-50);
18013
18286
  border-radius: var(--rounded-base);
18014
18287
  display: flex;
@@ -18020,7 +18293,7 @@ var toolbar = css83`
18020
18293
  top: calc(var(--spacing-sm) * -2);
18021
18294
  z-index: 10;
18022
18295
  `;
18023
- var toolbarGroup = css83`
18296
+ var toolbarGroup = css84`
18024
18297
  display: flex;
18025
18298
  gap: var(--spacing-xs);
18026
18299
  position: relative;
@@ -18036,7 +18309,7 @@ var toolbarGroup = css83`
18036
18309
  width: 1px;
18037
18310
  }
18038
18311
  `;
18039
- var richTextToolbarButton = css83`
18312
+ var richTextToolbarButton = css84`
18040
18313
  align-items: center;
18041
18314
  appearance: none;
18042
18315
  border: 0;
@@ -18049,17 +18322,17 @@ var richTextToolbarButton = css83`
18049
18322
  min-width: 32px;
18050
18323
  padding: 0 var(--spacing-sm);
18051
18324
  `;
18052
- var richTextToolbarButtonActive = css83`
18325
+ var richTextToolbarButtonActive = css84`
18053
18326
  background: var(--gray-200);
18054
18327
  `;
18055
- var toolbarIcon = css83`
18328
+ var toolbarIcon = css84`
18056
18329
  color: inherit;
18057
18330
  `;
18058
- var toolbarChevron = css83`
18331
+ var toolbarChevron = css84`
18059
18332
  margin-left: var(--spacing-xs);
18060
18333
  `;
18061
18334
  var RichTextToolbarIcon = ({ icon }) => {
18062
- return /* @__PURE__ */ jsx103(Icon, { icon, css: toolbarIcon, size: "1rem" });
18335
+ return /* @__PURE__ */ jsx105(Icon, { icon, css: toolbarIcon, size: "1rem" });
18063
18336
  };
18064
18337
  var FORMATS_WITH_ICON = /* @__PURE__ */ new Map([
18065
18338
  ["bold", "format-bold"],
@@ -18149,7 +18422,7 @@ var RichTextToolbar = ({ config, customControls }) => {
18149
18422
  setIsLink(false);
18150
18423
  }
18151
18424
  }, [editor, setActiveElement, setActiveFormats, setIsLink]);
18152
- useEffect13(() => {
18425
+ useEffect14(() => {
18153
18426
  return editor.registerCommand(
18154
18427
  SELECTION_CHANGE_COMMAND,
18155
18428
  (_payload) => {
@@ -18159,7 +18432,7 @@ var RichTextToolbar = ({ config, customControls }) => {
18159
18432
  COMMAND_PRIORITY_CRITICAL2
18160
18433
  );
18161
18434
  }, [editor, updateToolbar]);
18162
- useEffect13(() => {
18435
+ useEffect14(() => {
18163
18436
  return editor.registerUpdateListener(({ editorState }) => {
18164
18437
  requestAnimationFrame(() => {
18165
18438
  editorState.read(() => {
@@ -18176,7 +18449,7 @@ var RichTextToolbar = ({ config, customControls }) => {
18176
18449
  menuTrigger: /* @__PURE__ */ jsxs70("button", { css: richTextToolbarButton, title: "Text styles", children: [
18177
18450
  visibleTextualElements.some((element) => element.type === activeElement) ? getLabelForElement(activeElement) : getLabelForElement("paragraph"),
18178
18451
  " ",
18179
- /* @__PURE__ */ jsx103(Icon, { icon: "chevron-down", css: [toolbarIcon, toolbarChevron], size: "1rem" })
18452
+ /* @__PURE__ */ jsx105(Icon, { icon: "chevron-down", css: [toolbarIcon, toolbarChevron], size: "1rem" })
18180
18453
  ] }),
18181
18454
  placement: "bottom-start",
18182
18455
  children: [
@@ -18186,7 +18459,7 @@ var RichTextToolbar = ({ config, customControls }) => {
18186
18459
  type: "paragraph"
18187
18460
  },
18188
18461
  ...visibleTextualElements
18189
- ].map((element) => /* @__PURE__ */ jsx103(
18462
+ ].map((element) => /* @__PURE__ */ jsx105(
18190
18463
  MenuItem,
18191
18464
  {
18192
18465
  onClick: () => {
@@ -18196,12 +18469,12 @@ var RichTextToolbar = ({ config, customControls }) => {
18196
18469
  },
18197
18470
  element.type
18198
18471
  )),
18199
- visibleTextualElements.length === 0 ? /* @__PURE__ */ jsx103(MenuItem, { disabled: true, children: "Alternative text styles are not available" }) : null
18472
+ visibleTextualElements.length === 0 ? /* @__PURE__ */ jsx105(MenuItem, { disabled: true, children: "Alternative text styles are not available" }) : null
18200
18473
  ]
18201
18474
  }
18202
18475
  ),
18203
18476
  visibleFormatsWithIcon.length > 0 || visibleFormatsWithoutIcon.length > 0 ? /* @__PURE__ */ jsxs70("div", { css: toolbarGroup, children: [
18204
- visibleFormatsWithIcon.map((format) => /* @__PURE__ */ jsx103(Tooltip, { title: format.label, placement: "top", children: /* @__PURE__ */ jsx103(
18477
+ visibleFormatsWithIcon.map((format) => /* @__PURE__ */ jsx105(Tooltip, { title: format.label, placement: "top", children: /* @__PURE__ */ jsx105(
18205
18478
  "button",
18206
18479
  {
18207
18480
  onClick: () => {
@@ -18211,16 +18484,16 @@ var RichTextToolbar = ({ config, customControls }) => {
18211
18484
  richTextToolbarButton,
18212
18485
  activeFormats.includes(format.type) ? richTextToolbarButtonActive : null
18213
18486
  ],
18214
- children: /* @__PURE__ */ jsx103(RichTextToolbarIcon, { icon: FORMATS_WITH_ICON.get(format.type) })
18487
+ children: /* @__PURE__ */ jsx105(RichTextToolbarIcon, { icon: FORMATS_WITH_ICON.get(format.type) })
18215
18488
  }
18216
18489
  ) }, format.type)),
18217
- visibleFormatsWithoutIcon.length > 0 ? /* @__PURE__ */ jsx103(
18490
+ visibleFormatsWithoutIcon.length > 0 ? /* @__PURE__ */ jsx105(
18218
18491
  Menu,
18219
18492
  {
18220
18493
  menuLabel: "Alternative text styles",
18221
- menuTrigger: /* @__PURE__ */ jsx103("button", { css: richTextToolbarButton, title: "Alternative text styles", children: /* @__PURE__ */ jsx103(Icon, { icon: "more-alt", css: toolbarIcon }) }),
18494
+ menuTrigger: /* @__PURE__ */ jsx105("button", { css: richTextToolbarButton, title: "Alternative text styles", children: /* @__PURE__ */ jsx105(Icon, { icon: "more-alt", css: toolbarIcon }) }),
18222
18495
  placement: "bottom-start",
18223
- children: visibleFormatsWithoutIcon.map((format) => /* @__PURE__ */ jsx103(
18496
+ children: visibleFormatsWithoutIcon.map((format) => /* @__PURE__ */ jsx105(
18224
18497
  MenuItem,
18225
18498
  {
18226
18499
  onClick: () => {
@@ -18234,18 +18507,18 @@ var RichTextToolbar = ({ config, customControls }) => {
18234
18507
  ) : null
18235
18508
  ] }) : null,
18236
18509
  visibleElementsWithIcons.size > 0 ? /* @__PURE__ */ jsxs70("div", { css: toolbarGroup, children: [
18237
- linkElementVisible ? /* @__PURE__ */ jsx103(Tooltip, { title: "Link", placement: "top", children: /* @__PURE__ */ jsx103(
18510
+ linkElementVisible ? /* @__PURE__ */ jsx105(Tooltip, { title: "Link", placement: "top", children: /* @__PURE__ */ jsx105(
18238
18511
  "button",
18239
18512
  {
18240
18513
  onClick: () => {
18241
18514
  isLink ? editor.dispatchCommand(REMOVE_LINK_NODE_COMMAND, {}) : editor.dispatchCommand(OPEN_LINK_NODE_MODAL_COMMAND, {});
18242
18515
  },
18243
18516
  css: [richTextToolbarButton, isLink ? richTextToolbarButtonActive : null],
18244
- children: /* @__PURE__ */ jsx103(RichTextToolbarIcon, { icon: "link" })
18517
+ children: /* @__PURE__ */ jsx105(RichTextToolbarIcon, { icon: "link" })
18245
18518
  }
18246
18519
  ) }) : null,
18247
- visibleLists.size > 0 ? /* @__PURE__ */ jsxs70(Fragment19, { children: [
18248
- visibleLists.has("unorderedList") ? /* @__PURE__ */ jsx103(Tooltip, { title: "Bullet List", placement: "top", children: /* @__PURE__ */ jsx103(
18520
+ visibleLists.size > 0 ? /* @__PURE__ */ jsxs70(Fragment17, { children: [
18521
+ visibleLists.has("unorderedList") ? /* @__PURE__ */ jsx105(Tooltip, { title: "Bullet List", placement: "top", children: /* @__PURE__ */ jsx105(
18249
18522
  "button",
18250
18523
  {
18251
18524
  onClick: () => {
@@ -18255,10 +18528,10 @@ var RichTextToolbar = ({ config, customControls }) => {
18255
18528
  richTextToolbarButton,
18256
18529
  activeElement === "unorderedList" ? richTextToolbarButtonActive : null
18257
18530
  ],
18258
- children: /* @__PURE__ */ jsx103(RichTextToolbarIcon, { icon: "layout-list" })
18531
+ children: /* @__PURE__ */ jsx105(RichTextToolbarIcon, { icon: "layout-list" })
18259
18532
  }
18260
18533
  ) }) : null,
18261
- visibleLists.has("orderedList") ? /* @__PURE__ */ jsx103(Tooltip, { title: "Ordered List", placement: "top", children: /* @__PURE__ */ jsx103(
18534
+ visibleLists.has("orderedList") ? /* @__PURE__ */ jsx105(Tooltip, { title: "Ordered List", placement: "top", children: /* @__PURE__ */ jsx105(
18262
18535
  "button",
18263
18536
  {
18264
18537
  onClick: () => {
@@ -18268,32 +18541,32 @@ var RichTextToolbar = ({ config, customControls }) => {
18268
18541
  richTextToolbarButton,
18269
18542
  activeElement === "orderedList" ? richTextToolbarButtonActive : null
18270
18543
  ],
18271
- children: /* @__PURE__ */ jsx103(RichTextToolbarIcon, { icon: "layout-list-numbered" })
18544
+ children: /* @__PURE__ */ jsx105(RichTextToolbarIcon, { icon: "layout-list-numbered" })
18272
18545
  }
18273
18546
  ) }) : null
18274
18547
  ] }) : null,
18275
- quoteElementVisible ? /* @__PURE__ */ jsx103(Tooltip, { title: "Blockquote", placement: "top", children: /* @__PURE__ */ jsx103(
18548
+ quoteElementVisible ? /* @__PURE__ */ jsx105(Tooltip, { title: "Blockquote", placement: "top", children: /* @__PURE__ */ jsx105(
18276
18549
  "button",
18277
18550
  {
18278
18551
  onClick: () => {
18279
18552
  activeElement === "quote" ? onSelectElement("paragraph") : onSelectElement("quote");
18280
18553
  },
18281
18554
  css: [richTextToolbarButton, activeElement === "quote" ? richTextToolbarButtonActive : null],
18282
- children: /* @__PURE__ */ jsx103(RichTextToolbarIcon, { icon: "quote" })
18555
+ children: /* @__PURE__ */ jsx105(RichTextToolbarIcon, { icon: "quote" })
18283
18556
  }
18284
18557
  ) }) : null,
18285
- codeElementVisible ? /* @__PURE__ */ jsx103(Tooltip, { title: "Code Block", placement: "top", children: /* @__PURE__ */ jsx103(
18558
+ codeElementVisible ? /* @__PURE__ */ jsx105(Tooltip, { title: "Code Block", placement: "top", children: /* @__PURE__ */ jsx105(
18286
18559
  "button",
18287
18560
  {
18288
18561
  onClick: () => {
18289
18562
  activeElement === "code" ? onSelectElement("paragraph") : onSelectElement("code");
18290
18563
  },
18291
18564
  css: [richTextToolbarButton, activeElement === "code" ? richTextToolbarButtonActive : null],
18292
- children: /* @__PURE__ */ jsx103(RichTextToolbarIcon, { icon: "code-slash" })
18565
+ children: /* @__PURE__ */ jsx105(RichTextToolbarIcon, { icon: "code-slash" })
18293
18566
  }
18294
18567
  ) }) : null
18295
18568
  ] }) : null,
18296
- customControls ? /* @__PURE__ */ jsx103("div", { css: toolbarGroup, children: customControls }) : null
18569
+ customControls ? /* @__PURE__ */ jsx105("div", { css: toolbarGroup, children: customControls }) : null
18297
18570
  ] });
18298
18571
  };
18299
18572
  var RichTextToolbar_default = RichTextToolbar;
@@ -18317,7 +18590,7 @@ var useRichTextToolbarState = ({ config }) => {
18317
18590
  const enabledBuiltInFormatsWithoutIcon = enabledBuiltInFormats.filter(
18318
18591
  (format) => !FORMATS_WITH_ICON.has(format.type)
18319
18592
  );
18320
- const [activeFormats, setActiveFormats] = useState13([]);
18593
+ const [activeFormats, setActiveFormats] = useState12([]);
18321
18594
  const visibleFormatsWithIcon = useMemo3(() => {
18322
18595
  const visibleFormats = /* @__PURE__ */ new Set();
18323
18596
  activeFormats.filter((type) => FORMATS_WITH_ICON.has(type)).forEach((type) => {
@@ -18338,7 +18611,7 @@ var useRichTextToolbarState = ({ config }) => {
18338
18611
  });
18339
18612
  return richTextBuiltInFormats.filter((format) => visibleFormats.has(format.type));
18340
18613
  }, [activeFormats, enabledBuiltInFormatsWithoutIcon]);
18341
- const [activeElement, setActiveElement] = useState13("paragraph");
18614
+ const [activeElement, setActiveElement] = useState12("paragraph");
18342
18615
  const enabledTextualElements = enabledBuiltInElements.filter(
18343
18616
  (element) => TEXTUAL_ELEMENTS.includes(element.type)
18344
18617
  );
@@ -18353,7 +18626,7 @@ var useRichTextToolbarState = ({ config }) => {
18353
18626
  }
18354
18627
  );
18355
18628
  }, [activeElement, (_a = config == null ? void 0 : config.elements) == null ? void 0 : _a.builtIn, enabledTextualElements]);
18356
- const [isLink, setIsLink] = useState13(false);
18629
+ const [isLink, setIsLink] = useState12(false);
18357
18630
  const linkElementVisible = useMemo3(() => {
18358
18631
  return enabledBuiltInElements.some((element) => element.type === "link") || isLink;
18359
18632
  }, [isLink, enabledBuiltInElements]);
@@ -18407,7 +18680,7 @@ var useRichTextToolbarState = ({ config }) => {
18407
18680
  };
18408
18681
 
18409
18682
  // src/components/ParameterInputs/ParameterRichText.tsx
18410
- import { Fragment as Fragment20, jsx as jsx104, jsxs as jsxs71 } from "@emotion/react/jsx-runtime";
18683
+ import { Fragment as Fragment18, jsx as jsx106, jsxs as jsxs71 } from "@emotion/react/jsx-runtime";
18411
18684
  var ParameterRichText = ({
18412
18685
  label,
18413
18686
  labelLeadingIcon,
@@ -18446,7 +18719,7 @@ var ParameterRichText = ({
18446
18719
  captionTestId,
18447
18720
  menuItems,
18448
18721
  children: [
18449
- /* @__PURE__ */ jsx104(
18722
+ /* @__PURE__ */ jsx106(
18450
18723
  ParameterRichTextInner,
18451
18724
  {
18452
18725
  value,
@@ -18464,23 +18737,23 @@ var ParameterRichText = ({
18464
18737
  children
18465
18738
  }
18466
18739
  ),
18467
- menuItems ? /* @__PURE__ */ jsx104(ParameterMenuButton, { label: `${label} menu`, children: /* @__PURE__ */ jsx104(Fragment20, { children: menuItems }) }) : null
18740
+ menuItems ? /* @__PURE__ */ jsx106(ParameterMenuButton, { label: `${label} menu`, children: /* @__PURE__ */ jsx106(Fragment18, { children: menuItems }) }) : null
18468
18741
  ]
18469
18742
  }
18470
18743
  );
18471
18744
  };
18472
- var editorWrapper = css84`
18745
+ var editorWrapper = css85`
18473
18746
  display: flex;
18474
18747
  flex-flow: column;
18475
18748
  flex-grow: 1;
18476
18749
  `;
18477
- var editorContainer = css84`
18750
+ var editorContainer = css85`
18478
18751
  display: flex;
18479
18752
  flex-flow: column;
18480
18753
  flex-grow: 1;
18481
18754
  position: relative;
18482
18755
  `;
18483
- var editorPlaceholder = css84`
18756
+ var editorPlaceholder = css85`
18484
18757
  color: var(--gray-500);
18485
18758
  font-style: italic;
18486
18759
  /* 1px is added to make sure caret is clearly visible when field is focused
@@ -18491,7 +18764,7 @@ var editorPlaceholder = css84`
18491
18764
  top: var(--spacing-xs);
18492
18765
  user-select: none;
18493
18766
  `;
18494
- var editorInput = css84`
18767
+ var editorInput = css85`
18495
18768
  background: var(--white);
18496
18769
  border: 1px solid var(--white);
18497
18770
  border-radius: var(--rounded-sm);
@@ -18575,8 +18848,8 @@ var ParameterRichTextInner = ({
18575
18848
  },
18576
18849
  editable: !readOnly
18577
18850
  };
18578
- return /* @__PURE__ */ jsxs71(Fragment20, { children: [
18579
- /* @__PURE__ */ jsx104("div", { css: [editorWrapper], className: editorWrapperClassName, children: /* @__PURE__ */ jsx104(LexicalComposer, { initialConfig: lexicalConfig, children: /* @__PURE__ */ jsx104(
18851
+ return /* @__PURE__ */ jsxs71(Fragment18, { children: [
18852
+ /* @__PURE__ */ jsx106("div", { css: [editorWrapper], className: editorWrapperClassName, children: /* @__PURE__ */ jsx106(LexicalComposer, { initialConfig: lexicalConfig, children: /* @__PURE__ */ jsx106(
18580
18853
  RichText,
18581
18854
  {
18582
18855
  onChange,
@@ -18613,14 +18886,14 @@ var RichText = ({
18613
18886
  variables,
18614
18887
  customControls
18615
18888
  }) => {
18616
- const editorContainerRef = useRef7(null);
18889
+ const editorContainerRef = useRef8(null);
18617
18890
  const [editor] = useLexicalComposerContext5();
18618
- useEffect14(() => {
18891
+ useEffect15(() => {
18619
18892
  if (onRichTextInit) {
18620
18893
  onRichTextInit(editor);
18621
18894
  }
18622
18895
  }, [editor, onRichTextInit]);
18623
- useEffect14(() => {
18896
+ useEffect15(() => {
18624
18897
  const removeUpdateListener = editor.registerUpdateListener(({ editorState, prevEditorState }) => {
18625
18898
  requestAnimationFrame(() => {
18626
18899
  if (!deepEqual2(editorState.toJSON(), prevEditorState.toJSON())) {
@@ -18631,21 +18904,21 @@ var RichText = ({
18631
18904
  return () => {
18632
18905
  removeUpdateListener();
18633
18906
  };
18634
- }, []);
18635
- return /* @__PURE__ */ jsxs71(Fragment20, { children: [
18636
- readOnly ? null : /* @__PURE__ */ jsx104(RichTextToolbar_default, { config, customControls }),
18907
+ }, [editor, onChange]);
18908
+ return /* @__PURE__ */ jsxs71(Fragment18, { children: [
18909
+ readOnly ? null : /* @__PURE__ */ jsx106(RichTextToolbar_default, { config, customControls }),
18637
18910
  /* @__PURE__ */ jsxs71("div", { css: editorContainer, ref: editorContainerRef, "data-testid": "value-container", children: [
18638
- /* @__PURE__ */ jsx104(
18911
+ /* @__PURE__ */ jsx106(
18639
18912
  RichTextPlugin,
18640
18913
  {
18641
- contentEditable: /* @__PURE__ */ jsx104(ContentEditable, { css: editorInput, className: editorInputClassName }),
18642
- placeholder: /* @__PURE__ */ jsx104("div", { css: editorPlaceholder, children: readOnly ? "empty" : "start editing..." }),
18914
+ contentEditable: /* @__PURE__ */ jsx106(ContentEditable, { css: editorInput, className: editorInputClassName }),
18915
+ placeholder: /* @__PURE__ */ jsx106("div", { css: editorPlaceholder, children: readOnly ? "empty" : "start editing..." }),
18643
18916
  ErrorBoundary: LexicalErrorBoundary
18644
18917
  }
18645
18918
  ),
18646
- /* @__PURE__ */ jsx104(ListPlugin, {}),
18647
- readOnly ? null : /* @__PURE__ */ jsx104(HistoryPlugin, {}),
18648
- /* @__PURE__ */ jsx104(
18919
+ /* @__PURE__ */ jsx106(ListPlugin, {}),
18920
+ readOnly ? null : /* @__PURE__ */ jsx106(HistoryPlugin, {}),
18921
+ /* @__PURE__ */ jsx106(
18649
18922
  LinkNodePlugin,
18650
18923
  {
18651
18924
  onConnectLink: onConnectLink ? onConnectLink : () => Promise.resolve(),
@@ -18655,24 +18928,24 @@ var RichText = ({
18655
18928
  } : void 0
18656
18929
  }
18657
18930
  ),
18658
- /* @__PURE__ */ jsx104(ListIndentPlugin, { maxDepth: 4 }),
18659
- /* @__PURE__ */ jsx104(DisableStylesPlugin, {}),
18660
- /* @__PURE__ */ jsx104(MarkdownShortcutPlugin, { transformers: MARKDOWN_TRANSFORMERS }),
18661
- /* @__PURE__ */ jsx104(Fragment20, { children })
18931
+ /* @__PURE__ */ jsx106(ListIndentPlugin, { maxDepth: 4 }),
18932
+ /* @__PURE__ */ jsx106(DisableStylesPlugin, {}),
18933
+ /* @__PURE__ */ jsx106(MarkdownShortcutPlugin, { transformers: MARKDOWN_TRANSFORMERS }),
18934
+ /* @__PURE__ */ jsx106(Fragment18, { children })
18662
18935
  ] })
18663
18936
  ] });
18664
18937
  };
18665
18938
 
18666
18939
  // src/components/ParameterInputs/ParameterSelect.tsx
18667
- import { forwardRef as forwardRef15 } from "react";
18668
- import { jsx as jsx105, jsxs as jsxs72 } from "@emotion/react/jsx-runtime";
18669
- var ParameterSelect = forwardRef15(
18940
+ import { forwardRef as forwardRef16 } from "react";
18941
+ import { jsx as jsx107, jsxs as jsxs72 } from "@emotion/react/jsx-runtime";
18942
+ var ParameterSelect = forwardRef16(
18670
18943
  ({ defaultOption, options, ...props }, ref) => {
18671
18944
  const { shellProps, innerProps } = extractParameterProps(props);
18672
- return /* @__PURE__ */ jsx105(ParameterShell, { ...shellProps, children: /* @__PURE__ */ jsx105(ParameterSelectInner, { options, defaultOption, ...innerProps, ref }) });
18945
+ return /* @__PURE__ */ jsx107(ParameterShell, { ...shellProps, children: /* @__PURE__ */ jsx107(ParameterSelectInner, { options, defaultOption, ...innerProps, ref }) });
18673
18946
  }
18674
18947
  );
18675
- var ParameterSelectInner = forwardRef15(
18948
+ var ParameterSelectInner = forwardRef16(
18676
18949
  ({ defaultOption, options, ...props }, ref) => {
18677
18950
  const { id, label, hiddenLabel } = useParameterShell();
18678
18951
  return /* @__PURE__ */ jsxs72(
@@ -18684,10 +18957,10 @@ var ParameterSelectInner = forwardRef15(
18684
18957
  ref,
18685
18958
  ...props,
18686
18959
  children: [
18687
- defaultOption ? /* @__PURE__ */ jsx105("option", { value: "", children: defaultOption }) : null,
18960
+ defaultOption ? /* @__PURE__ */ jsx107("option", { value: "", children: defaultOption }) : null,
18688
18961
  options.map((option) => {
18689
18962
  var _a;
18690
- return /* @__PURE__ */ jsx105("option", { value: (_a = option.value) != null ? _a : option.label, children: option.label }, option.label);
18963
+ return /* @__PURE__ */ jsx107("option", { value: (_a = option.value) != null ? _a : option.label, children: option.label }, option.label);
18691
18964
  })
18692
18965
  ]
18693
18966
  }
@@ -18696,15 +18969,15 @@ var ParameterSelectInner = forwardRef15(
18696
18969
  );
18697
18970
 
18698
18971
  // src/components/ParameterInputs/ParameterTextarea.tsx
18699
- import { forwardRef as forwardRef16 } from "react";
18700
- import { jsx as jsx106 } from "@emotion/react/jsx-runtime";
18701
- var ParameterTextarea = forwardRef16((props, ref) => {
18972
+ import { forwardRef as forwardRef17 } from "react";
18973
+ import { jsx as jsx108 } from "@emotion/react/jsx-runtime";
18974
+ var ParameterTextarea = forwardRef17((props, ref) => {
18702
18975
  const { shellProps, innerProps } = extractParameterProps(props);
18703
- return /* @__PURE__ */ jsx106(ParameterShell, { "data-testid": "parameter-textarea", ...shellProps, children: /* @__PURE__ */ jsx106(ParameterTextareaInner, { ref, ...innerProps }) });
18976
+ return /* @__PURE__ */ jsx108(ParameterShell, { "data-testid": "parameter-textarea", ...shellProps, children: /* @__PURE__ */ jsx108(ParameterTextareaInner, { ref, ...innerProps }) });
18704
18977
  });
18705
- var ParameterTextareaInner = forwardRef16(({ ...props }, ref) => {
18978
+ var ParameterTextareaInner = forwardRef17(({ ...props }, ref) => {
18706
18979
  const { id, label, hiddenLabel } = useParameterShell();
18707
- return /* @__PURE__ */ jsx106(
18980
+ return /* @__PURE__ */ jsx108(
18708
18981
  "textarea",
18709
18982
  {
18710
18983
  css: [input2, textarea2],
@@ -18717,25 +18990,25 @@ var ParameterTextareaInner = forwardRef16(({ ...props }, ref) => {
18717
18990
  });
18718
18991
 
18719
18992
  // src/components/ParameterInputs/ParameterToggle.tsx
18720
- import { forwardRef as forwardRef17 } from "react";
18721
- import { jsx as jsx107, jsxs as jsxs73 } from "@emotion/react/jsx-runtime";
18722
- var ParameterToggle = forwardRef17((props, ref) => {
18993
+ import { forwardRef as forwardRef18 } from "react";
18994
+ import { jsx as jsx109, jsxs as jsxs73 } from "@emotion/react/jsx-runtime";
18995
+ var ParameterToggle = forwardRef18((props, ref) => {
18723
18996
  const { shellProps, innerProps } = extractParameterProps(props);
18724
- return /* @__PURE__ */ jsx107(ParameterShell, { ...shellProps, children: /* @__PURE__ */ jsx107(ParameterToggleInner, { ref, ...innerProps }) });
18997
+ return /* @__PURE__ */ jsx109(ParameterShell, { ...shellProps, children: /* @__PURE__ */ jsx109(ParameterToggleInner, { ref, ...innerProps }) });
18725
18998
  });
18726
- var ParameterToggleInner = forwardRef17(
18999
+ var ParameterToggleInner = forwardRef18(
18727
19000
  ({ ...props }, ref) => {
18728
19001
  const { id, label } = useParameterShell();
18729
19002
  return /* @__PURE__ */ jsxs73("label", { css: inputToggleLabel2, children: [
18730
- /* @__PURE__ */ jsx107("input", { css: toggleInput2, type: props.type, id, ref, ...props }),
18731
- /* @__PURE__ */ jsx107("span", { css: inlineLabel2, children: label })
19003
+ /* @__PURE__ */ jsx109("input", { css: toggleInput2, type: props.type, id, ref, ...props }),
19004
+ /* @__PURE__ */ jsx109("span", { css: inlineLabel2, children: label })
18732
19005
  ] });
18733
19006
  }
18734
19007
  );
18735
19008
 
18736
19009
  // src/components/ProgressBar/ProgressBar.styles.ts
18737
- import { css as css85, keyframes as keyframes4 } from "@emotion/react";
18738
- var container = css85`
19010
+ import { css as css86, keyframes as keyframes4 } from "@emotion/react";
19011
+ var container2 = css86`
18739
19012
  background: var(--gray-50);
18740
19013
  margin-block: var(--spacing-sm);
18741
19014
  position: relative;
@@ -18745,13 +19018,13 @@ var container = css85`
18745
19018
  border: solid 1px var(--gray-300);
18746
19019
  `;
18747
19020
  var themeMap = {
18748
- primary: css85`
19021
+ primary: css86`
18749
19022
  --progress-color: var(--accent-light);
18750
19023
  `,
18751
- secondary: css85`
19024
+ secondary: css86`
18752
19025
  --progress-color: var(--accent-alt-light);
18753
19026
  `,
18754
- destructive: css85`
19027
+ destructive: css86`
18755
19028
  --progress-color: var(--brand-secondary-5);
18756
19029
  `
18757
19030
  };
@@ -18763,10 +19036,10 @@ var slidingBackgroundPosition = keyframes4`
18763
19036
  background-position: 64px 0;
18764
19037
  }
18765
19038
  `;
18766
- var determinate = css85`
19039
+ var determinate = css86`
18767
19040
  background-color: var(--progress-color);
18768
19041
  `;
18769
- var indeterminate = css85`
19042
+ var indeterminate = css86`
18770
19043
  background-image: linear-gradient(
18771
19044
  45deg,
18772
19045
  var(--progress-color) 25%,
@@ -18780,7 +19053,7 @@ var indeterminate = css85`
18780
19053
  background-size: 64px 64px;
18781
19054
  animation: ${slidingBackgroundPosition} 1s linear infinite;
18782
19055
  `;
18783
- var bar = css85`
19056
+ var bar = css86`
18784
19057
  position: absolute;
18785
19058
  inset: 0;
18786
19059
  transition: transform var(--duration-fast) var(--timing-ease-out);
@@ -18788,7 +19061,7 @@ var bar = css85`
18788
19061
  `;
18789
19062
 
18790
19063
  // src/components/ProgressBar/ProgressBar.tsx
18791
- import { jsx as jsx108 } from "@emotion/react/jsx-runtime";
19064
+ import { jsx as jsx110 } from "@emotion/react/jsx-runtime";
18792
19065
  function ProgressBar({
18793
19066
  current,
18794
19067
  max,
@@ -18798,10 +19071,10 @@ function ProgressBar({
18798
19071
  }) {
18799
19072
  const valueNow = Math.min(current, max);
18800
19073
  const valuePercentage = max > 0 ? Math.ceil(100 / max * valueNow) : 0;
18801
- return /* @__PURE__ */ jsx108(
19074
+ return /* @__PURE__ */ jsx110(
18802
19075
  "div",
18803
19076
  {
18804
- css: container,
19077
+ css: container2,
18805
19078
  role: "progressbar",
18806
19079
  "aria-busy": valuePercentage !== 100,
18807
19080
  "aria-invalid": false,
@@ -18809,7 +19082,7 @@ function ProgressBar({
18809
19082
  "aria-valuemax": max,
18810
19083
  "aria-valuenow": valueNow,
18811
19084
  ...props,
18812
- children: /* @__PURE__ */ jsx108(
19085
+ children: /* @__PURE__ */ jsx110(
18813
19086
  "div",
18814
19087
  {
18815
19088
  css: [
@@ -18828,28 +19101,28 @@ function ProgressBar({
18828
19101
  }
18829
19102
 
18830
19103
  // src/components/ProgressList/ProgressList.tsx
18831
- import { css as css87 } from "@emotion/react";
19104
+ import { css as css88 } from "@emotion/react";
18832
19105
  import { CgCheckO as CgCheckO2 } from "@react-icons/all-files/cg/CgCheckO";
18833
19106
  import { CgRadioCheck } from "@react-icons/all-files/cg/CgRadioCheck";
18834
19107
  import { CgRecord } from "@react-icons/all-files/cg/CgRecord";
18835
19108
  import { useMemo as useMemo4 } from "react";
18836
19109
 
18837
19110
  // src/components/ProgressList/styles/ProgressList.styles.ts
18838
- import { css as css86 } from "@emotion/react";
18839
- var progressListStyles = css86`
19111
+ import { css as css87 } from "@emotion/react";
19112
+ var progressListStyles = css87`
18840
19113
  display: flex;
18841
19114
  flex-direction: column;
18842
19115
  gap: var(--spacing-sm);
18843
19116
  list-style-type: none;
18844
19117
  `;
18845
- var progressListItemStyles = css86`
19118
+ var progressListItemStyles = css87`
18846
19119
  display: flex;
18847
19120
  gap: var(--spacing-base);
18848
19121
  align-items: center;
18849
19122
  `;
18850
19123
 
18851
19124
  // src/components/ProgressList/ProgressList.tsx
18852
- import { jsx as jsx109, jsxs as jsxs74 } from "@emotion/react/jsx-runtime";
19125
+ import { jsx as jsx111, jsxs as jsxs74 } from "@emotion/react/jsx-runtime";
18853
19126
  var ProgressList = ({ inProgressId, items, autoEllipsis, ...htmlProps }) => {
18854
19127
  const itemsWithStatus = useMemo4(() => {
18855
19128
  const indexOfInProgressItem = items.findIndex(({ id }) => id === inProgressId);
@@ -18863,8 +19136,8 @@ var ProgressList = ({ inProgressId, items, autoEllipsis, ...htmlProps }) => {
18863
19136
  return { ...item, status };
18864
19137
  });
18865
19138
  }, [items, inProgressId]);
18866
- return /* @__PURE__ */ jsx109("ol", { css: progressListStyles, ...htmlProps, children: itemsWithStatus.map(({ id, label, status, error, errorLevel }) => {
18867
- return /* @__PURE__ */ jsx109(
19139
+ return /* @__PURE__ */ jsx111("ol", { css: progressListStyles, ...htmlProps, children: itemsWithStatus.map(({ id, label, status, error, errorLevel }) => {
19140
+ return /* @__PURE__ */ jsx111(
18868
19141
  ProgressListItem,
18869
19142
  {
18870
19143
  status,
@@ -18897,12 +19170,12 @@ var ProgressListItem = ({
18897
19170
  }, [status, error]);
18898
19171
  const statusStyles = useMemo4(() => {
18899
19172
  if (error) {
18900
- return errorLevel === "caution" ? css87`
19173
+ return errorLevel === "caution" ? css88`
18901
19174
  color: rgb(161, 98, 7);
18902
19175
  & svg {
18903
19176
  color: rgb(250, 204, 21);
18904
19177
  }
18905
- ` : css87`
19178
+ ` : css88`
18906
19179
  color: rgb(185, 28, 28);
18907
19180
  & svg {
18908
19181
  color: var(--brand-primary-2);
@@ -18910,35 +19183,35 @@ var ProgressListItem = ({
18910
19183
  `;
18911
19184
  }
18912
19185
  const colorPerStatus = {
18913
- completed: css87`
19186
+ completed: css88`
18914
19187
  opacity: 0.75;
18915
19188
  `,
18916
- inProgress: css87`
19189
+ inProgress: css88`
18917
19190
  -webkit-text-stroke-width: thin;
18918
19191
  `,
18919
- queued: css87`
19192
+ queued: css88`
18920
19193
  opacity: 0.5;
18921
19194
  `
18922
19195
  };
18923
19196
  return colorPerStatus[status];
18924
19197
  }, [status, error, errorLevel]);
18925
19198
  return /* @__PURE__ */ jsxs74("li", { css: [progressListItemStyles, statusStyles], children: [
18926
- /* @__PURE__ */ jsx109(Tooltip, { title: error != null ? error : "", children: /* @__PURE__ */ jsx109("div", { children: /* @__PURE__ */ jsx109(Icon, { icon, size: 20, iconColor: "currentColor" }) }) }),
19199
+ /* @__PURE__ */ jsx111(Tooltip, { title: error != null ? error : "", children: /* @__PURE__ */ jsx111("div", { children: /* @__PURE__ */ jsx111(Icon, { icon, size: 20, iconColor: "currentColor" }) }) }),
18927
19200
  /* @__PURE__ */ jsxs74("div", { children: [
18928
19201
  children,
18929
- /* @__PURE__ */ jsx109("span", { css: { visibility: autoEllipsis && status === "inProgress" && !error ? "visible" : "hidden" }, children: "..." })
19202
+ /* @__PURE__ */ jsx111("span", { css: { visibility: autoEllipsis && status === "inProgress" && !error ? "visible" : "hidden" }, children: "..." })
18930
19203
  ] })
18931
19204
  ] });
18932
19205
  };
18933
19206
 
18934
19207
  // src/components/SegmentedControl/SegmentedControl.tsx
18935
- import { css as css89 } from "@emotion/react";
19208
+ import { css as css90 } from "@emotion/react";
18936
19209
  import { CgCheck as CgCheck4 } from "@react-icons/all-files/cg/CgCheck";
18937
19210
  import { useCallback as useCallback7, useMemo as useMemo5 } from "react";
18938
19211
 
18939
19212
  // src/components/SegmentedControl/SegmentedControl.styles.ts
18940
- import { css as css88 } from "@emotion/react";
18941
- var segmentedControlStyles = css88`
19213
+ import { css as css89 } from "@emotion/react";
19214
+ var segmentedControlStyles = css89`
18942
19215
  --segmented-control-rounded-value: var(--rounded-base);
18943
19216
  --segmented-control-border-width: 1px;
18944
19217
  --segmented-control-selected-color: var(--brand-secondary-3);
@@ -18957,14 +19230,14 @@ var segmentedControlStyles = css88`
18957
19230
  border-radius: calc(var(--segmented-control-rounded-value) + var(--segmented-control-border-width));
18958
19231
  font-size: var(--fs-xs);
18959
19232
  `;
18960
- var segmentedControlVerticalStyles = css88`
19233
+ var segmentedControlVerticalStyles = css89`
18961
19234
  flex-direction: column;
18962
19235
  --segmented-control-first-border-radius: var(--segmented-control-rounded-value)
18963
19236
  var(--segmented-control-rounded-value) 0 0;
18964
19237
  --segmented-control-last-border-radius: 0 0 var(--segmented-control-rounded-value)
18965
19238
  var(--segmented-control-rounded-value);
18966
19239
  `;
18967
- var segmentedControlItemStyles = css88`
19240
+ var segmentedControlItemStyles = css89`
18968
19241
  &:first-of-type label {
18969
19242
  border-radius: var(--segmented-control-first-border-radius);
18970
19243
  }
@@ -18972,10 +19245,10 @@ var segmentedControlItemStyles = css88`
18972
19245
  border-radius: var(--segmented-control-last-border-radius);
18973
19246
  }
18974
19247
  `;
18975
- var segmentedControlInputStyles = css88`
19248
+ var segmentedControlInputStyles = css89`
18976
19249
  ${accessibleHidden}
18977
19250
  `;
18978
- var segmentedControlLabelStyles = (checked, disabled) => css88`
19251
+ var segmentedControlLabelStyles = (checked, disabled2) => css89`
18979
19252
  position: relative;
18980
19253
  display: flex;
18981
19254
  align-items: center;
@@ -19017,7 +19290,7 @@ var segmentedControlLabelStyles = (checked, disabled) => css88`
19017
19290
  // once Firefox supports :has selector
19018
19291
  @supports not selector(:has(*)) {
19019
19292
  // equivalent to &:has(:checked:not(:disabled))
19020
- ${checked && !disabled ? `
19293
+ ${checked && !disabled2 ? `
19021
19294
  background-color: var(--segmented-control-selected-color);
19022
19295
  outline: var(--segmented-control-border-width) solid var(--segmented-control-selected-color);
19023
19296
  box-shadow: 0 0.43em 1.7em 0 rgba(0, 0, 0, 0.15);
@@ -19027,45 +19300,45 @@ var segmentedControlLabelStyles = (checked, disabled) => css88`
19027
19300
 
19028
19301
  // equivalent to &:hover:not(:has(:disabled, :checked))
19029
19302
  &:hover {
19030
- ${!checked && !disabled ? `background-color: var(--gray-100);` : void 0}
19303
+ ${!checked && !disabled2 ? `background-color: var(--gray-100);` : void 0}
19031
19304
  }
19032
19305
 
19033
19306
  // equivalent to &:has(:disabled)
19034
- ${disabled ? `
19307
+ ${disabled2 ? `
19035
19308
  color: var(--gray-400);
19036
19309
  cursor: default;` : void 0}
19037
19310
 
19038
19311
  // equivalent to &:has(:checked:disabled)
19039
- ${checked && disabled && `
19312
+ ${checked && disabled2 && `
19040
19313
  color: var(--gray-50);
19041
19314
  background-color: var(--gray-400);
19042
19315
  `}
19043
19316
  }
19044
19317
  `;
19045
- var segmentedControlLabelIconOnlyStyles = css88`
19318
+ var segmentedControlLabelIconOnlyStyles = css89`
19046
19319
  padding-inline: 0.5em;
19047
19320
  `;
19048
- var segmentedControlLabelCheckStyles = css88`
19321
+ var segmentedControlLabelCheckStyles = css89`
19049
19322
  opacity: 0.5;
19050
19323
  `;
19051
- var segmentedControlLabelContentStyles = css88`
19324
+ var segmentedControlLabelContentStyles = css89`
19052
19325
  display: flex;
19053
19326
  align-items: center;
19054
19327
  justify-content: center;
19055
19328
  gap: var(--spacing-sm);
19056
19329
  height: 100%;
19057
19330
  `;
19058
- var segmentedControlLabelTextStyles = css88``;
19331
+ var segmentedControlLabelTextStyles = css89``;
19059
19332
 
19060
19333
  // src/components/SegmentedControl/SegmentedControl.tsx
19061
- import { jsx as jsx110, jsxs as jsxs75 } from "@emotion/react/jsx-runtime";
19334
+ import { jsx as jsx112, jsxs as jsxs75 } from "@emotion/react/jsx-runtime";
19062
19335
  var SegmentedControl = ({
19063
19336
  name,
19064
19337
  options,
19065
19338
  value,
19066
19339
  onChange,
19067
19340
  noCheckmark = false,
19068
- disabled = false,
19341
+ disabled: disabled2 = false,
19069
19342
  orientation = "horizontal",
19070
19343
  size = "md",
19071
19344
  ...props
@@ -19080,28 +19353,31 @@ var SegmentedControl = ({
19080
19353
  );
19081
19354
  const sizeStyles = useMemo5(() => {
19082
19355
  const map = {
19083
- sm: css89({ height: "calc(24px - 2px)", fontSize: "var(--fs-xs)" }),
19084
- md: css89({ height: "calc(32px - 2px)", fontSize: "var(--fs-sm)" }),
19085
- lg: css89({ height: "calc(40px - 2px)", fontSize: "var(--fs-base)" })
19356
+ sm: css90({ height: "calc(24px - 2px)", fontSize: "var(--fs-xs)" }),
19357
+ md: css90({ height: "calc(32px - 2px)", fontSize: "var(--fs-sm)" }),
19358
+ lg: css90({ height: "calc(40px - 2px)", fontSize: "var(--fs-base)" })
19086
19359
  };
19087
19360
  return map[size];
19088
19361
  }, [size]);
19089
19362
  const isIconOnly = useMemo5(() => {
19090
- return options.every((option) => option.icon && !option.label);
19363
+ return options.every((option) => option && option.icon && !option.label);
19091
19364
  }, [options]);
19092
- return /* @__PURE__ */ jsx110(
19365
+ return /* @__PURE__ */ jsx112(
19093
19366
  "div",
19094
19367
  {
19095
19368
  css: [segmentedControlStyles, orientation === "vertical" ? segmentedControlVerticalStyles : void 0],
19096
19369
  ...props,
19097
19370
  children: options.map((option, index) => {
19371
+ if (!option) {
19372
+ return null;
19373
+ }
19098
19374
  const text = option.label ? option.label : option.icon ? null : String(option.value);
19099
- const isDisabled = disabled || option.disabled;
19100
- return /* @__PURE__ */ jsx110(
19375
+ const isDisabled = disabled2 || option.disabled;
19376
+ return /* @__PURE__ */ jsx112(
19101
19377
  Tooltip,
19102
19378
  {
19103
19379
  title: isDisabled || !option.tooltip ? "" : option.tooltip,
19104
- children: /* @__PURE__ */ jsx110("div", { css: segmentedControlItemStyles, "data-testid": "container-segmented-control", children: /* @__PURE__ */ jsxs75(
19380
+ children: /* @__PURE__ */ jsx112("div", { css: segmentedControlItemStyles, "data-testid": "container-segmented-control", children: /* @__PURE__ */ jsxs75(
19105
19381
  "label",
19106
19382
  {
19107
19383
  css: [
@@ -19110,7 +19386,7 @@ var SegmentedControl = ({
19110
19386
  isIconOnly ? segmentedControlLabelIconOnlyStyles : void 0
19111
19387
  ],
19112
19388
  children: [
19113
- /* @__PURE__ */ jsx110(
19389
+ /* @__PURE__ */ jsx112(
19114
19390
  "input",
19115
19391
  {
19116
19392
  css: segmentedControlInputStyles,
@@ -19122,10 +19398,10 @@ var SegmentedControl = ({
19122
19398
  disabled: isDisabled
19123
19399
  }
19124
19400
  ),
19125
- option.value !== value || noCheckmark ? null : /* @__PURE__ */ jsx110(CgCheck4, { css: segmentedControlLabelCheckStyles, "aria-label": "Selected", size: "1.5em" }),
19401
+ option.value !== value || noCheckmark ? null : /* @__PURE__ */ jsx112(CgCheck4, { css: segmentedControlLabelCheckStyles, "aria-label": "Selected", size: "1.5em" }),
19126
19402
  /* @__PURE__ */ jsxs75("span", { css: segmentedControlLabelContentStyles, children: [
19127
- !option.icon ? null : /* @__PURE__ */ jsx110(Icon, { icon: option.icon, size: "1.5em", iconColor: "currentColor" }),
19128
- !text ? null : /* @__PURE__ */ jsx110("span", { css: segmentedControlLabelTextStyles, children: text })
19403
+ !option.icon ? null : /* @__PURE__ */ jsx112(Icon, { icon: option.icon, size: "1.5em", iconColor: "currentColor" }),
19404
+ !text ? null : /* @__PURE__ */ jsx112("span", { css: segmentedControlLabelTextStyles, children: text })
19129
19405
  ] })
19130
19406
  ]
19131
19407
  }
@@ -19139,18 +19415,18 @@ var SegmentedControl = ({
19139
19415
  };
19140
19416
 
19141
19417
  // src/components/Skeleton/Skeleton.styles.ts
19142
- import { css as css90, keyframes as keyframes5 } from "@emotion/react";
19418
+ import { css as css91, keyframes as keyframes5 } from "@emotion/react";
19143
19419
  var lightFadingOut = keyframes5`
19144
19420
  from { opacity: 0.1; }
19145
19421
  to { opacity: 0.025; }
19146
19422
  `;
19147
- var skeletonStyles = css90`
19423
+ var skeletonStyles = css91`
19148
19424
  animation: ${lightFadingOut} 1s ease-out infinite alternate;
19149
19425
  background-color: var(--gray-900);
19150
19426
  `;
19151
19427
 
19152
19428
  // src/components/Skeleton/Skeleton.tsx
19153
- import { jsx as jsx111 } from "@emotion/react/jsx-runtime";
19429
+ import { jsx as jsx113 } from "@emotion/react/jsx-runtime";
19154
19430
  var Skeleton = ({
19155
19431
  width = "100%",
19156
19432
  height = "1.25rem",
@@ -19158,7 +19434,7 @@ var Skeleton = ({
19158
19434
  circle = false,
19159
19435
  children,
19160
19436
  ...otherProps
19161
- }) => /* @__PURE__ */ jsx111(
19437
+ }) => /* @__PURE__ */ jsx113(
19162
19438
  "div",
19163
19439
  {
19164
19440
  css: [
@@ -19181,8 +19457,8 @@ var Skeleton = ({
19181
19457
  import * as React23 from "react";
19182
19458
 
19183
19459
  // src/components/Switch/Switch.styles.ts
19184
- import { css as css91 } from "@emotion/react";
19185
- var SwitchInputContainer = css91`
19460
+ import { css as css92 } from "@emotion/react";
19461
+ var SwitchInputContainer = css92`
19186
19462
  cursor: pointer;
19187
19463
  display: inline-block;
19188
19464
  position: relative;
@@ -19191,7 +19467,7 @@ var SwitchInputContainer = css91`
19191
19467
  vertical-align: middle;
19192
19468
  user-select: none;
19193
19469
  `;
19194
- var SwitchInput = css91`
19470
+ var SwitchInput = css92`
19195
19471
  appearance: none;
19196
19472
  border-radius: var(--rounded-full);
19197
19473
  background-color: var(--white);
@@ -19229,7 +19505,7 @@ var SwitchInput = css91`
19229
19505
  cursor: not-allowed;
19230
19506
  }
19231
19507
  `;
19232
- var SwitchInputDisabled = css91`
19508
+ var SwitchInputDisabled = css92`
19233
19509
  opacity: var(--opacity-50);
19234
19510
  cursor: not-allowed;
19235
19511
 
@@ -19237,7 +19513,7 @@ var SwitchInputDisabled = css91`
19237
19513
  cursor: not-allowed;
19238
19514
  }
19239
19515
  `;
19240
- var SwitchInputLabel = css91`
19516
+ var SwitchInputLabel = css92`
19241
19517
  align-items: center;
19242
19518
  color: var(--brand-secondary-1);
19243
19519
  display: inline-flex;
@@ -19258,26 +19534,26 @@ var SwitchInputLabel = css91`
19258
19534
  top: 0;
19259
19535
  }
19260
19536
  `;
19261
- var SwitchText = css91`
19537
+ var SwitchText = css92`
19262
19538
  color: var(--gray-500);
19263
19539
  font-size: var(--fs-sm);
19264
19540
  padding-inline: var(--spacing-2xl) 0;
19265
19541
  `;
19266
19542
 
19267
19543
  // src/components/Switch/Switch.tsx
19268
- import { Fragment as Fragment21, jsx as jsx112, jsxs as jsxs76 } from "@emotion/react/jsx-runtime";
19544
+ import { Fragment as Fragment19, jsx as jsx114, jsxs as jsxs76 } from "@emotion/react/jsx-runtime";
19269
19545
  var Switch = React23.forwardRef(
19270
19546
  ({ label, infoText, toggleText, children, ...inputProps }, ref) => {
19271
19547
  let additionalText = infoText;
19272
19548
  if (infoText && toggleText) {
19273
19549
  additionalText = inputProps.checked ? toggleText : infoText;
19274
19550
  }
19275
- return /* @__PURE__ */ jsxs76(Fragment21, { children: [
19551
+ return /* @__PURE__ */ jsxs76(Fragment19, { children: [
19276
19552
  /* @__PURE__ */ jsxs76("label", { css: [SwitchInputContainer, inputProps.disabled ? SwitchInputDisabled : void 0], children: [
19277
- /* @__PURE__ */ jsx112("input", { type: "checkbox", css: SwitchInput, ...inputProps, ref }),
19278
- /* @__PURE__ */ jsx112("span", { css: SwitchInputLabel, children: label })
19553
+ /* @__PURE__ */ jsx114("input", { type: "checkbox", css: SwitchInput, ...inputProps, ref }),
19554
+ /* @__PURE__ */ jsx114("span", { css: SwitchInputLabel, children: label })
19279
19555
  ] }),
19280
- additionalText ? /* @__PURE__ */ jsx112("p", { css: SwitchText, children: additionalText }) : null,
19556
+ additionalText ? /* @__PURE__ */ jsx114("p", { css: SwitchText, children: additionalText }) : null,
19281
19557
  children
19282
19558
  ] });
19283
19559
  }
@@ -19287,8 +19563,8 @@ var Switch = React23.forwardRef(
19287
19563
  import * as React24 from "react";
19288
19564
 
19289
19565
  // src/components/Table/Table.styles.ts
19290
- import { css as css92 } from "@emotion/react";
19291
- var table = ({ cellPadding = "var(--spacing-base) var(--spacing-md)" }) => css92`
19566
+ import { css as css93 } from "@emotion/react";
19567
+ var table = ({ cellPadding = "var(--spacing-base) var(--spacing-md)" }) => css93`
19292
19568
  border-bottom: 1px solid var(--gray-400);
19293
19569
  border-collapse: collapse;
19294
19570
  min-width: 100%;
@@ -19299,70 +19575,71 @@ var table = ({ cellPadding = "var(--spacing-base) var(--spacing-md)" }) => css92
19299
19575
  padding: ${cellPadding};
19300
19576
  }
19301
19577
  `;
19302
- var tableHead = css92`
19578
+ var tableHead = css93`
19303
19579
  background: var(--gray-100);
19304
19580
  color: var(--brand-secondary-1);
19305
19581
  text-align: left;
19306
19582
  `;
19307
- var tableRow = css92`
19583
+ var tableRow = css93`
19308
19584
  border-bottom: 1px solid var(--gray-200);
19309
19585
  `;
19310
- var tableCellHead = css92`
19586
+ var tableCellHead = css93`
19311
19587
  font-size: var(--fs-sm);
19312
19588
  text-transform: uppercase;
19313
19589
  font-weight: var(--fw-bold);
19314
19590
  `;
19315
19591
 
19316
19592
  // src/components/Table/Table.tsx
19317
- import { jsx as jsx113 } from "@emotion/react/jsx-runtime";
19593
+ import { jsx as jsx115 } from "@emotion/react/jsx-runtime";
19318
19594
  var Table = React24.forwardRef(
19319
19595
  ({ children, cellPadding, ...otherProps }, ref) => {
19320
- return /* @__PURE__ */ jsx113("table", { ref, css: table({ cellPadding }), ...otherProps, children });
19596
+ return /* @__PURE__ */ jsx115("table", { ref, css: table({ cellPadding }), ...otherProps, children });
19321
19597
  }
19322
19598
  );
19323
19599
  var TableHead = React24.forwardRef(
19324
19600
  ({ children, ...otherProps }, ref) => {
19325
- return /* @__PURE__ */ jsx113("thead", { ref, css: tableHead, ...otherProps, children });
19601
+ return /* @__PURE__ */ jsx115("thead", { ref, css: tableHead, ...otherProps, children });
19326
19602
  }
19327
19603
  );
19328
19604
  var TableBody = React24.forwardRef(
19329
19605
  ({ children, ...otherProps }, ref) => {
19330
- return /* @__PURE__ */ jsx113("tbody", { ref, ...otherProps, children });
19606
+ return /* @__PURE__ */ jsx115("tbody", { ref, ...otherProps, children });
19331
19607
  }
19332
19608
  );
19333
19609
  var TableFoot = React24.forwardRef(
19334
19610
  ({ children, ...otherProps }, ref) => {
19335
- return /* @__PURE__ */ jsx113("tfoot", { ref, ...otherProps, children });
19611
+ return /* @__PURE__ */ jsx115("tfoot", { ref, ...otherProps, children });
19336
19612
  }
19337
19613
  );
19338
19614
  var TableRow = React24.forwardRef(
19339
19615
  ({ children, ...otherProps }, ref) => {
19340
- return /* @__PURE__ */ jsx113("tr", { ref, css: tableRow, ...otherProps, children });
19616
+ return /* @__PURE__ */ jsx115("tr", { ref, css: tableRow, ...otherProps, children });
19341
19617
  }
19342
19618
  );
19343
19619
  var TableCellHead = React24.forwardRef(
19344
19620
  ({ children, ...otherProps }, ref) => {
19345
- return /* @__PURE__ */ jsx113("th", { ref, css: tableCellHead, ...otherProps, children });
19621
+ return /* @__PURE__ */ jsx115("th", { ref, css: tableCellHead, ...otherProps, children });
19346
19622
  }
19347
19623
  );
19348
19624
  var TableCellData = React24.forwardRef(
19349
19625
  ({ children, ...otherProps }, ref) => {
19350
- return /* @__PURE__ */ jsx113("td", { ref, ...otherProps, children });
19626
+ return /* @__PURE__ */ jsx115("td", { ref, ...otherProps, children });
19351
19627
  }
19352
19628
  );
19353
19629
 
19354
19630
  // src/components/Tabs/Tabs.tsx
19355
- import { createContext as createContext6, useContext as useContext7, useEffect as useEffect15, useMemo as useMemo6 } from "react";
19356
19631
  import {
19357
- Tab as ReakitTab,
19358
- TabList as ReakitTabList,
19359
- TabPanel as ReakitTabPanel,
19360
- useTabState
19361
- } from "reakit/Tab";
19632
+ Tab as AriakitTab,
19633
+ TabList as AriakitTabList,
19634
+ TabPanel as AriakitTabPanel,
19635
+ TabProvider as AriakitTabProvider,
19636
+ useTabStore as useAriakitTabStore
19637
+ } from "@ariakit/react";
19638
+ import { useCallback as useCallback8, useEffect as useEffect16, useMemo as useMemo6 } from "react";
19362
19639
 
19363
19640
  // src/components/Tabs/Tabs.styles.ts
19364
- import { css as css93 } from "@emotion/react";
19365
- var tabButtonStyles = css93`
19641
+ import { css as css94 } from "@emotion/react";
19642
+ var tabButtonStyles = css94`
19366
19643
  align-items: center;
19367
19644
  border: 0;
19368
19645
  height: 2.5rem;
@@ -19379,61 +19656,73 @@ var tabButtonStyles = css93`
19379
19656
  box-shadow: inset 0 -2px 0 var(--brand-secondary-3);
19380
19657
  }
19381
19658
  `;
19382
- var tabButtonGroupStyles = css93`
19659
+ var tabButtonGroupStyles = css94`
19383
19660
  display: flex;
19384
19661
  gap: var(--spacing-base);
19385
19662
  border-bottom: 1px solid var(--gray-300);
19386
19663
  `;
19387
19664
 
19388
19665
  // src/components/Tabs/Tabs.tsx
19389
- import { jsx as jsx114 } from "@emotion/react/jsx-runtime";
19390
- var CurrentTabContext = createContext6(null);
19666
+ import { jsx as jsx116 } from "@emotion/react/jsx-runtime";
19391
19667
  var useCurrentTab = () => {
19392
- const context = useContext7(CurrentTabContext);
19668
+ const context = useAriakitTabStore();
19393
19669
  if (!context) {
19394
19670
  throw new Error("This component can only be used inside <Tabs>");
19395
19671
  }
19396
19672
  return context;
19397
19673
  };
19398
- var Tabs = ({ children, onSelectedIdChange, useHashForState, selectedId, ...props }) => {
19674
+ var Tabs = ({
19675
+ children,
19676
+ onSelectedIdChange,
19677
+ useHashForState,
19678
+ selectedId,
19679
+ manual,
19680
+ ...props
19681
+ }) => {
19399
19682
  const selected = useMemo6(() => {
19400
19683
  if (selectedId)
19401
19684
  return selectedId;
19402
19685
  return useHashForState && typeof window !== "undefined" && window.location.hash ? window.location.hash.substring(1) : void 0;
19403
19686
  }, [selectedId, useHashForState]);
19404
- const tab = useTabState({ ...props, selectedId: selected });
19405
- useEffect15(() => {
19406
- var _a;
19407
- const selectedValueWithoutNull = (_a = tab.selectedId) != null ? _a : void 0;
19408
- onSelectedIdChange == null ? void 0 : onSelectedIdChange(selectedValueWithoutNull);
19409
- if (useHashForState && typeof window !== "undefined" && window.history) {
19410
- const hashValue = selectedValueWithoutNull ? `#${selectedValueWithoutNull}` : "";
19411
- window.history.pushState(null, "", hashValue);
19412
- }
19413
- }, [tab.selectedId, onSelectedIdChange, useHashForState]);
19414
- useEffect15(() => {
19415
- if (selected && selected !== tab.selectedId) {
19687
+ const tab = useAriakitTabStore({ ...props, selectOnMove: !manual, selectedId: selected });
19688
+ const onTabSelect = useCallback8(
19689
+ (value) => {
19690
+ const selectedValueWithoutNull = value != null ? value : void 0;
19691
+ onSelectedIdChange == null ? void 0 : onSelectedIdChange(selectedValueWithoutNull);
19692
+ if (useHashForState && typeof window !== "undefined" && window.history) {
19693
+ const hashValue = selectedValueWithoutNull ? `#${selectedValueWithoutNull}` : "";
19694
+ window.history.replaceState(null, "", hashValue);
19695
+ }
19696
+ },
19697
+ [onSelectedIdChange, useHashForState]
19698
+ );
19699
+ useEffect16(() => {
19700
+ if (selected && selected !== tab.getState().activeId) {
19416
19701
  tab.setSelectedId(selected);
19417
19702
  }
19418
- }, [selected]);
19419
- return /* @__PURE__ */ jsx114(CurrentTabContext.Provider, { value: tab, children });
19703
+ }, [selected, tab]);
19704
+ return /* @__PURE__ */ jsx116(AriakitTabProvider, { store: tab, setSelectedId: onTabSelect, children });
19420
19705
  };
19421
19706
  var TabButtonGroup = ({ children, ...props }) => {
19422
- const currentTab = useCurrentTab();
19423
- return /* @__PURE__ */ jsx114(ReakitTabList, { ...props, ...currentTab, css: tabButtonGroupStyles, children });
19707
+ return /* @__PURE__ */ jsx116(AriakitTabList, { ...props, css: tabButtonGroupStyles, children });
19424
19708
  };
19425
- var TabButton = ({ children, id, ...props }) => {
19426
- const currentTab = useCurrentTab();
19427
- return /* @__PURE__ */ jsx114(ReakitTab, { type: "button", id, ...currentTab, ...props, css: tabButtonStyles, children });
19709
+ var TabButton = ({
19710
+ children,
19711
+ id,
19712
+ ...props
19713
+ }) => {
19714
+ return /* @__PURE__ */ jsx116(AriakitTab, { type: "button", id, ...props, css: tabButtonStyles, children });
19428
19715
  };
19429
- var TabContent = ({ children, ...props }) => {
19430
- const currentTab = useCurrentTab();
19431
- return /* @__PURE__ */ jsx114(ReakitTabPanel, { ...props, ...currentTab, children });
19716
+ var TabContent = ({
19717
+ children,
19718
+ ...props
19719
+ }) => {
19720
+ return /* @__PURE__ */ jsx116(AriakitTabPanel, { ...props, children });
19432
19721
  };
19433
19722
 
19434
19723
  // src/components/Validation/StatusBullet.styles.ts
19435
- import { css as css94 } from "@emotion/react";
19436
- var StatusBulletContainer = css94`
19724
+ import { css as css95 } from "@emotion/react";
19725
+ var StatusBulletContainer = css95`
19437
19726
  align-items: center;
19438
19727
  align-self: center;
19439
19728
  color: var(--gray-500);
@@ -19450,33 +19739,33 @@ var StatusBulletContainer = css94`
19450
19739
  display: block;
19451
19740
  }
19452
19741
  `;
19453
- var StatusBulletBase = css94`
19742
+ var StatusBulletBase = css95`
19454
19743
  font-size: var(--fs-sm);
19455
19744
  &:before {
19456
19745
  width: var(--fs-xs);
19457
19746
  height: var(--fs-xs);
19458
19747
  }
19459
19748
  `;
19460
- var StatusBulletSmall = css94`
19749
+ var StatusBulletSmall = css95`
19461
19750
  font-size: var(--fs-xs);
19462
19751
  &:before {
19463
19752
  width: var(--fs-xxs);
19464
19753
  height: var(--fs-xxs);
19465
19754
  }
19466
19755
  `;
19467
- var StatusDraft = css94`
19756
+ var StatusDraft = css95`
19468
19757
  &:before {
19469
19758
  background: var(--white);
19470
19759
  box-shadow: inset 0 0 0 0.125rem var(--primary-action-default);
19471
19760
  }
19472
19761
  `;
19473
- var StatusModified = css94`
19762
+ var StatusModified = css95`
19474
19763
  &:before {
19475
19764
  background: linear-gradient(to right, var(--white) 50%, var(--primary-action-default) 50% 100%);
19476
19765
  box-shadow: inset 0 0 0 0.125rem var(--primary-action-default);
19477
19766
  }
19478
19767
  `;
19479
- var StatusError = css94`
19768
+ var StatusError = css95`
19480
19769
  color: var(--error);
19481
19770
  &:before {
19482
19771
  /* TODO: replace this with an svg icon */
@@ -19489,24 +19778,24 @@ var StatusError = css94`
19489
19778
  );
19490
19779
  }
19491
19780
  `;
19492
- var StatusPublished = css94`
19781
+ var StatusPublished = css95`
19493
19782
  &:before {
19494
19783
  background: var(--primary-action-default);
19495
19784
  }
19496
19785
  `;
19497
- var StatusOrphan = css94`
19786
+ var StatusOrphan = css95`
19498
19787
  &:before {
19499
19788
  background: var(--brand-secondary-5);
19500
19789
  }
19501
19790
  `;
19502
- var StatusUnknown = css94`
19791
+ var StatusUnknown = css95`
19503
19792
  &:before {
19504
19793
  background: var(--brand-secondary-1);
19505
19794
  }
19506
19795
  `;
19507
19796
 
19508
19797
  // src/components/Validation/StatusBullet.tsx
19509
- import { jsx as jsx115 } from "@emotion/react/jsx-runtime";
19798
+ import { jsx as jsx117 } from "@emotion/react/jsx-runtime";
19510
19799
  var StatusBullet = ({
19511
19800
  status,
19512
19801
  hideText = false,
@@ -19525,7 +19814,7 @@ var StatusBullet = ({
19525
19814
  Unknown: StatusUnknown
19526
19815
  };
19527
19816
  const statusSize = size === "base" ? StatusBulletBase : StatusBulletSmall;
19528
- return /* @__PURE__ */ jsx115(
19817
+ return /* @__PURE__ */ jsx117(
19529
19818
  "span",
19530
19819
  {
19531
19820
  role: "status",
@@ -19606,13 +19895,14 @@ export {
19606
19895
  LoadingOverlay,
19607
19896
  MediaCard,
19608
19897
  Menu,
19609
- MenuContext,
19610
19898
  MenuGroup,
19611
19899
  MenuItem,
19900
+ MenuItemInner,
19612
19901
  MenuItemSeparator,
19613
19902
  Modal,
19614
19903
  MultilineChip,
19615
19904
  PageHeaderSection,
19905
+ Pagination,
19616
19906
  Paragraph,
19617
19907
  ParameterDataResource,
19618
19908
  ParameterDrawerHeader,
@@ -19655,6 +19945,7 @@ export {
19655
19945
  StatusBullet,
19656
19946
  SuccessMessage,
19657
19947
  Switch,
19948
+ TAKEOVER_STACK_ID,
19658
19949
  TabButton,
19659
19950
  TabButtonGroup,
19660
19951
  TabContent,
@@ -19666,6 +19957,7 @@ export {
19666
19957
  TableHead,
19667
19958
  TableRow,
19668
19959
  Tabs,
19960
+ TakeoverDrawerRenderer,
19669
19961
  Textarea,
19670
19962
  Theme,
19671
19963
  Tile2 as Tile,
@@ -19750,7 +20042,6 @@ export {
19750
20042
  useCurrentTab,
19751
20043
  useDrawer,
19752
20044
  useIconContext,
19753
- useMenuContext,
19754
20045
  useOutsideClick,
19755
20046
  useParameterShell,
19756
20047
  useShortcut,