prime-ui-kit 0.18.0 → 0.19.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 (104) hide show
  1. package/dist/chunks/{chunk-OAXJWF3L.js → chunk-RZNGLELR.js} +120 -114
  2. package/dist/chunks/{chunk-MB4CXSLL.js → chunk-WYCTXD63.js} +832 -619
  3. package/dist/chunks/{chunk-X3JT5CLR.js → chunk-ZTZ2ML2B.js} +1 -1
  4. package/dist/color-picker.js +2 -2
  5. package/dist/components/data-table/ColumnsMenu.d.ts +16 -20
  6. package/dist/components/data-table/DataTable.d.ts +14 -11
  7. package/dist/components/data-table/Head.d.ts +8 -1
  8. package/dist/components/data-table/Row.d.ts +7 -1
  9. package/dist/components/data-table/StateRows.d.ts +3 -1
  10. package/dist/components/field-list/FieldList.d.ts +8 -8
  11. package/dist/components/index.d.ts +1 -1
  12. package/dist/components/kanban/Kanban.d.ts +4 -0
  13. package/dist/components/list/List.d.ts +9 -4
  14. package/dist/index.css +1 -1
  15. package/dist/index.js +2 -2
  16. package/dist/internal/fieldCell.d.ts +6 -0
  17. package/dist/internal/leaveGuard.d.ts +6 -0
  18. package/dist/internal/overlay/DialogGuard.d.ts +3 -2
  19. package/dist/internal/overlay/DialogParts.d.ts +14 -5
  20. package/dist/layout/index.d.ts +1 -1
  21. package/dist/layout/page/Page.d.ts +1 -7
  22. package/dist/skill/anti-slop.md +23 -0
  23. package/dist/skill/api-contract.md +1 -1
  24. package/dist/skill/cheatsheet.md +7 -3
  25. package/dist/skill/checklist.md +4 -0
  26. package/dist/skill/composition.md +70 -12
  27. package/dist/skill/layouts.md +1 -1
  28. package/dist/skill/reference/components/confirm-dialog/COMPONENT.md +1 -1
  29. package/dist/skill/reference/components/data-table/COMPONENT.md +40 -40
  30. package/dist/skill/reference/components/data-table/examples/actions-column.tsx +154 -0
  31. package/dist/skill/reference/components/data-table/examples/columns-visibility.tsx +3 -12
  32. package/dist/skill/reference/components/data-table/examples/controlled.tsx +1 -1
  33. package/dist/skill/reference/components/data-table/examples/narrow.tsx +4 -11
  34. package/dist/skill/reference/components/data-table/examples/row-link.tsx +18 -22
  35. package/dist/skill/reference/components/data-table/examples/screen.tsx +12 -1
  36. package/dist/skill/reference/components/data-table/examples/toolbar.tsx +26 -32
  37. package/dist/skill/reference/components/dnd/COMPONENT.md +4 -3
  38. package/dist/skill/reference/components/dnd/examples/examples.module.css +4 -3
  39. package/dist/skill/reference/components/dnd/examples/handle.tsx +5 -5
  40. package/dist/skill/reference/components/dnd/examples/locked.tsx +1 -1
  41. package/dist/skill/reference/components/dnd/examples/table.tsx +6 -6
  42. package/dist/skill/reference/components/drawer/COMPONENT.md +26 -10
  43. package/dist/skill/reference/components/drawer/examples/header-actions.tsx +1 -1
  44. package/dist/skill/reference/components/drawer/examples/loading.tsx +58 -0
  45. package/dist/skill/reference/components/field-list/COMPONENT.md +29 -25
  46. package/dist/skill/reference/components/field-list/examples/base-row.tsx +2 -1
  47. package/dist/skill/reference/components/field-list/examples/locked.tsx +11 -11
  48. package/dist/skill/reference/components/field-list/examples/reorder.tsx +1 -1
  49. package/dist/skill/reference/components/field-list/examples/screen.module.css +1 -1
  50. package/dist/skill/reference/components/field-list/examples/screen.tsx +168 -162
  51. package/dist/skill/reference/components/field-list/examples/totals.tsx +9 -8
  52. package/dist/skill/reference/components/kanban/COMPONENT.md +6 -2
  53. package/dist/skill/reference/components/kanban/examples/states.tsx +7 -5
  54. package/dist/skill/reference/components/list/COMPONENT.md +21 -11
  55. package/dist/skill/reference/components/list/examples/reorder.tsx +42 -7
  56. package/dist/skill/reference/components/modal/COMPONENT.md +23 -10
  57. package/dist/skill/reference/components/segmented-control/COMPONENT.md +3 -2
  58. package/dist/skill/reference/components/sheet/COMPONENT.md +18 -7
  59. package/dist/skill/reference/layout/page/COMPONENT.md +5 -12
  60. package/dist/skill/reference/layout/page/examples/screen.module.css +1 -1
  61. package/dist/skill/reference/layout/page/examples/screen.tsx +93 -104
  62. package/dist/skill/reference/layout/page/examples/sections.tsx +2 -15
  63. package/dist/skill/responsive.md +7 -5
  64. package/dist/tokens/semantic.d.ts +1 -1
  65. package/dist/tokens/themes/dark.d.ts +1 -1
  66. package/package.json +1 -1
  67. package/src/components/confirm-dialog/COMPONENT.md +1 -1
  68. package/src/components/data-table/COMPONENT.md +40 -40
  69. package/src/components/data-table/examples/actions-column.tsx +154 -0
  70. package/src/components/data-table/examples/columns-visibility.tsx +3 -12
  71. package/src/components/data-table/examples/controlled.tsx +1 -1
  72. package/src/components/data-table/examples/narrow.tsx +4 -11
  73. package/src/components/data-table/examples/row-link.tsx +18 -22
  74. package/src/components/data-table/examples/screen.tsx +12 -1
  75. package/src/components/data-table/examples/toolbar.tsx +26 -32
  76. package/src/components/dnd/COMPONENT.md +4 -3
  77. package/src/components/dnd/examples/examples.module.css +4 -3
  78. package/src/components/dnd/examples/handle.tsx +5 -5
  79. package/src/components/dnd/examples/locked.tsx +1 -1
  80. package/src/components/dnd/examples/table.tsx +6 -6
  81. package/src/components/drawer/COMPONENT.md +26 -10
  82. package/src/components/drawer/examples/header-actions.tsx +1 -1
  83. package/src/components/drawer/examples/loading.tsx +58 -0
  84. package/src/components/field-list/COMPONENT.md +29 -25
  85. package/src/components/field-list/examples/base-row.tsx +2 -1
  86. package/src/components/field-list/examples/locked.tsx +11 -11
  87. package/src/components/field-list/examples/reorder.tsx +1 -1
  88. package/src/components/field-list/examples/screen.module.css +1 -1
  89. package/src/components/field-list/examples/screen.tsx +168 -162
  90. package/src/components/field-list/examples/totals.tsx +9 -8
  91. package/src/components/kanban/COMPONENT.md +6 -2
  92. package/src/components/kanban/examples/states.tsx +7 -5
  93. package/src/components/list/COMPONENT.md +21 -11
  94. package/src/components/list/examples/reorder.tsx +42 -7
  95. package/src/components/modal/COMPONENT.md +23 -10
  96. package/src/components/segmented-control/COMPONENT.md +3 -2
  97. package/src/components/sheet/COMPONENT.md +18 -7
  98. package/src/layout/page/COMPONENT.md +5 -12
  99. package/src/layout/page/examples/screen.module.css +1 -1
  100. package/src/layout/page/examples/screen.tsx +93 -104
  101. package/src/layout/page/examples/sections.tsx +2 -15
  102. package/src/styles/theme-dark.css +1 -1
  103. package/src/styles/theme-light.css +1 -1
  104. package/dist/components/data-table/context.d.ts +0 -14
