@uniformdev/design-system 20.36.2-alpha.90 → 20.37.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.js CHANGED
@@ -1481,11 +1481,15 @@ __export(src_exports, {
1481
1481
  ParameterMultiSelect: () => ParameterMultiSelect,
1482
1482
  ParameterMultiSelectInner: () => ParameterMultiSelectInner,
1483
1483
  ParameterNameAndPublicIdInput: () => ParameterNameAndPublicIdInput,
1484
+ ParameterNumberSlider: () => ParameterNumberSlider,
1485
+ ParameterNumberSliderInner: () => ParameterNumberSliderInner,
1484
1486
  ParameterOverrideMarker: () => ParameterOverrideMarker,
1485
1487
  ParameterRichText: () => ParameterRichText,
1486
1488
  ParameterRichTextInner: () => ParameterRichTextInner,
1487
1489
  ParameterSelect: () => ParameterSelect,
1488
1490
  ParameterSelectInner: () => ParameterSelectInner,
1491
+ ParameterSelectSlider: () => ParameterSelectSlider,
1492
+ ParameterSelectSliderInner: () => ParameterSelectSliderInner,
1489
1493
  ParameterShell: () => ParameterShell,
1490
1494
  ParameterShellContext: () => ParameterShellContext,
1491
1495
  ParameterShellPlaceholder: () => ParameterShellPlaceholder,
@@ -1507,6 +1511,8 @@ __export(src_exports, {
1507
1511
  SegmentedControl: () => SegmentedControl,
1508
1512
  SelectableMenuItem: () => SelectableMenuItem,
1509
1513
  Skeleton: () => Skeleton,
1514
+ Slider: () => Slider,
1515
+ SliderLabels: () => SliderLabels,
1510
1516
  Spinner: () => Spinner,
1511
1517
  StatusBullet: () => StatusBullet,
1512
1518
  SuccessMessage: () => SuccessMessage,
@@ -1747,12 +1753,11 @@ var Theme = ({ disableReset = false, disableGlobalReset = false }) => {
1747
1753
  --typography-inverted: var(--white);
1748
1754
 
1749
1755
  /* chart colours */
1750
- --charting-chart-1: #0072B2;
1751
- --charting-chart-2: #D55E00;
1752
- --charting-chart-3: #009E73;
1753
- --charting-chart-4: #E41A1C;
1754
- --charting-chart-5: #F0E442;
1755
- --charting-chart-6: #56B4E9;
1756
+ --charting-chart-1: #ffa600;
1757
+ --charting-chart-2: #c444b2;
1758
+ --charting-chart-3: #ff5368;
1759
+ --charting-chart-4: #f53d90;
1760
+ --charting-chart-5: #ff7b3d;
1756
1761
 
1757
1762
  /* utility colours */
1758
1763
  --utility-success: #4ade80;
@@ -5275,7 +5280,7 @@ var avatarSizeStylesMap = {
5275
5280
  };
5276
5281
  var Avatar = ({
5277
5282
  src,
5278
- label = "",
5283
+ label: label2 = "",
5279
5284
  children,
5280
5285
  size = "md",
5281
5286
  as = "div",
@@ -5287,7 +5292,7 @@ var Avatar = ({
5287
5292
  src ? /* @__PURE__ */ (0, import_jsx_runtime18.jsx)("img", { role: "presentation", src, css: avatarImageStyles, referrerPolicy: "no-referrer" }) : children ? null : /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(import_CgProfile2.CgProfile, { css: avatarImageStyles }),
5288
5293
  children
5289
5294
  ] });
5290
- return src || children ? /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(Tooltip, { title: label, withoutPortal: labelWithoutPortal, children: body }) : body;
5295
+ return src || children ? /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(Tooltip, { title: label2, withoutPortal: labelWithoutPortal, children: body }) : body;
5291
5296
  };
5292
5297
 
5293
5298
  // src/components/Avatar/AvatarGroup.tsx
@@ -6176,11 +6181,11 @@ var InfoDialog = ({ message }) => {
6176
6181
  ] });
6177
6182
  };
6178
6183
  var CheckboxWithInfo = (0, import_react41.forwardRef)(
6179
- ({ label, name, info, ...props }, ref) => {
6184
+ ({ label: label2, name, info, ...props }, ref) => {
6180
6185
  return /* @__PURE__ */ (0, import_jsx_runtime30.jsxs)("div", { css: CheckboxWithInfoContainer, children: [
6181
6186
  /* @__PURE__ */ (0, import_jsx_runtime30.jsxs)("label", { css: CheckboxWithInfoLabel, children: [
6182
6187
  /* @__PURE__ */ (0, import_jsx_runtime30.jsx)("input", { type: "checkbox", name, ref, css: CheckboxWithInfoInput, ...props }),
6183
- /* @__PURE__ */ (0, import_jsx_runtime30.jsx)("span", { children: label })
6188
+ /* @__PURE__ */ (0, import_jsx_runtime30.jsx)("span", { children: label2 })
6184
6189
  ] }),
6185
6190
  info ? /* @__PURE__ */ (0, import_jsx_runtime30.jsx)(InfoDialog, { message: info }) : null
6186
6191
  ] });
@@ -6400,7 +6405,7 @@ var Label = ({ children, className, testId, ...props }) => {
6400
6405
  var import_jsx_runtime37 = require("@emotion/react/jsx-runtime");
6401
6406
  var Input = React8.forwardRef(
6402
6407
  ({
6403
- label,
6408
+ label: label2,
6404
6409
  icon,
6405
6410
  id,
6406
6411
  caption,
@@ -6432,7 +6437,7 @@ var Input = React8.forwardRef(
6432
6437
  css: [labelText, typeof classNameLabel === "object" ? classNameLabel : void 0],
6433
6438
  className: typeof classNameLabel === "string" ? classNameLabel : "",
6434
6439
  testId: labelTestId,
6435
- children: label
6440
+ children: label2
6436
6441
  }
6437
6442
  ) : null,
6438
6443
  /* @__PURE__ */ (0, import_jsx_runtime37.jsxs)(
@@ -6451,7 +6456,7 @@ var Input = React8.forwardRef(
6451
6456
  errorMessage ? inputError : void 0,
6452
6457
  icon ? inputWithIcon : ""
6453
6458
  ],
6454
- "aria-label": showLabel || typeof label !== "string" ? void 0 : label,
6459
+ "aria-label": showLabel || typeof label2 !== "string" ? void 0 : label2,
6455
6460
  className: typeof classNameControl === "string" ? classNameControl : "",
6456
6461
  onWheel: isNumberInputAndMouseWheelDisabled ? disableMouseWheelEvent : void 0,
6457
6462
  ...props,
@@ -6965,7 +6970,7 @@ var import_react50 = require("react");
6965
6970
  var import_jsx_runtime41 = require("@emotion/react/jsx-runtime");
6966
6971
  var InputSelect = (0, import_react50.forwardRef)(
6967
6972
  ({
6968
- label,
6973
+ label: label2,
6969
6974
  defaultOption,
6970
6975
  options,
6971
6976
  caption,
@@ -6992,7 +6997,7 @@ var InputSelect = (0, import_react50.forwardRef)(
6992
6997
  css: [labelText, typeof classNameLabel === "object" ? classNameLabel : void 0],
6993
6998
  className: typeof classNameLabel === "string" ? classNameLabel : "",
6994
6999
  children: [
6995
- label,
7000
+ label2,
6996
7001
  labelCta
6997
7002
  ]
6998
7003
  }
@@ -7001,8 +7006,8 @@ var InputSelect = (0, import_react50.forwardRef)(
7001
7006
  "select",
7002
7007
  {
7003
7008
  ref,
7004
- title: label,
7005
- "aria-label": !showLabel ? label : void 0,
7009
+ title: label2,
7010
+ "aria-label": !showLabel ? label2 : void 0,
7006
7011
  css: [
7007
7012
  input("wrap"),
7008
7013
  inputSelect,
@@ -7091,7 +7096,7 @@ function tryParseTime(isoTime) {
7091
7096
  var InputTime = React9.forwardRef(
7092
7097
  ({
7093
7098
  id,
7094
- label,
7099
+ label: label2,
7095
7100
  caption,
7096
7101
  name,
7097
7102
  showLabel = true,
@@ -7135,7 +7140,7 @@ var InputTime = React9.forwardRef(
7135
7140
  ),
7136
7141
  ...props,
7137
7142
  children: [
7138
- showLabel ? /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(import_react_aria_components.Label, { elementType: "label", css: [labelText], "data-testid": labelTestId, children: label }) : null,
7143
+ showLabel ? /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(import_react_aria_components.Label, { elementType: "label", css: [labelText], "data-testid": labelTestId, children: label2 }) : null,
7139
7144
  /* @__PURE__ */ (0, import_jsx_runtime42.jsx)("div", { css: [inputContainer], children: /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(
7140
7145
  import_react_aria_components.DateInput,
7141
7146
  {
@@ -7175,7 +7180,7 @@ var React10 = __toESM(require("react"));
7175
7180
  var import_jsx_runtime43 = require("@emotion/react/jsx-runtime");
7176
7181
  var InputToggle = React10.forwardRef(
7177
7182
  ({
7178
- label,
7183
+ label: label2,
7179
7184
  type,
7180
7185
  disabled: disabled2,
7181
7186
  checked,
@@ -7208,11 +7213,11 @@ var InputToggle = React10.forwardRef(
7208
7213
  checked,
7209
7214
  name,
7210
7215
  disabled: disabled2,
7211
- "aria-label": !showLabel && typeof label === "string" ? label : void 0,
7216
+ "aria-label": !showLabel && typeof label2 === "string" ? label2 : void 0,
7212
7217
  ...props
7213
7218
  }
7214
7219
  ),
7215
- !showLabel ? null : /* @__PURE__ */ (0, import_jsx_runtime43.jsx)("span", { css: [inlineLabel, fontWeightStyles[fontWeight]], children: label }),
7220
+ !showLabel ? null : /* @__PURE__ */ (0, import_jsx_runtime43.jsx)("span", { css: [inlineLabel, fontWeightStyles[fontWeight]], children: label2 }),
7216
7221
  caption || errorMessage ? /* @__PURE__ */ (0, import_jsx_runtime43.jsx)("span", { css: inputToggleMessageContainer, children: /* @__PURE__ */ (0, import_jsx_runtime43.jsx)(
7217
7222
  FieldMessage,
7218
7223
  {
@@ -7268,9 +7273,9 @@ init_emotion_jsx_shim();
7268
7273
  var import_react54 = require("react");
7269
7274
  var import_jsx_runtime46 = require("@emotion/react/jsx-runtime");
7270
7275
  var Textarea = (0, import_react54.forwardRef)(
7271
- ({ label, icon, id, caption, showLabel = true, errorMessage, warningMessage, ...props }, ref) => {
7276
+ ({ label: label2, icon, id, caption, showLabel = true, errorMessage, warningMessage, ...props }, ref) => {
7272
7277
  return /* @__PURE__ */ (0, import_jsx_runtime46.jsxs)(import_jsx_runtime46.Fragment, { children: [
7273
- showLabel ? /* @__PURE__ */ (0, import_jsx_runtime46.jsx)("label", { htmlFor: id, css: [labelText], children: label }) : null,
7278
+ showLabel ? /* @__PURE__ */ (0, import_jsx_runtime46.jsx)("label", { htmlFor: id, css: [labelText], children: label2 }) : null,
7274
7279
  /* @__PURE__ */ (0, import_jsx_runtime46.jsxs)("div", { css: [inputContainer], children: [
7275
7280
  /* @__PURE__ */ (0, import_jsx_runtime46.jsx)(
7276
7281
  "textarea",
@@ -7283,7 +7288,7 @@ var Textarea = (0, import_react54.forwardRef)(
7283
7288
  icon ? inputWithIcon : "",
7284
7289
  scrollbarStyles
7285
7290
  ],
7286
- "aria-label": !showLabel ? label : void 0,
7291
+ "aria-label": !showLabel ? label2 : void 0,
7287
7292
  ...props
7288
7293
  }
7289
7294
  ),
@@ -9056,7 +9061,7 @@ function useDateTimePickerContext() {
9056
9061
  }
9057
9062
  var DateTimePicker = ({
9058
9063
  id,
9059
- label,
9064
+ label: label2,
9060
9065
  triggerIcon = import_CgCalendar2.CgCalendar,
9061
9066
  value,
9062
9067
  minVisible,
@@ -9140,7 +9145,7 @@ var DateTimePicker = ({
9140
9145
  [handleClearClick, handleDateChange, handleTimeChange]
9141
9146
  );
9142
9147
  return /* @__PURE__ */ (0, import_jsx_runtime63.jsx)(DateTimePickerContext.Provider, { value: contextValue, children: /* @__PURE__ */ (0, import_jsx_runtime63.jsxs)("div", { "data-testid": testId, "data-variant": variant, ...props, children: [
9143
- showLabel ? /* @__PURE__ */ (0, import_jsx_runtime63.jsx)(Label, { css: [labelText], "data-testid": `${testId}-label`, children: label }) : null,
9148
+ showLabel ? /* @__PURE__ */ (0, import_jsx_runtime63.jsx)(Label, { css: [labelText], "data-testid": `${testId}-label`, children: label2 }) : null,
9144
9149
  /* @__PURE__ */ (0, import_jsx_runtime63.jsx)("div", { css: inputContainer, children: /* @__PURE__ */ (0, import_jsx_runtime63.jsxs)(import_react73.PopoverProvider, { store: popover2, children: [
9145
9150
  /* @__PURE__ */ (0, import_jsx_runtime63.jsxs)(
9146
9151
  "div",
@@ -9291,10 +9296,10 @@ var DescriptionList = import_react76.default.forwardRef(
9291
9296
  ref,
9292
9297
  css: variant === "vertical" ? descriptionListVertical : descriptionListHorizontal,
9293
9298
  ...listProps,
9294
- children: items == null ? void 0 : items.map(({ label, value }) => /* @__PURE__ */ (0, import_jsx_runtime64.jsxs)(import_react76.default.Fragment, { children: [
9295
- /* @__PURE__ */ (0, import_jsx_runtime64.jsx)("dt", { css: descriptionListLabelStyles, children: label }),
9299
+ children: items == null ? void 0 : items.map(({ label: label2, value }) => /* @__PURE__ */ (0, import_jsx_runtime64.jsxs)(import_react76.default.Fragment, { children: [
9300
+ /* @__PURE__ */ (0, import_jsx_runtime64.jsx)("dt", { css: descriptionListLabelStyles, children: label2 }),
9296
9301
  /* @__PURE__ */ (0, import_jsx_runtime64.jsx)("dd", { css: descriptionListValueStyles, children: typeof value === "boolean" ? /* @__PURE__ */ (0, import_jsx_runtime64.jsx)(DescriptionListValueBoolean, { value }) : value })
9297
- ] }, label))
9302
+ ] }, label2))
9298
9303
  }
9299
9304
  );
9300
9305
  }
@@ -11224,10 +11229,7 @@ function useDebouncedCallback(callback, deps, delay, maxWait = 0) {
11224
11229
  // src/components/KeyValueInput/KeyValueInput.styles.ts
11225
11230
  init_emotion_jsx_shim();
11226
11231
  var import_react105 = require("@emotion/react");
11227
- var LabelStyles = import_react105.css`
11228
- text-transform: uppercase;
11229
- font-weight: var(--fw-medium);
11230
- `;
11232
+ var LabelStyles = import_react105.css``;
11231
11233
  var SelectKeyValueRowStyles = import_react105.css`
11232
11234
  animation: var(--duration-fast) var(--timing-ease-out);
11233
11235
  align-items: flex-start;
@@ -11250,15 +11252,19 @@ var generateItemId = (item, index) => item.uniqueId || item.value || item.key ||
11250
11252
  var KeyValueInput = ({
11251
11253
  value,
11252
11254
  onChange,
11253
- label = "Options",
11255
+ label: label2 = "Options",
11254
11256
  newItemDefault = initialSelectOptionValue,
11255
11257
  keyLabel = "Text",
11256
11258
  valueLabel = "Value",
11259
+ iconLabel = "Icon",
11257
11260
  keyInfoPopover,
11258
11261
  valueInfoPopover,
11262
+ iconInfoPopover,
11259
11263
  disabled: disabled2,
11260
11264
  errors,
11261
- onFocusChange
11265
+ onFocusChange,
11266
+ showIconColumn = false,
11267
+ renderIconSelector
11262
11268
  }) => {
11263
11269
  const [isDragging, setIsDragging] = (0, import_react106.useState)(false);
11264
11270
  const popoverStoresMap = (0, import_react106.useRef)({});
@@ -11330,35 +11336,58 @@ var KeyValueInput = ({
11330
11336
  }
11331
11337
  }, [value.length]);
11332
11338
  return /* @__PURE__ */ (0, import_jsx_runtime91.jsxs)(VerticalRhythm, { gap: "xs", children: [
11333
- /* @__PURE__ */ (0, import_jsx_runtime91.jsx)(HorizontalRhythm, { align: "center", justify: "space-between", css: { marginBottom: "var(--spacing-xs)" }, children: /* @__PURE__ */ (0, import_jsx_runtime91.jsx)("span", { css: LabelStyles, children: label }) }),
11334
- /* @__PURE__ */ (0, import_jsx_runtime91.jsxs)("div", { css: [SelectKeyValueRowStyles, { paddingLeft: "var(--spacing-base)" }], children: [
11335
- /* @__PURE__ */ (0, import_jsx_runtime91.jsxs)(HorizontalRhythm, { align: "center", gap: "xs", children: [
11336
- /* @__PURE__ */ (0, import_jsx_runtime91.jsx)("span", { children: keyLabel }),
11337
- !keyInfoPopover ? null : /* @__PURE__ */ (0, import_jsx_runtime91.jsx)(
11338
- Popover3,
11339
- {
11340
- buttonText: `${keyLabel} info`,
11341
- iconColor: "gray",
11342
- placement: "bottom-start",
11343
- onInit: ({ store }) => popoverStoresMap.current.label = store,
11344
- children: keyInfoPopover
11345
- }
11346
- )
11347
- ] }),
11348
- /* @__PURE__ */ (0, import_jsx_runtime91.jsxs)(HorizontalRhythm, { align: "center", gap: "xs", children: [
11349
- /* @__PURE__ */ (0, import_jsx_runtime91.jsx)("span", { children: valueLabel }),
11350
- !valueInfoPopover ? null : /* @__PURE__ */ (0, import_jsx_runtime91.jsx)(
11351
- Popover3,
11352
- {
11353
- buttonText: `${valueLabel} info`,
11354
- iconColor: "gray",
11355
- placement: "bottom-start",
11356
- onInit: ({ store }) => popoverStoresMap.current.value = store,
11357
- children: valueInfoPopover
11358
- }
11359
- )
11360
- ] })
11361
- ] }),
11339
+ /* @__PURE__ */ (0, import_jsx_runtime91.jsx)(HorizontalRhythm, { align: "center", justify: "space-between", css: { marginBottom: "var(--spacing-xs)" }, children: /* @__PURE__ */ (0, import_jsx_runtime91.jsx)("span", { css: LabelStyles, children: label2 }) }),
11340
+ /* @__PURE__ */ (0, import_jsx_runtime91.jsxs)(
11341
+ "div",
11342
+ {
11343
+ css: [
11344
+ SelectKeyValueRowStyles,
11345
+ { paddingLeft: "var(--spacing-base)" },
11346
+ showIconColumn && { gridTemplateColumns: "1fr 1fr 1fr" }
11347
+ ],
11348
+ children: [
11349
+ showIconColumn && /* @__PURE__ */ (0, import_jsx_runtime91.jsxs)(HorizontalRhythm, { align: "center", gap: "xs", children: [
11350
+ /* @__PURE__ */ (0, import_jsx_runtime91.jsx)("span", { children: iconLabel }),
11351
+ !iconInfoPopover ? null : /* @__PURE__ */ (0, import_jsx_runtime91.jsx)(
11352
+ Popover3,
11353
+ {
11354
+ buttonText: `${iconLabel} info`,
11355
+ iconColor: "gray",
11356
+ placement: "bottom-start",
11357
+ onInit: ({ store }) => popoverStoresMap.current.icon = store,
11358
+ children: iconInfoPopover
11359
+ }
11360
+ )
11361
+ ] }),
11362
+ /* @__PURE__ */ (0, import_jsx_runtime91.jsxs)(HorizontalRhythm, { align: "center", gap: "xs", children: [
11363
+ /* @__PURE__ */ (0, import_jsx_runtime91.jsx)("span", { children: keyLabel }),
11364
+ !keyInfoPopover ? null : /* @__PURE__ */ (0, import_jsx_runtime91.jsx)(
11365
+ Popover3,
11366
+ {
11367
+ buttonText: `${keyLabel} info`,
11368
+ iconColor: "gray",
11369
+ placement: "bottom-start",
11370
+ onInit: ({ store }) => popoverStoresMap.current.label = store,
11371
+ children: keyInfoPopover
11372
+ }
11373
+ )
11374
+ ] }),
11375
+ /* @__PURE__ */ (0, import_jsx_runtime91.jsxs)(HorizontalRhythm, { align: "center", gap: "xs", children: [
11376
+ /* @__PURE__ */ (0, import_jsx_runtime91.jsx)("span", { children: valueLabel }),
11377
+ !valueInfoPopover ? null : /* @__PURE__ */ (0, import_jsx_runtime91.jsx)(
11378
+ Popover3,
11379
+ {
11380
+ buttonText: `${valueLabel} info`,
11381
+ iconColor: "gray",
11382
+ placement: "bottom-start",
11383
+ onInit: ({ store }) => popoverStoresMap.current.value = store,
11384
+ children: valueInfoPopover
11385
+ }
11386
+ )
11387
+ ] })
11388
+ ]
11389
+ }
11390
+ ),
11362
11391
  /* @__PURE__ */ (0, import_jsx_runtime91.jsx)(VerticalRhythm, { gap: "sm", children: /* @__PURE__ */ (0, import_jsx_runtime91.jsx)(
11363
11392
  import_core.DndContext,
11364
11393
  {
@@ -11376,6 +11405,7 @@ var KeyValueInput = ({
11376
11405
  value: item,
11377
11406
  keyLabel: `${keyLabel}, row ${index}`,
11378
11407
  valueLabel: `${valueLabel}, row ${index}`,
11408
+ iconLabel: `${iconLabel}, row ${index}`,
11379
11409
  disabled: disabled2,
11380
11410
  disabledDelete: value.length <= 1,
11381
11411
  disabledDnd: value.length === 1,
@@ -11384,25 +11414,21 @@ var KeyValueInput = ({
11384
11414
  onDelete: () => handleDeleteOptionRow(index),
11385
11415
  onFocusChange: handleFocusChange,
11386
11416
  "data-testid": "key-value-input-item",
11387
- onEnter: handleAddOptionRow
11417
+ onEnter: handleAddOptionRow,
11418
+ showIconColumn,
11419
+ renderIconSelector
11388
11420
  },
11389
11421
  isDragging ? id : index
11390
11422
  )) })
11391
11423
  }
11392
11424
  ) }),
11393
- /* @__PURE__ */ (0, import_jsx_runtime91.jsxs)(
11394
- Button,
11425
+ /* @__PURE__ */ (0, import_jsx_runtime91.jsx)(
11426
+ AddListButton,
11395
11427
  {
11396
- "data-testid": "add-input-row-action",
11397
- buttonType: "secondaryInvert",
11398
- size: "xs",
11399
- onClick: handleAddOptionRow,
11428
+ onButtonClick: handleAddOptionRow,
11400
11429
  disabled: disabled2,
11401
- css: { marginTop: "var(--spacing-base)" },
11402
- children: [
11403
- /* @__PURE__ */ (0, import_jsx_runtime91.jsx)(Icon, { icon: "math-plus", iconColor: "currentColor", size: "0.85rem" }),
11404
- " Add option"
11405
- ]
11430
+ "data-testid": "add-input-row-action",
11431
+ css: { marginTop: "var(--spacing-sm)", marginLeft: "var(--spacing-base)" }
11406
11432
  }
11407
11433
  )
11408
11434
  ] });
@@ -11413,6 +11439,7 @@ var KeyValueInputItem = ({
11413
11439
  keyLabel,
11414
11440
  value,
11415
11441
  valueLabel,
11442
+ iconLabel,
11416
11443
  disabled: disabled2,
11417
11444
  onChange,
11418
11445
  onDelete,
@@ -11420,7 +11447,9 @@ var KeyValueInputItem = ({
11420
11447
  onFocusChange,
11421
11448
  disabledDelete = false,
11422
11449
  disabledDnd = false,
11423
- onEnter
11450
+ onEnter,
11451
+ showIconColumn = false,
11452
+ renderIconSelector
11424
11453
  }) => {
11425
11454
  const { attributes, listeners, setNodeRef, transform, transition, setActivatorNodeRef, isSorting } = (0, import_sortable.useSortable)({
11426
11455
  id,
@@ -11437,62 +11466,98 @@ var KeyValueInputItem = ({
11437
11466
  };
11438
11467
  return /* @__PURE__ */ (0, import_jsx_runtime91.jsxs)("div", { css: rowWrapper, ref: setNodeRef, style, children: [
11439
11468
  /* @__PURE__ */ (0, import_jsx_runtime91.jsx)(DragHandle, { disableDnd: disabledDnd, ref: setActivatorNodeRef, ...attributes, ...listeners }),
11440
- /* @__PURE__ */ (0, import_jsx_runtime91.jsxs)("div", { css: SelectKeyValueRowStyles, "data-testid": "key-value-input-item", children: [
11441
- /* @__PURE__ */ (0, import_jsx_runtime91.jsx)(
11442
- Input,
11443
- {
11444
- ref: firstInputRef,
11445
- label: keyLabel,
11446
- showLabel: false,
11447
- disabled: disabled2,
11448
- onChange: (e) => {
11449
- const hasStoredValue = value.value !== value.key;
11450
- onChange == null ? void 0 : onChange({
11451
- key: e.currentTarget.value,
11452
- value: hasStoredValue ? value.value : e.currentTarget.value
11453
- });
11454
- },
11455
- onBlur: () => onFocusChange == null ? void 0 : onFocusChange(false),
11456
- onFocus: () => onFocusChange == null ? void 0 : onFocusChange(true),
11457
- onKeyDown: handleEnter,
11458
- value: value.key,
11459
- errorMessage: isSorting ? void 0 : error == null ? void 0 : error.key,
11460
- "data-testid": "key"
11461
- }
11462
- ),
11463
- /* @__PURE__ */ (0, import_jsx_runtime91.jsx)(
11464
- Input,
11465
- {
11466
- label: valueLabel,
11467
- showLabel: false,
11468
- disabled: disabled2,
11469
- onChange: (e) => {
11470
- onChange == null ? void 0 : onChange({
11471
- key: value.key,
11472
- value: e.currentTarget.value
11473
- });
11474
- },
11475
- onBlur: () => onFocusChange == null ? void 0 : onFocusChange(false),
11476
- onFocus: () => onFocusChange == null ? void 0 : onFocusChange(true),
11477
- onKeyDown: handleEnter,
11478
- value: value.value,
11479
- errorMessage: isSorting ? void 0 : error == null ? void 0 : error.value,
11480
- "data-testid": "value"
11481
- }
11482
- ),
11483
- /* @__PURE__ */ (0, import_jsx_runtime91.jsx)("div", { css: { marginTop: "1rem" }, children: /* @__PURE__ */ (0, import_jsx_runtime91.jsx)(
11484
- Button,
11485
- {
11486
- type: "button",
11487
- buttonType: "ghostDestructive",
11488
- "data-testid": "delete-row",
11489
- onClick: onDelete,
11490
- disabled: disabled2 || disabledDelete,
11491
- size: "zero",
11492
- children: /* @__PURE__ */ (0, import_jsx_runtime91.jsx)(Icon, { icon: "trash", size: 16, iconColor: "currentColor" })
11493
- }
11494
- ) })
11495
- ] })
11469
+ /* @__PURE__ */ (0, import_jsx_runtime91.jsxs)(
11470
+ "div",
11471
+ {
11472
+ css: [
11473
+ SelectKeyValueRowStyles,
11474
+ showIconColumn && { gridTemplateColumns: "1fr 1fr 1fr 1.5rem" }
11475
+ ],
11476
+ "data-testid": "key-value-input-item",
11477
+ children: [
11478
+ showIconColumn && /* @__PURE__ */ (0, import_jsx_runtime91.jsx)("div", { children: renderIconSelector ? renderIconSelector({
11479
+ value: value.icon,
11480
+ onChange: (icon) => onChange == null ? void 0 : onChange({ ...value, icon }),
11481
+ disabled: disabled2
11482
+ }) : /* @__PURE__ */ (0, import_jsx_runtime91.jsx)(
11483
+ Input,
11484
+ {
11485
+ label: iconLabel,
11486
+ showLabel: false,
11487
+ disabled: disabled2,
11488
+ onChange: (e) => {
11489
+ onChange == null ? void 0 : onChange({
11490
+ ...value,
11491
+ icon: e.currentTarget.value
11492
+ });
11493
+ },
11494
+ onBlur: () => onFocusChange == null ? void 0 : onFocusChange(false),
11495
+ onFocus: () => onFocusChange == null ? void 0 : onFocusChange(true),
11496
+ onKeyDown: handleEnter,
11497
+ value: value.icon || "",
11498
+ errorMessage: isSorting ? void 0 : error == null ? void 0 : error.icon,
11499
+ "data-testid": "icon"
11500
+ }
11501
+ ) }),
11502
+ /* @__PURE__ */ (0, import_jsx_runtime91.jsx)(
11503
+ Input,
11504
+ {
11505
+ ref: firstInputRef,
11506
+ label: keyLabel,
11507
+ showLabel: false,
11508
+ disabled: disabled2,
11509
+ onChange: (e) => {
11510
+ const hasStoredValue = value.value !== value.key;
11511
+ onChange == null ? void 0 : onChange({
11512
+ key: e.currentTarget.value,
11513
+ value: hasStoredValue ? value.value : e.currentTarget.value,
11514
+ icon: value.icon
11515
+ });
11516
+ },
11517
+ onBlur: () => onFocusChange == null ? void 0 : onFocusChange(false),
11518
+ onFocus: () => onFocusChange == null ? void 0 : onFocusChange(true),
11519
+ onKeyDown: handleEnter,
11520
+ value: value.key,
11521
+ errorMessage: isSorting ? void 0 : error == null ? void 0 : error.key,
11522
+ "data-testid": "key"
11523
+ }
11524
+ ),
11525
+ /* @__PURE__ */ (0, import_jsx_runtime91.jsx)(
11526
+ Input,
11527
+ {
11528
+ label: valueLabel,
11529
+ showLabel: false,
11530
+ disabled: disabled2,
11531
+ onChange: (e) => {
11532
+ onChange == null ? void 0 : onChange({
11533
+ key: value.key,
11534
+ value: e.currentTarget.value,
11535
+ icon: value.icon
11536
+ });
11537
+ },
11538
+ onBlur: () => onFocusChange == null ? void 0 : onFocusChange(false),
11539
+ onFocus: () => onFocusChange == null ? void 0 : onFocusChange(true),
11540
+ onKeyDown: handleEnter,
11541
+ value: value.value,
11542
+ errorMessage: isSorting ? void 0 : error == null ? void 0 : error.value,
11543
+ "data-testid": "value"
11544
+ }
11545
+ ),
11546
+ /* @__PURE__ */ (0, import_jsx_runtime91.jsx)("div", { css: { marginTop: "1rem" }, children: /* @__PURE__ */ (0, import_jsx_runtime91.jsx)(
11547
+ Button,
11548
+ {
11549
+ type: "button",
11550
+ buttonType: "ghostDestructive",
11551
+ "data-testid": "delete-row",
11552
+ onClick: onDelete,
11553
+ disabled: disabled2 || disabledDelete,
11554
+ size: "zero",
11555
+ children: /* @__PURE__ */ (0, import_jsx_runtime91.jsx)(Icon, { icon: "trash", size: 16, iconColor: "currentColor" })
11556
+ }
11557
+ ) })
11558
+ ]
11559
+ }
11560
+ )
11496
11561
  ] });
11497
11562
  };
11498
11563
 
@@ -11698,15 +11763,15 @@ var ScrollableListInner = import_react111.css`
11698
11763
 
11699
11764
  // src/components/List/ScrollableList.tsx
11700
11765
  var import_jsx_runtime95 = require("@emotion/react/jsx-runtime");
11701
- var ScrollableList = ({ label, children, ...props }) => {
11766
+ var ScrollableList = ({ label: label2, children, ...props }) => {
11702
11767
  return /* @__PURE__ */ (0, import_jsx_runtime95.jsxs)("div", { css: [ScrollableListContainer, scrollbarStyles], ...props, children: [
11703
- label ? /* @__PURE__ */ (0, import_jsx_runtime95.jsx)(
11768
+ label2 ? /* @__PURE__ */ (0, import_jsx_runtime95.jsx)(
11704
11769
  "span",
11705
11770
  {
11706
11771
  css: import_react112.css`
11707
11772
  ${labelText}
11708
11773
  `,
11709
- children: label
11774
+ children: label2
11710
11775
  }
11711
11776
  ) : null,
11712
11777
  /* @__PURE__ */ (0, import_jsx_runtime95.jsx)("div", { css: [ScrollableListInner, scrollbarStyles], children })
@@ -11785,7 +11850,7 @@ var ScrollableListIconVisible = import_react113.css`
11785
11850
  // src/components/List/ScrollableListInputItem.tsx
11786
11851
  var import_jsx_runtime96 = require("@emotion/react/jsx-runtime");
11787
11852
  var ScrollableListInputItem = ({
11788
- label,
11853
+ label: label2,
11789
11854
  icon,
11790
11855
  active: active2,
11791
11856
  disableShadow = false,
@@ -11805,7 +11870,7 @@ var ScrollableListInputItem = ({
11805
11870
  children: /* @__PURE__ */ (0, import_jsx_runtime96.jsxs)("label", { "data-testid": labelTestId, css: ScrollableListInputLabel, children: [
11806
11871
  /* @__PURE__ */ (0, import_jsx_runtime96.jsxs)("span", { css: ScrollableListInputText, children: [
11807
11872
  icon,
11808
- label
11873
+ label2
11809
11874
  ] }),
11810
11875
  /* @__PURE__ */ (0, import_jsx_runtime96.jsx)("div", { css: ScrollableListHiddenInput, children }),
11811
11876
  /* @__PURE__ */ (0, import_jsx_runtime96.jsx)(
@@ -12195,20 +12260,20 @@ var LoadingOverlay = ({
12195
12260
  );
12196
12261
  };
12197
12262
  var LoadingAnimation = ({
12198
- label,
12263
+ label: label2,
12199
12264
  width,
12200
- css: css111,
12265
+ css: css112,
12201
12266
  isPaused
12202
12267
  }) => {
12203
12268
  return /* @__PURE__ */ (0, import_jsx_runtime99.jsxs)(
12204
12269
  "div",
12205
12270
  {
12206
- "aria-label": label,
12271
+ "aria-label": label2,
12207
12272
  style: {
12208
12273
  width: typeof width === "number" ? `${width}px` : width,
12209
12274
  height: typeof width === "number" ? `${width}px` : width
12210
12275
  },
12211
- css: [loaderAnimationContainer, css111],
12276
+ css: [loaderAnimationContainer, css112],
12212
12277
  className: `loader-container${isPaused ? " paused" : ""}`,
12213
12278
  children: [
12214
12279
  /* @__PURE__ */ (0, import_jsx_runtime99.jsxs)("div", { className: "bottom-cubes", children: [
@@ -13322,10 +13387,10 @@ var ParameterShellContext = (0, import_react129.createContext)({
13322
13387
  }
13323
13388
  });
13324
13389
  var useParameterShell = () => {
13325
- const { id, label, hiddenLabel, errorMessage, handleManuallySetErrorMessage } = (0, import_react129.useContext)(ParameterShellContext);
13390
+ const { id, label: label2, hiddenLabel, errorMessage, handleManuallySetErrorMessage } = (0, import_react129.useContext)(ParameterShellContext);
13326
13391
  return {
13327
13392
  id,
13328
- label,
13393
+ label: label2,
13329
13394
  hiddenLabel,
13330
13395
  errorMessage,
13331
13396
  handleManuallySetErrorMessage
@@ -13841,16 +13906,6 @@ var toggleInput2 = import_react138.css`
13841
13906
  color: var(--white);
13842
13907
  }
13843
13908
 
13844
- &:indeterminate,
13845
- &:indeterminate:hover,
13846
- &:indeterminate:focus {
13847
- background: var(--accent-dark-active)
13848
- url('data:image/svg+xml;base64,PHN2ZwogIHdpZHRoPSIxNiIKICBoZWlnaHQ9IjE2IgogIHZpZXdCb3g9IjAgMCAyNCAyNCIKICBmaWxsPSJub25lIgogIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIKPgogIDxwYXRoCiAgICBkPSJNNCAxMkM0IDExLjQ0NzcgNC40NDc3MiAxMSA1IDExSDE5QzE5LjU1MjMgMTEgMjAgMTEuNDQ3NyAyMCAxMkMyMCAxMi41NTIzIDE5LjU1MjMgMTMgMTkgMTNINUM0LjQ0NzcyIDEzIDQgMTIuNTUyMyA0IDEyWiIKICAgIGZpbGw9IndoaXRlIgogIC8+Cjwvc3ZnPg==')
13849
- no-repeat center center;
13850
- border-color: var(--accent-dark-active);
13851
- color: var(--white);
13852
- }
13853
-
13854
13909
  &:hover {
13855
13910
  border-color: var(--accent-dark-hover);
13856
13911
  }
@@ -13861,6 +13916,17 @@ var toggleInput2 = import_react138.css`
13861
13916
  border-color: var(--gray-300);
13862
13917
  }
13863
13918
  `;
13919
+ var toggleInputIndeterminateState = import_react138.css`
13920
+ &:indeterminate,
13921
+ &:indeterminate:hover,
13922
+ &:indeterminate:focus {
13923
+ background: var(--accent-dark-active)
13924
+ url('data:image/svg+xml;base64,PHN2ZwogIHdpZHRoPSIxNiIKICBoZWlnaHQ9IjE2IgogIHZpZXdCb3g9IjAgMCAyNCAyNCIKICBmaWxsPSJub25lIgogIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIKPgogIDxwYXRoCiAgICBkPSJNNCAxMkM0IDExLjQ0NzcgNC40NDc3MiAxMSA1IDExSDE5QzE5LjU1MjMgMTEgMjAgMTEuNDQ3NyAyMCAxMkMyMCAxMi41NTIzIDE5LjU1MjMgMTMgMTkgMTNINUM0LjQ0NzcyIDEzIDQgMTIuNTUyMyA0IDEyWiIKICAgIGZpbGw9IndoaXRlIgogIC8+Cjwvc3ZnPg==')
13925
+ no-repeat center center;
13926
+ border-color: var(--accent-dark-active);
13927
+ color: var(--white);
13928
+ }
13929
+ `;
13864
13930
  var inlineLabel2 = import_react138.css`
13865
13931
  color: var(--inline-label-color);
13866
13932
  padding-left: var(--spacing-md);
@@ -14004,7 +14070,7 @@ init_emotion_jsx_shim();
14004
14070
  var import_react139 = require("react");
14005
14071
  var import_jsx_runtime120 = require("@emotion/react/jsx-runtime");
14006
14072
  var ParameterMenuButton = (0, import_react139.forwardRef)(
14007
- ({ label, children, disabled: disabled2 }, ref) => {
14073
+ ({ label: label2, children, disabled: disabled2 }, ref) => {
14008
14074
  return /* @__PURE__ */ (0, import_jsx_runtime120.jsx)(
14009
14075
  Menu,
14010
14076
  {
@@ -14015,7 +14081,7 @@ var ParameterMenuButton = (0, import_react139.forwardRef)(
14015
14081
  className: "parameter-menu",
14016
14082
  css: [inputMenu, inputMenuHover],
14017
14083
  type: "button",
14018
- "aria-label": `${label} options`,
14084
+ "aria-label": `${label2} options`,
14019
14085
  ref,
14020
14086
  disabled: disabled2,
14021
14087
  children: /* @__PURE__ */ (0, import_jsx_runtime120.jsx)(Icon, { icon: "more-alt", iconColor: "currentColor", size: "0.9rem" })
@@ -14059,7 +14125,7 @@ var import_jsx_runtime121 = require("@emotion/react/jsx-runtime");
14059
14125
  var extractParameterProps = (props) => {
14060
14126
  const {
14061
14127
  id,
14062
- label,
14128
+ label: label2,
14063
14129
  caption,
14064
14130
  captionTestId,
14065
14131
  errorMessage,
@@ -14077,7 +14143,7 @@ var extractParameterProps = (props) => {
14077
14143
  return {
14078
14144
  shellProps: {
14079
14145
  id,
14080
- label,
14146
+ label: label2,
14081
14147
  caption,
14082
14148
  captionTestId,
14083
14149
  errorMessage,
@@ -14095,7 +14161,7 @@ var extractParameterProps = (props) => {
14095
14161
  };
14096
14162
  };
14097
14163
  var ParameterShell = ({
14098
- label,
14164
+ label: label2,
14099
14165
  labelLeadingIcon,
14100
14166
  labelTrailingIcon,
14101
14167
  hiddenLabel,
@@ -14121,7 +14187,7 @@ var ParameterShell = ({
14121
14187
  return /* @__PURE__ */ (0, import_jsx_runtime121.jsxs)("div", { css: inputContainer2, ...props, id, children: [
14122
14188
  hiddenLabel || title ? null : /* @__PURE__ */ (0, import_jsx_runtime121.jsxs)(ParameterLabel, { id, css: labelText2, children: [
14123
14189
  labelLeadingIcon != null ? labelLeadingIcon : null,
14124
- label,
14190
+ label2,
14125
14191
  labelTrailingIcon != null ? labelTrailingIcon : null
14126
14192
  ] }),
14127
14193
  !title ? null : /* @__PURE__ */ (0, import_jsx_runtime121.jsxs)(ParameterLabel, { id, asSpan: true, testId: "parameter-label", children: [
@@ -14144,13 +14210,13 @@ var ParameterShell = ({
14144
14210
  children: actionItems
14145
14211
  }
14146
14212
  ) : null,
14147
- menuItems ? /* @__PURE__ */ (0, import_jsx_runtime121.jsx)(ParameterMenuButton, { label: `${label} menu`, disabled: props.disabled, children: menuItems }) : null,
14213
+ menuItems ? /* @__PURE__ */ (0, import_jsx_runtime121.jsx)(ParameterMenuButton, { label: `${label2} menu`, disabled: props.disabled, children: menuItems }) : null,
14148
14214
  /* @__PURE__ */ (0, import_jsx_runtime121.jsx)(
14149
14215
  ParameterShellContext.Provider,
14150
14216
  {
14151
14217
  value: {
14152
14218
  id,
14153
- label,
14219
+ label: label2,
14154
14220
  hiddenLabel,
14155
14221
  errorMessage: errorMessaging,
14156
14222
  handleManuallySetErrorMessage: (message) => setErrorMessage(message)
@@ -14193,7 +14259,7 @@ var ParameterImage = (0, import_react143.forwardRef)(
14193
14259
  );
14194
14260
  var ParameterImageInner = (0, import_react143.forwardRef)((props, ref) => {
14195
14261
  const { value } = props;
14196
- const { id, label, hiddenLabel, errorMessage } = useParameterShell();
14262
+ const { id, label: label2, hiddenLabel, errorMessage } = useParameterShell();
14197
14263
  const deferredValue = (0, import_react143.useDeferredValue)(value);
14198
14264
  return /* @__PURE__ */ (0, import_jsx_runtime122.jsxs)(import_jsx_runtime122.Fragment, { children: [
14199
14265
  /* @__PURE__ */ (0, import_jsx_runtime122.jsx)(
@@ -14203,7 +14269,7 @@ var ParameterImageInner = (0, import_react143.forwardRef)((props, ref) => {
14203
14269
  type: "text",
14204
14270
  id,
14205
14271
  ref,
14206
- "aria-label": hiddenLabel && typeof label === "string" ? label : void 0,
14272
+ "aria-label": hiddenLabel && typeof label2 === "string" ? label2 : void 0,
14207
14273
  autoComplete: "off",
14208
14274
  ...props
14209
14275
  }
@@ -14221,7 +14287,7 @@ var ParameterInput = (0, import_react144.forwardRef)((props, ref) => {
14221
14287
  return /* @__PURE__ */ (0, import_jsx_runtime123.jsx)(ParameterShell, { "data-testid": "parameter-input", ...shellProps, children: /* @__PURE__ */ (0, import_jsx_runtime123.jsx)(ParameterInputInner, { ref, ...innerProps }) });
14222
14288
  });
14223
14289
  var ParameterInputInner = (0, import_react144.forwardRef)(({ enableMouseWheel = false, ...props }, ref) => {
14224
- const { id, label, hiddenLabel } = useParameterShell();
14290
+ const { id, label: label2, hiddenLabel } = useParameterShell();
14225
14291
  const isNumberInputAndMouseWheelDisabled = enableMouseWheel !== true && props.type === "number";
14226
14292
  return /* @__PURE__ */ (0, import_jsx_runtime123.jsx)(
14227
14293
  "input",
@@ -14229,7 +14295,7 @@ var ParameterInputInner = (0, import_react144.forwardRef)(({ enableMouseWheel =
14229
14295
  css: input3,
14230
14296
  id,
14231
14297
  type: props.type || "text",
14232
- "aria-label": hiddenLabel && typeof label === "string" ? label : void 0,
14298
+ "aria-label": hiddenLabel && typeof label2 === "string" ? label2 : void 0,
14233
14299
  autoComplete: "off",
14234
14300
  ref,
14235
14301
  onWheel: isNumberInputAndMouseWheelDisabled ? disableMouseWheelEvent : void 0,
@@ -14267,7 +14333,7 @@ var ParameterLink = (0, import_react145.forwardRef)(
14267
14333
  );
14268
14334
  var ParameterLinkInner = (0, import_react145.forwardRef)(
14269
14335
  ({ externalLink, onConnectLink, disabled: disabled2, buttonText = "Select link", ...props }, ref) => {
14270
- const { id, label, hiddenLabel } = useParameterShell();
14336
+ const { id, label: label2, hiddenLabel } = useParameterShell();
14271
14337
  if (!props.value)
14272
14338
  return /* @__PURE__ */ (0, import_jsx_runtime124.jsx)("button", { type: "button", css: dataConnectButton, disabled: disabled2, onClick: onConnectLink, children: buttonText });
14273
14339
  return /* @__PURE__ */ (0, import_jsx_runtime124.jsxs)("div", { css: inputWrapper, children: [
@@ -14279,7 +14345,7 @@ var ParameterLinkInner = (0, import_react145.forwardRef)(
14279
14345
  readOnly: Boolean(props.value),
14280
14346
  id,
14281
14347
  ref,
14282
- "aria-label": hiddenLabel && typeof label === "string" ? label : void 0,
14348
+ "aria-label": hiddenLabel && typeof label2 === "string" ? label2 : void 0,
14283
14349
  ...props
14284
14350
  }
14285
14351
  ),
@@ -14321,7 +14387,7 @@ var ParameterMultiSelect = ({ disabled: disabled2 = false, ...props }) => {
14321
14387
  };
14322
14388
  var ParameterMultiSelectInner = (props) => {
14323
14389
  var _a;
14324
- const { id, label } = useParameterShell();
14390
+ const { id, label: label2 } = useParameterShell();
14325
14391
  return /* @__PURE__ */ (0, import_jsx_runtime125.jsx)(
14326
14392
  InputComboBox,
14327
14393
  {
@@ -14331,7 +14397,7 @@ var ParameterMultiSelectInner = (props) => {
14331
14397
  isMulti: true,
14332
14398
  isClearable: (_a = props.isClearable) != null ? _a : false,
14333
14399
  id,
14334
- "aria-label": typeof label === "string" ? label : void 0,
14400
+ "aria-label": typeof label2 === "string" ? label2 : void 0,
14335
14401
  classNamePrefix: "parameter-multi-select-combobox",
14336
14402
  styles: {
14337
14403
  menuPortal: (base) => ({
@@ -14384,7 +14450,7 @@ var ParameterNameAndPublicIdInput = ({
14384
14450
  publicIdError,
14385
14451
  readOnly = false,
14386
14452
  hasInitialPublicIdField,
14387
- label = "Name",
14453
+ label: label2 = "Name",
14388
14454
  warnOverLength,
14389
14455
  nameIdField = "name",
14390
14456
  nameCaption,
@@ -14405,7 +14471,7 @@ var ParameterNameAndPublicIdInput = ({
14405
14471
  {
14406
14472
  id: nameIdField,
14407
14473
  name: nameIdField,
14408
- label,
14474
+ label: label2,
14409
14475
  "data-testid": "name-field",
14410
14476
  autoComplete: "off",
14411
14477
  "data-af": "true",
@@ -14449,9 +14515,658 @@ var ParameterNameAndPublicIdInput = ({
14449
14515
  ] });
14450
14516
  };
14451
14517
 
14518
+ // src/components/ParameterInputs/ParameterNumberSlider.tsx
14519
+ init_emotion_jsx_shim();
14520
+ var import_react149 = require("react");
14521
+
14522
+ // src/components/Slider/index.ts
14523
+ init_emotion_jsx_shim();
14524
+
14525
+ // src/components/Slider/Slider.tsx
14526
+ init_emotion_jsx_shim();
14527
+ var import_react148 = require("react");
14528
+
14529
+ // src/components/Slider/SliderLabels.tsx
14530
+ init_emotion_jsx_shim();
14531
+ var import_react147 = require("react");
14532
+
14533
+ // src/components/Slider/styles/Slider.styles.ts
14534
+ init_emotion_jsx_shim();
14535
+ var import_react146 = require("@emotion/react");
14536
+ var thumbSize = "20px";
14537
+ var disabledThumbStyles = import_react146.css`
14538
+ background: var(--gray-500);
14539
+ background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cline x1='4' y1='9' x2='16' y2='9' stroke='%23ffffff' stroke-width='4' stroke-linecap='round'/%3E%3C/svg%3E");
14540
+ background-repeat: no-repeat;
14541
+ background-position: center;
14542
+ background-size: 12px 12px;
14543
+ `;
14544
+ var container3 = import_react146.css`
14545
+ display: flex;
14546
+ align-items: flex-start;
14547
+ gap: var(--spacing-base);
14548
+ width: 100%;
14549
+ `;
14550
+ var sliderContainer = import_react146.css`
14551
+ flex: 1;
14552
+ display: flex;
14553
+ flex-direction: column;
14554
+ `;
14555
+ var sliderTrackContainer = import_react146.css`
14556
+ position: relative;
14557
+ padding: var(--spacing-xs) 0;
14558
+ `;
14559
+ var progressTrack = import_react146.css`
14560
+ position: absolute;
14561
+ top: 50%;
14562
+ left: 0;
14563
+ right: 0;
14564
+ height: 4px;
14565
+ transform: translateY(-50%);
14566
+ margin-top: -3px;
14567
+ border-radius: var(--rounded-sm);
14568
+ `;
14569
+ var progressTrackBackground = import_react146.css`
14570
+ position: absolute;
14571
+ top: 0;
14572
+ left: 0;
14573
+ right: 0;
14574
+ bottom: 0;
14575
+ background: var(--gray-200);
14576
+ border-radius: var(--rounded-sm);
14577
+ box-shadow: 0 0 0 1px white;
14578
+ `;
14579
+ var progressTrackFill = import_react146.css`
14580
+ position: absolute;
14581
+ top: 0;
14582
+ left: 0;
14583
+ bottom: 0;
14584
+ background: var(--accent-light);
14585
+ border-radius: var(--rounded-sm);
14586
+ `;
14587
+ var tickMarksContainer = import_react146.css`
14588
+ position: relative;
14589
+ height: 1rem;
14590
+ margin-top: calc(-1 * var(--spacing-base) + var(--spacing-xs));
14591
+ `;
14592
+ var tickMark = import_react146.css`
14593
+ position: absolute;
14594
+ top: 0;
14595
+ width: 0.5px;
14596
+ height: 8px;
14597
+ background-color: var(--gray-300);
14598
+ `;
14599
+ var largeTickMark = import_react146.css`
14600
+ position: absolute;
14601
+ top: 0;
14602
+ width: 1px;
14603
+ height: 12px;
14604
+ background-color: var(--gray-400);
14605
+ transform: translateX(-50%);
14606
+ `;
14607
+ var slider = import_react146.css`
14608
+ appearance: none;
14609
+ width: 100%;
14610
+ width: calc(100% + ${thumbSize});
14611
+ left: calc(-${thumbSize} / 2);
14612
+ height: ${thumbSize};
14613
+ background: transparent;
14614
+ outline: none;
14615
+ cursor: pointer;
14616
+ position: relative;
14617
+ z-index: 3;
14618
+
14619
+ &:disabled {
14620
+ cursor: not-allowed;
14621
+ }
14622
+
14623
+ /* Webkit (Chrome, Safari) */
14624
+ &::-webkit-slider-track {
14625
+ width: 100%;
14626
+ height: 4px;
14627
+ background: transparent;
14628
+ border-radius: var(--rounded-sm);
14629
+ }
14630
+
14631
+ &::-webkit-slider-thumb {
14632
+ appearance: none;
14633
+ height: ${thumbSize};
14634
+ width: ${thumbSize};
14635
+ border-radius: 50%;
14636
+ background: var(--accent-dark);
14637
+ cursor: pointer;
14638
+ border: 2px solid var(--white);
14639
+ box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
14640
+ position: relative;
14641
+ z-index: 2;
14642
+
14643
+ &:hover {
14644
+ background: var(--accent-dark-hover);
14645
+ box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15);
14646
+ }
14647
+
14648
+ &:active {
14649
+ background: var(--accent-dark-active);
14650
+ box-shadow: 0 2px 8px rgba(0, 0, 0, 0.2);
14651
+ }
14652
+ }
14653
+
14654
+ &:disabled::-webkit-slider-thumb {
14655
+ ${disabledThumbStyles}
14656
+
14657
+ &:hover,
14658
+ &:active {
14659
+ ${disabledThumbStyles}
14660
+ }
14661
+ }
14662
+
14663
+ /* Firefox */
14664
+ &::-moz-range-track {
14665
+ width: 100%;
14666
+ height: 4px;
14667
+ background: transparent;
14668
+ border-radius: var(--rounded-sm);
14669
+ border: none;
14670
+ }
14671
+
14672
+ &::-moz-range-thumb {
14673
+ height: ${thumbSize};
14674
+ width: ${thumbSize};
14675
+ border-radius: 50%;
14676
+ background: var(--accent-dark);
14677
+ cursor: pointer;
14678
+ border: 2px solid var(--white);
14679
+ box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
14680
+
14681
+ &:hover {
14682
+ background: var(--accent-dark-hover);
14683
+ box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15);
14684
+ }
14685
+
14686
+ &:active {
14687
+ background: var(--accent-dark-active);
14688
+ box-shadow: 0 2px 8px rgba(0, 0, 0, 0.2);
14689
+ }
14690
+ }
14691
+
14692
+ &:disabled::-moz-range-thumb {
14693
+ ${disabledThumbStyles}
14694
+
14695
+ &:hover,
14696
+ &:active {
14697
+ ${disabledThumbStyles}
14698
+ }
14699
+ }
14700
+
14701
+ /* Focus states */
14702
+ &:focus {
14703
+ outline: none;
14704
+ }
14705
+
14706
+ &:focus::-webkit-slider-thumb {
14707
+ box-shadow:
14708
+ 0 2px 4px rgba(0, 0, 0, 0.1),
14709
+ 0 0 0 3px var(--accent-light);
14710
+ }
14711
+
14712
+ &:focus::-moz-range-thumb {
14713
+ box-shadow:
14714
+ 0 2px 4px rgba(0, 0, 0, 0.1),
14715
+ 0 0 0 3px var(--accent-light);
14716
+ }
14717
+ `;
14718
+ var labelsContainer = import_react146.css`
14719
+ position: relative;
14720
+ height: 1.5rem;
14721
+ width: 100%;
14722
+ `;
14723
+ var label = import_react146.css`
14724
+ position: absolute;
14725
+ top: 0;
14726
+ font-size: var(--text-sm);
14727
+ color: var(--gray-500);
14728
+ text-align: center;
14729
+
14730
+ /* Truncation for long labels */
14731
+ white-space: nowrap;
14732
+ overflow: hidden;
14733
+ text-overflow: ellipsis;
14734
+
14735
+ /* Set max width to prevent labels from extending too far */
14736
+ max-width: 25%;
14737
+
14738
+ /* Default centering transform */
14739
+ transform: translateX(-50%);
14740
+
14741
+ /* Smooth transitions for label changes */
14742
+ transition:
14743
+ opacity var(--duration-fast) var(--timing-ease-out),
14744
+ transform var(--duration-fast) var(--timing-ease-out);
14745
+
14746
+ /* Handle edge cases for first and last labels */
14747
+ &[data-position='0'] {
14748
+ transform: translateX(0);
14749
+ text-align: left;
14750
+ max-width: 50%;
14751
+ }
14752
+
14753
+ &[data-position='100'] {
14754
+ transform: translateX(-100%);
14755
+ text-align: right;
14756
+ max-width: 50%;
14757
+ }
14758
+
14759
+ /* Handle single label case by centering it */
14760
+ &:only-child {
14761
+ left: 50% !important;
14762
+ transform: translateX(-50%);
14763
+ text-align: center;
14764
+ max-width: 100%;
14765
+ }
14766
+ `;
14767
+ var numberInputContainer = import_react146.css`
14768
+ flex-shrink: 0;
14769
+ min-width: 2rem;
14770
+ margin-top: var(--spacing-sm);
14771
+ `;
14772
+ var numberInput2 = import_react146.css`
14773
+ appearance: none;
14774
+ background-color: var(--white);
14775
+ border: 1px solid var(--gray-300);
14776
+ border-radius: var(--rounded-sm);
14777
+ color: var(--gray-700);
14778
+ padding: var(--spacing-sm);
14779
+ width: 100%;
14780
+ font-size: var(--text-sm);
14781
+ text-align: center;
14782
+ transition:
14783
+ background var(--duration-fast) var(--timing-ease-out),
14784
+ border-color var(--duration-fast) var(--timing-ease-out),
14785
+ color var(--duration-fast) var(--timing-ease-out),
14786
+ box-shadow var(--duration-fast) var(--timing-ease-out);
14787
+
14788
+ &::placeholder {
14789
+ color: var(--gray-400);
14790
+ }
14791
+
14792
+ &:hover {
14793
+ border-color: var(--accent-dark-hover);
14794
+ }
14795
+
14796
+ &:focus {
14797
+ border-color: var(--accent-dark-active);
14798
+ box-shadow: var(--elevation-100);
14799
+ outline: none;
14800
+ }
14801
+
14802
+ &:disabled {
14803
+ cursor: not-allowed;
14804
+ color: var(--gray-300);
14805
+ border-color: var(--gray-300);
14806
+ background-color: var(--gray-50);
14807
+ }
14808
+
14809
+ /* Hide number input spinners */
14810
+ &::-webkit-outer-spin-button,
14811
+ &::-webkit-inner-spin-button {
14812
+ appearance: none;
14813
+ margin: 0;
14814
+ }
14815
+
14816
+ &[type='number'] {
14817
+ -moz-appearance: textfield;
14818
+ }
14819
+ `;
14820
+
14821
+ // src/components/Slider/SliderLabels.tsx
14822
+ var import_jsx_runtime127 = require("@emotion/react/jsx-runtime");
14823
+ function estimateLabelWidth(text) {
14824
+ const fontSize = 14;
14825
+ const avgCharWidthRatio = 0.7;
14826
+ const avgCharWidth = fontSize * avgCharWidthRatio;
14827
+ const basePadding = 24;
14828
+ return Math.ceil(text.length * avgCharWidth + basePadding);
14829
+ }
14830
+ function generateSymmetricIndices(totalCount) {
14831
+ if (totalCount <= 0) return [];
14832
+ if (totalCount === 1) return [[0]];
14833
+ if (totalCount === 2) return [[0, totalCount - 1]];
14834
+ const levels = [];
14835
+ levels.push([0, totalCount - 1]);
14836
+ if (totalCount % 2 === 1) {
14837
+ levels.push([Math.floor(totalCount / 2)]);
14838
+ } else {
14839
+ const mid1 = Math.floor(totalCount / 2) - 1;
14840
+ const mid2 = Math.floor(totalCount / 2);
14841
+ levels.push([mid1, mid2]);
14842
+ }
14843
+ let currentDivisions = 4;
14844
+ while (currentDivisions <= totalCount) {
14845
+ const newIndices = [];
14846
+ for (let i = 1; i < currentDivisions; i += 2) {
14847
+ const index = Math.round(i / currentDivisions * (totalCount - 1));
14848
+ if (index > 0 && index < totalCount - 1) {
14849
+ newIndices.push(index);
14850
+ }
14851
+ }
14852
+ if (newIndices.length > 0) {
14853
+ levels.push(newIndices);
14854
+ }
14855
+ currentDivisions *= 2;
14856
+ }
14857
+ return levels;
14858
+ }
14859
+ function labelsWouldOverlap(pos1, width1, pos2, width2, containerWidth) {
14860
+ const pixelPos1 = pos1 / 100 * containerWidth;
14861
+ const pixelPos2 = pos2 / 100 * containerWidth;
14862
+ const buffer = 8;
14863
+ const left1 = pixelPos1 - width1 / 2 - buffer / 2;
14864
+ const right1 = pixelPos1 + width1 / 2 + buffer / 2;
14865
+ const left2 = pixelPos2 - width2 / 2 - buffer / 2;
14866
+ const right2 = pixelPos2 + width2 / 2 + buffer / 2;
14867
+ return !(right1 < left2 || right2 < left1);
14868
+ }
14869
+ function calculateLabelVisibility(ticks, currentValue, containerWidth) {
14870
+ const labelsWithTicks = ticks.map((tick, index) => ({ tick, index })).filter(({ tick }) => tick.label);
14871
+ if (labelsWithTicks.length === 0) {
14872
+ return [];
14873
+ }
14874
+ const currentSelectionIndex = labelsWithTicks.findIndex(({ tick }) => tick.position === currentValue);
14875
+ const distributionLevels = generateSymmetricIndices(labelsWithTicks.length);
14876
+ let visibleIndices = new Set(distributionLevels[0] || []);
14877
+ if (currentSelectionIndex !== -1) {
14878
+ visibleIndices.add(currentSelectionIndex);
14879
+ }
14880
+ for (let levelIndex = 1; levelIndex < distributionLevels.length; levelIndex++) {
14881
+ const candidateIndices = new Set(visibleIndices);
14882
+ for (const index of distributionLevels[levelIndex]) {
14883
+ candidateIndices.add(index);
14884
+ }
14885
+ const maxLabelsForWidth = Math.max(2, Math.floor(containerWidth / 100));
14886
+ if (candidateIndices.size > maxLabelsForWidth) {
14887
+ break;
14888
+ }
14889
+ const candidateArray = Array.from(candidateIndices).sort((a, b) => a - b);
14890
+ let hasOverlap = false;
14891
+ for (let i = 0; i < candidateArray.length - 1; i++) {
14892
+ const curr = labelsWithTicks[candidateArray[i]];
14893
+ const next = labelsWithTicks[candidateArray[i + 1]];
14894
+ const currWidth = estimateLabelWidth(curr.tick.label || "");
14895
+ const nextWidth = estimateLabelWidth(next.tick.label || "");
14896
+ if (labelsWouldOverlap(curr.tick.percentage, currWidth, next.tick.percentage, nextWidth, containerWidth)) {
14897
+ hasOverlap = true;
14898
+ break;
14899
+ }
14900
+ }
14901
+ if (!hasOverlap) {
14902
+ visibleIndices = candidateIndices;
14903
+ } else {
14904
+ break;
14905
+ }
14906
+ }
14907
+ if (currentSelectionIndex !== -1 && visibleIndices.has(currentSelectionIndex)) {
14908
+ const currentTick = labelsWithTicks[currentSelectionIndex].tick;
14909
+ const currentWidth = estimateLabelWidth(currentTick.label || "");
14910
+ const sortedVisible = Array.from(visibleIndices).sort((a, b) => a - b);
14911
+ const currentIndexInVisible = sortedVisible.indexOf(currentSelectionIndex);
14912
+ if (currentIndexInVisible > 0) {
14913
+ const leftIndex = sortedVisible[currentIndexInVisible - 1];
14914
+ const leftTick = labelsWithTicks[leftIndex].tick;
14915
+ const leftWidth = estimateLabelWidth(leftTick.label || "");
14916
+ if (labelsWouldOverlap(
14917
+ leftTick.percentage,
14918
+ leftWidth,
14919
+ currentTick.percentage,
14920
+ currentWidth,
14921
+ containerWidth
14922
+ )) {
14923
+ visibleIndices.delete(leftIndex);
14924
+ }
14925
+ }
14926
+ if (currentIndexInVisible < sortedVisible.length - 1) {
14927
+ const rightIndex = sortedVisible[currentIndexInVisible + 1];
14928
+ const rightTick = labelsWithTicks[rightIndex].tick;
14929
+ const rightWidth = estimateLabelWidth(rightTick.label || "");
14930
+ if (labelsWouldOverlap(
14931
+ currentTick.percentage,
14932
+ currentWidth,
14933
+ rightTick.percentage,
14934
+ rightWidth,
14935
+ containerWidth
14936
+ )) {
14937
+ visibleIndices.delete(rightIndex);
14938
+ }
14939
+ }
14940
+ }
14941
+ return labelsWithTicks.map(({ index }, arrayIndex) => ({
14942
+ tickIndex: index,
14943
+ isVisible: visibleIndices.has(arrayIndex),
14944
+ priority: visibleIndices.has(arrayIndex) ? 1 : 10
14945
+ // Simple priority for visible vs hidden
14946
+ }));
14947
+ }
14948
+ function SliderLabels({ ticks, currentValue, containerWidth = 300 }) {
14949
+ const containerRef = (0, import_react147.useRef)(null);
14950
+ const [measuredWidth, setMeasuredWidth] = (0, import_react147.useState)(containerWidth);
14951
+ (0, import_react147.useEffect)(() => {
14952
+ if (containerRef.current) {
14953
+ const resizeObserver = new ResizeObserver((entries) => {
14954
+ for (const entry of entries) {
14955
+ setMeasuredWidth(entry.contentRect.width);
14956
+ }
14957
+ });
14958
+ resizeObserver.observe(containerRef.current);
14959
+ setMeasuredWidth(containerRef.current.offsetWidth);
14960
+ return () => resizeObserver.disconnect();
14961
+ }
14962
+ }, []);
14963
+ const labelVisibilities = calculateLabelVisibility(ticks, currentValue, measuredWidth);
14964
+ const visibilityMap = new Map(labelVisibilities.map((lv) => [lv.tickIndex, lv.isVisible]));
14965
+ return /* @__PURE__ */ (0, import_jsx_runtime127.jsx)("div", { ref: containerRef, css: labelsContainer, children: ticks.map((tick, index) => ({ tick, index })).filter(({ tick }) => tick.label).map(({ tick, index }) => {
14966
+ var _a;
14967
+ const isVisible = (_a = visibilityMap.get(index)) != null ? _a : false;
14968
+ return /* @__PURE__ */ (0, import_jsx_runtime127.jsx)(
14969
+ "div",
14970
+ {
14971
+ css: label,
14972
+ style: {
14973
+ left: `${tick.percentage}%`,
14974
+ opacity: isVisible ? 1 : 0,
14975
+ pointerEvents: isVisible ? "auto" : "none"
14976
+ },
14977
+ "data-position": tick.percentage === 0 ? "0" : tick.percentage === 100 ? "100" : void 0,
14978
+ title: tick.label,
14979
+ children: tick.label
14980
+ },
14981
+ `label-${index}-${tick.position}`
14982
+ );
14983
+ }) });
14984
+ }
14985
+
14986
+ // src/components/Slider/Slider.tsx
14987
+ var import_jsx_runtime128 = require("@emotion/react/jsx-runtime");
14988
+ var Slider = (0, import_react148.forwardRef)(
14989
+ ({
14990
+ value,
14991
+ onChange,
14992
+ onBlur,
14993
+ min: propMin,
14994
+ max: propMax,
14995
+ step: propStep,
14996
+ options,
14997
+ showNumberInput = !options,
14998
+ // Default: show for numeric mode, hide for options mode
14999
+ disabled: disabled2 = false,
15000
+ "aria-label": ariaLabel,
15001
+ id,
15002
+ name
15003
+ }, ref) => {
15004
+ const isOptionsMode = Boolean(options && options.length > 0);
15005
+ const { min, max, step, smallTicks, largeTicks } = (0, import_react148.useMemo)(() => {
15006
+ if (isOptionsMode && options) {
15007
+ return {
15008
+ min: 0,
15009
+ max: options.length - 1,
15010
+ step: 1,
15011
+ smallTicks: [],
15012
+ // No small ticks for options mode
15013
+ largeTicks: options.map((option, index) => ({
15014
+ position: index,
15015
+ percentage: index / (options.length - 1) * 100,
15016
+ label: option.text,
15017
+ isLarge: true
15018
+ }))
15019
+ };
15020
+ }
15021
+ const numericMin = propMin != null ? propMin : 0;
15022
+ const numericMax = propMax != null ? propMax : 100;
15023
+ const numericStep = propStep != null ? propStep : numericMax - numericMin > 20 ? Math.ceil((numericMax - numericMin) / 20) : 1;
15024
+ const range = numericMax - numericMin;
15025
+ const totalSteps = Math.floor(range / numericStep);
15026
+ const smallTicks2 = [];
15027
+ if (totalSteps <= 100) {
15028
+ for (let i = 0; i <= totalSteps; i++) {
15029
+ const position = numericMin + i * numericStep;
15030
+ const percentage = (position - numericMin) / range * 100;
15031
+ smallTicks2.push({
15032
+ position,
15033
+ percentage,
15034
+ isLarge: false
15035
+ });
15036
+ }
15037
+ } else {
15038
+ const tickInterval = Math.ceil(totalSteps / 100);
15039
+ for (let i = 0; i <= totalSteps; i += tickInterval) {
15040
+ const position = numericMin + i * numericStep;
15041
+ const percentage = (position - numericMin) / range * 100;
15042
+ smallTicks2.push({
15043
+ position,
15044
+ percentage,
15045
+ isLarge: false
15046
+ });
15047
+ }
15048
+ }
15049
+ const largeTicks2 = [
15050
+ { position: numericMin, percentage: 0, label: numericMin.toString(), isLarge: true },
15051
+ { position: numericMax, percentage: 100, label: numericMax.toString(), isLarge: true }
15052
+ ];
15053
+ if (range >= 20) {
15054
+ const middlePosition = numericMin + range / 2;
15055
+ largeTicks2.push({
15056
+ position: middlePosition,
15057
+ percentage: 50,
15058
+ label: Math.round(middlePosition).toString(),
15059
+ isLarge: true
15060
+ });
15061
+ }
15062
+ return {
15063
+ min: numericMin,
15064
+ max: numericMax,
15065
+ step: numericStep,
15066
+ smallTicks: smallTicks2,
15067
+ largeTicks: largeTicks2
15068
+ };
15069
+ }, [isOptionsMode, options, propMin, propMax, propStep]);
15070
+ const clampedValue = Math.min(Math.max(value, min), max);
15071
+ const handleSliderChange = (0, import_react148.useCallback)(
15072
+ (event) => {
15073
+ const newValue = Number(event.target.value);
15074
+ onChange(newValue);
15075
+ },
15076
+ [onChange]
15077
+ );
15078
+ const handleNumberInputChange = (0, import_react148.useCallback)(
15079
+ (event) => {
15080
+ const newValue = event.target.value === "" ? min : Number(event.target.value);
15081
+ onChange(newValue);
15082
+ },
15083
+ [onChange, min]
15084
+ );
15085
+ const fillPercentage = (clampedValue - min) / (max - min) * 100;
15086
+ return /* @__PURE__ */ (0, import_jsx_runtime128.jsxs)("div", { css: container3, children: [
15087
+ /* @__PURE__ */ (0, import_jsx_runtime128.jsxs)("div", { css: sliderContainer, children: [
15088
+ /* @__PURE__ */ (0, import_jsx_runtime128.jsxs)("div", { css: sliderTrackContainer, children: [
15089
+ /* @__PURE__ */ (0, import_jsx_runtime128.jsxs)("div", { css: progressTrack, children: [
15090
+ /* @__PURE__ */ (0, import_jsx_runtime128.jsx)("div", { css: progressTrackBackground }),
15091
+ /* @__PURE__ */ (0, import_jsx_runtime128.jsx)("div", { css: progressTrackFill, style: { width: `${fillPercentage}%` } })
15092
+ ] }),
15093
+ /* @__PURE__ */ (0, import_jsx_runtime128.jsx)(
15094
+ "input",
15095
+ {
15096
+ ref,
15097
+ type: "range",
15098
+ id,
15099
+ name,
15100
+ min,
15101
+ max,
15102
+ step,
15103
+ value: clampedValue,
15104
+ onChange: handleSliderChange,
15105
+ onBlur,
15106
+ disabled: disabled2,
15107
+ "aria-label": ariaLabel,
15108
+ css: slider
15109
+ }
15110
+ )
15111
+ ] }),
15112
+ /* @__PURE__ */ (0, import_jsx_runtime128.jsxs)("div", { css: tickMarksContainer, children: [
15113
+ smallTicks.map((tick, index) => /* @__PURE__ */ (0, import_jsx_runtime128.jsx)("div", { css: tickMark, style: { left: `${tick.percentage}%` } }, `small-${index}`)),
15114
+ largeTicks.map((tick, index) => /* @__PURE__ */ (0, import_jsx_runtime128.jsx)(
15115
+ "div",
15116
+ {
15117
+ css: largeTickMark,
15118
+ style: { left: `${tick.percentage}%` }
15119
+ },
15120
+ `large-${index}`
15121
+ ))
15122
+ ] }),
15123
+ largeTicks.some((tick) => tick.label) && /* @__PURE__ */ (0, import_jsx_runtime128.jsx)(SliderLabels, { ticks: largeTicks, currentValue: clampedValue })
15124
+ ] }),
15125
+ showNumberInput && !isOptionsMode && /* @__PURE__ */ (0, import_jsx_runtime128.jsx)("div", { css: numberInputContainer, children: /* @__PURE__ */ (0, import_jsx_runtime128.jsx)(
15126
+ "input",
15127
+ {
15128
+ type: "number",
15129
+ value: clampedValue,
15130
+ onChange: handleNumberInputChange,
15131
+ onBlur,
15132
+ disabled: disabled2,
15133
+ min,
15134
+ max,
15135
+ step,
15136
+ css: numberInput2
15137
+ }
15138
+ ) })
15139
+ ] });
15140
+ }
15141
+ );
15142
+ Slider.displayName = "Slider";
15143
+
15144
+ // src/components/ParameterInputs/ParameterNumberSlider.tsx
15145
+ var import_jsx_runtime129 = require("@emotion/react/jsx-runtime");
15146
+ var ParameterNumberSlider = (0, import_react149.forwardRef)(
15147
+ (props, ref) => {
15148
+ const { shellProps, innerProps } = extractParameterProps(props);
15149
+ return /* @__PURE__ */ (0, import_jsx_runtime129.jsx)(ParameterShell, { "data-testid": "parameter-number-slider", ...shellProps, children: /* @__PURE__ */ (0, import_jsx_runtime129.jsx)(ParameterNumberSliderInner, { ref, ...innerProps }) });
15150
+ }
15151
+ );
15152
+ var ParameterNumberSliderInner = (0, import_react149.forwardRef)(({ ...props }, ref) => {
15153
+ const { id, label: label2, hiddenLabel } = useParameterShell();
15154
+ return /* @__PURE__ */ (0, import_jsx_runtime129.jsx)(
15155
+ Slider,
15156
+ {
15157
+ ref,
15158
+ id,
15159
+ "aria-label": hiddenLabel && typeof label2 === "string" ? label2 : void 0,
15160
+ ...props
15161
+ }
15162
+ );
15163
+ });
15164
+ ParameterNumberSlider.displayName = "ParameterNumberSlider";
15165
+ ParameterNumberSliderInner.displayName = "ParameterNumberSliderInner";
15166
+
14452
15167
  // src/components/ParameterInputs/ParameterRichText.tsx
14453
15168
  init_emotion_jsx_shim();
14454
- var import_react159 = require("@emotion/react");
15169
+ var import_react163 = require("@emotion/react");
14455
15170
  var import_list3 = require("@lexical/list");
14456
15171
  var import_markdown = require("@lexical/markdown");
14457
15172
  var import_LexicalComposer = require("@lexical/react/LexicalComposer");
@@ -14588,7 +15303,7 @@ var defaultParameterConfiguration = {
14588
15303
  // src/components/ParameterInputs/ParameterRichText.tsx
14589
15304
  var import_fast_equals2 = require("fast-equals");
14590
15305
  var import_lexical10 = require("lexical");
14591
- var import_react160 = require("react");
15306
+ var import_react164 = require("react");
14592
15307
 
14593
15308
  // src/components/ParameterInputs/rich-text/CustomCodeNode.ts
14594
15309
  init_emotion_jsx_shim();
@@ -14611,10 +15326,10 @@ init_emotion_jsx_shim();
14611
15326
  var import_LexicalComposerContext = require("@lexical/react/LexicalComposerContext");
14612
15327
  var import_utils4 = require("@lexical/utils");
14613
15328
  var import_lexical = require("lexical");
14614
- var import_react146 = require("react");
15329
+ var import_react150 = require("react");
14615
15330
  function DisableStylesPlugin() {
14616
15331
  const [editor] = (0, import_LexicalComposerContext.useLexicalComposerContext)();
14617
- (0, import_react146.useEffect)(() => {
15332
+ (0, import_react150.useEffect)(() => {
14618
15333
  return (0, import_utils4.mergeRegister)(
14619
15334
  // Disable text alignment on paragraph nodes
14620
15335
  editor.registerNodeTransform(import_lexical.ParagraphNode, (node) => {
@@ -14875,10 +15590,10 @@ init_emotion_jsx_shim();
14875
15590
  var import_LexicalComposerContext2 = require("@lexical/react/LexicalComposerContext");
14876
15591
  var import_utils5 = require("@lexical/utils");
14877
15592
  var import_lexical2 = require("lexical");
14878
- var import_react147 = require("react");
15593
+ var import_react151 = require("react");
14879
15594
  var ImprovedAssetSelectionPlugin = () => {
14880
15595
  const [editor] = (0, import_LexicalComposerContext2.useLexicalComposerContext)();
14881
- (0, import_react147.useEffect)(() => {
15596
+ (0, import_react151.useEffect)(() => {
14882
15597
  editor.getRootElement();
14883
15598
  const onRootClick = (event) => {
14884
15599
  if (event.target !== editor.getRootElement()) {
@@ -14927,13 +15642,13 @@ var ImprovedAssetSelectionPlugin_default = ImprovedAssetSelectionPlugin;
14927
15642
 
14928
15643
  // src/components/ParameterInputs/rich-text/LinkNodePlugin.tsx
14929
15644
  init_emotion_jsx_shim();
14930
- var import_react148 = require("@emotion/react");
15645
+ var import_react152 = require("@emotion/react");
14931
15646
  var import_LexicalComposerContext3 = require("@lexical/react/LexicalComposerContext");
14932
15647
  var import_LexicalNodeEventPlugin = require("@lexical/react/LexicalNodeEventPlugin");
14933
15648
  var import_utils6 = require("@lexical/utils");
14934
15649
  var import_fast_equals = require("fast-equals");
14935
15650
  var import_lexical4 = require("lexical");
14936
- var import_react149 = require("react");
15651
+ var import_react153 = require("react");
14937
15652
 
14938
15653
  // src/components/ParameterInputs/rich-text/utils.ts
14939
15654
  init_emotion_jsx_shim();
@@ -14992,7 +15707,7 @@ var normalizeStateForDeepEqualComparison = (editorState) => {
14992
15707
  };
14993
15708
 
14994
15709
  // src/components/ParameterInputs/rich-text/LinkNodePlugin.tsx
14995
- var import_jsx_runtime127 = require("@emotion/react/jsx-runtime");
15710
+ var import_jsx_runtime130 = require("@emotion/react/jsx-runtime");
14996
15711
  var isProjectMapLinkValue = (value) => {
14997
15712
  return (value == null ? void 0 : value.type) === "projectMapNode" && Boolean(
14998
15713
  value.nodeId && value.path && value.projectMapId
@@ -15281,17 +15996,17 @@ var OPEN_LINK_NODE_MODAL_COMMAND = (0, import_lexical4.createCommand)(
15281
15996
  );
15282
15997
  var LINK_POPOVER_OFFSET_X = 0;
15283
15998
  var LINK_POPOVER_OFFSET_Y = 8;
15284
- var linkPopover = import_react148.css`
15999
+ var linkPopover = import_react152.css`
15285
16000
  position: absolute;
15286
16001
  z-index: 11;
15287
16002
  `;
15288
- var linkPopoverContainer = import_react148.css`
16003
+ var linkPopoverContainer = import_react152.css`
15289
16004
  ${Popover};
15290
16005
  ${PopoverVariantSmall};
15291
16006
  align-items: center;
15292
16007
  display: flex;
15293
16008
  `;
15294
- var linkPopoverAnchor = import_react148.css`
16009
+ var linkPopoverAnchor = import_react152.css`
15295
16010
  ${link}
15296
16011
  ${linkColorDefault}
15297
16012
  `;
@@ -15304,17 +16019,17 @@ function LinkNodePlugin({
15304
16019
  return path;
15305
16020
  };
15306
16021
  const [editor] = (0, import_LexicalComposerContext3.useLexicalComposerContext)();
15307
- const [linkPopoverState, setLinkPopoverState] = (0, import_react149.useState)();
15308
- const linkPopoverElRef = (0, import_react149.useRef)(null);
15309
- const [isEditorFocused, setIsEditorFocused] = (0, import_react149.useState)(false);
15310
- const [isLinkPopoverFocused, setIsLinkPopoverFocused] = (0, import_react149.useState)(false);
15311
- (0, import_react149.useEffect)(() => {
16022
+ const [linkPopoverState, setLinkPopoverState] = (0, import_react153.useState)();
16023
+ const linkPopoverElRef = (0, import_react153.useRef)(null);
16024
+ const [isEditorFocused, setIsEditorFocused] = (0, import_react153.useState)(false);
16025
+ const [isLinkPopoverFocused, setIsLinkPopoverFocused] = (0, import_react153.useState)(false);
16026
+ (0, import_react153.useEffect)(() => {
15312
16027
  if (!isEditorFocused && !isLinkPopoverFocused) {
15313
16028
  setLinkPopoverState(void 0);
15314
16029
  return;
15315
16030
  }
15316
16031
  }, [isEditorFocused, isLinkPopoverFocused]);
15317
- (0, import_react149.useEffect)(() => {
16032
+ (0, import_react153.useEffect)(() => {
15318
16033
  if (!editor.hasNodes([LinkNode])) {
15319
16034
  throw new Error("LinkNode not registered on editor");
15320
16035
  }
@@ -15418,7 +16133,7 @@ function LinkNodePlugin({
15418
16133
  )
15419
16134
  );
15420
16135
  }, [editor, onConnectLink]);
15421
- const maybeShowLinkToolbar = (0, import_react149.useCallback)(() => {
16136
+ const maybeShowLinkToolbar = (0, import_react153.useCallback)(() => {
15422
16137
  if (!editor.isEditable()) {
15423
16138
  return;
15424
16139
  }
@@ -15452,7 +16167,7 @@ function LinkNodePlugin({
15452
16167
  }
15453
16168
  });
15454
16169
  }, [editor, positioningAnchorEl]);
15455
- (0, import_react149.useEffect)(() => {
16170
+ (0, import_react153.useEffect)(() => {
15456
16171
  return editor.registerUpdateListener(({ editorState }) => {
15457
16172
  requestAnimationFrame(() => {
15458
16173
  editorState.read(() => {
@@ -15479,8 +16194,8 @@ function LinkNodePlugin({
15479
16194
  });
15480
16195
  });
15481
16196
  };
15482
- return /* @__PURE__ */ (0, import_jsx_runtime127.jsxs)(import_jsx_runtime127.Fragment, { children: [
15483
- /* @__PURE__ */ (0, import_jsx_runtime127.jsx)(
16197
+ return /* @__PURE__ */ (0, import_jsx_runtime130.jsxs)(import_jsx_runtime130.Fragment, { children: [
16198
+ /* @__PURE__ */ (0, import_jsx_runtime130.jsx)(
15484
16199
  import_LexicalNodeEventPlugin.NodeEventPlugin,
15485
16200
  {
15486
16201
  nodeType: LinkNode,
@@ -15490,7 +16205,7 @@ function LinkNodePlugin({
15490
16205
  }
15491
16206
  }
15492
16207
  ),
15493
- linkPopoverState ? /* @__PURE__ */ (0, import_jsx_runtime127.jsx)(
16208
+ linkPopoverState ? /* @__PURE__ */ (0, import_jsx_runtime130.jsx)(
15494
16209
  "div",
15495
16210
  {
15496
16211
  css: linkPopover,
@@ -15499,8 +16214,8 @@ function LinkNodePlugin({
15499
16214
  top: linkPopoverState.position.y
15500
16215
  },
15501
16216
  ref: linkPopoverElRef,
15502
- children: /* @__PURE__ */ (0, import_jsx_runtime127.jsxs)("div", { css: linkPopoverContainer, children: [
15503
- linkPopoverState.node.__link.type === "projectMapNode" ? linkPopoverState.node.__link.path : /* @__PURE__ */ (0, import_jsx_runtime127.jsx)(
16217
+ children: /* @__PURE__ */ (0, import_jsx_runtime130.jsxs)("div", { css: linkPopoverContainer, children: [
16218
+ linkPopoverState.node.__link.type === "projectMapNode" ? linkPopoverState.node.__link.path : /* @__PURE__ */ (0, import_jsx_runtime130.jsx)(
15504
16219
  "a",
15505
16220
  {
15506
16221
  href: parsePath(
@@ -15512,7 +16227,7 @@ function LinkNodePlugin({
15512
16227
  children: parsePath(linkPopoverState.node.__link.path)
15513
16228
  }
15514
16229
  ),
15515
- /* @__PURE__ */ (0, import_jsx_runtime127.jsx)(
16230
+ /* @__PURE__ */ (0, import_jsx_runtime130.jsx)(
15516
16231
  Button,
15517
16232
  {
15518
16233
  size: "xs",
@@ -15520,7 +16235,7 @@ function LinkNodePlugin({
15520
16235
  onEditLinkNode(linkPopoverState.node);
15521
16236
  },
15522
16237
  buttonType: "ghost",
15523
- children: /* @__PURE__ */ (0, import_jsx_runtime127.jsx)(Icon, { icon: "pen", size: "1rem", title: "Edit link" })
16238
+ children: /* @__PURE__ */ (0, import_jsx_runtime130.jsx)(Icon, { icon: "pen", size: "1rem", title: "Edit link" })
15524
16239
  }
15525
16240
  )
15526
16241
  ] })
@@ -15540,7 +16255,7 @@ var import_list = require("@lexical/list");
15540
16255
  var import_LexicalComposerContext4 = require("@lexical/react/LexicalComposerContext");
15541
16256
  var import_utils9 = require("@lexical/utils");
15542
16257
  var import_lexical5 = require("lexical");
15543
- var import_react150 = require("react");
16258
+ var import_react154 = require("react");
15544
16259
  function isIndentPermitted(maxDepth) {
15545
16260
  const selection = (0, import_lexical5.$getSelection)();
15546
16261
  if (!(0, import_lexical5.$isRangeSelection)(selection)) {
@@ -15595,8 +16310,8 @@ function $indentOverTab(selection) {
15595
16310
  }
15596
16311
  function ListIndentPlugin({ maxDepth }) {
15597
16312
  const [editor] = (0, import_LexicalComposerContext4.useLexicalComposerContext)();
15598
- const isInListItemNode = (0, import_react150.useRef)(false);
15599
- (0, import_react150.useEffect)(() => {
16313
+ const isInListItemNode = (0, import_react154.useRef)(false);
16314
+ (0, import_react154.useEffect)(() => {
15600
16315
  return editor.registerCommand(
15601
16316
  import_lexical5.SELECTION_CHANGE_COMMAND,
15602
16317
  () => {
@@ -15613,7 +16328,7 @@ function ListIndentPlugin({ maxDepth }) {
15613
16328
  import_lexical5.COMMAND_PRIORITY_NORMAL
15614
16329
  );
15615
16330
  }, [editor]);
15616
- (0, import_react150.useEffect)(() => {
16331
+ (0, import_react154.useEffect)(() => {
15617
16332
  return (0, import_utils9.mergeRegister)(
15618
16333
  editor.registerCommand(
15619
16334
  import_lexical5.INDENT_CONTENT_COMMAND,
@@ -15643,13 +16358,13 @@ function ListIndentPlugin({ maxDepth }) {
15643
16358
 
15644
16359
  // src/components/ParameterInputs/rich-text/TableActionMenuPlugin.tsx
15645
16360
  init_emotion_jsx_shim();
15646
- var import_react151 = require("@emotion/react");
16361
+ var import_react155 = require("@emotion/react");
15647
16362
  var import_LexicalComposerContext5 = require("@lexical/react/LexicalComposerContext");
15648
16363
  var import_useLexicalEditable = require("@lexical/react/useLexicalEditable");
15649
16364
  var import_table = require("@lexical/table");
15650
16365
  var import_lexical6 = require("lexical");
15651
- var import_react152 = require("react");
15652
- var import_jsx_runtime128 = require("@emotion/react/jsx-runtime");
16366
+ var import_react156 = require("react");
16367
+ var import_jsx_runtime131 = require("@emotion/react/jsx-runtime");
15653
16368
  function computeSelectionCount(selection) {
15654
16369
  const selectionShape = selection.getShape();
15655
16370
  return {
@@ -15657,21 +16372,21 @@ function computeSelectionCount(selection) {
15657
16372
  rows: selectionShape.toY - selectionShape.fromY + 1
15658
16373
  };
15659
16374
  }
15660
- var tableActionMenuTrigger = import_react151.css`
16375
+ var tableActionMenuTrigger = import_react155.css`
15661
16376
  position: absolute;
15662
16377
  transform: translate(calc(-100% - 1px), 1px);
15663
16378
  `;
15664
- var TableActionMenuTrigger = (0, import_react152.forwardRef)((props, ref) => {
16379
+ var TableActionMenuTrigger = (0, import_react156.forwardRef)((props, ref) => {
15665
16380
  const { tableCellEl, positioningAnchorEl, ...rest } = props;
15666
- const [coordinates, setCoordinates] = (0, import_react152.useState)({ x: 0, y: 0 });
15667
- (0, import_react152.useLayoutEffect)(() => {
16381
+ const [coordinates, setCoordinates] = (0, import_react156.useState)({ x: 0, y: 0 });
16382
+ (0, import_react156.useLayoutEffect)(() => {
15668
16383
  const rect = tableCellEl.getBoundingClientRect();
15669
16384
  const parentRect = positioningAnchorEl.getBoundingClientRect();
15670
16385
  const relativeX = rect.right - parentRect.left + positioningAnchorEl.scrollLeft;
15671
16386
  const relativeY = rect.top - parentRect.top + positioningAnchorEl.scrollTop;
15672
16387
  setCoordinates({ x: relativeX, y: relativeY });
15673
16388
  }, [tableCellEl, positioningAnchorEl]);
15674
- return /* @__PURE__ */ (0, import_jsx_runtime128.jsx)(
16389
+ return /* @__PURE__ */ (0, import_jsx_runtime131.jsx)(
15675
16390
  IconButton,
15676
16391
  {
15677
16392
  ref,
@@ -15685,7 +16400,7 @@ var TableActionMenuTrigger = (0, import_react152.forwardRef)((props, ref) => {
15685
16400
  size: "xs",
15686
16401
  buttonType: "unimportant",
15687
16402
  ...rest,
15688
- children: /* @__PURE__ */ (0, import_jsx_runtime128.jsx)(Icon, { icon: "chevron-down", size: "1rem", iconColor: "currentColor" })
16403
+ children: /* @__PURE__ */ (0, import_jsx_runtime131.jsx)(Icon, { icon: "chevron-down", size: "1rem", iconColor: "currentColor" })
15689
16404
  }
15690
16405
  );
15691
16406
  });
@@ -15697,16 +16412,16 @@ function TableActionMenu({
15697
16412
  positioningAnchorEl
15698
16413
  }) {
15699
16414
  const [editor] = (0, import_LexicalComposerContext5.useLexicalComposerContext)();
15700
- const [tableCellNode, updateTableCellNode] = (0, import_react152.useState)(_tableCellNode);
15701
- const [selectionCounts, updateSelectionCounts] = (0, import_react152.useState)({
16415
+ const [tableCellNode, updateTableCellNode] = (0, import_react156.useState)(_tableCellNode);
16416
+ const [selectionCounts, updateSelectionCounts] = (0, import_react156.useState)({
15702
16417
  columns: 1,
15703
16418
  rows: 1
15704
16419
  });
15705
- const [menuTriggerKey, setMenuTriggerKey] = (0, import_react152.useState)(0);
16420
+ const [menuTriggerKey, setMenuTriggerKey] = (0, import_react156.useState)(0);
15706
16421
  const incrementMenuTriggerKey = () => {
15707
16422
  setMenuTriggerKey((key) => key += 1);
15708
16423
  };
15709
- (0, import_react152.useEffect)(() => {
16424
+ (0, import_react156.useEffect)(() => {
15710
16425
  return editor.registerMutationListener(
15711
16426
  import_table.TableCellNode,
15712
16427
  (nodeMutations) => {
@@ -15720,7 +16435,7 @@ function TableActionMenu({
15720
16435
  { skipInitialization: true }
15721
16436
  );
15722
16437
  }, [editor, tableCellNode]);
15723
- (0, import_react152.useEffect)(() => {
16438
+ (0, import_react156.useEffect)(() => {
15724
16439
  editor.getEditorState().read(() => {
15725
16440
  const selection = (0, import_lexical6.$getSelection)();
15726
16441
  if ((0, import_table.$isTableSelection)(selection)) {
@@ -15728,7 +16443,7 @@ function TableActionMenu({
15728
16443
  }
15729
16444
  });
15730
16445
  }, [editor]);
15731
- const clearTableSelection = (0, import_react152.useCallback)(() => {
16446
+ const clearTableSelection = (0, import_react156.useCallback)(() => {
15732
16447
  editor.update(() => {
15733
16448
  if (tableCellNode.isAttached()) {
15734
16449
  const tableNode = (0, import_table.$getTableNodeFromLexicalNodeOrThrow)(tableCellNode);
@@ -15749,7 +16464,7 @@ function TableActionMenu({
15749
16464
  rootNode.selectStart();
15750
16465
  });
15751
16466
  }, [editor, tableCellNode]);
15752
- const insertTableRowAtSelection = (0, import_react152.useCallback)(
16467
+ const insertTableRowAtSelection = (0, import_react156.useCallback)(
15753
16468
  (shouldInsertAfter) => {
15754
16469
  editor.update(() => {
15755
16470
  (0, import_table.$insertTableRow__EXPERIMENTAL)(shouldInsertAfter);
@@ -15758,7 +16473,7 @@ function TableActionMenu({
15758
16473
  },
15759
16474
  [editor]
15760
16475
  );
15761
- const insertTableColumnAtSelection = (0, import_react152.useCallback)(
16476
+ const insertTableColumnAtSelection = (0, import_react156.useCallback)(
15762
16477
  (shouldInsertAfter) => {
15763
16478
  editor.update(() => {
15764
16479
  for (let i = 0; i < selectionCounts.columns; i++) {
@@ -15769,26 +16484,26 @@ function TableActionMenu({
15769
16484
  },
15770
16485
  [editor, selectionCounts.columns]
15771
16486
  );
15772
- const deleteTableRowAtSelection = (0, import_react152.useCallback)(() => {
16487
+ const deleteTableRowAtSelection = (0, import_react156.useCallback)(() => {
15773
16488
  editor.update(() => {
15774
16489
  (0, import_table.$deleteTableRow__EXPERIMENTAL)();
15775
16490
  });
15776
16491
  incrementMenuTriggerKey();
15777
16492
  }, [editor]);
15778
- const deleteTableAtSelection = (0, import_react152.useCallback)(() => {
16493
+ const deleteTableAtSelection = (0, import_react156.useCallback)(() => {
15779
16494
  editor.update(() => {
15780
16495
  const tableNode = (0, import_table.$getTableNodeFromLexicalNodeOrThrow)(tableCellNode);
15781
16496
  tableNode.remove();
15782
16497
  clearTableSelection();
15783
16498
  });
15784
16499
  }, [editor, tableCellNode, clearTableSelection]);
15785
- const deleteTableColumnAtSelection = (0, import_react152.useCallback)(() => {
16500
+ const deleteTableColumnAtSelection = (0, import_react156.useCallback)(() => {
15786
16501
  editor.update(() => {
15787
16502
  (0, import_table.$deleteTableColumn__EXPERIMENTAL)();
15788
16503
  });
15789
16504
  incrementMenuTriggerKey();
15790
16505
  }, [editor]);
15791
- const toggleTableRowIsHeader = (0, import_react152.useCallback)(() => {
16506
+ const toggleTableRowIsHeader = (0, import_react156.useCallback)(() => {
15792
16507
  editor.update(() => {
15793
16508
  const tableNode = (0, import_table.$getTableNodeFromLexicalNodeOrThrow)(tableCellNode);
15794
16509
  const tableRowIndex = (0, import_table.$getTableRowIndexFromTableCellNode)(tableCellNode);
@@ -15809,7 +16524,7 @@ function TableActionMenu({
15809
16524
  clearTableSelection();
15810
16525
  });
15811
16526
  }, [editor, tableCellNode, clearTableSelection]);
15812
- const toggleTableColumnIsHeader = (0, import_react152.useCallback)(() => {
16527
+ const toggleTableColumnIsHeader = (0, import_react156.useCallback)(() => {
15813
16528
  editor.update(() => {
15814
16529
  const tableNode = (0, import_table.$getTableNodeFromLexicalNodeOrThrow)(tableCellNode);
15815
16530
  const tableColumnIndex = (0, import_table.$getTableColumnIndexFromTableCellNode)(tableCellNode);
@@ -15836,13 +16551,13 @@ function TableActionMenu({
15836
16551
  clearTableSelection();
15837
16552
  });
15838
16553
  }, [editor, tableCellNode, clearTableSelection]);
15839
- const menuItemCss = (0, import_react151.css)({
16554
+ const menuItemCss = (0, import_react155.css)({
15840
16555
  fontSize: "var(--fs-sm)"
15841
16556
  });
15842
- return /* @__PURE__ */ (0, import_jsx_runtime128.jsxs)(
16557
+ return /* @__PURE__ */ (0, import_jsx_runtime131.jsxs)(
15843
16558
  Menu,
15844
16559
  {
15845
- menuTrigger: /* @__PURE__ */ (0, import_jsx_runtime128.jsx)(
16560
+ menuTrigger: /* @__PURE__ */ (0, import_jsx_runtime131.jsx)(
15846
16561
  TableActionMenuTrigger,
15847
16562
  {
15848
16563
  tableCellEl,
@@ -15853,7 +16568,7 @@ function TableActionMenu({
15853
16568
  portalElement: menuPortalEl,
15854
16569
  maxMenuHeight: "300px",
15855
16570
  children: [
15856
- /* @__PURE__ */ (0, import_jsx_runtime128.jsxs)(
16571
+ /* @__PURE__ */ (0, import_jsx_runtime131.jsxs)(
15857
16572
  MenuItem,
15858
16573
  {
15859
16574
  onClick: () => {
@@ -15867,33 +16582,33 @@ function TableActionMenu({
15867
16582
  ]
15868
16583
  }
15869
16584
  ),
15870
- /* @__PURE__ */ (0, import_jsx_runtime128.jsxs)(MenuItem, { onClick: () => insertTableRowAtSelection(true), css: menuItemCss, children: [
16585
+ /* @__PURE__ */ (0, import_jsx_runtime131.jsxs)(MenuItem, { onClick: () => insertTableRowAtSelection(true), css: menuItemCss, children: [
15871
16586
  "Insert ",
15872
16587
  selectionCounts.rows === 1 ? "row" : `${selectionCounts.rows} rows`,
15873
16588
  " below"
15874
16589
  ] }),
15875
- /* @__PURE__ */ (0, import_jsx_runtime128.jsx)(MenuItemSeparator, {}),
15876
- /* @__PURE__ */ (0, import_jsx_runtime128.jsxs)(MenuItem, { onClick: () => insertTableColumnAtSelection(false), css: menuItemCss, children: [
16590
+ /* @__PURE__ */ (0, import_jsx_runtime131.jsx)(MenuItemSeparator, {}),
16591
+ /* @__PURE__ */ (0, import_jsx_runtime131.jsxs)(MenuItem, { onClick: () => insertTableColumnAtSelection(false), css: menuItemCss, children: [
15877
16592
  "Insert ",
15878
16593
  selectionCounts.columns === 1 ? "column" : `${selectionCounts.columns} columns`,
15879
16594
  " left"
15880
16595
  ] }),
15881
- /* @__PURE__ */ (0, import_jsx_runtime128.jsxs)(MenuItem, { onClick: () => insertTableColumnAtSelection(true), css: menuItemCss, children: [
16596
+ /* @__PURE__ */ (0, import_jsx_runtime131.jsxs)(MenuItem, { onClick: () => insertTableColumnAtSelection(true), css: menuItemCss, children: [
15882
16597
  "Insert ",
15883
16598
  selectionCounts.columns === 1 ? "column" : `${selectionCounts.columns} columns`,
15884
16599
  " right"
15885
16600
  ] }),
15886
- /* @__PURE__ */ (0, import_jsx_runtime128.jsx)(MenuItemSeparator, {}),
15887
- /* @__PURE__ */ (0, import_jsx_runtime128.jsx)(MenuItem, { onClick: () => deleteTableColumnAtSelection(), css: menuItemCss, children: "Delete column" }),
15888
- /* @__PURE__ */ (0, import_jsx_runtime128.jsx)(MenuItem, { onClick: () => deleteTableRowAtSelection(), css: menuItemCss, children: "Delete row" }),
15889
- /* @__PURE__ */ (0, import_jsx_runtime128.jsx)(MenuItem, { onClick: () => deleteTableAtSelection(), css: menuItemCss, children: "Delete table" }),
15890
- /* @__PURE__ */ (0, import_jsx_runtime128.jsx)(MenuItemSeparator, {}),
15891
- /* @__PURE__ */ (0, import_jsx_runtime128.jsxs)(MenuItem, { onClick: () => toggleTableRowIsHeader(), css: menuItemCss, children: [
16601
+ /* @__PURE__ */ (0, import_jsx_runtime131.jsx)(MenuItemSeparator, {}),
16602
+ /* @__PURE__ */ (0, import_jsx_runtime131.jsx)(MenuItem, { onClick: () => deleteTableColumnAtSelection(), css: menuItemCss, children: "Delete column" }),
16603
+ /* @__PURE__ */ (0, import_jsx_runtime131.jsx)(MenuItem, { onClick: () => deleteTableRowAtSelection(), css: menuItemCss, children: "Delete row" }),
16604
+ /* @__PURE__ */ (0, import_jsx_runtime131.jsx)(MenuItem, { onClick: () => deleteTableAtSelection(), css: menuItemCss, children: "Delete table" }),
16605
+ /* @__PURE__ */ (0, import_jsx_runtime131.jsx)(MenuItemSeparator, {}),
16606
+ /* @__PURE__ */ (0, import_jsx_runtime131.jsxs)(MenuItem, { onClick: () => toggleTableRowIsHeader(), css: menuItemCss, children: [
15892
16607
  (tableCellNode.__headerState & import_table.TableCellHeaderStates.ROW) === import_table.TableCellHeaderStates.ROW ? "Remove" : "Add",
15893
16608
  " ",
15894
16609
  "row header"
15895
16610
  ] }),
15896
- /* @__PURE__ */ (0, import_jsx_runtime128.jsxs)(MenuItem, { onClick: () => toggleTableColumnIsHeader(), css: menuItemCss, children: [
16611
+ /* @__PURE__ */ (0, import_jsx_runtime131.jsxs)(MenuItem, { onClick: () => toggleTableColumnIsHeader(), css: menuItemCss, children: [
15897
16612
  (tableCellNode.__headerState & import_table.TableCellHeaderStates.COLUMN) === import_table.TableCellHeaderStates.COLUMN ? "Remove" : "Add",
15898
16613
  " ",
15899
16614
  "column header"
@@ -15907,10 +16622,10 @@ function TableCellActionMenuContainer({
15907
16622
  positioningAnchorEl
15908
16623
  }) {
15909
16624
  const [editor] = (0, import_LexicalComposerContext5.useLexicalComposerContext)();
15910
- const [tableCellNode, setTableMenuCellNode] = (0, import_react152.useState)(null);
15911
- const [tableCellNodeEl, _setTableMenuCellNodeEl] = (0, import_react152.useState)(null);
15912
- const [tableCellMenuPortalEl, setTableMenuCellMenuPortalEl] = (0, import_react152.useState)(null);
15913
- (0, import_react152.useEffect)(() => {
16625
+ const [tableCellNode, setTableMenuCellNode] = (0, import_react156.useState)(null);
16626
+ const [tableCellNodeEl, _setTableMenuCellNodeEl] = (0, import_react156.useState)(null);
16627
+ const [tableCellMenuPortalEl, setTableMenuCellMenuPortalEl] = (0, import_react156.useState)(null);
16628
+ (0, import_react156.useEffect)(() => {
15914
16629
  const newPortalEl = document.createElement("div");
15915
16630
  setTableMenuCellMenuPortalEl(newPortalEl);
15916
16631
  menuPortalEl.appendChild(newPortalEl);
@@ -15918,14 +16633,14 @@ function TableCellActionMenuContainer({
15918
16633
  newPortalEl.remove();
15919
16634
  };
15920
16635
  }, [menuPortalEl]);
15921
- const setTableMenuCellNodeElem = (0, import_react152.useCallback)((elem) => {
16636
+ const setTableMenuCellNodeElem = (0, import_react156.useCallback)((elem) => {
15922
16637
  if (elem) {
15923
16638
  _setTableMenuCellNodeEl(elem);
15924
16639
  } else {
15925
16640
  _setTableMenuCellNodeEl(null);
15926
16641
  }
15927
16642
  }, []);
15928
- const $moveMenu = (0, import_react152.useCallback)(() => {
16643
+ const $moveMenu = (0, import_react156.useCallback)(() => {
15929
16644
  const selection = (0, import_lexical6.$getSelection)();
15930
16645
  const nativeSelection = window.getSelection();
15931
16646
  const activeElement = document.activeElement;
@@ -15954,14 +16669,14 @@ function TableCellActionMenuContainer({
15954
16669
  setTableMenuCellNodeElem(null);
15955
16670
  }
15956
16671
  }, [editor, setTableMenuCellNodeElem]);
15957
- (0, import_react152.useEffect)(() => {
16672
+ (0, import_react156.useEffect)(() => {
15958
16673
  return editor.registerUpdateListener(() => {
15959
16674
  editor.getEditorState().read(() => {
15960
16675
  $moveMenu();
15961
16676
  });
15962
16677
  });
15963
16678
  });
15964
- return tableCellNode != null && tableCellNodeEl != null && tableCellMenuPortalEl != null && /* @__PURE__ */ (0, import_jsx_runtime128.jsx)(
16679
+ return tableCellNode != null && tableCellNodeEl != null && tableCellMenuPortalEl != null && /* @__PURE__ */ (0, import_jsx_runtime131.jsx)(
15965
16680
  TableActionMenu,
15966
16681
  {
15967
16682
  tableCellNode,
@@ -15977,23 +16692,23 @@ function TableActionMenuPlugin({
15977
16692
  menuPortalEl
15978
16693
  }) {
15979
16694
  const isEditable = (0, import_useLexicalEditable.useLexicalEditable)();
15980
- return isEditable ? /* @__PURE__ */ (0, import_jsx_runtime128.jsx)(TableCellActionMenuContainer, { menuPortalEl, positioningAnchorEl }) : null;
16695
+ return isEditable ? /* @__PURE__ */ (0, import_jsx_runtime131.jsx)(TableCellActionMenuContainer, { menuPortalEl, positioningAnchorEl }) : null;
15981
16696
  }
15982
16697
 
15983
16698
  // src/components/ParameterInputs/rich-text/TableCellResizerPlugin.tsx
15984
16699
  init_emotion_jsx_shim();
15985
- var import_react153 = require("@emotion/react");
16700
+ var import_react157 = require("@emotion/react");
15986
16701
  var import_LexicalComposerContext6 = require("@lexical/react/LexicalComposerContext");
15987
16702
  var import_useLexicalEditable2 = require("@lexical/react/useLexicalEditable");
15988
16703
  var import_table2 = require("@lexical/table");
15989
16704
  var import_utils11 = require("@lexical/utils");
15990
16705
  var import_lexical7 = require("lexical");
15991
- var import_react154 = require("react");
16706
+ var import_react158 = require("react");
15992
16707
  var import_react_dom3 = require("react-dom");
15993
- var import_jsx_runtime129 = require("@emotion/react/jsx-runtime");
16708
+ var import_jsx_runtime132 = require("@emotion/react/jsx-runtime");
15994
16709
  var MIN_ROW_HEIGHT = 33;
15995
16710
  var MIN_COLUMN_WIDTH = 50;
15996
- var tableResizer = import_react153.css`
16711
+ var tableResizer = import_react157.css`
15997
16712
  position: absolute;
15998
16713
  z-index: var(--z-10);
15999
16714
  `;
@@ -16015,15 +16730,15 @@ var fixedGetDOMCellFromTarget = (node) => {
16015
16730
  return null;
16016
16731
  };
16017
16732
  function TableCellResizer({ editor, positioningAnchorEl }) {
16018
- const targetRef = (0, import_react154.useRef)(null);
16019
- const resizerRef = (0, import_react154.useRef)(null);
16020
- const tableRectRef = (0, import_react154.useRef)(null);
16021
- const mouseStartPosRef = (0, import_react154.useRef)(null);
16022
- const [mouseCurrentPos, updateMouseCurrentPos] = (0, import_react154.useState)(null);
16023
- const [activeCell, updateActiveCell] = (0, import_react154.useState)(null);
16024
- const [isMouseDown, updateIsMouseDown] = (0, import_react154.useState)(false);
16025
- const [draggingDirection, updateDraggingDirection] = (0, import_react154.useState)(null);
16026
- const resetState = (0, import_react154.useCallback)(() => {
16733
+ const targetRef = (0, import_react158.useRef)(null);
16734
+ const resizerRef = (0, import_react158.useRef)(null);
16735
+ const tableRectRef = (0, import_react158.useRef)(null);
16736
+ const mouseStartPosRef = (0, import_react158.useRef)(null);
16737
+ const [mouseCurrentPos, updateMouseCurrentPos] = (0, import_react158.useState)(null);
16738
+ const [activeCell, updateActiveCell] = (0, import_react158.useState)(null);
16739
+ const [isMouseDown, updateIsMouseDown] = (0, import_react158.useState)(false);
16740
+ const [draggingDirection, updateDraggingDirection] = (0, import_react158.useState)(null);
16741
+ const resetState = (0, import_react158.useCallback)(() => {
16027
16742
  updateActiveCell(null);
16028
16743
  targetRef.current = null;
16029
16744
  updateDraggingDirection(null);
@@ -16033,7 +16748,7 @@ function TableCellResizer({ editor, positioningAnchorEl }) {
16033
16748
  const isMouseDownOnEvent = (event) => {
16034
16749
  return (event.buttons & 1) === 1;
16035
16750
  };
16036
- (0, import_react154.useEffect)(() => {
16751
+ (0, import_react158.useEffect)(() => {
16037
16752
  const onMouseMove = (event) => {
16038
16753
  setTimeout(() => {
16039
16754
  const target = event.target;
@@ -16100,7 +16815,7 @@ function TableCellResizer({ editor, positioningAnchorEl }) {
16100
16815
  }
16101
16816
  return false;
16102
16817
  };
16103
- const updateRowHeight = (0, import_react154.useCallback)(
16818
+ const updateRowHeight = (0, import_react158.useCallback)(
16104
16819
  (heightChange) => {
16105
16820
  if (!activeCell) {
16106
16821
  throw new Error("TableCellResizer: Expected active cell.");
@@ -16162,7 +16877,7 @@ function TableCellResizer({ editor, positioningAnchorEl }) {
16162
16877
  }
16163
16878
  }
16164
16879
  };
16165
- const updateColumnWidth = (0, import_react154.useCallback)(
16880
+ const updateColumnWidth = (0, import_react158.useCallback)(
16166
16881
  (widthChange) => {
16167
16882
  if (!activeCell) {
16168
16883
  throw new Error("TableCellResizer: Expected active cell.");
@@ -16196,7 +16911,7 @@ function TableCellResizer({ editor, positioningAnchorEl }) {
16196
16911
  },
16197
16912
  [activeCell, editor]
16198
16913
  );
16199
- const mouseUpHandler = (0, import_react154.useCallback)(
16914
+ const mouseUpHandler = (0, import_react158.useCallback)(
16200
16915
  (direction) => {
16201
16916
  const handler = (event) => {
16202
16917
  event.preventDefault();
@@ -16225,7 +16940,7 @@ function TableCellResizer({ editor, positioningAnchorEl }) {
16225
16940
  },
16226
16941
  [activeCell, resetState, updateColumnWidth, updateRowHeight]
16227
16942
  );
16228
- const toggleResize = (0, import_react154.useCallback)(
16943
+ const toggleResize = (0, import_react158.useCallback)(
16229
16944
  (direction) => (event) => {
16230
16945
  event.preventDefault();
16231
16946
  event.stopPropagation();
@@ -16242,7 +16957,7 @@ function TableCellResizer({ editor, positioningAnchorEl }) {
16242
16957
  },
16243
16958
  [activeCell, mouseUpHandler]
16244
16959
  );
16245
- const getResizers = (0, import_react154.useCallback)(() => {
16960
+ const getResizers = (0, import_react158.useCallback)(() => {
16246
16961
  if (activeCell) {
16247
16962
  const { height, width, top, left } = activeCell.elem.getBoundingClientRect();
16248
16963
  const parentRect = positioningAnchorEl.getBoundingClientRect();
@@ -16291,8 +17006,8 @@ function TableCellResizer({ editor, positioningAnchorEl }) {
16291
17006
  };
16292
17007
  }, [activeCell, draggingDirection, mouseCurrentPos, positioningAnchorEl]);
16293
17008
  const resizerStyles = getResizers();
16294
- return /* @__PURE__ */ (0, import_jsx_runtime129.jsx)("div", { ref: resizerRef, children: activeCell != null && !isMouseDown && /* @__PURE__ */ (0, import_jsx_runtime129.jsxs)(import_jsx_runtime129.Fragment, { children: [
16295
- /* @__PURE__ */ (0, import_jsx_runtime129.jsx)(
17009
+ return /* @__PURE__ */ (0, import_jsx_runtime132.jsx)("div", { ref: resizerRef, children: activeCell != null && !isMouseDown && /* @__PURE__ */ (0, import_jsx_runtime132.jsxs)(import_jsx_runtime132.Fragment, { children: [
17010
+ /* @__PURE__ */ (0, import_jsx_runtime132.jsx)(
16296
17011
  "div",
16297
17012
  {
16298
17013
  css: tableResizer,
@@ -16300,7 +17015,7 @@ function TableCellResizer({ editor, positioningAnchorEl }) {
16300
17015
  onMouseDown: toggleResize("right")
16301
17016
  }
16302
17017
  ),
16303
- /* @__PURE__ */ (0, import_jsx_runtime129.jsx)(
17018
+ /* @__PURE__ */ (0, import_jsx_runtime132.jsx)(
16304
17019
  "div",
16305
17020
  {
16306
17021
  css: tableResizer,
@@ -16313,9 +17028,9 @@ function TableCellResizer({ editor, positioningAnchorEl }) {
16313
17028
  function TableCellResizerPlugin({ positioningAnchorEl }) {
16314
17029
  const [editor] = (0, import_LexicalComposerContext6.useLexicalComposerContext)();
16315
17030
  const isEditable = (0, import_useLexicalEditable2.useLexicalEditable)();
16316
- return (0, import_react154.useMemo)(
17031
+ return (0, import_react158.useMemo)(
16317
17032
  () => isEditable ? (0, import_react_dom3.createPortal)(
16318
- /* @__PURE__ */ (0, import_jsx_runtime129.jsx)(TableCellResizer, { editor, positioningAnchorEl }),
17033
+ /* @__PURE__ */ (0, import_jsx_runtime132.jsx)(TableCellResizer, { editor, positioningAnchorEl }),
16319
17034
  positioningAnchorEl
16320
17035
  ) : null,
16321
17036
  [editor, isEditable, positioningAnchorEl]
@@ -16327,11 +17042,11 @@ init_emotion_jsx_shim();
16327
17042
  var import_LexicalComposerContext7 = require("@lexical/react/LexicalComposerContext");
16328
17043
  var import_table3 = require("@lexical/table");
16329
17044
  var import_lexical8 = require("lexical");
16330
- var import_react155 = require("react");
17045
+ var import_react159 = require("react");
16331
17046
  var TableSelectionPlugin = () => {
16332
17047
  const [editor] = (0, import_LexicalComposerContext7.useLexicalComposerContext)();
16333
- const [closestTableCellNode, setClosestTableCellNode] = (0, import_react155.useState)(null);
16334
- (0, import_react155.useEffect)(() => {
17048
+ const [closestTableCellNode, setClosestTableCellNode] = (0, import_react159.useState)(null);
17049
+ (0, import_react159.useEffect)(() => {
16335
17050
  return editor.registerCommand(
16336
17051
  import_lexical8.SELECTION_CHANGE_COMMAND,
16337
17052
  () => {
@@ -16353,7 +17068,7 @@ var TableSelectionPlugin = () => {
16353
17068
  import_lexical8.COMMAND_PRIORITY_NORMAL
16354
17069
  );
16355
17070
  }, [editor]);
16356
- (0, import_react155.useEffect)(() => {
17071
+ (0, import_react159.useEffect)(() => {
16357
17072
  const onControlA = (event) => {
16358
17073
  if (event.key === "a" && (event.ctrlKey || event.metaKey)) {
16359
17074
  if (!closestTableCellNode) {
@@ -16377,7 +17092,7 @@ var TableSelectionPlugin_default = TableSelectionPlugin;
16377
17092
 
16378
17093
  // src/components/ParameterInputs/rich-text/toolbar/RichTextToolbar.tsx
16379
17094
  init_emotion_jsx_shim();
16380
- var import_react157 = require("@emotion/react");
17095
+ var import_react161 = require("@emotion/react");
16381
17096
  var import_code2 = require("@lexical/code");
16382
17097
  var import_list2 = require("@lexical/list");
16383
17098
  var import_LexicalComposerContext8 = require("@lexical/react/LexicalComposerContext");
@@ -16386,7 +17101,7 @@ var import_selection2 = require("@lexical/selection");
16386
17101
  var import_table4 = require("@lexical/table");
16387
17102
  var import_utils12 = require("@lexical/utils");
16388
17103
  var import_lexical9 = require("lexical");
16389
- var import_react158 = require("react");
17104
+ var import_react162 = require("react");
16390
17105
 
16391
17106
  // src/components/ParameterInputs/rich-text/toolbar/constants.ts
16392
17107
  init_emotion_jsx_shim();
@@ -16404,29 +17119,29 @@ var TEXTUAL_ELEMENTS = HEADING_ELEMENTS;
16404
17119
 
16405
17120
  // src/components/ParameterInputs/rich-text/toolbar/useRichTextToolbarState.ts
16406
17121
  init_emotion_jsx_shim();
16407
- var import_react156 = require("react");
17122
+ var import_react160 = require("react");
16408
17123
  var useRichTextToolbarState = ({ config }) => {
16409
17124
  var _a;
16410
- const enabledBuiltInFormats = (0, import_react156.useMemo)(() => {
17125
+ const enabledBuiltInFormats = (0, import_react160.useMemo)(() => {
16411
17126
  return richTextBuiltInFormats.filter((format) => {
16412
17127
  var _a2, _b;
16413
17128
  return (_b = (_a2 = config == null ? void 0 : config.formatting) == null ? void 0 : _a2.builtIn) == null ? void 0 : _b.includes(format.type);
16414
17129
  });
16415
17130
  }, [config]);
16416
- const enabledBuiltInElements = (0, import_react156.useMemo)(() => {
17131
+ const enabledBuiltInElements = (0, import_react160.useMemo)(() => {
16417
17132
  return richTextBuiltInElements.filter((element) => {
16418
17133
  var _a2, _b;
16419
17134
  return (_b = (_a2 = config == null ? void 0 : config.elements) == null ? void 0 : _a2.builtIn) == null ? void 0 : _b.includes(element.type);
16420
17135
  });
16421
17136
  }, [config]);
16422
- const enabledBuiltInFormatsWithIcon = (0, import_react156.useMemo)(() => {
17137
+ const enabledBuiltInFormatsWithIcon = (0, import_react160.useMemo)(() => {
16423
17138
  return enabledBuiltInFormats.filter((format) => FORMATS_WITH_ICON.has(format.type));
16424
17139
  }, [enabledBuiltInFormats]);
16425
17140
  const enabledBuiltInFormatsWithoutIcon = enabledBuiltInFormats.filter(
16426
17141
  (format) => !FORMATS_WITH_ICON.has(format.type)
16427
17142
  );
16428
- const [activeFormats, setActiveFormats] = (0, import_react156.useState)([]);
16429
- const visibleFormatsWithIcon = (0, import_react156.useMemo)(() => {
17143
+ const [activeFormats, setActiveFormats] = (0, import_react160.useState)([]);
17144
+ const visibleFormatsWithIcon = (0, import_react160.useMemo)(() => {
16430
17145
  const visibleFormats = /* @__PURE__ */ new Set();
16431
17146
  activeFormats.filter((type) => FORMATS_WITH_ICON.has(type)).forEach((type) => {
16432
17147
  visibleFormats.add(type);
@@ -16436,7 +17151,7 @@ var useRichTextToolbarState = ({ config }) => {
16436
17151
  });
16437
17152
  return richTextBuiltInFormats.filter((format) => visibleFormats.has(format.type));
16438
17153
  }, [activeFormats, enabledBuiltInFormatsWithIcon]);
16439
- const visibleFormatsWithoutIcon = (0, import_react156.useMemo)(() => {
17154
+ const visibleFormatsWithoutIcon = (0, import_react160.useMemo)(() => {
16440
17155
  const visibleFormats = /* @__PURE__ */ new Set();
16441
17156
  activeFormats.filter((type) => !FORMATS_WITH_ICON.has(type)).forEach((type) => {
16442
17157
  visibleFormats.add(type);
@@ -16446,11 +17161,11 @@ var useRichTextToolbarState = ({ config }) => {
16446
17161
  });
16447
17162
  return richTextBuiltInFormats.filter((format) => visibleFormats.has(format.type));
16448
17163
  }, [activeFormats, enabledBuiltInFormatsWithoutIcon]);
16449
- const [activeElement, setActiveElement] = (0, import_react156.useState)("paragraph");
17164
+ const [activeElement, setActiveElement] = (0, import_react160.useState)("paragraph");
16450
17165
  const enabledTextualElements = enabledBuiltInElements.filter(
16451
17166
  (element) => TEXTUAL_ELEMENTS.includes(element.type)
16452
17167
  );
16453
- const visibleTextualElements = (0, import_react156.useMemo)(() => {
17168
+ const visibleTextualElements = (0, import_react160.useMemo)(() => {
16454
17169
  if (!TEXTUAL_ELEMENTS.includes(activeElement)) {
16455
17170
  return enabledTextualElements;
16456
17171
  }
@@ -16461,30 +17176,30 @@ var useRichTextToolbarState = ({ config }) => {
16461
17176
  }
16462
17177
  );
16463
17178
  }, [activeElement, (_a = config == null ? void 0 : config.elements) == null ? void 0 : _a.builtIn, enabledTextualElements]);
16464
- const [isLink, setIsLink] = (0, import_react156.useState)(false);
16465
- const linkElementVisible = (0, import_react156.useMemo)(() => {
17179
+ const [isLink, setIsLink] = (0, import_react160.useState)(false);
17180
+ const linkElementVisible = (0, import_react160.useMemo)(() => {
16466
17181
  return enabledBuiltInElements.some((element) => element.type === "link") || isLink;
16467
17182
  }, [isLink, enabledBuiltInElements]);
16468
- const visibleLists = (0, import_react156.useMemo)(() => {
17183
+ const visibleLists = (0, import_react160.useMemo)(() => {
16469
17184
  return new Set(
16470
17185
  ["orderedList", "unorderedList"].filter(
16471
17186
  (type) => enabledBuiltInElements.some((element) => element.type === type) || activeElement === type
16472
17187
  )
16473
17188
  );
16474
17189
  }, [activeElement, enabledBuiltInElements]);
16475
- const quoteElementVisible = (0, import_react156.useMemo)(() => {
17190
+ const quoteElementVisible = (0, import_react160.useMemo)(() => {
16476
17191
  return enabledBuiltInElements.some((element) => element.type === "quote") || activeElement === "quote";
16477
17192
  }, [activeElement, enabledBuiltInElements]);
16478
- const codeElementVisible = (0, import_react156.useMemo)(() => {
17193
+ const codeElementVisible = (0, import_react160.useMemo)(() => {
16479
17194
  return enabledBuiltInElements.some((element) => element.type === "code") || activeElement === "code";
16480
17195
  }, [activeElement, enabledBuiltInElements]);
16481
- const tableElementVisible = (0, import_react156.useMemo)(() => {
17196
+ const tableElementVisible = (0, import_react160.useMemo)(() => {
16482
17197
  return enabledBuiltInElements.some((element) => element.type === "table") || activeElement === "table";
16483
17198
  }, [activeElement, enabledBuiltInElements]);
16484
- const assetElementVisible = (0, import_react156.useMemo)(() => {
17199
+ const assetElementVisible = (0, import_react160.useMemo)(() => {
16485
17200
  return enabledBuiltInElements.some((element) => element.type === "asset") || activeElement === "asset";
16486
17201
  }, [activeElement, enabledBuiltInElements]);
16487
- const visibleElementsWithIcons = (0, import_react156.useMemo)(() => {
17202
+ const visibleElementsWithIcons = (0, import_react160.useMemo)(() => {
16488
17203
  const visibleElements = /* @__PURE__ */ new Set();
16489
17204
  if (linkElementVisible) {
16490
17205
  visibleElements.add("link");
@@ -16496,7 +17211,7 @@ var useRichTextToolbarState = ({ config }) => {
16496
17211
  }
16497
17212
  return visibleElements;
16498
17213
  }, [linkElementVisible, visibleLists]);
16499
- const visibleInsertElementsWithIcons = (0, import_react156.useMemo)(() => {
17214
+ const visibleInsertElementsWithIcons = (0, import_react160.useMemo)(() => {
16500
17215
  const visibleElements = /* @__PURE__ */ new Set();
16501
17216
  if (quoteElementVisible) {
16502
17217
  visibleElements.add("quote");
@@ -16534,8 +17249,8 @@ var useRichTextToolbarState = ({ config }) => {
16534
17249
  };
16535
17250
 
16536
17251
  // src/components/ParameterInputs/rich-text/toolbar/RichTextToolbar.tsx
16537
- var import_jsx_runtime130 = require("@emotion/react/jsx-runtime");
16538
- var toolbar = import_react157.css`
17252
+ var import_jsx_runtime133 = require("@emotion/react/jsx-runtime");
17253
+ var toolbar = import_react161.css`
16539
17254
  ${scrollbarStyles}
16540
17255
  background: var(--gray-50);
16541
17256
  border-radius: var(--rounded-base);
@@ -16549,7 +17264,7 @@ var toolbar = import_react157.css`
16549
17264
  top: calc(var(--spacing-sm) * -2);
16550
17265
  z-index: 10;
16551
17266
  `;
16552
- var toolbarGroup = import_react157.css`
17267
+ var toolbarGroup = import_react161.css`
16553
17268
  display: flex;
16554
17269
  flex-shrink: 0;
16555
17270
  gap: var(--spacing-xs);
@@ -16566,7 +17281,7 @@ var toolbarGroup = import_react157.css`
16566
17281
  width: 1px;
16567
17282
  }
16568
17283
  `;
16569
- var richTextToolbarButton = import_react157.css`
17284
+ var richTextToolbarButton = import_react161.css`
16570
17285
  align-items: center;
16571
17286
  appearance: none;
16572
17287
  border: 0;
@@ -16580,21 +17295,21 @@ var richTextToolbarButton = import_react157.css`
16580
17295
  min-width: 32px;
16581
17296
  padding: 0 var(--spacing-sm);
16582
17297
  `;
16583
- var richTextToolbarButtonActive = import_react157.css`
17298
+ var richTextToolbarButtonActive = import_react161.css`
16584
17299
  background: var(--gray-200);
16585
17300
  `;
16586
- var textStyleButton = import_react157.css`
17301
+ var textStyleButton = import_react161.css`
16587
17302
  justify-content: space-between;
16588
17303
  min-width: 7rem;
16589
17304
  `;
16590
- var toolbarIcon = import_react157.css`
17305
+ var toolbarIcon = import_react161.css`
16591
17306
  color: inherit;
16592
17307
  `;
16593
- var toolbarChevron = import_react157.css`
17308
+ var toolbarChevron = import_react161.css`
16594
17309
  margin-left: var(--spacing-xs);
16595
17310
  `;
16596
17311
  var RichTextToolbarIcon = ({ icon }) => {
16597
- return /* @__PURE__ */ (0, import_jsx_runtime130.jsx)(Icon, { icon, css: toolbarIcon, size: "1rem" });
17312
+ return /* @__PURE__ */ (0, import_jsx_runtime133.jsx)(Icon, { icon, css: toolbarIcon, size: "1rem" });
16598
17313
  };
16599
17314
  var RichTextToolbar = ({ config, customControls, onInsertTable, onInsertAsset }) => {
16600
17315
  const [editor] = (0, import_LexicalComposerContext8.useLexicalComposerContext)();
@@ -16650,7 +17365,7 @@ var RichTextToolbar = ({ config, customControls, onInsertTable, onInsertAsset })
16650
17365
  });
16651
17366
  });
16652
17367
  };
16653
- const updateToolbar = (0, import_react158.useCallback)(() => {
17368
+ const updateToolbar = (0, import_react162.useCallback)(() => {
16654
17369
  const selection = (0, import_lexical9.$getSelection)();
16655
17370
  if (!(0, import_lexical9.$isRangeSelection)(selection)) {
16656
17371
  return;
@@ -16689,7 +17404,7 @@ var RichTextToolbar = ({ config, customControls, onInsertTable, onInsertAsset })
16689
17404
  setIsLink(false);
16690
17405
  }
16691
17406
  }, [editor, setActiveElement, setActiveFormats, setIsLink]);
16692
- (0, import_react158.useEffect)(() => {
17407
+ (0, import_react162.useEffect)(() => {
16693
17408
  return editor.registerCommand(
16694
17409
  import_lexical9.SELECTION_CHANGE_COMMAND,
16695
17410
  (_payload) => {
@@ -16699,7 +17414,7 @@ var RichTextToolbar = ({ config, customControls, onInsertTable, onInsertAsset })
16699
17414
  import_lexical9.COMMAND_PRIORITY_CRITICAL
16700
17415
  );
16701
17416
  }, [editor, updateToolbar]);
16702
- (0, import_react158.useEffect)(() => {
17417
+ (0, import_react162.useEffect)(() => {
16703
17418
  return editor.registerUpdateListener(({ editorState }) => {
16704
17419
  requestAnimationFrame(() => {
16705
17420
  editorState.read(() => {
@@ -16708,14 +17423,14 @@ var RichTextToolbar = ({ config, customControls, onInsertTable, onInsertAsset })
16708
17423
  });
16709
17424
  });
16710
17425
  }, [editor, updateToolbar]);
16711
- return /* @__PURE__ */ (0, import_jsx_runtime130.jsxs)("div", { css: toolbar, "data-testid": "rich-text-toolbar", children: [
16712
- /* @__PURE__ */ (0, import_jsx_runtime130.jsxs)(
17426
+ return /* @__PURE__ */ (0, import_jsx_runtime133.jsxs)("div", { css: toolbar, "data-testid": "rich-text-toolbar", children: [
17427
+ /* @__PURE__ */ (0, import_jsx_runtime133.jsxs)(
16713
17428
  Menu,
16714
17429
  {
16715
- menuTrigger: /* @__PURE__ */ (0, import_jsx_runtime130.jsxs)("button", { css: [richTextToolbarButton, textStyleButton], title: "Text styles", type: "button", children: [
17430
+ menuTrigger: /* @__PURE__ */ (0, import_jsx_runtime133.jsxs)("button", { css: [richTextToolbarButton, textStyleButton], title: "Text styles", type: "button", children: [
16716
17431
  visibleTextualElements.some((element) => element.type === activeElement) ? getLabelForElement(activeElement) : getLabelForElement("paragraph"),
16717
17432
  " ",
16718
- /* @__PURE__ */ (0, import_jsx_runtime130.jsx)(Icon, { icon: "chevron-down", css: [toolbarIcon, toolbarChevron], size: "1rem" })
17433
+ /* @__PURE__ */ (0, import_jsx_runtime133.jsx)(Icon, { icon: "chevron-down", css: [toolbarIcon, toolbarChevron], size: "1rem" })
16719
17434
  ] }),
16720
17435
  placement: "bottom-start",
16721
17436
  children: [
@@ -16725,7 +17440,7 @@ var RichTextToolbar = ({ config, customControls, onInsertTable, onInsertAsset })
16725
17440
  type: "paragraph"
16726
17441
  },
16727
17442
  ...visibleTextualElements
16728
- ].map((element) => /* @__PURE__ */ (0, import_jsx_runtime130.jsx)(
17443
+ ].map((element) => /* @__PURE__ */ (0, import_jsx_runtime133.jsx)(
16729
17444
  MenuItem,
16730
17445
  {
16731
17446
  "data-testid": "menu-item",
@@ -16736,12 +17451,12 @@ var RichTextToolbar = ({ config, customControls, onInsertTable, onInsertAsset })
16736
17451
  },
16737
17452
  element.type
16738
17453
  )),
16739
- visibleTextualElements.length === 0 ? /* @__PURE__ */ (0, import_jsx_runtime130.jsx)(MenuItem, { disabled: true, children: "Alternative text styles are not available" }) : null
17454
+ visibleTextualElements.length === 0 ? /* @__PURE__ */ (0, import_jsx_runtime133.jsx)(MenuItem, { disabled: true, children: "Alternative text styles are not available" }) : null
16740
17455
  ]
16741
17456
  }
16742
17457
  ),
16743
- visibleFormatsWithIcon.length > 0 || visibleFormatsWithoutIcon.length > 0 ? /* @__PURE__ */ (0, import_jsx_runtime130.jsxs)("div", { css: toolbarGroup, "data-testid": "rich-text-toolbar-formatting", children: [
16744
- visibleFormatsWithIcon.map((format) => /* @__PURE__ */ (0, import_jsx_runtime130.jsx)(Tooltip, { title: format.label, placement: "top", children: /* @__PURE__ */ (0, import_jsx_runtime130.jsx)(
17458
+ visibleFormatsWithIcon.length > 0 || visibleFormatsWithoutIcon.length > 0 ? /* @__PURE__ */ (0, import_jsx_runtime133.jsxs)("div", { css: toolbarGroup, "data-testid": "rich-text-toolbar-formatting", children: [
17459
+ visibleFormatsWithIcon.map((format) => /* @__PURE__ */ (0, import_jsx_runtime133.jsx)(Tooltip, { title: format.label, placement: "top", children: /* @__PURE__ */ (0, import_jsx_runtime133.jsx)(
16745
17460
  "button",
16746
17461
  {
16747
17462
  "data-testid": `formatting-button-${format.type}`,
@@ -16753,15 +17468,15 @@ var RichTextToolbar = ({ config, customControls, onInsertTable, onInsertAsset })
16753
17468
  richTextToolbarButton,
16754
17469
  activeFormats.includes(format.type) ? richTextToolbarButtonActive : null
16755
17470
  ],
16756
- children: /* @__PURE__ */ (0, import_jsx_runtime130.jsx)(RichTextToolbarIcon, { icon: FORMATS_WITH_ICON.get(format.type) })
17471
+ children: /* @__PURE__ */ (0, import_jsx_runtime133.jsx)(RichTextToolbarIcon, { icon: FORMATS_WITH_ICON.get(format.type) })
16757
17472
  }
16758
17473
  ) }, format.type)),
16759
- visibleFormatsWithoutIcon.length > 0 ? /* @__PURE__ */ (0, import_jsx_runtime130.jsx)(
17474
+ visibleFormatsWithoutIcon.length > 0 ? /* @__PURE__ */ (0, import_jsx_runtime133.jsx)(
16760
17475
  Menu,
16761
17476
  {
16762
- menuTrigger: /* @__PURE__ */ (0, import_jsx_runtime130.jsx)("button", { css: richTextToolbarButton, title: "Alternative text styles", type: "button", children: /* @__PURE__ */ (0, import_jsx_runtime130.jsx)(Icon, { icon: "more-alt", css: toolbarIcon }) }),
17477
+ menuTrigger: /* @__PURE__ */ (0, import_jsx_runtime133.jsx)("button", { css: richTextToolbarButton, title: "Alternative text styles", type: "button", children: /* @__PURE__ */ (0, import_jsx_runtime133.jsx)(Icon, { icon: "more-alt", css: toolbarIcon }) }),
16763
17478
  placement: "bottom-start",
16764
- children: visibleFormatsWithoutIcon.map((format) => /* @__PURE__ */ (0, import_jsx_runtime130.jsx)(
17479
+ children: visibleFormatsWithoutIcon.map((format) => /* @__PURE__ */ (0, import_jsx_runtime133.jsx)(
16765
17480
  MenuItem,
16766
17481
  {
16767
17482
  onClick: () => {
@@ -16774,8 +17489,8 @@ var RichTextToolbar = ({ config, customControls, onInsertTable, onInsertAsset })
16774
17489
  }
16775
17490
  ) : null
16776
17491
  ] }) : null,
16777
- visibleElementsWithIcons.size > 0 || customControls ? /* @__PURE__ */ (0, import_jsx_runtime130.jsxs)("div", { css: toolbarGroup, "data-testid": "rich-text-toolbar-elements", children: [
16778
- linkElementVisible ? /* @__PURE__ */ (0, import_jsx_runtime130.jsx)(Tooltip, { title: "Link", placement: "top", children: /* @__PURE__ */ (0, import_jsx_runtime130.jsx)(
17492
+ visibleElementsWithIcons.size > 0 || customControls ? /* @__PURE__ */ (0, import_jsx_runtime133.jsxs)("div", { css: toolbarGroup, "data-testid": "rich-text-toolbar-elements", children: [
17493
+ linkElementVisible ? /* @__PURE__ */ (0, import_jsx_runtime133.jsx)(Tooltip, { title: "Link", placement: "top", children: /* @__PURE__ */ (0, import_jsx_runtime133.jsx)(
16779
17494
  "button",
16780
17495
  {
16781
17496
  "data-testid": "element-link",
@@ -16788,11 +17503,11 @@ var RichTextToolbar = ({ config, customControls, onInsertTable, onInsertAsset })
16788
17503
  }
16789
17504
  },
16790
17505
  css: [richTextToolbarButton, isLink ? richTextToolbarButtonActive : null],
16791
- children: /* @__PURE__ */ (0, import_jsx_runtime130.jsx)(RichTextToolbarIcon, { icon: "link" })
17506
+ children: /* @__PURE__ */ (0, import_jsx_runtime133.jsx)(RichTextToolbarIcon, { icon: "link" })
16792
17507
  }
16793
17508
  ) }) : null,
16794
- visibleLists.size > 0 ? /* @__PURE__ */ (0, import_jsx_runtime130.jsxs)(import_jsx_runtime130.Fragment, { children: [
16795
- visibleLists.has("unorderedList") ? /* @__PURE__ */ (0, import_jsx_runtime130.jsx)(Tooltip, { title: "Bullet List", placement: "top", children: /* @__PURE__ */ (0, import_jsx_runtime130.jsx)(
17509
+ visibleLists.size > 0 ? /* @__PURE__ */ (0, import_jsx_runtime133.jsxs)(import_jsx_runtime133.Fragment, { children: [
17510
+ visibleLists.has("unorderedList") ? /* @__PURE__ */ (0, import_jsx_runtime133.jsx)(Tooltip, { title: "Bullet List", placement: "top", children: /* @__PURE__ */ (0, import_jsx_runtime133.jsx)(
16796
17511
  "button",
16797
17512
  {
16798
17513
  "data-testid": "element-unordered-list",
@@ -16808,10 +17523,10 @@ var RichTextToolbar = ({ config, customControls, onInsertTable, onInsertAsset })
16808
17523
  richTextToolbarButton,
16809
17524
  activeElement === "unorderedList" ? richTextToolbarButtonActive : null
16810
17525
  ],
16811
- children: /* @__PURE__ */ (0, import_jsx_runtime130.jsx)(RichTextToolbarIcon, { icon: "layout-list" })
17526
+ children: /* @__PURE__ */ (0, import_jsx_runtime133.jsx)(RichTextToolbarIcon, { icon: "layout-list" })
16812
17527
  }
16813
17528
  ) }) : null,
16814
- visibleLists.has("orderedList") ? /* @__PURE__ */ (0, import_jsx_runtime130.jsx)(Tooltip, { title: "Ordered List", placement: "top", children: /* @__PURE__ */ (0, import_jsx_runtime130.jsx)(
17529
+ visibleLists.has("orderedList") ? /* @__PURE__ */ (0, import_jsx_runtime133.jsx)(Tooltip, { title: "Ordered List", placement: "top", children: /* @__PURE__ */ (0, import_jsx_runtime133.jsx)(
16815
17530
  "button",
16816
17531
  {
16817
17532
  "data-testid": "element-ordered-list",
@@ -16827,58 +17542,58 @@ var RichTextToolbar = ({ config, customControls, onInsertTable, onInsertAsset })
16827
17542
  richTextToolbarButton,
16828
17543
  activeElement === "orderedList" ? richTextToolbarButtonActive : null
16829
17544
  ],
16830
- children: /* @__PURE__ */ (0, import_jsx_runtime130.jsx)(RichTextToolbarIcon, { icon: "layout-list-numbered" })
17545
+ children: /* @__PURE__ */ (0, import_jsx_runtime133.jsx)(RichTextToolbarIcon, { icon: "layout-list-numbered" })
16831
17546
  }
16832
17547
  ) }) : null
16833
17548
  ] }) : null,
16834
17549
  customControls ? customControls : null
16835
17550
  ] }) : null,
16836
- visibleInsertElementsWithIcons.size > 0 ? /* @__PURE__ */ (0, import_jsx_runtime130.jsx)("div", { css: toolbarGroup, "data-testid": "rich-text-toolbar-insert", children: /* @__PURE__ */ (0, import_jsx_runtime130.jsxs)(
17551
+ visibleInsertElementsWithIcons.size > 0 ? /* @__PURE__ */ (0, import_jsx_runtime133.jsx)("div", { css: toolbarGroup, "data-testid": "rich-text-toolbar-insert", children: /* @__PURE__ */ (0, import_jsx_runtime133.jsxs)(
16837
17552
  Menu,
16838
17553
  {
16839
- menuTrigger: /* @__PURE__ */ (0, import_jsx_runtime130.jsxs)("button", { css: richTextToolbarButton, title: "Insert block element", type: "button", children: [
17554
+ menuTrigger: /* @__PURE__ */ (0, import_jsx_runtime133.jsxs)("button", { css: richTextToolbarButton, title: "Insert block element", type: "button", children: [
16840
17555
  "Insert",
16841
- /* @__PURE__ */ (0, import_jsx_runtime130.jsx)(Icon, { icon: "chevron-down", css: [toolbarIcon, toolbarChevron], size: "1rem" })
17556
+ /* @__PURE__ */ (0, import_jsx_runtime133.jsx)(Icon, { icon: "chevron-down", css: [toolbarIcon, toolbarChevron], size: "1rem" })
16842
17557
  ] }),
16843
17558
  placement: "bottom-start",
16844
17559
  children: [
16845
- quoteElementVisible ? /* @__PURE__ */ (0, import_jsx_runtime130.jsx)(
17560
+ quoteElementVisible ? /* @__PURE__ */ (0, import_jsx_runtime133.jsx)(
16846
17561
  MenuItem,
16847
17562
  {
16848
17563
  onClick: () => {
16849
17564
  onSelectElement("quote");
16850
17565
  },
16851
- icon: /* @__PURE__ */ (0, import_jsx_runtime130.jsx)(Icon, { icon: "quote", iconColor: "currentColor" }),
17566
+ icon: /* @__PURE__ */ (0, import_jsx_runtime133.jsx)(Icon, { icon: "quote", iconColor: "currentColor" }),
16852
17567
  children: "Quote"
16853
17568
  }
16854
17569
  ) : null,
16855
- codeElementVisible ? /* @__PURE__ */ (0, import_jsx_runtime130.jsx)(
17570
+ codeElementVisible ? /* @__PURE__ */ (0, import_jsx_runtime133.jsx)(
16856
17571
  MenuItem,
16857
17572
  {
16858
17573
  onClick: () => {
16859
17574
  onSelectElement("code");
16860
17575
  },
16861
- icon: /* @__PURE__ */ (0, import_jsx_runtime130.jsx)(Icon, { icon: "code-slash", iconColor: "currentColor" }),
17576
+ icon: /* @__PURE__ */ (0, import_jsx_runtime133.jsx)(Icon, { icon: "code-slash", iconColor: "currentColor" }),
16862
17577
  children: "Code"
16863
17578
  }
16864
17579
  ) : null,
16865
- tableElementVisible && onInsertTable !== void 0 ? /* @__PURE__ */ (0, import_jsx_runtime130.jsx)(
17580
+ tableElementVisible && onInsertTable !== void 0 ? /* @__PURE__ */ (0, import_jsx_runtime133.jsx)(
16866
17581
  MenuItem,
16867
17582
  {
16868
17583
  onClick: () => {
16869
17584
  onSelectElement("table");
16870
17585
  },
16871
- icon: /* @__PURE__ */ (0, import_jsx_runtime130.jsx)(Icon, { icon: "view-grid", iconColor: "currentColor" }),
17586
+ icon: /* @__PURE__ */ (0, import_jsx_runtime133.jsx)(Icon, { icon: "view-grid", iconColor: "currentColor" }),
16872
17587
  children: "Table"
16873
17588
  }
16874
17589
  ) : null,
16875
- assetElementVisible && onInsertAsset !== void 0 ? /* @__PURE__ */ (0, import_jsx_runtime130.jsx)(
17590
+ assetElementVisible && onInsertAsset !== void 0 ? /* @__PURE__ */ (0, import_jsx_runtime133.jsx)(
16876
17591
  MenuItem,
16877
17592
  {
16878
17593
  onClick: () => {
16879
17594
  onSelectElement("asset");
16880
17595
  },
16881
- icon: /* @__PURE__ */ (0, import_jsx_runtime130.jsx)(Icon, { icon: "image", iconColor: "currentColor" }),
17596
+ icon: /* @__PURE__ */ (0, import_jsx_runtime133.jsx)(Icon, { icon: "image", iconColor: "currentColor" }),
16882
17597
  children: "Asset"
16883
17598
  }
16884
17599
  ) : null
@@ -16890,9 +17605,9 @@ var RichTextToolbar = ({ config, customControls, onInsertTable, onInsertAsset })
16890
17605
  var RichTextToolbar_default = RichTextToolbar;
16891
17606
 
16892
17607
  // src/components/ParameterInputs/ParameterRichText.tsx
16893
- var import_jsx_runtime131 = require("@emotion/react/jsx-runtime");
17608
+ var import_jsx_runtime134 = require("@emotion/react/jsx-runtime");
16894
17609
  var ParameterRichText = ({
16895
- label,
17610
+ label: label2,
16896
17611
  labelLeadingIcon,
16897
17612
  hiddenLabel,
16898
17613
  id,
@@ -16904,11 +17619,11 @@ var ParameterRichText = ({
16904
17619
  children,
16905
17620
  ...innerProps
16906
17621
  }) => {
16907
- return /* @__PURE__ */ (0, import_jsx_runtime131.jsxs)(
17622
+ return /* @__PURE__ */ (0, import_jsx_runtime134.jsxs)(
16908
17623
  ParameterShell,
16909
17624
  {
16910
17625
  "data-testid": "parameter-richtext",
16911
- label,
17626
+ label: label2,
16912
17627
  hiddenLabel,
16913
17628
  labelLeadingIcon,
16914
17629
  id,
@@ -16918,13 +17633,13 @@ var ParameterRichText = ({
16918
17633
  captionTestId,
16919
17634
  menuItems,
16920
17635
  children: [
16921
- /* @__PURE__ */ (0, import_jsx_runtime131.jsx)(ParameterRichTextInner, { ...innerProps, children }),
16922
- menuItems ? /* @__PURE__ */ (0, import_jsx_runtime131.jsx)(ParameterMenuButton, { label: `${label} menu`, children: /* @__PURE__ */ (0, import_jsx_runtime131.jsx)(import_jsx_runtime131.Fragment, { children: menuItems }) }) : null
17636
+ /* @__PURE__ */ (0, import_jsx_runtime134.jsx)(ParameterRichTextInner, { ...innerProps, children }),
17637
+ menuItems ? /* @__PURE__ */ (0, import_jsx_runtime134.jsx)(ParameterMenuButton, { label: `${label2} menu`, children: /* @__PURE__ */ (0, import_jsx_runtime134.jsx)(import_jsx_runtime134.Fragment, { children: menuItems }) }) : null
16923
17638
  ]
16924
17639
  }
16925
17640
  );
16926
17641
  };
16927
- var editorContainerWrapper = import_react159.css`
17642
+ var editorContainerWrapper = import_react163.css`
16928
17643
  position: relative;
16929
17644
 
16930
17645
  &::before {
@@ -16940,12 +17655,12 @@ var editorContainerWrapper = import_react159.css`
16940
17655
  z-index: 2;
16941
17656
  }
16942
17657
  `;
16943
- var editorWrapper = import_react159.css`
17658
+ var editorWrapper = import_react163.css`
16944
17659
  display: flex;
16945
17660
  flex-flow: column;
16946
17661
  flex-grow: 1;
16947
17662
  `;
16948
- var editorContainer = import_react159.css`
17663
+ var editorContainer = import_react163.css`
16949
17664
  ${scrollbarStyles}
16950
17665
  background: var(--white);
16951
17666
  border-radius: var(--rounded-sm);
@@ -16977,7 +17692,7 @@ var editorContainer = import_react159.css`
16977
17692
  max-height: unset;
16978
17693
  }
16979
17694
  `;
16980
- var editorContainerOverflowWrapper = import_react159.css`
17695
+ var editorContainerOverflowWrapper = import_react163.css`
16981
17696
  overflow: hidden;
16982
17697
  pointer-events: none;
16983
17698
 
@@ -16985,7 +17700,7 @@ var editorContainerOverflowWrapper = import_react159.css`
16985
17700
  pointer-events: auto;
16986
17701
  }
16987
17702
  `;
16988
- var editorPlaceholder = import_react159.css`
17703
+ var editorPlaceholder = import_react163.css`
16989
17704
  color: var(--gray-500);
16990
17705
  font-style: italic;
16991
17706
  /* 1px is added to make sure caret is clearly visible when field is focused
@@ -16996,7 +17711,7 @@ var editorPlaceholder = import_react159.css`
16996
17711
  top: calc(1rem + var(--spacing-sm));
16997
17712
  user-select: none;
16998
17713
  `;
16999
- var editorInput = import_react159.css`
17714
+ var editorInput = import_react163.css`
17000
17715
  min-height: 100%;
17001
17716
  flex-grow: 1;
17002
17717
 
@@ -17069,8 +17784,8 @@ var ParameterRichTextInner = ({
17069
17784
  },
17070
17785
  editable: !richTextProps.readOnly
17071
17786
  };
17072
- return /* @__PURE__ */ (0, import_jsx_runtime131.jsxs)(import_jsx_runtime131.Fragment, { children: [
17073
- /* @__PURE__ */ (0, import_jsx_runtime131.jsx)("div", { css: [editorWrapper], className: editorWrapperClassName, children: /* @__PURE__ */ (0, import_jsx_runtime131.jsx)(import_LexicalComposer.LexicalComposer, { initialConfig: lexicalConfig, children: /* @__PURE__ */ (0, import_jsx_runtime131.jsx)(RichText, { ...richTextProps, children }) }) }),
17787
+ return /* @__PURE__ */ (0, import_jsx_runtime134.jsxs)(import_jsx_runtime134.Fragment, { children: [
17788
+ /* @__PURE__ */ (0, import_jsx_runtime134.jsx)("div", { css: [editorWrapper], className: editorWrapperClassName, children: /* @__PURE__ */ (0, import_jsx_runtime134.jsx)(import_LexicalComposer.LexicalComposer, { initialConfig: lexicalConfig, children: /* @__PURE__ */ (0, import_jsx_runtime134.jsx)(RichText, { ...richTextProps, children }) }) }),
17074
17789
  editorFooter ? editorFooter : null
17075
17790
  ] });
17076
17791
  };
@@ -17100,12 +17815,12 @@ var RichText = ({
17100
17815
  placeholder
17101
17816
  }) => {
17102
17817
  const [editor] = (0, import_LexicalComposerContext9.useLexicalComposerContext)();
17103
- (0, import_react160.useEffect)(() => {
17818
+ (0, import_react164.useEffect)(() => {
17104
17819
  if (onRichTextInit) {
17105
17820
  onRichTextInit(editor);
17106
17821
  }
17107
17822
  }, [editor, onRichTextInit]);
17108
- (0, import_react160.useEffect)(() => {
17823
+ (0, import_react164.useEffect)(() => {
17109
17824
  const removeUpdateListener = editor.registerUpdateListener(({ editorState, prevEditorState, tags }) => {
17110
17825
  requestAnimationFrame(() => {
17111
17826
  const previousEditorState = prevEditorState.toJSON();
@@ -17122,23 +17837,23 @@ var RichText = ({
17122
17837
  removeUpdateListener();
17123
17838
  };
17124
17839
  }, [editor, onChange]);
17125
- (0, import_react160.useEffect)(() => {
17840
+ (0, import_react164.useEffect)(() => {
17126
17841
  editor.setEditable(!readOnly);
17127
17842
  }, [editor, readOnly]);
17128
- const [editorContainerRef, setEditorContainerRef] = (0, import_react160.useState)(null);
17843
+ const [editorContainerRef, setEditorContainerRef] = (0, import_react164.useState)(null);
17129
17844
  const onEditorContainerRef = (_editorContainerRef) => {
17130
17845
  if (_editorContainerRef !== null) {
17131
17846
  setEditorContainerRef(_editorContainerRef);
17132
17847
  }
17133
17848
  };
17134
- const [portalContainerRef, setPortalContainerRef] = (0, import_react160.useState)(null);
17849
+ const [portalContainerRef, setPortalContainerRef] = (0, import_react164.useState)(null);
17135
17850
  const onPortalContainerRef = (_portalContainerRef) => {
17136
17851
  if (_portalContainerRef !== null) {
17137
17852
  setPortalContainerRef(_portalContainerRef);
17138
17853
  }
17139
17854
  };
17140
- return /* @__PURE__ */ (0, import_jsx_runtime131.jsxs)(import_jsx_runtime131.Fragment, { children: [
17141
- readOnly || minimalInteractivity ? null : /* @__PURE__ */ (0, import_jsx_runtime131.jsx)(
17855
+ return /* @__PURE__ */ (0, import_jsx_runtime134.jsxs)(import_jsx_runtime134.Fragment, { children: [
17856
+ readOnly || minimalInteractivity ? null : /* @__PURE__ */ (0, import_jsx_runtime134.jsx)(
17142
17857
  RichTextToolbar_default,
17143
17858
  {
17144
17859
  config,
@@ -17147,8 +17862,8 @@ var RichText = ({
17147
17862
  onInsertAsset
17148
17863
  }
17149
17864
  ),
17150
- /* @__PURE__ */ (0, import_jsx_runtime131.jsxs)("div", { css: editorContainerWrapper, ref: onPortalContainerRef, children: [
17151
- /* @__PURE__ */ (0, import_jsx_runtime131.jsxs)(
17865
+ /* @__PURE__ */ (0, import_jsx_runtime134.jsxs)("div", { css: editorContainerWrapper, ref: onPortalContainerRef, children: [
17866
+ /* @__PURE__ */ (0, import_jsx_runtime134.jsxs)(
17152
17867
  "div",
17153
17868
  {
17154
17869
  css: editorContainer,
@@ -17156,33 +17871,33 @@ var RichText = ({
17156
17871
  ref: onEditorContainerRef,
17157
17872
  "data-testid": "value-container",
17158
17873
  children: [
17159
- /* @__PURE__ */ (0, import_jsx_runtime131.jsx)(
17874
+ /* @__PURE__ */ (0, import_jsx_runtime134.jsx)(
17160
17875
  import_LexicalRichTextPlugin.RichTextPlugin,
17161
17876
  {
17162
- contentEditable: /* @__PURE__ */ (0, import_jsx_runtime131.jsx)(import_LexicalContentEditable.ContentEditable, { css: editorInput, className: editorInputClassName }),
17163
- placeholder: /* @__PURE__ */ (0, import_jsx_runtime131.jsx)("div", { css: editorPlaceholder, "data-placeholder": true, children: placeholder != null ? placeholder : readOnly ? "empty" : "start editing..." }),
17877
+ contentEditable: /* @__PURE__ */ (0, import_jsx_runtime134.jsx)(import_LexicalContentEditable.ContentEditable, { css: editorInput, className: editorInputClassName }),
17878
+ placeholder: /* @__PURE__ */ (0, import_jsx_runtime134.jsx)("div", { css: editorPlaceholder, "data-placeholder": true, children: placeholder != null ? placeholder : readOnly ? "empty" : "start editing..." }),
17164
17879
  ErrorBoundary: import_LexicalErrorBoundary.default
17165
17880
  }
17166
17881
  ),
17167
- /* @__PURE__ */ (0, import_jsx_runtime131.jsx)(import_LexicalListPlugin.ListPlugin, {}),
17168
- /* @__PURE__ */ (0, import_jsx_runtime131.jsx)(ListIndentPlugin, { maxDepth: 4 }),
17169
- /* @__PURE__ */ (0, import_jsx_runtime131.jsx)(import_LexicalTablePlugin.TablePlugin, { hasCellMerge: false, hasCellBackgroundColor: false }),
17170
- /* @__PURE__ */ (0, import_jsx_runtime131.jsx)("div", { css: editorContainerOverflowWrapper, "data-testid": "table-action-menu-plugin", children: editorContainerRef && portalContainerRef && !minimalInteractivity ? /* @__PURE__ */ (0, import_jsx_runtime131.jsx)(
17882
+ /* @__PURE__ */ (0, import_jsx_runtime134.jsx)(import_LexicalListPlugin.ListPlugin, {}),
17883
+ /* @__PURE__ */ (0, import_jsx_runtime134.jsx)(ListIndentPlugin, { maxDepth: 4 }),
17884
+ /* @__PURE__ */ (0, import_jsx_runtime134.jsx)(import_LexicalTablePlugin.TablePlugin, { hasCellMerge: false, hasCellBackgroundColor: false }),
17885
+ /* @__PURE__ */ (0, import_jsx_runtime134.jsx)("div", { css: editorContainerOverflowWrapper, "data-testid": "table-action-menu-plugin", children: editorContainerRef && portalContainerRef && !minimalInteractivity ? /* @__PURE__ */ (0, import_jsx_runtime134.jsx)(
17171
17886
  TableActionMenuPlugin,
17172
17887
  {
17173
17888
  positioningAnchorEl: editorContainerRef,
17174
17889
  menuPortalEl: portalContainerRef
17175
17890
  }
17176
17891
  ) : null }),
17177
- editorContainerRef && !minimalInteractivity ? /* @__PURE__ */ (0, import_jsx_runtime131.jsx)(TableCellResizerPlugin, { positioningAnchorEl: editorContainerRef }) : null,
17178
- readOnly ? null : /* @__PURE__ */ (0, import_jsx_runtime131.jsx)(import_LexicalHistoryPlugin.HistoryPlugin, {}),
17179
- /* @__PURE__ */ (0, import_jsx_runtime131.jsx)(DisableStylesPlugin, {}),
17180
- /* @__PURE__ */ (0, import_jsx_runtime131.jsx)(import_LexicalMarkdownShortcutPlugin.MarkdownShortcutPlugin, { transformers: MARKDOWN_TRANSFORMERS })
17892
+ editorContainerRef && !minimalInteractivity ? /* @__PURE__ */ (0, import_jsx_runtime134.jsx)(TableCellResizerPlugin, { positioningAnchorEl: editorContainerRef }) : null,
17893
+ readOnly ? null : /* @__PURE__ */ (0, import_jsx_runtime134.jsx)(import_LexicalHistoryPlugin.HistoryPlugin, {}),
17894
+ /* @__PURE__ */ (0, import_jsx_runtime134.jsx)(DisableStylesPlugin, {}),
17895
+ /* @__PURE__ */ (0, import_jsx_runtime134.jsx)(import_LexicalMarkdownShortcutPlugin.MarkdownShortcutPlugin, { transformers: MARKDOWN_TRANSFORMERS })
17181
17896
  ]
17182
17897
  }
17183
17898
  ),
17184
- /* @__PURE__ */ (0, import_jsx_runtime131.jsx)(import_jsx_runtime131.Fragment, { children }),
17185
- editorContainerRef ? /* @__PURE__ */ (0, import_jsx_runtime131.jsx)(
17899
+ /* @__PURE__ */ (0, import_jsx_runtime134.jsx)(import_jsx_runtime134.Fragment, { children }),
17900
+ editorContainerRef ? /* @__PURE__ */ (0, import_jsx_runtime134.jsx)(
17186
17901
  LinkNodePlugin,
17187
17902
  {
17188
17903
  onConnectLink: onConnectLink ? onConnectLink : () => Promise.resolve(),
@@ -17193,38 +17908,38 @@ var RichText = ({
17193
17908
  positioningAnchorEl: editorContainerRef
17194
17909
  }
17195
17910
  ) : null,
17196
- /* @__PURE__ */ (0, import_jsx_runtime131.jsx)(TableSelectionPlugin_default, {}),
17197
- /* @__PURE__ */ (0, import_jsx_runtime131.jsx)(ImprovedAssetSelectionPlugin_default, {})
17911
+ /* @__PURE__ */ (0, import_jsx_runtime134.jsx)(TableSelectionPlugin_default, {}),
17912
+ /* @__PURE__ */ (0, import_jsx_runtime134.jsx)(ImprovedAssetSelectionPlugin_default, {})
17198
17913
  ] })
17199
17914
  ] });
17200
17915
  };
17201
17916
 
17202
17917
  // src/components/ParameterInputs/ParameterSelect.tsx
17203
17918
  init_emotion_jsx_shim();
17204
- var import_react161 = require("react");
17205
- var import_jsx_runtime132 = require("@emotion/react/jsx-runtime");
17206
- var ParameterSelect = (0, import_react161.forwardRef)(
17919
+ var import_react165 = require("react");
17920
+ var import_jsx_runtime135 = require("@emotion/react/jsx-runtime");
17921
+ var ParameterSelect = (0, import_react165.forwardRef)(
17207
17922
  ({ defaultOption, options, ...props }, ref) => {
17208
17923
  const { shellProps, innerProps } = extractParameterProps(props);
17209
- return /* @__PURE__ */ (0, import_jsx_runtime132.jsx)(ParameterShell, { ...shellProps, children: /* @__PURE__ */ (0, import_jsx_runtime132.jsx)(ParameterSelectInner, { options, defaultOption, ...innerProps, ref }) });
17924
+ return /* @__PURE__ */ (0, import_jsx_runtime135.jsx)(ParameterShell, { ...shellProps, children: /* @__PURE__ */ (0, import_jsx_runtime135.jsx)(ParameterSelectInner, { options, defaultOption, ...innerProps, ref }) });
17210
17925
  }
17211
17926
  );
17212
- var ParameterSelectInner = (0, import_react161.forwardRef)(
17927
+ var ParameterSelectInner = (0, import_react165.forwardRef)(
17213
17928
  ({ defaultOption, options, ...props }, ref) => {
17214
- const { id, label, hiddenLabel } = useParameterShell();
17215
- return /* @__PURE__ */ (0, import_jsx_runtime132.jsxs)(
17929
+ const { id, label: label2, hiddenLabel } = useParameterShell();
17930
+ return /* @__PURE__ */ (0, import_jsx_runtime135.jsxs)(
17216
17931
  "select",
17217
17932
  {
17218
17933
  css: [input3, selectInput],
17219
17934
  id,
17220
- "aria-label": hiddenLabel && typeof label === "string" ? label : void 0,
17935
+ "aria-label": hiddenLabel && typeof label2 === "string" ? label2 : void 0,
17221
17936
  ref,
17222
17937
  ...props,
17223
17938
  children: [
17224
- defaultOption ? /* @__PURE__ */ (0, import_jsx_runtime132.jsx)("option", { value: "", children: defaultOption }) : null,
17939
+ defaultOption ? /* @__PURE__ */ (0, import_jsx_runtime135.jsx)("option", { value: "", children: defaultOption }) : null,
17225
17940
  options.map((option) => {
17226
17941
  var _a;
17227
- return /* @__PURE__ */ (0, import_jsx_runtime132.jsx)("option", { value: (_a = option.value) != null ? _a : option.label, children: option.label }, option.label);
17942
+ return /* @__PURE__ */ (0, import_jsx_runtime135.jsx)("option", { value: (_a = option.value) != null ? _a : option.label, children: option.label }, option.label);
17228
17943
  })
17229
17944
  ]
17230
17945
  }
@@ -17232,23 +17947,65 @@ var ParameterSelectInner = (0, import_react161.forwardRef)(
17232
17947
  }
17233
17948
  );
17234
17949
 
17950
+ // src/components/ParameterInputs/ParameterSelectSlider.tsx
17951
+ init_emotion_jsx_shim();
17952
+ var import_react166 = require("react");
17953
+ var import_jsx_runtime136 = require("@emotion/react/jsx-runtime");
17954
+ var ParameterSelectSlider = (0, import_react166.forwardRef)(
17955
+ (props, ref) => {
17956
+ const { shellProps, innerProps } = extractParameterProps(props);
17957
+ return /* @__PURE__ */ (0, import_jsx_runtime136.jsx)(ParameterShell, { "data-testid": "parameter-select-slider", ...shellProps, children: /* @__PURE__ */ (0, import_jsx_runtime136.jsx)(ParameterSelectSliderInner, { ref, ...innerProps }) });
17958
+ }
17959
+ );
17960
+ var ParameterSelectSliderInner = (0, import_react166.forwardRef)(({ options, value, onChange, ...props }, ref) => {
17961
+ const { id, label: label2, hiddenLabel } = useParameterShell();
17962
+ const numericValue = (0, import_react166.useMemo)(() => {
17963
+ const index = options.findIndex((option) => option.value === value);
17964
+ return index >= 0 ? index : 0;
17965
+ }, [options, value]);
17966
+ const handleChange = (0, import_react166.useCallback)(
17967
+ (newIndex) => {
17968
+ const selectedOption = options[newIndex];
17969
+ if (selectedOption) {
17970
+ onChange(selectedOption.value);
17971
+ }
17972
+ },
17973
+ [options, onChange]
17974
+ );
17975
+ return /* @__PURE__ */ (0, import_jsx_runtime136.jsx)(
17976
+ Slider,
17977
+ {
17978
+ ref,
17979
+ id,
17980
+ "aria-label": hiddenLabel && typeof label2 === "string" ? label2 : void 0,
17981
+ value: numericValue,
17982
+ onChange: handleChange,
17983
+ options,
17984
+ showNumberInput: false,
17985
+ ...props
17986
+ }
17987
+ );
17988
+ });
17989
+ ParameterSelectSlider.displayName = "ParameterSelectSlider";
17990
+ ParameterSelectSliderInner.displayName = "ParameterSelectSliderInner";
17991
+
17235
17992
  // src/components/ParameterInputs/ParameterTextarea.tsx
17236
17993
  init_emotion_jsx_shim();
17237
- var import_react162 = require("react");
17238
- var import_jsx_runtime133 = require("@emotion/react/jsx-runtime");
17239
- var ParameterTextarea = (0, import_react162.forwardRef)((props, ref) => {
17994
+ var import_react167 = require("react");
17995
+ var import_jsx_runtime137 = require("@emotion/react/jsx-runtime");
17996
+ var ParameterTextarea = (0, import_react167.forwardRef)((props, ref) => {
17240
17997
  const { shellProps, innerProps } = extractParameterProps(props);
17241
- return /* @__PURE__ */ (0, import_jsx_runtime133.jsx)(ParameterShell, { "data-testid": "parameter-textarea", ...shellProps, children: /* @__PURE__ */ (0, import_jsx_runtime133.jsx)(ParameterTextareaInner, { ref, ...innerProps }) });
17998
+ return /* @__PURE__ */ (0, import_jsx_runtime137.jsx)(ParameterShell, { "data-testid": "parameter-textarea", ...shellProps, children: /* @__PURE__ */ (0, import_jsx_runtime137.jsx)(ParameterTextareaInner, { ref, ...innerProps }) });
17242
17999
  });
17243
- var ParameterTextareaInner = (0, import_react162.forwardRef)(({ ...props }, ref) => {
17244
- const { id, label, hiddenLabel } = useParameterShell();
17245
- return /* @__PURE__ */ (0, import_jsx_runtime133.jsx)(
18000
+ var ParameterTextareaInner = (0, import_react167.forwardRef)(({ ...props }, ref) => {
18001
+ const { id, label: label2, hiddenLabel } = useParameterShell();
18002
+ return /* @__PURE__ */ (0, import_jsx_runtime137.jsx)(
17246
18003
  "textarea",
17247
18004
  {
17248
18005
  css: [input3, textarea2],
17249
18006
  id,
17250
18007
  ref,
17251
- "aria-label": hiddenLabel && typeof label === "string" ? label : void 0,
18008
+ "aria-label": hiddenLabel && typeof label2 === "string" ? label2 : void 0,
17252
18009
  ...props
17253
18010
  }
17254
18011
  );
@@ -17256,30 +18013,45 @@ var ParameterTextareaInner = (0, import_react162.forwardRef)(({ ...props }, ref)
17256
18013
 
17257
18014
  // src/components/ParameterInputs/ParameterToggle.tsx
17258
18015
  init_emotion_jsx_shim();
17259
- var import_react163 = require("react");
17260
- var import_jsx_runtime134 = require("@emotion/react/jsx-runtime");
17261
- var ParameterToggle = (0, import_react163.forwardRef)((props, ref) => {
18016
+ var import_react168 = require("react");
18017
+ var import_jsx_runtime138 = require("@emotion/react/jsx-runtime");
18018
+ var ParameterToggle = (0, import_react168.forwardRef)((props, ref) => {
17262
18019
  const { shellProps, innerProps } = extractParameterProps(props);
17263
- return /* @__PURE__ */ (0, import_jsx_runtime134.jsx)(ParameterShell, { ...shellProps, children: /* @__PURE__ */ (0, import_jsx_runtime134.jsx)(ParameterToggleInner, { ref, ...innerProps }) });
18020
+ return /* @__PURE__ */ (0, import_jsx_runtime138.jsx)(ParameterShell, { ...shellProps, children: /* @__PURE__ */ (0, import_jsx_runtime138.jsx)(ParameterToggleInner, { ref, ...innerProps }) });
17264
18021
  });
17265
- var ParameterToggleInner = (0, import_react163.forwardRef)(
18022
+ ParameterToggle.displayName = "ParameterToggle";
18023
+ var ParameterToggleInner = (0, import_react168.forwardRef)(
17266
18024
  ({ children, ...props }, ref) => {
17267
- const { id, label } = useParameterShell();
17268
- return /* @__PURE__ */ (0, import_jsx_runtime134.jsxs)("label", { css: inputToggleLabel2, children: [
17269
- /* @__PURE__ */ (0, import_jsx_runtime134.jsx)("input", { css: toggleInput2, type: props.type, id, ref, ...props }),
17270
- /* @__PURE__ */ (0, import_jsx_runtime134.jsx)("span", { css: inlineLabel2, children: label }),
18025
+ const { type, withoutIndeterminateState, ...otherProps } = props;
18026
+ const { id, label: label2 } = useParameterShell();
18027
+ return /* @__PURE__ */ (0, import_jsx_runtime138.jsxs)("label", { css: inputToggleLabel2, children: [
18028
+ /* @__PURE__ */ (0, import_jsx_runtime138.jsx)(
18029
+ "input",
18030
+ {
18031
+ css: [
18032
+ toggleInput2,
18033
+ !props.withoutIndeterminateState ? toggleInputIndeterminateState : void 0
18034
+ ],
18035
+ type,
18036
+ id,
18037
+ ref,
18038
+ ...otherProps
18039
+ }
18040
+ ),
18041
+ /* @__PURE__ */ (0, import_jsx_runtime138.jsx)("span", { css: inlineLabel2, children: label2 }),
17271
18042
  children
17272
18043
  ] });
17273
18044
  }
17274
18045
  );
18046
+ ParameterToggleInner.displayName = "ParameterToggleInner";
17275
18047
 
17276
18048
  // src/components/ProgressBar/ProgressBar.tsx
17277
18049
  init_emotion_jsx_shim();
17278
18050
 
17279
18051
  // src/components/ProgressBar/ProgressBar.styles.ts
17280
18052
  init_emotion_jsx_shim();
17281
- var import_react164 = require("@emotion/react");
17282
- var container3 = import_react164.css`
18053
+ var import_react169 = require("@emotion/react");
18054
+ var container4 = import_react169.css`
17283
18055
  background: var(--gray-50);
17284
18056
  margin-block: var(--spacing-sm);
17285
18057
  position: relative;
@@ -17289,17 +18061,17 @@ var container3 = import_react164.css`
17289
18061
  border: solid 1px var(--gray-300);
17290
18062
  `;
17291
18063
  var themeMap = {
17292
- primary: import_react164.css`
18064
+ primary: import_react169.css`
17293
18065
  --progress-color: var(--accent-light);
17294
18066
  `,
17295
- secondary: import_react164.css`
18067
+ secondary: import_react169.css`
17296
18068
  --progress-color: var(--accent-alt-light);
17297
18069
  `,
17298
- destructive: import_react164.css`
18070
+ destructive: import_react169.css`
17299
18071
  --progress-color: var(--brand-secondary-5);
17300
18072
  `
17301
18073
  };
17302
- var slidingBackgroundPosition = import_react164.keyframes`
18074
+ var slidingBackgroundPosition = import_react169.keyframes`
17303
18075
  from {
17304
18076
  background-position: 0 0;
17305
18077
  }
@@ -17307,10 +18079,10 @@ var slidingBackgroundPosition = import_react164.keyframes`
17307
18079
  background-position: 64px 0;
17308
18080
  }
17309
18081
  `;
17310
- var determinate = import_react164.css`
18082
+ var determinate = import_react169.css`
17311
18083
  background-color: var(--progress-color);
17312
18084
  `;
17313
- var indeterminate = import_react164.css`
18085
+ var indeterminate = import_react169.css`
17314
18086
  background-image: linear-gradient(
17315
18087
  45deg,
17316
18088
  var(--progress-color) 25%,
@@ -17324,7 +18096,7 @@ var indeterminate = import_react164.css`
17324
18096
  background-size: 64px 64px;
17325
18097
  animation: ${slidingBackgroundPosition} 1s linear infinite;
17326
18098
  `;
17327
- var bar = import_react164.css`
18099
+ var bar = import_react169.css`
17328
18100
  position: absolute;
17329
18101
  inset: 0;
17330
18102
  transition: transform var(--duration-fast) var(--timing-ease-out);
@@ -17332,7 +18104,7 @@ var bar = import_react164.css`
17332
18104
  `;
17333
18105
 
17334
18106
  // src/components/ProgressBar/ProgressBar.tsx
17335
- var import_jsx_runtime135 = require("@emotion/react/jsx-runtime");
18107
+ var import_jsx_runtime139 = require("@emotion/react/jsx-runtime");
17336
18108
  function ProgressBar({
17337
18109
  current,
17338
18110
  max,
@@ -17342,10 +18114,10 @@ function ProgressBar({
17342
18114
  }) {
17343
18115
  const valueNow = Math.min(current, max);
17344
18116
  const valuePercentage = max > 0 ? Math.ceil(100 / max * valueNow) : 0;
17345
- return /* @__PURE__ */ (0, import_jsx_runtime135.jsx)(
18117
+ return /* @__PURE__ */ (0, import_jsx_runtime139.jsx)(
17346
18118
  "div",
17347
18119
  {
17348
- css: container3,
18120
+ css: container4,
17349
18121
  role: "progressbar",
17350
18122
  "aria-busy": valuePercentage !== 100,
17351
18123
  "aria-invalid": false,
@@ -17353,7 +18125,7 @@ function ProgressBar({
17353
18125
  "aria-valuemax": max,
17354
18126
  "aria-valuenow": valueNow,
17355
18127
  ...props,
17356
- children: /* @__PURE__ */ (0, import_jsx_runtime135.jsx)(
18128
+ children: /* @__PURE__ */ (0, import_jsx_runtime139.jsx)(
17357
18129
  "div",
17358
18130
  {
17359
18131
  css: [
@@ -17373,31 +18145,31 @@ function ProgressBar({
17373
18145
 
17374
18146
  // src/components/ProgressList/ProgressList.tsx
17375
18147
  init_emotion_jsx_shim();
17376
- var import_react166 = require("@emotion/react");
18148
+ var import_react171 = require("@emotion/react");
17377
18149
  var import_CgCheckO3 = require("@react-icons/all-files/cg/CgCheckO");
17378
18150
  var import_CgRadioCheck2 = require("@react-icons/all-files/cg/CgRadioCheck");
17379
18151
  var import_CgRecord2 = require("@react-icons/all-files/cg/CgRecord");
17380
- var import_react167 = require("react");
18152
+ var import_react172 = require("react");
17381
18153
 
17382
18154
  // src/components/ProgressList/styles/ProgressList.styles.ts
17383
18155
  init_emotion_jsx_shim();
17384
- var import_react165 = require("@emotion/react");
17385
- var progressListStyles = import_react165.css`
18156
+ var import_react170 = require("@emotion/react");
18157
+ var progressListStyles = import_react170.css`
17386
18158
  display: flex;
17387
18159
  flex-direction: column;
17388
18160
  gap: var(--spacing-sm);
17389
18161
  list-style-type: none;
17390
18162
  `;
17391
- var progressListItemStyles = import_react165.css`
18163
+ var progressListItemStyles = import_react170.css`
17392
18164
  display: flex;
17393
18165
  gap: var(--spacing-base);
17394
18166
  align-items: center;
17395
18167
  `;
17396
18168
 
17397
18169
  // src/components/ProgressList/ProgressList.tsx
17398
- var import_jsx_runtime136 = require("@emotion/react/jsx-runtime");
18170
+ var import_jsx_runtime140 = require("@emotion/react/jsx-runtime");
17399
18171
  var ProgressList = ({ inProgressId, items, autoEllipsis, ...htmlProps }) => {
17400
- const itemsWithStatus = (0, import_react167.useMemo)(() => {
18172
+ const itemsWithStatus = (0, import_react172.useMemo)(() => {
17401
18173
  const indexOfInProgressItem = items.findIndex(({ id }) => id === inProgressId);
17402
18174
  return items.map((item, index) => {
17403
18175
  let status = "queued";
@@ -17409,15 +18181,15 @@ var ProgressList = ({ inProgressId, items, autoEllipsis, ...htmlProps }) => {
17409
18181
  return { ...item, status };
17410
18182
  });
17411
18183
  }, [items, inProgressId]);
17412
- return /* @__PURE__ */ (0, import_jsx_runtime136.jsx)("ol", { css: progressListStyles, ...htmlProps, children: itemsWithStatus.map(({ id, label, status, error, errorLevel }) => {
17413
- return /* @__PURE__ */ (0, import_jsx_runtime136.jsx)(
18184
+ return /* @__PURE__ */ (0, import_jsx_runtime140.jsx)("ol", { css: progressListStyles, ...htmlProps, children: itemsWithStatus.map(({ id, label: label2, status, error, errorLevel }) => {
18185
+ return /* @__PURE__ */ (0, import_jsx_runtime140.jsx)(
17414
18186
  ProgressListItem,
17415
18187
  {
17416
18188
  status,
17417
18189
  error,
17418
18190
  errorLevel,
17419
18191
  autoEllipsis,
17420
- children: label
18192
+ children: label2
17421
18193
  },
17422
18194
  id
17423
18195
  );
@@ -17430,7 +18202,7 @@ var ProgressListItem = ({
17430
18202
  errorLevel = "danger",
17431
18203
  autoEllipsis = false
17432
18204
  }) => {
17433
- const icon = (0, import_react167.useMemo)(() => {
18205
+ const icon = (0, import_react172.useMemo)(() => {
17434
18206
  if (error) {
17435
18207
  return warningIcon;
17436
18208
  }
@@ -17441,14 +18213,14 @@ var ProgressListItem = ({
17441
18213
  };
17442
18214
  return iconPerStatus[status];
17443
18215
  }, [status, error]);
17444
- const statusStyles = (0, import_react167.useMemo)(() => {
18216
+ const statusStyles = (0, import_react172.useMemo)(() => {
17445
18217
  if (error) {
17446
- return errorLevel === "caution" ? import_react166.css`
18218
+ return errorLevel === "caution" ? import_react171.css`
17447
18219
  color: rgb(161, 98, 7);
17448
18220
  & svg {
17449
18221
  color: rgb(250, 204, 21);
17450
18222
  }
17451
- ` : import_react166.css`
18223
+ ` : import_react171.css`
17452
18224
  color: rgb(185, 28, 28);
17453
18225
  & svg {
17454
18226
  color: var(--brand-primary-2);
@@ -17456,40 +18228,40 @@ var ProgressListItem = ({
17456
18228
  `;
17457
18229
  }
17458
18230
  const colorPerStatus = {
17459
- completed: import_react166.css`
18231
+ completed: import_react171.css`
17460
18232
  opacity: 0.75;
17461
18233
  `,
17462
- inProgress: import_react166.css`
18234
+ inProgress: import_react171.css`
17463
18235
  -webkit-text-stroke-width: thin;
17464
18236
  `,
17465
- queued: import_react166.css`
18237
+ queued: import_react171.css`
17466
18238
  opacity: 0.5;
17467
18239
  `
17468
18240
  };
17469
18241
  return colorPerStatus[status];
17470
18242
  }, [status, error, errorLevel]);
17471
- return /* @__PURE__ */ (0, import_jsx_runtime136.jsxs)("li", { css: [progressListItemStyles, statusStyles], children: [
17472
- /* @__PURE__ */ (0, import_jsx_runtime136.jsx)(Tooltip, { title: error != null ? error : "", children: /* @__PURE__ */ (0, import_jsx_runtime136.jsx)("div", { children: /* @__PURE__ */ (0, import_jsx_runtime136.jsx)(Icon, { icon, size: 20, iconColor: "currentColor" }) }) }),
17473
- /* @__PURE__ */ (0, import_jsx_runtime136.jsxs)("div", { children: [
18243
+ return /* @__PURE__ */ (0, import_jsx_runtime140.jsxs)("li", { css: [progressListItemStyles, statusStyles], children: [
18244
+ /* @__PURE__ */ (0, import_jsx_runtime140.jsx)(Tooltip, { title: error != null ? error : "", children: /* @__PURE__ */ (0, import_jsx_runtime140.jsx)("div", { children: /* @__PURE__ */ (0, import_jsx_runtime140.jsx)(Icon, { icon, size: 20, iconColor: "currentColor" }) }) }),
18245
+ /* @__PURE__ */ (0, import_jsx_runtime140.jsxs)("div", { children: [
17474
18246
  children,
17475
- /* @__PURE__ */ (0, import_jsx_runtime136.jsx)("span", { css: { visibility: autoEllipsis && status === "inProgress" && !error ? "visible" : "hidden" }, children: "..." })
18247
+ /* @__PURE__ */ (0, import_jsx_runtime140.jsx)("span", { css: { visibility: autoEllipsis && status === "inProgress" && !error ? "visible" : "hidden" }, children: "..." })
17476
18248
  ] })
17477
18249
  ] });
17478
18250
  };
17479
18251
 
17480
18252
  // src/components/SegmentedControl/SegmentedControl.tsx
17481
18253
  init_emotion_jsx_shim();
17482
- var import_react169 = require("@emotion/react");
18254
+ var import_react174 = require("@emotion/react");
17483
18255
  var import_CgCheck6 = require("@react-icons/all-files/cg/CgCheck");
17484
- var import_react170 = require("react");
18256
+ var import_react175 = require("react");
17485
18257
 
17486
18258
  // src/components/SegmentedControl/SegmentedControl.styles.ts
17487
18259
  init_emotion_jsx_shim();
17488
- var import_react168 = require("@emotion/react");
17489
- var segmentedControlRootStyles = import_react168.css`
18260
+ var import_react173 = require("@emotion/react");
18261
+ var segmentedControlRootStyles = import_react173.css`
17490
18262
  position: relative;
17491
18263
  `;
17492
- var segmentedControlScrollIndicatorsStyles = import_react168.css`
18264
+ var segmentedControlScrollIndicatorsStyles = import_react173.css`
17493
18265
  position: absolute;
17494
18266
  inset: 0;
17495
18267
  z-index: 1;
@@ -17517,17 +18289,17 @@ var segmentedControlScrollIndicatorsStyles = import_react168.css`
17517
18289
  background: linear-gradient(to left, var(--background-color) 10%, transparent);
17518
18290
  }
17519
18291
  `;
17520
- var segmentedControlScrollIndicatorStartVisibleStyles = import_react168.css`
18292
+ var segmentedControlScrollIndicatorStartVisibleStyles = import_react173.css`
17521
18293
  &::before {
17522
18294
  opacity: 1;
17523
18295
  }
17524
18296
  `;
17525
- var segmentedControlScrollIndicatorEndVisibleStyles = import_react168.css`
18297
+ var segmentedControlScrollIndicatorEndVisibleStyles = import_react173.css`
17526
18298
  &::after {
17527
18299
  opacity: 1;
17528
18300
  }
17529
18301
  `;
17530
- var segmentedControlWrapperStyles = import_react168.css`
18302
+ var segmentedControlWrapperStyles = import_react173.css`
17531
18303
  overflow-y: auto;
17532
18304
  scroll-behavior: smooth;
17533
18305
  scrollbar-width: none;
@@ -17536,7 +18308,7 @@ var segmentedControlWrapperStyles = import_react168.css`
17536
18308
  height: 0px;
17537
18309
  }
17538
18310
  `;
17539
- var segmentedControlStyles = import_react168.css`
18311
+ var segmentedControlStyles = import_react173.css`
17540
18312
  --segmented-control-rounded-value: var(--rounded-base);
17541
18313
  --segmented-control-border-width: 1px;
17542
18314
  --segmented-control-selected-color: var(--brand-secondary-3);
@@ -17555,14 +18327,14 @@ var segmentedControlStyles = import_react168.css`
17555
18327
  border-radius: calc(var(--segmented-control-rounded-value) + var(--segmented-control-border-width));
17556
18328
  font-size: var(--fs-xs);
17557
18329
  `;
17558
- var segmentedControlVerticalStyles = import_react168.css`
18330
+ var segmentedControlVerticalStyles = import_react173.css`
17559
18331
  flex-direction: column;
17560
18332
  --segmented-control-first-border-radius: var(--segmented-control-rounded-value)
17561
18333
  var(--segmented-control-rounded-value) 0 0;
17562
18334
  --segmented-control-last-border-radius: 0 0 var(--segmented-control-rounded-value)
17563
18335
  var(--segmented-control-rounded-value);
17564
18336
  `;
17565
- var segmentedControlItemStyles = import_react168.css`
18337
+ var segmentedControlItemStyles = import_react173.css`
17566
18338
  &:first-of-type label {
17567
18339
  border-radius: var(--segmented-control-first-border-radius);
17568
18340
  }
@@ -17570,10 +18342,10 @@ var segmentedControlItemStyles = import_react168.css`
17570
18342
  border-radius: var(--segmented-control-last-border-radius);
17571
18343
  }
17572
18344
  `;
17573
- var segmentedControlInputStyles = import_react168.css`
18345
+ var segmentedControlInputStyles = import_react173.css`
17574
18346
  ${accessibleHidden}
17575
18347
  `;
17576
- var segmentedControlLabelStyles = (checked, disabled2) => import_react168.css`
18348
+ var segmentedControlLabelStyles = (checked, disabled2) => import_react173.css`
17577
18349
  position: relative;
17578
18350
  display: flex;
17579
18351
  align-items: center;
@@ -17637,25 +18409,25 @@ var segmentedControlLabelStyles = (checked, disabled2) => import_react168.css`
17637
18409
  `}
17638
18410
  }
17639
18411
  `;
17640
- var segmentedControlLabelIconOnlyStyles = import_react168.css`
18412
+ var segmentedControlLabelIconOnlyStyles = import_react173.css`
17641
18413
  padding-inline: 0.5em;
17642
18414
  `;
17643
- var segmentedControlLabelCheckStyles = import_react168.css`
18415
+ var segmentedControlLabelCheckStyles = import_react173.css`
17644
18416
  opacity: 0.5;
17645
18417
  `;
17646
- var segmentedControlLabelContentStyles = import_react168.css`
18418
+ var segmentedControlLabelContentStyles = import_react173.css`
17647
18419
  display: flex;
17648
18420
  align-items: center;
17649
18421
  justify-content: center;
17650
18422
  gap: var(--spacing-sm);
17651
18423
  height: 100%;
17652
18424
  `;
17653
- var segmentedControlLabelTextStyles = import_react168.css`
18425
+ var segmentedControlLabelTextStyles = import_react173.css`
17654
18426
  white-space: nowrap;
17655
18427
  `;
17656
18428
 
17657
18429
  // src/components/SegmentedControl/SegmentedControl.tsx
17658
- var import_jsx_runtime137 = require("@emotion/react/jsx-runtime");
18430
+ var import_jsx_runtime141 = require("@emotion/react/jsx-runtime");
17659
18431
  var SegmentedControl = ({
17660
18432
  name,
17661
18433
  options,
@@ -17670,10 +18442,10 @@ var SegmentedControl = ({
17670
18442
  currentBackgroundColor = "white",
17671
18443
  ...props
17672
18444
  }) => {
17673
- const wrapperRef = (0, import_react170.useRef)(null);
17674
- const [isOverflowStartShadowVisible, setIsOverflowStartShadowVisible] = (0, import_react170.useState)(false);
17675
- const [isOverflowEndShadowVisible, setIsOverflowEndShadowVisible] = (0, import_react170.useState)(false);
17676
- const onOptionChange = (0, import_react170.useCallback)(
18445
+ const wrapperRef = (0, import_react175.useRef)(null);
18446
+ const [isOverflowStartShadowVisible, setIsOverflowStartShadowVisible] = (0, import_react175.useState)(false);
18447
+ const [isOverflowEndShadowVisible, setIsOverflowEndShadowVisible] = (0, import_react175.useState)(false);
18448
+ const onOptionChange = (0, import_react175.useCallback)(
17677
18449
  (event) => {
17678
18450
  if (event.target.checked) {
17679
18451
  onChange == null ? void 0 : onChange(options[parseInt(event.target.value)].value);
@@ -17681,19 +18453,19 @@ var SegmentedControl = ({
17681
18453
  },
17682
18454
  [options, onChange]
17683
18455
  );
17684
- const sizeStyles = (0, import_react170.useMemo)(() => {
18456
+ const sizeStyles = (0, import_react175.useMemo)(() => {
17685
18457
  const map = {
17686
- sm: (0, import_react169.css)({ height: "calc(24px - 2px)", fontSize: "var(--fs-xs)" }),
17687
- md: (0, import_react169.css)({ height: "calc(32px - 2px)", fontSize: "var(--fs-sm)" }),
17688
- lg: (0, import_react169.css)({ height: "calc(40px - 2px)", fontSize: "var(--fs-base)" }),
17689
- xl: (0, import_react169.css)({ height: "calc(48px - 2px)", fontSize: "var(--fs-base)" })
18458
+ sm: (0, import_react174.css)({ height: "calc(24px - 2px)", fontSize: "var(--fs-xs)" }),
18459
+ md: (0, import_react174.css)({ height: "calc(32px - 2px)", fontSize: "var(--fs-sm)" }),
18460
+ lg: (0, import_react174.css)({ height: "calc(40px - 2px)", fontSize: "var(--fs-base)" }),
18461
+ xl: (0, import_react174.css)({ height: "calc(48px - 2px)", fontSize: "var(--fs-base)" })
17690
18462
  };
17691
18463
  return map[size];
17692
18464
  }, [size]);
17693
- const isIconOnly = (0, import_react170.useMemo)(() => {
18465
+ const isIconOnly = (0, import_react175.useMemo)(() => {
17694
18466
  return options.every((option) => option && option.icon && !option.label);
17695
18467
  }, [options]);
17696
- (0, import_react170.useEffect)(() => {
18468
+ (0, import_react175.useEffect)(() => {
17697
18469
  const wrapperElement = wrapperRef.current;
17698
18470
  const onScroll = () => {
17699
18471
  if (!wrapperElement) {
@@ -17714,8 +18486,8 @@ var SegmentedControl = ({
17714
18486
  wrapperElement == null ? void 0 : wrapperElement.removeEventListener("scroll", onScroll);
17715
18487
  };
17716
18488
  }, []);
17717
- return /* @__PURE__ */ (0, import_jsx_runtime137.jsxs)("div", { css: [segmentedControlRootStyles, { "--background-color": currentBackgroundColor }], children: [
17718
- /* @__PURE__ */ (0, import_jsx_runtime137.jsx)("div", { ref: wrapperRef, css: segmentedControlWrapperStyles, children: /* @__PURE__ */ (0, import_jsx_runtime137.jsx)(
18489
+ return /* @__PURE__ */ (0, import_jsx_runtime141.jsxs)("div", { css: [segmentedControlRootStyles, { "--background-color": currentBackgroundColor }], children: [
18490
+ /* @__PURE__ */ (0, import_jsx_runtime141.jsx)("div", { ref: wrapperRef, css: segmentedControlWrapperStyles, children: /* @__PURE__ */ (0, import_jsx_runtime141.jsx)(
17719
18491
  "div",
17720
18492
  {
17721
18493
  css: [
@@ -17732,12 +18504,12 @@ var SegmentedControl = ({
17732
18504
  const text = option.label ? option.label : option.icon ? null : String(option.value);
17733
18505
  const isDisabled = disabled2 || option.disabled;
17734
18506
  const isChecked = option.value === value;
17735
- return /* @__PURE__ */ (0, import_jsx_runtime137.jsx)(Tooltip, { title: (_a = option.tooltip) != null ? _a : "", children: /* @__PURE__ */ (0, import_jsx_runtime137.jsx)(
18507
+ return /* @__PURE__ */ (0, import_jsx_runtime141.jsx)(Tooltip, { title: (_a = option.tooltip) != null ? _a : "", children: /* @__PURE__ */ (0, import_jsx_runtime141.jsx)(
17736
18508
  "div",
17737
18509
  {
17738
18510
  css: segmentedControlItemStyles,
17739
18511
  "data-testid": option["data-testid"] ? option["data-testid"] : "container-segmented-control",
17740
- children: /* @__PURE__ */ (0, import_jsx_runtime137.jsxs)(
18512
+ children: /* @__PURE__ */ (0, import_jsx_runtime141.jsxs)(
17741
18513
  "label",
17742
18514
  {
17743
18515
  css: [
@@ -17746,7 +18518,7 @@ var SegmentedControl = ({
17746
18518
  isIconOnly ? segmentedControlLabelIconOnlyStyles : void 0
17747
18519
  ],
17748
18520
  children: [
17749
- /* @__PURE__ */ (0, import_jsx_runtime137.jsx)(
18521
+ /* @__PURE__ */ (0, import_jsx_runtime141.jsx)(
17750
18522
  "input",
17751
18523
  {
17752
18524
  css: segmentedControlInputStyles,
@@ -17758,10 +18530,10 @@ var SegmentedControl = ({
17758
18530
  disabled: isDisabled
17759
18531
  }
17760
18532
  ),
17761
- option.value !== value || noCheckmark ? null : /* @__PURE__ */ (0, import_jsx_runtime137.jsx)(import_CgCheck6.CgCheck, { css: segmentedControlLabelCheckStyles, "aria-label": "Selected", size: "1.5em" }),
17762
- /* @__PURE__ */ (0, import_jsx_runtime137.jsxs)("span", { css: segmentedControlLabelContentStyles, children: [
17763
- !option.icon ? null : /* @__PURE__ */ (0, import_jsx_runtime137.jsx)(Icon, { icon: option.icon, size: iconSize, iconColor: "currentColor" }),
17764
- !text || hideOptionText ? null : /* @__PURE__ */ (0, import_jsx_runtime137.jsx)("span", { css: segmentedControlLabelTextStyles, children: text })
18533
+ option.value !== value || noCheckmark ? null : /* @__PURE__ */ (0, import_jsx_runtime141.jsx)(import_CgCheck6.CgCheck, { css: segmentedControlLabelCheckStyles, "aria-label": "Selected", size: "1.5em" }),
18534
+ /* @__PURE__ */ (0, import_jsx_runtime141.jsxs)("span", { css: segmentedControlLabelContentStyles, children: [
18535
+ !option.icon ? null : /* @__PURE__ */ (0, import_jsx_runtime141.jsx)(Icon, { icon: option.icon, size: iconSize, iconColor: "currentColor" }),
18536
+ !text || hideOptionText ? null : /* @__PURE__ */ (0, import_jsx_runtime141.jsx)("span", { css: segmentedControlLabelTextStyles, children: text })
17765
18537
  ] })
17766
18538
  ]
17767
18539
  }
@@ -17771,7 +18543,7 @@ var SegmentedControl = ({
17771
18543
  })
17772
18544
  }
17773
18545
  ) }),
17774
- /* @__PURE__ */ (0, import_jsx_runtime137.jsx)(
18546
+ /* @__PURE__ */ (0, import_jsx_runtime141.jsx)(
17775
18547
  "div",
17776
18548
  {
17777
18549
  css: [
@@ -17789,18 +18561,18 @@ init_emotion_jsx_shim();
17789
18561
 
17790
18562
  // src/components/Skeleton/Skeleton.styles.ts
17791
18563
  init_emotion_jsx_shim();
17792
- var import_react171 = require("@emotion/react");
17793
- var lightFadingOut = import_react171.keyframes`
18564
+ var import_react176 = require("@emotion/react");
18565
+ var lightFadingOut = import_react176.keyframes`
17794
18566
  from { opacity: 0.1; }
17795
18567
  to { opacity: 0.025; }
17796
18568
  `;
17797
- var skeletonStyles = import_react171.css`
18569
+ var skeletonStyles = import_react176.css`
17798
18570
  animation: ${lightFadingOut} 1s ease-out infinite alternate;
17799
18571
  background-color: var(--gray-900);
17800
18572
  `;
17801
18573
 
17802
18574
  // src/components/Skeleton/Skeleton.tsx
17803
- var import_jsx_runtime138 = require("@emotion/react/jsx-runtime");
18575
+ var import_jsx_runtime142 = require("@emotion/react/jsx-runtime");
17804
18576
  var Skeleton = ({
17805
18577
  width = "100%",
17806
18578
  height = "1.25rem",
@@ -17808,7 +18580,7 @@ var Skeleton = ({
17808
18580
  circle = false,
17809
18581
  children,
17810
18582
  ...otherProps
17811
- }) => /* @__PURE__ */ (0, import_jsx_runtime138.jsx)(
18583
+ }) => /* @__PURE__ */ (0, import_jsx_runtime142.jsx)(
17812
18584
  "div",
17813
18585
  {
17814
18586
  css: [
@@ -17832,12 +18604,12 @@ init_emotion_jsx_shim();
17832
18604
 
17833
18605
  // src/components/Spinner/Spinner.tsx
17834
18606
  init_emotion_jsx_shim();
17835
- var import_react173 = require("react");
18607
+ var import_react178 = require("react");
17836
18608
 
17837
18609
  // src/components/Spinner/Spinner.styles.ts
17838
18610
  init_emotion_jsx_shim();
17839
- var import_react172 = require("@emotion/react");
17840
- var SpinnerStyles = import_react172.css`
18611
+ var import_react177 = require("@emotion/react");
18612
+ var SpinnerStyles = import_react177.css`
17841
18613
  --color: #00b4ff;
17842
18614
  --speed: 5s;
17843
18615
  --red: rgb(218, 63, 50);
@@ -18267,22 +19039,22 @@ var SpinnerStyles = import_react172.css`
18267
19039
  `;
18268
19040
 
18269
19041
  // src/components/Spinner/Spinner.tsx
18270
- var import_jsx_runtime139 = require("@emotion/react/jsx-runtime");
19042
+ var import_jsx_runtime143 = require("@emotion/react/jsx-runtime");
18271
19043
  var Spinner = ({
18272
19044
  width,
18273
- label,
19045
+ label: label2,
18274
19046
  isPaused
18275
19047
  }) => {
18276
- const ref = (0, import_react173.useRef)(null);
18277
- (0, import_react173.useEffect)(() => {
19048
+ const ref = (0, import_react178.useRef)(null);
19049
+ (0, import_react178.useEffect)(() => {
18278
19050
  var _a, _b, _c;
18279
19051
  (_c = ref.current) == null ? void 0 : _c.style.setProperty("--pyramid-size", ((_b = (_a = ref.current) == null ? void 0 : _a.clientWidth) != null ? _b : 200) / 6 + "px");
18280
19052
  }, [width]);
18281
- return /* @__PURE__ */ (0, import_jsx_runtime139.jsxs)(
19053
+ return /* @__PURE__ */ (0, import_jsx_runtime143.jsxs)(
18282
19054
  "div",
18283
19055
  {
18284
19056
  ref,
18285
- "aria-label": label,
19057
+ "aria-label": label2,
18286
19058
  style: {
18287
19059
  width: typeof width === "number" ? `${width}px` : width,
18288
19060
  height: typeof width === "number" ? `${width}px` : width
@@ -18290,51 +19062,51 @@ var Spinner = ({
18290
19062
  css: SpinnerStyles,
18291
19063
  className: `container${isPaused ? " paused" : ""}`,
18292
19064
  children: [
18293
- /* @__PURE__ */ (0, import_jsx_runtime139.jsx)("div", { className: "pyramid-container", children: /* @__PURE__ */ (0, import_jsx_runtime139.jsxs)("div", { className: "pyramid top", children: [
18294
- /* @__PURE__ */ (0, import_jsx_runtime139.jsx)("div", { className: "side one" }),
18295
- /* @__PURE__ */ (0, import_jsx_runtime139.jsx)("div", { className: "side two" }),
18296
- /* @__PURE__ */ (0, import_jsx_runtime139.jsx)("div", { className: "side three" }),
18297
- /* @__PURE__ */ (0, import_jsx_runtime139.jsx)("div", { className: "side four" }),
18298
- /* @__PURE__ */ (0, import_jsx_runtime139.jsxs)("div", { className: "bottom-pyramid", children: [
18299
- /* @__PURE__ */ (0, import_jsx_runtime139.jsx)("div", { className: "side five" }),
18300
- /* @__PURE__ */ (0, import_jsx_runtime139.jsx)("div", { className: "side six" }),
18301
- /* @__PURE__ */ (0, import_jsx_runtime139.jsx)("div", { className: "side seven" }),
18302
- /* @__PURE__ */ (0, import_jsx_runtime139.jsx)("div", { className: "side eight" })
19065
+ /* @__PURE__ */ (0, import_jsx_runtime143.jsx)("div", { className: "pyramid-container", children: /* @__PURE__ */ (0, import_jsx_runtime143.jsxs)("div", { className: "pyramid top", children: [
19066
+ /* @__PURE__ */ (0, import_jsx_runtime143.jsx)("div", { className: "side one" }),
19067
+ /* @__PURE__ */ (0, import_jsx_runtime143.jsx)("div", { className: "side two" }),
19068
+ /* @__PURE__ */ (0, import_jsx_runtime143.jsx)("div", { className: "side three" }),
19069
+ /* @__PURE__ */ (0, import_jsx_runtime143.jsx)("div", { className: "side four" }),
19070
+ /* @__PURE__ */ (0, import_jsx_runtime143.jsxs)("div", { className: "bottom-pyramid", children: [
19071
+ /* @__PURE__ */ (0, import_jsx_runtime143.jsx)("div", { className: "side five" }),
19072
+ /* @__PURE__ */ (0, import_jsx_runtime143.jsx)("div", { className: "side six" }),
19073
+ /* @__PURE__ */ (0, import_jsx_runtime143.jsx)("div", { className: "side seven" }),
19074
+ /* @__PURE__ */ (0, import_jsx_runtime143.jsx)("div", { className: "side eight" })
18303
19075
  ] })
18304
19076
  ] }) }),
18305
- /* @__PURE__ */ (0, import_jsx_runtime139.jsx)("div", { className: "turning-circle" }),
18306
- /* @__PURE__ */ (0, import_jsx_runtime139.jsxs)("div", { className: "pulsating-star delay-top-right", children: [
18307
- /* @__PURE__ */ (0, import_jsx_runtime139.jsx)("div", { className: "star-inner star-center" }),
18308
- /* @__PURE__ */ (0, import_jsx_runtime139.jsx)("div", { className: "star-inner star-top" }),
18309
- /* @__PURE__ */ (0, import_jsx_runtime139.jsx)("div", { className: "star-inner star-bottom" }),
18310
- /* @__PURE__ */ (0, import_jsx_runtime139.jsx)("div", { className: "star-inner star-left" }),
18311
- /* @__PURE__ */ (0, import_jsx_runtime139.jsx)("div", { className: "star-inner star-right" })
19077
+ /* @__PURE__ */ (0, import_jsx_runtime143.jsx)("div", { className: "turning-circle" }),
19078
+ /* @__PURE__ */ (0, import_jsx_runtime143.jsxs)("div", { className: "pulsating-star delay-top-right", children: [
19079
+ /* @__PURE__ */ (0, import_jsx_runtime143.jsx)("div", { className: "star-inner star-center" }),
19080
+ /* @__PURE__ */ (0, import_jsx_runtime143.jsx)("div", { className: "star-inner star-top" }),
19081
+ /* @__PURE__ */ (0, import_jsx_runtime143.jsx)("div", { className: "star-inner star-bottom" }),
19082
+ /* @__PURE__ */ (0, import_jsx_runtime143.jsx)("div", { className: "star-inner star-left" }),
19083
+ /* @__PURE__ */ (0, import_jsx_runtime143.jsx)("div", { className: "star-inner star-right" })
18312
19084
  ] }),
18313
- /* @__PURE__ */ (0, import_jsx_runtime139.jsxs)("div", { className: "pulsating-star delay-top-left-2", children: [
18314
- /* @__PURE__ */ (0, import_jsx_runtime139.jsx)("div", { className: "star-inner star-center" }),
18315
- /* @__PURE__ */ (0, import_jsx_runtime139.jsx)("div", { className: "star-inner star-top" }),
18316
- /* @__PURE__ */ (0, import_jsx_runtime139.jsx)("div", { className: "star-inner star-bottom" }),
18317
- /* @__PURE__ */ (0, import_jsx_runtime139.jsx)("div", { className: "star-inner star-left" }),
18318
- /* @__PURE__ */ (0, import_jsx_runtime139.jsx)("div", { className: "star-inner star-right" })
19085
+ /* @__PURE__ */ (0, import_jsx_runtime143.jsxs)("div", { className: "pulsating-star delay-top-left-2", children: [
19086
+ /* @__PURE__ */ (0, import_jsx_runtime143.jsx)("div", { className: "star-inner star-center" }),
19087
+ /* @__PURE__ */ (0, import_jsx_runtime143.jsx)("div", { className: "star-inner star-top" }),
19088
+ /* @__PURE__ */ (0, import_jsx_runtime143.jsx)("div", { className: "star-inner star-bottom" }),
19089
+ /* @__PURE__ */ (0, import_jsx_runtime143.jsx)("div", { className: "star-inner star-left" }),
19090
+ /* @__PURE__ */ (0, import_jsx_runtime143.jsx)("div", { className: "star-inner star-right" })
18319
19091
  ] }),
18320
- /* @__PURE__ */ (0, import_jsx_runtime139.jsxs)("div", { className: "pulsating-star delay-top-left", children: [
18321
- /* @__PURE__ */ (0, import_jsx_runtime139.jsx)("div", { className: "star-inner star-top" }),
18322
- /* @__PURE__ */ (0, import_jsx_runtime139.jsx)("div", { className: "star-inner star-bottom" }),
18323
- /* @__PURE__ */ (0, import_jsx_runtime139.jsx)("div", { className: "star-inner star-left" }),
18324
- /* @__PURE__ */ (0, import_jsx_runtime139.jsx)("div", { className: "star-inner star-right" })
19092
+ /* @__PURE__ */ (0, import_jsx_runtime143.jsxs)("div", { className: "pulsating-star delay-top-left", children: [
19093
+ /* @__PURE__ */ (0, import_jsx_runtime143.jsx)("div", { className: "star-inner star-top" }),
19094
+ /* @__PURE__ */ (0, import_jsx_runtime143.jsx)("div", { className: "star-inner star-bottom" }),
19095
+ /* @__PURE__ */ (0, import_jsx_runtime143.jsx)("div", { className: "star-inner star-left" }),
19096
+ /* @__PURE__ */ (0, import_jsx_runtime143.jsx)("div", { className: "star-inner star-right" })
18325
19097
  ] }),
18326
- /* @__PURE__ */ (0, import_jsx_runtime139.jsxs)("div", { className: "pulsating-star delay-bottom-right", children: [
18327
- /* @__PURE__ */ (0, import_jsx_runtime139.jsx)("div", { className: "star-inner star-top" }),
18328
- /* @__PURE__ */ (0, import_jsx_runtime139.jsx)("div", { className: "star-inner star-bottom" }),
18329
- /* @__PURE__ */ (0, import_jsx_runtime139.jsx)("div", { className: "star-inner star-left" }),
18330
- /* @__PURE__ */ (0, import_jsx_runtime139.jsx)("div", { className: "star-inner star-right" })
19098
+ /* @__PURE__ */ (0, import_jsx_runtime143.jsxs)("div", { className: "pulsating-star delay-bottom-right", children: [
19099
+ /* @__PURE__ */ (0, import_jsx_runtime143.jsx)("div", { className: "star-inner star-top" }),
19100
+ /* @__PURE__ */ (0, import_jsx_runtime143.jsx)("div", { className: "star-inner star-bottom" }),
19101
+ /* @__PURE__ */ (0, import_jsx_runtime143.jsx)("div", { className: "star-inner star-left" }),
19102
+ /* @__PURE__ */ (0, import_jsx_runtime143.jsx)("div", { className: "star-inner star-right" })
18331
19103
  ] }),
18332
- /* @__PURE__ */ (0, import_jsx_runtime139.jsxs)("div", { className: "pulsating-star delay-bottom-left", children: [
18333
- /* @__PURE__ */ (0, import_jsx_runtime139.jsx)("div", { className: "star-inner star-center" }),
18334
- /* @__PURE__ */ (0, import_jsx_runtime139.jsx)("div", { className: "star-inner star-top" }),
18335
- /* @__PURE__ */ (0, import_jsx_runtime139.jsx)("div", { className: "star-inner star-bottom" }),
18336
- /* @__PURE__ */ (0, import_jsx_runtime139.jsx)("div", { className: "star-inner star-left" }),
18337
- /* @__PURE__ */ (0, import_jsx_runtime139.jsx)("div", { className: "star-inner star-right" })
19104
+ /* @__PURE__ */ (0, import_jsx_runtime143.jsxs)("div", { className: "pulsating-star delay-bottom-left", children: [
19105
+ /* @__PURE__ */ (0, import_jsx_runtime143.jsx)("div", { className: "star-inner star-center" }),
19106
+ /* @__PURE__ */ (0, import_jsx_runtime143.jsx)("div", { className: "star-inner star-top" }),
19107
+ /* @__PURE__ */ (0, import_jsx_runtime143.jsx)("div", { className: "star-inner star-bottom" }),
19108
+ /* @__PURE__ */ (0, import_jsx_runtime143.jsx)("div", { className: "star-inner star-left" }),
19109
+ /* @__PURE__ */ (0, import_jsx_runtime143.jsx)("div", { className: "star-inner star-right" })
18338
19110
  ] })
18339
19111
  ]
18340
19112
  }
@@ -18343,12 +19115,12 @@ var Spinner = ({
18343
19115
 
18344
19116
  // src/components/Switch/Switch.tsx
18345
19117
  init_emotion_jsx_shim();
18346
- var import_react175 = require("react");
19118
+ var import_react180 = require("react");
18347
19119
 
18348
19120
  // src/components/Switch/Switch.styles.ts
18349
19121
  init_emotion_jsx_shim();
18350
- var import_react174 = require("@emotion/react");
18351
- var SwitchInputContainer = import_react174.css`
19122
+ var import_react179 = require("@emotion/react");
19123
+ var SwitchInputContainer = import_react179.css`
18352
19124
  cursor: pointer;
18353
19125
  display: inline-flex;
18354
19126
  position: relative;
@@ -18358,7 +19130,7 @@ var SwitchInputContainer = import_react174.css`
18358
19130
  user-select: none;
18359
19131
  z-index: 0;
18360
19132
  `;
18361
- var SwitchInput = (size) => import_react174.css`
19133
+ var SwitchInput = (size) => import_react179.css`
18362
19134
  appearance: none;
18363
19135
  border-radius: var(--rounded-full);
18364
19136
  background-color: var(--white);
@@ -18397,18 +19169,18 @@ var SwitchInput = (size) => import_react174.css`
18397
19169
  cursor: not-allowed;
18398
19170
  }
18399
19171
  `;
18400
- var SwitchInputCheckedDirectionLeft = import_react174.css`
19172
+ var SwitchInputCheckedDirectionLeft = import_react179.css`
18401
19173
  &:checked {
18402
19174
  transform: translateX(var(--spacing-base));
18403
19175
  }
18404
19176
  `;
18405
- var SwitchInputCheckedDirectionRight = import_react174.css`
19177
+ var SwitchInputCheckedDirectionRight = import_react179.css`
18406
19178
  transform: translateX(-var(--spacing-base));
18407
19179
  &:checked {
18408
19180
  transform: translateX(0);
18409
19181
  }
18410
19182
  `;
18411
- var SwitchInputDisabled = import_react174.css`
19183
+ var SwitchInputDisabled = import_react179.css`
18412
19184
  opacity: var(--opacity-50);
18413
19185
  cursor: not-allowed;
18414
19186
 
@@ -18416,19 +19188,19 @@ var SwitchInputDisabled = import_react174.css`
18416
19188
  cursor: not-allowed;
18417
19189
  }
18418
19190
  `;
18419
- var SwitchInputLabelAlignmentLeft = (size) => import_react174.css`
19191
+ var SwitchInputLabelAlignmentLeft = (size) => import_react179.css`
18420
19192
  padding-inline-start: ${size === "sm" ? "var(--spacing-xl)" : "var(--spacing-2xl)"};
18421
19193
  &:before {
18422
19194
  left: 0;
18423
19195
  }
18424
19196
  `;
18425
- var SwitchInputLabelAlignmentRight = (size) => import_react174.css`
19197
+ var SwitchInputLabelAlignmentRight = (size) => import_react179.css`
18426
19198
  padding-inline-end: ${size === "sm" ? "var(--spacing-xl)" : "var(--spacing-2xl)"};
18427
19199
  &:before {
18428
19200
  right: 0;
18429
19201
  }
18430
19202
  `;
18431
- var SwitchInputLabel = (size) => import_react174.css`
19203
+ var SwitchInputLabel = (size) => import_react179.css`
18432
19204
  align-items: center;
18433
19205
  color: var(--typography-base);
18434
19206
  display: inline-flex;
@@ -18448,28 +19220,28 @@ var SwitchInputLabel = (size) => import_react174.css`
18448
19220
  top: 0;
18449
19221
  }
18450
19222
  `;
18451
- var SwitchTextAlignmentLeft = (size) => import_react174.css`
19223
+ var SwitchTextAlignmentLeft = (size) => import_react179.css`
18452
19224
  padding-inline-start: ${size === "sm" ? "var(--spacing-xl)" : "var(--spacing-2xl)"};
18453
19225
  `;
18454
- var SwitchTextAlignmentRight = (size) => import_react174.css`
19226
+ var SwitchTextAlignmentRight = (size) => import_react179.css`
18455
19227
  padding-inline-end: ${size === "sm" ? "var(--spacing-xl)" : "var(--spacing-2xl)"};
18456
19228
  `;
18457
- var SwitchText = import_react174.css`
19229
+ var SwitchText = import_react179.css`
18458
19230
  color: var(--gray-500);
18459
19231
  font-size: var(--fs-sm);
18460
19232
  `;
18461
- var SwitchInputContainerAlignmentLeft = import_react174.css`
19233
+ var SwitchInputContainerAlignmentLeft = import_react179.css`
18462
19234
  flex-direction: row;
18463
19235
  `;
18464
- var SwitchInputContainerAlignmentRight = import_react174.css`
19236
+ var SwitchInputContainerAlignmentRight = import_react179.css`
18465
19237
  flex-direction: row-reverse;
18466
19238
  `;
18467
19239
 
18468
19240
  // src/components/Switch/Switch.tsx
18469
- var import_jsx_runtime140 = require("@emotion/react/jsx-runtime");
18470
- var Switch = (0, import_react175.forwardRef)(
19241
+ var import_jsx_runtime144 = require("@emotion/react/jsx-runtime");
19242
+ var Switch = (0, import_react180.forwardRef)(
18471
19243
  ({
18472
- label,
19244
+ label: label2,
18473
19245
  infoText,
18474
19246
  toggleText,
18475
19247
  children,
@@ -18478,7 +19250,7 @@ var Switch = (0, import_react175.forwardRef)(
18478
19250
  ...inputProps
18479
19251
  }, ref) => {
18480
19252
  let additionalText = infoText;
18481
- const { SwitchInputContainerAlignmentStyles, SwitchInputCheckedDirection, SwitchInputLabelAlignment } = (0, import_react175.useMemo)(() => {
19253
+ const { SwitchInputContainerAlignmentStyles, SwitchInputCheckedDirection, SwitchInputLabelAlignment } = (0, import_react180.useMemo)(() => {
18482
19254
  if (alignment === "left") {
18483
19255
  return {
18484
19256
  SwitchInputContainerAlignmentStyles: SwitchInputContainerAlignmentLeft,
@@ -18495,8 +19267,8 @@ var Switch = (0, import_react175.forwardRef)(
18495
19267
  if (infoText && toggleText) {
18496
19268
  additionalText = inputProps.checked ? toggleText : infoText;
18497
19269
  }
18498
- return /* @__PURE__ */ (0, import_jsx_runtime140.jsxs)(import_jsx_runtime140.Fragment, { children: [
18499
- /* @__PURE__ */ (0, import_jsx_runtime140.jsxs)(
19270
+ return /* @__PURE__ */ (0, import_jsx_runtime144.jsxs)(import_jsx_runtime144.Fragment, { children: [
19271
+ /* @__PURE__ */ (0, import_jsx_runtime144.jsxs)(
18500
19272
  "label",
18501
19273
  {
18502
19274
  css: [
@@ -18506,7 +19278,7 @@ var Switch = (0, import_react175.forwardRef)(
18506
19278
  inputProps.disabled ? SwitchInputDisabled : void 0
18507
19279
  ],
18508
19280
  children: [
18509
- /* @__PURE__ */ (0, import_jsx_runtime140.jsx)(
19281
+ /* @__PURE__ */ (0, import_jsx_runtime144.jsx)(
18510
19282
  "input",
18511
19283
  {
18512
19284
  type: "checkbox",
@@ -18515,11 +19287,11 @@ var Switch = (0, import_react175.forwardRef)(
18515
19287
  ref
18516
19288
  }
18517
19289
  ),
18518
- /* @__PURE__ */ (0, import_jsx_runtime140.jsx)("span", { css: [SwitchInputLabel(switchSize), SwitchInputLabelAlignment], children: label })
19290
+ /* @__PURE__ */ (0, import_jsx_runtime144.jsx)("span", { css: [SwitchInputLabel(switchSize), SwitchInputLabelAlignment], children: label2 })
18519
19291
  ]
18520
19292
  }
18521
19293
  ),
18522
- additionalText ? /* @__PURE__ */ (0, import_jsx_runtime140.jsx)(
19294
+ additionalText ? /* @__PURE__ */ (0, import_jsx_runtime144.jsx)(
18523
19295
  "p",
18524
19296
  {
18525
19297
  css: [
@@ -18539,8 +19311,8 @@ init_emotion_jsx_shim();
18539
19311
 
18540
19312
  // src/components/Table/Table.styles.ts
18541
19313
  init_emotion_jsx_shim();
18542
- var import_react176 = require("@emotion/react");
18543
- var table = ({ cellPadding = "var(--spacing-sm)" }) => import_react176.css`
19314
+ var import_react181 = require("@emotion/react");
19315
+ var table = ({ cellPadding = "var(--spacing-sm)" }) => import_react181.css`
18544
19316
  border-bottom: 1px solid var(--gray-400);
18545
19317
  border-collapse: collapse;
18546
19318
  min-width: 100%;
@@ -18560,21 +19332,21 @@ var table = ({ cellPadding = "var(--spacing-sm)" }) => import_react176.css`
18560
19332
  background-color: var(--gray-50);
18561
19333
  }
18562
19334
  `;
18563
- var tableHead = import_react176.css`
19335
+ var tableHead = import_react181.css`
18564
19336
  color: var(--typography-base);
18565
19337
  text-align: left;
18566
19338
  `;
18567
- var tableRow = import_react176.css`
19339
+ var tableRow = import_react181.css`
18568
19340
  border-bottom: 1px solid var(--gray-200);
18569
19341
  font-size: var(--fs-sm);
18570
19342
  `;
18571
- var tableCellHead = import_react176.css`
19343
+ var tableCellHead = import_react181.css`
18572
19344
  font-size: var(--fs-sm);
18573
19345
  font-weight: var(--fw-regular);
18574
19346
  line-height: 1.2;
18575
19347
  }
18576
19348
  `;
18577
- var responsiveTableContainer = import_react176.css`
19349
+ var responsiveTableContainer = import_react181.css`
18578
19350
  max-width: calc(100vw - var(--spacing-md) * 2);
18579
19351
  overflow-x: auto;
18580
19352
  ${scrollbarStyles}
@@ -18593,60 +19365,60 @@ var responsiveTableContainer = import_react176.css`
18593
19365
  `;
18594
19366
 
18595
19367
  // src/components/Table/ResponsiveTableContainer.tsx
18596
- var import_jsx_runtime141 = require("@emotion/react/jsx-runtime");
19368
+ var import_jsx_runtime145 = require("@emotion/react/jsx-runtime");
18597
19369
  var ResponsiveTableContainer = ({ children }) => {
18598
- return /* @__PURE__ */ (0, import_jsx_runtime141.jsx)("div", { css: responsiveTableContainer, children });
19370
+ return /* @__PURE__ */ (0, import_jsx_runtime145.jsx)("div", { css: responsiveTableContainer, children });
18599
19371
  };
18600
19372
 
18601
19373
  // src/components/Table/Table.tsx
18602
19374
  init_emotion_jsx_shim();
18603
19375
  var React22 = __toESM(require("react"));
18604
- var import_jsx_runtime142 = require("@emotion/react/jsx-runtime");
19376
+ var import_jsx_runtime146 = require("@emotion/react/jsx-runtime");
18605
19377
  var Table = React22.forwardRef(
18606
19378
  ({ children, cellPadding, ...otherProps }, ref) => {
18607
- return /* @__PURE__ */ (0, import_jsx_runtime142.jsx)("table", { ref, css: table({ cellPadding }), ...otherProps, children });
19379
+ return /* @__PURE__ */ (0, import_jsx_runtime146.jsx)("table", { ref, css: table({ cellPadding }), ...otherProps, children });
18608
19380
  }
18609
19381
  );
18610
19382
  var TableHead = React22.forwardRef(
18611
19383
  ({ children, ...otherProps }, ref) => {
18612
- return /* @__PURE__ */ (0, import_jsx_runtime142.jsx)("thead", { ref, css: tableHead, ...otherProps, children });
19384
+ return /* @__PURE__ */ (0, import_jsx_runtime146.jsx)("thead", { ref, css: tableHead, ...otherProps, children });
18613
19385
  }
18614
19386
  );
18615
19387
  var TableBody = React22.forwardRef(
18616
19388
  ({ children, ...otherProps }, ref) => {
18617
- return /* @__PURE__ */ (0, import_jsx_runtime142.jsx)("tbody", { ref, ...otherProps, children });
19389
+ return /* @__PURE__ */ (0, import_jsx_runtime146.jsx)("tbody", { ref, ...otherProps, children });
18618
19390
  }
18619
19391
  );
18620
19392
  var TableFoot = React22.forwardRef(
18621
19393
  ({ children, ...otherProps }, ref) => {
18622
- return /* @__PURE__ */ (0, import_jsx_runtime142.jsx)("tfoot", { ref, ...otherProps, children });
19394
+ return /* @__PURE__ */ (0, import_jsx_runtime146.jsx)("tfoot", { ref, ...otherProps, children });
18623
19395
  }
18624
19396
  );
18625
19397
  var TableRow = React22.forwardRef(
18626
19398
  ({ children, ...otherProps }, ref) => {
18627
- return /* @__PURE__ */ (0, import_jsx_runtime142.jsx)("tr", { ref, css: tableRow, ...otherProps, children });
19399
+ return /* @__PURE__ */ (0, import_jsx_runtime146.jsx)("tr", { ref, css: tableRow, ...otherProps, children });
18628
19400
  }
18629
19401
  );
18630
19402
  var TableCellHead = React22.forwardRef(
18631
19403
  ({ children, ...otherProps }, ref) => {
18632
- return /* @__PURE__ */ (0, import_jsx_runtime142.jsx)("th", { ref, css: tableCellHead, ...otherProps, children });
19404
+ return /* @__PURE__ */ (0, import_jsx_runtime146.jsx)("th", { ref, css: tableCellHead, ...otherProps, children });
18633
19405
  }
18634
19406
  );
18635
19407
  var TableCellData = React22.forwardRef(
18636
19408
  ({ children, ...otherProps }, ref) => {
18637
- return /* @__PURE__ */ (0, import_jsx_runtime142.jsx)("td", { ref, ...otherProps, children });
19409
+ return /* @__PURE__ */ (0, import_jsx_runtime146.jsx)("td", { ref, ...otherProps, children });
18638
19410
  }
18639
19411
  );
18640
19412
 
18641
19413
  // src/components/Tabs/Tabs.tsx
18642
19414
  init_emotion_jsx_shim();
18643
- var import_react178 = require("@ariakit/react");
18644
- var import_react179 = require("react");
19415
+ var import_react183 = require("@ariakit/react");
19416
+ var import_react184 = require("react");
18645
19417
 
18646
19418
  // src/components/Tabs/Tabs.styles.ts
18647
19419
  init_emotion_jsx_shim();
18648
- var import_react177 = require("@emotion/react");
18649
- var tabButtonStyles = import_react177.css`
19420
+ var import_react182 = require("@emotion/react");
19421
+ var tabButtonStyles = import_react182.css`
18650
19422
  align-items: center;
18651
19423
  border: 0;
18652
19424
  height: 2.5rem;
@@ -18663,16 +19435,16 @@ var tabButtonStyles = import_react177.css`
18663
19435
  box-shadow: inset 0 -2px 0 var(--brand-secondary-3);
18664
19436
  }
18665
19437
  `;
18666
- var tabButtonGroupStyles = import_react177.css`
19438
+ var tabButtonGroupStyles = import_react182.css`
18667
19439
  display: flex;
18668
19440
  gap: var(--spacing-base);
18669
19441
  border-bottom: 1px solid var(--gray-300);
18670
19442
  `;
18671
19443
 
18672
19444
  // src/components/Tabs/Tabs.tsx
18673
- var import_jsx_runtime143 = require("@emotion/react/jsx-runtime");
19445
+ var import_jsx_runtime147 = require("@emotion/react/jsx-runtime");
18674
19446
  var useCurrentTab = () => {
18675
- const context = (0, import_react178.useTabStore)();
19447
+ const context = (0, import_react183.useTabStore)();
18676
19448
  if (!context) {
18677
19449
  throw new Error("This component can only be used inside <Tabs>");
18678
19450
  }
@@ -18686,11 +19458,11 @@ var Tabs = ({
18686
19458
  manual,
18687
19459
  ...props
18688
19460
  }) => {
18689
- const selected = (0, import_react179.useMemo)(() => {
19461
+ const selected = (0, import_react184.useMemo)(() => {
18690
19462
  if (selectedId) return selectedId;
18691
19463
  return useHashForState && typeof window !== "undefined" && window.location.hash ? window.location.hash.substring(1) : void 0;
18692
19464
  }, [selectedId, useHashForState]);
18693
- const onTabSelect = (0, import_react179.useCallback)(
19465
+ const onTabSelect = (0, import_react184.useCallback)(
18694
19466
  (value) => {
18695
19467
  const selectedValueWithoutNull = value != null ? value : void 0;
18696
19468
  onSelectedIdChange == null ? void 0 : onSelectedIdChange(selectedValueWithoutNull);
@@ -18701,23 +19473,23 @@ var Tabs = ({
18701
19473
  },
18702
19474
  [onSelectedIdChange, useHashForState]
18703
19475
  );
18704
- return /* @__PURE__ */ (0, import_jsx_runtime143.jsx)(import_react178.TabProvider, { selectedId: selected, selectOnMove: !manual, setSelectedId: onTabSelect, ...props, children });
19476
+ return /* @__PURE__ */ (0, import_jsx_runtime147.jsx)(import_react183.TabProvider, { selectedId: selected, selectOnMove: !manual, setSelectedId: onTabSelect, ...props, children });
18705
19477
  };
18706
19478
  var TabButtonGroup = ({ children, ...props }) => {
18707
- return /* @__PURE__ */ (0, import_jsx_runtime143.jsx)(import_react178.TabList, { ...props, css: tabButtonGroupStyles, children });
19479
+ return /* @__PURE__ */ (0, import_jsx_runtime147.jsx)(import_react183.TabList, { ...props, css: tabButtonGroupStyles, children });
18708
19480
  };
18709
19481
  var TabButton = ({
18710
19482
  children,
18711
19483
  id,
18712
19484
  ...props
18713
19485
  }) => {
18714
- return /* @__PURE__ */ (0, import_jsx_runtime143.jsx)(import_react178.Tab, { type: "button", id, ...props, css: tabButtonStyles, children });
19486
+ return /* @__PURE__ */ (0, import_jsx_runtime147.jsx)(import_react183.Tab, { type: "button", id, ...props, css: tabButtonStyles, children });
18715
19487
  };
18716
19488
  var TabContent = ({
18717
19489
  children,
18718
19490
  ...props
18719
19491
  }) => {
18720
- return /* @__PURE__ */ (0, import_jsx_runtime143.jsx)(import_react178.TabPanel, { ...props, children });
19492
+ return /* @__PURE__ */ (0, import_jsx_runtime147.jsx)(import_react183.TabPanel, { ...props, children });
18721
19493
  };
18722
19494
 
18723
19495
  // src/components/Validation/StatusBullet.tsx
@@ -18725,8 +19497,8 @@ init_emotion_jsx_shim();
18725
19497
 
18726
19498
  // src/components/Validation/StatusBullet.styles.ts
18727
19499
  init_emotion_jsx_shim();
18728
- var import_react180 = require("@emotion/react");
18729
- var StatusBulletContainer = import_react180.css`
19500
+ var import_react185 = require("@emotion/react");
19501
+ var StatusBulletContainer = import_react185.css`
18730
19502
  align-items: center;
18731
19503
  align-self: center;
18732
19504
  color: var(--gray-500);
@@ -18742,33 +19514,33 @@ var StatusBulletContainer = import_react180.css`
18742
19514
  display: block;
18743
19515
  }
18744
19516
  `;
18745
- var StatusBulletBase = import_react180.css`
19517
+ var StatusBulletBase = import_react185.css`
18746
19518
  font-size: var(--fs-sm);
18747
19519
  &:before {
18748
19520
  width: var(--fs-xs);
18749
19521
  height: var(--fs-xs);
18750
19522
  }
18751
19523
  `;
18752
- var StatusBulletSmall = import_react180.css`
19524
+ var StatusBulletSmall = import_react185.css`
18753
19525
  font-size: var(--fs-xs);
18754
19526
  &:before {
18755
19527
  width: var(--fs-xxs);
18756
19528
  height: var(--fs-xxs);
18757
19529
  }
18758
19530
  `;
18759
- var StatusDraft = import_react180.css`
19531
+ var StatusDraft = import_react185.css`
18760
19532
  &:before {
18761
19533
  background: var(--white);
18762
19534
  box-shadow: inset 0 0 0 0.125rem var(--accent-dark);
18763
19535
  }
18764
19536
  `;
18765
- var StatusModified = import_react180.css`
19537
+ var StatusModified = import_react185.css`
18766
19538
  &:before {
18767
19539
  background: linear-gradient(to right, var(--white) 50%, var(--accent-dark) 50% 100%);
18768
19540
  box-shadow: inset 0 0 0 0.125rem var(--accent-dark);
18769
19541
  }
18770
19542
  `;
18771
- var StatusError = import_react180.css`
19543
+ var StatusError = import_react185.css`
18772
19544
  color: var(--error);
18773
19545
  &:before {
18774
19546
  /* TODO: replace this with an svg icon */
@@ -18781,29 +19553,29 @@ var StatusError = import_react180.css`
18781
19553
  );
18782
19554
  }
18783
19555
  `;
18784
- var StatusPublished = import_react180.css`
19556
+ var StatusPublished = import_react185.css`
18785
19557
  &:before {
18786
19558
  background: var(--accent-dark);
18787
19559
  }
18788
19560
  `;
18789
- var StatusOrphan = import_react180.css`
19561
+ var StatusOrphan = import_react185.css`
18790
19562
  &:before {
18791
19563
  background: var(--brand-secondary-5);
18792
19564
  }
18793
19565
  `;
18794
- var StatusUnknown = import_react180.css`
19566
+ var StatusUnknown = import_react185.css`
18795
19567
  &:before {
18796
19568
  background: var(--gray-800);
18797
19569
  }
18798
19570
  `;
18799
- var StatusDeleted = import_react180.css`
19571
+ var StatusDeleted = import_react185.css`
18800
19572
  &:before {
18801
19573
  background: var(--error);
18802
19574
  }
18803
19575
  `;
18804
19576
 
18805
19577
  // src/components/Validation/StatusBullet.tsx
18806
- var import_jsx_runtime144 = require("@emotion/react/jsx-runtime");
19578
+ var import_jsx_runtime148 = require("@emotion/react/jsx-runtime");
18807
19579
  var currentStateStyles = {
18808
19580
  Error: StatusError,
18809
19581
  Modified: StatusModified,
@@ -18827,7 +19599,7 @@ var StatusBullet = ({
18827
19599
  compact = false,
18828
19600
  ...props
18829
19601
  }) => {
18830
- const StatusComponent = () => /* @__PURE__ */ (0, import_jsx_runtime144.jsx)(
19602
+ const StatusComponent = () => /* @__PURE__ */ (0, import_jsx_runtime148.jsx)(
18831
19603
  "span",
18832
19604
  {
18833
19605
  role: "status",
@@ -18837,9 +19609,9 @@ var StatusBullet = ({
18837
19609
  }
18838
19610
  );
18839
19611
  if (compact) {
18840
- return /* @__PURE__ */ (0, import_jsx_runtime144.jsx)(StatusComponent, {});
19612
+ return /* @__PURE__ */ (0, import_jsx_runtime148.jsx)(StatusComponent, {});
18841
19613
  }
18842
- return /* @__PURE__ */ (0, import_jsx_runtime144.jsx)(Tooltip, { title: message != null ? message : status, children: /* @__PURE__ */ (0, import_jsx_runtime144.jsx)("div", { children: /* @__PURE__ */ (0, import_jsx_runtime144.jsx)(StatusComponent, {}) }) });
19614
+ return /* @__PURE__ */ (0, import_jsx_runtime148.jsx)(Tooltip, { title: message != null ? message : status, children: /* @__PURE__ */ (0, import_jsx_runtime148.jsx)("div", { children: /* @__PURE__ */ (0, import_jsx_runtime148.jsx)(StatusComponent, {}) }) });
18843
19615
  };
18844
19616
  // Annotate the CommonJS export names for ESM import in node:
18845
19617
  0 && (module.exports = {
@@ -18964,11 +19736,15 @@ var StatusBullet = ({
18964
19736
  ParameterMultiSelect,
18965
19737
  ParameterMultiSelectInner,
18966
19738
  ParameterNameAndPublicIdInput,
19739
+ ParameterNumberSlider,
19740
+ ParameterNumberSliderInner,
18967
19741
  ParameterOverrideMarker,
18968
19742
  ParameterRichText,
18969
19743
  ParameterRichTextInner,
18970
19744
  ParameterSelect,
18971
19745
  ParameterSelectInner,
19746
+ ParameterSelectSlider,
19747
+ ParameterSelectSliderInner,
18972
19748
  ParameterShell,
18973
19749
  ParameterShellContext,
18974
19750
  ParameterShellPlaceholder,
@@ -18990,6 +19766,8 @@ var StatusBullet = ({
18990
19766
  SegmentedControl,
18991
19767
  SelectableMenuItem,
18992
19768
  Skeleton,
19769
+ Slider,
19770
+ SliderLabels,
18993
19771
  Spinner,
18994
19772
  StatusBullet,
18995
19773
  SuccessMessage,