@marigold/components 1.2.2 → 1.3.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
@@ -17,7 +17,10 @@ var __copyProps = (to, from, except, desc) => {
17
17
  }
18
18
  return to;
19
19
  };
20
- var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target, mod));
20
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
21
+ isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
22
+ mod
23
+ ));
21
24
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
22
25
 
23
26
  // src/index.ts
@@ -47,6 +50,7 @@ __export(src_exports, {
47
50
  Input: () => Input,
48
51
  Label: () => Label,
49
52
  Link: () => Link,
53
+ List: () => List,
50
54
  MarigoldProvider: () => MarigoldProvider,
51
55
  Menu: () => Menu,
52
56
  Message: () => Message,
@@ -64,13 +68,13 @@ __export(src_exports, {
64
68
  Text: () => Text,
65
69
  TextArea: () => TextArea,
66
70
  TextField: () => TextField,
67
- ThemeProvider: () => import_system26.ThemeProvider,
71
+ ThemeProvider: () => import_system28.ThemeProvider,
68
72
  Tiles: () => Tiles,
69
73
  Tooltip: () => Tooltip,
70
74
  Underlay: () => Underlay,
71
75
  VisuallyHidden: () => import_visually_hidden.VisuallyHidden,
72
76
  useCheckboxGroupContext: () => useCheckboxGroupContext,
73
- useTheme: () => import_system26.useTheme
77
+ useTheme: () => import_system28.useTheme
74
78
  });
75
79
  module.exports = __toCommonJS(src_exports);
76
80
 
@@ -178,41 +182,46 @@ var import_button = require("@react-aria/button");
178
182
  var import_focus = require("@react-aria/focus");
179
183
  var import_utils = require("@react-aria/utils");
180
184
  var import_system3 = require("@marigold/system");
181
- var Button = (0, import_react5.forwardRef)(({
182
- as = "button",
183
- children,
184
- variant,
185
- size,
186
- disabled,
187
- ...props
188
- }, ref) => {
189
- const buttonRef = (0, import_react5.useRef)(null);
190
- (0, import_react5.useImperativeHandle)(ref, () => buttonRef.current);
191
- const { buttonProps, isPressed } = (0, import_button.useButton)({
192
- ...props,
193
- elementType: typeof as === "string" ? as : "span",
194
- isDisabled: disabled
195
- }, buttonRef);
196
- const { isFocusVisible, focusProps } = (0, import_focus.useFocusRing)();
197
- const styles = (0, import_system3.useComponentStyles)("Button", { variant, size });
198
- const stateProps = (0, import_system3.useStateProps)({
199
- active: isPressed,
200
- focus: isFocusVisible
201
- });
202
- return /* @__PURE__ */ import_react5.default.createElement(import_system3.Box, {
203
- ...(0, import_utils.mergeProps)(buttonProps, focusProps),
204
- ...stateProps,
205
- as,
206
- ref: buttonRef,
207
- __baseCSS: {
208
- display: "inline-flex",
209
- alignItems: "center",
210
- gap: "0.5ch",
211
- cursor: disabled ? "not-allowed" : "pointer"
212
- },
213
- css: styles
214
- }, children);
215
- });
185
+ var Button = (0, import_react5.forwardRef)(
186
+ ({
187
+ as = "button",
188
+ children,
189
+ variant,
190
+ size,
191
+ disabled,
192
+ ...props
193
+ }, ref) => {
194
+ const buttonRef = (0, import_react5.useRef)(null);
195
+ (0, import_react5.useImperativeHandle)(ref, () => buttonRef.current);
196
+ const { buttonProps, isPressed } = (0, import_button.useButton)(
197
+ {
198
+ ...props,
199
+ elementType: typeof as === "string" ? as : "span",
200
+ isDisabled: disabled
201
+ },
202
+ buttonRef
203
+ );
204
+ const { isFocusVisible, focusProps } = (0, import_focus.useFocusRing)();
205
+ const styles = (0, import_system3.useComponentStyles)("Button", { variant, size });
206
+ const stateProps = (0, import_system3.useStateProps)({
207
+ active: isPressed,
208
+ focus: isFocusVisible
209
+ });
210
+ return /* @__PURE__ */ import_react5.default.createElement(import_system3.Box, {
211
+ ...(0, import_utils.mergeProps)(buttonProps, focusProps),
212
+ ...stateProps,
213
+ as,
214
+ ref: buttonRef,
215
+ __baseCSS: {
216
+ display: "inline-flex",
217
+ alignItems: "center",
218
+ gap: "0.5ch",
219
+ cursor: disabled ? "not-allowed" : "pointer"
220
+ },
221
+ css: styles
222
+ }, children);
223
+ }
224
+ );
216
225
 
217
226
  // src/Card/Card.tsx
218
227
  var import_react6 = __toESM(require("react"));
@@ -287,7 +296,9 @@ var Label = ({
287
296
  };
288
297
 
289
298
  // src/Checkbox/CheckboxGroup.tsx
290
- var CheckboxGroupContext = (0, import_react9.createContext)(null);
299
+ var CheckboxGroupContext = (0, import_react9.createContext)(
300
+ null
301
+ );
291
302
  var useCheckboxGroupContext = () => (0, import_react9.useContext)(CheckboxGroupContext);
292
303
  var CheckboxGroup = ({
293
304
  children,
@@ -308,7 +319,11 @@ var CheckboxGroup = ({
308
319
  };
309
320
  const state = (0, import_checkbox2.useCheckboxGroupState)(props);
310
321
  const { groupProps, labelProps } = (0, import_checkbox.useCheckboxGroup)(props, state);
311
- const styles = (0, import_system6.useComponentStyles)("CheckboxGroup", { variant, size }, { parts: ["container", "group"] });
322
+ const styles = (0, import_system6.useComponentStyles)(
323
+ "CheckboxGroup",
324
+ { variant, size },
325
+ { parts: ["container", "group"] }
326
+ );
312
327
  return /* @__PURE__ */ import_react9.default.createElement(import_system6.Box, {
313
328
  ...groupProps,
314
329
  css: styles.container
@@ -362,92 +377,106 @@ var Icon = ({ css, checked, indeterminate, ...props }) => /* @__PURE__ */ import
362
377
  css,
363
378
  ...props
364
379
  }, indeterminate ? /* @__PURE__ */ import_react10.default.createElement(IndeterminateMark, null) : checked ? /* @__PURE__ */ import_react10.default.createElement(CheckMark, null) : null);
365
- var Checkbox = (0, import_react10.forwardRef)(({
366
- size,
367
- variant,
368
- disabled,
369
- checked,
370
- defaultChecked,
371
- indeterminate,
372
- readOnly,
373
- required,
374
- error,
375
- ...props
376
- }, ref) => {
377
- const inputRef = (0, import_utils2.useObjectRef)(ref);
378
- const checkboxProps = {
379
- isIndeterminate: indeterminate,
380
- isDisabled: disabled,
381
- isReadOnly: readOnly,
382
- isRequired: required,
383
- validationState: error ? "invalid" : "valid"
384
- };
385
- const groupState = useCheckboxGroupContext();
386
- const { inputProps } = groupState ? (0, import_checkbox3.useCheckboxGroupItem)({
387
- ...props,
388
- ...checkboxProps,
389
- value: props.value
390
- }, groupState, inputRef) : (0, import_checkbox3.useCheckbox)({
391
- isSelected: checked,
392
- defaultSelected: defaultChecked,
393
- ...checkboxProps,
394
- ...props
395
- }, (0, import_toggle.useToggleState)({
396
- isSelected: checked,
397
- defaultSelected: defaultChecked,
398
- ...props
399
- }), inputRef);
400
- const styles = (0, import_system7.useComponentStyles)("Checkbox", {
401
- variant: (groupState == null ? void 0 : groupState.variant) || variant,
402
- size: (groupState == null ? void 0 : groupState.size) || size
403
- }, { parts: ["container", "label", "checkbox"] });
404
- const { hoverProps, isHovered } = (0, import_interactions.useHover)({});
405
- const { isFocusVisible, focusProps } = (0, import_focus2.useFocusRing)();
406
- const stateProps = (0, import_system7.useStateProps)({
407
- hover: isHovered,
408
- focus: isFocusVisible,
409
- checked: inputProps.checked,
410
- disabled: inputProps.disabled,
411
- error: (groupState == null ? void 0 : groupState.error) || error,
412
- readOnly,
413
- indeterminate
414
- });
415
- return /* @__PURE__ */ import_react10.default.createElement(import_system7.Box, {
416
- as: "label",
417
- __baseCSS: {
418
- display: "flex",
419
- alignItems: "center",
420
- gap: "1ch",
421
- position: "relative"
422
- },
423
- css: styles.container,
424
- ...hoverProps,
425
- ...stateProps
426
- }, /* @__PURE__ */ import_react10.default.createElement(import_system7.Box, {
427
- as: "input",
428
- ref: inputRef,
429
- css: {
430
- position: "absolute",
431
- width: "100%",
432
- height: "100%",
433
- top: 0,
434
- left: 0,
435
- zIndex: 1,
436
- opacity: 1e-4,
437
- cursor: inputProps.disabled ? "not-allowed" : "pointer"
438
- },
439
- ...inputProps,
440
- ...focusProps
441
- }), /* @__PURE__ */ import_react10.default.createElement(Icon, {
442
- checked: inputProps.checked,
380
+ var Checkbox = (0, import_react10.forwardRef)(
381
+ ({
382
+ size,
383
+ variant,
384
+ disabled,
385
+ checked,
386
+ defaultChecked,
443
387
  indeterminate,
444
- css: styles.checkbox,
445
- ...stateProps
446
- }), props.children && /* @__PURE__ */ import_react10.default.createElement(import_system7.Box, {
447
- css: styles.label,
448
- ...stateProps
449
- }, props.children));
450
- });
388
+ readOnly,
389
+ required,
390
+ error,
391
+ ...props
392
+ }, ref) => {
393
+ const inputRef = (0, import_utils2.useObjectRef)(ref);
394
+ const checkboxProps = {
395
+ isIndeterminate: indeterminate,
396
+ isDisabled: disabled,
397
+ isReadOnly: readOnly,
398
+ isRequired: required,
399
+ validationState: error ? "invalid" : "valid"
400
+ };
401
+ const groupState = useCheckboxGroupContext();
402
+ const { inputProps } = groupState ? (0, import_checkbox3.useCheckboxGroupItem)(
403
+ {
404
+ ...props,
405
+ ...checkboxProps,
406
+ value: props.value
407
+ },
408
+ groupState,
409
+ inputRef
410
+ ) : (0, import_checkbox3.useCheckbox)(
411
+ {
412
+ isSelected: checked,
413
+ defaultSelected: defaultChecked,
414
+ ...checkboxProps,
415
+ ...props
416
+ },
417
+ (0, import_toggle.useToggleState)({
418
+ isSelected: checked,
419
+ defaultSelected: defaultChecked,
420
+ ...props
421
+ }),
422
+ inputRef
423
+ );
424
+ const styles = (0, import_system7.useComponentStyles)(
425
+ "Checkbox",
426
+ {
427
+ variant: (groupState == null ? void 0 : groupState.variant) || variant,
428
+ size: (groupState == null ? void 0 : groupState.size) || size
429
+ },
430
+ { parts: ["container", "label", "checkbox"] }
431
+ );
432
+ const { hoverProps, isHovered } = (0, import_interactions.useHover)({});
433
+ const { isFocusVisible, focusProps } = (0, import_focus2.useFocusRing)();
434
+ const stateProps = (0, import_system7.useStateProps)({
435
+ hover: isHovered,
436
+ focus: isFocusVisible,
437
+ checked: inputProps.checked,
438
+ disabled: inputProps.disabled,
439
+ error: (groupState == null ? void 0 : groupState.error) || error,
440
+ readOnly,
441
+ indeterminate
442
+ });
443
+ return /* @__PURE__ */ import_react10.default.createElement(import_system7.Box, {
444
+ as: "label",
445
+ __baseCSS: {
446
+ display: "flex",
447
+ alignItems: "center",
448
+ gap: "1ch",
449
+ position: "relative"
450
+ },
451
+ css: styles.container,
452
+ ...hoverProps,
453
+ ...stateProps
454
+ }, /* @__PURE__ */ import_react10.default.createElement(import_system7.Box, {
455
+ as: "input",
456
+ ref: inputRef,
457
+ css: {
458
+ position: "absolute",
459
+ width: "100%",
460
+ height: "100%",
461
+ top: 0,
462
+ left: 0,
463
+ zIndex: 1,
464
+ opacity: 1e-4,
465
+ cursor: inputProps.disabled ? "not-allowed" : "pointer"
466
+ },
467
+ ...inputProps,
468
+ ...focusProps
469
+ }), /* @__PURE__ */ import_react10.default.createElement(Icon, {
470
+ checked: inputProps.checked,
471
+ indeterminate,
472
+ css: styles.checkbox,
473
+ ...stateProps
474
+ }), props.children && /* @__PURE__ */ import_react10.default.createElement(import_system7.Box, {
475
+ css: styles.label,
476
+ ...stateProps
477
+ }, props.children));
478
+ }
479
+ );
451
480
 
452
481
  // src/Columns/Columns.tsx
453
482
  var import_react11 = __toESM(require("react"));
@@ -459,7 +488,11 @@ var Columns = ({
459
488
  ...props
460
489
  }) => {
461
490
  if (import_react11.Children.count(children) !== columns.length) {
462
- throw new Error(`Columns: expected ${columns.length} children, got ${import_react11.Children.count(children)}`);
491
+ throw new Error(
492
+ `Columns: expected ${columns.length} children, got ${import_react11.Children.count(
493
+ children
494
+ )}`
495
+ );
463
496
  }
464
497
  const getColumnWidths = columns.map((column, index) => {
465
498
  return {
@@ -470,13 +503,16 @@ var Columns = ({
470
503
  });
471
504
  return /* @__PURE__ */ import_react11.default.createElement(import_system.Box, {
472
505
  display: "flex",
473
- css: Object.assign({
474
- flexWrap: "wrap",
475
- gap: space,
476
- "> *": {
477
- flexBasis: `calc(( ${collapseAt} - 100%) * 999)`
478
- }
479
- }, ...getColumnWidths),
506
+ css: Object.assign(
507
+ {
508
+ flexWrap: "wrap",
509
+ gap: space,
510
+ "> *": {
511
+ flexBasis: `calc(( ${collapseAt} - 100%) * 999)`
512
+ }
513
+ },
514
+ ...getColumnWidths
515
+ ),
480
516
  ...props
481
517
  }, children);
482
518
  };
@@ -610,38 +646,43 @@ var Underlay = ({ size, variant, ...props }) => {
610
646
  };
611
647
 
612
648
  // src/Overlay/Modal.tsx
613
- var Modal = (0, import_react18.forwardRef)(({ children, open, dismissable, keyboardDismissable, onClose, ...props }, ref) => {
614
- const modalRef = (0, import_utils3.useObjectRef)(ref);
615
- const { overlayProps, underlayProps } = (0, import_overlays.useOverlay)({
616
- isOpen: open,
617
- onClose,
618
- isDismissable: dismissable,
619
- isKeyboardDismissDisabled: !keyboardDismissable
620
- }, modalRef);
621
- (0, import_overlays.usePreventScroll)();
622
- const { modalProps } = (0, import_overlays.useModal)({});
623
- return /* @__PURE__ */ import_react18.default.createElement(import_focus3.FocusScope, {
624
- contain: true,
625
- restoreFocus: true,
626
- autoFocus: true
627
- }, /* @__PURE__ */ import_react18.default.createElement(Underlay, {
628
- ...underlayProps
629
- }), /* @__PURE__ */ import_react18.default.createElement("div", {
630
- style: {
631
- display: "flex",
632
- alignItems: "center",
633
- justifyContent: "center",
634
- position: "fixed",
635
- inset: 0,
636
- zIndex: 2,
637
- pointerEvents: "none"
638
- },
639
- ref: modalRef,
640
- ...(0, import_utils3.mergeProps)(props, overlayProps, modalProps)
641
- }, /* @__PURE__ */ import_react18.default.createElement("div", {
642
- style: { pointerEvents: "auto" }
643
- }, children)));
644
- });
649
+ var Modal = (0, import_react18.forwardRef)(
650
+ ({ children, open, dismissable, keyboardDismissable, onClose, ...props }, ref) => {
651
+ const modalRef = (0, import_utils3.useObjectRef)(ref);
652
+ const { overlayProps, underlayProps } = (0, import_overlays.useOverlay)(
653
+ {
654
+ isOpen: open,
655
+ onClose,
656
+ isDismissable: dismissable,
657
+ isKeyboardDismissDisabled: !keyboardDismissable
658
+ },
659
+ modalRef
660
+ );
661
+ (0, import_overlays.usePreventScroll)();
662
+ const { modalProps } = (0, import_overlays.useModal)({});
663
+ return /* @__PURE__ */ import_react18.default.createElement(import_focus3.FocusScope, {
664
+ contain: true,
665
+ restoreFocus: true,
666
+ autoFocus: true
667
+ }, /* @__PURE__ */ import_react18.default.createElement(Underlay, {
668
+ ...underlayProps
669
+ }), /* @__PURE__ */ import_react18.default.createElement("div", {
670
+ style: {
671
+ display: "flex",
672
+ alignItems: "center",
673
+ justifyContent: "center",
674
+ position: "fixed",
675
+ inset: 0,
676
+ zIndex: 2,
677
+ pointerEvents: "none"
678
+ },
679
+ ref: modalRef,
680
+ ...(0, import_utils3.mergeProps)(props, overlayProps, modalProps)
681
+ }, /* @__PURE__ */ import_react18.default.createElement("div", {
682
+ style: { pointerEvents: "auto" }
683
+ }, children)));
684
+ }
685
+ );
645
686
 
646
687
  // src/Overlay/Overlay.tsx
647
688
  var import_react19 = __toESM(require("react"));
@@ -666,34 +707,39 @@ var Overlay = ({
666
707
  var import_react20 = __toESM(require("react"));
667
708
  var import_overlays3 = require("@react-aria/overlays");
668
709
  var import_utils4 = require("@react-aria/utils");
669
- var Popover = (0, import_react20.forwardRef)(({
670
- children,
671
- open,
672
- dismissable,
673
- keyboardDismissDisabled,
674
- shouldCloseOnBlur,
675
- minWidth = 0,
676
- ...props
677
- }, ref) => {
678
- const fallbackRef = (0, import_react20.useRef)(null);
679
- const popoverRef = ref || fallbackRef;
680
- const { overlayProps } = (0, import_overlays3.useOverlay)({
681
- isOpen: open,
682
- isDismissable: dismissable,
683
- isKeyboardDismissDisabled: keyboardDismissDisabled,
710
+ var Popover = (0, import_react20.forwardRef)(
711
+ ({
712
+ children,
713
+ open,
714
+ dismissable,
715
+ keyboardDismissDisabled,
684
716
  shouldCloseOnBlur,
717
+ minWidth = 0,
685
718
  ...props
686
- }, popoverRef);
687
- const { modalProps } = (0, import_overlays3.useModal)({});
688
- const style = { minWidth };
689
- return /* @__PURE__ */ import_react20.default.createElement(Overlay, {
690
- open
691
- }, /* @__PURE__ */ import_react20.default.createElement(import_system.Box, {
692
- ref: popoverRef,
693
- role: "presentation",
694
- ...(0, import_utils4.mergeProps)(props, overlayProps, modalProps, style)
695
- }, children));
696
- });
719
+ }, ref) => {
720
+ const fallbackRef = (0, import_react20.useRef)(null);
721
+ const popoverRef = ref || fallbackRef;
722
+ const { overlayProps } = (0, import_overlays3.useOverlay)(
723
+ {
724
+ isOpen: open,
725
+ isDismissable: dismissable,
726
+ isKeyboardDismissDisabled: keyboardDismissDisabled,
727
+ shouldCloseOnBlur,
728
+ ...props
729
+ },
730
+ popoverRef
731
+ );
732
+ const { modalProps } = (0, import_overlays3.useModal)({});
733
+ const style = { minWidth };
734
+ return /* @__PURE__ */ import_react20.default.createElement(Overlay, {
735
+ open
736
+ }, /* @__PURE__ */ import_react20.default.createElement(import_system.Box, {
737
+ ref: popoverRef,
738
+ role: "presentation",
739
+ ...(0, import_utils4.mergeProps)(props, overlayProps, modalProps, style)
740
+ }, children));
741
+ }
742
+ );
697
743
 
698
744
  // src/Dialog/DialogTrigger.tsx
699
745
  var DialogTrigger = ({
@@ -725,9 +771,12 @@ var DialogTrigger = ({
725
771
  var CloseButton = ({ css }) => {
726
772
  const ref = (0, import_react22.useRef)(null);
727
773
  const { close } = useDialogContext();
728
- const { buttonProps } = (0, import_button2.useButton)({
729
- onPress: () => close == null ? void 0 : close()
730
- }, ref);
774
+ const { buttonProps } = (0, import_button2.useButton)(
775
+ {
776
+ onPress: () => close == null ? void 0 : close()
777
+ },
778
+ ref
779
+ );
731
780
  return /* @__PURE__ */ import_react22.default.createElement(import_system12.Box, {
732
781
  css: { display: "flex", justifyContent: "flex-end" }
733
782
  }, /* @__PURE__ */ import_react22.default.createElement(import_system12.Box, {
@@ -755,12 +804,19 @@ var CloseButton = ({ css }) => {
755
804
  };
756
805
  var addTitleProps = (children, titleProps) => {
757
806
  const childs = import_react22.default.Children.toArray(children);
758
- const titleIndex = childs.findIndex((child) => import_react22.default.isValidElement(child) && (child.type === Header || child.type === Headline));
807
+ const titleIndex = childs.findIndex(
808
+ (child) => import_react22.default.isValidElement(child) && (child.type === Header || child.type === Headline)
809
+ );
759
810
  if (titleIndex < 0) {
760
- console.warn("No child in <Dialog> found that can act as title for accessibility. Please add a <Header> or <Headline> as direct child.");
811
+ console.warn(
812
+ "No child in <Dialog> found that can act as title for accessibility. Please add a <Header> or <Headline> as direct child."
813
+ );
761
814
  return children;
762
815
  }
763
- const titleChild = import_react22.default.cloneElement(childs[titleIndex], titleProps);
816
+ const titleChild = import_react22.default.cloneElement(
817
+ childs[titleIndex],
818
+ titleProps
819
+ );
764
820
  childs.splice(titleIndex, 1, titleChild);
765
821
  return childs;
766
822
  };
@@ -774,7 +830,11 @@ var Dialog = ({
774
830
  const ref = (0, import_react22.useRef)(null);
775
831
  const { close } = useDialogContext();
776
832
  const { dialogProps, titleProps } = (0, import_dialog.useDialog)(props, ref);
777
- const styles = (0, import_system12.useComponentStyles)("Dialog", { variant, size }, { parts: ["container", "closeButton"] });
833
+ const styles = (0, import_system12.useComponentStyles)(
834
+ "Dialog",
835
+ { variant, size },
836
+ { parts: ["container", "closeButton"] }
837
+ );
778
838
  return /* @__PURE__ */ import_react22.default.createElement(import_system12.Box, {
779
839
  __baseCSS: { bg: "#fff" },
780
840
  css: styles.container,
@@ -855,71 +915,129 @@ var Inline = ({
855
915
  // src/Input/Input.tsx
856
916
  var import_react27 = __toESM(require("react"));
857
917
  var import_system16 = require("@marigold/system");
858
- var Input = (0, import_react27.forwardRef)(({ variant, size, type = "text", ...props }, ref) => {
859
- const styles = (0, import_system16.useComponentStyles)("Input", { variant, size });
860
- return /* @__PURE__ */ import_react27.default.createElement(import_system16.Box, {
861
- ...props,
862
- ref,
863
- as: "input",
864
- type,
865
- css: styles
866
- });
867
- });
918
+ var Input = (0, import_react27.forwardRef)(
919
+ ({ variant, size, type = "text", ...props }, ref) => {
920
+ const styles = (0, import_system16.useComponentStyles)("Input", { variant, size });
921
+ return /* @__PURE__ */ import_react27.default.createElement(import_system16.Box, {
922
+ ...props,
923
+ ref,
924
+ as: "input",
925
+ type,
926
+ css: styles
927
+ });
928
+ }
929
+ );
868
930
 
869
931
  // src/Link/Link.tsx
870
932
  var import_react28 = __toESM(require("react"));
871
933
  var import_link = require("@react-aria/link");
872
934
  var import_system17 = require("@marigold/system");
873
- var Link = ({
874
- as = "a",
935
+ var import_utils5 = require("@react-aria/utils");
936
+ var Link = (0, import_react28.forwardRef)(
937
+ ({
938
+ as = "a",
939
+ variant,
940
+ size,
941
+ children,
942
+ disabled,
943
+ onPress,
944
+ onPressStart,
945
+ ...props
946
+ }, ref) => {
947
+ const linkRef = (0, import_utils5.useObjectRef)(ref);
948
+ const { linkProps } = (0, import_link.useLink)(
949
+ {
950
+ ...props,
951
+ elementType: typeof as === "string" ? as : "span",
952
+ isDisabled: disabled
953
+ },
954
+ linkRef
955
+ );
956
+ const styles = (0, import_system17.useComponentStyles)("Link", { variant, size });
957
+ return /* @__PURE__ */ import_react28.default.createElement(import_system.Box, {
958
+ as,
959
+ css: styles,
960
+ ref: linkRef,
961
+ ...props,
962
+ ...linkProps
963
+ }, children);
964
+ }
965
+ );
966
+
967
+ // src/List/List.tsx
968
+ var import_react31 = __toESM(require("react"));
969
+ var import_system19 = require("@marigold/system");
970
+
971
+ // src/List/Context.ts
972
+ var import_react29 = require("react");
973
+ var ListContext = (0, import_react29.createContext)({});
974
+ var useListContext = () => (0, import_react29.useContext)(ListContext);
975
+
976
+ // src/List/ListItem.tsx
977
+ var import_react30 = __toESM(require("react"));
978
+ var import_system18 = require("@marigold/system");
979
+ var ListItem = ({ children, ...props }) => {
980
+ const { styles } = useListContext();
981
+ return /* @__PURE__ */ import_react30.default.createElement(import_system18.Box, {
982
+ ...props,
983
+ as: "li",
984
+ css: styles
985
+ }, children);
986
+ };
987
+
988
+ // src/List/List.tsx
989
+ var List = ({
990
+ as = "ul",
991
+ children,
875
992
  variant,
876
993
  size,
877
- children,
878
- disabled,
879
994
  ...props
880
995
  }) => {
881
- const ref = (0, import_react28.useRef)(null);
882
- const { linkProps } = (0, import_link.useLink)({
996
+ const styles = (0, import_system19.useComponentStyles)(
997
+ "List",
998
+ { variant, size },
999
+ { parts: ["ul", "ol", "item"] }
1000
+ );
1001
+ return /* @__PURE__ */ import_react31.default.createElement(import_system19.Box, {
883
1002
  ...props,
884
- elementType: typeof as === "string" ? as : "span",
885
- isDisabled: disabled
886
- }, ref);
887
- const styles = (0, import_system17.useComponentStyles)("Link", { variant, size });
888
- return /* @__PURE__ */ import_react28.default.createElement(import_system.Box, {
889
1003
  as,
890
- css: styles,
891
- ref,
892
- ...props,
893
- ...linkProps
894
- }, children);
1004
+ css: styles[as]
1005
+ }, /* @__PURE__ */ import_react31.default.createElement(ListContext.Provider, {
1006
+ value: { styles: styles.item }
1007
+ }, children));
895
1008
  };
1009
+ List.Item = ListItem;
896
1010
 
897
1011
  // src/Menu/Menu.tsx
898
- var import_react32 = __toESM(require("react"));
1012
+ var import_react35 = __toESM(require("react"));
899
1013
  var import_focus5 = require("@react-aria/focus");
900
1014
  var import_menu4 = require("@react-aria/menu");
901
1015
  var import_overlays6 = require("@react-aria/overlays");
902
1016
  var import_collections = require("@react-stately/collections");
903
1017
  var import_tree = require("@react-stately/tree");
904
- var import_system19 = require("@marigold/system");
1018
+ var import_system21 = require("@marigold/system");
905
1019
 
906
1020
  // src/Menu/Context.ts
907
- var import_react29 = require("react");
908
- var MenuContext = (0, import_react29.createContext)({});
909
- var useMenuContext = () => (0, import_react29.useContext)(MenuContext);
1021
+ var import_react32 = require("react");
1022
+ var MenuContext = (0, import_react32.createContext)({});
1023
+ var useMenuContext = () => (0, import_react32.useContext)(MenuContext);
910
1024
 
911
1025
  // src/Menu/MenuTrigger.tsx
912
- var import_react30 = __toESM(require("react"));
1026
+ var import_react33 = __toESM(require("react"));
913
1027
  var import_menu = require("@react-stately/menu");
914
1028
  var import_menu2 = require("@react-aria/menu");
915
1029
  var import_overlays5 = require("@react-aria/overlays");
916
1030
  var import_interactions3 = require("@react-aria/interactions");
917
1031
  var MenuTrigger = ({ disabled, children }) => {
918
- const [menuTrigger, menu] = import_react30.default.Children.toArray(children);
919
- const menuTriggerRef = (0, import_react30.useRef)(null);
920
- const overlayRef = (0, import_react30.useRef)(null);
1032
+ const [menuTrigger, menu] = import_react33.default.Children.toArray(children);
1033
+ const menuTriggerRef = (0, import_react33.useRef)(null);
1034
+ const overlayRef = (0, import_react33.useRef)(null);
921
1035
  const state = (0, import_menu.useMenuTriggerState)({});
922
- const { menuTriggerProps, menuProps } = (0, import_menu2.useMenuTrigger)({ trigger: "press", isDisabled: disabled }, state, menuTriggerRef);
1036
+ const { menuTriggerProps, menuProps } = (0, import_menu2.useMenuTrigger)(
1037
+ { trigger: "press", isDisabled: disabled },
1038
+ state,
1039
+ menuTriggerRef
1040
+ );
923
1041
  const { overlayProps: positionProps } = (0, import_overlays5.useOverlayPosition)({
924
1042
  targetRef: menuTriggerRef,
925
1043
  overlayRef,
@@ -932,13 +1050,13 @@ var MenuTrigger = ({ disabled, children }) => {
932
1050
  autoFocus: state.focusStrategy,
933
1051
  triggerWidth: menuTriggerRef.current ? menuTriggerRef.current.offsetWidth : void 0
934
1052
  };
935
- return /* @__PURE__ */ import_react30.default.createElement(MenuContext.Provider, {
1053
+ return /* @__PURE__ */ import_react33.default.createElement(MenuContext.Provider, {
936
1054
  value: menuContext
937
- }, /* @__PURE__ */ import_react30.default.createElement(import_interactions3.PressResponder, {
1055
+ }, /* @__PURE__ */ import_react33.default.createElement(import_interactions3.PressResponder, {
938
1056
  ...menuTriggerProps,
939
1057
  ref: menuTriggerRef,
940
1058
  isPressed: state.isOpen
941
- }, menuTrigger), /* @__PURE__ */ import_react30.default.createElement(Popover, {
1059
+ }, menuTrigger), /* @__PURE__ */ import_react33.default.createElement(Popover, {
942
1060
  open: state.isOpen,
943
1061
  onClose: state.close,
944
1062
  dismissable: true,
@@ -949,24 +1067,28 @@ var MenuTrigger = ({ disabled, children }) => {
949
1067
  };
950
1068
 
951
1069
  // src/Menu/MenuItem.tsx
952
- var import_react31 = __toESM(require("react"));
1070
+ var import_react34 = __toESM(require("react"));
953
1071
  var import_focus4 = require("@react-aria/focus");
954
1072
  var import_menu3 = require("@react-aria/menu");
955
- var import_utils5 = require("@react-aria/utils");
956
- var import_system18 = require("@marigold/system");
1073
+ var import_utils6 = require("@react-aria/utils");
1074
+ var import_system20 = require("@marigold/system");
957
1075
  var MenuItem = ({ item, state, onAction, css }) => {
958
- const ref = (0, import_react31.useRef)(null);
1076
+ const ref = (0, import_react34.useRef)(null);
959
1077
  const { onClose } = useMenuContext();
960
- const { menuItemProps } = (0, import_menu3.useMenuItem)({
961
- key: item.key,
962
- onAction,
963
- onClose
964
- }, state, ref);
1078
+ const { menuItemProps } = (0, import_menu3.useMenuItem)(
1079
+ {
1080
+ key: item.key,
1081
+ onAction,
1082
+ onClose
1083
+ },
1084
+ state,
1085
+ ref
1086
+ );
965
1087
  const { isFocusVisible, focusProps } = (0, import_focus4.useFocusRing)();
966
- const stateProps = (0, import_system18.useStateProps)({
1088
+ const stateProps = (0, import_system20.useStateProps)({
967
1089
  focus: isFocusVisible
968
1090
  });
969
- return /* @__PURE__ */ import_react31.default.createElement(import_system18.Box, {
1091
+ return /* @__PURE__ */ import_react34.default.createElement(import_system20.Box, {
970
1092
  as: "li",
971
1093
  ref,
972
1094
  __baseCSS: {
@@ -975,7 +1097,7 @@ var MenuItem = ({ item, state, onAction, css }) => {
975
1097
  }
976
1098
  },
977
1099
  css,
978
- ...(0, import_utils5.mergeProps)(menuItemProps, focusProps),
1100
+ ...(0, import_utils6.mergeProps)(menuItemProps, focusProps),
979
1101
  ...stateProps
980
1102
  }, item.rendered);
981
1103
  };
@@ -984,15 +1106,19 @@ var MenuItem = ({ item, state, onAction, css }) => {
984
1106
  var Menu = ({ variant, size, ...props }) => {
985
1107
  const { triggerWidth, ...menuContext } = useMenuContext();
986
1108
  const ownProps = { ...props, ...menuContext };
987
- const ref = (0, import_react32.useRef)(null);
1109
+ const ref = (0, import_react35.useRef)(null);
988
1110
  const state = (0, import_tree.useTreeState)({ ...ownProps, selectionMode: "none" });
989
1111
  const { menuProps } = (0, import_menu4.useMenu)(ownProps, state, ref);
990
- const styles = (0, import_system19.useComponentStyles)("Menu", { variant, size }, { parts: ["container", "item"] });
991
- return /* @__PURE__ */ import_react32.default.createElement(import_focus5.FocusScope, {
1112
+ const styles = (0, import_system21.useComponentStyles)(
1113
+ "Menu",
1114
+ { variant, size },
1115
+ { parts: ["container", "item"] }
1116
+ );
1117
+ return /* @__PURE__ */ import_react35.default.createElement(import_focus5.FocusScope, {
992
1118
  restoreFocus: true
993
- }, /* @__PURE__ */ import_react32.default.createElement("div", null, /* @__PURE__ */ import_react32.default.createElement(import_overlays6.DismissButton, {
1119
+ }, /* @__PURE__ */ import_react35.default.createElement("div", null, /* @__PURE__ */ import_react35.default.createElement(import_overlays6.DismissButton, {
994
1120
  onDismiss: ownProps.onClose
995
- }), /* @__PURE__ */ import_react32.default.createElement(import_system19.Box, {
1121
+ }), /* @__PURE__ */ import_react35.default.createElement(import_system21.Box, {
996
1122
  as: "ul",
997
1123
  ref,
998
1124
  style: { width: triggerWidth },
@@ -1003,13 +1129,13 @@ var Menu = ({ variant, size, ...props }) => {
1003
1129
  },
1004
1130
  css: styles.container,
1005
1131
  ...menuProps
1006
- }, [...state.collection].map((item) => /* @__PURE__ */ import_react32.default.createElement(MenuItem, {
1132
+ }, [...state.collection].map((item) => /* @__PURE__ */ import_react35.default.createElement(MenuItem, {
1007
1133
  key: item.key,
1008
1134
  item,
1009
1135
  state,
1010
1136
  onAction: props.onSelect,
1011
1137
  css: styles.item
1012
- }))), /* @__PURE__ */ import_react32.default.createElement(import_overlays6.DismissButton, {
1138
+ }))), /* @__PURE__ */ import_react35.default.createElement(import_overlays6.DismissButton, {
1013
1139
  onDismiss: ownProps.onClose
1014
1140
  })));
1015
1141
  };
@@ -1017,9 +1143,9 @@ Menu.Trigger = MenuTrigger;
1017
1143
  Menu.Item = import_collections.Item;
1018
1144
 
1019
1145
  // src/Message/Message.tsx
1020
- var import_react33 = __toESM(require("react"));
1146
+ var import_react36 = __toESM(require("react"));
1021
1147
  var import_icons2 = require("@marigold/icons");
1022
- var import_system20 = require("@marigold/system");
1148
+ var import_system22 = require("@marigold/system");
1023
1149
  var Message = ({
1024
1150
  messageTitle,
1025
1151
  variant = "info",
@@ -1027,50 +1153,54 @@ var Message = ({
1027
1153
  children,
1028
1154
  ...props
1029
1155
  }) => {
1030
- const styles = (0, import_system20.useComponentStyles)("Message", {
1031
- variant,
1032
- size
1033
- }, { parts: ["container", "icon", "title", "content"] });
1034
- var icon = /* @__PURE__ */ import_react33.default.createElement(import_icons2.Info, null);
1156
+ const styles = (0, import_system22.useComponentStyles)(
1157
+ "Message",
1158
+ {
1159
+ variant,
1160
+ size
1161
+ },
1162
+ { parts: ["container", "icon", "title", "content"] }
1163
+ );
1164
+ var icon = /* @__PURE__ */ import_react36.default.createElement(import_icons2.Info, null);
1035
1165
  if (variant === "warning") {
1036
- icon = /* @__PURE__ */ import_react33.default.createElement(import_icons2.Notification, null);
1166
+ icon = /* @__PURE__ */ import_react36.default.createElement(import_icons2.Notification, null);
1037
1167
  }
1038
1168
  if (variant === "error") {
1039
- icon = /* @__PURE__ */ import_react33.default.createElement(import_icons2.Exclamation, null);
1169
+ icon = /* @__PURE__ */ import_react36.default.createElement(import_icons2.Exclamation, null);
1040
1170
  }
1041
- return /* @__PURE__ */ import_react33.default.createElement(import_system.Box, {
1171
+ return /* @__PURE__ */ import_react36.default.createElement(import_system.Box, {
1042
1172
  css: styles.container,
1043
1173
  ...props
1044
- }, /* @__PURE__ */ import_react33.default.createElement(import_system.Box, {
1174
+ }, /* @__PURE__ */ import_react36.default.createElement(import_system.Box, {
1045
1175
  __baseCSS: { display: "flex", alignItems: "center", gap: 4 }
1046
- }, /* @__PURE__ */ import_react33.default.createElement(import_system.Box, {
1176
+ }, /* @__PURE__ */ import_react36.default.createElement(import_system.Box, {
1047
1177
  role: "presentation",
1048
1178
  css: styles.icon
1049
- }, icon), /* @__PURE__ */ import_react33.default.createElement(import_system.Box, {
1179
+ }, icon), /* @__PURE__ */ import_react36.default.createElement(import_system.Box, {
1050
1180
  css: styles.title
1051
- }, messageTitle)), /* @__PURE__ */ import_react33.default.createElement(import_system.Box, {
1181
+ }, messageTitle)), /* @__PURE__ */ import_react36.default.createElement(import_system.Box, {
1052
1182
  css: styles.content
1053
1183
  }, children));
1054
1184
  };
1055
1185
 
1056
1186
  // src/NumberField/NumberField.tsx
1057
- var import_react37 = __toESM(require("react"));
1187
+ var import_react40 = __toESM(require("react"));
1058
1188
  var import_focus6 = require("@react-aria/focus");
1059
1189
  var import_interactions5 = require("@react-aria/interactions");
1060
1190
  var import_i18n = require("@react-aria/i18n");
1061
1191
  var import_numberfield = require("@react-aria/numberfield");
1062
- var import_utils7 = require("@react-aria/utils");
1192
+ var import_utils8 = require("@react-aria/utils");
1063
1193
  var import_numberfield2 = require("@react-stately/numberfield");
1064
- var import_system24 = require("@marigold/system");
1194
+ var import_system26 = require("@marigold/system");
1065
1195
 
1066
1196
  // src/FieldBase/FieldBase.tsx
1067
- var import_react35 = __toESM(require("react"));
1068
- var import_system22 = require("@marigold/system");
1197
+ var import_react38 = __toESM(require("react"));
1198
+ var import_system24 = require("@marigold/system");
1069
1199
 
1070
1200
  // src/HelpText/HelpText.tsx
1071
- var import_react34 = __toESM(require("react"));
1201
+ var import_react37 = __toESM(require("react"));
1072
1202
  var import_icons3 = require("@marigold/icons");
1073
- var import_system21 = require("@marigold/system");
1203
+ var import_system23 = require("@marigold/system");
1074
1204
  var HelpText = ({
1075
1205
  variant,
1076
1206
  size,
@@ -1084,16 +1214,20 @@ var HelpText = ({
1084
1214
  }) => {
1085
1215
  var _a;
1086
1216
  const hasErrorMessage = errorMessage && error;
1087
- const styles = (0, import_system21.useComponentStyles)("HelpText", { variant, size }, { parts: ["container", "icon"] });
1088
- return /* @__PURE__ */ import_react34.default.createElement(import_system21.Box, {
1217
+ const styles = (0, import_system23.useComponentStyles)(
1218
+ "HelpText",
1219
+ { variant, size },
1220
+ { parts: ["container", "icon"] }
1221
+ );
1222
+ return /* @__PURE__ */ import_react37.default.createElement(import_system23.Box, {
1089
1223
  ...hasErrorMessage ? errorMessageProps : descriptionProps,
1090
1224
  ...props,
1091
1225
  __baseCSS: { display: "flex", alignItems: "center", gap: 4 },
1092
1226
  css: styles.container
1093
- }, hasErrorMessage ? /* @__PURE__ */ import_react34.default.createElement(import_react34.default.Fragment, null, /* @__PURE__ */ import_react34.default.createElement(import_icons3.Exclamation, {
1227
+ }, hasErrorMessage ? /* @__PURE__ */ import_react37.default.createElement(import_react37.default.Fragment, null, /* @__PURE__ */ import_react37.default.createElement(import_icons3.Exclamation, {
1094
1228
  role: "presentation",
1095
1229
  size: ((_a = styles == null ? void 0 : styles.icon) == null ? void 0 : _a.size) || 16
1096
- }), errorMessage) : /* @__PURE__ */ import_react34.default.createElement(import_react34.default.Fragment, null, description));
1230
+ }), errorMessage) : /* @__PURE__ */ import_react37.default.createElement(import_react37.default.Fragment, null, description));
1097
1231
  };
1098
1232
 
1099
1233
  // src/FieldBase/FieldBase.tsx
@@ -1114,15 +1248,15 @@ var FieldBase = ({
1114
1248
  stateProps
1115
1249
  }) => {
1116
1250
  const hasHelpText = !!description || errorMessage && error;
1117
- return /* @__PURE__ */ import_react35.default.createElement(import_system22.Box, {
1251
+ return /* @__PURE__ */ import_react38.default.createElement(import_system24.Box, {
1118
1252
  css: { display: "flex", flexDirection: "column", width }
1119
- }, label && /* @__PURE__ */ import_react35.default.createElement(Label, {
1253
+ }, label && /* @__PURE__ */ import_react38.default.createElement(Label, {
1120
1254
  required,
1121
1255
  variant,
1122
1256
  size,
1123
1257
  ...labelProps,
1124
1258
  ...stateProps
1125
- }, label), children, hasHelpText && /* @__PURE__ */ import_react35.default.createElement(HelpText, {
1259
+ }, label), children, hasHelpText && /* @__PURE__ */ import_react38.default.createElement(HelpText, {
1126
1260
  ...stateProps,
1127
1261
  variant,
1128
1262
  size,
@@ -1136,42 +1270,45 @@ var FieldBase = ({
1136
1270
  };
1137
1271
 
1138
1272
  // src/NumberField/StepButton.tsx
1139
- var import_react36 = __toESM(require("react"));
1273
+ var import_react39 = __toESM(require("react"));
1140
1274
  var import_button3 = require("@react-aria/button");
1141
1275
  var import_interactions4 = require("@react-aria/interactions");
1142
- var import_utils6 = require("@react-aria/utils");
1143
- var import_system23 = require("@marigold/system");
1144
- var Plus = () => /* @__PURE__ */ import_react36.default.createElement(import_system23.Box, {
1276
+ var import_utils7 = require("@react-aria/utils");
1277
+ var import_system25 = require("@marigold/system");
1278
+ var Plus = () => /* @__PURE__ */ import_react39.default.createElement(import_system25.Box, {
1145
1279
  as: "svg",
1146
1280
  __baseCSS: { width: 16, height: 16 },
1147
1281
  viewBox: "0 0 20 20",
1148
1282
  fill: "currentColor"
1149
- }, /* @__PURE__ */ import_react36.default.createElement("path", {
1283
+ }, /* @__PURE__ */ import_react39.default.createElement("path", {
1150
1284
  fillRule: "evenodd",
1151
1285
  clipRule: "evenodd",
1152
1286
  d: "M10 3a1 1 0 011 1v5h5a1 1 0 110 2h-5v5a1 1 0 11-2 0v-5H4a1 1 0 110-2h5V4a1 1 0 011-1z"
1153
1287
  }));
1154
- var Minus = () => /* @__PURE__ */ import_react36.default.createElement(import_system23.Box, {
1288
+ var Minus = () => /* @__PURE__ */ import_react39.default.createElement(import_system25.Box, {
1155
1289
  as: "svg",
1156
1290
  __baseCSS: { width: 16, height: 16 },
1157
1291
  viewBox: "0 0 20 20",
1158
1292
  fill: "currentColor"
1159
- }, /* @__PURE__ */ import_react36.default.createElement("path", {
1293
+ }, /* @__PURE__ */ import_react39.default.createElement("path", {
1160
1294
  fillRule: "evenodd",
1161
1295
  clipRule: "evenodd",
1162
1296
  d: "M3 10a1 1 0 011-1h12a1 1 0 110 2H4a1 1 0 01-1-1z"
1163
1297
  }));
1164
1298
  var StepButton = ({ direction, css, ...props }) => {
1165
- const ref = (0, import_react36.useRef)(null);
1166
- const { buttonProps, isPressed } = (0, import_button3.useButton)({ ...props, elementType: "div" }, ref);
1299
+ const ref = (0, import_react39.useRef)(null);
1300
+ const { buttonProps, isPressed } = (0, import_button3.useButton)(
1301
+ { ...props, elementType: "div" },
1302
+ ref
1303
+ );
1167
1304
  const { hoverProps, isHovered } = (0, import_interactions4.useHover)(props);
1168
- const stateProps = (0, import_system23.useStateProps)({
1305
+ const stateProps = (0, import_system25.useStateProps)({
1169
1306
  active: isPressed,
1170
1307
  hover: isHovered,
1171
1308
  disabled: props.isDisabled
1172
1309
  });
1173
1310
  const Icon3 = direction === "up" ? Plus : Minus;
1174
- return /* @__PURE__ */ import_react36.default.createElement(import_system23.Box, {
1311
+ return /* @__PURE__ */ import_react39.default.createElement(import_system25.Box, {
1175
1312
  __baseCSS: {
1176
1313
  display: "flex",
1177
1314
  alignItems: "center",
@@ -1179,107 +1316,113 @@ var StepButton = ({ direction, css, ...props }) => {
1179
1316
  cursor: props.isDisabled ? "not-allowed" : "pointer"
1180
1317
  },
1181
1318
  css,
1182
- ...(0, import_utils6.mergeProps)(buttonProps, hoverProps),
1319
+ ...(0, import_utils7.mergeProps)(buttonProps, hoverProps),
1183
1320
  ...stateProps
1184
- }, /* @__PURE__ */ import_react36.default.createElement(Icon3, null));
1321
+ }, /* @__PURE__ */ import_react39.default.createElement(Icon3, null));
1185
1322
  };
1186
1323
 
1187
1324
  // src/NumberField/NumberField.tsx
1188
- var NumberField = (0, import_react37.forwardRef)(({
1189
- variant,
1190
- size,
1191
- width,
1192
- disabled,
1193
- required,
1194
- readOnly,
1195
- error,
1196
- hideStepper,
1197
- ...rest
1198
- }, ref) => {
1199
- const props = {
1200
- isDisabled: disabled,
1201
- isRequired: required,
1202
- isReadOnly: readOnly,
1203
- validationState: error ? "invalid" : "valid",
1204
- ...rest
1205
- };
1206
- const showStepper = !hideStepper;
1207
- const { locale } = (0, import_i18n.useLocale)();
1208
- const inputRef = (0, import_utils7.useObjectRef)(ref);
1209
- const state = (0, import_numberfield2.useNumberFieldState)({ ...props, locale });
1210
- const {
1211
- labelProps,
1212
- groupProps,
1213
- inputProps,
1214
- descriptionProps,
1215
- errorMessageProps,
1216
- incrementButtonProps,
1217
- decrementButtonProps
1218
- } = (0, import_numberfield.useNumberField)(props, state, inputRef);
1219
- const { hoverProps, isHovered } = (0, import_interactions5.useHover)({ isDisabled: disabled });
1220
- const { focusProps, isFocused } = (0, import_focus6.useFocusRing)({
1221
- within: true,
1222
- isTextInput: true,
1223
- autoFocus: props.autoFocus
1224
- });
1225
- const styles = (0, import_system24.useComponentStyles)("NumberField", { variant, size }, { parts: ["group", "stepper"] });
1226
- const stateProps = (0, import_system24.useStateProps)({
1227
- hover: isHovered,
1228
- focus: isFocused,
1325
+ var NumberField = (0, import_react40.forwardRef)(
1326
+ ({
1327
+ variant,
1328
+ size,
1329
+ width,
1229
1330
  disabled,
1230
- readOnly,
1231
- error
1232
- });
1233
- return /* @__PURE__ */ import_react37.default.createElement(FieldBase, {
1234
- label: props.label,
1235
- labelProps,
1236
1331
  required,
1237
- description: props.description,
1238
- descriptionProps,
1332
+ readOnly,
1239
1333
  error,
1240
- errorMessage: props.errorMessage,
1241
- errorMessageProps,
1242
- stateProps,
1243
- variant,
1244
- size,
1245
- width
1246
- }, /* @__PURE__ */ import_react37.default.createElement(import_system24.Box, {
1247
- "data-group": true,
1248
- __baseCSS: {
1249
- display: "flex",
1250
- alignItems: "stretch",
1251
- "> input": {
1252
- flexGrow: 1
1253
- }
1254
- },
1255
- css: styles.group,
1256
- ...(0, import_utils7.mergeProps)(groupProps, focusProps, hoverProps),
1257
- ...stateProps
1258
- }, showStepper && /* @__PURE__ */ import_react37.default.createElement(StepButton, {
1259
- direction: "down",
1260
- css: styles.stepper,
1261
- ...decrementButtonProps
1262
- }), /* @__PURE__ */ import_react37.default.createElement(Input, {
1263
- ref: inputRef,
1264
- variant,
1265
- size,
1266
- ...inputProps,
1267
- ...stateProps
1268
- }), showStepper && /* @__PURE__ */ import_react37.default.createElement(StepButton, {
1269
- direction: "up",
1270
- css: styles.stepper,
1271
- ...incrementButtonProps
1272
- })));
1273
- });
1334
+ hideStepper,
1335
+ ...rest
1336
+ }, ref) => {
1337
+ const props = {
1338
+ isDisabled: disabled,
1339
+ isRequired: required,
1340
+ isReadOnly: readOnly,
1341
+ validationState: error ? "invalid" : "valid",
1342
+ ...rest
1343
+ };
1344
+ const showStepper = !hideStepper;
1345
+ const { locale } = (0, import_i18n.useLocale)();
1346
+ const inputRef = (0, import_utils8.useObjectRef)(ref);
1347
+ const state = (0, import_numberfield2.useNumberFieldState)({ ...props, locale });
1348
+ const {
1349
+ labelProps,
1350
+ groupProps,
1351
+ inputProps,
1352
+ descriptionProps,
1353
+ errorMessageProps,
1354
+ incrementButtonProps,
1355
+ decrementButtonProps
1356
+ } = (0, import_numberfield.useNumberField)(props, state, inputRef);
1357
+ const { hoverProps, isHovered } = (0, import_interactions5.useHover)({ isDisabled: disabled });
1358
+ const { focusProps, isFocused } = (0, import_focus6.useFocusRing)({
1359
+ within: true,
1360
+ isTextInput: true,
1361
+ autoFocus: props.autoFocus
1362
+ });
1363
+ const styles = (0, import_system26.useComponentStyles)(
1364
+ "NumberField",
1365
+ { variant, size },
1366
+ { parts: ["group", "stepper"] }
1367
+ );
1368
+ const stateProps = (0, import_system26.useStateProps)({
1369
+ hover: isHovered,
1370
+ focus: isFocused,
1371
+ disabled,
1372
+ readOnly,
1373
+ error
1374
+ });
1375
+ return /* @__PURE__ */ import_react40.default.createElement(FieldBase, {
1376
+ label: props.label,
1377
+ labelProps,
1378
+ required,
1379
+ description: props.description,
1380
+ descriptionProps,
1381
+ error,
1382
+ errorMessage: props.errorMessage,
1383
+ errorMessageProps,
1384
+ stateProps,
1385
+ variant,
1386
+ size,
1387
+ width
1388
+ }, /* @__PURE__ */ import_react40.default.createElement(import_system26.Box, {
1389
+ "data-group": true,
1390
+ __baseCSS: {
1391
+ display: "flex",
1392
+ alignItems: "stretch",
1393
+ "> input": {
1394
+ flexGrow: 1
1395
+ }
1396
+ },
1397
+ css: styles.group,
1398
+ ...(0, import_utils8.mergeProps)(groupProps, focusProps, hoverProps),
1399
+ ...stateProps
1400
+ }, showStepper && /* @__PURE__ */ import_react40.default.createElement(StepButton, {
1401
+ direction: "down",
1402
+ css: styles.stepper,
1403
+ ...decrementButtonProps
1404
+ }), /* @__PURE__ */ import_react40.default.createElement(Input, {
1405
+ ref: inputRef,
1406
+ variant,
1407
+ size,
1408
+ ...inputProps,
1409
+ ...stateProps
1410
+ }), showStepper && /* @__PURE__ */ import_react40.default.createElement(StepButton, {
1411
+ direction: "up",
1412
+ css: styles.stepper,
1413
+ ...incrementButtonProps
1414
+ })));
1415
+ }
1416
+ );
1274
1417
 
1275
1418
  // src/Provider/index.ts
1276
- var import_system26 = require("@marigold/system");
1419
+ var import_system28 = require("@marigold/system");
1277
1420
  var import_ssr = require("@react-aria/ssr");
1278
1421
 
1279
1422
  // src/Provider/MarigoldProvider.tsx
1280
- var import_react38 = __toESM(require("react"));
1423
+ var import_react41 = __toESM(require("react"));
1281
1424
  var import_overlays7 = require("@react-aria/overlays");
1282
- var import_system25 = require("@marigold/system");
1425
+ var import_system27 = require("@marigold/system");
1283
1426
  function MarigoldProvider({
1284
1427
  children,
1285
1428
  theme,
@@ -1287,38 +1430,42 @@ function MarigoldProvider({
1287
1430
  normalizeDocument = true
1288
1431
  }) {
1289
1432
  var _a;
1290
- const outer = (0, import_system25.useTheme)();
1291
- const isTopLevel = outer.theme === import_system25.__defaultTheme;
1433
+ const outer = (0, import_system27.useTheme)();
1434
+ const isTopLevel = outer.theme === import_system27.__defaultTheme;
1292
1435
  if (((_a = outer.theme) == null ? void 0 : _a.root) && !isTopLevel && !selector) {
1293
- throw new Error(`[MarigoldProvider] You cannot nest a MarigoldProvider inside another MarigoldProvider without a "selector"!
1294
- Nested themes with a "root" property must specify a "selector" to prevent accidentally overriding global CSS`);
1436
+ throw new Error(
1437
+ `[MarigoldProvider] You cannot nest a MarigoldProvider inside another MarigoldProvider without a "selector"!
1438
+ Nested themes with a "root" property must specify a "selector" to prevent accidentally overriding global CSS`
1439
+ );
1295
1440
  }
1296
- return /* @__PURE__ */ import_react38.default.createElement(import_system25.ThemeProvider, {
1441
+ return /* @__PURE__ */ import_react41.default.createElement(import_system27.ThemeProvider, {
1297
1442
  theme
1298
- }, /* @__PURE__ */ import_react38.default.createElement(import_system25.Global, {
1443
+ }, /* @__PURE__ */ import_react41.default.createElement(import_system27.Global, {
1299
1444
  normalizeDocument: isTopLevel && normalizeDocument,
1300
1445
  selector
1301
- }), isTopLevel ? /* @__PURE__ */ import_react38.default.createElement(import_overlays7.OverlayProvider, null, children) : children);
1446
+ }), isTopLevel ? /* @__PURE__ */ import_react41.default.createElement(import_overlays7.OverlayProvider, null, children) : children);
1302
1447
  }
1303
1448
 
1304
1449
  // src/Radio/Radio.tsx
1305
- var import_react41 = __toESM(require("react"));
1450
+ var import_react44 = __toESM(require("react"));
1306
1451
  var import_interactions6 = require("@react-aria/interactions");
1307
1452
  var import_focus7 = require("@react-aria/focus");
1308
1453
  var import_radio3 = require("@react-aria/radio");
1309
- var import_utils8 = require("@react-aria/utils");
1310
- var import_system28 = require("@marigold/system");
1454
+ var import_utils9 = require("@react-aria/utils");
1455
+ var import_system30 = require("@marigold/system");
1311
1456
 
1312
1457
  // src/Radio/Context.ts
1313
- var import_react39 = require("react");
1314
- var RadioGroupContext = (0, import_react39.createContext)(null);
1315
- var useRadioGroupContext = () => (0, import_react39.useContext)(RadioGroupContext);
1458
+ var import_react42 = require("react");
1459
+ var RadioGroupContext = (0, import_react42.createContext)(
1460
+ null
1461
+ );
1462
+ var useRadioGroupContext = () => (0, import_react42.useContext)(RadioGroupContext);
1316
1463
 
1317
1464
  // src/Radio/RadioGroup.tsx
1318
- var import_react40 = __toESM(require("react"));
1465
+ var import_react43 = __toESM(require("react"));
1319
1466
  var import_radio = require("@react-aria/radio");
1320
1467
  var import_radio2 = require("@react-stately/radio");
1321
- var import_system27 = require("@marigold/system");
1468
+ var import_system29 = require("@marigold/system");
1322
1469
  var RadioGroup = ({
1323
1470
  children,
1324
1471
  orientation = "vertical",
@@ -1340,15 +1487,19 @@ var RadioGroup = ({
1340
1487
  };
1341
1488
  const state = (0, import_radio2.useRadioGroupState)(props);
1342
1489
  const { radioGroupProps, labelProps } = (0, import_radio.useRadioGroup)(props, state);
1343
- const styles = (0, import_system27.useComponentStyles)("RadioGroup", { variant, size }, { parts: ["container", "group"] });
1344
- return /* @__PURE__ */ import_react40.default.createElement(import_system27.Box, {
1490
+ const styles = (0, import_system29.useComponentStyles)(
1491
+ "RadioGroup",
1492
+ { variant, size },
1493
+ { parts: ["container", "group"] }
1494
+ );
1495
+ return /* @__PURE__ */ import_react43.default.createElement(import_system29.Box, {
1345
1496
  ...radioGroupProps,
1346
1497
  css: styles.container
1347
- }, props.label && /* @__PURE__ */ import_react40.default.createElement(Label, {
1498
+ }, props.label && /* @__PURE__ */ import_react43.default.createElement(Label, {
1348
1499
  as: "span",
1349
1500
  required,
1350
1501
  ...labelProps
1351
- }, props.label), /* @__PURE__ */ import_react40.default.createElement(import_system27.Box, {
1502
+ }, props.label), /* @__PURE__ */ import_react43.default.createElement(import_system29.Box, {
1352
1503
  role: "presentation",
1353
1504
  "data-orientation": orientation,
1354
1505
  __baseCSS: {
@@ -1358,21 +1509,21 @@ var RadioGroup = ({
1358
1509
  gap: orientation === "vertical" ? "0.5ch" : "1.5ch"
1359
1510
  },
1360
1511
  css: styles.group
1361
- }, /* @__PURE__ */ import_react40.default.createElement(RadioGroupContext.Provider, {
1512
+ }, /* @__PURE__ */ import_react43.default.createElement(RadioGroupContext.Provider, {
1362
1513
  value: { variant, size, width, error, ...state }
1363
1514
  }, children)));
1364
1515
  };
1365
1516
 
1366
1517
  // src/Radio/Radio.tsx
1367
- var Dot = () => /* @__PURE__ */ import_react41.default.createElement("svg", {
1518
+ var Dot = () => /* @__PURE__ */ import_react44.default.createElement("svg", {
1368
1519
  viewBox: "0 0 6 6"
1369
- }, /* @__PURE__ */ import_react41.default.createElement("circle", {
1520
+ }, /* @__PURE__ */ import_react44.default.createElement("circle", {
1370
1521
  fill: "currentColor",
1371
1522
  cx: "3",
1372
1523
  cy: "3",
1373
1524
  r: "3"
1374
1525
  }));
1375
- var Icon2 = ({ checked, css, ...props }) => /* @__PURE__ */ import_react41.default.createElement(import_system28.Box, {
1526
+ var Icon2 = ({ checked, css, ...props }) => /* @__PURE__ */ import_react44.default.createElement(import_system30.Box, {
1376
1527
  "aria-hidden": "true",
1377
1528
  __baseCSS: {
1378
1529
  width: 16,
@@ -1387,68 +1538,78 @@ var Icon2 = ({ checked, css, ...props }) => /* @__PURE__ */ import_react41.defau
1387
1538
  },
1388
1539
  css,
1389
1540
  ...props
1390
- }, checked ? /* @__PURE__ */ import_react41.default.createElement(Dot, null) : null);
1391
- var Radio = (0, import_react41.forwardRef)(({ width, disabled, ...props }, ref) => {
1392
- const {
1393
- variant,
1394
- size,
1395
- error,
1396
- width: groupWidth,
1397
- ...state
1398
- } = useRadioGroupContext();
1399
- const inputRef = (0, import_utils8.useObjectRef)(ref);
1400
- const { inputProps } = (0, import_radio3.useRadio)({ isDisabled: disabled, ...props }, state, inputRef);
1401
- const styles = (0, import_system28.useComponentStyles)("Radio", { variant: variant || props.variant, size: size || props.size }, { parts: ["container", "label", "radio"] });
1402
- const { hoverProps, isHovered } = (0, import_interactions6.useHover)({});
1403
- const { isFocusVisible, focusProps } = (0, import_focus7.useFocusRing)();
1404
- const stateProps = (0, import_system28.useStateProps)({
1405
- hover: isHovered,
1406
- focus: isFocusVisible,
1407
- checked: inputProps.checked,
1408
- disabled: inputProps.disabled,
1409
- readOnly: props.readOnly,
1410
- error
1411
- });
1412
- return /* @__PURE__ */ import_react41.default.createElement(import_system28.Box, {
1413
- as: "label",
1414
- __baseCSS: {
1415
- display: "flex",
1416
- alignItems: "center",
1417
- gap: "1ch",
1418
- position: "relative",
1419
- width: width || groupWidth || "100%"
1420
- },
1421
- css: styles.container,
1422
- ...hoverProps,
1423
- ...stateProps
1424
- }, /* @__PURE__ */ import_react41.default.createElement(import_system28.Box, {
1425
- as: "input",
1426
- ref: inputRef,
1427
- css: {
1428
- position: "absolute",
1429
- width: "100%",
1430
- height: "100%",
1431
- top: 0,
1432
- left: 0,
1433
- zIndex: 1,
1434
- opacity: 1e-4,
1435
- cursor: inputProps.disabled ? "not-allowed" : "pointer"
1436
- },
1437
- ...inputProps,
1438
- ...focusProps
1439
- }), /* @__PURE__ */ import_react41.default.createElement(Icon2, {
1440
- checked: inputProps.checked,
1441
- css: styles.radio,
1442
- ...stateProps
1443
- }), /* @__PURE__ */ import_react41.default.createElement(import_system28.Box, {
1444
- css: styles.label,
1445
- ...stateProps
1446
- }, props.children));
1447
- });
1541
+ }, checked ? /* @__PURE__ */ import_react44.default.createElement(Dot, null) : null);
1542
+ var Radio = (0, import_react44.forwardRef)(
1543
+ ({ width, disabled, ...props }, ref) => {
1544
+ const {
1545
+ variant,
1546
+ size,
1547
+ error,
1548
+ width: groupWidth,
1549
+ ...state
1550
+ } = useRadioGroupContext();
1551
+ const inputRef = (0, import_utils9.useObjectRef)(ref);
1552
+ const { inputProps } = (0, import_radio3.useRadio)(
1553
+ { isDisabled: disabled, ...props },
1554
+ state,
1555
+ inputRef
1556
+ );
1557
+ const styles = (0, import_system30.useComponentStyles)(
1558
+ "Radio",
1559
+ { variant: variant || props.variant, size: size || props.size },
1560
+ { parts: ["container", "label", "radio"] }
1561
+ );
1562
+ const { hoverProps, isHovered } = (0, import_interactions6.useHover)({});
1563
+ const { isFocusVisible, focusProps } = (0, import_focus7.useFocusRing)();
1564
+ const stateProps = (0, import_system30.useStateProps)({
1565
+ hover: isHovered,
1566
+ focus: isFocusVisible,
1567
+ checked: inputProps.checked,
1568
+ disabled: inputProps.disabled,
1569
+ readOnly: props.readOnly,
1570
+ error
1571
+ });
1572
+ return /* @__PURE__ */ import_react44.default.createElement(import_system30.Box, {
1573
+ as: "label",
1574
+ __baseCSS: {
1575
+ display: "flex",
1576
+ alignItems: "center",
1577
+ gap: "1ch",
1578
+ position: "relative",
1579
+ width: width || groupWidth || "100%"
1580
+ },
1581
+ css: styles.container,
1582
+ ...hoverProps,
1583
+ ...stateProps
1584
+ }, /* @__PURE__ */ import_react44.default.createElement(import_system30.Box, {
1585
+ as: "input",
1586
+ ref: inputRef,
1587
+ css: {
1588
+ position: "absolute",
1589
+ width: "100%",
1590
+ height: "100%",
1591
+ top: 0,
1592
+ left: 0,
1593
+ zIndex: 1,
1594
+ opacity: 1e-4,
1595
+ cursor: inputProps.disabled ? "not-allowed" : "pointer"
1596
+ },
1597
+ ...inputProps,
1598
+ ...focusProps
1599
+ }), /* @__PURE__ */ import_react44.default.createElement(Icon2, {
1600
+ checked: inputProps.checked,
1601
+ css: styles.radio,
1602
+ ...stateProps
1603
+ }), /* @__PURE__ */ import_react44.default.createElement(import_system30.Box, {
1604
+ css: styles.label,
1605
+ ...stateProps
1606
+ }, props.children));
1607
+ }
1608
+ );
1448
1609
  Radio.Group = RadioGroup;
1449
1610
 
1450
1611
  // src/Select/Select.tsx
1451
- var import_react46 = __toESM(require("react"));
1612
+ var import_react49 = __toESM(require("react"));
1452
1613
  var import_button4 = require("@react-aria/button");
1453
1614
  var import_focus8 = require("@react-aria/focus");
1454
1615
  var import_i18n2 = require("@react-aria/i18n");
@@ -1456,41 +1617,45 @@ var import_overlays8 = require("@react-aria/overlays");
1456
1617
  var import_select = require("@react-aria/select");
1457
1618
  var import_select2 = require("@react-stately/select");
1458
1619
  var import_collections2 = require("@react-stately/collections");
1459
- var import_utils10 = require("@react-aria/utils");
1460
- var import_system32 = require("@marigold/system");
1620
+ var import_utils11 = require("@react-aria/utils");
1621
+ var import_system34 = require("@marigold/system");
1461
1622
 
1462
1623
  // src/ListBox/ListBox.tsx
1463
- var import_react45 = __toESM(require("react"));
1464
- var import_utils9 = require("@react-aria/utils");
1465
- var import_system31 = require("@marigold/system");
1624
+ var import_react48 = __toESM(require("react"));
1625
+ var import_utils10 = require("@react-aria/utils");
1626
+ var import_system33 = require("@marigold/system");
1466
1627
  var import_listbox3 = require("@react-aria/listbox");
1467
1628
 
1468
1629
  // src/ListBox/Context.ts
1469
- var import_react42 = require("react");
1470
- var ListBoxContext = (0, import_react42.createContext)({});
1471
- var useListBoxContext = () => (0, import_react42.useContext)(ListBoxContext);
1630
+ var import_react45 = require("react");
1631
+ var ListBoxContext = (0, import_react45.createContext)({});
1632
+ var useListBoxContext = () => (0, import_react45.useContext)(ListBoxContext);
1472
1633
 
1473
1634
  // src/ListBox/ListBoxSection.tsx
1474
- var import_react44 = __toESM(require("react"));
1635
+ var import_react47 = __toESM(require("react"));
1475
1636
  var import_listbox2 = require("@react-aria/listbox");
1476
- var import_system30 = require("@marigold/system");
1637
+ var import_system32 = require("@marigold/system");
1477
1638
 
1478
1639
  // src/ListBox/ListBoxOption.tsx
1479
- var import_react43 = __toESM(require("react"));
1640
+ var import_react46 = __toESM(require("react"));
1480
1641
  var import_listbox = require("@react-aria/listbox");
1481
- var import_system29 = require("@marigold/system");
1642
+ var import_system31 = require("@marigold/system");
1482
1643
  var ListBoxOption = ({ item, state }) => {
1483
- const ref = (0, import_react43.useRef)(null);
1484
- const { optionProps, isSelected, isDisabled, isFocused } = (0, import_listbox.useOption)({
1485
- key: item.key
1486
- }, state, ref);
1644
+ const ref = (0, import_react46.useRef)(null);
1645
+ const { optionProps, isSelected, isDisabled, isFocused } = (0, import_listbox.useOption)(
1646
+ {
1647
+ key: item.key
1648
+ },
1649
+ state,
1650
+ ref
1651
+ );
1487
1652
  const { styles } = useListBoxContext();
1488
- const stateProps = (0, import_system29.useStateProps)({
1653
+ const stateProps = (0, import_system31.useStateProps)({
1489
1654
  selected: isSelected,
1490
1655
  disabled: isDisabled,
1491
1656
  focusVisible: isFocused
1492
1657
  });
1493
- return /* @__PURE__ */ import_react43.default.createElement(import_system29.Box, {
1658
+ return /* @__PURE__ */ import_react46.default.createElement(import_system31.Box, {
1494
1659
  as: "li",
1495
1660
  ref,
1496
1661
  css: styles.option,
@@ -1506,19 +1671,19 @@ var ListBoxSection = ({ section, state }) => {
1506
1671
  "aria-label": section["aria-label"]
1507
1672
  });
1508
1673
  const { styles } = useListBoxContext();
1509
- return /* @__PURE__ */ import_react44.default.createElement(import_system30.Box, {
1674
+ return /* @__PURE__ */ import_react47.default.createElement(import_system32.Box, {
1510
1675
  as: "li",
1511
1676
  css: styles.section,
1512
1677
  ...itemProps
1513
- }, section.rendered && /* @__PURE__ */ import_react44.default.createElement(import_system30.Box, {
1678
+ }, section.rendered && /* @__PURE__ */ import_react47.default.createElement(import_system32.Box, {
1514
1679
  css: styles.sectionTitle,
1515
1680
  ...headingProps
1516
- }, section.rendered), /* @__PURE__ */ import_react44.default.createElement(import_system30.Box, {
1681
+ }, section.rendered), /* @__PURE__ */ import_react47.default.createElement(import_system32.Box, {
1517
1682
  as: "ul",
1518
1683
  __baseCSS: { listStyle: "none", p: 0 },
1519
1684
  css: styles.list,
1520
1685
  ...groupProps
1521
- }, [...section.childNodes].map((node) => /* @__PURE__ */ import_react44.default.createElement(ListBoxOption, {
1686
+ }, [...section.childNodes].map((node) => /* @__PURE__ */ import_react47.default.createElement(ListBoxOption, {
1522
1687
  key: node.key,
1523
1688
  item: node,
1524
1689
  state
@@ -1526,30 +1691,38 @@ var ListBoxSection = ({ section, state }) => {
1526
1691
  };
1527
1692
 
1528
1693
  // src/ListBox/ListBox.tsx
1529
- var ListBox = (0, import_react45.forwardRef)(({ state, variant, size, ...props }, ref) => {
1530
- const innerRef = (0, import_utils9.useObjectRef)(ref);
1531
- const { listBoxProps } = (0, import_listbox3.useListBox)(props, state, innerRef);
1532
- const styles = (0, import_system31.useComponentStyles)("ListBox", { variant, size }, { parts: ["container", "list", "option", "section", "sectionTitle"] });
1533
- return /* @__PURE__ */ import_react45.default.createElement(ListBoxContext.Provider, {
1534
- value: { styles }
1535
- }, /* @__PURE__ */ import_react45.default.createElement(import_system31.Box, {
1536
- css: styles.container
1537
- }, /* @__PURE__ */ import_react45.default.createElement(import_system31.Box, {
1538
- as: "ul",
1539
- ref: innerRef,
1540
- __baseCSS: { listStyle: "none", p: 0 },
1541
- css: styles.list,
1542
- ...listBoxProps
1543
- }, [...state.collection].map((item) => item.type === "section" ? /* @__PURE__ */ import_react45.default.createElement(ListBoxSection, {
1544
- key: item.key,
1545
- section: item,
1546
- state
1547
- }) : /* @__PURE__ */ import_react45.default.createElement(ListBoxOption, {
1548
- key: item.key,
1549
- item,
1550
- state
1551
- })))));
1552
- });
1694
+ var ListBox = (0, import_react48.forwardRef)(
1695
+ ({ state, variant, size, ...props }, ref) => {
1696
+ const innerRef = (0, import_utils10.useObjectRef)(ref);
1697
+ const { listBoxProps } = (0, import_listbox3.useListBox)(props, state, innerRef);
1698
+ const styles = (0, import_system33.useComponentStyles)(
1699
+ "ListBox",
1700
+ { variant, size },
1701
+ { parts: ["container", "list", "option", "section", "sectionTitle"] }
1702
+ );
1703
+ return /* @__PURE__ */ import_react48.default.createElement(ListBoxContext.Provider, {
1704
+ value: { styles }
1705
+ }, /* @__PURE__ */ import_react48.default.createElement(import_system33.Box, {
1706
+ css: styles.container
1707
+ }, /* @__PURE__ */ import_react48.default.createElement(import_system33.Box, {
1708
+ as: "ul",
1709
+ ref: innerRef,
1710
+ __baseCSS: { listStyle: "none", p: 0 },
1711
+ css: styles.list,
1712
+ ...listBoxProps
1713
+ }, [...state.collection].map(
1714
+ (item) => item.type === "section" ? /* @__PURE__ */ import_react48.default.createElement(ListBoxSection, {
1715
+ key: item.key,
1716
+ section: item,
1717
+ state
1718
+ }) : /* @__PURE__ */ import_react48.default.createElement(ListBoxOption, {
1719
+ key: item.key,
1720
+ item,
1721
+ state
1722
+ })
1723
+ ))));
1724
+ }
1725
+ );
1553
1726
 
1554
1727
  // src/Select/intl.ts
1555
1728
  var messages = {
@@ -1562,7 +1735,7 @@ var messages = {
1562
1735
  };
1563
1736
 
1564
1737
  // src/Select/Select.tsx
1565
- var Chevron = ({ css }) => /* @__PURE__ */ import_react46.default.createElement(import_system32.Box, {
1738
+ var Chevron = ({ css }) => /* @__PURE__ */ import_react49.default.createElement(import_system34.Box, {
1566
1739
  as: "svg",
1567
1740
  __baseCSS: { width: 16, height: 16 },
1568
1741
  css,
@@ -1570,125 +1743,134 @@ var Chevron = ({ css }) => /* @__PURE__ */ import_react46.default.createElement(
1570
1743
  viewBox: "0 0 24 24",
1571
1744
  stroke: "currentColor",
1572
1745
  strokeWidth: 2
1573
- }, /* @__PURE__ */ import_react46.default.createElement("path", {
1746
+ }, /* @__PURE__ */ import_react49.default.createElement("path", {
1574
1747
  strokeLinecap: "round",
1575
1748
  strokeLinejoin: "round",
1576
1749
  d: "M19 9l-7 7-7-7"
1577
1750
  }));
1578
- var Select = (0, import_react46.forwardRef)(({ variant, size, width, open, disabled, required, error, ...rest }, ref) => {
1579
- const formatMessage = (0, import_i18n2.useMessageFormatter)(messages);
1580
- const buttonRef = (0, import_utils10.useObjectRef)(ref);
1581
- const props = {
1582
- isOpen: open,
1583
- isDisabled: disabled,
1584
- isRequired: required,
1585
- validationState: error ? "invalid" : "valid",
1586
- placeholder: rest.placeholder || formatMessage("placeholder"),
1587
- ...rest
1588
- };
1589
- const state = (0, import_select2.useSelectState)(props);
1590
- const {
1591
- labelProps,
1592
- triggerProps,
1593
- valueProps,
1594
- menuProps,
1595
- descriptionProps,
1596
- errorMessageProps
1597
- } = (0, import_select.useSelect)(props, state, buttonRef);
1598
- const { buttonProps } = (0, import_button4.useButton)({ isDisabled: disabled, ...triggerProps }, buttonRef);
1599
- const { focusProps, isFocusVisible } = (0, import_focus8.useFocusRing)();
1600
- const overlayRef = (0, import_react46.useRef)(null);
1601
- const { overlayProps: positionProps } = (0, import_overlays8.useOverlayPosition)({
1602
- targetRef: buttonRef,
1603
- overlayRef,
1604
- isOpen: state.isOpen,
1605
- placement: "bottom left"
1606
- });
1607
- const styles = (0, import_system32.useComponentStyles)("Select", { variant, size }, { parts: ["container", "button", "icon"] });
1608
- const stateProps = (0, import_system32.useStateProps)({
1609
- disabled,
1610
- error,
1611
- focusVisible: isFocusVisible,
1612
- expanded: state.isOpen
1613
- });
1614
- return /* @__PURE__ */ import_react46.default.createElement(FieldBase, {
1615
- variant,
1616
- size,
1617
- width,
1618
- label: props.label,
1619
- labelProps: { as: "span", ...labelProps },
1620
- description: props.description,
1621
- descriptionProps,
1622
- error,
1623
- errorMessage: props.errorMessage,
1624
- errorMessageProps,
1625
- stateProps,
1626
- disabled,
1627
- required
1628
- }, /* @__PURE__ */ import_react46.default.createElement(import_select.HiddenSelect, {
1629
- state,
1630
- triggerRef: buttonRef,
1631
- label: props.label,
1632
- name: props.name,
1633
- isDisabled: disabled
1634
- }), /* @__PURE__ */ import_react46.default.createElement(import_system32.Box, {
1635
- as: "button",
1636
- __baseCSS: {
1637
- display: "flex",
1638
- position: "relative",
1639
- alignItems: "center",
1640
- justifyContent: "space-between",
1641
- width: "100%"
1642
- },
1643
- css: styles.button,
1644
- ref: buttonRef,
1645
- ...(0, import_utils10.mergeProps)(buttonProps, focusProps),
1646
- ...stateProps
1647
- }, /* @__PURE__ */ import_react46.default.createElement(import_system32.Box, {
1648
- css: {
1649
- overflow: "hidden",
1650
- whiteSpace: "nowrap"
1651
- },
1652
- ...valueProps
1653
- }, state.selectedItem ? state.selectedItem.rendered : props.placeholder), /* @__PURE__ */ import_react46.default.createElement(Chevron, {
1654
- css: styles.icon
1655
- })), /* @__PURE__ */ import_react46.default.createElement(Popover, {
1656
- open: state.isOpen,
1657
- onClose: state.close,
1658
- dismissable: true,
1659
- shouldCloseOnBlur: true,
1660
- minWidth: buttonRef.current ? buttonRef.current.offsetWidth : void 0,
1661
- ref: overlayRef,
1662
- ...positionProps
1663
- }, /* @__PURE__ */ import_react46.default.createElement(import_focus8.FocusScope, {
1664
- restoreFocus: true
1665
- }, /* @__PURE__ */ import_react46.default.createElement(import_overlays8.DismissButton, {
1666
- onDismiss: state.close
1667
- }), /* @__PURE__ */ import_react46.default.createElement(ListBox, {
1668
- state,
1669
- variant,
1670
- size,
1671
- ...menuProps
1672
- }), /* @__PURE__ */ import_react46.default.createElement(import_overlays8.DismissButton, {
1673
- onDismiss: state.close
1674
- }))));
1675
- });
1751
+ var Select = (0, import_react49.forwardRef)(
1752
+ ({ variant, size, width, open, disabled, required, error, ...rest }, ref) => {
1753
+ const formatMessage = (0, import_i18n2.useMessageFormatter)(messages);
1754
+ const buttonRef = (0, import_utils11.useObjectRef)(ref);
1755
+ const props = {
1756
+ isOpen: open,
1757
+ isDisabled: disabled,
1758
+ isRequired: required,
1759
+ validationState: error ? "invalid" : "valid",
1760
+ placeholder: rest.placeholder || formatMessage("placeholder"),
1761
+ ...rest
1762
+ };
1763
+ const state = (0, import_select2.useSelectState)(props);
1764
+ const {
1765
+ labelProps,
1766
+ triggerProps,
1767
+ valueProps,
1768
+ menuProps,
1769
+ descriptionProps,
1770
+ errorMessageProps
1771
+ } = (0, import_select.useSelect)(props, state, buttonRef);
1772
+ const { buttonProps } = (0, import_button4.useButton)(
1773
+ { isDisabled: disabled, ...triggerProps },
1774
+ buttonRef
1775
+ );
1776
+ const { focusProps, isFocusVisible } = (0, import_focus8.useFocusRing)();
1777
+ const overlayRef = (0, import_react49.useRef)(null);
1778
+ const { overlayProps: positionProps } = (0, import_overlays8.useOverlayPosition)({
1779
+ targetRef: buttonRef,
1780
+ overlayRef,
1781
+ isOpen: state.isOpen,
1782
+ placement: "bottom left"
1783
+ });
1784
+ const styles = (0, import_system34.useComponentStyles)(
1785
+ "Select",
1786
+ { variant, size },
1787
+ { parts: ["container", "button", "icon"] }
1788
+ );
1789
+ const stateProps = (0, import_system34.useStateProps)({
1790
+ disabled,
1791
+ error,
1792
+ focusVisible: isFocusVisible,
1793
+ expanded: state.isOpen
1794
+ });
1795
+ return /* @__PURE__ */ import_react49.default.createElement(FieldBase, {
1796
+ variant,
1797
+ size,
1798
+ width,
1799
+ label: props.label,
1800
+ labelProps: { as: "span", ...labelProps },
1801
+ description: props.description,
1802
+ descriptionProps,
1803
+ error,
1804
+ errorMessage: props.errorMessage,
1805
+ errorMessageProps,
1806
+ stateProps,
1807
+ disabled,
1808
+ required
1809
+ }, /* @__PURE__ */ import_react49.default.createElement(import_select.HiddenSelect, {
1810
+ state,
1811
+ triggerRef: buttonRef,
1812
+ label: props.label,
1813
+ name: props.name,
1814
+ isDisabled: disabled
1815
+ }), /* @__PURE__ */ import_react49.default.createElement(import_system34.Box, {
1816
+ as: "button",
1817
+ __baseCSS: {
1818
+ display: "flex",
1819
+ position: "relative",
1820
+ alignItems: "center",
1821
+ justifyContent: "space-between",
1822
+ width: "100%"
1823
+ },
1824
+ css: styles.button,
1825
+ ref: buttonRef,
1826
+ ...(0, import_utils11.mergeProps)(buttonProps, focusProps),
1827
+ ...stateProps
1828
+ }, /* @__PURE__ */ import_react49.default.createElement(import_system34.Box, {
1829
+ css: {
1830
+ overflow: "hidden",
1831
+ whiteSpace: "nowrap"
1832
+ },
1833
+ ...valueProps
1834
+ }, state.selectedItem ? state.selectedItem.rendered : props.placeholder), /* @__PURE__ */ import_react49.default.createElement(Chevron, {
1835
+ css: styles.icon
1836
+ })), /* @__PURE__ */ import_react49.default.createElement(Popover, {
1837
+ open: state.isOpen,
1838
+ onClose: state.close,
1839
+ dismissable: true,
1840
+ shouldCloseOnBlur: true,
1841
+ minWidth: buttonRef.current ? buttonRef.current.offsetWidth : void 0,
1842
+ ref: overlayRef,
1843
+ ...positionProps
1844
+ }, /* @__PURE__ */ import_react49.default.createElement(import_focus8.FocusScope, {
1845
+ restoreFocus: true
1846
+ }, /* @__PURE__ */ import_react49.default.createElement(import_overlays8.DismissButton, {
1847
+ onDismiss: state.close
1848
+ }), /* @__PURE__ */ import_react49.default.createElement(ListBox, {
1849
+ state,
1850
+ variant,
1851
+ size,
1852
+ ...menuProps
1853
+ }), /* @__PURE__ */ import_react49.default.createElement(import_overlays8.DismissButton, {
1854
+ onDismiss: state.close
1855
+ }))));
1856
+ }
1857
+ );
1676
1858
  Select.Option = import_collections2.Item;
1677
1859
  Select.Section = import_collections2.Section;
1678
1860
 
1679
1861
  // src/Slider/Slider.tsx
1680
- var import_react48 = __toESM(require("react"));
1862
+ var import_react51 = __toESM(require("react"));
1681
1863
  var import_slider2 = require("@react-aria/slider");
1682
1864
  var import_slider3 = require("@react-stately/slider");
1683
1865
  var import_i18n3 = require("@react-aria/i18n");
1684
- var import_utils12 = require("@react-aria/utils");
1685
- var import_system34 = require("@marigold/system");
1866
+ var import_utils13 = require("@react-aria/utils");
1867
+ var import_system36 = require("@marigold/system");
1686
1868
 
1687
1869
  // src/Slider/Thumb.tsx
1688
- var import_react47 = __toESM(require("react"));
1870
+ var import_react50 = __toESM(require("react"));
1689
1871
  var import_slider = require("@react-aria/slider");
1690
- var import_utils11 = require("@react-aria/utils");
1691
- var import_system33 = require("@marigold/system");
1872
+ var import_utils12 = require("@react-aria/utils");
1873
+ var import_system35 = require("@marigold/system");
1692
1874
 
1693
1875
  // src/VisuallyHidden/VisuallyHidden.tsx
1694
1876
  var import_visually_hidden = require("@react-aria/visually-hidden");
@@ -1697,101 +1879,114 @@ var import_visually_hidden = require("@react-aria/visually-hidden");
1697
1879
  var import_focus9 = require("@react-aria/focus");
1698
1880
  var Thumb = ({ state, trackRef, styles, ...props }) => {
1699
1881
  const { disabled } = props;
1700
- const inputRef = import_react47.default.useRef(null);
1882
+ const inputRef = import_react50.default.useRef(null);
1701
1883
  const { isFocusVisible, focusProps, isFocused } = (0, import_focus9.useFocusRing)();
1702
1884
  const focused = isFocused || isFocusVisible || state.isThumbDragging(0);
1703
- const stateProps = (0, import_system33.useStateProps)({
1885
+ const stateProps = (0, import_system35.useStateProps)({
1704
1886
  focus: focused,
1705
1887
  disabled
1706
1888
  });
1707
- const { thumbProps, inputProps } = (0, import_slider.useSliderThumb)({
1708
- index: 0,
1709
- trackRef,
1710
- inputRef,
1711
- isDisabled: disabled
1712
- }, state);
1713
- (0, import_react47.useEffect)(() => {
1889
+ const { thumbProps, inputProps } = (0, import_slider.useSliderThumb)(
1890
+ {
1891
+ index: 0,
1892
+ trackRef,
1893
+ inputRef,
1894
+ isDisabled: disabled
1895
+ },
1896
+ state
1897
+ );
1898
+ (0, import_react50.useEffect)(() => {
1714
1899
  state.setThumbEditable(0, !disabled);
1715
1900
  }, [disabled, state]);
1716
- return /* @__PURE__ */ import_react47.default.createElement(import_system.Box, {
1901
+ return /* @__PURE__ */ import_react50.default.createElement(import_system.Box, {
1717
1902
  __baseCSS: {
1718
1903
  position: "absolute",
1719
1904
  top: 16,
1720
1905
  transform: "translateX(-50%)",
1721
1906
  left: `${state.getThumbPercent(0) * 100}%`
1722
1907
  }
1723
- }, /* @__PURE__ */ import_react47.default.createElement(import_system.Box, {
1908
+ }, /* @__PURE__ */ import_react50.default.createElement(import_system.Box, {
1724
1909
  ...thumbProps,
1725
1910
  __baseCSS: styles,
1726
1911
  ...stateProps
1727
- }, /* @__PURE__ */ import_react47.default.createElement(import_visually_hidden.VisuallyHidden, null, /* @__PURE__ */ import_react47.default.createElement(import_system.Box, {
1912
+ }, /* @__PURE__ */ import_react50.default.createElement(import_visually_hidden.VisuallyHidden, null, /* @__PURE__ */ import_react50.default.createElement(import_system.Box, {
1728
1913
  as: "input",
1729
1914
  type: "range",
1730
1915
  ref: inputRef,
1731
- ...(0, import_utils11.mergeProps)(inputProps, focusProps)
1916
+ ...(0, import_utils12.mergeProps)(inputProps, focusProps)
1732
1917
  }))));
1733
1918
  };
1734
1919
 
1735
1920
  // src/Slider/Slider.tsx
1736
- var Slider = (0, import_react48.forwardRef)(({ variant, size, width = "100%", ...props }, ref) => {
1737
- const { formatOptions } = props;
1738
- const trackRef = (0, import_utils12.useObjectRef)(ref);
1739
- const numberFormatter = (0, import_i18n3.useNumberFormatter)(formatOptions);
1740
- const state = (0, import_slider3.useSliderState)({ ...props, numberFormatter });
1741
- const { groupProps, trackProps, labelProps, outputProps } = (0, import_slider2.useSlider)({
1742
- label: props.children,
1743
- ...props
1744
- }, state, trackRef);
1745
- const styles = (0, import_system34.useComponentStyles)("Slider", { variant, size }, { parts: ["track", "thumb", "label", "output"] });
1746
- return /* @__PURE__ */ import_react48.default.createElement(import_system.Box, {
1747
- __baseCSS: {
1748
- display: "flex",
1749
- flexDirection: "column",
1750
- touchAction: "none",
1751
- width
1752
- },
1753
- ...groupProps
1754
- }, /* @__PURE__ */ import_react48.default.createElement(import_system.Box, {
1755
- __baseCSS: { display: "flex", alignSelf: "stretch" }
1756
- }, props.children && /* @__PURE__ */ import_react48.default.createElement(import_system.Box, {
1757
- as: "label",
1758
- __baseCSS: styles.label,
1759
- ...labelProps
1760
- }, props.children), /* @__PURE__ */ import_react48.default.createElement(import_system.Box, {
1761
- as: "output",
1762
- ...outputProps,
1763
- __baseCSS: { flex: "1 0 auto", textAlign: "end" },
1764
- css: styles.output
1765
- }, state.getThumbValueLabel(0))), /* @__PURE__ */ import_react48.default.createElement(import_system.Box, {
1766
- ...trackProps,
1767
- ref: trackRef,
1768
- __baseCSS: {
1769
- position: "relative",
1770
- height: 32,
1771
- width: "100%",
1772
- cursor: props.disabled ? "not-allowed" : "pointer"
1773
- }
1774
- }, /* @__PURE__ */ import_react48.default.createElement(import_system.Box, {
1775
- __baseCSS: styles.track
1776
- }), /* @__PURE__ */ import_react48.default.createElement(Thumb, {
1777
- state,
1778
- trackRef,
1779
- disabled: props.disabled,
1780
- styles: styles.thumb
1781
- })));
1782
- });
1921
+ var Slider = (0, import_react51.forwardRef)(
1922
+ ({ variant, size, width = "100%", ...props }, ref) => {
1923
+ const { formatOptions } = props;
1924
+ const trackRef = (0, import_utils13.useObjectRef)(ref);
1925
+ const numberFormatter = (0, import_i18n3.useNumberFormatter)(formatOptions);
1926
+ const state = (0, import_slider3.useSliderState)({ ...props, numberFormatter });
1927
+ const { groupProps, trackProps, labelProps, outputProps } = (0, import_slider2.useSlider)(
1928
+ {
1929
+ label: props.children,
1930
+ ...props
1931
+ },
1932
+ state,
1933
+ trackRef
1934
+ );
1935
+ const styles = (0, import_system36.useComponentStyles)(
1936
+ "Slider",
1937
+ { variant, size },
1938
+ { parts: ["track", "thumb", "label", "output"] }
1939
+ );
1940
+ return /* @__PURE__ */ import_react51.default.createElement(import_system.Box, {
1941
+ __baseCSS: {
1942
+ display: "flex",
1943
+ flexDirection: "column",
1944
+ touchAction: "none",
1945
+ width
1946
+ },
1947
+ ...groupProps
1948
+ }, /* @__PURE__ */ import_react51.default.createElement(import_system.Box, {
1949
+ __baseCSS: { display: "flex", alignSelf: "stretch" }
1950
+ }, props.children && /* @__PURE__ */ import_react51.default.createElement(import_system.Box, {
1951
+ as: "label",
1952
+ __baseCSS: styles.label,
1953
+ ...labelProps
1954
+ }, props.children), /* @__PURE__ */ import_react51.default.createElement(import_system.Box, {
1955
+ as: "output",
1956
+ ...outputProps,
1957
+ __baseCSS: { flex: "1 0 auto", textAlign: "end" },
1958
+ css: styles.output
1959
+ }, state.getThumbValueLabel(0))), /* @__PURE__ */ import_react51.default.createElement(import_system.Box, {
1960
+ ...trackProps,
1961
+ ref: trackRef,
1962
+ __baseCSS: {
1963
+ position: "relative",
1964
+ height: 32,
1965
+ width: "100%",
1966
+ cursor: props.disabled ? "not-allowed" : "pointer"
1967
+ }
1968
+ }, /* @__PURE__ */ import_react51.default.createElement(import_system.Box, {
1969
+ __baseCSS: styles.track
1970
+ }), /* @__PURE__ */ import_react51.default.createElement(Thumb, {
1971
+ state,
1972
+ trackRef,
1973
+ disabled: props.disabled,
1974
+ styles: styles.thumb
1975
+ })));
1976
+ }
1977
+ );
1783
1978
 
1784
1979
  // src/Split/Split.tsx
1785
- var import_react49 = __toESM(require("react"));
1786
- var import_system35 = require("@marigold/system");
1787
- var Split = (props) => /* @__PURE__ */ import_react49.default.createElement(import_system35.Box, {
1980
+ var import_react52 = __toESM(require("react"));
1981
+ var import_system37 = require("@marigold/system");
1982
+ var Split = (props) => /* @__PURE__ */ import_react52.default.createElement(import_system37.Box, {
1788
1983
  ...props,
1789
1984
  role: "separator",
1790
1985
  css: { flexGrow: 1 }
1791
1986
  });
1792
1987
 
1793
1988
  // src/Stack/Stack.tsx
1794
- var import_react50 = __toESM(require("react"));
1989
+ var import_react53 = __toESM(require("react"));
1795
1990
  var ALIGNMENT_X2 = {
1796
1991
  left: "flex-start",
1797
1992
  center: "center",
@@ -1809,7 +2004,7 @@ var Stack = ({
1809
2004
  alignY = "top",
1810
2005
  stretch = false,
1811
2006
  ...props
1812
- }) => /* @__PURE__ */ import_react50.default.createElement(import_system.Box, {
2007
+ }) => /* @__PURE__ */ import_react53.default.createElement(import_system.Box, {
1813
2008
  css: {
1814
2009
  display: "flex",
1815
2010
  flexDirection: "column",
@@ -1823,151 +2018,161 @@ var Stack = ({
1823
2018
  }, children);
1824
2019
 
1825
2020
  // src/Switch/Switch.tsx
1826
- var import_react51 = __toESM(require("react"));
2021
+ var import_react54 = __toESM(require("react"));
1827
2022
  var import_focus10 = require("@react-aria/focus");
1828
2023
  var import_switch = require("@react-aria/switch");
1829
- var import_utils13 = require("@react-aria/utils");
2024
+ var import_utils14 = require("@react-aria/utils");
1830
2025
  var import_toggle2 = require("@react-stately/toggle");
1831
- var import_system36 = require("@marigold/system");
1832
- var Switch = (0, import_react51.forwardRef)(({
1833
- variant,
1834
- size,
1835
- width = "100%",
1836
- checked,
1837
- disabled,
1838
- readOnly,
1839
- defaultChecked,
1840
- ...rest
1841
- }, ref) => {
1842
- const inputRef = (0, import_utils13.useObjectRef)(ref);
1843
- const props = {
1844
- isSelected: checked,
1845
- isDisabled: disabled,
1846
- isReadOnly: readOnly,
1847
- defaultSelected: defaultChecked,
1848
- ...rest
1849
- };
1850
- const state = (0, import_toggle2.useToggleState)(props);
1851
- const { inputProps } = (0, import_switch.useSwitch)(props, state, inputRef);
1852
- const { isFocusVisible, focusProps } = (0, import_focus10.useFocusRing)();
1853
- const stateProps = (0, import_system36.useStateProps)({
1854
- checked: state.isSelected,
2026
+ var import_system38 = require("@marigold/system");
2027
+ var Switch = (0, import_react54.forwardRef)(
2028
+ ({
2029
+ variant,
2030
+ size,
2031
+ width = "100%",
2032
+ checked,
1855
2033
  disabled,
1856
2034
  readOnly,
1857
- focus: isFocusVisible
1858
- });
1859
- const styles = (0, import_system36.useComponentStyles)("Switch", { variant, size }, { parts: ["container", "label", "track", "thumb"] });
1860
- return /* @__PURE__ */ import_react51.default.createElement(import_system.Box, {
1861
- as: "label",
1862
- __baseCSS: {
1863
- display: "flex",
1864
- alignItems: "center",
1865
- justifyContent: "space-between",
1866
- gap: "1ch",
1867
- position: "relative",
1868
- width
1869
- },
1870
- css: styles.container
1871
- }, /* @__PURE__ */ import_react51.default.createElement(import_system.Box, {
1872
- as: "input",
1873
- ref: inputRef,
1874
- css: {
1875
- position: "absolute",
1876
- width: "100%",
1877
- height: "100%",
1878
- top: 0,
1879
- left: 0,
1880
- zIndex: 1,
1881
- opacity: 1e-4,
1882
- cursor: inputProps.disabled ? "not-allowed" : "pointer"
1883
- },
1884
- ...inputProps,
1885
- ...focusProps
1886
- }), props.children && /* @__PURE__ */ import_react51.default.createElement(import_system.Box, {
1887
- css: styles.label
1888
- }, props.children), /* @__PURE__ */ import_react51.default.createElement(import_system.Box, {
1889
- __baseCSS: {
1890
- position: "relative",
1891
- width: 48,
1892
- height: 24,
1893
- bg: "#dee2e6",
1894
- borderRadius: 20
1895
- },
1896
- css: styles.track,
1897
- ...stateProps
1898
- }, /* @__PURE__ */ import_react51.default.createElement(import_system.Box, {
1899
- __baseCSS: {
1900
- display: "block",
1901
- position: "absolute",
1902
- top: 1,
1903
- left: 0,
1904
- willChange: "transform",
1905
- transform: "translateX(1px)",
1906
- transition: "all 0.1s cubic-bezier(.7, 0, .3, 1)",
1907
- height: 22,
1908
- width: 22,
1909
- borderRadius: 9999,
1910
- bg: "#fff",
1911
- "&:checked": {
1912
- transform: "translateX(calc(47px - 100%))"
1913
- }
1914
- },
1915
- css: styles.thumb,
1916
- ...stateProps
1917
- })));
1918
- });
2035
+ defaultChecked,
2036
+ ...rest
2037
+ }, ref) => {
2038
+ const inputRef = (0, import_utils14.useObjectRef)(ref);
2039
+ const props = {
2040
+ isSelected: checked,
2041
+ isDisabled: disabled,
2042
+ isReadOnly: readOnly,
2043
+ defaultSelected: defaultChecked,
2044
+ ...rest
2045
+ };
2046
+ const state = (0, import_toggle2.useToggleState)(props);
2047
+ const { inputProps } = (0, import_switch.useSwitch)(props, state, inputRef);
2048
+ const { isFocusVisible, focusProps } = (0, import_focus10.useFocusRing)();
2049
+ const stateProps = (0, import_system38.useStateProps)({
2050
+ checked: state.isSelected,
2051
+ disabled,
2052
+ readOnly,
2053
+ focus: isFocusVisible
2054
+ });
2055
+ const styles = (0, import_system38.useComponentStyles)(
2056
+ "Switch",
2057
+ { variant, size },
2058
+ { parts: ["container", "label", "track", "thumb"] }
2059
+ );
2060
+ return /* @__PURE__ */ import_react54.default.createElement(import_system.Box, {
2061
+ as: "label",
2062
+ __baseCSS: {
2063
+ display: "flex",
2064
+ alignItems: "center",
2065
+ justifyContent: "space-between",
2066
+ gap: "1ch",
2067
+ position: "relative",
2068
+ width
2069
+ },
2070
+ css: styles.container
2071
+ }, /* @__PURE__ */ import_react54.default.createElement(import_system.Box, {
2072
+ as: "input",
2073
+ ref: inputRef,
2074
+ css: {
2075
+ position: "absolute",
2076
+ width: "100%",
2077
+ height: "100%",
2078
+ top: 0,
2079
+ left: 0,
2080
+ zIndex: 1,
2081
+ opacity: 1e-4,
2082
+ cursor: inputProps.disabled ? "not-allowed" : "pointer"
2083
+ },
2084
+ ...inputProps,
2085
+ ...focusProps
2086
+ }), props.children && /* @__PURE__ */ import_react54.default.createElement(import_system.Box, {
2087
+ css: styles.label
2088
+ }, props.children), /* @__PURE__ */ import_react54.default.createElement(import_system.Box, {
2089
+ __baseCSS: {
2090
+ position: "relative",
2091
+ width: 48,
2092
+ height: 24,
2093
+ bg: "#dee2e6",
2094
+ borderRadius: 20
2095
+ },
2096
+ css: styles.track,
2097
+ ...stateProps
2098
+ }, /* @__PURE__ */ import_react54.default.createElement(import_system.Box, {
2099
+ __baseCSS: {
2100
+ display: "block",
2101
+ position: "absolute",
2102
+ top: 1,
2103
+ left: 0,
2104
+ willChange: "transform",
2105
+ transform: "translateX(1px)",
2106
+ transition: "all 0.1s cubic-bezier(.7, 0, .3, 1)",
2107
+ height: 22,
2108
+ width: 22,
2109
+ borderRadius: 9999,
2110
+ bg: "#fff",
2111
+ "&:checked": {
2112
+ transform: "translateX(calc(47px - 100%))"
2113
+ }
2114
+ },
2115
+ css: styles.thumb,
2116
+ ...stateProps
2117
+ })));
2118
+ }
2119
+ );
1919
2120
 
1920
2121
  // src/Table/Table.tsx
1921
- var import_react61 = __toESM(require("react"));
2122
+ var import_react64 = __toESM(require("react"));
1922
2123
  var import_table9 = require("@react-aria/table");
1923
2124
  var import_table10 = require("@react-stately/table");
1924
- var import_system42 = require("@marigold/system");
2125
+ var import_system44 = require("@marigold/system");
1925
2126
 
1926
2127
  // src/Table/Context.tsx
1927
- var import_react52 = require("react");
1928
- var TableContext = (0, import_react52.createContext)({});
1929
- var useTableContext = () => (0, import_react52.useContext)(TableContext);
2128
+ var import_react55 = require("react");
2129
+ var TableContext = (0, import_react55.createContext)({});
2130
+ var useTableContext = () => (0, import_react55.useContext)(TableContext);
1930
2131
 
1931
2132
  // src/Table/TableBody.tsx
1932
- var import_react53 = __toESM(require("react"));
2133
+ var import_react56 = __toESM(require("react"));
1933
2134
  var import_table = require("@react-aria/table");
1934
2135
  var TableBody = ({ children }) => {
1935
2136
  const { rowGroupProps } = (0, import_table.useTableRowGroup)();
1936
- return /* @__PURE__ */ import_react53.default.createElement("tbody", {
2137
+ return /* @__PURE__ */ import_react56.default.createElement("tbody", {
1937
2138
  ...rowGroupProps
1938
2139
  }, children);
1939
2140
  };
1940
2141
 
1941
2142
  // src/Table/TableCell.tsx
1942
- var import_react54 = __toESM(require("react"));
2143
+ var import_react57 = __toESM(require("react"));
1943
2144
  var import_table2 = require("@react-aria/table");
1944
2145
  var import_focus11 = require("@react-aria/focus");
1945
- var import_utils14 = require("@react-aria/utils");
1946
- var import_system37 = require("@marigold/system");
2146
+ var import_utils15 = require("@react-aria/utils");
2147
+ var import_system39 = require("@marigold/system");
1947
2148
  var TableCell = ({ cell }) => {
1948
- const ref = (0, import_react54.useRef)(null);
2149
+ const ref = (0, import_react57.useRef)(null);
1949
2150
  const { state, styles } = useTableContext();
1950
2151
  const disabled = state.disabledKeys.has(cell.parentKey);
1951
- const { gridCellProps } = (0, import_table2.useTableCell)({
1952
- node: cell
1953
- }, state, ref);
2152
+ const { gridCellProps } = (0, import_table2.useTableCell)(
2153
+ {
2154
+ node: cell
2155
+ },
2156
+ state,
2157
+ ref
2158
+ );
1954
2159
  const { focusProps, isFocusVisible } = (0, import_focus11.useFocusRing)();
1955
- const stateProps = (0, import_system37.useStateProps)({ disabled, focusVisible: isFocusVisible });
1956
- return /* @__PURE__ */ import_react54.default.createElement(import_system37.Box, {
2160
+ const stateProps = (0, import_system39.useStateProps)({ disabled, focusVisible: isFocusVisible });
2161
+ return /* @__PURE__ */ import_react57.default.createElement(import_system39.Box, {
1957
2162
  as: "td",
1958
2163
  ref,
1959
2164
  css: styles.cell,
1960
- ...(0, import_utils14.mergeProps)(gridCellProps, focusProps),
2165
+ ...(0, import_utils15.mergeProps)(gridCellProps, focusProps),
1961
2166
  ...stateProps
1962
2167
  }, cell.rendered);
1963
2168
  };
1964
2169
 
1965
2170
  // src/Table/TableCheckboxCell.tsx
1966
- var import_react55 = __toESM(require("react"));
2171
+ var import_react58 = __toESM(require("react"));
1967
2172
  var import_table3 = require("@react-aria/table");
1968
2173
  var import_focus12 = require("@react-aria/focus");
1969
- var import_utils15 = require("@react-aria/utils");
1970
- var import_system38 = require("@marigold/system");
2174
+ var import_utils16 = require("@react-aria/utils");
2175
+ var import_system40 = require("@marigold/system");
1971
2176
 
1972
2177
  // src/Table/utils.ts
1973
2178
  var mapCheckboxProps = ({
@@ -1991,16 +2196,22 @@ var mapCheckboxProps = ({
1991
2196
 
1992
2197
  // src/Table/TableCheckboxCell.tsx
1993
2198
  var TableCheckboxCell = ({ cell }) => {
1994
- const ref = (0, import_react55.useRef)(null);
2199
+ const ref = (0, import_react58.useRef)(null);
1995
2200
  const { state, styles } = useTableContext();
1996
2201
  const disabled = state.disabledKeys.has(cell.parentKey);
1997
- const { gridCellProps } = (0, import_table3.useTableCell)({
1998
- node: cell
1999
- }, state, ref);
2000
- const { checkboxProps } = mapCheckboxProps((0, import_table3.useTableSelectionCheckbox)({ key: cell.parentKey }, state));
2202
+ const { gridCellProps } = (0, import_table3.useTableCell)(
2203
+ {
2204
+ node: cell
2205
+ },
2206
+ state,
2207
+ ref
2208
+ );
2209
+ const { checkboxProps } = mapCheckboxProps(
2210
+ (0, import_table3.useTableSelectionCheckbox)({ key: cell.parentKey }, state)
2211
+ );
2001
2212
  const { focusProps, isFocusVisible } = (0, import_focus12.useFocusRing)();
2002
- const stateProps = (0, import_system38.useStateProps)({ disabled, focusVisible: isFocusVisible });
2003
- return /* @__PURE__ */ import_react55.default.createElement(import_system38.Box, {
2213
+ const stateProps = (0, import_system40.useStateProps)({ disabled, focusVisible: isFocusVisible });
2214
+ return /* @__PURE__ */ import_react58.default.createElement(import_system40.Box, {
2004
2215
  as: "td",
2005
2216
  ref,
2006
2217
  __baseCSS: {
@@ -2009,24 +2220,24 @@ var TableCheckboxCell = ({ cell }) => {
2009
2220
  lineHeight: 1
2010
2221
  },
2011
2222
  css: styles.cell,
2012
- ...(0, import_utils15.mergeProps)(gridCellProps, focusProps),
2223
+ ...(0, import_utils16.mergeProps)(gridCellProps, focusProps),
2013
2224
  ...stateProps
2014
- }, /* @__PURE__ */ import_react55.default.createElement(Checkbox, {
2225
+ }, /* @__PURE__ */ import_react58.default.createElement(Checkbox, {
2015
2226
  ...checkboxProps
2016
2227
  }));
2017
2228
  };
2018
2229
 
2019
2230
  // src/Table/TableColumnHeader.tsx
2020
- var import_react56 = __toESM(require("react"));
2231
+ var import_react59 = __toESM(require("react"));
2021
2232
  var import_focus13 = require("@react-aria/focus");
2022
2233
  var import_interactions7 = require("@react-aria/interactions");
2023
2234
  var import_table4 = require("@react-aria/table");
2024
- var import_utils17 = require("@react-aria/utils");
2025
- var import_system39 = require("@marigold/system");
2235
+ var import_utils18 = require("@react-aria/utils");
2236
+ var import_system41 = require("@marigold/system");
2026
2237
  var SortIndicator = ({
2027
2238
  direction = "ascending",
2028
2239
  visible
2029
- }) => /* @__PURE__ */ import_react56.default.createElement(import_system39.Box, {
2240
+ }) => /* @__PURE__ */ import_react59.default.createElement(import_system41.Box, {
2030
2241
  as: "span",
2031
2242
  role: "presentation",
2032
2243
  "aria-hidden": "true",
@@ -2038,107 +2249,119 @@ var SortIndicator = ({
2038
2249
  }, direction === "ascending" ? "\u25B2" : "\u25BC");
2039
2250
  var TableColumnHeader = ({ column }) => {
2040
2251
  var _a, _b;
2041
- const ref = (0, import_react56.useRef)(null);
2252
+ const ref = (0, import_react59.useRef)(null);
2042
2253
  const { state, styles } = useTableContext();
2043
- const { columnHeaderProps } = (0, import_table4.useTableColumnHeader)({
2044
- node: column
2045
- }, state, ref);
2254
+ const { columnHeaderProps } = (0, import_table4.useTableColumnHeader)(
2255
+ {
2256
+ node: column
2257
+ },
2258
+ state,
2259
+ ref
2260
+ );
2046
2261
  const { hoverProps, isHovered } = (0, import_interactions7.useHover)({});
2047
2262
  const { focusProps, isFocusVisible } = (0, import_focus13.useFocusRing)();
2048
- const stateProps = (0, import_system39.useStateProps)({
2263
+ const stateProps = (0, import_system41.useStateProps)({
2049
2264
  hover: isHovered,
2050
2265
  focusVisible: isFocusVisible
2051
2266
  });
2052
- return /* @__PURE__ */ import_react56.default.createElement(import_system39.Box, {
2267
+ return /* @__PURE__ */ import_react59.default.createElement(import_system41.Box, {
2053
2268
  as: "th",
2054
2269
  colSpan: column.colspan,
2055
2270
  ref,
2056
2271
  css: styles.header,
2057
- ...(0, import_utils17.mergeProps)(columnHeaderProps, hoverProps, focusProps),
2272
+ ...(0, import_utils18.mergeProps)(columnHeaderProps, hoverProps, focusProps),
2058
2273
  ...stateProps
2059
- }, column.rendered, column.props.allowsSorting && /* @__PURE__ */ import_react56.default.createElement(SortIndicator, {
2274
+ }, column.rendered, column.props.allowsSorting && /* @__PURE__ */ import_react59.default.createElement(SortIndicator, {
2060
2275
  direction: (_a = state.sortDescriptor) == null ? void 0 : _a.direction,
2061
2276
  visible: ((_b = state.sortDescriptor) == null ? void 0 : _b.column) === column.key
2062
2277
  }));
2063
2278
  };
2064
2279
 
2065
2280
  // src/Table/TableHeader.tsx
2066
- var import_react57 = __toESM(require("react"));
2281
+ var import_react60 = __toESM(require("react"));
2067
2282
  var import_table5 = require("@react-aria/table");
2068
2283
  var TableHeader = ({ children }) => {
2069
2284
  const { rowGroupProps } = (0, import_table5.useTableRowGroup)();
2070
- return /* @__PURE__ */ import_react57.default.createElement("thead", {
2285
+ return /* @__PURE__ */ import_react60.default.createElement("thead", {
2071
2286
  ...rowGroupProps
2072
2287
  }, children);
2073
2288
  };
2074
2289
 
2075
2290
  // src/Table/TableHeaderRow.tsx
2076
- var import_react58 = __toESM(require("react"));
2291
+ var import_react61 = __toESM(require("react"));
2077
2292
  var import_table6 = require("@react-aria/table");
2078
2293
  var TableHeaderRow = ({ item, children }) => {
2079
2294
  const { state } = useTableContext();
2080
- const ref = (0, import_react58.useRef)(null);
2295
+ const ref = (0, import_react61.useRef)(null);
2081
2296
  const { rowProps } = (0, import_table6.useTableHeaderRow)({ node: item }, state, ref);
2082
- return /* @__PURE__ */ import_react58.default.createElement("tr", {
2297
+ return /* @__PURE__ */ import_react61.default.createElement("tr", {
2083
2298
  ...rowProps,
2084
2299
  ref
2085
2300
  }, children);
2086
2301
  };
2087
2302
 
2088
2303
  // src/Table/TableRow.tsx
2089
- var import_react59 = __toESM(require("react"));
2304
+ var import_react62 = __toESM(require("react"));
2090
2305
  var import_focus14 = require("@react-aria/focus");
2091
2306
  var import_interactions8 = require("@react-aria/interactions");
2092
2307
  var import_table7 = require("@react-aria/table");
2093
- var import_utils18 = require("@react-aria/utils");
2094
- var import_system40 = require("@marigold/system");
2308
+ var import_utils19 = require("@react-aria/utils");
2309
+ var import_system42 = require("@marigold/system");
2095
2310
  var TableRow = ({ children, row }) => {
2096
- const ref = (0, import_react59.useRef)(null);
2311
+ const ref = (0, import_react62.useRef)(null);
2097
2312
  const { state, styles } = useTableContext();
2098
- const { rowProps, isPressed } = (0, import_table7.useTableRow)({
2099
- node: row
2100
- }, state, ref);
2313
+ const { rowProps, isPressed } = (0, import_table7.useTableRow)(
2314
+ {
2315
+ node: row
2316
+ },
2317
+ state,
2318
+ ref
2319
+ );
2101
2320
  const disabled = state.disabledKeys.has(row.key);
2102
2321
  const selected = state.selectionManager.isSelected(row.key);
2103
2322
  const { focusProps, isFocusVisible } = (0, import_focus14.useFocusRing)({ within: true });
2104
2323
  const { hoverProps, isHovered } = (0, import_interactions8.useHover)({ isDisabled: disabled });
2105
- const stateProps = (0, import_system40.useStateProps)({
2324
+ const stateProps = (0, import_system42.useStateProps)({
2106
2325
  disabled,
2107
2326
  selected,
2108
2327
  hover: isHovered,
2109
2328
  focusVisible: isFocusVisible,
2110
2329
  active: isPressed
2111
2330
  });
2112
- return /* @__PURE__ */ import_react59.default.createElement(import_system40.Box, {
2331
+ return /* @__PURE__ */ import_react62.default.createElement(import_system42.Box, {
2113
2332
  as: "tr",
2114
2333
  ref,
2115
2334
  css: styles.row,
2116
- ...(0, import_utils18.mergeProps)(rowProps, focusProps, hoverProps),
2335
+ ...(0, import_utils19.mergeProps)(rowProps, focusProps, hoverProps),
2117
2336
  ...stateProps
2118
2337
  }, children);
2119
2338
  };
2120
2339
 
2121
2340
  // src/Table/TableSelectAllCell.tsx
2122
- var import_react60 = __toESM(require("react"));
2341
+ var import_react63 = __toESM(require("react"));
2123
2342
  var import_focus15 = require("@react-aria/focus");
2124
2343
  var import_interactions9 = require("@react-aria/interactions");
2125
2344
  var import_table8 = require("@react-aria/table");
2126
- var import_utils19 = require("@react-aria/utils");
2127
- var import_system41 = require("@marigold/system");
2345
+ var import_utils20 = require("@react-aria/utils");
2346
+ var import_system43 = require("@marigold/system");
2128
2347
  var TableSelectAllCell = ({ column }) => {
2129
- const ref = (0, import_react60.useRef)(null);
2348
+ const ref = (0, import_react63.useRef)(null);
2130
2349
  const { state, styles } = useTableContext();
2131
- const { columnHeaderProps } = (0, import_table8.useTableColumnHeader)({
2132
- node: column
2133
- }, state, ref);
2350
+ const { columnHeaderProps } = (0, import_table8.useTableColumnHeader)(
2351
+ {
2352
+ node: column
2353
+ },
2354
+ state,
2355
+ ref
2356
+ );
2134
2357
  const { checkboxProps } = mapCheckboxProps((0, import_table8.useTableSelectAllCheckbox)(state));
2135
2358
  const { hoverProps, isHovered } = (0, import_interactions9.useHover)({});
2136
2359
  const { focusProps, isFocusVisible } = (0, import_focus15.useFocusRing)();
2137
- const stateProps = (0, import_system41.useStateProps)({
2360
+ const stateProps = (0, import_system43.useStateProps)({
2138
2361
  hover: isHovered,
2139
2362
  focusVisible: isFocusVisible
2140
2363
  });
2141
- return /* @__PURE__ */ import_react60.default.createElement(import_system41.Box, {
2364
+ return /* @__PURE__ */ import_react63.default.createElement(import_system43.Box, {
2142
2365
  as: "th",
2143
2366
  ref,
2144
2367
  __baseCSS: {
@@ -2147,9 +2370,9 @@ var TableSelectAllCell = ({ column }) => {
2147
2370
  lineHeight: 1
2148
2371
  },
2149
2372
  css: styles.header,
2150
- ...(0, import_utils19.mergeProps)(columnHeaderProps, hoverProps, focusProps),
2373
+ ...(0, import_utils20.mergeProps)(columnHeaderProps, hoverProps, focusProps),
2151
2374
  ...stateProps
2152
- }, /* @__PURE__ */ import_react60.default.createElement(Checkbox, {
2375
+ }, /* @__PURE__ */ import_react63.default.createElement(Checkbox, {
2153
2376
  ...checkboxProps
2154
2377
  }));
2155
2378
  };
@@ -2161,17 +2384,21 @@ var Table = ({
2161
2384
  stretch,
2162
2385
  ...props
2163
2386
  }) => {
2164
- const tableRef = (0, import_react61.useRef)(null);
2387
+ const tableRef = (0, import_react64.useRef)(null);
2165
2388
  const state = (0, import_table10.useTableState)({
2166
2389
  ...props,
2167
2390
  showSelectionCheckboxes: props.selectionMode === "multiple" && props.selectionBehavior !== "replace"
2168
2391
  });
2169
2392
  const { gridProps } = (0, import_table9.useTable)(props, state, tableRef);
2170
- const styles = (0, import_system42.useComponentStyles)("Table", { variant, size }, { parts: ["table", "header", "row", "cell"] });
2393
+ const styles = (0, import_system44.useComponentStyles)(
2394
+ "Table",
2395
+ { variant, size },
2396
+ { parts: ["table", "header", "row", "cell"] }
2397
+ );
2171
2398
  const { collection } = state;
2172
- return /* @__PURE__ */ import_react61.default.createElement(TableContext.Provider, {
2399
+ return /* @__PURE__ */ import_react64.default.createElement(TableContext.Provider, {
2173
2400
  value: { state, styles }
2174
- }, /* @__PURE__ */ import_react61.default.createElement(import_system42.Box, {
2401
+ }, /* @__PURE__ */ import_react64.default.createElement(import_system44.Box, {
2175
2402
  as: "table",
2176
2403
  ref: tableRef,
2177
2404
  __baseCSS: {
@@ -2180,31 +2407,35 @@ var Table = ({
2180
2407
  },
2181
2408
  css: styles.table,
2182
2409
  ...gridProps
2183
- }, /* @__PURE__ */ import_react61.default.createElement(TableHeader, null, collection.headerRows.map((headerRow) => /* @__PURE__ */ import_react61.default.createElement(TableHeaderRow, {
2410
+ }, /* @__PURE__ */ import_react64.default.createElement(TableHeader, null, collection.headerRows.map((headerRow) => /* @__PURE__ */ import_react64.default.createElement(TableHeaderRow, {
2184
2411
  key: headerRow.key,
2185
2412
  item: headerRow
2186
- }, [...headerRow.childNodes].map((column) => {
2187
- var _a;
2188
- return ((_a = column.props) == null ? void 0 : _a.isSelectionCell) ? /* @__PURE__ */ import_react61.default.createElement(TableSelectAllCell, {
2189
- key: column.key,
2190
- column
2191
- }) : /* @__PURE__ */ import_react61.default.createElement(TableColumnHeader, {
2192
- key: column.key,
2193
- column
2194
- });
2195
- })))), /* @__PURE__ */ import_react61.default.createElement(TableBody, null, [...collection.body.childNodes].map((row) => /* @__PURE__ */ import_react61.default.createElement(TableRow, {
2413
+ }, [...headerRow.childNodes].map(
2414
+ (column) => {
2415
+ var _a;
2416
+ return ((_a = column.props) == null ? void 0 : _a.isSelectionCell) ? /* @__PURE__ */ import_react64.default.createElement(TableSelectAllCell, {
2417
+ key: column.key,
2418
+ column
2419
+ }) : /* @__PURE__ */ import_react64.default.createElement(TableColumnHeader, {
2420
+ key: column.key,
2421
+ column
2422
+ });
2423
+ }
2424
+ )))), /* @__PURE__ */ import_react64.default.createElement(TableBody, null, [...collection.body.childNodes].map((row) => /* @__PURE__ */ import_react64.default.createElement(TableRow, {
2196
2425
  key: row.key,
2197
2426
  row
2198
- }, [...row.childNodes].map((cell) => {
2199
- var _a;
2200
- return ((_a = cell.props) == null ? void 0 : _a.isSelectionCell) ? /* @__PURE__ */ import_react61.default.createElement(TableCheckboxCell, {
2201
- key: cell.key,
2202
- cell
2203
- }) : /* @__PURE__ */ import_react61.default.createElement(TableCell, {
2204
- key: cell.key,
2205
- cell
2206
- });
2207
- }))))));
2427
+ }, [...row.childNodes].map(
2428
+ (cell) => {
2429
+ var _a;
2430
+ return ((_a = cell.props) == null ? void 0 : _a.isSelectionCell) ? /* @__PURE__ */ import_react64.default.createElement(TableCheckboxCell, {
2431
+ key: cell.key,
2432
+ cell
2433
+ }) : /* @__PURE__ */ import_react64.default.createElement(TableCell, {
2434
+ key: cell.key,
2435
+ cell
2436
+ });
2437
+ }
2438
+ ))))));
2208
2439
  };
2209
2440
  Table.Body = import_table10.TableBody;
2210
2441
  Table.Cell = import_table10.Cell;
@@ -2213,9 +2444,9 @@ Table.Header = import_table10.TableHeader;
2213
2444
  Table.Row = import_table10.Row;
2214
2445
 
2215
2446
  // src/Text/Text.tsx
2216
- var import_react62 = __toESM(require("react"));
2217
- var import_system43 = require("@marigold/system");
2218
- var import_system44 = require("@marigold/system");
2447
+ var import_react65 = __toESM(require("react"));
2448
+ var import_system45 = require("@marigold/system");
2449
+ var import_system46 = require("@marigold/system");
2219
2450
  var Text = ({
2220
2451
  variant,
2221
2452
  size,
@@ -2227,11 +2458,11 @@ var Text = ({
2227
2458
  children,
2228
2459
  ...props
2229
2460
  }) => {
2230
- const styles = (0, import_system43.useComponentStyles)("Text", {
2461
+ const styles = (0, import_system45.useComponentStyles)("Text", {
2231
2462
  variant,
2232
2463
  size
2233
2464
  });
2234
- return /* @__PURE__ */ import_react62.default.createElement(import_system44.Box, {
2465
+ return /* @__PURE__ */ import_react65.default.createElement(import_system46.Box, {
2235
2466
  as: "p",
2236
2467
  ...props,
2237
2468
  css: { color, cursor, outline, fontSize, textAlign: align, ...styles }
@@ -2239,145 +2470,157 @@ var Text = ({
2239
2470
  };
2240
2471
 
2241
2472
  // src/TextArea/TextArea.tsx
2242
- var import_react63 = __toESM(require("react"));
2473
+ var import_react66 = __toESM(require("react"));
2243
2474
  var import_interactions10 = require("@react-aria/interactions");
2244
2475
  var import_focus16 = require("@react-aria/focus");
2245
2476
  var import_textfield = require("@react-aria/textfield");
2246
- var import_utils21 = require("@react-aria/utils");
2247
- var import_system45 = require("@marigold/system");
2248
- var TextArea = (0, import_react63.forwardRef)(({
2249
- variant,
2250
- size,
2251
- width,
2252
- disabled,
2253
- required,
2254
- readOnly,
2255
- error,
2256
- rows,
2257
- ...props
2258
- }, ref) => {
2259
- const { label, description, errorMessage } = props;
2260
- const textAreaRef = (0, import_utils21.useObjectRef)(ref);
2261
- const { labelProps, inputProps, descriptionProps, errorMessageProps } = (0, import_textfield.useTextField)({
2262
- inputElementType: "textarea",
2263
- isDisabled: disabled,
2264
- isRequired: required,
2265
- isReadOnly: readOnly,
2266
- validationState: error ? "invalid" : "valid",
2267
- ...props
2268
- }, textAreaRef);
2269
- const { hoverProps, isHovered } = (0, import_interactions10.useHover)({});
2270
- const { focusProps, isFocusVisible } = (0, import_focus16.useFocusRing)();
2271
- const stateProps = (0, import_system45.useStateProps)({
2272
- hover: isHovered,
2273
- focus: isFocusVisible,
2477
+ var import_utils22 = require("@react-aria/utils");
2478
+ var import_system47 = require("@marigold/system");
2479
+ var TextArea = (0, import_react66.forwardRef)(
2480
+ ({
2481
+ variant,
2482
+ size,
2483
+ width,
2274
2484
  disabled,
2275
- readOnly,
2276
- error
2277
- });
2278
- const styles = (0, import_system45.useComponentStyles)("TextArea", { variant, size });
2279
- return /* @__PURE__ */ import_react63.default.createElement(FieldBase, {
2280
- label,
2281
- labelProps,
2282
2485
  required,
2283
- description,
2284
- descriptionProps,
2486
+ readOnly,
2285
2487
  error,
2286
- errorMessage,
2287
- errorMessageProps,
2288
- stateProps,
2289
- variant,
2290
- size,
2291
- width
2292
- }, /* @__PURE__ */ import_react63.default.createElement(import_system45.Box, {
2293
- as: "textarea",
2294
- css: styles,
2295
- ref: textAreaRef,
2296
2488
  rows,
2297
- ...inputProps,
2298
- ...focusProps,
2299
- ...hoverProps,
2300
- ...stateProps
2301
- }));
2302
- });
2489
+ ...props
2490
+ }, ref) => {
2491
+ const { label, description, errorMessage } = props;
2492
+ const textAreaRef = (0, import_utils22.useObjectRef)(ref);
2493
+ const { labelProps, inputProps, descriptionProps, errorMessageProps } = (0, import_textfield.useTextField)(
2494
+ {
2495
+ inputElementType: "textarea",
2496
+ isDisabled: disabled,
2497
+ isRequired: required,
2498
+ isReadOnly: readOnly,
2499
+ validationState: error ? "invalid" : "valid",
2500
+ ...props
2501
+ },
2502
+ textAreaRef
2503
+ );
2504
+ const { hoverProps, isHovered } = (0, import_interactions10.useHover)({});
2505
+ const { focusProps, isFocusVisible } = (0, import_focus16.useFocusRing)();
2506
+ const stateProps = (0, import_system47.useStateProps)({
2507
+ hover: isHovered,
2508
+ focus: isFocusVisible,
2509
+ disabled,
2510
+ readOnly,
2511
+ error
2512
+ });
2513
+ const styles = (0, import_system47.useComponentStyles)("TextArea", { variant, size });
2514
+ return /* @__PURE__ */ import_react66.default.createElement(FieldBase, {
2515
+ label,
2516
+ labelProps,
2517
+ required,
2518
+ description,
2519
+ descriptionProps,
2520
+ error,
2521
+ errorMessage,
2522
+ errorMessageProps,
2523
+ stateProps,
2524
+ variant,
2525
+ size,
2526
+ width
2527
+ }, /* @__PURE__ */ import_react66.default.createElement(import_system47.Box, {
2528
+ as: "textarea",
2529
+ css: styles,
2530
+ ref: textAreaRef,
2531
+ rows,
2532
+ ...inputProps,
2533
+ ...focusProps,
2534
+ ...hoverProps,
2535
+ ...stateProps
2536
+ }));
2537
+ }
2538
+ );
2303
2539
 
2304
2540
  // src/TextField/TextField.tsx
2305
- var import_react64 = __toESM(require("react"));
2541
+ var import_react67 = __toESM(require("react"));
2306
2542
  var import_interactions11 = require("@react-aria/interactions");
2307
2543
  var import_focus17 = require("@react-aria/focus");
2308
2544
  var import_textfield2 = require("@react-aria/textfield");
2309
- var import_utils22 = require("@react-aria/utils");
2310
- var import_system46 = require("@marigold/system");
2311
- var TextField = (0, import_react64.forwardRef)(({ variant, size, width, disabled, required, readOnly, error, ...props }, ref) => {
2312
- const { label, description, errorMessage, autoFocus } = props;
2313
- const inputRef = (0, import_utils22.useObjectRef)(ref);
2314
- const { labelProps, inputProps, descriptionProps, errorMessageProps } = (0, import_textfield2.useTextField)({
2315
- isDisabled: disabled,
2316
- isRequired: required,
2317
- isReadOnly: readOnly,
2318
- validationState: error ? "invalid" : "valid",
2319
- ...props
2320
- }, inputRef);
2321
- const { hoverProps, isHovered } = (0, import_interactions11.useHover)({});
2322
- const { focusProps, isFocusVisible } = (0, import_focus17.useFocusRing)({
2323
- isTextInput: true,
2324
- autoFocus
2325
- });
2326
- const stateProps = (0, import_system46.useStateProps)({
2327
- hover: isHovered,
2328
- focus: isFocusVisible,
2329
- disabled,
2330
- readOnly,
2331
- error
2332
- });
2333
- return /* @__PURE__ */ import_react64.default.createElement(FieldBase, {
2334
- label,
2335
- labelProps,
2336
- required,
2337
- description,
2338
- descriptionProps,
2339
- error,
2340
- errorMessage,
2341
- errorMessageProps,
2342
- stateProps,
2343
- variant,
2344
- size,
2345
- width
2346
- }, /* @__PURE__ */ import_react64.default.createElement(Input, {
2347
- ref: inputRef,
2348
- variant,
2349
- size,
2350
- ...inputProps,
2351
- ...focusProps,
2352
- ...hoverProps,
2353
- ...stateProps
2354
- }));
2355
- });
2545
+ var import_utils23 = require("@react-aria/utils");
2546
+ var import_system48 = require("@marigold/system");
2547
+ var TextField = (0, import_react67.forwardRef)(
2548
+ ({ variant, size, width, disabled, required, readOnly, error, ...props }, ref) => {
2549
+ const { label, description, errorMessage, autoFocus } = props;
2550
+ const inputRef = (0, import_utils23.useObjectRef)(ref);
2551
+ const { labelProps, inputProps, descriptionProps, errorMessageProps } = (0, import_textfield2.useTextField)(
2552
+ {
2553
+ isDisabled: disabled,
2554
+ isRequired: required,
2555
+ isReadOnly: readOnly,
2556
+ validationState: error ? "invalid" : "valid",
2557
+ ...props
2558
+ },
2559
+ inputRef
2560
+ );
2561
+ const { hoverProps, isHovered } = (0, import_interactions11.useHover)({});
2562
+ const { focusProps, isFocusVisible } = (0, import_focus17.useFocusRing)({
2563
+ isTextInput: true,
2564
+ autoFocus
2565
+ });
2566
+ const stateProps = (0, import_system48.useStateProps)({
2567
+ hover: isHovered,
2568
+ focus: isFocusVisible,
2569
+ disabled,
2570
+ readOnly,
2571
+ error
2572
+ });
2573
+ return /* @__PURE__ */ import_react67.default.createElement(FieldBase, {
2574
+ label,
2575
+ labelProps,
2576
+ required,
2577
+ description,
2578
+ descriptionProps,
2579
+ error,
2580
+ errorMessage,
2581
+ errorMessageProps,
2582
+ stateProps,
2583
+ variant,
2584
+ size,
2585
+ width
2586
+ }, /* @__PURE__ */ import_react67.default.createElement(Input, {
2587
+ ref: inputRef,
2588
+ variant,
2589
+ size,
2590
+ ...inputProps,
2591
+ ...focusProps,
2592
+ ...hoverProps,
2593
+ ...stateProps
2594
+ }));
2595
+ }
2596
+ );
2356
2597
 
2357
2598
  // src/Tiles/Tiles.tsx
2358
- var import_react65 = __toESM(require("react"));
2359
- var Tiles = import_react65.default.forwardRef(({ space = "none", itemMinWidth = "250px", children, ...props }, ref) => /* @__PURE__ */ import_react65.default.createElement(import_system.Box, {
2360
- ref,
2361
- display: "grid",
2362
- __baseCSS: {
2363
- gap: space,
2364
- gridTemplateColumns: `repeat(auto-fit, minmax(min(${itemMinWidth}, 100%), 1fr))`
2365
- },
2366
- ...props
2367
- }, children));
2599
+ var import_react68 = __toESM(require("react"));
2600
+ var Tiles = import_react68.default.forwardRef(
2601
+ ({ space = "none", itemMinWidth = "250px", children, ...props }, ref) => /* @__PURE__ */ import_react68.default.createElement(import_system.Box, {
2602
+ ref,
2603
+ display: "grid",
2604
+ __baseCSS: {
2605
+ gap: space,
2606
+ gridTemplateColumns: `repeat(auto-fit, minmax(min(${itemMinWidth}, 100%), 1fr))`
2607
+ },
2608
+ ...props
2609
+ }, children)
2610
+ );
2368
2611
 
2369
2612
  // src/Tooltip/Tooltip.tsx
2370
- var import_react68 = __toESM(require("react"));
2613
+ var import_react71 = __toESM(require("react"));
2371
2614
  var import_tooltip3 = require("@react-aria/tooltip");
2372
- var import_system47 = require("@marigold/system");
2615
+ var import_system49 = require("@marigold/system");
2373
2616
 
2374
2617
  // src/Tooltip/Context.ts
2375
- var import_react66 = require("react");
2376
- var TooltipContext = (0, import_react66.createContext)({});
2377
- var useTooltipContext = () => (0, import_react66.useContext)(TooltipContext);
2618
+ var import_react69 = require("react");
2619
+ var TooltipContext = (0, import_react69.createContext)({});
2620
+ var useTooltipContext = () => (0, import_react69.useContext)(TooltipContext);
2378
2621
 
2379
2622
  // src/Tooltip/TooltipTrigger.tsx
2380
- var import_react67 = __toESM(require("react"));
2623
+ var import_react70 = __toESM(require("react"));
2381
2624
  var import_focus18 = require("@react-aria/focus");
2382
2625
  var import_overlays9 = require("@react-aria/overlays");
2383
2626
  var import_tooltip = require("@react-aria/tooltip");
@@ -2390,7 +2633,7 @@ var TooltipTrigger = ({
2390
2633
  children,
2391
2634
  ...rest
2392
2635
  }) => {
2393
- const [tooltipTrigger, tooltip] = import_react67.default.Children.toArray(children);
2636
+ const [tooltipTrigger, tooltip] = import_react70.default.Children.toArray(children);
2394
2637
  const props = {
2395
2638
  ...rest,
2396
2639
  isDisabled: disabled,
@@ -2398,10 +2641,14 @@ var TooltipTrigger = ({
2398
2641
  delay,
2399
2642
  placement
2400
2643
  };
2401
- const tooltipTriggerRef = (0, import_react67.useRef)(null);
2402
- const overlayRef = (0, import_react67.useRef)(null);
2644
+ const tooltipTriggerRef = (0, import_react70.useRef)(null);
2645
+ const overlayRef = (0, import_react70.useRef)(null);
2403
2646
  const state = (0, import_tooltip2.useTooltipTriggerState)(props);
2404
- const { triggerProps, tooltipProps } = (0, import_tooltip.useTooltipTrigger)(props, state, tooltipTriggerRef);
2647
+ const { triggerProps, tooltipProps } = (0, import_tooltip.useTooltipTrigger)(
2648
+ props,
2649
+ state,
2650
+ tooltipTriggerRef
2651
+ );
2405
2652
  const {
2406
2653
  overlayProps: positionProps,
2407
2654
  placement: overlayPlacement,
@@ -2414,10 +2661,10 @@ var TooltipTrigger = ({
2414
2661
  isOpen: state.isOpen,
2415
2662
  overlayRef
2416
2663
  });
2417
- return /* @__PURE__ */ import_react67.default.createElement(import_focus18.FocusableProvider, {
2664
+ return /* @__PURE__ */ import_react70.default.createElement(import_focus18.FocusableProvider, {
2418
2665
  ref: tooltipTriggerRef,
2419
2666
  ...triggerProps
2420
- }, tooltipTrigger, /* @__PURE__ */ import_react67.default.createElement(TooltipContext.Provider, {
2667
+ }, tooltipTrigger, /* @__PURE__ */ import_react70.default.createElement(TooltipContext.Provider, {
2421
2668
  value: {
2422
2669
  state,
2423
2670
  overlayRef,
@@ -2426,7 +2673,7 @@ var TooltipTrigger = ({
2426
2673
  ...tooltipProps,
2427
2674
  ...positionProps
2428
2675
  }
2429
- }, /* @__PURE__ */ import_react67.default.createElement(Overlay, {
2676
+ }, /* @__PURE__ */ import_react70.default.createElement(Overlay, {
2430
2677
  open: state.isOpen
2431
2678
  }, tooltip)));
2432
2679
  };
@@ -2435,14 +2682,18 @@ var TooltipTrigger = ({
2435
2682
  var Tooltip = ({ children, variant, size }) => {
2436
2683
  const { arrowProps, state, overlayRef, placement, ...rest } = useTooltipContext();
2437
2684
  const { tooltipProps } = (0, import_tooltip3.useTooltip)({}, state);
2438
- const styles = (0, import_system47.useComponentStyles)("Tooltip", { variant, size }, { parts: ["container", "arrow"] });
2439
- return /* @__PURE__ */ import_react68.default.createElement(import_system47.Box, {
2685
+ const styles = (0, import_system49.useComponentStyles)(
2686
+ "Tooltip",
2687
+ { variant, size },
2688
+ { parts: ["container", "arrow"] }
2689
+ );
2690
+ return /* @__PURE__ */ import_react71.default.createElement(import_system49.Box, {
2440
2691
  ...tooltipProps,
2441
2692
  ...rest,
2442
2693
  ref: overlayRef,
2443
2694
  css: styles.container,
2444
2695
  "data-placement": placement
2445
- }, /* @__PURE__ */ import_react68.default.createElement("div", null, children), /* @__PURE__ */ import_react68.default.createElement(import_system47.Box, {
2696
+ }, /* @__PURE__ */ import_react71.default.createElement("div", null, children), /* @__PURE__ */ import_react71.default.createElement(import_system49.Box, {
2446
2697
  ...arrowProps,
2447
2698
  __baseCSS: {
2448
2699
  position: "absolute",
@@ -2483,6 +2734,7 @@ Tooltip.Trigger = TooltipTrigger;
2483
2734
  Input,
2484
2735
  Label,
2485
2736
  Link,
2737
+ List,
2486
2738
  MarigoldProvider,
2487
2739
  Menu,
2488
2740
  Message,