@@ -3333,6 +3333,39 @@ var Avatar = {
3333
3333
  Overflow: AvatarOverflow
3334
3334
  };
3335
3335
 
3336
+ // src/components/skeleton/Skeleton.module.css
3337
+ var Skeleton_default = {
3338
+ root: "Skeleton_root",
3339
+ primeSkeletonPulse: "Skeleton_primeSkeletonPulse",
3340
+ line: "Skeleton_line"
3341
+ };
3342
+
3343
+ // src/components/skeleton/Skeleton.tsx
3344
+ import { jsx as jsx17 } from "react/jsx-runtime";
3345
+ function Skeleton({
3346
+ shape = "text",
3347
+ size: sizeProp,
3348
+ lines = 1,
3349
+ className,
3350
+ ...rest
3351
+ }) {
3352
+ const size = useControlSize(sizeProp);
3353
+ const count = shape === "text" ? Math.max(1, Math.floor(lines)) : 0;
3354
+ return /* @__PURE__ */ jsx17(
3355
+ "span",
3356
+ {
3357
+ "aria-hidden": "true",
3358
+ ...rest,
3359
+ className: cx(fieldTierClass, Skeleton_default.root, className),
3360
+ ...toDataAttributes({ shape, size }),
3361
+ children: Array.from({ length: count }, (_, index) => (
3362
+ // biome-ignore lint/suspicious/noArrayIndexKey: identical placeholder lines
3363
+ /* @__PURE__ */ jsx17("span", { className: Skeleton_default.line }, index)
3364
+ ))
3365
+ }
3366
+ );
3367
+ }
3368
+
3336
3369
  // src/components/label/Label.module.css
