@marigold/components 4.2.2 → 5.1.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.
Files changed (4) hide show
  1. package/dist/index.d.ts +57 -40
  2. package/dist/index.js +1703 -1402
  3. package/dist/index.mjs +1590 -1294
  4. package/package.json +6 -6
package/dist/index.js CHANGED
@@ -18,6 +18,10 @@ var __copyProps = (to, from, except, desc) => {
18
18
  return to;
19
19
  };
20
20
  var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
21
+ // If the importer is in node compatibility mode or this is not an ESM
22
+ // file that has been converted to a CommonJS file using a Babel-
23
+ // compatible transform (i.e. "__esModule" has not been set), then set
24
+ // "default" to the CommonJS "module.exports" for node compatibility.
21
25
  isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
22
26
  mod
23
27
  ));
@@ -26,6 +30,7 @@ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: tru
26
30
  // src/index.ts
27
31
  var src_exports = {};
28
32
  __export(src_exports, {
33
+ ActionMenu: () => ActionMenu,
29
34
  Aside: () => Aside,
30
35
  Aspect: () => Aspect,
31
36
  Badge: () => Badge,
@@ -72,7 +77,7 @@ __export(src_exports, {
72
77
  Text: () => Text,
73
78
  TextArea: () => TextArea,
74
79
  TextField: () => TextField,
75
- ThemeProvider: () => import_system31.ThemeProvider,
80
+ ThemeProvider: () => import_system32.ThemeProvider,
76
81
  Tiles: () => Tiles,
77
82
  Tooltip: () => Tooltip,
78
83
  Tray: () => Tray,
@@ -85,7 +90,7 @@ __export(src_exports, {
85
90
  useCheckboxGroupContext: () => useCheckboxGroupContext,
86
91
  useFieldGroupContext: () => useFieldGroupContext,
87
92
  useListData: () => import_data.useListData,
88
- useTheme: () => import_system31.useTheme
93
+ useTheme: () => import_system32.useTheme
89
94
  });
90
95
  module.exports = __toCommonJS(src_exports);
91
96
 
@@ -116,23 +121,27 @@ var Aside = ({
116
121
  wrap = "50%"
117
122
  }) => {
118
123
  const [aside, content] = SIDE_MAP[side];
119
- return /* @__PURE__ */ import_react.default.createElement(import_system.Box, {
120
- css: {
121
- display: "flex",
122
- flexWrap: "wrap",
123
- gap: space,
124
- alignItems: stretch ? void 0 : "flex-start",
125
- [`> ${aside}`]: {
126
- flexBasis: sideWidth,
127
- flexGrow: 1
128
- },
129
- [`> ${content}`]: {
130
- flexBasis: 0,
131
- flexGrow: 999,
132
- minInlineSize: wrap
124
+ return /* @__PURE__ */ import_react.default.createElement(
125
+ import_system.Box,
126
+ {
127
+ css: {
128
+ display: "flex",
129
+ flexWrap: "wrap",
130
+ gap: space,
131
+ alignItems: stretch ? void 0 : "flex-start",
132
+ [`> ${aside}`]: {
133
+ flexBasis: sideWidth,
134
+ flexGrow: 1
135
+ },
136
+ [`> ${content}`]: {
137
+ flexBasis: 0,
138
+ flexGrow: 999,
139
+ minInlineSize: wrap
140
+ }
133
141
  }
134
- }
135
- }, children);
142
+ },
143
+ children
144
+ );
136
145
  };
137
146
 
138
147
  // src/Aspect/Aspect.tsx
@@ -142,23 +151,24 @@ var Aspect = ({
142
151
  ratio = "square",
143
152
  maxWidth,
144
153
  children
145
- }) => /* @__PURE__ */ import_react2.default.createElement(import_system.Box, {
146
- css: {
147
- aspectRatio: import_tokens.aspect[ratio],
148
- overflow: "hidden",
149
- maxWidth
150
- }
151
- }, children);
154
+ }) => /* @__PURE__ */ import_react2.default.createElement(
155
+ import_system.Box,
156
+ {
157
+ css: {
158
+ aspectRatio: import_tokens.aspect[ratio],
159
+ overflow: "hidden",
160
+ maxWidth
161
+ }
162
+ },
163
+ children
164
+ );
152
165
 
153
166
  // src/Badge/Badge.tsx
154
167
  var import_react3 = __toESM(require("react"));
155
168
  var import_system2 = require("@marigold/system");
156
169
  var Badge = ({ variant, size, children, ...props }) => {
157
170
  const styles = (0, import_system2.useComponentStyles)("Badge", { variant, size });
158
- return /* @__PURE__ */ import_react3.default.createElement(import_system.Box, {
159
- ...props,
160
- css: styles
161
- }, children);
171
+ return /* @__PURE__ */ import_react3.default.createElement(import_system.Box, { ...props, css: styles }, children);
162
172
  };
163
173
 
164
174
  // src/Breakout/Breakout.tsx
@@ -183,17 +193,21 @@ var Breakout = ({
183
193
  }) => {
184
194
  const alignItems = useAlignment(alignY);
185
195
  const justifyContent = useAlignment(alignX);
186
- return /* @__PURE__ */ import_react4.default.createElement(import_system.Box, {
187
- alignItems,
188
- justifyContent,
189
- width: "100%",
190
- height,
191
- display: alignY || alignX ? "flex" : "block",
192
- __baseCSS: {
193
- gridColumn: "1 / -1 !important"
196
+ return /* @__PURE__ */ import_react4.default.createElement(
197
+ import_system.Box,
198
+ {
199
+ css: {
200
+ alignItems,
201
+ justifyContent,
202
+ height,
203
+ width: "100%",
204
+ display: alignY || alignX ? "flex" : "block",
205
+ gridColumn: "1 / -1 !important"
206
+ },
207
+ ...props
194
208
  },
195
- ...props
196
- }, children);
209
+ children
210
+ );
197
211
  };
198
212
 
199
213
  // src/Body/Body.tsx
@@ -201,11 +215,7 @@ var import_react5 = __toESM(require("react"));
201
215
  var import_system3 = require("@marigold/system");
202
216
  var Body = ({ children, variant, size, ...props }) => {
203
217
  const styles = (0, import_system3.useComponentStyles)("Body", { variant, size });
204
- return /* @__PURE__ */ import_react5.default.createElement(import_system3.Box, {
205
- as: "section",
206
- ...props,
207
- css: styles
208
- }, children);
218
+ return /* @__PURE__ */ import_react5.default.createElement(import_system3.Box, { as: "section", ...props, css: styles }, children);
209
219
  };
210
220
 
211
221
  // src/Button/Button.tsx
@@ -238,6 +248,10 @@ var Button = (0, import_react6.forwardRef)(
238
248
  });
239
249
  const { buttonProps, isPressed } = (0, import_button.useButton)(
240
250
  {
251
+ /**
252
+ * `react-aria` only expected `Element` but we casted
253
+ * it to a `HTMLButtonElement` internally.
254
+ */
241
255
  ...props,
242
256
  onClick,
243
257
  onPress,
@@ -256,24 +270,28 @@ var Button = (0, import_react6.forwardRef)(
256
270
  focusVisible: isFocusVisible,
257
271
  hover: isHovered
258
272
  });
259
- return /* @__PURE__ */ import_react6.default.createElement(import_system4.Box, {
260
- ...(0, import_utils.mergeProps)(buttonProps, focusProps, hoverProps, props),
261
- ...stateProps,
262
- as,
263
- ref: buttonRef,
264
- __baseCSS: {
265
- display: "inline-flex",
266
- alignItems: "center",
267
- justifyContent: "center",
268
- gap: "0.5ch",
269
- cursor: disabled ? "not-allowed" : "pointer",
270
- width: fullWidth ? "100%" : void 0,
271
- "&:focus": {
272
- outline: 0
273
- }
273
+ return /* @__PURE__ */ import_react6.default.createElement(
274
+ import_system4.Box,
275
+ {
276
+ ...(0, import_utils.mergeProps)(buttonProps, focusProps, hoverProps, props),
277
+ ...stateProps,
278
+ as,
279
+ ref: buttonRef,
280
+ __baseCSS: {
281
+ display: "inline-flex",
282
+ alignItems: "center",
283
+ justifyContent: "center",
284
+ gap: "0.5ch",
285
+ cursor: disabled ? "not-allowed" : "pointer",
286
+ width: fullWidth ? "100%" : void 0,
287
+ "&:focus": {
288
+ outline: 0
289
+ }
290
+ },
291
+ css: styles
274
292
  },
275
- css: styles
276
- }, children);
293
+ children
294
+ );
277
295
  }
278
296
  );
279
297
 
@@ -294,10 +312,7 @@ var Card = ({
294
312
  ...props
295
313
  }) => {
296
314
  const styles = (0, import_system5.useComponentStyles)("Card", { variant, size });
297
- return /* @__PURE__ */ import_react7.default.createElement(import_system5.Box, {
298
- ...props,
299
- css: [styles, { p, px, py, pt, pb, pl, pr }]
300
- }, children);
315
+ return /* @__PURE__ */ import_react7.default.createElement(import_system5.Box, { ...props, css: [styles, { p, px, py, pt, pb, pl, pr }] }, children);
301
316
  };
302
317
 
303
318
  // src/Center/Center.tsx
@@ -307,19 +322,23 @@ var Center = ({
307
322
  space = "none",
308
323
  children,
309
324
  ...props
310
- }) => /* @__PURE__ */ import_react8.default.createElement(import_system.Box, {
311
- css: {
312
- boxSizing: "content-box",
313
- display: "flex",
314
- flexDirection: "column",
315
- alignItems: "center",
316
- justifyContent: "center",
317
- marginInline: "auto",
318
- maxInlineSize: maxWidth,
319
- gap: space
325
+ }) => /* @__PURE__ */ import_react8.default.createElement(
326
+ import_system.Box,
327
+ {
328
+ css: {
329
+ boxSizing: "content-box",
330
+ display: "flex",
331
+ flexDirection: "column",
332
+ alignItems: "center",
333
+ justifyContent: "center",
334
+ marginInline: "auto",
335
+ maxInlineSize: maxWidth,
336
+ gap: space
337
+ },
338
+ ...props
320
339
  },
321
- ...props
322
- }, children);
340
+ children
341
+ );
323
342
 
324
343
  // src/Checkbox/Checkbox.tsx
325
344
  var import_react15 = __toESM(require("react"));
@@ -353,23 +372,21 @@ var Label = ({
353
372
  ...props
354
373
  }) => {
355
374
  const styles = (0, import_system6.useComponentStyles)("Label", { size, variant });
356
- return /* @__PURE__ */ import_react9.default.createElement(import_system6.Box, {
357
- ...props,
358
- as,
359
- "aria-required": required,
360
- __baseCSS: {
361
- display: "flex",
362
- width: labelWidth
375
+ return /* @__PURE__ */ import_react9.default.createElement(
376
+ import_system6.Box,
377
+ {
378
+ ...props,
379
+ as,
380
+ "aria-required": required,
381
+ __baseCSS: {
382
+ display: "flex",
383
+ width: labelWidth
384
+ },
385
+ css: styles
363
386
  },
364
- css: styles
365
- }, children, required && /* @__PURE__ */ import_react9.default.createElement(import_system6.SVG, {
366
- viewBox: "0 0 24 24",
367
- role: "presentation",
368
- size: 16,
369
- fill: "error"
370
- }, /* @__PURE__ */ import_react9.default.createElement("path", {
371
- d: "M10.8 3.84003H13.2V9.85259L18.1543 7.01815L19.3461 9.10132L14.3584 11.9549L19.3371 14.7999L18.1463 16.8836L13.2 14.0572V20.16H10.8V13.9907L5.76116 16.8735L4.56935 14.7903L9.5232 11.9561L4.56 9.12003L5.75073 7.03624L10.8 9.92154V3.84003Z"
372
- })));
387
+ children,
388
+ required && /* @__PURE__ */ import_react9.default.createElement(import_system6.SVG, { viewBox: "0 0 24 24", role: "presentation", size: 16, fill: "error" }, /* @__PURE__ */ import_react9.default.createElement("path", { d: "M10.8 3.84003H13.2V9.85259L18.1543 7.01815L19.3461 9.10132L14.3584 11.9549L19.3371 14.7999L18.1463 16.8836L13.2 14.0572V20.16H10.8V13.9907L5.76116 16.8735L4.56935 14.7903L9.5232 11.9561L4.56 9.12003L5.75073 7.03624L10.8 9.92154V3.84003Z" }))
389
+ );
373
390
  };
374
391
 
375
392
  // src/HelpText/HelpText.tsx
@@ -393,18 +410,24 @@ var HelpText = ({
393
410
  { variant, size },
394
411
  { parts: ["container", "icon"] }
395
412
  );
396
- return /* @__PURE__ */ import_react10.default.createElement(import_system7.Box, {
397
- ...hasErrorMessage ? errorMessageProps : descriptionProps,
398
- ...props,
399
- __baseCSS: { display: "flex", alignItems: "center", gap: 4 },
400
- css: styles.container
401
- }, hasErrorMessage ? /* @__PURE__ */ import_react10.default.createElement(import_react10.default.Fragment, null, /* @__PURE__ */ import_react10.default.createElement(import_system7.SVG, {
402
- viewBox: "0 0 24 24",
403
- role: "presentation",
404
- size: ((_a = styles == null ? void 0 : styles.icon) == null ? void 0 : _a.size) || 16
405
- }, /* @__PURE__ */ import_react10.default.createElement("path", {
406
- d: "M2.25 20.3097H21.75L12 3.46875L2.25 20.3097ZM12.8864 17.2606H11.1136V15.4879H12.8864V17.2606ZM12.8864 13.7151H11.1136V10.1697H12.8864V13.7151Z"
407
- })), errorMessage) : /* @__PURE__ */ import_react10.default.createElement(import_react10.default.Fragment, null, description));
413
+ return /* @__PURE__ */ import_react10.default.createElement(
414
+ import_system7.Box,
415
+ {
416
+ ...hasErrorMessage ? errorMessageProps : descriptionProps,
417
+ ...props,
418
+ __baseCSS: { display: "flex", alignItems: "center", gap: 4 },
419
+ css: styles.container
420
+ },
421
+ hasErrorMessage ? /* @__PURE__ */ import_react10.default.createElement(import_react10.default.Fragment, null, /* @__PURE__ */ import_react10.default.createElement(
422
+ import_system7.SVG,
423
+ {
424
+ viewBox: "0 0 24 24",
425
+ role: "presentation",
426
+ size: ((_a = styles == null ? void 0 : styles.icon) == null ? void 0 : _a.size) || 16
427
+ },
428
+ /* @__PURE__ */ import_react10.default.createElement("path", { d: "M2.25 20.3097H21.75L12 3.46875L2.25 20.3097ZM12.8864 17.2606H11.1136V15.4879H12.8864V17.2606ZM12.8864 13.7151H11.1136V10.1697H12.8864V13.7151Z" })
429
+ ), errorMessage) : /* @__PURE__ */ import_react10.default.createElement(import_react10.default.Fragment, null, description)
430
+ );
408
431
  };
409
432
 
410
433
  // src/FieldBase/FieldGroup.tsx
@@ -413,9 +436,7 @@ var import_react12 = require("react");
413
436
  var FieldGroupContext = (0, import_react12.createContext)({});
414
437
  var useFieldGroupContext = () => (0, import_react12.useContext)(FieldGroupContext);
415
438
  var FieldGroup = ({ labelWidth, children }) => {
416
- return /* @__PURE__ */ import_react11.default.createElement(FieldGroupContext.Provider, {
417
- value: { labelWidth }
418
- }, children);
439
+ return /* @__PURE__ */ import_react11.default.createElement(FieldGroupContext.Provider, { value: { labelWidth } }, children);
419
440
  };
420
441
 
421
442
  // src/FieldBase/FieldBase.tsx
@@ -439,35 +460,45 @@ var FieldBase = ({
439
460
  const hasHelpText = !!description || errorMessage && error;
440
461
  const style = (0, import_system8.useComponentStyles)("Field", { variant, size });
441
462
  const { labelWidth } = useFieldGroupContext();
442
- return /* @__PURE__ */ import_react13.default.createElement(import_system8.Box, {
443
- ...props,
444
- __baseCSS: {
445
- display: "flex",
446
- flexDirection: "column",
447
- width,
448
- position: "relative"
463
+ return /* @__PURE__ */ import_react13.default.createElement(
464
+ import_system8.Box,
465
+ {
466
+ ...props,
467
+ __baseCSS: {
468
+ display: "flex",
469
+ flexDirection: "column",
470
+ width,
471
+ position: "relative"
472
+ },
473
+ css: style
449
474
  },
450
- css: style
451
- }, label && /* @__PURE__ */ import_react13.default.createElement(Label, {
452
- required,
453
- variant,
454
- size,
455
- labelWidth,
456
- ...labelProps,
457
- ...stateProps
458
- }, label), /* @__PURE__ */ import_react13.default.createElement(import_system8.Box, {
459
- __baseCSS: { display: "flex", flexDirection: "column" }
460
- }, children, hasHelpText && /* @__PURE__ */ import_react13.default.createElement(HelpText, {
461
- ...stateProps,
462
- variant,
463
- size,
464
- disabled,
465
- description,
466
- descriptionProps,
467
- error,
468
- errorMessage,
469
- errorMessageProps
470
- })));
475
+ label && /* @__PURE__ */ import_react13.default.createElement(
476
+ Label,
477
+ {
478
+ required,
479
+ variant,
480
+ size,
481
+ labelWidth,
482
+ ...labelProps,
483
+ ...stateProps
484
+ },
485
+ label
486
+ ),
487
+ /* @__PURE__ */ import_react13.default.createElement(import_system8.Box, { __baseCSS: { display: "flex", flexDirection: "column" } }, children, hasHelpText && /* @__PURE__ */ import_react13.default.createElement(
488
+ HelpText,
489
+ {
490
+ ...stateProps,
491
+ variant,
492
+ size,
493
+ disabled,
494
+ description,
495
+ descriptionProps,
496
+ error,
497
+ errorMessage,
498
+ errorMessageProps
499
+ }
500
+ ))
501
+ );
471
502
  };
472
503
 
473
504
  // src/Checkbox/CheckboxGroup.tsx
@@ -497,64 +528,74 @@ var CheckboxGroup = ({
497
528
  readOnly,
498
529
  error
499
530
  });
500
- return /* @__PURE__ */ import_react14.default.createElement(FieldBase, {
501
- label: props.label,
502
- labelProps: { as: "span", ...labelProps },
503
- description: props.description,
504
- descriptionProps,
505
- error,
506
- errorMessage: props.errorMessage,
507
- errorMessageProps,
508
- disabled,
509
- stateProps,
510
- required,
511
- ...groupProps
512
- }, /* @__PURE__ */ import_react14.default.createElement(import_system9.Box, {
513
- role: "presentation",
514
- __baseCSS: {
515
- display: "flex",
516
- flexDirection: "column",
517
- alignItems: "start"
518
- }
519
- }, /* @__PURE__ */ import_react14.default.createElement(CheckboxGroupContext.Provider, {
520
- value: { error, ...state }
521
- }, children)));
531
+ return /* @__PURE__ */ import_react14.default.createElement(
532
+ FieldBase,
533
+ {
534
+ label: props.label,
535
+ labelProps: { as: "span", ...labelProps },
536
+ description: props.description,
537
+ descriptionProps,
538
+ error,
539
+ errorMessage: props.errorMessage,
540
+ errorMessageProps,
541
+ disabled,
542
+ stateProps,
543
+ required,
544
+ ...groupProps
545
+ },
546
+ /* @__PURE__ */ import_react14.default.createElement(
547
+ import_system9.Box,
548
+ {
549
+ role: "presentation",
550
+ __baseCSS: {
551
+ display: "flex",
552
+ flexDirection: "column",
553
+ alignItems: "start"
554
+ }
555
+ },
556
+ /* @__PURE__ */ import_react14.default.createElement(CheckboxGroupContext.Provider, { value: { error, ...state } }, children)
557
+ )
558
+ );
522
559
  };
523
560
 
524
561
  // src/Checkbox/Checkbox.tsx
525
- var CheckMark = () => /* @__PURE__ */ import_react15.default.createElement("svg", {
526
- viewBox: "0 0 12 10"
527
- }, /* @__PURE__ */ import_react15.default.createElement("path", {
528
- fill: "currentColor",
529
- stroke: "none",
530
- d: "M11.915 1.548 10.367 0 4.045 6.315 1.557 3.827 0 5.373l4.045 4.046 7.87-7.871Z"
531
- }));
532
- var IndeterminateMark = () => /* @__PURE__ */ import_react15.default.createElement("svg", {
533
- width: "12",
534
- height: "3",
535
- viewBox: "0 0 12 3"
536
- }, /* @__PURE__ */ import_react15.default.createElement("path", {
537
- fill: "currentColor",
538
- stroke: "none",
539
- d: "M11.5 2.04018H0.5V0.46875H11.5V2.04018Z"
540
- }));
541
- var Icon = ({ css, checked, indeterminate, ...props }) => /* @__PURE__ */ import_react15.default.createElement(import_system10.Box, {
542
- "aria-hidden": "true",
543
- __baseCSS: {
544
- flex: "0 0 16px",
545
- width: 16,
546
- height: 16,
547
- bg: "#fff",
548
- border: "1px solid #000",
549
- borderRadius: 3,
550
- display: "flex",
551
- alignItems: "center",
552
- justifyContent: "center",
553
- p: 1
562
+ var CheckMark = () => /* @__PURE__ */ import_react15.default.createElement("svg", { viewBox: "0 0 12 10" }, /* @__PURE__ */ import_react15.default.createElement(
563
+ "path",
564
+ {
565
+ fill: "currentColor",
566
+ stroke: "none",
567
+ d: "M11.915 1.548 10.367 0 4.045 6.315 1.557 3.827 0 5.373l4.045 4.046 7.87-7.871Z"
568
+ }
569
+ ));
570
+ var IndeterminateMark = () => /* @__PURE__ */ import_react15.default.createElement("svg", { width: "12", height: "3", viewBox: "0 0 12 3" }, /* @__PURE__ */ import_react15.default.createElement(
571
+ "path",
572
+ {
573
+ fill: "currentColor",
574
+ stroke: "none",
575
+ d: "M11.5 2.04018H0.5V0.46875H11.5V2.04018Z"
576
+ }
577
+ ));
578
+ var Icon = ({ css, checked, indeterminate, ...props }) => /* @__PURE__ */ import_react15.default.createElement(
579
+ import_system10.Box,
580
+ {
581
+ "aria-hidden": "true",
582
+ __baseCSS: {
583
+ flex: "0 0 16px",
584
+ width: 16,
585
+ height: 16,
586
+ bg: "#fff",
587
+ border: "1px solid #000",
588
+ borderRadius: 3,
589
+ display: "flex",
590
+ alignItems: "center",
591
+ justifyContent: "center",
592
+ p: 1
593
+ },
594
+ css,
595
+ ...props
554
596
  },
555
- css,
556
- ...props
557
- }, indeterminate ? /* @__PURE__ */ import_react15.default.createElement(IndeterminateMark, null) : checked ? /* @__PURE__ */ import_react15.default.createElement(CheckMark, null) : null);
597
+ indeterminate ? /* @__PURE__ */ import_react15.default.createElement(IndeterminateMark, null) : checked ? /* @__PURE__ */ import_react15.default.createElement(CheckMark, null) : null
598
+ );
558
599
  var Checkbox = (0, import_react15.forwardRef)(
559
600
  ({
560
601
  size,
@@ -581,6 +622,10 @@ var Checkbox = (0, import_react15.forwardRef)(
581
622
  {
582
623
  ...props,
583
624
  ...checkboxProps,
625
+ /**
626
+ * value is optional for standalone checkboxes, but required when
627
+ * used inside a group.
628
+ */
584
629
  value: props.value
585
630
  },
586
631
  groupState,
@@ -619,41 +664,50 @@ var Checkbox = (0, import_react15.forwardRef)(
619
664
  readOnly,
620
665
  indeterminate
621
666
  });
622
- return /* @__PURE__ */ import_react15.default.createElement(import_system10.Box, {
623
- as: "label",
624
- __baseCSS: {
625
- display: "flex",
626
- alignItems: "center",
627
- gap: "1ch",
628
- position: "relative"
629
- },
630
- css: styles.container,
631
- ...hoverProps,
632
- ...stateProps
633
- }, /* @__PURE__ */ import_react15.default.createElement(import_system10.Box, {
634
- as: "input",
635
- ref: inputRef,
636
- css: {
637
- position: "absolute",
638
- width: "100%",
639
- height: "100%",
640
- top: 0,
641
- left: 0,
642
- zIndex: 1,
643
- opacity: 1e-4,
644
- cursor: inputProps.disabled ? "not-allowed" : "pointer"
667
+ return /* @__PURE__ */ import_react15.default.createElement(
668
+ import_system10.Box,
669
+ {
670
+ as: "label",
671
+ __baseCSS: {
672
+ display: "flex",
673
+ alignItems: "center",
674
+ gap: "1ch",
675
+ position: "relative"
676
+ },
677
+ css: styles.container,
678
+ ...hoverProps,
679
+ ...stateProps
645
680
  },
646
- ...inputProps,
647
- ...focusProps
648
- }), /* @__PURE__ */ import_react15.default.createElement(Icon, {
649
- checked: inputProps.checked,
650
- indeterminate,
651
- css: styles.checkbox,
652
- ...stateProps
653
- }), props.children && /* @__PURE__ */ import_react15.default.createElement(import_system10.Box, {
654
- css: styles.label,
655
- ...stateProps
656
- }, props.children));
681
+ /* @__PURE__ */ import_react15.default.createElement(
682
+ import_system10.Box,
683
+ {
684
+ as: "input",
685
+ ref: inputRef,
686
+ css: {
687
+ position: "absolute",
688
+ width: "100%",
689
+ height: "100%",
690
+ top: 0,
691
+ left: 0,
692
+ zIndex: 1,
693
+ opacity: 1e-4,
694
+ cursor: inputProps.disabled ? "not-allowed" : "pointer"
695
+ },
696
+ ...inputProps,
697
+ ...focusProps
698
+ }
699
+ ),
700
+ /* @__PURE__ */ import_react15.default.createElement(
701
+ Icon,
702
+ {
703
+ checked: inputProps.checked,
704
+ indeterminate,
705
+ css: styles.checkbox,
706
+ ...stateProps
707
+ }
708
+ ),
709
+ props.children && /* @__PURE__ */ import_react15.default.createElement(import_system10.Box, { css: styles.label, ...stateProps }, props.children)
710
+ );
657
711
  }
658
712
  );
659
713
 
@@ -674,23 +728,36 @@ var Columns = ({
674
728
  )}`
675
729
  );
676
730
  }
677
- return /* @__PURE__ */ import_react16.default.createElement(import_system.Box, {
678
- css: {
679
- display: "flex",
680
- flexWrap: "wrap",
681
- alignItems: "stretch",
682
- height: stretch ? "100%" : void 0,
683
- gap: space,
684
- "> *": {
685
- flexBasis: `calc(( ${collapseAt} - 100%) * 999)`
686
- }
731
+ return /* @__PURE__ */ import_react16.default.createElement(
732
+ import_system.Box,
733
+ {
734
+ css: {
735
+ display: "flex",
736
+ flexWrap: "wrap",
737
+ alignItems: "stretch",
738
+ height: stretch ? "100%" : void 0,
739
+ gap: space,
740
+ "> *": {
741
+ /**
742
+ * "Container Query": collapses at given width
743
+ * (https://heydonworks.com/article/the-flexbox-holy-albatross/)
744
+ */
745
+ flexBasis: `calc(( ${collapseAt} - 100%) * 999)`
746
+ }
747
+ },
748
+ ...props
687
749
  },
688
- ...props
689
- }, import_react16.Children.map(children, (child, idx) => /* @__PURE__ */ import_react16.default.createElement(import_system.Box, {
690
- css: {
691
- flexGrow: columns[idx]
692
- }
693
- }, (0, import_react16.isValidElement)(child) ? (0, import_react16.cloneElement)(child) : child)));
750
+ import_react16.Children.map(children, (child, idx) => /* @__PURE__ */ import_react16.default.createElement(
751
+ import_system.Box,
752
+ {
753
+ css: {
754
+ // Stretch each column to the given value
755
+ flexGrow: columns[idx]
756
+ }
757
+ },
758
+ (0, import_react16.isValidElement)(child) ? (0, import_react16.cloneElement)(child) : child
759
+ ))
760
+ );
694
761
  };
695
762
 
696
763
  // src/Container/Container.tsx
@@ -725,21 +792,25 @@ var Container = ({
725
792
  ...props
726
793
  }) => {
727
794
  const maxWidth = import_tokens2.size[contentType][size];
728
- return /* @__PURE__ */ import_react17.default.createElement(import_system.Box, {
729
- display: "grid",
730
- css: {
731
- gridTemplateColumns: ALIGN[align](maxWidth).gridTemplateColumns,
732
- placeItems: ALIGN_ITEMS[alignItems],
733
- "> *": {
734
- gridColumn: ALIGN[align](maxWidth).gridColumn
735
- }
795
+ return /* @__PURE__ */ import_react17.default.createElement(
796
+ import_system.Box,
797
+ {
798
+ css: {
799
+ display: "grid",
800
+ gridTemplateColumns: ALIGN[align](maxWidth).gridTemplateColumns,
801
+ placeItems: ALIGN_ITEMS[alignItems],
802
+ "> *": {
803
+ gridColumn: ALIGN[align](maxWidth).gridColumn
804
+ }
805
+ },
806
+ ...props
736
807
  },
737
- ...props
738
- }, children);
808
+ children
809
+ );
739
810
  };
740
811
 
741
812
  // src/Dialog/Dialog.tsx
742
- var import_react28 = __toESM(require("react"));
813
+ var import_react29 = __toESM(require("react"));
743
814
  var import_button2 = require("@react-aria/button");
744
815
  var import_dialog = require("@react-aria/dialog");
745
816
  var import_system15 = require("@marigold/system");
@@ -749,11 +820,7 @@ var import_react18 = __toESM(require("react"));
749
820
  var import_system11 = require("@marigold/system");
750
821
  var Header = ({ children, variant, size, ...props }) => {
751
822
  const styles = (0, import_system11.useComponentStyles)("Header", { variant, size });
752
- return /* @__PURE__ */ import_react18.default.createElement(import_system.Box, {
753
- as: "header",
754
- ...props,
755
- css: styles
756
- }, children);
823
+ return /* @__PURE__ */ import_react18.default.createElement(import_system.Box, { as: "header", ...props, css: styles }, children);
757
824
  };
758
825
 
759
826
  // src/Headline/Headline.tsx
@@ -772,11 +839,15 @@ var Headline = ({
772
839
  variant,
773
840
  size: size != null ? size : `level-${level}`
774
841
  });
775
- return /* @__PURE__ */ import_react19.default.createElement(import_system12.Box, {
776
- as: `h${level}`,
777
- ...props,
778
- css: [styles, { color, textAlign: align }]
779
- }, children);
842
+ return /* @__PURE__ */ import_react19.default.createElement(
843
+ import_system12.Box,
844
+ {
845
+ as: `h${level}`,
846
+ ...props,
847
+ css: [styles, { color, textAlign: align }]
848
+ },
849
+ children
850
+ );
780
851
  };
781
852
 
782
853
  // src/Dialog/Context.ts
@@ -800,15 +871,18 @@ var import_react21 = __toESM(require("react"));
800
871
  var import_system13 = require("@marigold/system");
801
872
  var Underlay = ({ size, variant, ...props }) => {
802
873
  const styles = (0, import_system13.useComponentStyles)("Underlay", { size, variant });
803
- return /* @__PURE__ */ import_react21.default.createElement(import_system13.Box, {
804
- __baseCSS: {
805
- position: "fixed",
806
- inset: 0,
807
- zIndex: 1
808
- },
809
- css: styles,
810
- ...props
811
- });
874
+ return /* @__PURE__ */ import_react21.default.createElement(
875
+ import_system13.Box,
876
+ {
877
+ __baseCSS: {
878
+ position: "fixed",
879
+ inset: 0,
880
+ zIndex: 1
881
+ },
882
+ css: styles,
883
+ ...props
884
+ }
885
+ );
812
886
  };
813
887
 
814
888
  // src/Overlay/Modal.tsx
@@ -826,28 +900,23 @@ var Modal = (0, import_react22.forwardRef)(
826
900
  );
827
901
  (0, import_overlays.usePreventScroll)();
828
902
  const { modalProps } = (0, import_overlays.useModal)({});
829
- return /* @__PURE__ */ import_react22.default.createElement(import_focus3.FocusScope, {
830
- contain: true,
831
- restoreFocus: true,
832
- autoFocus: true
833
- }, /* @__PURE__ */ import_react22.default.createElement(Underlay, {
834
- ...underlayProps,
835
- variant: "modal"
836
- }), /* @__PURE__ */ import_react22.default.createElement("div", {
837
- style: {
838
- display: "flex",
839
- alignItems: "center",
840
- justifyContent: "center",
841
- position: "fixed",
842
- inset: 0,
843
- zIndex: 2,
844
- pointerEvents: "none"
903
+ return /* @__PURE__ */ import_react22.default.createElement(import_focus3.FocusScope, { contain: true, restoreFocus: true, autoFocus: true }, /* @__PURE__ */ import_react22.default.createElement(Underlay, { ...underlayProps, variant: "modal" }), /* @__PURE__ */ import_react22.default.createElement(
904
+ "div",
905
+ {
906
+ style: {
907
+ display: "flex",
908
+ alignItems: "center",
909
+ justifyContent: "center",
910
+ position: "fixed",
911
+ inset: 0,
912
+ zIndex: 2,
913
+ pointerEvents: "none"
914
+ },
915
+ ref: modalRef,
916
+ ...(0, import_utils3.mergeProps)(props, overlayProps, modalProps)
845
917
  },
846
- ref: modalRef,
847
- ...(0, import_utils3.mergeProps)(props, overlayProps, modalProps)
848
- }, /* @__PURE__ */ import_react22.default.createElement("div", {
849
- style: { pointerEvents: "auto" }
850
- }, children)));
918
+ /* @__PURE__ */ import_react22.default.createElement("div", { style: { pointerEvents: "auto" } }, children)
919
+ ));
851
920
  }
852
921
  );
853
922
 
@@ -873,21 +942,18 @@ var Overlay = ({ children, container, open }) => {
873
942
  if (!mountOverlay) {
874
943
  return null;
875
944
  }
876
- return /* @__PURE__ */ import_react23.default.createElement(import_overlays2.Overlay, {
877
- portalContainer: container
878
- }, /* @__PURE__ */ import_react23.default.createElement(import_react_transition_group.Transition, {
879
- nodeRef,
880
- timeout: duration,
881
- in: open,
882
- appear: true
883
- }, (state) => /* @__PURE__ */ import_react23.default.createElement("div", {
884
- ref: nodeRef,
885
- "data-testid": "overlay",
886
- style: {
887
- ...defaultStyle,
888
- ...transitionStyles[state]
889
- }
890
- }, children)));
945
+ return /* @__PURE__ */ import_react23.default.createElement(import_overlays2.Overlay, { portalContainer: container }, /* @__PURE__ */ import_react23.default.createElement(import_react_transition_group.Transition, { nodeRef, timeout: duration, in: open, appear: true }, (state) => /* @__PURE__ */ import_react23.default.createElement(
946
+ "div",
947
+ {
948
+ ref: nodeRef,
949
+ "data-testid": "overlay",
950
+ style: {
951
+ ...defaultStyle,
952
+ ...transitionStyles[state]
953
+ }
954
+ },
955
+ children
956
+ )));
891
957
  };
892
958
 
893
959
  // src/Overlay/Popover.tsx
@@ -899,13 +965,7 @@ var Popover = (0, import_react24.forwardRef)(
899
965
  (props, ref) => {
900
966
  const popoverRef = (0, import_utils4.useObjectRef)(ref);
901
967
  let { children, state, ...otherProps } = props;
902
- return /* @__PURE__ */ import_react24.default.createElement(Overlay, {
903
- open: state.isOpen,
904
- ...otherProps
905
- }, /* @__PURE__ */ import_react24.default.createElement(PopoverWrapper, {
906
- ref: popoverRef,
907
- ...props
908
- }, children));
968
+ return /* @__PURE__ */ import_react24.default.createElement(Overlay, { open: state.isOpen, ...otherProps }, /* @__PURE__ */ import_react24.default.createElement(PopoverWrapper, { ref: popoverRef, ...props }, children));
909
969
  }
910
970
  );
911
971
  var PopoverWrapper = (0, import_react24.forwardRef)(
@@ -926,23 +986,21 @@ var PopoverWrapper = (0, import_react24.forwardRef)(
926
986
  },
927
987
  state
928
988
  );
929
- return /* @__PURE__ */ import_react24.default.createElement(import_focus4.FocusScope, {
930
- restoreFocus: true
931
- }, !isNonModal && /* @__PURE__ */ import_react24.default.createElement(Underlay, {
932
- ...underlayProps
933
- }), /* @__PURE__ */ import_react24.default.createElement("div", {
934
- ...popoverProps,
935
- style: {
936
- ...popoverProps.style,
937
- minWidth: props.triggerRef.current ? props.triggerRef.current.offsetWidth : void 0
989
+ return /* @__PURE__ */ import_react24.default.createElement(import_focus4.FocusScope, { restoreFocus: true }, !isNonModal && /* @__PURE__ */ import_react24.default.createElement(Underlay, { ...underlayProps }), /* @__PURE__ */ import_react24.default.createElement(
990
+ "div",
991
+ {
992
+ ...popoverProps,
993
+ style: {
994
+ ...popoverProps.style,
995
+ minWidth: props.triggerRef.current ? props.triggerRef.current.offsetWidth : void 0
996
+ },
997
+ ref,
998
+ role: "presentation"
938
999
  },
939
- ref,
940
- role: "presentation"
941
- }, !isNonModal && /* @__PURE__ */ import_react24.default.createElement(import_overlays3.DismissButton, {
942
- onDismiss: state.close
943
- }), children, /* @__PURE__ */ import_react24.default.createElement(import_overlays3.DismissButton, {
944
- onDismiss: state.close
945
- })));
1000
+ !isNonModal && /* @__PURE__ */ import_react24.default.createElement(import_overlays3.DismissButton, { onDismiss: state.close }),
1001
+ children,
1002
+ /* @__PURE__ */ import_react24.default.createElement(import_overlays3.DismissButton, { onDismiss: state.close })
1003
+ ));
946
1004
  }
947
1005
  );
948
1006
 
@@ -956,13 +1014,7 @@ var import_react26 = require("react");
956
1014
  var Tray = (0, import_react26.forwardRef)(
957
1015
  ({ state, children, ...props }, ref) => {
958
1016
  const trayRef = (0, import_utils5.useObjectRef)(ref);
959
- return /* @__PURE__ */ import_react25.default.createElement(Overlay, {
960
- open: state.isOpen
961
- }, /* @__PURE__ */ import_react25.default.createElement(TrayWrapper, {
962
- state,
963
- ...props,
964
- ref: trayRef
965
- }, children));
1017
+ return /* @__PURE__ */ import_react25.default.createElement(Overlay, { open: state.isOpen }, /* @__PURE__ */ import_react25.default.createElement(TrayWrapper, { state, ...props, ref: trayRef }, children));
966
1018
  }
967
1019
  );
968
1020
  var TrayWrapper = (0, import_react26.forwardRef)(
@@ -975,23 +1027,18 @@ var TrayWrapper = (0, import_react26.forwardRef)(
975
1027
  state,
976
1028
  ref
977
1029
  );
978
- return /* @__PURE__ */ import_react25.default.createElement(import_focus5.FocusScope, {
979
- contain: true,
980
- restoreFocus: true,
981
- autoFocus: true
982
- }, /* @__PURE__ */ import_react25.default.createElement(Underlay, {
983
- ...underlayProps,
984
- variant: "modal"
985
- }, /* @__PURE__ */ import_react25.default.createElement(import_system14.Box, {
986
- ...modalProps,
987
- ref,
988
- __baseCSS: { position: "absolute", width: "100%", bottom: 0 },
989
- "data-testid": "tray"
990
- }, /* @__PURE__ */ import_react25.default.createElement(import_overlays4.DismissButton, {
991
- onDismiss: state.close
992
- }), children, /* @__PURE__ */ import_react25.default.createElement(import_overlays4.DismissButton, {
993
- onDismiss: state.close
994
- }))));
1030
+ return /* @__PURE__ */ import_react25.default.createElement(import_focus5.FocusScope, { contain: true, restoreFocus: true, autoFocus: true }, /* @__PURE__ */ import_react25.default.createElement(Underlay, { ...underlayProps, variant: "modal" }, /* @__PURE__ */ import_react25.default.createElement(
1031
+ import_system14.Box,
1032
+ {
1033
+ ...modalProps,
1034
+ ref,
1035
+ __baseCSS: { position: "absolute", width: "100%", bottom: 0 },
1036
+ "data-testid": "tray"
1037
+ },
1038
+ /* @__PURE__ */ import_react25.default.createElement(import_overlays4.DismissButton, { onDismiss: state.close }),
1039
+ children,
1040
+ /* @__PURE__ */ import_react25.default.createElement(import_overlays4.DismissButton, { onDismiss: state.close })
1041
+ )));
995
1042
  }
996
1043
  );
997
1044
 
@@ -1005,25 +1052,56 @@ var DialogTrigger = ({
1005
1052
  const dialogTriggerRef = (0, import_react27.useRef)(null);
1006
1053
  const state = (0, import_overlays5.useOverlayTriggerState)({});
1007
1054
  const ctx = { open: state.isOpen, close: state.close };
1008
- return /* @__PURE__ */ import_react27.default.createElement(DialogContext.Provider, {
1009
- value: ctx
1010
- }, /* @__PURE__ */ import_react27.default.createElement(import_interactions3.PressResponder, {
1011
- ref: dialogTriggerRef,
1012
- isPressed: state.isOpen,
1013
- onPress: state.toggle
1014
- }, dialogTrigger), /* @__PURE__ */ import_react27.default.createElement(Overlay, {
1015
- open: state.isOpen
1016
- }, /* @__PURE__ */ import_react27.default.createElement(Modal, {
1017
- open: state.isOpen,
1018
- onClose: state.close,
1019
- dismissable,
1020
- keyboardDismissable
1021
- }, dialog)));
1055
+ return /* @__PURE__ */ import_react27.default.createElement(DialogContext.Provider, { value: ctx }, /* @__PURE__ */ import_react27.default.createElement(
1056
+ import_interactions3.PressResponder,
1057
+ {
1058
+ ref: dialogTriggerRef,
1059
+ isPressed: state.isOpen,
1060
+ onPress: state.toggle
1061
+ },
1062
+ dialogTrigger
1063
+ ), /* @__PURE__ */ import_react27.default.createElement(Overlay, { open: state.isOpen }, /* @__PURE__ */ import_react27.default.createElement(
1064
+ Modal,
1065
+ {
1066
+ open: state.isOpen,
1067
+ onClose: state.close,
1068
+ dismissable,
1069
+ keyboardDismissable
1070
+ },
1071
+ dialog
1072
+ )));
1073
+ };
1074
+
1075
+ // src/Dialog/DialogController.tsx
1076
+ var import_overlays6 = require("@react-stately/overlays");
1077
+ var import_react28 = __toESM(require("react"));
1078
+ var DialogController = ({
1079
+ children,
1080
+ dismissable = true,
1081
+ keyboardDismissable = true,
1082
+ open,
1083
+ onOpenChange
1084
+ }) => {
1085
+ const state = (0, import_overlays6.useOverlayTriggerState)({
1086
+ isOpen: open,
1087
+ onOpenChange
1088
+ });
1089
+ const ctx = { open: state.isOpen, close: state.close };
1090
+ return /* @__PURE__ */ import_react28.default.createElement(DialogContext.Provider, { value: ctx }, /* @__PURE__ */ import_react28.default.createElement(Overlay, { open: state.isOpen }, /* @__PURE__ */ import_react28.default.createElement(
1091
+ Modal,
1092
+ {
1093
+ open: state.isOpen,
1094
+ onClose: state.close,
1095
+ dismissable,
1096
+ keyboardDismissable
1097
+ },
1098
+ children
1099
+ )));
1022
1100
  };
1023
1101
 
1024
1102
  // src/Dialog/Dialog.tsx
1025
1103
  var CloseButton = ({ css }) => {
1026
- const ref = (0, import_react28.useRef)(null);
1104
+ const ref = (0, import_react29.useRef)(null);
1027
1105
  const { close } = useDialogContext();
1028
1106
  const { buttonProps } = (0, import_button2.useButton)(
1029
1107
  {
@@ -1031,35 +1109,37 @@ var CloseButton = ({ css }) => {
1031
1109
  },
1032
1110
  ref
1033
1111
  );
1034
- return /* @__PURE__ */ import_react28.default.createElement(import_system15.Box, {
1035
- css: { display: "flex", justifyContent: "flex-end" }
1036
- }, /* @__PURE__ */ import_react28.default.createElement(import_system15.Box, {
1037
- as: "button",
1038
- __baseCSS: {
1039
- outline: "none",
1040
- border: "none",
1041
- cursor: "pointer",
1042
- height: 16,
1043
- width: 16,
1044
- lineHeight: 1,
1045
- p: 0
1112
+ return /* @__PURE__ */ import_react29.default.createElement(import_system15.Box, { css: { display: "flex", justifyContent: "flex-end" } }, /* @__PURE__ */ import_react29.default.createElement(
1113
+ import_system15.Box,
1114
+ {
1115
+ as: "button",
1116
+ __baseCSS: {
1117
+ outline: "none",
1118
+ border: "none",
1119
+ cursor: "pointer",
1120
+ height: 16,
1121
+ width: 16,
1122
+ lineHeight: 1,
1123
+ p: 0
1124
+ },
1125
+ css,
1126
+ ref,
1127
+ ...buttonProps
1046
1128
  },
1047
- css,
1048
- ref,
1049
- ...buttonProps
1050
- }, /* @__PURE__ */ import_react28.default.createElement("svg", {
1051
- viewBox: "0 0 20 20",
1052
- fill: "currentColor"
1053
- }, /* @__PURE__ */ import_react28.default.createElement("path", {
1054
- fillRule: "evenodd",
1055
- clipRule: "evenodd",
1056
- d: "M4.293 4.293a1 1 0 011.414 0L10 8.586l4.293-4.293a1 1 0 111.414 1.414L11.414 10l4.293 4.293a1 1 0 01-1.414 1.414L10 11.414l-4.293 4.293a1 1 0 01-1.414-1.414L8.586 10 4.293 5.707a1 1 0 010-1.414z"
1057
- }))));
1129
+ /* @__PURE__ */ import_react29.default.createElement("svg", { viewBox: "0 0 20 20", fill: "currentColor" }, /* @__PURE__ */ import_react29.default.createElement(
1130
+ "path",
1131
+ {
1132
+ fillRule: "evenodd",
1133
+ clipRule: "evenodd",
1134
+ d: "M4.293 4.293a1 1 0 011.414 0L10 8.586l4.293-4.293a1 1 0 111.414 1.414L11.414 10l4.293 4.293a1 1 0 01-1.414 1.414L10 11.414l-4.293 4.293a1 1 0 01-1.414-1.414L8.586 10 4.293 5.707a1 1 0 010-1.414z"
1135
+ }
1136
+ ))
1137
+ ));
1058
1138
  };
1059
1139
  var addTitleProps = (children, titleProps) => {
1060
- const childs = import_react28.default.Children.toArray(children);
1140
+ const childs = import_react29.default.Children.toArray(children);
1061
1141
  const titleIndex = childs.findIndex(
1062
- (child) => import_react28.default.isValidElement(child) && (child.type === Header || child.type === Headline)
1142
+ (child) => import_react29.default.isValidElement(child) && (child.type === Header || child.type === Headline)
1063
1143
  );
1064
1144
  if (titleIndex < 0) {
1065
1145
  console.warn(
@@ -1067,7 +1147,7 @@ var addTitleProps = (children, titleProps) => {
1067
1147
  );
1068
1148
  return children;
1069
1149
  }
1070
- const titleChild = import_react28.default.cloneElement(
1150
+ const titleChild = import_react29.default.cloneElement(
1071
1151
  childs[titleIndex],
1072
1152
  titleProps
1073
1153
  );
@@ -1081,7 +1161,7 @@ var Dialog = ({
1081
1161
  closeButton,
1082
1162
  ...props
1083
1163
  }) => {
1084
- const ref = (0, import_react28.useRef)(null);
1164
+ const ref = (0, import_react29.useRef)(null);
1085
1165
  const { close } = useDialogContext();
1086
1166
  const { dialogProps, titleProps } = (0, import_dialog.useDialog)(props, ref);
1087
1167
  const styles = (0, import_system15.useComponentStyles)(
@@ -1089,44 +1169,31 @@ var Dialog = ({
1089
1169
  { variant, size },
1090
1170
  { parts: ["container", "closeButton"] }
1091
1171
  );
1092
- return /* @__PURE__ */ import_react28.default.createElement(import_system15.Box, {
1093
- __baseCSS: { bg: "#fff" },
1094
- css: styles.container,
1095
- ...dialogProps
1096
- }, closeButton && /* @__PURE__ */ import_react28.default.createElement(CloseButton, {
1097
- css: styles.closeButton
1098
- }), typeof children === "function" ? children({ close, titleProps }) : props["aria-labelledby"] ? children : addTitleProps(children, titleProps));
1172
+ return /* @__PURE__ */ import_react29.default.createElement(import_system15.Box, { __baseCSS: { bg: "#fff" }, css: styles.container, ...dialogProps }, closeButton && /* @__PURE__ */ import_react29.default.createElement(CloseButton, { css: styles.closeButton }), typeof children === "function" ? children({ close, titleProps }) : props["aria-labelledby"] ? children : addTitleProps(children, titleProps));
1099
1173
  };
1100
1174
  Dialog.Trigger = DialogTrigger;
1175
+ Dialog.Controller = DialogController;
1101
1176
 
1102
1177
  // src/Divider/Divider.tsx
1103
- var import_react29 = __toESM(require("react"));
1178
+ var import_react30 = __toESM(require("react"));
1104
1179
  var import_separator = require("@react-aria/separator");
1105
1180
  var import_system16 = require("@marigold/system");
1106
1181
  var Divider = ({ variant, ...props }) => {
1107
1182
  const { separatorProps } = (0, import_separator.useSeparator)(props);
1108
1183
  const styles = (0, import_system16.useComponentStyles)("Divider", { variant });
1109
- return /* @__PURE__ */ import_react29.default.createElement(import_system16.Box, {
1110
- css: styles,
1111
- ...props,
1112
- ...separatorProps
1113
- });
1184
+ return /* @__PURE__ */ import_react30.default.createElement(import_system16.Box, { css: styles, ...props, ...separatorProps });
1114
1185
  };
1115
1186
 
1116
1187
  // src/Footer/Footer.tsx
1117
- var import_react30 = __toESM(require("react"));
1188
+ var import_react31 = __toESM(require("react"));
1118
1189
  var import_system17 = require("@marigold/system");
1119
1190
  var Footer = ({ children, variant, size, ...props }) => {
1120
1191
  const styles = (0, import_system17.useComponentStyles)("Footer", { variant, size });
1121
- return /* @__PURE__ */ import_react30.default.createElement(import_system.Box, {
1122
- as: "footer",
1123
- ...props,
1124
- css: styles
1125
- }, children);
1192
+ return /* @__PURE__ */ import_react31.default.createElement(import_system.Box, { as: "footer", ...props, css: styles }, children);
1126
1193
  };
1127
1194
 
1128
1195
  // src/Image/Image.tsx
1129
- var import_react31 = __toESM(require("react"));
1196
+ var import_react32 = __toESM(require("react"));
1130
1197
  var import_system18 = require("@marigold/system");
1131
1198
  var import_system19 = require("@marigold/system");
1132
1199
  var Image = ({
@@ -1142,16 +1209,19 @@ var Image = ({
1142
1209
  objectFit: fit,
1143
1210
  objectPosition: position
1144
1211
  };
1145
- return /* @__PURE__ */ import_react31.default.createElement(import_system18.Box, {
1146
- ...props,
1147
- as: "img",
1148
- __baseCSS: fit ? { width: " 100%", height: "100%" } : {},
1149
- css
1150
- });
1212
+ return /* @__PURE__ */ import_react32.default.createElement(
1213
+ import_system18.Box,
1214
+ {
1215
+ ...props,
1216
+ as: "img",
1217
+ __baseCSS: fit ? { width: " 100%", height: "100%" } : {},
1218
+ css
1219
+ }
1220
+ );
1151
1221
  };
1152
1222
 
1153
1223
  // src/Inline/Inline.tsx
1154
- var import_react32 = __toESM(require("react"));
1224
+ var import_react33 = __toESM(require("react"));
1155
1225
  var ALIGNMENT_X = {
1156
1226
  left: "flex-start",
1157
1227
  center: "center",
@@ -1168,39 +1238,37 @@ var Inline = ({
1168
1238
  alignY = "center",
1169
1239
  children,
1170
1240
  ...props
1171
- }) => /* @__PURE__ */ import_react32.default.createElement(import_system.Box, {
1172
- css: {
1173
- display: "flex",
1174
- flexWrap: "wrap",
1175
- gap: space,
1176
- alignItems: ALIGNMENT_Y[alignY],
1177
- justifyContent: ALIGNMENT_X[alignX]
1241
+ }) => /* @__PURE__ */ import_react33.default.createElement(
1242
+ import_system.Box,
1243
+ {
1244
+ css: {
1245
+ display: "flex",
1246
+ flexWrap: "wrap",
1247
+ gap: space,
1248
+ alignItems: ALIGNMENT_Y[alignY],
1249
+ justifyContent: ALIGNMENT_X[alignX]
1250
+ },
1251
+ ...props
1178
1252
  },
1179
- ...props
1180
- }, children);
1253
+ children
1254
+ );
1181
1255
 
1182
1256
  // src/Input/Input.tsx
1183
- var import_react33 = __toESM(require("react"));
1257
+ var import_react34 = __toESM(require("react"));
1184
1258
  var import_system20 = require("@marigold/system");
1185
- var Input = (0, import_react33.forwardRef)(
1259
+ var Input = (0, import_react34.forwardRef)(
1186
1260
  ({ variant, size, type = "text", ...props }, ref) => {
1187
1261
  const styles = (0, import_system20.useComponentStyles)("Input", { variant, size });
1188
- return /* @__PURE__ */ import_react33.default.createElement(import_system20.Box, {
1189
- ...props,
1190
- ref,
1191
- as: "input",
1192
- type,
1193
- css: styles
1194
- });
1262
+ return /* @__PURE__ */ import_react34.default.createElement(import_system20.Box, { ...props, ref, as: "input", type, css: styles });
1195
1263
  }
1196
1264
  );
1197
1265
 
1198
1266
  // src/Link/Link.tsx
1199
- var import_react34 = __toESM(require("react"));
1267
+ var import_react35 = __toESM(require("react"));
1200
1268
  var import_link = require("@react-aria/link");
1201
1269
  var import_system21 = require("@marigold/system");
1202
1270
  var import_utils6 = require("@react-aria/utils");
1203
- var Link = (0, import_react34.forwardRef)(
1271
+ var Link = (0, import_react35.forwardRef)(
1204
1272
  ({
1205
1273
  as = "a",
1206
1274
  variant,
@@ -1221,36 +1289,36 @@ var Link = (0, import_react34.forwardRef)(
1221
1289
  linkRef
1222
1290
  );
1223
1291
  const styles = (0, import_system21.useComponentStyles)("Link", { variant, size });
1224
- return /* @__PURE__ */ import_react34.default.createElement(import_react34.default.Fragment, null, " ", /* @__PURE__ */ import_react34.default.createElement(import_system.Box, {
1225
- as,
1226
- role: "link",
1227
- css: styles,
1228
- ref: linkRef,
1229
- ...props,
1230
- ...linkProps
1231
- }, children), " ");
1292
+ return /* @__PURE__ */ import_react35.default.createElement(
1293
+ import_system.Box,
1294
+ {
1295
+ as,
1296
+ role: "link",
1297
+ css: styles,
1298
+ ref: linkRef,
1299
+ ...props,
1300
+ ...linkProps
1301
+ },
1302
+ children
1303
+ );
1232
1304
  }
1233
1305
  );
1234
1306
 
1235
1307
  // src/List/List.tsx
1236
- var import_react37 = __toESM(require("react"));
1308
+ var import_react38 = __toESM(require("react"));
1237
1309
  var import_system23 = require("@marigold/system");
1238
1310
 
1239
1311
  // src/List/Context.ts
1240
- var import_react35 = require("react");
1241
- var ListContext = (0, import_react35.createContext)({});
1242
- var useListContext = () => (0, import_react35.useContext)(ListContext);
1312
+ var import_react36 = require("react");
1313
+ var ListContext = (0, import_react36.createContext)({});
1314
+ var useListContext = () => (0, import_react36.useContext)(ListContext);
1243
1315
 
1244
1316
  // src/List/ListItem.tsx
1245
- var import_react36 = __toESM(require("react"));
1317
+ var import_react37 = __toESM(require("react"));
1246
1318
  var import_system22 = require("@marigold/system");
1247
1319
  var ListItem = ({ children, ...props }) => {
1248
1320
  const { styles } = useListContext();
1249
- return /* @__PURE__ */ import_react36.default.createElement(import_system22.Box, {
1250
- ...props,
1251
- as: "li",
1252
- css: styles
1253
- }, children);
1321
+ return /* @__PURE__ */ import_react37.default.createElement(import_system22.Box, { ...props, as: "li", css: styles }, children);
1254
1322
  };
1255
1323
 
1256
1324
  // src/List/List.tsx
@@ -1266,40 +1334,42 @@ var List = ({
1266
1334
  { variant, size },
1267
1335
  { parts: ["ul", "ol", "item"] }
1268
1336
  );
1269
- return /* @__PURE__ */ import_react37.default.createElement(import_system23.Box, {
1270
- ...props,
1271
- as,
1272
- css: styles[as]
1273
- }, /* @__PURE__ */ import_react37.default.createElement(ListContext.Provider, {
1274
- value: { styles: styles.item }
1275
- }, children));
1337
+ return /* @__PURE__ */ import_react38.default.createElement(import_system23.Box, { ...props, as, css: styles[as] }, /* @__PURE__ */ import_react38.default.createElement(ListContext.Provider, { value: { styles: styles.item } }, children));
1276
1338
  };
1277
1339
  List.Item = ListItem;
1278
1340
 
1279
1341
  // src/Menu/Menu.tsx
1280
- var import_react41 = __toESM(require("react"));
1342
+ var import_react42 = __toESM(require("react"));
1281
1343
  var import_menu4 = require("@react-aria/menu");
1282
1344
  var import_collections = require("@react-stately/collections");
1283
1345
  var import_tree = require("@react-stately/tree");
1284
1346
  var import_system26 = require("@marigold/system");
1285
1347
 
1286
1348
  // src/Menu/Context.ts
1287
- var import_react38 = require("react");
1288
- var MenuContext = (0, import_react38.createContext)({});
1289
- var useMenuContext = () => (0, import_react38.useContext)(MenuContext);
1349
+ var import_react39 = require("react");
1350
+ var MenuContext = (0, import_react39.createContext)({});
1351
+ var useMenuContext = () => (0, import_react39.useContext)(MenuContext);
1290
1352
 
1291
1353
  // src/Menu/MenuTrigger.tsx
1292
- var import_react39 = __toESM(require("react"));
1354
+ var import_react40 = __toESM(require("react"));
1293
1355
  var import_menu = require("@react-stately/menu");
1294
1356
  var import_interactions4 = require("@react-aria/interactions");
1295
1357
  var import_menu2 = require("@react-aria/menu");
1296
1358
  var import_utils7 = require("@react-aria/utils");
1297
1359
  var import_system24 = require("@marigold/system");
1298
- var MenuTrigger = ({ disabled, children }) => {
1299
- const [menuTrigger, menu] = import_react39.default.Children.toArray(children);
1300
- const menuTriggerRef = (0, import_react39.useRef)(null);
1360
+ var MenuTrigger = ({
1361
+ disabled,
1362
+ open,
1363
+ onOpenChange,
1364
+ children
1365
+ }) => {
1366
+ const [menuTrigger, menu] = import_react40.default.Children.toArray(children);
1367
+ const menuTriggerRef = (0, import_react40.useRef)(null);
1301
1368
  const menuRef = (0, import_utils7.useObjectRef)();
1302
- const state = (0, import_menu.useMenuTriggerState)({});
1369
+ const state = (0, import_menu.useMenuTriggerState)({
1370
+ isOpen: open,
1371
+ onOpenChange
1372
+ });
1303
1373
  const { menuTriggerProps, menuProps } = (0, import_menu2.useMenuTrigger)(
1304
1374
  { trigger: "press", isDisabled: disabled },
1305
1375
  state,
@@ -1313,29 +1383,25 @@ var MenuTrigger = ({ disabled, children }) => {
1313
1383
  autoFocus: state.focusStrategy
1314
1384
  };
1315
1385
  const isSmallScreen = (0, import_system24.useResponsiveValue)([true, false, false], 2);
1316
- return /* @__PURE__ */ import_react39.default.createElement(MenuContext.Provider, {
1317
- value: menuContext
1318
- }, /* @__PURE__ */ import_react39.default.createElement(import_interactions4.PressResponder, {
1319
- ...menuTriggerProps,
1320
- ref: menuTriggerRef,
1321
- isPressed: state.isOpen
1322
- }, menuTrigger), isSmallScreen ? /* @__PURE__ */ import_react39.default.createElement(Tray, {
1323
- state
1324
- }, menu) : /* @__PURE__ */ import_react39.default.createElement(Popover, {
1325
- triggerRef: menuTriggerRef,
1326
- scrollRef: menuRef,
1327
- state
1328
- }, menu));
1386
+ return /* @__PURE__ */ import_react40.default.createElement(MenuContext.Provider, { value: menuContext }, /* @__PURE__ */ import_react40.default.createElement(
1387
+ import_interactions4.PressResponder,
1388
+ {
1389
+ ...menuTriggerProps,
1390
+ ref: menuTriggerRef,
1391
+ isPressed: state.isOpen
1392
+ },
1393
+ menuTrigger
1394
+ ), isSmallScreen ? /* @__PURE__ */ import_react40.default.createElement(Tray, { state }, menu) : /* @__PURE__ */ import_react40.default.createElement(Popover, { triggerRef: menuTriggerRef, scrollRef: menuRef, state }, menu));
1329
1395
  };
1330
1396
 
1331
1397
  // src/Menu/MenuItem.tsx
1332
- var import_react40 = __toESM(require("react"));
1398
+ var import_react41 = __toESM(require("react"));
1333
1399
  var import_focus6 = require("@react-aria/focus");
1334
1400
  var import_menu3 = require("@react-aria/menu");
1335
1401
  var import_utils8 = require("@react-aria/utils");
1336
1402
  var import_system25 = require("@marigold/system");
1337
1403
  var MenuItem = ({ item, state, onAction, css }) => {
1338
- const ref = (0, import_react40.useRef)(null);
1404
+ const ref = (0, import_react41.useRef)(null);
1339
1405
  const { onClose } = useMenuContext();
1340
1406
  const { menuItemProps } = (0, import_menu3.useMenuItem)(
1341
1407
  {
@@ -1351,18 +1417,22 @@ var MenuItem = ({ item, state, onAction, css }) => {
1351
1417
  focus: isFocusVisible
1352
1418
  });
1353
1419
  const { onPointerUp, ...props } = menuItemProps;
1354
- return /* @__PURE__ */ import_react40.default.createElement(import_system25.Box, {
1355
- as: "li",
1356
- ref,
1357
- __baseCSS: {
1358
- "&:focus": {
1359
- outline: 0
1360
- }
1420
+ return /* @__PURE__ */ import_react41.default.createElement(
1421
+ import_system25.Box,
1422
+ {
1423
+ as: "li",
1424
+ ref,
1425
+ __baseCSS: {
1426
+ "&:focus": {
1427
+ outline: 0
1428
+ }
1429
+ },
1430
+ css,
1431
+ ...(0, import_utils8.mergeProps)(props, { onPointerDown: onPointerUp }, focusProps),
1432
+ ...stateProps
1361
1433
  },
1362
- css,
1363
- ...(0, import_utils8.mergeProps)(props, { onPointerDown: onPointerUp }, focusProps),
1364
- ...stateProps
1365
- }, item.rendered);
1434
+ item.rendered
1435
+ );
1366
1436
  };
1367
1437
 
1368
1438
  // src/Menu/Menu.tsx
@@ -1370,7 +1440,7 @@ var import_utils9 = require("@react-aria/utils");
1370
1440
  var Menu = ({ variant, size, ...props }) => {
1371
1441
  const { ref: scrollRef, ...menuContext } = useMenuContext();
1372
1442
  const ownProps = { ...props, ...menuContext };
1373
- const ref = (0, import_react41.useRef)(null);
1443
+ const ref = (0, import_react42.useRef)(null);
1374
1444
  const state = (0, import_tree.useTreeState)({ ...ownProps, selectionMode: "none" });
1375
1445
  const { menuProps } = (0, import_menu4.useMenu)(ownProps, state, ref);
1376
1446
  (0, import_utils9.useSyncRef)({ ref: scrollRef }, ref);
@@ -1379,30 +1449,44 @@ var Menu = ({ variant, size, ...props }) => {
1379
1449
  { variant, size },
1380
1450
  { parts: ["container", "item"] }
1381
1451
  );
1382
- return /* @__PURE__ */ import_react41.default.createElement(import_system26.Box, {
1383
- as: "ul",
1384
- ref,
1385
- __baseCSS: {
1386
- listStyle: "none",
1387
- p: 0,
1388
- overflowWrap: "break-word"
1452
+ return /* @__PURE__ */ import_react42.default.createElement(
1453
+ import_system26.Box,
1454
+ {
1455
+ as: "ul",
1456
+ ref,
1457
+ __baseCSS: {
1458
+ listStyle: "none",
1459
+ p: 0,
1460
+ overflowWrap: "break-word"
1461
+ },
1462
+ css: styles.container,
1463
+ ...menuProps
1389
1464
  },
1390
- css: styles.container,
1391
- ...menuProps
1392
- }, [...state.collection].map((item) => /* @__PURE__ */ import_react41.default.createElement(MenuItem, {
1393
- key: item.key,
1394
- item,
1395
- state,
1396
- onAction: props.onSelect,
1397
- css: styles.item
1398
- })));
1465
+ [...state.collection].map((item) => /* @__PURE__ */ import_react42.default.createElement(
1466
+ MenuItem,
1467
+ {
1468
+ key: item.key,
1469
+ item,
1470
+ state,
1471
+ onAction: props.onAction,
1472
+ css: styles.item
1473
+ }
1474
+ ))
1475
+ );
1399
1476
  };
1400
1477
  Menu.Trigger = MenuTrigger;
1401
1478
  Menu.Item = import_collections.Item;
1402
1479
 
1403
- // src/Message/Message.tsx
1404
- var import_react42 = __toESM(require("react"));
1480
+ // src/Menu/ActionMenu.tsx
1481
+ var import_react43 = __toESM(require("react"));
1405
1482
  var import_system27 = require("@marigold/system");
1483
+ var ActionMenu = (props) => {
1484
+ return /* @__PURE__ */ import_react43.default.createElement(Menu.Trigger, null, /* @__PURE__ */ import_react43.default.createElement(Button, { variant: "menu", size: "small" }, /* @__PURE__ */ import_react43.default.createElement(import_system27.SVG, { viewBox: "0 0 24 24" }, /* @__PURE__ */ import_react43.default.createElement("path", { d: "M12.0117 7.47656C13.2557 7.47656 14.2734 6.45879 14.2734 5.21484C14.2734 3.9709 13.2557 2.95312 12.0117 2.95312C10.7678 2.95312 9.75 3.9709 9.75 5.21484C9.75 6.45879 10.7678 7.47656 12.0117 7.47656ZM12.0117 9.73828C10.7678 9.73828 9.75 10.7561 9.75 12C9.75 13.2439 10.7678 14.2617 12.0117 14.2617C13.2557 14.2617 14.2734 13.2439 14.2734 12C14.2734 10.7561 13.2557 9.73828 12.0117 9.73828ZM12.0117 16.5234C10.7678 16.5234 9.75 17.5412 9.75 18.7852C9.75 20.0291 10.7678 21.0469 12.0117 21.0469C13.2557 21.0469 14.2734 20.0291 14.2734 18.7852C14.2734 17.5412 13.2557 16.5234 12.0117 16.5234Z" }))), /* @__PURE__ */ import_react43.default.createElement(Menu, { ...props }));
1485
+ };
1486
+
1487
+ // src/Message/Message.tsx
1488
+ var import_react44 = __toESM(require("react"));
1489
+ var import_system28 = require("@marigold/system");
1406
1490
  var Message = ({
1407
1491
  messageTitle,
1408
1492
  variant = "info",
@@ -1410,7 +1494,7 @@ var Message = ({
1410
1494
  children,
1411
1495
  ...props
1412
1496
  }) => {
1413
- const styles = (0, import_system27.useComponentStyles)(
1497
+ const styles = (0, import_system28.useComponentStyles)(
1414
1498
  "Message",
1415
1499
  {
1416
1500
  variant,
@@ -1418,105 +1502,106 @@ var Message = ({
1418
1502
  },
1419
1503
  { parts: ["container", "icon", "title", "content"] }
1420
1504
  );
1421
- var icon = /* @__PURE__ */ import_react42.default.createElement("svg", {
1422
- viewBox: "0 0 24 24"
1423
- }, /* @__PURE__ */ import_react42.default.createElement("path", {
1424
- d: "M12 2.85938C6.95437 2.85938 2.85938 6.95437 2.85938 12C2.85938 17.0456 6.95437 21.1406 12 21.1406C17.0456 21.1406 21.1406 17.0456 21.1406 12C21.1406 6.95437 17.0456 2.85938 12 2.85938ZM12.7875 15.9374H11.2125V11.2124H12.7875V15.9374ZM12.7875 9.6375H11.2125V8.0625H12.7875V9.6375Z"
1425
- }));
1505
+ var icon = /* @__PURE__ */ import_react44.default.createElement("svg", { viewBox: "0 0 24 24" }, /* @__PURE__ */ import_react44.default.createElement("path", { d: "M12 2.85938C6.95437 2.85938 2.85938 6.95437 2.85938 12C2.85938 17.0456 6.95437 21.1406 12 21.1406C17.0456 21.1406 21.1406 17.0456 21.1406 12C21.1406 6.95437 17.0456 2.85938 12 2.85938ZM12.7875 15.9374H11.2125V11.2124H12.7875V15.9374ZM12.7875 9.6375H11.2125V8.0625H12.7875V9.6375Z" }));
1426
1506
  if (variant === "warning") {
1427
- icon = /* @__PURE__ */ import_react42.default.createElement("svg", {
1428
- viewBox: "0 0 24 24"
1429
- }, /* @__PURE__ */ import_react42.default.createElement("path", {
1430
- d: "M19.2 3H4.8C3.81 3 3.009 3.81 3.009 4.8L3 21L6.6 17.4H19.2C20.19 17.4 21 16.59 21 15.6V4.8C21 3.81 20.19 3 19.2 3ZM12.9 13.8H11.1V12H12.9V13.8ZM12.9 10.2001H11.1V6.60008H12.9V10.2001Z"
1431
- }));
1507
+ icon = /* @__PURE__ */ import_react44.default.createElement("svg", { viewBox: "0 0 24 24" }, /* @__PURE__ */ import_react44.default.createElement("path", { d: "M19.2 3H4.8C3.81 3 3.009 3.81 3.009 4.8L3 21L6.6 17.4H19.2C20.19 17.4 21 16.59 21 15.6V4.8C21 3.81 20.19 3 19.2 3ZM12.9 13.8H11.1V12H12.9V13.8ZM12.9 10.2001H11.1V6.60008H12.9V10.2001Z" }));
1432
1508
  }
1433
1509
  if (variant === "error") {
1434
- icon = /* @__PURE__ */ import_react42.default.createElement("svg", {
1435
- viewBox: "0 0 24 24"
1436
- }, /* @__PURE__ */ import_react42.default.createElement("path", {
1437
- d: "M2.25 20.3097H21.75L12 3.46875L2.25 20.3097ZM12.8864 17.2606H11.1136V15.4879H12.8864V17.2606ZM12.8864 13.7151H11.1136V10.1697H12.8864V13.7151Z"
1438
- }));
1510
+ icon = /* @__PURE__ */ import_react44.default.createElement("svg", { viewBox: "0 0 24 24" }, /* @__PURE__ */ import_react44.default.createElement("path", { d: "M2.25 20.3097H21.75L12 3.46875L2.25 20.3097ZM12.8864 17.2606H11.1136V15.4879H12.8864V17.2606ZM12.8864 13.7151H11.1136V10.1697H12.8864V13.7151Z" }));
1439
1511
  }
1440
- return /* @__PURE__ */ import_react42.default.createElement(import_system.Box, {
1441
- css: styles.container,
1442
- ...props
1443
- }, /* @__PURE__ */ import_react42.default.createElement(import_system.Box, {
1444
- __baseCSS: { display: "flex", alignItems: "top", gap: 4 }
1445
- }, /* @__PURE__ */ import_react42.default.createElement(import_system.Box, {
1446
- role: "presentation",
1447
- __baseCSS: { flex: "0 0 16px" },
1448
- css: styles.icon
1449
- }, icon), /* @__PURE__ */ import_react42.default.createElement(import_system.Box, {
1450
- css: styles.title
1451
- }, messageTitle)), /* @__PURE__ */ import_react42.default.createElement(import_system.Box, {
1452
- css: styles.content
1453
- }, children));
1512
+ return /* @__PURE__ */ import_react44.default.createElement(import_system.Box, { css: styles.container, ...props }, /* @__PURE__ */ import_react44.default.createElement(import_system.Box, { __baseCSS: { display: "flex", alignItems: "top", gap: 4 } }, /* @__PURE__ */ import_react44.default.createElement(
1513
+ import_system.Box,
1514
+ {
1515
+ role: "presentation",
1516
+ __baseCSS: { flex: "0 0 16px" },
1517
+ css: styles.icon
1518
+ },
1519
+ icon
1520
+ ), /* @__PURE__ */ import_react44.default.createElement(import_system.Box, { css: styles.title }, messageTitle)), /* @__PURE__ */ import_react44.default.createElement(import_system.Box, { css: styles.content }, children));
1454
1521
  };
1455
1522
 
1456
1523
  // src/NumberField/NumberField.tsx
1457
- var import_react44 = __toESM(require("react"));
1524
+ var import_react46 = __toESM(require("react"));
1458
1525
  var import_focus7 = require("@react-aria/focus");
1459
1526
  var import_interactions6 = require("@react-aria/interactions");
1460
1527
  var import_i18n = require("@react-aria/i18n");
1461
1528
  var import_numberfield = require("@react-aria/numberfield");
1462
1529
  var import_utils11 = require("@react-aria/utils");
1463
1530
  var import_numberfield2 = require("@react-stately/numberfield");
1464
- var import_system29 = require("@marigold/system");
1531
+ var import_system30 = require("@marigold/system");
1465
1532
 
1466
1533
  // src/NumberField/StepButton.tsx
1467
- var import_react43 = __toESM(require("react"));
1534
+ var import_react45 = __toESM(require("react"));
1468
1535
  var import_button3 = require("@react-aria/button");
1469
1536
  var import_interactions5 = require("@react-aria/interactions");
1470
1537
  var import_utils10 = require("@react-aria/utils");
1471
- var import_system28 = require("@marigold/system");
1472
- var Plus = () => /* @__PURE__ */ import_react43.default.createElement(import_system28.Box, {
1473
- as: "svg",
1474
- __baseCSS: { width: 16, height: 16 },
1475
- viewBox: "0 0 20 20",
1476
- fill: "currentColor"
1477
- }, /* @__PURE__ */ import_react43.default.createElement("path", {
1478
- fillRule: "evenodd",
1479
- clipRule: "evenodd",
1480
- 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"
1481
- }));
1482
- var Minus = () => /* @__PURE__ */ import_react43.default.createElement(import_system28.Box, {
1483
- as: "svg",
1484
- __baseCSS: { width: 16, height: 16 },
1485
- viewBox: "0 0 20 20",
1486
- fill: "currentColor"
1487
- }, /* @__PURE__ */ import_react43.default.createElement("path", {
1488
- fillRule: "evenodd",
1489
- clipRule: "evenodd",
1490
- d: "M3 10a1 1 0 011-1h12a1 1 0 110 2H4a1 1 0 01-1-1z"
1491
- }));
1538
+ var import_system29 = require("@marigold/system");
1539
+ var Plus = () => /* @__PURE__ */ import_react45.default.createElement(
1540
+ import_system29.Box,
1541
+ {
1542
+ as: "svg",
1543
+ __baseCSS: { width: 16, height: 16 },
1544
+ viewBox: "0 0 20 20",
1545
+ fill: "currentColor"
1546
+ },
1547
+ /* @__PURE__ */ import_react45.default.createElement(
1548
+ "path",
1549
+ {
1550
+ fillRule: "evenodd",
1551
+ clipRule: "evenodd",
1552
+ 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"
1553
+ }
1554
+ )
1555
+ );
1556
+ var Minus = () => /* @__PURE__ */ import_react45.default.createElement(
1557
+ import_system29.Box,
1558
+ {
1559
+ as: "svg",
1560
+ __baseCSS: { width: 16, height: 16 },
1561
+ viewBox: "0 0 20 20",
1562
+ fill: "currentColor"
1563
+ },
1564
+ /* @__PURE__ */ import_react45.default.createElement(
1565
+ "path",
1566
+ {
1567
+ fillRule: "evenodd",
1568
+ clipRule: "evenodd",
1569
+ d: "M3 10a1 1 0 011-1h12a1 1 0 110 2H4a1 1 0 01-1-1z"
1570
+ }
1571
+ )
1572
+ );
1492
1573
  var StepButton = ({ direction, css, ...props }) => {
1493
- const ref = (0, import_react43.useRef)(null);
1574
+ const ref = (0, import_react45.useRef)(null);
1494
1575
  const { buttonProps, isPressed } = (0, import_button3.useButton)(
1495
1576
  { ...props, elementType: "div" },
1496
1577
  ref
1497
1578
  );
1498
1579
  const { hoverProps, isHovered } = (0, import_interactions5.useHover)(props);
1499
- const stateProps = (0, import_system28.useStateProps)({
1580
+ const stateProps = (0, import_system29.useStateProps)({
1500
1581
  active: isPressed,
1501
1582
  hover: isHovered,
1502
1583
  disabled: props.isDisabled
1503
1584
  });
1504
1585
  const Icon3 = direction === "up" ? Plus : Minus;
1505
- return /* @__PURE__ */ import_react43.default.createElement(import_system28.Box, {
1506
- __baseCSS: {
1507
- display: "flex",
1508
- alignItems: "center",
1509
- justifyContent: "center",
1510
- cursor: props.isDisabled ? "not-allowed" : "pointer"
1586
+ return /* @__PURE__ */ import_react45.default.createElement(
1587
+ import_system29.Box,
1588
+ {
1589
+ __baseCSS: {
1590
+ display: "flex",
1591
+ alignItems: "center",
1592
+ justifyContent: "center",
1593
+ cursor: props.isDisabled ? "not-allowed" : "pointer"
1594
+ },
1595
+ css,
1596
+ ...(0, import_utils10.mergeProps)(buttonProps, hoverProps),
1597
+ ...stateProps
1511
1598
  },
1512
- css,
1513
- ...(0, import_utils10.mergeProps)(buttonProps, hoverProps),
1514
- ...stateProps
1515
- }, /* @__PURE__ */ import_react43.default.createElement(Icon3, null));
1599
+ /* @__PURE__ */ import_react45.default.createElement(Icon3, null)
1600
+ );
1516
1601
  };
1517
1602
 
1518
1603
  // src/NumberField/NumberField.tsx
1519
- var NumberField = (0, import_react44.forwardRef)(
1604
+ var NumberField = (0, import_react46.forwardRef)(
1520
1605
  ({
1521
1606
  variant,
1522
1607
  size,
@@ -1554,70 +1639,90 @@ var NumberField = (0, import_react44.forwardRef)(
1554
1639
  isTextInput: true,
1555
1640
  autoFocus: props.autoFocus
1556
1641
  });
1557
- const styles = (0, import_system29.useComponentStyles)(
1642
+ const styles = (0, import_system30.useComponentStyles)(
1558
1643
  "NumberField",
1559
1644
  { variant, size },
1560
1645
  { parts: ["group", "stepper"] }
1561
1646
  );
1562
- const stateProps = (0, import_system29.useStateProps)({
1647
+ const stateProps = (0, import_system30.useStateProps)({
1563
1648
  hover: isHovered,
1564
1649
  focus: isFocused,
1565
1650
  disabled,
1566
1651
  readOnly,
1567
1652
  error
1568
1653
  });
1569
- return /* @__PURE__ */ import_react44.default.createElement(FieldBase, {
1570
- label: props.label,
1571
- labelProps,
1572
- required,
1573
- description: props.description,
1574
- descriptionProps,
1575
- error,
1576
- errorMessage: props.errorMessage,
1577
- errorMessageProps,
1578
- stateProps,
1579
- variant,
1580
- size,
1581
- width
1582
- }, /* @__PURE__ */ import_react44.default.createElement(import_system29.Box, {
1583
- "data-group": true,
1584
- __baseCSS: {
1585
- display: "flex",
1586
- alignItems: "stretch",
1587
- "> input": {
1588
- flex: 1,
1589
- minWidth: 0
1590
- }
1654
+ return /* @__PURE__ */ import_react46.default.createElement(
1655
+ FieldBase,
1656
+ {
1657
+ label: props.label,
1658
+ labelProps,
1659
+ required,
1660
+ description: props.description,
1661
+ descriptionProps,
1662
+ error,
1663
+ errorMessage: props.errorMessage,
1664
+ errorMessageProps,
1665
+ stateProps,
1666
+ variant,
1667
+ size,
1668
+ width
1591
1669
  },
1592
- css: styles.group,
1593
- ...(0, import_utils11.mergeProps)(groupProps, focusProps, hoverProps),
1594
- ...stateProps
1595
- }, showStepper && /* @__PURE__ */ import_react44.default.createElement(StepButton, {
1596
- direction: "down",
1597
- css: styles.stepper,
1598
- ...decrementButtonProps
1599
- }), /* @__PURE__ */ import_react44.default.createElement(Input, {
1600
- ref: inputRef,
1601
- variant,
1602
- size,
1603
- ...inputProps,
1604
- ...stateProps
1605
- }), showStepper && /* @__PURE__ */ import_react44.default.createElement(StepButton, {
1606
- direction: "up",
1607
- css: styles.stepper,
1608
- ...incrementButtonProps
1609
- })));
1670
+ /* @__PURE__ */ import_react46.default.createElement(
1671
+ import_system30.Box,
1672
+ {
1673
+ "data-group": true,
1674
+ __baseCSS: {
1675
+ display: "flex",
1676
+ alignItems: "stretch",
1677
+ "> input": {
1678
+ flex: 1,
1679
+ minWidth: 0
1680
+ // Override browser default
1681
+ }
1682
+ },
1683
+ css: styles.group,
1684
+ ...(0, import_utils11.mergeProps)(groupProps, focusProps, hoverProps),
1685
+ ...stateProps
1686
+ },
1687
+ showStepper && /* @__PURE__ */ import_react46.default.createElement(
1688
+ StepButton,
1689
+ {
1690
+ direction: "down",
1691
+ css: styles.stepper,
1692
+ ...decrementButtonProps
1693
+ }
1694
+ ),
1695
+ /* @__PURE__ */ import_react46.default.createElement(
1696
+ Input,
1697
+ {
1698
+ ref: inputRef,
1699
+ variant,
1700
+ size,
1701
+ ...inputProps,
1702
+ ...stateProps
1703
+ }
1704
+ ),
1705
+ showStepper && /* @__PURE__ */ import_react46.default.createElement(
1706
+ StepButton,
1707
+ {
1708
+ direction: "up",
1709
+ css: styles.stepper,
1710
+ ...incrementButtonProps
1711
+ }
1712
+ )
1713
+ )
1714
+ );
1610
1715
  }
1611
1716
  );
1612
1717
 
1613
1718
  // src/Provider/index.ts
1614
- var import_system31 = require("@marigold/system");
1719
+ var import_system32 = require("@marigold/system");
1615
1720
  var import_ssr = require("@react-aria/ssr");
1616
1721
 
1617
1722
  // src/Provider/MarigoldProvider.tsx
1618
- var import_react45 = __toESM(require("react"));
1619
- var import_overlays6 = require("@react-aria/overlays");
1620
- var import_system30 = require("@marigold/system");
1723
+ var import_react47 = __toESM(require("react"));
1724
+ var import_overlays7 = require("@react-aria/overlays");
1725
+ var import_system31 = require("@marigold/system");
1621
1726
  function MarigoldProvider({
1622
1727
  children,
1623
1728
  theme,
@@ -1625,42 +1730,43 @@ function MarigoldProvider({
1625
1730
  normalizeDocument = true
1626
1731
  }) {
1627
1732
  var _a;
1628
- const outer = (0, import_system30.useTheme)();
1629
- const isTopLevel = outer.theme === import_system30.__defaultTheme;
1733
+ const outer = (0, import_system31.useTheme)();
1734
+ const isTopLevel = outer.theme === import_system31.__defaultTheme;
1630
1735
  if (((_a = outer.theme) == null ? void 0 : _a.root) && !isTopLevel && !selector) {
1631
1736
  throw new Error(
1632
1737
  `[MarigoldProvider] You cannot nest a MarigoldProvider inside another MarigoldProvider without a "selector"!
1633
1738
  Nested themes with a "root" property must specify a "selector" to prevent accidentally overriding global CSS`
1634
1739
  );
1635
1740
  }
1636
- return /* @__PURE__ */ import_react45.default.createElement(import_system30.ThemeProvider, {
1637
- theme
1638
- }, /* @__PURE__ */ import_react45.default.createElement(import_system30.Global, {
1639
- normalizeDocument: isTopLevel && normalizeDocument,
1640
- selector
1641
- }), isTopLevel ? /* @__PURE__ */ import_react45.default.createElement(import_overlays6.OverlayProvider, null, children) : children);
1741
+ return /* @__PURE__ */ import_react47.default.createElement(import_system31.ThemeProvider, { theme }, /* @__PURE__ */ import_react47.default.createElement(
1742
+ import_system31.Global,
1743
+ {
1744
+ normalizeDocument: isTopLevel && normalizeDocument,
1745
+ selector
1746
+ }
1747
+ ), isTopLevel ? /* @__PURE__ */ import_react47.default.createElement(import_overlays7.OverlayProvider, null, children) : children);
1642
1748
  }
1643
1749
 
1644
1750
  // src/Radio/Radio.tsx
1645
- var import_react48 = __toESM(require("react"));
1751
+ var import_react50 = __toESM(require("react"));
1646
1752
  var import_interactions7 = require("@react-aria/interactions");
1647
1753
  var import_focus8 = require("@react-aria/focus");
1648
1754
  var import_radio3 = require("@react-aria/radio");
1649
1755
  var import_utils12 = require("@react-aria/utils");
1650
- var import_system33 = require("@marigold/system");
1756
+ var import_system34 = require("@marigold/system");
1651
1757
 
1652
1758
  // src/Radio/Context.ts
1653
- var import_react46 = require("react");
1654
- var RadioGroupContext = (0, import_react46.createContext)(
1759
+ var import_react48 = require("react");
1760
+ var RadioGroupContext = (0, import_react48.createContext)(
1655
1761
  null
1656
1762
  );
1657
- var useRadioGroupContext = () => (0, import_react46.useContext)(RadioGroupContext);
1763
+ var useRadioGroupContext = () => (0, import_react48.useContext)(RadioGroupContext);
1658
1764
 
1659
1765
  // src/Radio/RadioGroup.tsx
1660
- var import_react47 = __toESM(require("react"));
1766
+ var import_react49 = __toESM(require("react"));
1661
1767
  var import_radio = require("@react-aria/radio");
1662
1768
  var import_radio2 = require("@react-stately/radio");
1663
- var import_system32 = require("@marigold/system");
1769
+ var import_system33 = require("@marigold/system");
1664
1770
  var RadioGroup = ({
1665
1771
  children,
1666
1772
  orientation = "vertical",
@@ -1680,64 +1786,67 @@ var RadioGroup = ({
1680
1786
  };
1681
1787
  const state = (0, import_radio2.useRadioGroupState)(props);
1682
1788
  const { radioGroupProps, labelProps, errorMessageProps, descriptionProps } = (0, import_radio.useRadioGroup)(props, state);
1683
- const stateProps = (0, import_system32.useStateProps)({
1789
+ const stateProps = (0, import_system33.useStateProps)({
1684
1790
  disabled,
1685
1791
  readOnly,
1686
1792
  error
1687
1793
  });
1688
- return /* @__PURE__ */ import_react47.default.createElement(FieldBase, {
1689
- width,
1690
- label: props.label,
1691
- labelProps: { as: "span", ...labelProps },
1692
- description: props.description,
1693
- descriptionProps,
1694
- error,
1695
- errorMessage: props.errorMessage,
1696
- errorMessageProps,
1697
- disabled,
1698
- stateProps,
1699
- required,
1700
- ...radioGroupProps
1701
- }, /* @__PURE__ */ import_react47.default.createElement(import_system32.Box, {
1702
- role: "presentation",
1703
- "data-orientation": orientation,
1704
- __baseCSS: {
1705
- display: "flex",
1706
- flexDirection: orientation === "vertical" ? "column" : "row",
1707
- alignItems: "start",
1708
- gap: orientation === "vertical" ? "0.5ch" : "1.5ch"
1709
- }
1710
- }, /* @__PURE__ */ import_react47.default.createElement(RadioGroupContext.Provider, {
1711
- value: { width, error, state }
1712
- }, children)));
1794
+ return /* @__PURE__ */ import_react49.default.createElement(
1795
+ FieldBase,
1796
+ {
1797
+ width,
1798
+ label: props.label,
1799
+ labelProps: { as: "span", ...labelProps },
1800
+ description: props.description,
1801
+ descriptionProps,
1802
+ error,
1803
+ errorMessage: props.errorMessage,
1804
+ errorMessageProps,
1805
+ disabled,
1806
+ stateProps,
1807
+ required,
1808
+ ...radioGroupProps
1809
+ },
1810
+ /* @__PURE__ */ import_react49.default.createElement(
1811
+ import_system33.Box,
1812
+ {
1813
+ role: "presentation",
1814
+ "data-orientation": orientation,
1815
+ __baseCSS: {
1816
+ display: "flex",
1817
+ flexDirection: orientation === "vertical" ? "column" : "row",
1818
+ alignItems: "start",
1819
+ gap: orientation === "vertical" ? "0.5ch" : "1.5ch"
1820
+ }
1821
+ },
1822
+ /* @__PURE__ */ import_react49.default.createElement(RadioGroupContext.Provider, { value: { width, error, state } }, children)
1823
+ )
1824
+ );
1713
1825
  };
1714
1826
 
1715
1827
  // src/Radio/Radio.tsx
1716
- var Dot = () => /* @__PURE__ */ import_react48.default.createElement("svg", {
1717
- viewBox: "0 0 6 6"
1718
- }, /* @__PURE__ */ import_react48.default.createElement("circle", {
1719
- fill: "currentColor",
1720
- cx: "3",
1721
- cy: "3",
1722
- r: "3"
1723
- }));
1724
- var Icon2 = ({ checked, css, ...props }) => /* @__PURE__ */ import_react48.default.createElement(import_system33.Box, {
1725
- "aria-hidden": "true",
1726
- __baseCSS: {
1727
- width: 16,
1728
- height: 16,
1729
- bg: "#fff",
1730
- border: "1px solid #000",
1731
- borderRadius: "50%",
1732
- display: "flex",
1733
- alignItems: "center",
1734
- justifyContent: "center",
1735
- p: 4
1828
+ var Dot = () => /* @__PURE__ */ import_react50.default.createElement("svg", { viewBox: "0 0 6 6" }, /* @__PURE__ */ import_react50.default.createElement("circle", { fill: "currentColor", cx: "3", cy: "3", r: "3" }));
1829
+ var Icon2 = ({ checked, css, ...props }) => /* @__PURE__ */ import_react50.default.createElement(
1830
+ import_system34.Box,
1831
+ {
1832
+ "aria-hidden": "true",
1833
+ __baseCSS: {
1834
+ width: 16,
1835
+ height: 16,
1836
+ bg: "#fff",
1837
+ border: "1px solid #000",
1838
+ borderRadius: "50%",
1839
+ display: "flex",
1840
+ alignItems: "center",
1841
+ justifyContent: "center",
1842
+ p: 4
1843
+ },
1844
+ css,
1845
+ ...props
1736
1846
  },
1737
- css,
1738
- ...props
1739
- }, checked ? /* @__PURE__ */ import_react48.default.createElement(Dot, null) : null);
1740
- var Radio = (0, import_react48.forwardRef)(
1847
+ checked ? /* @__PURE__ */ import_react50.default.createElement(Dot, null) : null
1848
+ );
1849
+ var Radio = (0, import_react50.forwardRef)(
1741
1850
  ({ width, disabled, ...props }, ref) => {
1742
1851
  const {
1743
1852
  variant,
@@ -1752,14 +1861,14 @@ var Radio = (0, import_react48.forwardRef)(
1752
1861
  state,
1753
1862
  inputRef
1754
1863
  );
1755
- const styles = (0, import_system33.useComponentStyles)(
1864
+ const styles = (0, import_system34.useComponentStyles)(
1756
1865
  "Radio",
1757
1866
  { variant: variant || props.variant, size: size || props.size },
1758
1867
  { parts: ["container", "label", "radio"] }
1759
1868
  );
1760
1869
  const { hoverProps, isHovered } = (0, import_interactions7.useHover)({ isDisabled: disabled });
1761
1870
  const { isFocusVisible, focusProps } = (0, import_focus8.useFocusRing)();
1762
- const stateProps = (0, import_system33.useStateProps)({
1871
+ const stateProps = (0, import_system34.useStateProps)({
1763
1872
  hover: isHovered,
1764
1873
  focus: isFocusVisible,
1765
1874
  checked: inputProps.checked,
@@ -1767,45 +1876,47 @@ var Radio = (0, import_react48.forwardRef)(
1767
1876
  readOnly: props.readOnly,
1768
1877
  error
1769
1878
  });
1770
- return /* @__PURE__ */ import_react48.default.createElement(import_system33.Box, {
1771
- as: "label",
1772
- __baseCSS: {
1773
- display: "flex",
1774
- alignItems: "center",
1775
- gap: "1ch",
1776
- position: "relative",
1777
- width: width || groupWidth || "100%"
1778
- },
1779
- css: styles.container,
1780
- ...(0, import_utils12.mergeProps)(hoverProps, stateProps)
1781
- }, /* @__PURE__ */ import_react48.default.createElement(import_system33.Box, {
1782
- as: "input",
1783
- ref: inputRef,
1784
- css: {
1785
- position: "absolute",
1786
- width: "100%",
1787
- height: "100%",
1788
- top: 0,
1789
- left: 0,
1790
- zIndex: 1,
1791
- opacity: 1e-4,
1792
- cursor: inputProps.disabled ? "not-allowed" : "pointer"
1879
+ return /* @__PURE__ */ import_react50.default.createElement(
1880
+ import_system34.Box,
1881
+ {
1882
+ as: "label",
1883
+ __baseCSS: {
1884
+ display: "flex",
1885
+ alignItems: "center",
1886
+ gap: "1ch",
1887
+ position: "relative",
1888
+ width: width || groupWidth || "100%"
1889
+ },
1890
+ css: styles.container,
1891
+ ...(0, import_utils12.mergeProps)(hoverProps, stateProps)
1793
1892
  },
1794
- ...(0, import_utils12.mergeProps)(inputProps, focusProps)
1795
- }), /* @__PURE__ */ import_react48.default.createElement(Icon2, {
1796
- checked: inputProps.checked,
1797
- css: styles.radio,
1798
- ...stateProps
1799
- }), /* @__PURE__ */ import_react48.default.createElement(import_system33.Box, {
1800
- css: styles.label,
1801
- ...stateProps
1802
- }, props.children));
1893
+ /* @__PURE__ */ import_react50.default.createElement(
1894
+ import_system34.Box,
1895
+ {
1896
+ as: "input",
1897
+ ref: inputRef,
1898
+ css: {
1899
+ position: "absolute",
1900
+ width: "100%",
1901
+ height: "100%",
1902
+ top: 0,
1903
+ left: 0,
1904
+ zIndex: 1,
1905
+ opacity: 1e-4,
1906
+ cursor: inputProps.disabled ? "not-allowed" : "pointer"
1907
+ },
1908
+ ...(0, import_utils12.mergeProps)(inputProps, focusProps)
1909
+ }
1910
+ ),
1911
+ /* @__PURE__ */ import_react50.default.createElement(Icon2, { checked: inputProps.checked, css: styles.radio, ...stateProps }),
1912
+ /* @__PURE__ */ import_react50.default.createElement(import_system34.Box, { css: styles.label, ...stateProps }, props.children)
1913
+ );
1803
1914
  }
1804
1915
  );
1805
1916
  Radio.Group = RadioGroup;
1806
1917
 
1807
1918
  // src/Select/Select.tsx
1808
- var import_react53 = __toESM(require("react"));
1919
+ var import_react55 = __toESM(require("react"));
1809
1920
  var import_button4 = require("@react-aria/button");
1810
1921
  var import_focus9 = require("@react-aria/focus");
1811
1922
  var import_i18n2 = require("@react-aria/i18n");
@@ -1813,31 +1924,31 @@ var import_select = require("@react-aria/select");
1813
1924
  var import_select2 = require("@react-stately/select");
1814
1925
  var import_collections2 = require("@react-stately/collections");
1815
1926
  var import_utils15 = require("@react-aria/utils");
1816
- var import_system37 = require("@marigold/system");
1927
+ var import_system38 = require("@marigold/system");
1817
1928
 
1818
1929
  // src/ListBox/ListBox.tsx
1819
- var import_react52 = __toESM(require("react"));
1930
+ var import_react54 = __toESM(require("react"));
1820
1931
  var import_utils14 = require("@react-aria/utils");
1821
- var import_system36 = require("@marigold/system");
1932
+ var import_system37 = require("@marigold/system");
1822
1933
  var import_listbox3 = require("@react-aria/listbox");
1823
1934
 
1824
1935
  // src/ListBox/Context.ts
1825
- var import_react49 = require("react");
1826
- var ListBoxContext = (0, import_react49.createContext)({});
1827
- var useListBoxContext = () => (0, import_react49.useContext)(ListBoxContext);
1936
+ var import_react51 = require("react");
1937
+ var ListBoxContext = (0, import_react51.createContext)({});
1938
+ var useListBoxContext = () => (0, import_react51.useContext)(ListBoxContext);
1828
1939
 
1829
1940
  // src/ListBox/ListBoxSection.tsx
1830
- var import_react51 = __toESM(require("react"));
1941
+ var import_react53 = __toESM(require("react"));
1831
1942
  var import_listbox2 = require("@react-aria/listbox");
1832
- var import_system35 = require("@marigold/system");
1943
+ var import_system36 = require("@marigold/system");
1833
1944
 
1834
1945
  // src/ListBox/ListBoxOption.tsx
1835
- var import_react50 = __toESM(require("react"));
1946
+ var import_react52 = __toESM(require("react"));
1836
1947
  var import_listbox = require("@react-aria/listbox");
1837
1948
  var import_utils13 = require("@react-aria/utils");
1838
- var import_system34 = require("@marigold/system");
1949
+ var import_system35 = require("@marigold/system");
1839
1950
  var ListBoxOption = ({ item, state }) => {
1840
- const ref = (0, import_react50.useRef)(null);
1951
+ const ref = (0, import_react52.useRef)(null);
1841
1952
  const { optionProps, isSelected, isDisabled, isFocused } = (0, import_listbox.useOption)(
1842
1953
  {
1843
1954
  key: item.key
@@ -1847,17 +1958,21 @@ var ListBoxOption = ({ item, state }) => {
1847
1958
  );
1848
1959
  const { onPointerUp, ...props } = optionProps;
1849
1960
  const { styles } = useListBoxContext();
1850
- const stateProps = (0, import_system34.useStateProps)({
1961
+ const stateProps = (0, import_system35.useStateProps)({
1851
1962
  selected: isSelected,
1852
1963
  disabled: isDisabled,
1853
1964
  focusVisible: isFocused
1854
1965
  });
1855
- return /* @__PURE__ */ import_react50.default.createElement(import_system34.Box, {
1856
- as: "li",
1857
- ref,
1858
- css: styles.option,
1859
- ...(0, import_utils13.mergeProps)(props, { onPointerDown: onPointerUp }, { ...stateProps })
1860
- }, item.rendered);
1966
+ return /* @__PURE__ */ import_react52.default.createElement(
1967
+ import_system35.Box,
1968
+ {
1969
+ as: "li",
1970
+ ref,
1971
+ css: styles.option,
1972
+ ...(0, import_utils13.mergeProps)(props, { onPointerDown: onPointerUp }, { ...stateProps })
1973
+ },
1974
+ item.rendered
1975
+ );
1861
1976
  };
1862
1977
 
1863
1978
  // src/ListBox/ListBoxSection.tsx
@@ -1867,56 +1982,41 @@ var ListBoxSection = ({ section, state }) => {
1867
1982
  "aria-label": section["aria-label"]
1868
1983
  });
1869
1984
  const { styles } = useListBoxContext();
1870
- return /* @__PURE__ */ import_react51.default.createElement(import_system35.Box, {
1871
- as: "li",
1872
- css: styles.section,
1873
- ...itemProps
1874
- }, section.rendered && /* @__PURE__ */ import_react51.default.createElement(import_system35.Box, {
1875
- css: styles.sectionTitle,
1876
- ...headingProps
1877
- }, section.rendered), /* @__PURE__ */ import_react51.default.createElement(import_system35.Box, {
1878
- as: "ul",
1879
- __baseCSS: { listStyle: "none", p: 0 },
1880
- css: styles.list,
1881
- ...groupProps
1882
- }, [...section.childNodes].map((node) => /* @__PURE__ */ import_react51.default.createElement(ListBoxOption, {
1883
- key: node.key,
1884
- item: node,
1885
- state
1886
- }))));
1985
+ return /* @__PURE__ */ import_react53.default.createElement(import_system36.Box, { as: "li", css: styles.section, ...itemProps }, section.rendered && /* @__PURE__ */ import_react53.default.createElement(import_system36.Box, { css: styles.sectionTitle, ...headingProps }, section.rendered), /* @__PURE__ */ import_react53.default.createElement(
1986
+ import_system36.Box,
1987
+ {
1988
+ as: "ul",
1989
+ __baseCSS: { listStyle: "none", p: 0 },
1990
+ css: styles.list,
1991
+ ...groupProps
1992
+ },
1993
+ [...section.childNodes].map((node) => /* @__PURE__ */ import_react53.default.createElement(ListBoxOption, { key: node.key, item: node, state }))
1994
+ ));
1887
1995
  };
1888
1996
 
1889
1997
  // src/ListBox/ListBox.tsx
1890
- var ListBox = (0, import_react52.forwardRef)(
1998
+ var ListBox = (0, import_react54.forwardRef)(
1891
1999
  ({ state, variant, size, ...props }, ref) => {
1892
2000
  const innerRef = (0, import_utils14.useObjectRef)(ref);
1893
2001
  const { listBoxProps } = (0, import_listbox3.useListBox)(props, state, innerRef);
1894
- const styles = (0, import_system36.useComponentStyles)(
2002
+ const styles = (0, import_system37.useComponentStyles)(
1895
2003
  "ListBox",
1896
2004
  { variant, size },
1897
2005
  { parts: ["container", "list", "option", "section", "sectionTitle"] }
1898
2006
  );
1899
- return /* @__PURE__ */ import_react52.default.createElement(ListBoxContext.Provider, {
1900
- value: { styles }
1901
- }, /* @__PURE__ */ import_react52.default.createElement(import_system36.Box, {
1902
- css: styles.container
1903
- }, /* @__PURE__ */ import_react52.default.createElement(import_system36.Box, {
1904
- as: "ul",
1905
- ref: innerRef,
1906
- __baseCSS: { listStyle: "none", p: 0 },
1907
- css: styles.list,
1908
- ...listBoxProps
1909
- }, [...state.collection].map(
1910
- (item) => item.type === "section" ? /* @__PURE__ */ import_react52.default.createElement(ListBoxSection, {
1911
- key: item.key,
1912
- section: item,
1913
- state
1914
- }) : /* @__PURE__ */ import_react52.default.createElement(ListBoxOption, {
1915
- key: item.key,
1916
- item,
1917
- state
1918
- })
1919
- ))));
2007
+ return /* @__PURE__ */ import_react54.default.createElement(ListBoxContext.Provider, { value: { styles } }, /* @__PURE__ */ import_react54.default.createElement(import_system37.Box, { css: styles.container }, /* @__PURE__ */ import_react54.default.createElement(
2008
+ import_system37.Box,
2009
+ {
2010
+ as: "ul",
2011
+ ref: innerRef,
2012
+ __baseCSS: { listStyle: "none", p: 0 },
2013
+ css: styles.list,
2014
+ ...listBoxProps
2015
+ },
2016
+ [...state.collection].map(
2017
+ (item) => item.type === "section" ? /* @__PURE__ */ import_react54.default.createElement(ListBoxSection, { key: item.key, section: item, state }) : /* @__PURE__ */ import_react54.default.createElement(ListBoxOption, { key: item.key, item, state })
2018
+ )
2019
+ )));
1920
2020
  }
1921
2021
  );
1922
2022
 
@@ -1931,20 +2031,30 @@ var messages = {
1931
2031
  };
1932
2032
 
1933
2033
  // src/Select/Select.tsx
1934
- var Chevron = ({ css }) => /* @__PURE__ */ import_react53.default.createElement(import_system37.Box, {
1935
- as: "svg",
1936
- __baseCSS: { width: 16, height: 16, fill: "none" },
1937
- css,
1938
- viewBox: "0 0 24 24",
1939
- stroke: "currentColor",
1940
- strokeWidth: 2
1941
- }, /* @__PURE__ */ import_react53.default.createElement("path", {
1942
- strokeLinecap: "round",
1943
- strokeLinejoin: "round",
1944
- d: "M19 9l-7 7-7-7"
1945
- }));
1946
- var Select = (0, import_react53.forwardRef)(
1947
- ({ variant, size, width, open, disabled, required, error, ...rest }, ref) => {
2034
+ var Chevron = ({ css }) => /* @__PURE__ */ import_react55.default.createElement(
2035
+ import_system38.Box,
2036
+ {
2037
+ as: "svg",
2038
+ __baseCSS: { width: 16, height: 16, fill: "none" },
2039
+ css,
2040
+ viewBox: "0 0 24 24",
2041
+ stroke: "currentColor",
2042
+ strokeWidth: 2
2043
+ },
2044
+ /* @__PURE__ */ import_react55.default.createElement("path", { strokeLinecap: "round", strokeLinejoin: "round", d: "M19 9l-7 7-7-7" })
2045
+ );
2046
+ var Select = (0, import_react55.forwardRef)(
2047
+ ({
2048
+ variant,
2049
+ size,
2050
+ width,
2051
+ open,
2052
+ disabled,
2053
+ required,
2054
+ error,
2055
+ onChange,
2056
+ ...rest
2057
+ }, ref) => {
1948
2058
  const formatMessage = (0, import_i18n2.useLocalizedStringFormatter)(messages);
1949
2059
  const props = {
1950
2060
  isOpen: open,
@@ -1952,12 +2062,13 @@ var Select = (0, import_react53.forwardRef)(
1952
2062
  isRequired: required,
1953
2063
  validationState: error ? "invalid" : "valid",
1954
2064
  placeholder: rest.placeholder || formatMessage.format("placeholder"),
2065
+ onSelectionChange: onChange,
1955
2066
  ...rest
1956
2067
  };
1957
2068
  const state = (0, import_select2.useSelectState)(props);
1958
2069
  const buttonRef = (0, import_utils15.useObjectRef)(ref);
1959
- const listboxRef = (0, import_react53.useRef)(null);
1960
- const isSmallScreen = (0, import_system37.useResponsiveValue)([true, false, false], 2);
2070
+ const listboxRef = (0, import_react55.useRef)(null);
2071
+ const isSmallScreen = (0, import_system38.useResponsiveValue)([true, false, false], 2);
1961
2072
  const {
1962
2073
  labelProps,
1963
2074
  triggerProps,
@@ -1971,95 +2082,111 @@ var Select = (0, import_react53.forwardRef)(
1971
2082
  buttonRef
1972
2083
  );
1973
2084
  const { focusProps, isFocusVisible } = (0, import_focus9.useFocusRing)();
1974
- const styles = (0, import_system37.useComponentStyles)(
2085
+ const styles = (0, import_system38.useComponentStyles)(
1975
2086
  "Select",
1976
2087
  { variant, size },
1977
2088
  { parts: ["container", "button", "icon"] }
1978
2089
  );
1979
- const stateProps = (0, import_system37.useStateProps)({
2090
+ const stateProps = (0, import_system38.useStateProps)({
1980
2091
  disabled,
1981
2092
  error,
1982
2093
  focusVisible: isFocusVisible,
1983
2094
  expanded: state.isOpen
1984
2095
  });
1985
- return /* @__PURE__ */ import_react53.default.createElement(FieldBase, {
1986
- variant,
1987
- size,
1988
- width,
1989
- label: props.label,
1990
- labelProps: { as: "span", ...labelProps },
1991
- description: props.description,
1992
- descriptionProps,
1993
- error,
1994
- errorMessage: props.errorMessage,
1995
- errorMessageProps,
1996
- stateProps,
1997
- disabled,
1998
- required
1999
- }, /* @__PURE__ */ import_react53.default.createElement(import_select.HiddenSelect, {
2000
- state,
2001
- triggerRef: buttonRef,
2002
- label: props.label,
2003
- name: props.name,
2004
- isDisabled: disabled
2005
- }), /* @__PURE__ */ import_react53.default.createElement(import_system37.Box, {
2006
- as: "button",
2007
- __baseCSS: {
2008
- display: "flex",
2009
- position: "relative",
2010
- alignItems: "center",
2011
- justifyContent: "space-between",
2012
- width: "100%"
2013
- },
2014
- css: styles.button,
2015
- ref: buttonRef,
2016
- ...(0, import_utils15.mergeProps)(buttonProps, focusProps),
2017
- ...stateProps
2018
- }, /* @__PURE__ */ import_react53.default.createElement(import_system37.Box, {
2019
- css: {
2020
- overflow: "hidden",
2021
- whiteSpace: "nowrap"
2096
+ return /* @__PURE__ */ import_react55.default.createElement(
2097
+ FieldBase,
2098
+ {
2099
+ variant,
2100
+ size,
2101
+ width,
2102
+ label: props.label,
2103
+ labelProps: { as: "span", ...labelProps },
2104
+ description: props.description,
2105
+ descriptionProps,
2106
+ error,
2107
+ errorMessage: props.errorMessage,
2108
+ errorMessageProps,
2109
+ stateProps,
2110
+ disabled,
2111
+ required
2022
2112
  },
2023
- ...valueProps
2024
- }, state.selectedItem ? state.selectedItem.rendered : props.placeholder), /* @__PURE__ */ import_react53.default.createElement(Chevron, {
2025
- css: styles.icon
2026
- })), isSmallScreen ? /* @__PURE__ */ import_react53.default.createElement(Tray, {
2027
- state
2028
- }, /* @__PURE__ */ import_react53.default.createElement(ListBox, {
2029
- ref: listboxRef,
2030
- state,
2031
- variant,
2032
- size,
2033
- ...menuProps
2034
- })) : /* @__PURE__ */ import_react53.default.createElement(Popover, {
2035
- state,
2036
- triggerRef: buttonRef,
2037
- scrollRef: listboxRef
2038
- }, /* @__PURE__ */ import_react53.default.createElement(ListBox, {
2039
- ref: listboxRef,
2040
- state,
2041
- variant,
2042
- size,
2043
- ...menuProps
2044
- })));
2113
+ /* @__PURE__ */ import_react55.default.createElement(
2114
+ import_select.HiddenSelect,
2115
+ {
2116
+ state,
2117
+ triggerRef: buttonRef,
2118
+ label: props.label,
2119
+ name: props.name,
2120
+ isDisabled: disabled
2121
+ }
2122
+ ),
2123
+ /* @__PURE__ */ import_react55.default.createElement(
2124
+ import_system38.Box,
2125
+ {
2126
+ as: "button",
2127
+ __baseCSS: {
2128
+ display: "flex",
2129
+ position: "relative",
2130
+ alignItems: "center",
2131
+ justifyContent: "space-between",
2132
+ width: "100%"
2133
+ },
2134
+ css: styles.button,
2135
+ ref: buttonRef,
2136
+ ...(0, import_utils15.mergeProps)(buttonProps, focusProps),
2137
+ ...stateProps
2138
+ },
2139
+ /* @__PURE__ */ import_react55.default.createElement(
2140
+ import_system38.Box,
2141
+ {
2142
+ css: {
2143
+ overflow: "hidden",
2144
+ whiteSpace: "nowrap"
2145
+ },
2146
+ ...valueProps
2147
+ },
2148
+ state.selectedItem ? state.selectedItem.rendered : props.placeholder
2149
+ ),
2150
+ /* @__PURE__ */ import_react55.default.createElement(Chevron, { css: styles.icon })
2151
+ ),
2152
+ isSmallScreen ? /* @__PURE__ */ import_react55.default.createElement(Tray, { state }, /* @__PURE__ */ import_react55.default.createElement(
2153
+ ListBox,
2154
+ {
2155
+ ref: listboxRef,
2156
+ state,
2157
+ variant,
2158
+ size,
2159
+ ...menuProps
2160
+ }
2161
+ )) : /* @__PURE__ */ import_react55.default.createElement(Popover, { state, triggerRef: buttonRef, scrollRef: listboxRef }, /* @__PURE__ */ import_react55.default.createElement(
2162
+ ListBox,
2163
+ {
2164
+ ref: listboxRef,
2165
+ state,
2166
+ variant,
2167
+ size,
2168
+ ...menuProps
2169
+ }
2170
+ ))
2171
+ );
2045
2172
  }
2046
2173
  );
2047
2174
  Select.Option = import_collections2.Item;
2048
2175
  Select.Section = import_collections2.Section;
2049
2176
 
2050
2177
  // src/Slider/Slider.tsx
2051
- var import_react55 = __toESM(require("react"));
2178
+ var import_react57 = __toESM(require("react"));
2052
2179
  var import_slider2 = require("@react-aria/slider");
2053
2180
  var import_slider3 = require("@react-stately/slider");
2054
2181
  var import_i18n3 = require("@react-aria/i18n");
2055
2182
  var import_utils17 = require("@react-aria/utils");
2056
- var import_system39 = require("@marigold/system");
2183
+ var import_system40 = require("@marigold/system");
2057
2184
 
2058
2185
  // src/Slider/Thumb.tsx
2059
- var import_react54 = __toESM(require("react"));
2186
+ var import_react56 = __toESM(require("react"));
2060
2187
  var import_slider = require("@react-aria/slider");
2061
2188
  var import_utils16 = require("@react-aria/utils");
2062
- var import_system38 = require("@marigold/system");
2189
+ var import_system39 = require("@marigold/system");
2063
2190
 
2064
2191
  // src/VisuallyHidden/VisuallyHidden.tsx
2065
2192
  var import_visually_hidden = require("@react-aria/visually-hidden");
@@ -2068,10 +2195,10 @@ var import_visually_hidden = require("@react-aria/visually-hidden");
2068
2195
  var import_focus10 = require("@react-aria/focus");
2069
2196
  var Thumb = ({ state, trackRef, styles, ...props }) => {
2070
2197
  const { disabled } = props;
2071
- const inputRef = import_react54.default.useRef(null);
2198
+ const inputRef = import_react56.default.useRef(null);
2072
2199
  const { isFocusVisible, focusProps, isFocused } = (0, import_focus10.useFocusRing)();
2073
2200
  const focused = isFocused || isFocusVisible || state.isThumbDragging(0);
2074
- const stateProps = (0, import_system38.useStateProps)({
2201
+ const stateProps = (0, import_system39.useStateProps)({
2075
2202
  focus: focused,
2076
2203
  disabled
2077
2204
  });
@@ -2084,24 +2211,31 @@ var Thumb = ({ state, trackRef, styles, ...props }) => {
2084
2211
  },
2085
2212
  state
2086
2213
  );
2087
- (0, import_react54.useEffect)(() => {
2214
+ (0, import_react56.useEffect)(() => {
2088
2215
  state.setThumbEditable(0, !disabled);
2089
2216
  }, [disabled, state]);
2090
- return /* @__PURE__ */ import_react54.default.createElement(import_system.Box, {
2091
- __baseCSS: { top: "50%" },
2092
- css: styles,
2093
- ...thumbProps,
2094
- ...stateProps
2095
- }, /* @__PURE__ */ import_react54.default.createElement(import_visually_hidden.VisuallyHidden, null, /* @__PURE__ */ import_react54.default.createElement(import_system.Box, {
2096
- as: "input",
2097
- type: "range",
2098
- ref: inputRef,
2099
- ...(0, import_utils16.mergeProps)(inputProps, focusProps)
2100
- })));
2217
+ return /* @__PURE__ */ import_react56.default.createElement(
2218
+ import_system.Box,
2219
+ {
2220
+ __baseCSS: { top: "50%" },
2221
+ css: styles,
2222
+ ...thumbProps,
2223
+ ...stateProps
2224
+ },
2225
+ /* @__PURE__ */ import_react56.default.createElement(import_visually_hidden.VisuallyHidden, null, /* @__PURE__ */ import_react56.default.createElement(
2226
+ import_system.Box,
2227
+ {
2228
+ as: "input",
2229
+ type: "range",
2230
+ ref: inputRef,
2231
+ ...(0, import_utils16.mergeProps)(inputProps, focusProps)
2232
+ }
2233
+ ))
2234
+ );
2101
2235
  };
2102
2236
 
2103
2237
  // src/Slider/Slider.tsx
2104
- var Slider = (0, import_react55.forwardRef)(
2238
+ var Slider = (0, import_react57.forwardRef)(
2105
2239
  ({ variant, size, width = "100%", ...props }, ref) => {
2106
2240
  const { formatOptions } = props;
2107
2241
  const trackRef = (0, import_utils17.useObjectRef)(ref);
@@ -2115,64 +2249,74 @@ var Slider = (0, import_react55.forwardRef)(
2115
2249
  state,
2116
2250
  trackRef
2117
2251
  );
2118
- const styles = (0, import_system39.useComponentStyles)(
2252
+ const styles = (0, import_system40.useComponentStyles)(
2119
2253
  "Slider",
2120
2254
  { variant, size },
2121
2255
  { parts: ["track", "thumb", "label", "output"] }
2122
2256
  );
2123
- return /* @__PURE__ */ import_react55.default.createElement(import_system.Box, {
2124
- __baseCSS: {
2125
- display: "flex",
2126
- flexDirection: "column",
2127
- touchAction: "none",
2128
- width
2129
- },
2130
- ...groupProps
2131
- }, /* @__PURE__ */ import_react55.default.createElement(import_system.Box, {
2132
- __baseCSS: { display: "flex", alignSelf: "stretch" }
2133
- }, props.children && /* @__PURE__ */ import_react55.default.createElement(import_system.Box, {
2134
- as: "label",
2135
- __baseCSS: styles.label,
2136
- ...labelProps
2137
- }, props.children), /* @__PURE__ */ import_react55.default.createElement(import_system.Box, {
2138
- as: "output",
2139
- ...outputProps,
2140
- __baseCSS: { flex: "1 0 auto", textAlign: "end" },
2141
- css: styles.output
2142
- }, state.getThumbValueLabel(0))), /* @__PURE__ */ import_react55.default.createElement(import_system.Box, {
2143
- ...trackProps,
2144
- ref: trackRef,
2145
- __baseCSS: {
2146
- height: 32,
2147
- width: "100%",
2148
- cursor: props.disabled ? "not-allowed" : "pointer"
2149
- }
2150
- }, /* @__PURE__ */ import_react55.default.createElement(import_system.Box, {
2151
- __baseCSS: {
2152
- top: "50%",
2153
- transform: "translateY(-50%)"
2257
+ return /* @__PURE__ */ import_react57.default.createElement(
2258
+ import_system.Box,
2259
+ {
2260
+ __baseCSS: {
2261
+ display: "flex",
2262
+ flexDirection: "column",
2263
+ touchAction: "none",
2264
+ width
2265
+ },
2266
+ ...groupProps
2154
2267
  },
2155
- css: styles.track
2156
- }), /* @__PURE__ */ import_react55.default.createElement(Thumb, {
2157
- state,
2158
- trackRef,
2159
- disabled: props.disabled,
2160
- styles: styles.thumb
2161
- })));
2268
+ /* @__PURE__ */ import_react57.default.createElement(import_system.Box, { __baseCSS: { display: "flex", alignSelf: "stretch" } }, props.children && /* @__PURE__ */ import_react57.default.createElement(import_system.Box, { as: "label", __baseCSS: styles.label, ...labelProps }, props.children), /* @__PURE__ */ import_react57.default.createElement(
2269
+ import_system.Box,
2270
+ {
2271
+ as: "output",
2272
+ ...outputProps,
2273
+ __baseCSS: { flex: "1 0 auto", textAlign: "end" },
2274
+ css: styles.output
2275
+ },
2276
+ state.getThumbValueLabel(0)
2277
+ )),
2278
+ /* @__PURE__ */ import_react57.default.createElement(
2279
+ import_system.Box,
2280
+ {
2281
+ ...trackProps,
2282
+ ref: trackRef,
2283
+ __baseCSS: {
2284
+ height: 32,
2285
+ width: "100%",
2286
+ cursor: props.disabled ? "not-allowed" : "pointer"
2287
+ }
2288
+ },
2289
+ /* @__PURE__ */ import_react57.default.createElement(
2290
+ import_system.Box,
2291
+ {
2292
+ __baseCSS: {
2293
+ top: "50%",
2294
+ transform: "translateY(-50%)"
2295
+ },
2296
+ css: styles.track
2297
+ }
2298
+ ),
2299
+ /* @__PURE__ */ import_react57.default.createElement(
2300
+ Thumb,
2301
+ {
2302
+ state,
2303
+ trackRef,
2304
+ disabled: props.disabled,
2305
+ styles: styles.thumb
2306
+ }
2307
+ )
2308
+ )
2309
+ );
2162
2310
  }
2163
2311
  );
2164
2312
 
2165
2313
  // src/Split/Split.tsx
2166
- var import_react56 = __toESM(require("react"));
2167
- var import_system40 = require("@marigold/system");
2168
- var Split = (props) => /* @__PURE__ */ import_react56.default.createElement(import_system40.Box, {
2169
- ...props,
2170
- role: "separator",
2171
- css: { flexGrow: 1 }
2172
- });
2314
+ var import_react58 = __toESM(require("react"));
2315
+ var import_system41 = require("@marigold/system");
2316
+ var Split = (props) => /* @__PURE__ */ import_react58.default.createElement(import_system41.Box, { ...props, role: "separator", css: { flexGrow: 1 } });
2173
2317
 
2174
2318
  // src/Stack/Stack.tsx
2175
- var import_react57 = __toESM(require("react"));
2319
+ var import_react59 = __toESM(require("react"));
2176
2320
  var ALIGNMENT_X2 = {
2177
2321
  none: "initial",
2178
2322
  left: "flex-start",
@@ -2192,27 +2336,31 @@ var Stack = ({
2192
2336
  alignY = "none",
2193
2337
  stretch = false,
2194
2338
  ...props
2195
- }) => /* @__PURE__ */ import_react57.default.createElement(import_system.Box, {
2196
- css: {
2197
- display: "flex",
2198
- flexDirection: "column",
2199
- p: 0,
2200
- gap: space,
2201
- alignItems: ALIGNMENT_X2[alignX],
2202
- justifyContent: ALIGNMENT_Y2[alignY],
2203
- blockSize: stretch ? "100%" : "initial"
2339
+ }) => /* @__PURE__ */ import_react59.default.createElement(
2340
+ import_system.Box,
2341
+ {
2342
+ css: {
2343
+ display: "flex",
2344
+ flexDirection: "column",
2345
+ p: 0,
2346
+ gap: space,
2347
+ alignItems: ALIGNMENT_X2[alignX],
2348
+ justifyContent: ALIGNMENT_Y2[alignY],
2349
+ blockSize: stretch ? "100%" : "initial"
2350
+ },
2351
+ ...props
2204
2352
  },
2205
- ...props
2206
- }, children);
2353
+ children
2354
+ );
2207
2355
 
2208
2356
  // src/Switch/Switch.tsx
2209
- var import_react58 = __toESM(require("react"));
2357
+ var import_react60 = __toESM(require("react"));
2210
2358
  var import_focus11 = require("@react-aria/focus");
2211
2359
  var import_switch = require("@react-aria/switch");
2212
2360
  var import_utils18 = require("@react-aria/utils");
2213
2361
  var import_toggle2 = require("@react-stately/toggle");
2214
- var import_system41 = require("@marigold/system");
2215
- var Switch = (0, import_react58.forwardRef)(
2362
+ var import_system42 = require("@marigold/system");
2363
+ var Switch = (0, import_react60.forwardRef)(
2216
2364
  ({
2217
2365
  variant,
2218
2366
  size,
@@ -2234,108 +2382,120 @@ var Switch = (0, import_react58.forwardRef)(
2234
2382
  const state = (0, import_toggle2.useToggleState)(props);
2235
2383
  const { inputProps } = (0, import_switch.useSwitch)(props, state, inputRef);
2236
2384
  const { isFocusVisible, focusProps } = (0, import_focus11.useFocusRing)();
2237
- const stateProps = (0, import_system41.useStateProps)({
2385
+ const stateProps = (0, import_system42.useStateProps)({
2238
2386
  checked: state.isSelected,
2239
2387
  disabled,
2240
2388
  readOnly,
2241
2389
  focus: isFocusVisible
2242
2390
  });
2243
- const styles = (0, import_system41.useComponentStyles)(
2391
+ const styles = (0, import_system42.useComponentStyles)(
2244
2392
  "Switch",
2245
2393
  { variant, size },
2246
2394
  { parts: ["container", "label", "track", "thumb"] }
2247
2395
  );
2248
- return /* @__PURE__ */ import_react58.default.createElement(import_system.Box, {
2249
- as: "label",
2250
- __baseCSS: {
2251
- display: "flex",
2252
- alignItems: "center",
2253
- justifyContent: "space-between",
2254
- gap: "1ch",
2255
- position: "relative",
2256
- width
2257
- },
2258
- css: styles.container
2259
- }, /* @__PURE__ */ import_react58.default.createElement(import_system.Box, {
2260
- as: "input",
2261
- ref: inputRef,
2262
- css: {
2263
- position: "absolute",
2264
- width: "100%",
2265
- height: "100%",
2266
- top: 0,
2267
- left: 0,
2268
- zIndex: 1,
2269
- opacity: 1e-4,
2270
- cursor: inputProps.disabled ? "not-allowed" : "pointer"
2271
- },
2272
- ...inputProps,
2273
- ...focusProps
2274
- }), props.children && /* @__PURE__ */ import_react58.default.createElement(import_system.Box, {
2275
- css: styles.label
2276
- }, props.children), /* @__PURE__ */ import_react58.default.createElement(import_system.Box, {
2277
- __baseCSS: {
2278
- position: "relative",
2279
- width: 48,
2280
- height: 24,
2281
- bg: "#dee2e6",
2282
- borderRadius: 20,
2283
- flex: "0 0 48px"
2396
+ return /* @__PURE__ */ import_react60.default.createElement(
2397
+ import_system.Box,
2398
+ {
2399
+ as: "label",
2400
+ __baseCSS: {
2401
+ display: "flex",
2402
+ alignItems: "center",
2403
+ justifyContent: "space-between",
2404
+ gap: "1ch",
2405
+ position: "relative",
2406
+ width
2407
+ },
2408
+ css: styles.container
2284
2409
  },
2285
- css: styles.track,
2286
- ...stateProps
2287
- }, /* @__PURE__ */ import_react58.default.createElement(import_system.Box, {
2288
- __baseCSS: {
2289
- display: "block",
2290
- position: "absolute",
2291
- top: 1,
2292
- left: 0,
2293
- willChange: "transform",
2294
- transform: "translateX(1px)",
2295
- transition: "all 0.1s cubic-bezier(.7, 0, .3, 1)",
2296
- height: 22,
2297
- width: 22,
2298
- borderRadius: 9999,
2299
- bg: "#fff",
2300
- "&:checked": {
2301
- transform: "translateX(calc(47px - 100%))"
2410
+ /* @__PURE__ */ import_react60.default.createElement(
2411
+ import_system.Box,
2412
+ {
2413
+ as: "input",
2414
+ ref: inputRef,
2415
+ css: {
2416
+ position: "absolute",
2417
+ width: "100%",
2418
+ height: "100%",
2419
+ top: 0,
2420
+ left: 0,
2421
+ zIndex: 1,
2422
+ opacity: 1e-4,
2423
+ cursor: inputProps.disabled ? "not-allowed" : "pointer"
2424
+ },
2425
+ ...inputProps,
2426
+ ...focusProps
2302
2427
  }
2303
- },
2304
- css: styles.thumb,
2305
- ...stateProps
2306
- })));
2428
+ ),
2429
+ props.children && /* @__PURE__ */ import_react60.default.createElement(import_system.Box, { css: styles.label }, props.children),
2430
+ /* @__PURE__ */ import_react60.default.createElement(
2431
+ import_system.Box,
2432
+ {
2433
+ __baseCSS: {
2434
+ position: "relative",
2435
+ width: 48,
2436
+ height: 24,
2437
+ bg: "#dee2e6",
2438
+ borderRadius: 20,
2439
+ flex: "0 0 48px"
2440
+ },
2441
+ css: styles.track,
2442
+ ...stateProps
2443
+ },
2444
+ /* @__PURE__ */ import_react60.default.createElement(
2445
+ import_system.Box,
2446
+ {
2447
+ __baseCSS: {
2448
+ display: "block",
2449
+ position: "absolute",
2450
+ top: 1,
2451
+ left: 0,
2452
+ willChange: "transform",
2453
+ transform: "translateX(1px)",
2454
+ transition: "all 0.1s cubic-bezier(.7, 0, .3, 1)",
2455
+ height: 22,
2456
+ width: 22,
2457
+ borderRadius: 9999,
2458
+ bg: "#fff",
2459
+ "&:checked": {
2460
+ transform: "translateX(calc(47px - 100%))"
2461
+ }
2462
+ },
2463
+ css: styles.thumb,
2464
+ ...stateProps
2465
+ }
2466
+ )
2467
+ )
2468
+ );
2307
2469
  }
2308
2470
  );
2309
2471
 
2310
2472
  // src/Table/Table.tsx
2311
- var import_react68 = __toESM(require("react"));
2473
+ var import_react70 = __toESM(require("react"));
2312
2474
  var import_table9 = require("@react-aria/table");
2313
2475
  var import_table10 = require("@react-stately/table");
2314
- var import_system47 = require("@marigold/system");
2476
+ var import_system48 = require("@marigold/system");
2315
2477
 
2316
2478
  // src/Table/Context.tsx
2317
- var import_react59 = require("react");
2318
- var TableContext = (0, import_react59.createContext)({});
2319
- var useTableContext = () => (0, import_react59.useContext)(TableContext);
2479
+ var import_react61 = require("react");
2480
+ var TableContext = (0, import_react61.createContext)({});
2481
+ var useTableContext = () => (0, import_react61.useContext)(TableContext);
2320
2482
 
2321
2483
  // src/Table/TableBody.tsx
2322
- var import_react60 = __toESM(require("react"));
2484
+ var import_react62 = __toESM(require("react"));
2323
2485
  var import_table = require("@react-aria/table");
2324
2486
  var TableBody = ({ children }) => {
2325
2487
  const { rowGroupProps } = (0, import_table.useTableRowGroup)();
2326
- return /* @__PURE__ */ import_react60.default.createElement("tbody", {
2327
- ...rowGroupProps
2328
- }, children);
2488
+ return /* @__PURE__ */ import_react62.default.createElement("tbody", { ...rowGroupProps }, children);
2329
2489
  };
2330
2490
 
2331
2491
  // src/Table/TableCell.tsx
2332
- var import_react61 = __toESM(require("react"));
2492
+ var import_react63 = __toESM(require("react"));
2333
2493
  var import_table2 = require("@react-aria/table");
2334
2494
  var import_focus12 = require("@react-aria/focus");
2335
2495
  var import_utils19 = require("@react-aria/utils");
2336
- var import_system42 = require("@marigold/system");
2496
+ var import_system43 = require("@marigold/system");
2337
2497
  var TableCell = ({ cell }) => {
2338
- const ref = (0, import_react61.useRef)(null);
2498
+ const ref = (0, import_react63.useRef)(null);
2339
2499
  const { interactive, state, styles } = useTableContext();
2340
2500
  const disabled = state.disabledKeys.has(cell.parentKey);
2341
2501
  const { gridCellProps } = (0, import_table2.useTableCell)(
@@ -2346,27 +2506,35 @@ var TableCell = ({ cell }) => {
2346
2506
  ref
2347
2507
  );
2348
2508
  const cellProps = interactive ? gridCellProps : {
2509
+ /**
2510
+ * Override `react-aria` handler so users can select text.
2511
+ * Solution from https://github.com/adobe/react-spectrum/issues/2585
2512
+ */
2349
2513
  ...gridCellProps,
2350
2514
  onMouseDown: (e) => e.stopPropagation(),
2351
2515
  onPointerDown: (e) => e.stopPropagation()
2352
2516
  };
2353
2517
  const { focusProps, isFocusVisible } = (0, import_focus12.useFocusRing)();
2354
- const stateProps = (0, import_system42.useStateProps)({ disabled, focusVisible: isFocusVisible });
2355
- return /* @__PURE__ */ import_react61.default.createElement(import_system42.Box, {
2356
- as: "td",
2357
- ref,
2358
- css: styles.cell,
2359
- ...(0, import_utils19.mergeProps)(cellProps, focusProps),
2360
- ...stateProps
2361
- }, cell.rendered);
2518
+ const stateProps = (0, import_system43.useStateProps)({ disabled, focusVisible: isFocusVisible });
2519
+ return /* @__PURE__ */ import_react63.default.createElement(
2520
+ import_system43.Box,
2521
+ {
2522
+ as: "td",
2523
+ ref,
2524
+ css: styles.cell,
2525
+ ...(0, import_utils19.mergeProps)(cellProps, focusProps),
2526
+ ...stateProps
2527
+ },
2528
+ cell.rendered
2529
+ );
2362
2530
  };
2363
2531
 
2364
2532
  // src/Table/TableCheckboxCell.tsx
2365
- var import_react62 = __toESM(require("react"));
2533
+ var import_react64 = __toESM(require("react"));
2366
2534
  var import_table3 = require("@react-aria/table");
2367
2535
  var import_focus13 = require("@react-aria/focus");
2368
2536
  var import_utils20 = require("@react-aria/utils");
2369
- var import_system43 = require("@marigold/system");
2537
+ var import_system44 = require("@marigold/system");
2370
2538
 
2371
2539
  // src/Table/utils.ts
2372
2540
  var mapCheckboxProps = ({
@@ -2390,7 +2558,7 @@ var mapCheckboxProps = ({
2390
2558
 
2391
2559
  // src/Table/TableCheckboxCell.tsx
2392
2560
  var TableCheckboxCell = ({ cell }) => {
2393
- const ref = (0, import_react62.useRef)(null);
2561
+ const ref = (0, import_react64.useRef)(null);
2394
2562
  const { state, styles } = useTableContext();
2395
2563
  const disabled = state.disabledKeys.has(cell.parentKey);
2396
2564
  const { gridCellProps } = (0, import_table3.useTableCell)(
@@ -2404,46 +2572,52 @@ var TableCheckboxCell = ({ cell }) => {
2404
2572
  (0, import_table3.useTableSelectionCheckbox)({ key: cell.parentKey }, state)
2405
2573
  );
2406
2574
  const { focusProps, isFocusVisible } = (0, import_focus13.useFocusRing)();
2407
- const stateProps = (0, import_system43.useStateProps)({ disabled, focusVisible: isFocusVisible });
2408
- return /* @__PURE__ */ import_react62.default.createElement(import_system43.Box, {
2409
- as: "td",
2410
- ref,
2411
- __baseCSS: {
2412
- textAlign: "center",
2413
- verticalAlign: "middle",
2414
- lineHeight: 1
2575
+ const stateProps = (0, import_system44.useStateProps)({ disabled, focusVisible: isFocusVisible });
2576
+ return /* @__PURE__ */ import_react64.default.createElement(
2577
+ import_system44.Box,
2578
+ {
2579
+ as: "td",
2580
+ ref,
2581
+ __baseCSS: {
2582
+ textAlign: "center",
2583
+ verticalAlign: "middle",
2584
+ lineHeight: 1
2585
+ },
2586
+ css: styles.cell,
2587
+ ...(0, import_utils20.mergeProps)(gridCellProps, focusProps),
2588
+ ...stateProps
2415
2589
  },
2416
- css: styles.cell,
2417
- ...(0, import_utils20.mergeProps)(gridCellProps, focusProps),
2418
- ...stateProps
2419
- }, /* @__PURE__ */ import_react62.default.createElement(Checkbox, {
2420
- ...checkboxProps
2421
- }));
2590
+ /* @__PURE__ */ import_react64.default.createElement(Checkbox, { ...checkboxProps })
2591
+ );
2422
2592
  };
2423
2593
 
2424
2594
  // src/Table/TableColumnHeader.tsx
2425
- var import_react63 = __toESM(require("react"));
2595
+ var import_react65 = __toESM(require("react"));
2426
2596
  var import_focus14 = require("@react-aria/focus");
2427
2597
  var import_interactions8 = require("@react-aria/interactions");
2428
2598
  var import_table4 = require("@react-aria/table");
2429
2599
  var import_utils22 = require("@react-aria/utils");
2430
- var import_system44 = require("@marigold/system");
2600
+ var import_system45 = require("@marigold/system");
2431
2601
  var SortIndicator = ({
2432
2602
  direction = "ascending",
2433
2603
  visible
2434
- }) => /* @__PURE__ */ import_react63.default.createElement(import_system44.Box, {
2435
- as: "span",
2436
- role: "presentation",
2437
- "aria-hidden": "true",
2438
- css: {
2439
- color: "currentColor",
2440
- paddingInlineStart: "0.5ch",
2441
- visibility: visible ? "visible" : "hidden"
2442
- }
2443
- }, direction === "ascending" ? "\u25B2" : "\u25BC");
2604
+ }) => /* @__PURE__ */ import_react65.default.createElement(
2605
+ import_system45.Box,
2606
+ {
2607
+ as: "span",
2608
+ role: "presentation",
2609
+ "aria-hidden": "true",
2610
+ css: {
2611
+ color: "currentColor",
2612
+ paddingInlineStart: "0.5ch",
2613
+ visibility: visible ? "visible" : "hidden"
2614
+ }
2615
+ },
2616
+ direction === "ascending" ? "\u25B2" : "\u25BC"
2617
+ );
2444
2618
  var TableColumnHeader = ({ column }) => {
2445
2619
  var _a, _b;
2446
- const ref = (0, import_react63.useRef)(null);
2620
+ const ref = (0, import_react65.useRef)(null);
2447
2621
  const { state, styles } = useTableContext();
2448
2622
  const { columnHeaderProps } = (0, import_table4.useTableColumnHeader)(
2449
2623
  {
@@ -2454,59 +2628,62 @@ var TableColumnHeader = ({ column }) => {
2454
2628
  );
2455
2629
  const { hoverProps, isHovered } = (0, import_interactions8.useHover)({});
2456
2630
  const { focusProps, isFocusVisible } = (0, import_focus14.useFocusRing)();
2457
- const stateProps = (0, import_system44.useStateProps)({
2631
+ const stateProps = (0, import_system45.useStateProps)({
2458
2632
  hover: isHovered,
2459
2633
  focusVisible: isFocusVisible
2460
2634
  });
2461
- return /* @__PURE__ */ import_react63.default.createElement(import_system44.Box, {
2462
- as: "th",
2463
- colSpan: column.colspan,
2464
- ref,
2465
- __baseCSS: { cursor: "default" },
2466
- css: styles.header,
2467
- ...(0, import_utils22.mergeProps)(columnHeaderProps, hoverProps, focusProps),
2468
- ...stateProps
2469
- }, column.rendered, column.props.allowsSorting && /* @__PURE__ */ import_react63.default.createElement(SortIndicator, {
2470
- direction: (_a = state.sortDescriptor) == null ? void 0 : _a.direction,
2471
- visible: ((_b = state.sortDescriptor) == null ? void 0 : _b.column) === column.key
2472
- }));
2635
+ return /* @__PURE__ */ import_react65.default.createElement(
2636
+ import_system45.Box,
2637
+ {
2638
+ as: "th",
2639
+ colSpan: column.colspan,
2640
+ ref,
2641
+ __baseCSS: { cursor: "default" },
2642
+ css: styles.header,
2643
+ ...(0, import_utils22.mergeProps)(columnHeaderProps, hoverProps, focusProps),
2644
+ ...stateProps
2645
+ },
2646
+ column.rendered,
2647
+ column.props.allowsSorting && /* @__PURE__ */ import_react65.default.createElement(
2648
+ SortIndicator,
2649
+ {
2650
+ direction: (_a = state.sortDescriptor) == null ? void 0 : _a.direction,
2651
+ visible: ((_b = state.sortDescriptor) == null ? void 0 : _b.column) === column.key
2652
+ }
2653
+ )
2654
+ );
2473
2655
  };
2474
2656
 
2475
2657
  // src/Table/TableHeader.tsx
2476
- var import_react64 = __toESM(require("react"));
2658
+ var import_react66 = __toESM(require("react"));
2477
2659
  var import_table5 = require("@react-aria/table");
2478
2660
  var TableHeader = ({ children }) => {
2479
2661
  const { rowGroupProps } = (0, import_table5.useTableRowGroup)();
2480
- return /* @__PURE__ */ import_react64.default.createElement("thead", {
2481
- ...rowGroupProps
2482
- }, children);
2662
+ return /* @__PURE__ */ import_react66.default.createElement("thead", { ...rowGroupProps }, children);
2483
2663
  };
2484
2664
 
2485
2665
  // src/Table/TableHeaderRow.tsx
2486
- var import_react65 = __toESM(require("react"));
2666
+ var import_react67 = __toESM(require("react"));
2487
2667
  var import_table6 = require("@react-aria/table");
2488
2668
  var TableHeaderRow = ({ item, children }) => {
2489
2669
  const { state } = useTableContext();
2490
- const ref = (0, import_react65.useRef)(null);
2670
+ const ref = (0, import_react67.useRef)(null);
2491
2671
  const { rowProps } = (0, import_table6.useTableHeaderRow)({ node: item }, state, ref);
2492
- return /* @__PURE__ */ import_react65.default.createElement("tr", {
2493
- ...rowProps,
2494
- ref
2495
- }, children);
2672
+ return /* @__PURE__ */ import_react67.default.createElement("tr", { ...rowProps, ref }, children);
2496
2673
  };
2497
2674
 
2498
2675
  // src/Table/TableRow.tsx
2499
- var import_react66 = __toESM(require("react"));
2676
+ var import_react68 = __toESM(require("react"));
2500
2677
  var import_focus15 = require("@react-aria/focus");
2501
2678
  var import_interactions9 = require("@react-aria/interactions");
2502
2679
  var import_table7 = require("@react-aria/table");
2503
2680
  var import_utils23 = require("@react-aria/utils");
2504
- var import_system45 = require("@marigold/system");
2681
+ var import_system46 = require("@marigold/system");
2505
2682
  var TableRow = ({ children, row }) => {
2506
- const ref = (0, import_react66.useRef)(null);
2683
+ const ref = (0, import_react68.useRef)(null);
2507
2684
  const { interactive, state, ...ctx } = useTableContext();
2508
2685
  const { variant, size } = row.props;
2509
- const { row: styles } = (0, import_system45.useComponentStyles)(
2686
+ const { row: styles } = (0, import_system46.useComponentStyles)(
2510
2687
  "Table",
2511
2688
  { variant: variant || ctx.variant, size: size || ctx.size },
2512
2689
  { parts: ["row"] }
@@ -2524,34 +2701,38 @@ var TableRow = ({ children, row }) => {
2524
2701
  const { hoverProps, isHovered } = (0, import_interactions9.useHover)({
2525
2702
  isDisabled: disabled || !interactive
2526
2703
  });
2527
- const stateProps = (0, import_system45.useStateProps)({
2704
+ const stateProps = (0, import_system46.useStateProps)({
2528
2705
  disabled,
2529
2706
  selected,
2530
2707
  hover: isHovered,
2531
2708
  focusVisible: isFocusVisible,
2532
2709
  active: isPressed
2533
2710
  });
2534
- return /* @__PURE__ */ import_react66.default.createElement(import_system45.Box, {
2535
- as: "tr",
2536
- ref,
2537
- __baseCSS: {
2538
- cursor: !interactive ? "text" : disabled ? "default" : "pointer"
2711
+ return /* @__PURE__ */ import_react68.default.createElement(
2712
+ import_system46.Box,
2713
+ {
2714
+ as: "tr",
2715
+ ref,
2716
+ __baseCSS: {
2717
+ cursor: !interactive ? "text" : disabled ? "default" : "pointer"
2718
+ },
2719
+ css: styles,
2720
+ ...(0, import_utils23.mergeProps)(rowProps, focusProps, hoverProps),
2721
+ ...stateProps
2539
2722
  },
2540
- css: styles,
2541
- ...(0, import_utils23.mergeProps)(rowProps, focusProps, hoverProps),
2542
- ...stateProps
2543
- }, children);
2723
+ children
2724
+ );
2544
2725
  };
2545
2726
 
2546
2727
  // src/Table/TableSelectAllCell.tsx
2547
- var import_react67 = __toESM(require("react"));
2728
+ var import_react69 = __toESM(require("react"));
2548
2729
  var import_focus16 = require("@react-aria/focus");
2549
2730
  var import_interactions10 = require("@react-aria/interactions");
2550
2731
  var import_table8 = require("@react-aria/table");
2551
2732
  var import_utils24 = require("@react-aria/utils");
2552
- var import_system46 = require("@marigold/system");
2733
+ var import_system47 = require("@marigold/system");
2553
2734
  var TableSelectAllCell = ({ column }) => {
2554
- const ref = (0, import_react67.useRef)(null);
2735
+ const ref = (0, import_react69.useRef)(null);
2555
2736
  const { state, styles } = useTableContext();
2556
2737
  const { columnHeaderProps } = (0, import_table8.useTableColumnHeader)(
2557
2738
  {
@@ -2563,24 +2744,26 @@ var TableSelectAllCell = ({ column }) => {
2563
2744
  const { checkboxProps } = mapCheckboxProps((0, import_table8.useTableSelectAllCheckbox)(state));
2564
2745
  const { hoverProps, isHovered } = (0, import_interactions10.useHover)({});
2565
2746
  const { focusProps, isFocusVisible } = (0, import_focus16.useFocusRing)();
2566
- const stateProps = (0, import_system46.useStateProps)({
2747
+ const stateProps = (0, import_system47.useStateProps)({
2567
2748
  hover: isHovered,
2568
2749
  focusVisible: isFocusVisible
2569
2750
  });
2570
- return /* @__PURE__ */ import_react67.default.createElement(import_system46.Box, {
2571
- as: "th",
2572
- ref,
2573
- __baseCSS: {
2574
- textAlign: "center",
2575
- verticalAlign: "middle",
2576
- lineHeight: 1
2751
+ return /* @__PURE__ */ import_react69.default.createElement(
2752
+ import_system47.Box,
2753
+ {
2754
+ as: "th",
2755
+ ref,
2756
+ __baseCSS: {
2757
+ textAlign: "center",
2758
+ verticalAlign: "middle",
2759
+ lineHeight: 1
2760
+ },
2761
+ css: styles.header,
2762
+ ...(0, import_utils24.mergeProps)(columnHeaderProps, hoverProps, focusProps),
2763
+ ...stateProps
2577
2764
  },
2578
- css: styles.header,
2579
- ...(0, import_utils24.mergeProps)(columnHeaderProps, hoverProps, focusProps),
2580
- ...stateProps
2581
- }, /* @__PURE__ */ import_react67.default.createElement(Checkbox, {
2582
- ...checkboxProps
2583
- }));
2765
+ /* @__PURE__ */ import_react69.default.createElement(Checkbox, { ...checkboxProps })
2766
+ );
2584
2767
  };
2585
2768
 
2586
2769
  // src/Table/Table.tsx
@@ -2592,62 +2775,48 @@ var Table = ({
2592
2775
  ...props
2593
2776
  }) => {
2594
2777
  const interactive = selectionMode !== "none";
2595
- const tableRef = (0, import_react68.useRef)(null);
2778
+ const tableRef = (0, import_react70.useRef)(null);
2596
2779
  const state = (0, import_table10.useTableState)({
2597
2780
  ...props,
2598
2781
  selectionMode,
2599
- showSelectionCheckboxes: selectionMode === "multiple" && props.selectionBehavior !== "replace"
2782
+ showSelectionCheckboxes: selectionMode === "multiple" && // TODO: It this necessary?
2783
+ props.selectionBehavior !== "replace"
2600
2784
  });
2601
2785
  const { gridProps } = (0, import_table9.useTable)(props, state, tableRef);
2602
- const styles = (0, import_system47.useComponentStyles)(
2786
+ const styles = (0, import_system48.useComponentStyles)(
2603
2787
  "Table",
2604
2788
  { variant, size },
2605
2789
  { parts: ["table", "header", "row", "cell"] }
2606
2790
  );
2607
2791
  const { collection } = state;
2608
- return /* @__PURE__ */ import_react68.default.createElement(TableContext.Provider, {
2609
- value: { state, interactive, styles }
2610
- }, /* @__PURE__ */ import_react68.default.createElement(import_system47.Box, {
2611
- as: "table",
2612
- ref: tableRef,
2613
- __baseCSS: {
2614
- display: stretch ? "table" : "block",
2615
- width: stretch ? "100%" : void 0,
2616
- borderCollapse: "collapse",
2617
- overflow: "auto",
2618
- whiteSpace: "nowrap"
2792
+ return /* @__PURE__ */ import_react70.default.createElement(TableContext.Provider, { value: { state, interactive, styles } }, /* @__PURE__ */ import_react70.default.createElement(
2793
+ import_system48.Box,
2794
+ {
2795
+ as: "table",
2796
+ ref: tableRef,
2797
+ __baseCSS: {
2798
+ display: stretch ? "table" : "block",
2799
+ width: stretch ? "100%" : void 0,
2800
+ borderCollapse: "collapse",
2801
+ overflow: "auto",
2802
+ whiteSpace: "nowrap"
2803
+ },
2804
+ css: styles.table,
2805
+ ...gridProps
2619
2806
  },
2620
- css: styles.table,
2621
- ...gridProps
2622
- }, /* @__PURE__ */ import_react68.default.createElement(TableHeader, null, collection.headerRows.map((headerRow) => /* @__PURE__ */ import_react68.default.createElement(TableHeaderRow, {
2623
- key: headerRow.key,
2624
- item: headerRow
2625
- }, [...headerRow.childNodes].map(
2626
- (column) => {
2627
- var _a;
2628
- return ((_a = column.props) == null ? void 0 : _a.isSelectionCell) ? /* @__PURE__ */ import_react68.default.createElement(TableSelectAllCell, {
2629
- key: column.key,
2630
- column
2631
- }) : /* @__PURE__ */ import_react68.default.createElement(TableColumnHeader, {
2632
- key: column.key,
2633
- column
2634
- });
2635
- }
2636
- )))), /* @__PURE__ */ import_react68.default.createElement(TableBody, null, [...collection.body.childNodes].map((row) => /* @__PURE__ */ import_react68.default.createElement(TableRow, {
2637
- key: row.key,
2638
- row
2639
- }, [...row.childNodes].map(
2640
- (cell) => {
2641
- var _a;
2642
- return ((_a = cell.props) == null ? void 0 : _a.isSelectionCell) ? /* @__PURE__ */ import_react68.default.createElement(TableCheckboxCell, {
2643
- key: cell.key,
2644
- cell
2645
- }) : /* @__PURE__ */ import_react68.default.createElement(TableCell, {
2646
- key: cell.key,
2647
- cell
2648
- });
2649
- }
2650
- ))))));
2807
+ /* @__PURE__ */ import_react70.default.createElement(TableHeader, null, collection.headerRows.map((headerRow) => /* @__PURE__ */ import_react70.default.createElement(TableHeaderRow, { key: headerRow.key, item: headerRow }, [...headerRow.childNodes].map(
2808
+ (column) => {
2809
+ var _a;
2810
+ return ((_a = column.props) == null ? void 0 : _a.isSelectionCell) ? /* @__PURE__ */ import_react70.default.createElement(TableSelectAllCell, { key: column.key, column }) : /* @__PURE__ */ import_react70.default.createElement(TableColumnHeader, { key: column.key, column });
2811
+ }
2812
+ )))),
2813
+ /* @__PURE__ */ import_react70.default.createElement(TableBody, null, [...collection.body.childNodes].map((row) => /* @__PURE__ */ import_react70.default.createElement(TableRow, { key: row.key, row }, [...row.childNodes].map(
2814
+ (cell) => {
2815
+ var _a;
2816
+ return ((_a = cell.props) == null ? void 0 : _a.isSelectionCell) ? /* @__PURE__ */ import_react70.default.createElement(TableCheckboxCell, { key: cell.key, cell }) : /* @__PURE__ */ import_react70.default.createElement(TableCell, { key: cell.key, cell });
2817
+ }
2818
+ ))))
2819
+ ));
2651
2820
  };
2652
2821
  Table.Body = import_table10.TableBody;
2653
2822
  Table.Cell = import_table10.Cell;
@@ -2656,12 +2825,13 @@ Table.Header = import_table10.TableHeader;
2656
2825
  Table.Row = import_table10.Row;
2657
2826
 
2658
2827
  // src/Text/Text.tsx
2659
- var import_react69 = __toESM(require("react"));
2660
- var import_system48 = require("@marigold/system");
2828
+ var import_react71 = __toESM(require("react"));
2661
2829
  var import_system49 = require("@marigold/system");
2830
+ var import_system50 = require("@marigold/system");
2662
2831
  var Text = ({
2663
2832
  variant,
2664
2833
  size,
2834
+ display,
2665
2835
  align,
2666
2836
  color,
2667
2837
  fontSize,
@@ -2671,28 +2841,40 @@ var Text = ({
2671
2841
  children,
2672
2842
  ...props
2673
2843
  }) => {
2674
- const styles = (0, import_system48.useComponentStyles)("Text", {
2844
+ const styles = (0, import_system49.useComponentStyles)("Text", {
2675
2845
  variant,
2676
2846
  size
2677
2847
  });
2678
- return /* @__PURE__ */ import_react69.default.createElement(import_system49.Box, {
2679
- as: "p",
2680
- ...props,
2681
- css: [
2682
- styles,
2683
- { color, cursor, outline, fontSize, fontWeight, textAlign: align }
2684
- ]
2685
- }, children);
2848
+ return /* @__PURE__ */ import_react71.default.createElement(
2849
+ import_system50.Box,
2850
+ {
2851
+ as: "p",
2852
+ ...props,
2853
+ css: [
2854
+ styles,
2855
+ {
2856
+ display,
2857
+ color,
2858
+ cursor,
2859
+ outline,
2860
+ fontSize,
2861
+ fontWeight,
2862
+ textAlign: align
2863
+ }
2864
+ ]
2865
+ },
2866
+ children
2867
+ );
2686
2868
  };
2687
2869
 
2688
2870
  // src/TextArea/TextArea.tsx
2689
- var import_react70 = __toESM(require("react"));
2871
+ var import_react72 = __toESM(require("react"));
2690
2872
  var import_interactions11 = require("@react-aria/interactions");
2691
2873
  var import_focus17 = require("@react-aria/focus");
2692
2874
  var import_textfield = require("@react-aria/textfield");
2693
2875
  var import_utils26 = require("@react-aria/utils");
2694
- var import_system50 = require("@marigold/system");
2695
- var TextArea = (0, import_react70.forwardRef)(
2876
+ var import_system51 = require("@marigold/system");
2877
+ var TextArea = (0, import_react72.forwardRef)(
2696
2878
  ({
2697
2879
  variant,
2698
2880
  size,
@@ -2719,48 +2901,55 @@ var TextArea = (0, import_react70.forwardRef)(
2719
2901
  );
2720
2902
  const { hoverProps, isHovered } = (0, import_interactions11.useHover)({});
2721
2903
  const { focusProps, isFocusVisible } = (0, import_focus17.useFocusRing)();
2722
- const stateProps = (0, import_system50.useStateProps)({
2904
+ const stateProps = (0, import_system51.useStateProps)({
2723
2905
  hover: isHovered,
2724
2906
  focus: isFocusVisible,
2725
2907
  disabled,
2726
2908
  readOnly,
2727
2909
  error
2728
2910
  });
2729
- const styles = (0, import_system50.useComponentStyles)("TextArea", { variant, size });
2730
- return /* @__PURE__ */ import_react70.default.createElement(FieldBase, {
2731
- label,
2732
- labelProps,
2733
- required,
2734
- description,
2735
- descriptionProps,
2736
- error,
2737
- errorMessage,
2738
- errorMessageProps,
2739
- stateProps,
2740
- variant,
2741
- size,
2742
- width
2743
- }, /* @__PURE__ */ import_react70.default.createElement(import_system50.Box, {
2744
- as: "textarea",
2745
- css: styles,
2746
- ref: textAreaRef,
2747
- rows,
2748
- ...inputProps,
2749
- ...focusProps,
2750
- ...hoverProps,
2751
- ...stateProps
2752
- }));
2911
+ const styles = (0, import_system51.useComponentStyles)("TextArea", { variant, size });
2912
+ return /* @__PURE__ */ import_react72.default.createElement(
2913
+ FieldBase,
2914
+ {
2915
+ label,
2916
+ labelProps,
2917
+ required,
2918
+ description,
2919
+ descriptionProps,
2920
+ error,
2921
+ errorMessage,
2922
+ errorMessageProps,
2923
+ stateProps,
2924
+ variant,
2925
+ size,
2926
+ width
2927
+ },
2928
+ /* @__PURE__ */ import_react72.default.createElement(
2929
+ import_system51.Box,
2930
+ {
2931
+ as: "textarea",
2932
+ css: styles,
2933
+ ref: textAreaRef,
2934
+ rows,
2935
+ ...inputProps,
2936
+ ...focusProps,
2937
+ ...hoverProps,
2938
+ ...stateProps
2939
+ }
2940
+ )
2941
+ );
2753
2942
  }
2754
2943
  );
2755
2944
 
2756
2945
  // src/TextField/TextField.tsx
2757
- var import_react71 = __toESM(require("react"));
2946
+ var import_react73 = __toESM(require("react"));
2758
2947
  var import_interactions12 = require("@react-aria/interactions");
2759
2948
  var import_focus18 = require("@react-aria/focus");
2760
2949
  var import_textfield2 = require("@react-aria/textfield");
2761
2950
  var import_utils27 = require("@react-aria/utils");
2762
- var import_system51 = require("@marigold/system");
2763
- var TextField = (0, import_react71.forwardRef)(
2951
+ var import_system52 = require("@marigold/system");
2952
+ var TextField = (0, import_react73.forwardRef)(
2764
2953
  ({ variant, size, width, disabled, required, readOnly, error, ...props }, ref) => {
2765
2954
  const { label, description, errorMessage, autoFocus } = props;
2766
2955
  const inputRef = (0, import_utils27.useObjectRef)(ref);
@@ -2779,41 +2968,48 @@ var TextField = (0, import_react71.forwardRef)(
2779
2968
  isTextInput: true,
2780
2969
  autoFocus
2781
2970
  });
2782
- const stateProps = (0, import_system51.useStateProps)({
2971
+ const stateProps = (0, import_system52.useStateProps)({
2783
2972
  hover: isHovered,
2784
2973
  focus: isFocusVisible,
2785
2974
  disabled,
2786
2975
  readOnly,
2787
2976
  error
2788
2977
  });
2789
- return /* @__PURE__ */ import_react71.default.createElement(FieldBase, {
2790
- label,
2791
- labelProps,
2792
- required,
2793
- description,
2794
- descriptionProps,
2795
- error,
2796
- errorMessage,
2797
- errorMessageProps,
2798
- stateProps,
2799
- variant,
2800
- size,
2801
- width
2802
- }, /* @__PURE__ */ import_react71.default.createElement(Input, {
2803
- ref: inputRef,
2804
- variant,
2805
- size,
2806
- ...inputProps,
2807
- ...focusProps,
2808
- ...hoverProps,
2809
- ...stateProps
2810
- }));
2978
+ return /* @__PURE__ */ import_react73.default.createElement(
2979
+ FieldBase,
2980
+ {
2981
+ label,
2982
+ labelProps,
2983
+ required,
2984
+ description,
2985
+ descriptionProps,
2986
+ error,
2987
+ errorMessage,
2988
+ errorMessageProps,
2989
+ stateProps,
2990
+ variant,
2991
+ size,
2992
+ width
2993
+ },
2994
+ /* @__PURE__ */ import_react73.default.createElement(
2995
+ Input,
2996
+ {
2997
+ ref: inputRef,
2998
+ variant,
2999
+ size,
3000
+ ...inputProps,
3001
+ ...focusProps,
3002
+ ...hoverProps,
3003
+ ...stateProps
3004
+ }
3005
+ )
3006
+ );
2811
3007
  }
2812
3008
  );
2813
3009
 
2814
3010
  // src/Tiles/Tiles.tsx
2815
- var import_react72 = __toESM(require("react"));
2816
- var import_system52 = require("@marigold/system");
3011
+ var import_react74 = __toESM(require("react"));
3012
+ var import_system53 = require("@marigold/system");
2817
3013
  var Tiles = ({
2818
3014
  space = "none",
2819
3015
  stretch = false,
@@ -2822,37 +3018,45 @@ var Tiles = ({
2822
3018
  children,
2823
3019
  ...props
2824
3020
  }) => {
2825
- const { css } = (0, import_system52.useTheme)();
3021
+ const { css } = (0, import_system53.useTheme)();
2826
3022
  const { width } = css({ width: tilesWidth });
2827
3023
  let column = `min(${typeof width === "number" ? `${width}px` : width}, 100%)`;
2828
3024
  if (stretch) {
2829
3025
  column = `minmax(${column}, 1fr)`;
2830
3026
  }
2831
- return /* @__PURE__ */ import_react72.default.createElement(import_system.Box, {
2832
- ...props,
2833
- css: {
2834
- display: "grid",
2835
- gap: space,
2836
- gridTemplateColumns: `repeat(auto-fit, ${column})`,
2837
- gridAutoRows: equalHeight ? "1fr" : void 0
2838
- }
2839
- }, children);
3027
+ return /* @__PURE__ */ import_react74.default.createElement(
3028
+ import_system.Box,
3029
+ {
3030
+ ...props,
3031
+ css: {
3032
+ display: "grid",
3033
+ gap: space,
3034
+ gridTemplateColumns: `repeat(auto-fit, ${column})`,
3035
+ /**
3036
+ * Make height of all tiles in each row
3037
+ * match the heighest tile.
3038
+ */
3039
+ gridAutoRows: equalHeight ? "1fr" : void 0
3040
+ }
3041
+ },
3042
+ children
3043
+ );
2840
3044
  };
2841
3045
 
2842
3046
  // src/Tooltip/Tooltip.tsx
2843
- var import_react75 = __toESM(require("react"));
3047
+ var import_react77 = __toESM(require("react"));
2844
3048
  var import_tooltip3 = require("@react-aria/tooltip");
2845
- var import_system53 = require("@marigold/system");
3049
+ var import_system54 = require("@marigold/system");
2846
3050
 
2847
3051
  // src/Tooltip/Context.ts
2848
- var import_react73 = require("react");
2849
- var TooltipContext = (0, import_react73.createContext)({});
2850
- var useTooltipContext = () => (0, import_react73.useContext)(TooltipContext);
3052
+ var import_react75 = require("react");
3053
+ var TooltipContext = (0, import_react75.createContext)({});
3054
+ var useTooltipContext = () => (0, import_react75.useContext)(TooltipContext);
2851
3055
 
2852
3056
  // src/Tooltip/TooltipTrigger.tsx
2853
- var import_react74 = __toESM(require("react"));
3057
+ var import_react76 = __toESM(require("react"));
2854
3058
  var import_focus19 = require("@react-aria/focus");
2855
- var import_overlays7 = require("@react-aria/overlays");
3059
+ var import_overlays8 = require("@react-aria/overlays");
2856
3060
  var import_tooltip = require("@react-aria/tooltip");
2857
3061
  var import_tooltip2 = require("@react-stately/tooltip");
2858
3062
  var TooltipTrigger = ({
@@ -2863,7 +3067,7 @@ var TooltipTrigger = ({
2863
3067
  children,
2864
3068
  ...rest
2865
3069
  }) => {
2866
- const [tooltipTrigger, tooltip] = import_react74.default.Children.toArray(children);
3070
+ const [tooltipTrigger, tooltip] = import_react76.default.Children.toArray(children);
2867
3071
  const props = {
2868
3072
  ...rest,
2869
3073
  isDisabled: disabled,
@@ -2871,8 +3075,8 @@ var TooltipTrigger = ({
2871
3075
  delay,
2872
3076
  placement
2873
3077
  };
2874
- const tooltipTriggerRef = (0, import_react74.useRef)(null);
2875
- const overlayRef = (0, import_react74.useRef)(null);
3078
+ const tooltipTriggerRef = (0, import_react76.useRef)(null);
3079
+ const overlayRef = (0, import_react76.useRef)(null);
2876
3080
  const state = (0, import_tooltip2.useTooltipTriggerState)(props);
2877
3081
  const { triggerProps, tooltipProps } = (0, import_tooltip.useTooltipTrigger)(
2878
3082
  props,
@@ -2883,7 +3087,7 @@ var TooltipTrigger = ({
2883
3087
  overlayProps: positionProps,
2884
3088
  placement: overlayPlacement,
2885
3089
  arrowProps
2886
- } = (0, import_overlays7.useOverlayPosition)({
3090
+ } = (0, import_overlays8.useOverlayPosition)({
2887
3091
  placement: props.placement,
2888
3092
  targetRef: tooltipTriggerRef,
2889
3093
  offset: props.offset,
@@ -2891,180 +3095,277 @@ var TooltipTrigger = ({
2891
3095
  isOpen: state.isOpen,
2892
3096
  overlayRef
2893
3097
  });
2894
- return /* @__PURE__ */ import_react74.default.createElement(import_focus19.FocusableProvider, {
2895
- ref: tooltipTriggerRef,
2896
- ...triggerProps
2897
- }, tooltipTrigger, /* @__PURE__ */ import_react74.default.createElement(TooltipContext.Provider, {
2898
- value: {
2899
- state,
2900
- overlayRef,
2901
- arrowProps,
2902
- placement: overlayPlacement,
2903
- ...tooltipProps,
2904
- ...positionProps
2905
- }
2906
- }, /* @__PURE__ */ import_react74.default.createElement(Overlay, {
2907
- open: state.isOpen
2908
- }, tooltip)));
3098
+ return /* @__PURE__ */ import_react76.default.createElement(import_focus19.FocusableProvider, { ref: tooltipTriggerRef, ...triggerProps }, tooltipTrigger, /* @__PURE__ */ import_react76.default.createElement(
3099
+ TooltipContext.Provider,
3100
+ {
3101
+ value: {
3102
+ state,
3103
+ overlayRef,
3104
+ arrowProps,
3105
+ placement: overlayPlacement,
3106
+ ...tooltipProps,
3107
+ ...positionProps
3108
+ }
3109
+ },
3110
+ /* @__PURE__ */ import_react76.default.createElement(Overlay, { open: state.isOpen }, tooltip)
3111
+ ));
2909
3112
  };
2910
3113
 
2911
3114
  // src/Tooltip/Tooltip.tsx
2912
3115
  var Tooltip = ({ children, variant, size }) => {
2913
3116
  const { arrowProps, state, overlayRef, placement, ...rest } = useTooltipContext();
2914
3117
  const { tooltipProps } = (0, import_tooltip3.useTooltip)({}, state);
2915
- const styles = (0, import_system53.useComponentStyles)(
3118
+ const styles = (0, import_system54.useComponentStyles)(
2916
3119
  "Tooltip",
2917
3120
  { variant, size },
2918
3121
  { parts: ["container", "arrow"] }
2919
3122
  );
2920
- return /* @__PURE__ */ import_react75.default.createElement(import_system53.Box, {
2921
- ...tooltipProps,
2922
- ...rest,
2923
- ref: overlayRef,
2924
- css: styles.container,
2925
- "data-placement": placement
2926
- }, /* @__PURE__ */ import_react75.default.createElement("div", null, children), /* @__PURE__ */ import_react75.default.createElement(import_system53.Box, {
2927
- ...arrowProps,
2928
- __baseCSS: {
2929
- position: "absolute",
2930
- height: 0,
2931
- width: 0,
2932
- borderStyle: "solid",
2933
- borderLeftColor: "transparent",
2934
- borderRightColor: "transparent",
2935
- borderBottomColor: "transparent"
3123
+ return /* @__PURE__ */ import_react77.default.createElement(
3124
+ import_system54.Box,
3125
+ {
3126
+ ...tooltipProps,
3127
+ ...rest,
3128
+ ref: overlayRef,
3129
+ css: styles.container,
3130
+ "data-placement": placement
2936
3131
  },
2937
- css: styles.arrow
2938
- }));
3132
+ /* @__PURE__ */ import_react77.default.createElement("div", null, children),
3133
+ /* @__PURE__ */ import_react77.default.createElement(
3134
+ import_system54.Box,
3135
+ {
3136
+ ...arrowProps,
3137
+ __baseCSS: {
3138
+ position: "absolute",
3139
+ height: 0,
3140
+ width: 0,
3141
+ borderStyle: "solid",
3142
+ borderLeftColor: "transparent",
3143
+ borderRightColor: "transparent",
3144
+ borderBottomColor: "transparent"
3145
+ },
3146
+ css: styles.arrow
3147
+ }
3148
+ )
3149
+ );
2939
3150
  };
2940
3151
  Tooltip.Trigger = TooltipTrigger;
2941
3152
 
2942
3153
  // src/XLoader/XLoader.tsx
2943
- var import_system54 = require("@marigold/system");
2944
- var import_react76 = __toESM(require("react"));
2945
- var XLoader = (0, import_react76.forwardRef)((props, ref) => /* @__PURE__ */ import_react76.default.createElement(import_system54.SVG, {
2946
- id: "XLoader",
2947
- xmlns: "http://www.w3.org/2000/svg",
2948
- size: 150,
2949
- viewBox: "0 0 150 150",
2950
- ...props,
2951
- ...ref
2952
- }, /* @__PURE__ */ import_react76.default.createElement("path", {
2953
- id: "XMLID_1_",
2954
- d: "M35.3 27h26.5l54 74.1H88.7z"
2955
- }), /* @__PURE__ */ import_react76.default.createElement("path", {
2956
- id: "XMLID_5_",
2957
- d: "M124.3 12.8h-.7c-2.7 0-4.9-2.2-4.9-4.9v-.7c0-2.7 2.2-4.9 4.9-4.9h.7c2.7 0 4.9 2.2 4.9 4.9v.7c0 2.7-2.2 4.9-4.9 4.9z"
2958
- }, /* @__PURE__ */ import_react76.default.createElement("animate", {
2959
- attributeName: "opacity",
2960
- attributeType: "XML",
2961
- values: "1; .01; 1; 1; 1;",
2962
- begin: "1.0s",
2963
- dur: "2.5s",
2964
- repeatCount: "indefinite"
2965
- })), /* @__PURE__ */ import_react76.default.createElement("path", {
2966
- id: "XMLID_18_",
2967
- d: "M115.9 24.4h-.7c-2.7 0-4.9-2.2-4.9-4.9v-.7c0-2.7 2.2-4.9 4.9-4.9h.7c2.7 0 4.9 2.2 4.9 4.9v.7c0 2.7-2.2 4.9-4.9 4.9z"
2968
- }, /* @__PURE__ */ import_react76.default.createElement("animate", {
2969
- attributeName: "opacity",
2970
- attributeType: "XML",
2971
- values: "1; .01; 1; 1; 1;",
2972
- begin: "0.9s",
2973
- dur: "2.5s",
2974
- repeatCount: "indefinite"
2975
- })), /* @__PURE__ */ import_react76.default.createElement("path", {
2976
- id: "XMLID_19_",
2977
- d: "M107.5 35.9h-.7c-2.7 0-4.9-2.2-4.9-4.9v-.7c0-2.7 2.2-4.9 4.9-4.9h.7c2.7 0 4.9 2.2 4.9 4.9v.7c0 2.7-2.2 4.9-4.9 4.9z"
2978
- }, /* @__PURE__ */ import_react76.default.createElement("animate", {
2979
- attributeName: "opacity",
2980
- attributeType: "XML",
2981
- values: "1; .01; 1; 1; 1;",
2982
- begin: "0.8s",
2983
- dur: "2.5s",
2984
- repeatCount: "indefinite"
2985
- })), /* @__PURE__ */ import_react76.default.createElement("path", {
2986
- id: "XMLID_20_",
2987
- d: "M99.1 47.5h-.7c-2.7 0-4.9-2.2-4.9-4.9v-.7c0-2.7 2.2-4.9 4.9-4.9h.7c2.7 0 4.9 2.2 4.9 4.9v.7c0 2.7-2.2 4.9-4.9 4.9z"
2988
- }, /* @__PURE__ */ import_react76.default.createElement("animate", {
2989
- attributeName: "opacity",
2990
- attributeType: "XML",
2991
- values: "1; .01; 1; 1; 1;",
2992
- begin: "0.7s",
2993
- dur: "2.5s",
2994
- repeatCount: "indefinite"
2995
- })), /* @__PURE__ */ import_react76.default.createElement("path", {
2996
- id: "XMLID_21_",
2997
- d: "M90.7 59H90c-2.7 0-4.9-2.2-4.9-4.9v-.7c0-2.7 2.2-4.9 4.9-4.9h.7c2.7 0 4.9 2.2 4.9 4.9v.7c0 2.8-2.2 4.9-4.9 4.9z"
2998
- }, /* @__PURE__ */ import_react76.default.createElement("animate", {
2999
- attributeName: "opacity",
3000
- attributeType: "XML",
3001
- values: "1; .01; 1; 1; 1;",
3002
- begin: "0.6s",
3003
- dur: "2.5s",
3004
- repeatCount: "indefinite"
3005
- })), /* @__PURE__ */ import_react76.default.createElement("path", {
3006
- id: "XMLID_22_",
3007
- d: "M68 89.8h-.7c-2.7 0-4.9-2.2-4.9-4.9v-.7c0-2.7 2.2-4.9 4.9-4.9h.7c2.7 0 4.9 2.2 4.9 4.9v.8c0 2.6-2.2 4.8-4.9 4.8z"
3008
- }, /* @__PURE__ */ import_react76.default.createElement("animate", {
3009
- attributeName: "opacity",
3010
- attributeType: "XML",
3011
- values: "1; .01; 1; 1; 1;",
3012
- begin: "0.5s",
3013
- dur: "2.5s",
3014
- repeatCount: "indefinite"
3015
- })), /* @__PURE__ */ import_react76.default.createElement("path", {
3016
- id: "XMLID_23_",
3017
- d: "M59.6 101.4h-.7c-2.7 0-4.9-2.2-4.9-4.9v-.7c0-2.7 2.2-4.9 4.9-4.9h.7c2.7 0 4.9 2.2 4.9 4.9v.7c0 2.7-2.2 4.9-4.9 4.9z"
3018
- }, /* @__PURE__ */ import_react76.default.createElement("animate", {
3019
- attributeName: "opacity",
3020
- attributeType: "XML",
3021
- values: "1; .01; 1; 1; 1;",
3022
- begin: "0.4s",
3023
- dur: "2.5s",
3024
- repeatCount: "indefinite"
3025
- })), /* @__PURE__ */ import_react76.default.createElement("path", {
3026
- id: "XMLID_24_",
3027
- d: "M51.2 112.9h-.7c-2.7 0-4.9-2.2-4.9-4.9v-.7c0-2.7 2.2-4.9 4.9-4.9h.7c2.7 0 4.9 2.2 4.9 4.9v.7c-.1 2.8-2.2 4.9-4.9 4.9z"
3028
- }, /* @__PURE__ */ import_react76.default.createElement("animate", {
3029
- attributeName: "opacity",
3030
- attributeType: "XML",
3031
- values: "1; .01; 1; 1; 1;",
3032
- begin: "0.3s",
3033
- dur: "2.5s",
3034
- repeatCount: "indefinite"
3035
- })), /* @__PURE__ */ import_react76.default.createElement("path", {
3036
- id: "XMLID_25_",
3037
- d: "M42.8 124.5h-.7c-2.7 0-4.9-2.2-4.9-4.9v-.7c0-2.7 2.2-4.9 4.9-4.9h.7c2.7 0 4.9 2.2 4.9 4.9v.7c-.1 2.7-2.2 4.9-4.9 4.9z"
3038
- }, /* @__PURE__ */ import_react76.default.createElement("animate", {
3039
- attributeName: "opacity",
3040
- attributeType: "XML",
3041
- values: "1; .01; 1; 1; 1;",
3042
- begin: "0.2s",
3043
- dur: "2.5s",
3044
- repeatCount: "indefinite"
3045
- })), /* @__PURE__ */ import_react76.default.createElement("path", {
3046
- id: "XMLID_26_",
3047
- d: "M34.4 136h-.7c-2.7 0-4.9-2.2-4.9-4.9v-.7c0-2.7 2.2-4.9 4.9-4.9h.7c2.7 0 4.9 2.2 4.9 4.9v.7c-.1 2.7-2.2 4.9-4.9 4.9z"
3048
- }, /* @__PURE__ */ import_react76.default.createElement("animate", {
3049
- attributeName: "opacity",
3050
- attributeType: "XML",
3051
- values: "1; .01; 1; 1; 1;",
3052
- begin: "0.1s",
3053
- dur: "2.5s",
3054
- repeatCount: "indefinite"
3055
- })), /* @__PURE__ */ import_react76.default.createElement("path", {
3056
- id: "XMLID_27_",
3057
- d: "M26 147.6h-.7c-2.7 0-4.9-2.2-4.9-4.9v-.7c0-2.7 2.2-4.9 4.9-4.9h.7c2.7 0 4.9 2.2 4.9 4.9v.7c-.1 2.8-2.2 4.9-4.9 4.9z"
3058
- }, /* @__PURE__ */ import_react76.default.createElement("animate", {
3059
- attributeName: "opacity",
3060
- attributeType: "XML",
3061
- values: "1; .01; 1; 1; 1;",
3062
- begin: "0.0s",
3063
- dur: "2.5s",
3064
- repeatCount: "indefinite"
3065
- }))));
3154
+ var import_system55 = require("@marigold/system");
3155
+ var import_react78 = __toESM(require("react"));
3156
+ var XLoader = (0, import_react78.forwardRef)((props, ref) => /* @__PURE__ */ import_react78.default.createElement(
3157
+ import_system55.SVG,
3158
+ {
3159
+ id: "XLoader",
3160
+ xmlns: "http://www.w3.org/2000/svg",
3161
+ size: 150,
3162
+ viewBox: "0 0 150 150",
3163
+ ...props,
3164
+ ...ref
3165
+ },
3166
+ /* @__PURE__ */ import_react78.default.createElement("path", { id: "XMLID_1_", d: "M35.3 27h26.5l54 74.1H88.7z" }),
3167
+ /* @__PURE__ */ import_react78.default.createElement(
3168
+ "path",
3169
+ {
3170
+ id: "XMLID_5_",
3171
+ d: "M124.3 12.8h-.7c-2.7 0-4.9-2.2-4.9-4.9v-.7c0-2.7 2.2-4.9 4.9-4.9h.7c2.7 0 4.9 2.2 4.9 4.9v.7c0 2.7-2.2 4.9-4.9 4.9z"
3172
+ },
3173
+ /* @__PURE__ */ import_react78.default.createElement(
3174
+ "animate",
3175
+ {
3176
+ attributeName: "opacity",
3177
+ attributeType: "XML",
3178
+ values: "1; .01; 1; 1; 1;",
3179
+ begin: "1.0s",
3180
+ dur: "2.5s",
3181
+ repeatCount: "indefinite"
3182
+ }
3183
+ )
3184
+ ),
3185
+ /* @__PURE__ */ import_react78.default.createElement(
3186
+ "path",
3187
+ {
3188
+ id: "XMLID_18_",
3189
+ d: "M115.9 24.4h-.7c-2.7 0-4.9-2.2-4.9-4.9v-.7c0-2.7 2.2-4.9 4.9-4.9h.7c2.7 0 4.9 2.2 4.9 4.9v.7c0 2.7-2.2 4.9-4.9 4.9z"
3190
+ },
3191
+ /* @__PURE__ */ import_react78.default.createElement(
3192
+ "animate",
3193
+ {
3194
+ attributeName: "opacity",
3195
+ attributeType: "XML",
3196
+ values: "1; .01; 1; 1; 1;",
3197
+ begin: "0.9s",
3198
+ dur: "2.5s",
3199
+ repeatCount: "indefinite"
3200
+ }
3201
+ )
3202
+ ),
3203
+ /* @__PURE__ */ import_react78.default.createElement(
3204
+ "path",
3205
+ {
3206
+ id: "XMLID_19_",
3207
+ d: "M107.5 35.9h-.7c-2.7 0-4.9-2.2-4.9-4.9v-.7c0-2.7 2.2-4.9 4.9-4.9h.7c2.7 0 4.9 2.2 4.9 4.9v.7c0 2.7-2.2 4.9-4.9 4.9z"
3208
+ },
3209
+ /* @__PURE__ */ import_react78.default.createElement(
3210
+ "animate",
3211
+ {
3212
+ attributeName: "opacity",
3213
+ attributeType: "XML",
3214
+ values: "1; .01; 1; 1; 1;",
3215
+ begin: "0.8s",
3216
+ dur: "2.5s",
3217
+ repeatCount: "indefinite"
3218
+ }
3219
+ )
3220
+ ),
3221
+ /* @__PURE__ */ import_react78.default.createElement(
3222
+ "path",
3223
+ {
3224
+ id: "XMLID_20_",
3225
+ d: "M99.1 47.5h-.7c-2.7 0-4.9-2.2-4.9-4.9v-.7c0-2.7 2.2-4.9 4.9-4.9h.7c2.7 0 4.9 2.2 4.9 4.9v.7c0 2.7-2.2 4.9-4.9 4.9z"
3226
+ },
3227
+ /* @__PURE__ */ import_react78.default.createElement(
3228
+ "animate",
3229
+ {
3230
+ attributeName: "opacity",
3231
+ attributeType: "XML",
3232
+ values: "1; .01; 1; 1; 1;",
3233
+ begin: "0.7s",
3234
+ dur: "2.5s",
3235
+ repeatCount: "indefinite"
3236
+ }
3237
+ )
3238
+ ),
3239
+ /* @__PURE__ */ import_react78.default.createElement(
3240
+ "path",
3241
+ {
3242
+ id: "XMLID_21_",
3243
+ d: "M90.7 59H90c-2.7 0-4.9-2.2-4.9-4.9v-.7c0-2.7 2.2-4.9 4.9-4.9h.7c2.7 0 4.9 2.2 4.9 4.9v.7c0 2.8-2.2 4.9-4.9 4.9z"
3244
+ },
3245
+ /* @__PURE__ */ import_react78.default.createElement(
3246
+ "animate",
3247
+ {
3248
+ attributeName: "opacity",
3249
+ attributeType: "XML",
3250
+ values: "1; .01; 1; 1; 1;",
3251
+ begin: "0.6s",
3252
+ dur: "2.5s",
3253
+ repeatCount: "indefinite"
3254
+ }
3255
+ )
3256
+ ),
3257
+ /* @__PURE__ */ import_react78.default.createElement(
3258
+ "path",
3259
+ {
3260
+ id: "XMLID_22_",
3261
+ d: "M68 89.8h-.7c-2.7 0-4.9-2.2-4.9-4.9v-.7c0-2.7 2.2-4.9 4.9-4.9h.7c2.7 0 4.9 2.2 4.9 4.9v.8c0 2.6-2.2 4.8-4.9 4.8z"
3262
+ },
3263
+ /* @__PURE__ */ import_react78.default.createElement(
3264
+ "animate",
3265
+ {
3266
+ attributeName: "opacity",
3267
+ attributeType: "XML",
3268
+ values: "1; .01; 1; 1; 1;",
3269
+ begin: "0.5s",
3270
+ dur: "2.5s",
3271
+ repeatCount: "indefinite"
3272
+ }
3273
+ )
3274
+ ),
3275
+ /* @__PURE__ */ import_react78.default.createElement(
3276
+ "path",
3277
+ {
3278
+ id: "XMLID_23_",
3279
+ d: "M59.6 101.4h-.7c-2.7 0-4.9-2.2-4.9-4.9v-.7c0-2.7 2.2-4.9 4.9-4.9h.7c2.7 0 4.9 2.2 4.9 4.9v.7c0 2.7-2.2 4.9-4.9 4.9z"
3280
+ },
3281
+ /* @__PURE__ */ import_react78.default.createElement(
3282
+ "animate",
3283
+ {
3284
+ attributeName: "opacity",
3285
+ attributeType: "XML",
3286
+ values: "1; .01; 1; 1; 1;",
3287
+ begin: "0.4s",
3288
+ dur: "2.5s",
3289
+ repeatCount: "indefinite"
3290
+ }
3291
+ )
3292
+ ),
3293
+ /* @__PURE__ */ import_react78.default.createElement(
3294
+ "path",
3295
+ {
3296
+ id: "XMLID_24_",
3297
+ d: "M51.2 112.9h-.7c-2.7 0-4.9-2.2-4.9-4.9v-.7c0-2.7 2.2-4.9 4.9-4.9h.7c2.7 0 4.9 2.2 4.9 4.9v.7c-.1 2.8-2.2 4.9-4.9 4.9z"
3298
+ },
3299
+ /* @__PURE__ */ import_react78.default.createElement(
3300
+ "animate",
3301
+ {
3302
+ attributeName: "opacity",
3303
+ attributeType: "XML",
3304
+ values: "1; .01; 1; 1; 1;",
3305
+ begin: "0.3s",
3306
+ dur: "2.5s",
3307
+ repeatCount: "indefinite"
3308
+ }
3309
+ )
3310
+ ),
3311
+ /* @__PURE__ */ import_react78.default.createElement(
3312
+ "path",
3313
+ {
3314
+ id: "XMLID_25_",
3315
+ d: "M42.8 124.5h-.7c-2.7 0-4.9-2.2-4.9-4.9v-.7c0-2.7 2.2-4.9 4.9-4.9h.7c2.7 0 4.9 2.2 4.9 4.9v.7c-.1 2.7-2.2 4.9-4.9 4.9z"
3316
+ },
3317
+ /* @__PURE__ */ import_react78.default.createElement(
3318
+ "animate",
3319
+ {
3320
+ attributeName: "opacity",
3321
+ attributeType: "XML",
3322
+ values: "1; .01; 1; 1; 1;",
3323
+ begin: "0.2s",
3324
+ dur: "2.5s",
3325
+ repeatCount: "indefinite"
3326
+ }
3327
+ )
3328
+ ),
3329
+ /* @__PURE__ */ import_react78.default.createElement(
3330
+ "path",
3331
+ {
3332
+ id: "XMLID_26_",
3333
+ d: "M34.4 136h-.7c-2.7 0-4.9-2.2-4.9-4.9v-.7c0-2.7 2.2-4.9 4.9-4.9h.7c2.7 0 4.9 2.2 4.9 4.9v.7c-.1 2.7-2.2 4.9-4.9 4.9z"
3334
+ },
3335
+ /* @__PURE__ */ import_react78.default.createElement(
3336
+ "animate",
3337
+ {
3338
+ attributeName: "opacity",
3339
+ attributeType: "XML",
3340
+ values: "1; .01; 1; 1; 1;",
3341
+ begin: "0.1s",
3342
+ dur: "2.5s",
3343
+ repeatCount: "indefinite"
3344
+ }
3345
+ )
3346
+ ),
3347
+ /* @__PURE__ */ import_react78.default.createElement(
3348
+ "path",
3349
+ {
3350
+ id: "XMLID_27_",
3351
+ d: "M26 147.6h-.7c-2.7 0-4.9-2.2-4.9-4.9v-.7c0-2.7 2.2-4.9 4.9-4.9h.7c2.7 0 4.9 2.2 4.9 4.9v.7c-.1 2.8-2.2 4.9-4.9 4.9z"
3352
+ },
3353
+ /* @__PURE__ */ import_react78.default.createElement(
3354
+ "animate",
3355
+ {
3356
+ attributeName: "opacity",
3357
+ attributeType: "XML",
3358
+ values: "1; .01; 1; 1; 1;",
3359
+ begin: "0.0s",
3360
+ dur: "2.5s",
3361
+ repeatCount: "indefinite"
3362
+ }
3363
+ )
3364
+ )
3365
+ ));
3066
3366
  // Annotate the CommonJS export names for ESM import in node:
3067
3367
  0 && (module.exports = {
3368
+ ActionMenu,
3068
3369
  Aside,
3069
3370
  Aspect,
3070
3371
  Badge,