3337
3370
  var Label_default = {
3338
3371
  root: "Label_root",
@@ -3343,7 +3376,7 @@ var Label_default = {
3343
3376
  };
3344
3377
 
3345
3378
  // src/components/label/Label.tsx
3346
- import { Fragment as Fragment5, jsx as jsx17, jsxs as jsxs8 } from "react/jsx-runtime";
3379
+ import { Fragment as Fragment5, jsx as jsx18, jsxs as jsxs8 } from "react/jsx-runtime";
3347
3380
  var LABEL_LABELS = { optional: "\u043D\u0435\u043E\u0431\u044F\u0437\u0430\u0442\u0435\u043B\u044C\u043D\u043E" };
3348
3381
  function LabelRoot({
3349
3382
  className,
@@ -3362,7 +3395,7 @@ function LabelRoot({
3362
3395
  const labels = useLabels(LABEL_LABELS, labelsProp);
3363
3396
  return (
3364
3397
  // biome-ignore lint/a11y/noLabelWithoutControl: field label primitive; association via htmlFor or wrapping control is caller responsibility
3365
- /* @__PURE__ */ jsx17(
3398
+ /* @__PURE__ */ jsx18(
3366
3399
  "label",
3367
3400
  {
3368
3401
  ref,
@@ -3377,7 +3410,7 @@ function LabelRoot({
3377
3410
  children: tier.provide(
3378
3411
  /* @__PURE__ */ jsxs8(Fragment5, { children: [
3379
3412
  children,
3380
- /* @__PURE__ */ jsx17(LabelMarks, { required, optional, optionalLabel: labels.optional })
3413
+ /* @__PURE__ */ jsx18(LabelMarks, { required, optional, optionalLabel: labels.optional })
3381
3414
  ] })
3382
3415
  )
3383
3416
  }
@@ -3393,16 +3426,16 @@ function LabelMarks({
3393
3426
  }) {
3394
3427
  const dim = disabled || void 0;
3395
3428
  return /* @__PURE__ */ jsxs8(Fragment5, { children: [
3396
- required ? /* @__PURE__ */ jsx17("span", { className: Label_default.asterisk, "aria-hidden": "true", "data-disabled": dim, children: "*" }) : null,
3397
- optional ? /* @__PURE__ */ jsx17("span", { className: Label_default.optional, "data-disabled": dim, children: optionalLabel }) : null
3429
+ required ? /* @__PURE__ */ jsx18("span", { className: Label_default.asterisk, "aria-hidden": "true", "data-disabled": dim, children: "*" }) : null,
3430
+ optional ? /* @__PURE__ */ jsx18("span", { className: Label_default.optional, "data-disabled": dim, children: optionalLabel }) : null
3398
3431
  ] });
3399
3432
  }
3400
3433
  function LabelIcon({ className, ...rest }) {
3401
- return /* @__PURE__ */ jsx17("span", { className: cx(Label_default.icon, className), "aria-hidden": "true", ...rest });
3434
+ return /* @__PURE__ */ jsx18("span", { className: cx(Label_default.icon, className), "aria-hidden": "true", ...rest });
3402
3435
  }
3403
3436
  LabelIcon.displayName = "Label.Icon";
3404
3437
  function LabelDescription({ className, ...rest }) {
3405
- return /* @__PURE__ */ jsx17("span", { className: cx(Label_default.description, className), ...rest });
3438
+ return /* @__PURE__ */ jsx18("span", { className: cx(Label_default.description, className), ...rest });
3406
3439
  }
3407
3440
  LabelDescription.displayName = "Label.Description";
3408
3441
  var Label = {
@@ -3418,7 +3451,7 @@ var Hint_default = {
3418
3451
  };
3419
3452
 
3420
3453
  // src/components/hint/Hint.tsx
3421
- import { jsx as jsx18 } from "react/jsx-runtime";
3454
+ import { jsx as jsx19 } from "react/jsx-runtime";
3422
3455
  function HintRoot({
3423
3456
  className,
3424
3457
  size: sizeProp,
@@ -3432,7 +3465,7 @@ function HintRoot({
3432
3465
  const disabled = useInheritedDisabled(disabledProp);
3433
3466
  const shownTone = tone === "neutral" || invalid || disabled ? void 0 : tone;
3434
3467
  return tier.provide(
3435
- /* @__PURE__ */ jsx18(
3468
+ /* @__PURE__ */ jsx19(
3436
3469
  "p",
3437
3470
  {
3438
3471
  ...rest,
@@ -3458,7 +3491,7 @@ function HintRoot({
3458
3491
  }
3459
3492
  HintRoot.displayName = "Hint.Root";
3460
3493
  function HintIcon({ className, ...rest }) {
3461
- return /* @__PURE__ */ jsx18("span", { "aria-hidden": "true", className: cx(Hint_default.icon, className), ...rest });
3494
+ return /* @__PURE__ */ jsx19("span", { "aria-hidden": "true", className: cx(Hint_default.icon, className), ...rest });
3462
3495
  }
3463
3496
  HintIcon.displayName = "Hint.Icon";
3464
3497
  var Hint = { Root: HintRoot, Icon: HintIcon };
@@ -3474,7 +3507,7 @@ var CheckMark_default = {
3474
3507
  };
3475
3508
 
3476
3509
  // src/internal/CheckMark.tsx
3477
- import { jsx as jsx19, jsxs as jsxs9 } from "react/jsx-runtime";
3510
+ import { jsx as jsx20, jsxs as jsxs9 } from "react/jsx-runtime";
3478
3511
  function CheckMark({ state, className }) {
3479
3512
  return /* @__PURE__ */ jsxs9(
3480
3513
  "svg",
@@ -3485,8 +3518,8 @@ function CheckMark({ state, className }) {
3485
3518
  "aria-hidden": "true",
3486
3519
  focusable: "false",
3487
3520
  children: [
3488
- /* @__PURE__ */ jsx19("path", { d: "M5.5 12.5l4.25 4.25L18.5 8", pathLength: 1, className: CheckMark_default.check }),
3489
- /* @__PURE__ */ jsx19("path", { d: "M7 12h10", pathLength: 1, className: CheckMark_default.bar })
3521
+ /* @__PURE__ */ jsx20("path", { d: "M5.5 12.5l4.25 4.25L18.5 8", pathLength: 1, className: CheckMark_default.check }),
3522
+ /* @__PURE__ */ jsx20("path", { d: "M7 12h10", pathLength: 1, className: CheckMark_default.bar })
3490
3523
  ]
3491
3524
  }
3492
3525
  );
@@ -3528,7 +3561,7 @@ var FieldFrame_default = {
3528
3561
  };
3529
3562
 
3530
3563
  // src/internal/FieldFrame.tsx
3531
- import { jsx as jsx20, jsxs as jsxs10 } from "react/jsx-runtime";
3564
+ import { jsx as jsx21, jsxs as jsxs10 } from "react/jsx-runtime";
3532
3565
  var REQUIRED_ROLES = /* @__PURE__ */ new Set([
3533
3566
  "checkbox",
3534
3567
  "combobox",
@@ -3617,9 +3650,9 @@ function FieldSupport({
3617
3650
  }) {
3618
3651
  let text = null;
3619
3652
  if (ids.showError) {
3620
- text = /* @__PURE__ */ jsx20(Hint.Root, { id: ids.errorId, size, invalid: true, className: textClassName, children: error });
3653
+ text = /* @__PURE__ */ jsx21(Hint.Root, { id: ids.errorId, size, invalid: true, className: textClassName, children: error });
3621
3654
  } else if (leaving) {
3622
- text = /* @__PURE__ */ jsx20(
3655
+ text = /* @__PURE__ */ jsx21(
3623
3656
  Hint.Root,
3624
3657
  {
3625
3658
  size,
@@ -3631,7 +3664,7 @@ function FieldSupport({
3631
3664
  }
3632
3665
  );
3633
3666
  } else if (ids.showHint) {
3634
- text = /* @__PURE__ */ jsx20(
3667
+ text = /* @__PURE__ */ jsx21(
3635
3668
  Hint.Root,
3636
3669
  {
3637
3670
  id: ids.hintId,
@@ -3643,7 +3676,7 @@ function FieldSupport({
3643
3676
  }
3644
3677
  );
3645
3678
  }
3646
- return /* @__PURE__ */ jsx20("div", { className, "aria-live": live ? "polite" : void 0, children: text });
3679
+ return /* @__PURE__ */ jsx21("div", { className, "aria-live": live ? "polite" : void 0, children: text });
3647
3680
  }
3648
3681
  function FieldFrame({
3649
3682
  size,
@@ -3670,7 +3703,7 @@ function FieldFrame({
3670
3703
  const shake = useErrorShake(ids.invalid, error);
3671
3704
  const cell = useFieldCell();
3672
3705
  const shownLabel = hasContent(label) ? label : cell?.label;
3673
- const labelNode = hasContent(shownLabel) ? /* @__PURE__ */ jsx20(
3706
+ const labelNode = hasContent(shownLabel) ? /* @__PURE__ */ jsx21(
3674
3707
  Label.Root,
3675
3708
  {
3676
3709
  id: ids.labelId,
@@ -3702,7 +3735,7 @@ function FieldFrame({
3702
3735
  children: [
3703
3736
  labelEnd != null ? /* @__PURE__ */ jsxs10("div", { className: FieldFrame_default.labelRow, children: [
3704
3737
  labelNode,
3705
- /* @__PURE__ */ jsx20("span", { className: FieldFrame_default.labelEnd, children: labelEnd })
3738
+ /* @__PURE__ */ jsx21("span", { className: FieldFrame_default.labelEnd, children: labelEnd })
3706
3739
  ] }) : labelNode,
3707
3740
  /* @__PURE__ */ jsxs10("div", { className: cx(FieldFrame_default.body, enterMotion_default.shakeParts), "data-shake": shake, children: [
3708
3741
  children,
@@ -3717,7 +3750,7 @@ function FieldFrame({
3717
3750
  empty: !showSupport || void 0
3718
3751
  }),
3719
3752
  children: [
3720
- /* @__PURE__ */ jsx20(
3753
+ /* @__PURE__ */ jsx21(
3721
3754
  FieldSupport,
3722
3755
  {
3723
3756
  ids,
@@ -3736,7 +3769,7 @@ function FieldFrame({
3736
3769
  }
3737
3770
  )
3738
3771
  ] }),
3739
- requiredLabel && ids.required ? /* @__PURE__ */ jsx20(VisuallyHidden, { id: ids.requiredId, children: requiredLabel }) : null
3772
+ requiredLabel && ids.required ? /* @__PURE__ */ jsx21(VisuallyHidden, { id: ids.requiredId, children: requiredLabel }) : null
3740
3773
  ]
3741
3774
  }
3742
3775
  );
@@ -3751,11 +3784,11 @@ function FieldCounter({ current, max, size, label, className, ...rest }) {
3751
3784
  "data-invalid": current > max || void 0,
3752
3785
  children: [
3753
3786
  /* @__PURE__ */ jsxs10("span", { "aria-hidden": "true", children: [
3754
- /* @__PURE__ */ jsx20(RollingNumber, { children: current }),
3787
+ /* @__PURE__ */ jsx21(RollingNumber, { children: current }),
3755
3788
  "/",
3756
3789
  max
3757
3790
  ] }),
3758
- /* @__PURE__ */ jsx20(VisuallyHidden, { live: "polite", children: formatLabel(label, { current, max }) })
3791
+ /* @__PURE__ */ jsx21(VisuallyHidden, { live: "polite", children: formatLabel(label, { current, max }) })
3759
3792
  ]
3760
3793
  }
3761
3794
  );
@@ -3775,7 +3808,7 @@ var ChoiceField_default = {
3775
3808
  };
3776
3809
 
3777
3810
  // src/internal/ChoiceField.tsx
3778
- import { Fragment as Fragment6, jsx as jsx21, jsxs as jsxs11 } from "react/jsx-runtime";
3811
+ import { Fragment as Fragment6, jsx as jsx22, jsxs as jsxs11 } from "react/jsx-runtime";
3779
3812
  var choiceInputClass = ChoiceField_default.input;
3780
3813
  var choiceVisualClass = cx(ChoiceField_default.visual, press_default.pressPartCompact);
3781
3814
  var choiceBoxClass = ChoiceField_default.box;
@@ -3805,7 +3838,7 @@ function ChoiceField({
3805
3838
  () => ({ required, optional, optionalLabel, disabled }),
3806
3839
  [required, optional, optionalLabel, disabled]
3807
3840
  );
3808
- return /* @__PURE__ */ jsx21(ControlSizeProvider, { value: size, children: /* @__PURE__ */ jsxs11(
3841
+ return /* @__PURE__ */ jsx22(ControlSizeProvider, { value: size, children: /* @__PURE__ */ jsxs11(
3809
3842
  "div",
3810
3843
  {
3811
3844
  className: cx(fieldTierClass, ChoiceField_default.field, className),
@@ -3824,7 +3857,7 @@ function ChoiceField({
3824
3857
  className: cx(ChoiceField_default.row, press_default.pressHost),
3825
3858
  "data-loading": busy || void 0,
3826
3859
  children: [
3827
- /* @__PURE__ */ jsx21(
3860
+ /* @__PURE__ */ jsx22(
3828
3861
  "span",
3829
3862
  {
3830
3863
  className: cx(ChoiceField_default.controlCell, enterMotion_default.shake, touchTargetClass),
@@ -3832,11 +3865,11 @@ function ChoiceField({
3832
3865
  children: control
3833
3866
  }
3834
3867
  ),
3835
- /* @__PURE__ */ jsx21(ChoiceMarksContext, { value: marks, children })
3868
+ /* @__PURE__ */ jsx22(ChoiceMarksContext, { value: marks, children })
3836
3869
  ]
3837
3870
  }
3838
3871
  ),
3839
- /* @__PURE__ */ jsx21(
3872
+ /* @__PURE__ */ jsx22(
3840
3873
  FieldSupport,
3841
3874
  {
3842
3875
  ids,
@@ -3861,7 +3894,7 @@ function ChoiceLabel({ className, children, ...rest }) {
3861
3894
  children,
3862
3895
  marked ? /* @__PURE__ */ jsxs11(Fragment6, { children: [
3863
3896
  " ",
3864
- /* @__PURE__ */ jsx21(
3897
+ /* @__PURE__ */ jsx22(
3865
3898
  LabelMarks,
3866
3899
  {
3867
3900
  required: marks.required,
@@ -3882,7 +3915,7 @@ var Checkbox_default = {
3882
3915
  };
3883
3916
 
3884
3917
  // src/components/checkbox/Checkbox.tsx
3885
- import { Fragment as Fragment7, jsx as jsx22, jsxs as jsxs12 } from "react/jsx-runtime";
3918
+ import { Fragment as Fragment7, jsx as jsx23, jsxs as jsxs12 } from "react/jsx-runtime";
3886
3919
  var CHECKBOX_LABELS = { optional: "\u043D\u0435\u043E\u0431\u044F\u0437\u0430\u0442\u0435\u043B\u044C\u043D\u043E" };
3887
3920
  function CheckboxRoot({
3888
3921
  id,
@@ -3920,7 +3953,7 @@ function CheckboxRoot({
3920
3953
  React33.useLayoutEffect(() => {
3921
3954
  if (internalRef.current) internalRef.current.indeterminate = indeterminate;
3922
3955
  });
3923
- return /* @__PURE__ */ jsx22(
3956
+ return /* @__PURE__ */ jsx23(
3924
3957
  ChoiceField,
3925
3958
  {
3926
3959
  ids,
@@ -3936,7 +3969,7 @@ function CheckboxRoot({
3936
3969
  error,
3937
3970
  className: cx(Checkbox_default.root, className),
3938
3971
  control: /* @__PURE__ */ jsxs12(Fragment7, { children: [
3939
- /* @__PURE__ */ jsx22(
3972
+ /* @__PURE__ */ jsx23(
3940
3973
  "input",
3941
3974
  {
3942
3975
  ...inputRest,
@@ -3955,13 +3988,13 @@ function CheckboxRoot({
3955
3988
  "aria-describedby": ids.describedBy
3956
3989
  }
3957
3990
  ),
3958
- /* @__PURE__ */ jsx22(
3991
+ /* @__PURE__ */ jsx23(
3959
3992
  "span",
3960
3993
  {
3961
3994
  className: cx(choiceVisualClass, choiceBoxClass, Checkbox_default.control),
3962
3995
  "data-shape": shape,
3963
3996
  "aria-hidden": "true",
3964
- children: /* @__PURE__ */ jsx22(
3997
+ children: /* @__PURE__ */ jsx23(
3965
3998
  CheckMark,
3966
3999
  {
3967
4000
  state: indeterminate ? "indeterminate" : checked ? "checked" : "unchecked"
@@ -3976,7 +4009,7 @@ function CheckboxRoot({
3976
4009
  }
3977
4010
  CheckboxRoot.displayName = "Checkbox.Root";
3978
4011
  function CheckboxLabel(props) {
3979
- return /* @__PURE__ */ jsx22(ChoiceLabel, { ...props });
4012
+ return /* @__PURE__ */ jsx23(ChoiceLabel, { ...props });
3980
4013
  }
3981
4014
  CheckboxLabel.displayName = "Checkbox.Label";
3982
4015
  function CheckboxIndicator({
@@ -3989,7 +4022,7 @@ function CheckboxIndicator({
3989
4022
  ...rest
3990
4023
  }) {
3991
4024
  const size = useControlSize(sizeProp);
3992
- return /* @__PURE__ */ jsx22(
4025
+ return /* @__PURE__ */ jsx23(
3993
4026
  "span",
3994
4027
  {
3995
4028
  "aria-hidden": "true",
@@ -4008,7 +4041,7 @@ function CheckboxIndicator({
4008
4041
  disabled: disabled || void 0
4009
4042
  }),
4010
4043
  ...rest,
4011
- children: /* @__PURE__ */ jsx22(CheckMark, { state: indeterminate ? "indeterminate" : checked ? "checked" : "unchecked" })
4044
+ children: /* @__PURE__ */ jsx23(CheckMark, { state: indeterminate ? "indeterminate" : checked ? "checked" : "unchecked" })
4012
4045
  }
4013
4046
  );
4014
4047
  }
@@ -4092,20 +4125,20 @@ var mediaDisk_default = {
4092
4125
  };
4093
4126
 
4094
4127
  // src/internal/mediaDisk.tsx
4095
- import { jsx as jsx23 } from "react/jsx-runtime";
4128
+ import { jsx as jsx24 } from "react/jsx-runtime";
4096
4129
  var mediaDiskClass = cx(fieldTierClass, mediaPill_default.ink, mediaDisk_default.disk);
4097
4130
  function MediaPlayMark({
4098
4131
  shown = true,
4099
4132
  className
4100
4133
  }) {
4101
- return /* @__PURE__ */ jsx23(
4134
+ return /* @__PURE__ */ jsx24(
4102
4135
  "span",
4103
4136
  {
4104
4137
  className: cx(mediaDiskClass, className),
4105
4138
  "data-size": "l",
4106
4139
  "data-shown": shown,
4107
4140
  "aria-hidden": "true",
4108
- children: /* @__PURE__ */ jsx23(Icon, { name: "action.play", fill: "currentColor" })
4141
+ children: /* @__PURE__ */ jsx24(Icon, { name: "action.play", fill: "currentColor" })
4109
4142
  }
4110
4143
  );
4111
4144
  }
@@ -4165,7 +4198,7 @@ var Thumbnail_default = {
4165
4198
  };
4166
4199
 
4167
4200
  // src/components/thumbnail/Thumbnail.tsx
4168
- import { Fragment as Fragment8, jsx as jsx24, jsxs as jsxs13 } from "react/jsx-runtime";
4201
+ import { Fragment as Fragment8, jsx as jsx25, jsxs as jsxs13 } from "react/jsx-runtime";
4169
4202
  var slot2 = createImageSlot("Thumbnail", { image: Thumbnail_default.image, fallback: Thumbnail_default.fallback });
4170
4203
  function ThumbnailRoot({
4171
4204
  size: sizeProp,
@@ -4207,7 +4240,7 @@ function ThumbnailRoot({
4207
4240
  if (selectable) {
4208
4241
  const { onClick: onClick2 } = rest;
4209
4242
  return provide(
4210
- /* @__PURE__ */ jsx24(slot2.ImageSlotProvider, { children: /* @__PURE__ */ jsxs13(
4243
+ /* @__PURE__ */ jsx25(slot2.ImageSlotProvider, { children: /* @__PURE__ */ jsxs13(
4211
4244
  "button",
4212
4245
  {
4213
4246
  ...rest,
@@ -4222,7 +4255,7 @@ function ThumbnailRoot({
4222
4255
  },
4223
4256
  children: [
4224
4257
  children,
4225
- /* @__PURE__ */ jsx24("span", { className: cx(Thumbnail_default.check, mediaPill_default.choice), "aria-hidden": "true", children: /* @__PURE__ */ jsx24(Checkbox.Indicator, { checked, size: fullWidth ? "s" : compactTier(size) }) })
4258
+ /* @__PURE__ */ jsx25("span", { className: cx(Thumbnail_default.check, mediaPill_default.choice), "aria-hidden": "true", children: /* @__PURE__ */ jsx25(Checkbox.Indicator, { checked, size: fullWidth ? "s" : compactTier(size) }) })
4226
4259
  ]
4227
4260
  }
4228
4261
  ) })
@@ -4230,16 +4263,16 @@ function ThumbnailRoot({
4230
4263
  }
4231
4264
  if (asChild) {
4232
4265
  return provide(
4233
- /* @__PURE__ */ jsx24(slot2.ImageSlotProvider, { children: /* @__PURE__ */ jsx24(Slot, { ...rest, ...frame2, ref, children }) })
4266
+ /* @__PURE__ */ jsx25(slot2.ImageSlotProvider, { children: /* @__PURE__ */ jsx25(Slot, { ...rest, ...frame2, ref, children }) })
4234
4267
  );
4235
4268
  }
4236
4269
  return provide(
4237
- /* @__PURE__ */ jsx24(slot2.ImageSlotProvider, { children: /* @__PURE__ */ jsx24("div", { ref, ...frame2, ...rest, children }) })
4270
+ /* @__PURE__ */ jsx25(slot2.ImageSlotProvider, { children: /* @__PURE__ */ jsx25("div", { ref, ...frame2, ...rest, children }) })
4238
4271
  );
4239
4272
  }
4240
4273
  ThumbnailRoot.displayName = "Thumbnail.Root";
4241
4274
  function ThumbnailImage({ fit = "cover", ...rest }) {
4242
- return /* @__PURE__ */ jsx24(slot2.Image, { ...rest, "data-fit": fit });
4275
+ return /* @__PURE__ */ jsx25(slot2.Image, { ...rest, "data-fit": fit });
4243
4276
  }
4244
4277
  ThumbnailImage.displayName = "Thumbnail.Image";
4245
4278
  function ThumbnailVideoInner({
@@ -4274,7 +4307,7 @@ function ThumbnailVideoInner({
4274
4307
  const [still] = React35.useState(prefersReducedMotion);
4275
4308
  const loops = autoPlay && !still && !controls;
4276
4309
  return /* @__PURE__ */ jsxs13(Fragment8, { children: [
4277
- /* @__PURE__ */ jsx24(
4310
+ /* @__PURE__ */ jsx25(
4278
4311
  "video",
4279
4312
  {
4280
4313
  ...rest,
@@ -4309,12 +4342,12 @@ function ThumbnailVideoInner({
4309
4342
  }
4310
4343
  }
4311
4344
  ),
4312
- !controls && !loops ? /* @__PURE__ */ jsx24(MediaPlayMark, { shown: !playing, className: Thumbnail_default.play }) : null,
4313
- !controls && duration !== null ? /* @__PURE__ */ jsx24("span", { className: cx(textRole_default.caption, mediaPill_default.pill, Thumbnail_default.duration), children: formatDuration(duration) }) : null
4345
+ !controls && !loops ? /* @__PURE__ */ jsx25(MediaPlayMark, { shown: !playing, className: Thumbnail_default.play }) : null,
4346
+ !controls && duration !== null ? /* @__PURE__ */ jsx25("span", { className: cx(textRole_default.caption, mediaPill_default.pill, Thumbnail_default.duration), children: formatDuration(duration) }) : null
4314
4347
  ] });
4315
4348
  }
4316
4349
  function ThumbnailVideo(props) {
4317
- return /* @__PURE__ */ jsx24(ThumbnailVideoInner, { ...props }, props.src);
4350
+ return /* @__PURE__ */ jsx25(ThumbnailVideoInner, { ...props }, props.src);
4318
4351
  }
4319
4352
  ThumbnailVideo.displayName = "Thumbnail.Video";
4320
4353
  var ThumbnailFallback = slot2.Fallback;
@@ -4776,10 +4809,10 @@ function useLayer(open, options) {
4776
4809
  }
4777
4810
 
4778
4811
  // src/internal/overlay/FloatingPanel.tsx
4779
- import { Fragment as Fragment9, jsx as jsx25, jsxs as jsxs14 } from "react/jsx-runtime";
4812
+ import { Fragment as Fragment9, jsx as jsx26, jsxs as jsxs14 } from "react/jsx-runtime";
4780
4813
  function SheetHandle({ swipe }) {
4781
4814
  if (!swipe.enabled) return null;
4782
- return /* @__PURE__ */ jsx25("div", { className: sheet_default.handle, ...{ [SWIPE_HANDLE_ATTRIBUTE]: "" }, "aria-hidden": "true" });
4815
+ return /* @__PURE__ */ jsx26("div", { className: sheet_default.handle, ...{ [SWIPE_HANDLE_ATTRIBUTE]: "" }, "aria-hidden": "true" });
4783
4816
  }
4784
4817
  function FloatingPanel({
4785
4818
  floating,
@@ -4817,9 +4850,9 @@ function FloatingPanel({
4817
4850
  }
4818
4851
  };
4819
4852
  const panelRef = sheet ? ref : mergedRef;
4820
- const panel = scroll ? /* @__PURE__ */ jsx25(ScrollContainer, { ...props, edges: "shadow", ref: panelRef, children }) : /* @__PURE__ */ jsx25("div", { ...props, ref: panelRef, children });
4821
- return /* @__PURE__ */ jsx25(Portal, { children: /* @__PURE__ */ jsx25(LayerProvider, { value: floating.layer, children: /* @__PURE__ */ jsx25(SurfaceDepthProvider, { value: "floating", children: /* @__PURE__ */ jsx25(ControlSizeProvider, { value: size, children: sheet ? /* @__PURE__ */ jsxs14(Fragment9, { children: [
4822
- /* @__PURE__ */ jsx25(
4853
+ const panel = scroll ? /* @__PURE__ */ jsx26(ScrollContainer, { ...props, edges: "shadow", ref: panelRef, children }) : /* @__PURE__ */ jsx26("div", { ...props, ref: panelRef, children });
4854
+ return /* @__PURE__ */ jsx26(Portal, { children: /* @__PURE__ */ jsx26(LayerProvider, { value: floating.layer, children: /* @__PURE__ */ jsx26(SurfaceDepthProvider, { value: "floating", children: /* @__PURE__ */ jsx26(ControlSizeProvider, { value: size, children: sheet ? /* @__PURE__ */ jsxs14(Fragment9, { children: [
4855
+ /* @__PURE__ */ jsx26(
4823
4856
  "div",
4824
4857
  {
4825
4858
  role: "presentation",
@@ -4843,7 +4876,7 @@ function FloatingPanel({
4843
4876
  onPointerDown: swipe.onPointerDown,
4844
4877
  ...swipe.panelProps,
4845
4878
  children: [
4846
- /* @__PURE__ */ jsx25(SheetHandle, { swipe }),
4879
+ /* @__PURE__ */ jsx26(SheetHandle, { swipe }),
4847
4880
  panel
4848
4881
  ]
4849
4882
  }
@@ -4851,7 +4884,7 @@ function FloatingPanel({
4851
4884
  ] }) : panel }) }) }) });
4852
4885
  }
4853
4886
  function FloatingTrigger({ triggerProps, children, ...forwarded }) {
4854
- return /* @__PURE__ */ jsx25(Slot, { ...forwarded, children: /* @__PURE__ */ jsx25(Slot, { ...triggerProps, children }) });
4887
+ return /* @__PURE__ */ jsx26(Slot, { ...forwarded, children: /* @__PURE__ */ jsx26(Slot, { ...triggerProps, children }) });
4855
4888
  }
4856
4889
 
4857
4890
  // src/internal/overlay/useAnchorName.ts
@@ -5106,7 +5139,7 @@ var Popover_default = {
5106
5139
  };
5107
5140
 
5108
5141
  // src/components/popover/Popover.tsx
5109
- import { jsx as jsx26 } from "react/jsx-runtime";
5142
+ import { jsx as jsx27 } from "react/jsx-runtime";
5110
5143
  var [PopoverProvider, usePopoverContext] = createComponentContext("Popover");
5111
5144
  function PopoverRoot({
5112
5145
  open,
@@ -5135,12 +5168,12 @@ function PopoverRoot({
5135
5168
  }),
5136
5169
  [isOpen, setOpen, id, closeOnOutsideClick, closeOnEscape, openOnArrow]
5137
5170
  );
5138
- return /* @__PURE__ */ jsx26(PopoverProvider, { value, children });
5171
+ return /* @__PURE__ */ jsx27(PopoverProvider, { value, children });
5139
5172
  }
5140
5173
  PopoverRoot.displayName = "Popover.Root";
5141
5174
  function PopoverTrigger(props) {
5142
5175
  const { isOpen, setOpen, triggerId, contentId, triggerRef, openOnArrow } = usePopoverContext("Popover.Trigger");
5143
- return /* @__PURE__ */ jsx26(
5176
+ return /* @__PURE__ */ jsx27(
5144
5177
  FloatingTrigger,
5145
5178
  {
5146
5179
  ...props,
@@ -5158,12 +5191,12 @@ PopoverTrigger.displayName = "Popover.Trigger";
5158
5191
  function PopoverAnchor({ children }) {
5159
5192
  const { triggerRef, anchoredRef } = usePopoverContext("Popover.Anchor");
5160
5193
  anchoredRef.current = true;
5161
- return /* @__PURE__ */ jsx26(Slot, { ref: triggerRef, children });
5194
+ return /* @__PURE__ */ jsx27(Slot, { ref: triggerRef, children });
5162
5195
  }
5163
5196
  PopoverAnchor.displayName = "Popover.Anchor";
5164
5197
  function PopoverClose({ children }) {
5165
5198
  const { setOpen } = usePopoverContext("Popover.Close");
5166
- return /* @__PURE__ */ jsx26(Slot, { onClick: () => setOpen(false), children });
5199
+ return /* @__PURE__ */ jsx27(Slot, { onClick: () => setOpen(false), children });
5167
5200
  }
5168
5201
  PopoverClose.displayName = "Popover.Close";
5169
5202
  function PopoverContent({
@@ -5211,7 +5244,7 @@ function PopoverContent({
5211
5244
  [fallbackId, fallbackDescriptionId]
5212
5245
  );
5213
5246
  const anchorName = useAnchorName(isOpen, titleId !== null, triggerRef);
5214
- return /* @__PURE__ */ jsx26(
5247
+ return /* @__PURE__ */ jsx27(
5215
5248
  FloatingPanel,
5216
5249
  {
5217
5250
  ...rest,
@@ -5228,7 +5261,7 @@ function PopoverContent({
5228
5261
  tabIndex: -1,
5229
5262
  "data-flush": flush || void 0,
5230
5263
  className: cx(fieldTierClass, Popover_default.content, className),
5231
- children: /* @__PURE__ */ jsx26(PopoverSlotsContext.Provider, { value: slots, children })
5264
+ children: /* @__PURE__ */ jsx27(PopoverSlotsContext.Provider, { value: slots, children })
5232
5265
  }
5233
5266
  );
5234
5267
  }
@@ -5246,21 +5279,21 @@ function useSlotId(id, kind) {
5246
5279
  return resolved;
5247
5280
  }
5248
5281
  function PopoverHeader({ className, ...rest }) {
5249
- return /* @__PURE__ */ jsx26("div", { className: cx(Popover_default.header, className), ...rest });
5282
+ return /* @__PURE__ */ jsx27("div", { className: cx(Popover_default.header, className), ...rest });
5250
5283
  }
5251
5284
  PopoverHeader.displayName = "Popover.Header";
5252
5285
  function PopoverTitle({ className, id, ...rest }) {
5253
5286
  const resolvedId = useSlotId(id, "title");
5254
- return /* @__PURE__ */ jsx26("h2", { id: resolvedId, className: cx(Popover_default.title, className), ...rest });
5287
+ return /* @__PURE__ */ jsx27("h2", { id: resolvedId, className: cx(Popover_default.title, className), ...rest });
5255
5288
  }
5256
5289
  PopoverTitle.displayName = "Popover.Title";
5257
5290
  function PopoverDescription({ className, id, ...rest }) {
5258
5291
  const resolvedId = useSlotId(id, "description");
5259
- return /* @__PURE__ */ jsx26("p", { id: resolvedId, className: cx(Popover_default.description, className), ...rest });
5292
+ return /* @__PURE__ */ jsx27("p", { id: resolvedId, className: cx(Popover_default.description, className), ...rest });
5260
5293
  }
5261
5294
  PopoverDescription.displayName = "Popover.Description";
5262
5295
  function PopoverActions({ className, ...rest }) {
5263
- return /* @__PURE__ */ jsx26("div", { className: cx(Popover_default.actions, className), ...rest });
5296
+ return /* @__PURE__ */ jsx27("div", { className: cx(Popover_default.actions, className), ...rest });
5264
5297
  }
5265
5298
  PopoverActions.displayName = "Popover.Actions";
5266
5299
  var Popover = {
@@ -5292,7 +5325,7 @@ var Tooltip_default = {
5292
5325
  };
5293
5326
 
5294
5327
  // src/components/tooltip/Tooltip.tsx
5295
- import { jsx as jsx27, jsxs as jsxs15 } from "react/jsx-runtime";
5328
+ import { jsx as jsx28, jsxs as jsxs15 } from "react/jsx-runtime";
5296
5329
  var DEFAULT_DELAY_MS = 400;
5297
5330
  var DEFAULT_SKIP_DELAY_MS = 300;
5298
5331
  var CLOSE_GRACE_MS = 100;
@@ -5323,7 +5356,7 @@ function TooltipProvider({
5323
5356
  () => createTooltipGroup(delayDuration, skipDelayDuration),
5324
5357
  [delayDuration, skipDelayDuration]
5325
5358
  );
5326
- return /* @__PURE__ */ jsx27(TooltipGroupContext.Provider, { value: group, children });
5359
+ return /* @__PURE__ */ jsx28(TooltipGroupContext.Provider, { value: group, children });
5327
5360
  }
5328
5361
  var [TooltipRootProvider, useTooltipRootContext] = createComponentContext("Tooltip");
5329
5362
  function TooltipRoot({
@@ -5396,7 +5429,7 @@ function TooltipRoot({
5396
5429
  }),
5397
5430
  [isOpen, instant, contentId, scheduleOpen, scheduleClose, cancelPending, close]
5398
5431
  );
5399
- return /* @__PURE__ */ jsx27(TooltipRootProvider, { value, children });
5432
+ return /* @__PURE__ */ jsx28(TooltipRootProvider, { value, children });
5400
5433
  }
5401
5434
  var BUTTON = 'button:not([role]), [role="button"]';
5402
5435
  function TooltipTrigger(props) {
@@ -5423,7 +5456,7 @@ function TooltipTrigger(props) {
5423
5456
  const madeFocusable = disabledChild || !ownTabStop;
5424
5457
  const generatedId = React48.useId();
5425
5458
  const controlId = typeof childProps.id === "string" ? childProps.id : generatedId;
5426
- return /* @__PURE__ */ jsx27(
5459
+ return /* @__PURE__ */ jsx28(
5427
5460
  FloatingTrigger,
5428
5461
  {
5429
5462
  ...props,
@@ -5455,7 +5488,7 @@ function TooltipTrigger(props) {
5455
5488
  children: disabledChild ? (
5456
5489
  // Around a button the host is the one button assistive tech meets: disabled, named by the
5457
5490
  // control, which itself is out of reach (no pointer events, no focus) and out of the tree.
5458
- /* @__PURE__ */ jsx27(
5491
+ /* @__PURE__ */ jsx28(
5459
5492
  "span",
5460
5493
  {
5461
5494
  className: Tooltip_default.disabledHost,
@@ -5525,7 +5558,7 @@ function TooltipContent({
5525
5558
  ...toDataAttributes({ align, instant: instant ? true : void 0 }),
5526
5559
  children: [
5527
5560
  children,
5528
- /* @__PURE__ */ jsx27(
5561
+ /* @__PURE__ */ jsx28(
5529
5562
  "svg",
5530
5563
  {
5531
5564
  className: Tooltip_default.arrow,
@@ -5533,7 +5566,7 @@ function TooltipContent({
5533
5566
  preserveAspectRatio: "none",
5534
5567
  "aria-hidden": "true",
5535
5568
  focusable: "false",
5536
- children: /* @__PURE__ */ jsx27("path", { d: arrow.d })
5569
+ children: /* @__PURE__ */ jsx28("path", { d: arrow.d })
5537
5570
  }
5538
5571
  )
5539
5572
  ]
@@ -5551,39 +5584,6 @@ var Tooltip = {
5551
5584
  Content: TooltipContent
5552
5585
  };
5553
5586
 
5554
- // src/components/skeleton/Skeleton.module.css
5555
- var Skeleton_default = {
5556
- root: "Skeleton_root",
5557
- primeSkeletonPulse: "Skeleton_primeSkeletonPulse",
5558
- line: "Skeleton_line"
5559
- };
5560
-
5561
- // src/components/skeleton/Skeleton.tsx
5562
- import { jsx as jsx28 } from "react/jsx-runtime";
5563
- function Skeleton({
5564
- shape = "text",
5565
- size: sizeProp,
5566
- lines = 1,
5567
- className,
5568
- ...rest
5569
- }) {
5570
- const size = useControlSize(sizeProp);
5571
- const count = shape === "text" ? Math.max(1, Math.floor(lines)) : 0;
5572
- return /* @__PURE__ */ jsx28(
5573
- "span",
5574
- {
5575
- "aria-hidden": "true",
5576
- ...rest,
5577
- className: cx(fieldTierClass, Skeleton_default.root, className),
5578
- ...toDataAttributes({ shape, size }),
5579
- children: Array.from({ length: count }, (_, index) => (
5580
- // biome-ignore lint/suspicious/noArrayIndexKey: identical placeholder lines
5581
- /* @__PURE__ */ jsx28("span", { className: Skeleton_default.line }, index)
5582
- ))
5583
- }
5584
- );
5585
- }
5586
-
5587
5587
  // src/components/progress-bar/ProgressBar.tsx
5588
5588
  import * as React50 from "react";
5589
5589
 
@@ -6790,6 +6790,9 @@ function InputRoot({
6790
6790
  return () => setAffixes((current) => current.filter((item) => item !== affixId));
6791
6791
  }, []);
6792
6792
  const affixIds = affixes.join(" ") || void 0;
6793
+ const cell = useFieldCell();
6794
+ const cellAction = cell?.action;
6795
+ const innerCell = React56.useMemo(() => cell ? { ...cell, action: void 0 } : null, [cell]);
6793
6796
  const contextValue = React56.useMemo(
6794
6797
  () => ({
6795
6798
  size,
@@ -6809,7 +6812,8 @@ function InputRoot({
6809
6812
  setRevealed,
6810
6813
  selectionRef,
6811
6814
  mountedRef,
6812
- suggest
6815
+ suggest,
6816
+ cellAction
6813
6817
  }),
6814
6818
  [
6815
6819
  size,
@@ -6825,7 +6829,8 @@ function InputRoot({
6825
6829
  commit,
6826
6830
  hasCommit,
6827
6831
  revealed,
6828
- suggest
6832
+ suggest,
6833
+ cellAction
6829
6834
  ]
6830
6835
  );
6831
6836
  const level = strength ? getStrength(strengthValue) : 0;
@@ -6862,7 +6867,7 @@ function InputRoot({
6862
6867
  optionalLabel: labels.optional,
6863
6868
  className: cx(fieldTierClass, Input_default.root, className),
6864
6869
  children: [
6865
- children,
6870
+ cellAction ? /* @__PURE__ */ jsx36(FieldCellContext, { value: innerCell, children }) : children,
6866
6871
  strength ? /* @__PURE__ */ jsx36(
6867
6872
  ProgressBar,
6868
6873
  {
@@ -6881,7 +6886,7 @@ function InputRoot({
6881
6886
  }
6882
6887
  InputRoot.displayName = "Input.Root";
6883
6888
  function InputWrapper({ children, className, ref, ...rest }) {
6884
- const { size, invalid, focusRing, commit, hasCommit, labels, suggest } = useInputContext();
6889
+ const { size, invalid, focusRing, commit, hasCommit, labels, suggest, cellAction } = useInputContext();
6885
6890
  const setRefs = useMergedRefs(suggest?.anchorRef, ref);
6886
6891
  return /* @__PURE__ */ jsxs21(
6887
6892
  "div",
@@ -6897,6 +6902,7 @@ function InputWrapper({ children, className, ref, ...rest }) {
6897
6902
  children: [
6898
6903
  /* @__PURE__ */ jsx36(InputSegmentContext, { value: true, children }),
6899
6904
  hasCommit ? /* @__PURE__ */ jsx36(FieldCommitStatus, { state: commit.state, labels, className: Input_default.status }) : null,
6905
+ cellAction,
6900
6906
  suggest ? /* @__PURE__ */ jsx36(InputSuggestionList, { suggest, size }) : null
6901
6907
  ]
6902
6908
  }
@@ -8808,6 +8814,7 @@ export {
8808
8814
  rovingIndex,
8809
8815
  useImageStatus,
8810
8816
  Avatar,
8817
+ Skeleton,
8811
8818
  Label,
8812
8819
  Hint,
8813
8820
  FieldCellContext,
@@ -8851,7 +8858,6 @@ export {
8851
8858
  isComposingKey,
8852
8859
  revealHighlighted,
8853
8860
  handleListboxKeyDown,
8854
- Skeleton,
8855
8861
  resolveValue,
8856
8862
  segmentFill,
8857
8863
  formatProgressValue,