@ark-ui/react 5.37.2 → 5.38.1

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 (221) hide show
  1. package/dist/components/accordion/accordion.cjs +8 -0
  2. package/dist/components/accordion/accordion.js +1 -1
  3. package/dist/components/angle-slider/angle-slider.cjs +10 -0
  4. package/dist/components/angle-slider/angle-slider.js +1 -1
  5. package/dist/components/avatar/avatar.cjs +5 -0
  6. package/dist/components/avatar/avatar.js +1 -1
  7. package/dist/components/carousel/carousel.cjs +13 -0
  8. package/dist/components/carousel/carousel.js +1 -1
  9. package/dist/components/checkbox/checkbox.cjs +9 -0
  10. package/dist/components/checkbox/checkbox.js +1 -1
  11. package/dist/components/clipboard/clipboard.cjs +9 -0
  12. package/dist/components/clipboard/clipboard.js +1 -1
  13. package/dist/components/collapsible/collapsible-content.cjs +8 -5
  14. package/dist/components/collapsible/collapsible-content.js +8 -5
  15. package/dist/components/collapsible/collapsible-gate.cjs +15 -0
  16. package/dist/components/collapsible/collapsible-gate.d.cts +7 -0
  17. package/dist/components/collapsible/collapsible-gate.d.ts +7 -0
  18. package/dist/components/collapsible/collapsible-gate.js +15 -0
  19. package/dist/components/collapsible/collapsible.cjs +6 -0
  20. package/dist/components/collapsible/collapsible.js +1 -1
  21. package/dist/components/collapsible/split-collapsible-props.cjs +1 -0
  22. package/dist/components/collapsible/split-collapsible-props.d.cts +1 -1
  23. package/dist/components/collapsible/split-collapsible-props.d.ts +1 -1
  24. package/dist/components/collapsible/split-collapsible-props.js +1 -0
  25. package/dist/components/collapsible/use-collapsible.cjs +5 -2
  26. package/dist/components/collapsible/use-collapsible.d.cts +5 -1
  27. package/dist/components/collapsible/use-collapsible.d.ts +5 -1
  28. package/dist/components/collapsible/use-collapsible.js +6 -3
  29. package/dist/components/color-picker/color-picker-content.cjs +8 -4
  30. package/dist/components/color-picker/color-picker-content.js +9 -5
  31. package/dist/components/color-picker/color-picker.cjs +29 -0
  32. package/dist/components/color-picker/color-picker.js +1 -1
  33. package/dist/components/combobox/combobox-content.cjs +8 -4
  34. package/dist/components/combobox/combobox-content.js +9 -5
  35. package/dist/components/combobox/combobox.cjs +18 -0
  36. package/dist/components/combobox/combobox.js +1 -1
  37. package/dist/components/date-input/date-input.cjs +9 -0
  38. package/dist/components/date-input/date-input.js +1 -1
  39. package/dist/components/date-picker/date-picker-content.cjs +8 -4
  40. package/dist/components/date-picker/date-picker-content.js +9 -5
  41. package/dist/components/date-picker/date-picker.cjs +29 -0
  42. package/dist/components/date-picker/date-picker.js +1 -1
  43. package/dist/components/dialog/dialog-backdrop.cjs +8 -4
  44. package/dist/components/dialog/dialog-backdrop.js +9 -5
  45. package/dist/components/dialog/dialog-content.cjs +8 -4
  46. package/dist/components/dialog/dialog-content.js +9 -5
  47. package/dist/components/dialog/dialog.cjs +10 -0
  48. package/dist/components/dialog/dialog.js +1 -1
  49. package/dist/components/drawer/drawer-backdrop.cjs +8 -4
  50. package/dist/components/drawer/drawer-backdrop.js +9 -5
  51. package/dist/components/drawer/drawer-content.cjs +8 -4
  52. package/dist/components/drawer/drawer-content.js +9 -5
  53. package/dist/components/drawer/drawer.cjs +16 -0
  54. package/dist/components/drawer/drawer.js +1 -1
  55. package/dist/components/editable/editable.cjs +11 -0
  56. package/dist/components/editable/editable.js +1 -1
  57. package/dist/components/factory.cjs +5 -4
  58. package/dist/components/factory.js +6 -5
  59. package/dist/components/field/field-root.cjs +2 -1
  60. package/dist/components/field/field-root.js +3 -2
  61. package/dist/components/field/field-textarea.cjs +2 -1
  62. package/dist/components/field/field-textarea.js +3 -2
  63. package/dist/components/field/field.cjs +11 -0
  64. package/dist/components/field/field.js +1 -1
  65. package/dist/components/field/use-field.cjs +7 -15
  66. package/dist/components/field/use-field.js +7 -15
  67. package/dist/components/fieldset/fieldset-root.cjs +2 -1
  68. package/dist/components/fieldset/fieldset-root.js +3 -2
  69. package/dist/components/fieldset/fieldset.cjs +6 -0
  70. package/dist/components/fieldset/fieldset.js +1 -1
  71. package/dist/components/fieldset/use-fieldset.cjs +4 -2
  72. package/dist/components/fieldset/use-fieldset.js +4 -2
  73. package/dist/components/file-upload/file-upload.cjs +15 -0
  74. package/dist/components/file-upload/file-upload.js +1 -1
  75. package/dist/components/floating-panel/floating-panel-content.cjs +8 -4
  76. package/dist/components/floating-panel/floating-panel-content.js +9 -5
  77. package/dist/components/floating-panel/floating-panel.cjs +20 -0
  78. package/dist/components/floating-panel/floating-panel.js +1 -1
  79. package/dist/components/focus-trap/focus-trap.cjs +4 -2
  80. package/dist/components/focus-trap/focus-trap.d.cts +1 -1
  81. package/dist/components/focus-trap/focus-trap.d.ts +1 -1
  82. package/dist/components/focus-trap/focus-trap.js +5 -3
  83. package/dist/components/format/format.cjs +4 -0
  84. package/dist/components/format/format.js +1 -1
  85. package/dist/components/frame/frame.cjs +2 -1
  86. package/dist/components/frame/frame.js +3 -2
  87. package/dist/components/hover-card/hover-card-content.cjs +8 -4
  88. package/dist/components/hover-card/hover-card-content.js +9 -5
  89. package/dist/components/hover-card/hover-card.cjs +8 -0
  90. package/dist/components/hover-card/hover-card.js +1 -1
  91. package/dist/components/image-cropper/image-cropper.cjs +14 -0
  92. package/dist/components/image-cropper/image-cropper.js +1 -1
  93. package/dist/components/json-tree-view/json-tree-view.cjs +3 -0
  94. package/dist/components/json-tree-view/json-tree-view.js +1 -1
  95. package/dist/components/listbox/listbox.cjs +14 -0
  96. package/dist/components/listbox/listbox.js +1 -1
  97. package/dist/components/marquee/marquee.cjs +7 -0
  98. package/dist/components/marquee/marquee.js +1 -1
  99. package/dist/components/menu/menu-content.cjs +8 -4
  100. package/dist/components/menu/menu-content.js +9 -5
  101. package/dist/components/menu/menu.cjs +21 -0
  102. package/dist/components/menu/menu.js +1 -1
  103. package/dist/components/navigation-menu/navigation-menu-content.cjs +8 -3
  104. package/dist/components/navigation-menu/navigation-menu-content.js +9 -4
  105. package/dist/components/navigation-menu/navigation-menu-indicator.cjs +8 -3
  106. package/dist/components/navigation-menu/navigation-menu-indicator.js +9 -4
  107. package/dist/components/navigation-menu/navigation-menu-viewport.cjs +8 -3
  108. package/dist/components/navigation-menu/navigation-menu-viewport.js +9 -4
  109. package/dist/components/navigation-menu/navigation-menu.cjs +13 -0
  110. package/dist/components/navigation-menu/navigation-menu.js +1 -1
  111. package/dist/components/number-input/number-input-root.cjs +2 -0
  112. package/dist/components/number-input/number-input-root.js +2 -0
  113. package/dist/components/number-input/number-input.cjs +10 -0
  114. package/dist/components/number-input/number-input.js +1 -1
  115. package/dist/components/pagination/pagination.cjs +9 -0
  116. package/dist/components/pagination/pagination.js +1 -1
  117. package/dist/components/password-input/password-input.cjs +8 -0
  118. package/dist/components/password-input/password-input.js +1 -1
  119. package/dist/components/pin-input/pin-input.cjs +7 -0
  120. package/dist/components/pin-input/pin-input.js +1 -1
  121. package/dist/components/popover/popover-content.cjs +8 -4
  122. package/dist/components/popover/popover-content.js +9 -5
  123. package/dist/components/popover/popover.cjs +13 -0
  124. package/dist/components/popover/popover.js +1 -1
  125. package/dist/components/presence/index.d.cts +1 -0
  126. package/dist/components/presence/index.d.ts +1 -0
  127. package/dist/components/presence/presence-gate.cjs +15 -0
  128. package/dist/components/presence/presence-gate.d.cts +7 -0
  129. package/dist/components/presence/presence-gate.d.ts +7 -0
  130. package/dist/components/presence/presence-gate.js +15 -0
  131. package/dist/components/presence/presence.cjs +11 -7
  132. package/dist/components/presence/presence.js +12 -8
  133. package/dist/components/presence/split-presence-props.cjs +1 -0
  134. package/dist/components/presence/split-presence-props.d.cts +1 -1
  135. package/dist/components/presence/split-presence-props.d.ts +1 -1
  136. package/dist/components/presence/split-presence-props.js +1 -0
  137. package/dist/components/presence/use-presence.cjs +6 -3
  138. package/dist/components/presence/use-presence.d.cts +2 -1
  139. package/dist/components/presence/use-presence.d.ts +2 -1
  140. package/dist/components/presence/use-presence.js +7 -4
  141. package/dist/components/progress/progress.cjs +11 -0
  142. package/dist/components/progress/progress.js +1 -1
  143. package/dist/components/qr-code/qr-code.cjs +7 -0
  144. package/dist/components/qr-code/qr-code.js +1 -1
  145. package/dist/components/radio-group/radio-group.cjs +10 -0
  146. package/dist/components/radio-group/radio-group.js +1 -1
  147. package/dist/components/rating-group/rating-group.cjs +8 -0
  148. package/dist/components/rating-group/rating-group.js +1 -1
  149. package/dist/components/scroll-area/scroll-area.cjs +8 -0
  150. package/dist/components/scroll-area/scroll-area.js +1 -1
  151. package/dist/components/segment-group/segment-group.cjs +10 -0
  152. package/dist/components/segment-group/segment-group.js +1 -1
  153. package/dist/components/select/select-content.cjs +8 -4
  154. package/dist/components/select/select-content.js +9 -5
  155. package/dist/components/select/select.cjs +19 -0
  156. package/dist/components/select/select.js +1 -1
  157. package/dist/components/signature-pad/signature-pad.cjs +9 -0
  158. package/dist/components/signature-pad/signature-pad.js +1 -1
  159. package/dist/components/slider/slider-root.cjs +1 -0
  160. package/dist/components/slider/slider-root.js +1 -0
  161. package/dist/components/slider/slider.cjs +13 -0
  162. package/dist/components/slider/slider.js +1 -1
  163. package/dist/components/splitter/splitter.cjs +13 -0
  164. package/dist/components/splitter/splitter.js +1 -1
  165. package/dist/components/steps/steps-root-provider.cjs +1 -2
  166. package/dist/components/steps/steps-root-provider.js +1 -2
  167. package/dist/components/steps/steps.cjs +14 -0
  168. package/dist/components/steps/steps.js +1 -1
  169. package/dist/components/swap/swap-indicator.cjs +8 -4
  170. package/dist/components/swap/swap-indicator.js +9 -5
  171. package/dist/components/swap/swap-root.cjs +3 -2
  172. package/dist/components/swap/swap-root.js +3 -2
  173. package/dist/components/swap/swap.cjs +4 -0
  174. package/dist/components/swap/swap.js +1 -1
  175. package/dist/components/swap/use-swap.cjs +3 -2
  176. package/dist/components/swap/use-swap.js +3 -2
  177. package/dist/components/switch/switch.cjs +7 -0
  178. package/dist/components/switch/switch.js +1 -1
  179. package/dist/components/tabs/tab-content.cjs +8 -3
  180. package/dist/components/tabs/tab-content.js +9 -4
  181. package/dist/components/tabs/tabs.cjs +7 -0
  182. package/dist/components/tabs/tabs.js +1 -1
  183. package/dist/components/tags-input/tags-input.cjs +14 -0
  184. package/dist/components/tags-input/tags-input.js +1 -1
  185. package/dist/components/timer/timer.cjs +8 -0
  186. package/dist/components/timer/timer.js +1 -1
  187. package/dist/components/toast/create-toaster.d.cts +3 -3
  188. package/dist/components/toast/create-toaster.d.ts +3 -3
  189. package/dist/components/toast/toast.cjs +6 -0
  190. package/dist/components/toast/toast.js +1 -1
  191. package/dist/components/toast/toaster.d.cts +1 -1
  192. package/dist/components/toast/toaster.d.ts +1 -1
  193. package/dist/components/toggle/toggle.cjs +4 -0
  194. package/dist/components/toggle/toggle.js +1 -1
  195. package/dist/components/toggle-group/toggle-group.cjs +4 -0
  196. package/dist/components/toggle-group/toggle-group.js +1 -1
  197. package/dist/components/tooltip/tooltip-content.cjs +8 -4
  198. package/dist/components/tooltip/tooltip-content.js +9 -5
  199. package/dist/components/tooltip/tooltip.cjs +8 -0
  200. package/dist/components/tooltip/tooltip.js +1 -1
  201. package/dist/components/tour/tour-backdrop.cjs +9 -5
  202. package/dist/components/tour/tour-backdrop.js +10 -6
  203. package/dist/components/tour/tour-content.cjs +8 -4
  204. package/dist/components/tour/tour-content.js +9 -5
  205. package/dist/components/tour/tour-spotlight.cjs +9 -5
  206. package/dist/components/tour/tour-spotlight.js +10 -6
  207. package/dist/components/tour/tour.anatomy.d.cts +1 -1
  208. package/dist/components/tour/tour.anatomy.d.ts +1 -1
  209. package/dist/components/tour/tour.cjs +15 -0
  210. package/dist/components/tour/tour.js +1 -1
  211. package/dist/components/tree-view/tree-view.cjs +20 -0
  212. package/dist/components/tree-view/tree-view.js +1 -1
  213. package/dist/utils/compose-refs.cjs +17 -3
  214. package/dist/utils/compose-refs.d.cts +3 -2
  215. package/dist/utils/compose-refs.d.ts +3 -2
  216. package/dist/utils/compose-refs.js +17 -4
  217. package/dist/utils/render-strategy.cjs +5 -1
  218. package/dist/utils/render-strategy.d.cts +9 -1
  219. package/dist/utils/render-strategy.d.ts +9 -1
  220. package/dist/utils/render-strategy.js +5 -1
  221. package/package.json +87 -87
@@ -1,6 +1,7 @@
1
1
  "use client";
2
2
  const require_compose_refs = require("../../utils/compose-refs.cjs");
3
3
  const require_factory = require("../factory.cjs");
4
+ const require_presence_gate = require("../presence/presence-gate.cjs");
4
5
  const require_use_presence_context = require("../presence/use-presence-context.cjs");
5
6
  const require_use_date_picker_context = require("./use-date-picker-context.cjs");
6
7
  let react = require("react");
@@ -11,10 +12,13 @@ var DatePickerContent = (0, react.forwardRef)((props, ref) => {
11
12
  const datePicker = require_use_date_picker_context.useDatePickerContext();
12
13
  const presence = require_use_presence_context.usePresenceContext();
13
14
  const mergedProps = (0, _zag_js_react.mergeProps)(datePicker.getContentProps(), presence.getPresenceProps(), props);
14
- if (presence.unmounted) return null;
15
- return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_factory.ark.div, {
16
- ...mergedProps,
17
- ref: require_compose_refs.composeRefs(presence.ref, ref)
15
+ const composedRefs = require_compose_refs.useComposedRefs(presence.ref, ref);
16
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_presence_gate.PresenceGate, {
17
+ presence,
18
+ children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_factory.ark.div, {
19
+ ...mergedProps,
20
+ ref: composedRefs
21
+ })
18
22
  });
19
23
  });
20
24
  DatePickerContent.displayName = "DatePickerContent";
@@ -1,6 +1,7 @@
1
1
  "use client";
2
- import { composeRefs } from "../../utils/compose-refs.js";
2
+ import { useComposedRefs } from "../../utils/compose-refs.js";
3
3
  import { ark } from "../factory.js";
4
+ import { PresenceGate } from "../presence/presence-gate.js";
4
5
  import { usePresenceContext } from "../presence/use-presence-context.js";
5
6
  import { useDatePickerContext } from "./use-date-picker-context.js";
6
7
  import { forwardRef } from "react";
@@ -11,10 +12,13 @@ var DatePickerContent = forwardRef((props, ref) => {
11
12
  const datePicker = useDatePickerContext();
12
13
  const presence = usePresenceContext();
13
14
  const mergedProps = mergeProps(datePicker.getContentProps(), presence.getPresenceProps(), props);
14
- if (presence.unmounted) return null;
15
- return /* @__PURE__ */ jsx(ark.div, {
16
- ...mergedProps,
17
- ref: composeRefs(presence.ref, ref)
15
+ const composedRefs = useComposedRefs(presence.ref, ref);
16
+ return /* @__PURE__ */ jsx(PresenceGate, {
17
+ presence,
18
+ children: /* @__PURE__ */ jsx(ark.div, {
19
+ ...mergedProps,
20
+ ref: composedRefs
21
+ })
18
22
  });
19
23
  });
20
24
  DatePickerContent.displayName = "DatePickerContent";
@@ -61,6 +61,35 @@ var date_picker_exports = /* @__PURE__ */ require_runtime.__exportAll({
61
61
  YearSelect: () => require_date_picker_year_select.DatePickerYearSelect
62
62
  });
63
63
  //#endregion
64
+ exports.ClearTrigger = require_date_picker_clear_trigger.DatePickerClearTrigger;
65
+ exports.Content = require_date_picker_content.DatePickerContent;
66
+ exports.Context = require_date_picker_context.DatePickerContext;
67
+ exports.Control = require_date_picker_control.DatePickerControl;
68
+ exports.Input = require_date_picker_input.DatePickerInput;
69
+ exports.Label = require_date_picker_label.DatePickerLabel;
70
+ exports.MonthSelect = require_date_picker_month_select.DatePickerMonthSelect;
71
+ exports.NextTrigger = require_date_picker_next_trigger.DatePickerNextTrigger;
72
+ exports.Positioner = require_date_picker_positioner.DatePickerPositioner;
73
+ exports.PresetTrigger = require_date_picker_preset_trigger.DatePickerPresetTrigger;
74
+ exports.PrevTrigger = require_date_picker_prev_trigger.DatePickerPrevTrigger;
75
+ exports.RangeText = require_date_picker_range_text.DatePickerRangeText;
76
+ exports.Root = require_date_picker_root.DatePickerRoot;
77
+ exports.RootProvider = require_date_picker_root_provider.DatePickerRootProvider;
78
+ exports.Table = require_date_picker_table.DatePickerTable;
79
+ exports.TableBody = require_date_picker_table_body.DatePickerTableBody;
80
+ exports.TableCell = require_date_picker_table_cell.DatePickerTableCell;
81
+ exports.TableCellTrigger = require_date_picker_table_cell_trigger.DatePickerTableCellTrigger;
82
+ exports.TableHead = require_date_picker_table_head.DatePickerTableHead;
83
+ exports.TableHeader = require_date_picker_table_header.DatePickerTableHeader;
84
+ exports.TableRow = require_date_picker_table_row.DatePickerTableRow;
85
+ exports.Trigger = require_date_picker_trigger.DatePickerTrigger;
86
+ exports.ValueText = require_date_picker_value_text.DatePickerValueText;
87
+ exports.View = require_date_picker_view.DatePickerView;
88
+ exports.ViewControl = require_date_picker_view_control.DatePickerViewControl;
89
+ exports.ViewTrigger = require_date_picker_view_trigger.DatePickerViewTrigger;
90
+ exports.WeekNumberCell = require_date_picker_week_number_cell.DatePickerWeekNumberCell;
91
+ exports.WeekNumberHeaderCell = require_date_picker_week_number_header_cell.DatePickerWeekNumberHeaderCell;
92
+ exports.YearSelect = require_date_picker_year_select.DatePickerYearSelect;
64
93
  Object.defineProperty(exports, "date_picker_exports", {
65
94
  enumerable: true,
66
95
  get: function() {
@@ -61,4 +61,4 @@ var date_picker_exports = /* @__PURE__ */ __exportAll({
61
61
  YearSelect: () => DatePickerYearSelect
62
62
  });
63
63
  //#endregion
64
- export { date_picker_exports };
64
+ export { DatePickerClearTrigger as ClearTrigger, DatePickerContent as Content, DatePickerContext as Context, DatePickerControl as Control, DatePickerInput as Input, DatePickerLabel as Label, DatePickerMonthSelect as MonthSelect, DatePickerNextTrigger as NextTrigger, DatePickerPositioner as Positioner, DatePickerPresetTrigger as PresetTrigger, DatePickerPrevTrigger as PrevTrigger, DatePickerRangeText as RangeText, DatePickerRoot as Root, DatePickerRootProvider as RootProvider, DatePickerTable as Table, DatePickerTableBody as TableBody, DatePickerTableCell as TableCell, DatePickerTableCellTrigger as TableCellTrigger, DatePickerTableHead as TableHead, DatePickerTableHeader as TableHeader, DatePickerTableRow as TableRow, DatePickerTrigger as Trigger, DatePickerValueText as ValueText, DatePickerView as View, DatePickerViewControl as ViewControl, DatePickerViewTrigger as ViewTrigger, DatePickerWeekNumberCell as WeekNumberCell, DatePickerWeekNumberHeaderCell as WeekNumberHeaderCell, DatePickerYearSelect as YearSelect, date_picker_exports };
@@ -2,6 +2,7 @@
2
2
  const require_render_strategy = require("../../utils/render-strategy.cjs");
3
3
  const require_compose_refs = require("../../utils/compose-refs.cjs");
4
4
  const require_factory = require("../factory.cjs");
5
+ const require_presence_gate = require("../presence/presence-gate.cjs");
5
6
  const require_use_presence = require("../presence/use-presence.cjs");
6
7
  const require_use_dialog_context = require("./use-dialog-context.cjs");
7
8
  let react = require("react");
@@ -15,10 +16,13 @@ var DialogBackdrop = (0, react.forwardRef)((props, ref) => {
15
16
  present: dialog.open
16
17
  });
17
18
  const mergedProps = (0, _zag_js_react.mergeProps)(dialog.getBackdropProps(), presence.getPresenceProps(), props);
18
- if (presence.unmounted) return null;
19
- return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_factory.ark.div, {
20
- ...mergedProps,
21
- ref: require_compose_refs.composeRefs(presence.ref, ref)
19
+ const composedRefs = require_compose_refs.useComposedRefs(presence.ref, ref);
20
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_presence_gate.PresenceGate, {
21
+ presence,
22
+ children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_factory.ark.div, {
23
+ ...mergedProps,
24
+ ref: composedRefs
25
+ })
22
26
  });
23
27
  });
24
28
  DialogBackdrop.displayName = "DialogBackdrop";
@@ -1,7 +1,8 @@
1
1
  "use client";
2
2
  import { useRenderStrategyPropsContext } from "../../utils/render-strategy.js";
3
- import { composeRefs } from "../../utils/compose-refs.js";
3
+ import { useComposedRefs } from "../../utils/compose-refs.js";
4
4
  import { ark } from "../factory.js";
5
+ import { PresenceGate } from "../presence/presence-gate.js";
5
6
  import { usePresence } from "../presence/use-presence.js";
6
7
  import { useDialogContext } from "./use-dialog-context.js";
7
8
  import { forwardRef } from "react";
@@ -15,10 +16,13 @@ var DialogBackdrop = forwardRef((props, ref) => {
15
16
  present: dialog.open
16
17
  });
17
18
  const mergedProps = mergeProps(dialog.getBackdropProps(), presence.getPresenceProps(), props);
18
- if (presence.unmounted) return null;
19
- return /* @__PURE__ */ jsx(ark.div, {
20
- ...mergedProps,
21
- ref: composeRefs(presence.ref, ref)
19
+ const composedRefs = useComposedRefs(presence.ref, ref);
20
+ return /* @__PURE__ */ jsx(PresenceGate, {
21
+ presence,
22
+ children: /* @__PURE__ */ jsx(ark.div, {
23
+ ...mergedProps,
24
+ ref: composedRefs
25
+ })
22
26
  });
23
27
  });
24
28
  DialogBackdrop.displayName = "DialogBackdrop";
@@ -1,6 +1,7 @@
1
1
  "use client";
2
2
  const require_compose_refs = require("../../utils/compose-refs.cjs");
3
3
  const require_factory = require("../factory.cjs");
4
+ const require_presence_gate = require("../presence/presence-gate.cjs");
4
5
  const require_use_presence_context = require("../presence/use-presence-context.cjs");
5
6
  const require_use_dialog_context = require("./use-dialog-context.cjs");
6
7
  let react = require("react");
@@ -11,10 +12,13 @@ var DialogContent = (0, react.forwardRef)((props, ref) => {
11
12
  const dialog = require_use_dialog_context.useDialogContext();
12
13
  const presence = require_use_presence_context.usePresenceContext();
13
14
  const mergedProps = (0, _zag_js_react.mergeProps)(dialog.getContentProps(), presence.getPresenceProps(), props);
14
- if (presence.unmounted) return null;
15
- return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_factory.ark.div, {
16
- ...mergedProps,
17
- ref: require_compose_refs.composeRefs(presence.ref, ref)
15
+ const composedRefs = require_compose_refs.useComposedRefs(presence.ref, ref);
16
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_presence_gate.PresenceGate, {
17
+ presence,
18
+ children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_factory.ark.div, {
19
+ ...mergedProps,
20
+ ref: composedRefs
21
+ })
18
22
  });
19
23
  });
20
24
  DialogContent.displayName = "DialogContent";
@@ -1,6 +1,7 @@
1
1
  "use client";
2
- import { composeRefs } from "../../utils/compose-refs.js";
2
+ import { useComposedRefs } from "../../utils/compose-refs.js";
3
3
  import { ark } from "../factory.js";
4
+ import { PresenceGate } from "../presence/presence-gate.js";
4
5
  import { usePresenceContext } from "../presence/use-presence-context.js";
5
6
  import { useDialogContext } from "./use-dialog-context.js";
6
7
  import { forwardRef } from "react";
@@ -11,10 +12,13 @@ var DialogContent = forwardRef((props, ref) => {
11
12
  const dialog = useDialogContext();
12
13
  const presence = usePresenceContext();
13
14
  const mergedProps = mergeProps(dialog.getContentProps(), presence.getPresenceProps(), props);
14
- if (presence.unmounted) return null;
15
- return /* @__PURE__ */ jsx(ark.div, {
16
- ...mergedProps,
17
- ref: composeRefs(presence.ref, ref)
15
+ const composedRefs = useComposedRefs(presence.ref, ref);
16
+ return /* @__PURE__ */ jsx(PresenceGate, {
17
+ presence,
18
+ children: /* @__PURE__ */ jsx(ark.div, {
19
+ ...mergedProps,
20
+ ref: composedRefs
21
+ })
18
22
  });
19
23
  });
20
24
  DialogContent.displayName = "DialogContent";
@@ -23,6 +23,16 @@ var dialog_exports = /* @__PURE__ */ require_runtime.__exportAll({
23
23
  Trigger: () => require_dialog_trigger.DialogTrigger
24
24
  });
25
25
  //#endregion
26
+ exports.Backdrop = require_dialog_backdrop.DialogBackdrop;
27
+ exports.CloseTrigger = require_dialog_close_trigger.DialogCloseTrigger;
28
+ exports.Content = require_dialog_content.DialogContent;
29
+ exports.Context = require_dialog_context.DialogContext;
30
+ exports.Description = require_dialog_description.DialogDescription;
31
+ exports.Positioner = require_dialog_positioner.DialogPositioner;
32
+ exports.Root = require_dialog_root.DialogRoot;
33
+ exports.RootProvider = require_dialog_root_provider.DialogRootProvider;
34
+ exports.Title = require_dialog_title.DialogTitle;
35
+ exports.Trigger = require_dialog_trigger.DialogTrigger;
26
36
  Object.defineProperty(exports, "dialog_exports", {
27
37
  enumerable: true,
28
38
  get: function() {
@@ -23,4 +23,4 @@ var dialog_exports = /* @__PURE__ */ __exportAll({
23
23
  Trigger: () => DialogTrigger
24
24
  });
25
25
  //#endregion
26
- export { dialog_exports };
26
+ export { DialogBackdrop as Backdrop, DialogCloseTrigger as CloseTrigger, DialogContent as Content, DialogContext as Context, DialogDescription as Description, DialogPositioner as Positioner, DialogRoot as Root, DialogRootProvider as RootProvider, DialogTitle as Title, DialogTrigger as Trigger, dialog_exports };
@@ -2,6 +2,7 @@
2
2
  const require_render_strategy = require("../../utils/render-strategy.cjs");
3
3
  const require_compose_refs = require("../../utils/compose-refs.cjs");
4
4
  const require_factory = require("../factory.cjs");
5
+ const require_presence_gate = require("../presence/presence-gate.cjs");
5
6
  const require_use_presence = require("../presence/use-presence.cjs");
6
7
  const require_use_drawer_context = require("./use-drawer-context.cjs");
7
8
  let react = require("react");
@@ -15,10 +16,13 @@ var DrawerBackdrop = (0, react.forwardRef)((props, ref) => {
15
16
  present: drawer.open
16
17
  });
17
18
  const mergedProps = (0, _zag_js_react.mergeProps)(drawer.getBackdropProps(), presence.getPresenceProps(), props);
18
- if (presence.unmounted) return null;
19
- return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_factory.ark.div, {
20
- ...mergedProps,
21
- ref: require_compose_refs.composeRefs(presence.ref, ref)
19
+ const composedRefs = require_compose_refs.useComposedRefs(presence.ref, ref);
20
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_presence_gate.PresenceGate, {
21
+ presence,
22
+ children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_factory.ark.div, {
23
+ ...mergedProps,
24
+ ref: composedRefs
25
+ })
22
26
  });
23
27
  });
24
28
  DrawerBackdrop.displayName = "DrawerBackdrop";
@@ -1,7 +1,8 @@
1
1
  "use client";
2
2
  import { useRenderStrategyPropsContext } from "../../utils/render-strategy.js";
3
- import { composeRefs } from "../../utils/compose-refs.js";
3
+ import { useComposedRefs } from "../../utils/compose-refs.js";
4
4
  import { ark } from "../factory.js";
5
+ import { PresenceGate } from "../presence/presence-gate.js";
5
6
  import { usePresence } from "../presence/use-presence.js";
6
7
  import { useDrawerContext } from "./use-drawer-context.js";
7
8
  import { forwardRef } from "react";
@@ -15,10 +16,13 @@ var DrawerBackdrop = forwardRef((props, ref) => {
15
16
  present: drawer.open
16
17
  });
17
18
  const mergedProps = mergeProps(drawer.getBackdropProps(), presence.getPresenceProps(), props);
18
- if (presence.unmounted) return null;
19
- return /* @__PURE__ */ jsx(ark.div, {
20
- ...mergedProps,
21
- ref: composeRefs(presence.ref, ref)
19
+ const composedRefs = useComposedRefs(presence.ref, ref);
20
+ return /* @__PURE__ */ jsx(PresenceGate, {
21
+ presence,
22
+ children: /* @__PURE__ */ jsx(ark.div, {
23
+ ...mergedProps,
24
+ ref: composedRefs
25
+ })
22
26
  });
23
27
  });
24
28
  DrawerBackdrop.displayName = "DrawerBackdrop";
@@ -2,6 +2,7 @@
2
2
  const require_create_split_props = require("../../utils/create-split-props.cjs");
3
3
  const require_compose_refs = require("../../utils/compose-refs.cjs");
4
4
  const require_factory = require("../factory.cjs");
5
+ const require_presence_gate = require("../presence/presence-gate.cjs");
5
6
  const require_use_presence_context = require("../presence/use-presence-context.cjs");
6
7
  const require_use_drawer_context = require("./use-drawer-context.cjs");
7
8
  let react = require("react");
@@ -17,10 +18,13 @@ var DrawerContent = (0, react.forwardRef)((props, ref) => {
17
18
  draggable: true,
18
19
  ...contentProps
19
20
  }), presence.getPresenceProps(), localProps);
20
- if (presence.unmounted) return null;
21
- return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_factory.ark.div, {
22
- ...mergedProps,
23
- ref: require_compose_refs.composeRefs(presence.ref, ref)
21
+ const composedRefs = require_compose_refs.useComposedRefs(presence.ref, ref);
22
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_presence_gate.PresenceGate, {
23
+ presence,
24
+ children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_factory.ark.div, {
25
+ ...mergedProps,
26
+ ref: composedRefs
27
+ })
24
28
  });
25
29
  });
26
30
  DrawerContent.displayName = "DrawerContent";
@@ -1,7 +1,8 @@
1
1
  "use client";
2
2
  import { createSplitProps } from "../../utils/create-split-props.js";
3
- import { composeRefs } from "../../utils/compose-refs.js";
3
+ import { useComposedRefs } from "../../utils/compose-refs.js";
4
4
  import { ark } from "../factory.js";
5
+ import { PresenceGate } from "../presence/presence-gate.js";
5
6
  import { usePresenceContext } from "../presence/use-presence-context.js";
6
7
  import { useDrawerContext } from "./use-drawer-context.js";
7
8
  import { forwardRef } from "react";
@@ -17,10 +18,13 @@ var DrawerContent = forwardRef((props, ref) => {
17
18
  draggable: true,
18
19
  ...contentProps
19
20
  }), presence.getPresenceProps(), localProps);
20
- if (presence.unmounted) return null;
21
- return /* @__PURE__ */ jsx(ark.div, {
22
- ...mergedProps,
23
- ref: composeRefs(presence.ref, ref)
21
+ const composedRefs = useComposedRefs(presence.ref, ref);
22
+ return /* @__PURE__ */ jsx(PresenceGate, {
23
+ presence,
24
+ children: /* @__PURE__ */ jsx(ark.div, {
25
+ ...mergedProps,
26
+ ref: composedRefs
27
+ })
24
28
  });
25
29
  });
26
30
  DrawerContent.displayName = "DrawerContent";
@@ -35,6 +35,22 @@ var drawer_exports = /* @__PURE__ */ require_runtime.__exportAll({
35
35
  Trigger: () => require_drawer_trigger.DrawerTrigger
36
36
  });
37
37
  //#endregion
38
+ exports.Backdrop = require_drawer_backdrop.DrawerBackdrop;
39
+ exports.CloseTrigger = require_drawer_close_trigger.DrawerCloseTrigger;
40
+ exports.Content = require_drawer_content.DrawerContent;
41
+ exports.Context = require_drawer_context.DrawerContext;
42
+ exports.Description = require_drawer_description.DrawerDescription;
43
+ exports.Grabber = require_drawer_grabber.DrawerGrabber;
44
+ exports.GrabberIndicator = require_drawer_grabber_indicator.DrawerGrabberIndicator;
45
+ exports.Indent = require_drawer_indent.DrawerIndent;
46
+ exports.IndentBackground = require_drawer_indent_background.DrawerIndentBackground;
47
+ exports.Positioner = require_drawer_positioner.DrawerPositioner;
48
+ exports.Root = require_drawer_root.DrawerRoot;
49
+ exports.RootProvider = require_drawer_root_provider.DrawerRootProvider;
50
+ exports.Stack = require_drawer_stack.DrawerStack;
51
+ exports.SwipeArea = require_drawer_swipe_area.DrawerSwipeArea;
52
+ exports.Title = require_drawer_title.DrawerTitle;
53
+ exports.Trigger = require_drawer_trigger.DrawerTrigger;
38
54
  Object.defineProperty(exports, "drawer_exports", {
39
55
  enumerable: true,
40
56
  get: function() {
@@ -35,4 +35,4 @@ var drawer_exports = /* @__PURE__ */ __exportAll({
35
35
  Trigger: () => DrawerTrigger
36
36
  });
37
37
  //#endregion
38
- export { drawer_exports };
38
+ export { DrawerBackdrop as Backdrop, DrawerCloseTrigger as CloseTrigger, DrawerContent as Content, DrawerContext as Context, DrawerDescription as Description, DrawerGrabber as Grabber, DrawerGrabberIndicator as GrabberIndicator, DrawerIndent as Indent, DrawerIndentBackground as IndentBackground, DrawerPositioner as Positioner, DrawerRoot as Root, DrawerRootProvider as RootProvider, DrawerStack as Stack, DrawerSwipeArea as SwipeArea, DrawerTitle as Title, DrawerTrigger as Trigger, drawer_exports };
@@ -25,6 +25,17 @@ var editable_exports = /* @__PURE__ */ require_runtime.__exportAll({
25
25
  SubmitTrigger: () => require_editable_submit_trigger.EditableSubmitTrigger
26
26
  });
27
27
  //#endregion
28
+ exports.Area = require_editable_area.EditableArea;
29
+ exports.CancelTrigger = require_editable_cancel_trigger.EditableCancelTrigger;
30
+ exports.Context = require_editable_context.EditableContext;
31
+ exports.Control = require_editable_control.EditableControl;
32
+ exports.EditTrigger = require_editable_edit_trigger.EditableEditTrigger;
33
+ exports.Input = require_editable_input.EditableInput;
34
+ exports.Label = require_editable_label.EditableLabel;
35
+ exports.Preview = require_editable_preview.EditablePreview;
36
+ exports.Root = require_editable_root.EditableRoot;
37
+ exports.RootProvider = require_editable_root_provider.EditableRootProvider;
38
+ exports.SubmitTrigger = require_editable_submit_trigger.EditableSubmitTrigger;
28
39
  Object.defineProperty(exports, "editable_exports", {
29
40
  enumerable: true,
30
41
  get: function() {
@@ -25,4 +25,4 @@ var editable_exports = /* @__PURE__ */ __exportAll({
25
25
  SubmitTrigger: () => EditableSubmitTrigger
26
26
  });
27
27
  //#endregion
28
- export { editable_exports };
28
+ export { EditableArea as Area, EditableCancelTrigger as CancelTrigger, EditableContext as Context, EditableControl as Control, EditableEditTrigger as EditTrigger, EditableInput as Input, EditableLabel as Label, EditablePreview as Preview, EditableRoot as Root, EditableRootProvider as RootProvider, EditableSubmitTrigger as SubmitTrigger, editable_exports };
@@ -14,16 +14,17 @@ function getRef(element) {
14
14
  var withAsChild = (Component) => {
15
15
  const Comp = (0, react.memo)((0, react.forwardRef)((props, ref) => {
16
16
  const { asChild, children, ...restProps } = props;
17
+ const onlyChild = asChild && (0, react.isValidElement)(children) ? react.Children.only(children) : void 0;
18
+ const childRef = onlyChild ? getRef(onlyChild) : void 0;
19
+ const composedRef = require_compose_refs.useComposedRefs(ref, childRef);
17
20
  if (!asChild) return (0, react.createElement)(Component, {
18
21
  ...restProps,
19
22
  ref
20
23
  }, children);
21
- if (!(0, react.isValidElement)(children)) return null;
22
- const onlyChild = react.Children.only(children);
23
- const childRef = getRef(onlyChild);
24
+ if (!onlyChild) return null;
24
25
  return (0, react.cloneElement)(onlyChild, {
25
26
  ...(0, _zag_js_core.mergeProps)(restProps, onlyChild.props),
26
- ref: ref ? require_compose_refs.composeRefs(ref, childRef) : childRef
27
+ ref: ref ? composedRef : childRef
27
28
  });
28
29
  }));
29
30
  Comp.displayName = Component.displayName || Component.name;
@@ -1,4 +1,4 @@
1
- import { composeRefs } from "../utils/compose-refs.js";
1
+ import { useComposedRefs } from "../utils/compose-refs.js";
2
2
  import { Children, cloneElement, createElement, forwardRef, isValidElement, memo } from "react";
3
3
  import { mergeProps } from "@zag-js/core";
4
4
  //#region src/components/factory.ts
@@ -14,16 +14,17 @@ function getRef(element) {
14
14
  var withAsChild = (Component) => {
15
15
  const Comp = memo(forwardRef((props, ref) => {
16
16
  const { asChild, children, ...restProps } = props;
17
+ const onlyChild = asChild && isValidElement(children) ? Children.only(children) : void 0;
18
+ const childRef = onlyChild ? getRef(onlyChild) : void 0;
19
+ const composedRef = useComposedRefs(ref, childRef);
17
20
  if (!asChild) return createElement(Component, {
18
21
  ...restProps,
19
22
  ref
20
23
  }, children);
21
- if (!isValidElement(children)) return null;
22
- const onlyChild = Children.only(children);
23
- const childRef = getRef(onlyChild);
24
+ if (!onlyChild) return null;
24
25
  return cloneElement(onlyChild, {
25
26
  ...mergeProps(restProps, onlyChild.props),
26
- ref: ref ? composeRefs(ref, childRef) : childRef
27
+ ref: ref ? composedRef : childRef
27
28
  });
28
29
  }));
29
30
  Comp.displayName = Component.displayName || Component.name;
@@ -21,11 +21,12 @@ var FieldRoot = (0, react.forwardRef)((props, ref) => {
21
21
  ]);
22
22
  const field = require_use_field.useField(useFieldProps);
23
23
  const mergedProps = (0, _zag_js_react.mergeProps)(field.getRootProps(), localProps);
24
+ const composedRefs = require_compose_refs.useComposedRefs(ref, field.refs.rootRef);
24
25
  return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_use_field_context.FieldProvider, {
25
26
  value: field,
26
27
  children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_factory.ark.div, {
27
28
  ...mergedProps,
28
- ref: require_compose_refs.composeRefs(ref, field.refs.rootRef)
29
+ ref: composedRefs
29
30
  })
30
31
  });
31
32
  });
@@ -1,6 +1,6 @@
1
1
  "use client";
2
2
  import { createSplitProps } from "../../utils/create-split-props.js";
3
- import { composeRefs } from "../../utils/compose-refs.js";
3
+ import { useComposedRefs } from "../../utils/compose-refs.js";
4
4
  import { ark } from "../factory.js";
5
5
  import { FieldProvider } from "./use-field-context.js";
6
6
  import { useField } from "./use-field.js";
@@ -21,11 +21,12 @@ var FieldRoot = forwardRef((props, ref) => {
21
21
  ]);
22
22
  const field = useField(useFieldProps);
23
23
  const mergedProps = mergeProps(field.getRootProps(), localProps);
24
+ const composedRefs = useComposedRefs(ref, field.refs.rootRef);
24
25
  return /* @__PURE__ */ jsx(FieldProvider, {
25
26
  value: field,
26
27
  children: /* @__PURE__ */ jsx(ark.div, {
27
28
  ...mergedProps,
28
- ref: composeRefs(ref, field.refs.rootRef)
29
+ ref: composedRefs
29
30
  })
30
31
  });
31
32
  });
@@ -11,13 +11,14 @@ var FieldTextarea = (0, react.forwardRef)((props, ref) => {
11
11
  const { autoresize, ...textareaProps } = props;
12
12
  const textareaRef = (0, react.useRef)(null);
13
13
  const mergedProps = (0, _zag_js_react.mergeProps)(require_use_field_context.useFieldContext()?.getTextareaProps(), { style: { resize: autoresize ? "none" : void 0 } }, textareaProps);
14
+ const composedRefs = require_compose_refs.useComposedRefs(ref, textareaRef);
14
15
  (0, react.useEffect)(() => {
15
16
  if (!autoresize) return;
16
17
  return (0, _zag_js_auto_resize.autoresizeTextarea)(textareaRef.current);
17
18
  }, [autoresize]);
18
19
  return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_factory.ark.textarea, {
19
20
  ...mergedProps,
20
- ref: require_compose_refs.composeRefs(ref, textareaRef)
21
+ ref: composedRefs
21
22
  });
22
23
  });
23
24
  FieldTextarea.displayName = "FieldTextarea";
@@ -1,5 +1,5 @@
1
1
  "use client";
2
- import { composeRefs } from "../../utils/compose-refs.js";
2
+ import { useComposedRefs } from "../../utils/compose-refs.js";
3
3
  import { ark } from "../factory.js";
4
4
  import { useFieldContext } from "./use-field-context.js";
5
5
  import { forwardRef, useEffect, useRef } from "react";
@@ -11,13 +11,14 @@ var FieldTextarea = forwardRef((props, ref) => {
11
11
  const { autoresize, ...textareaProps } = props;
12
12
  const textareaRef = useRef(null);
13
13
  const mergedProps = mergeProps(useFieldContext()?.getTextareaProps(), { style: { resize: autoresize ? "none" : void 0 } }, textareaProps);
14
+ const composedRefs = useComposedRefs(ref, textareaRef);
14
15
  useEffect(() => {
15
16
  if (!autoresize) return;
16
17
  return autoresizeTextarea(textareaRef.current);
17
18
  }, [autoresize]);
18
19
  return /* @__PURE__ */ jsx(ark.textarea, {
19
20
  ...mergedProps,
20
- ref: composeRefs(ref, textareaRef)
21
+ ref: composedRefs
21
22
  });
22
23
  });
23
24
  FieldTextarea.displayName = "FieldTextarea";
@@ -25,6 +25,17 @@ var field_exports = /* @__PURE__ */ require_runtime.__exportAll({
25
25
  Textarea: () => require_field_textarea.FieldTextarea
26
26
  });
27
27
  //#endregion
28
+ exports.Context = require_field_context.FieldContext;
29
+ exports.ErrorText = require_field_error_text.FieldErrorText;
30
+ exports.HelperText = require_field_helper_text.FieldHelperText;
31
+ exports.Input = require_field_input.FieldInput;
32
+ exports.Item = require_field_item.FieldItem;
33
+ exports.Label = require_field_label.FieldLabel;
34
+ exports.RequiredIndicator = require_field_required_indicator.FieldRequiredIndicator;
35
+ exports.Root = require_field_root.FieldRoot;
36
+ exports.RootProvider = require_field_root_provider.FieldRootProvider;
37
+ exports.Select = require_field_select.FieldSelect;
38
+ exports.Textarea = require_field_textarea.FieldTextarea;
28
39
  Object.defineProperty(exports, "field_exports", {
29
40
  enumerable: true,
30
41
  get: function() {
@@ -25,4 +25,4 @@ var field_exports = /* @__PURE__ */ __exportAll({
25
25
  Textarea: () => FieldTextarea
26
26
  });
27
27
  //#endregion
28
- export { field_exports };
28
+ export { FieldContext as Context, FieldErrorText as ErrorText, FieldHelperText as HelperText, FieldInput as Input, FieldItem as Item, FieldLabel as Label, FieldRequiredIndicator as RequiredIndicator, FieldRoot as Root, FieldRootProvider as RootProvider, FieldSelect as Select, FieldTextarea as Textarea, field_exports };
@@ -39,18 +39,6 @@ var useField = (props = {}) => {
39
39
  errorTextId,
40
40
  helperTextId
41
41
  ]);
42
- const labelIds = (0, react.useMemo)(() => {
43
- const ids = [];
44
- if (hasErrorText && invalid) ids.push(errorTextId);
45
- if (hasHelperText) ids.push(helperTextId);
46
- return ids.join(" ") || void 0;
47
- }, [
48
- invalid,
49
- errorTextId,
50
- helperTextId,
51
- hasErrorText,
52
- hasHelperText
53
- ]);
54
42
  const getRootProps = (0, react.useMemo)(() => () => ({
55
43
  ...require_field_anatomy.parts.root.attrs,
56
44
  id: rootId,
@@ -83,8 +71,10 @@ var useField = (props = {}) => {
83
71
  labelId,
84
72
  targetControlId
85
73
  ]);
74
+ const errorMessageId = hasErrorText && invalid ? errorTextId : void 0;
86
75
  const getControlProps = (0, react.useMemo)(() => () => ({
87
- "aria-describedby": labelIds,
76
+ "aria-describedby": hasHelperText ? helperTextId : void 0,
77
+ "aria-errormessage": errorMessageId,
88
78
  "aria-invalid": (0, _zag_js_dom_query.ariaAttr)(invalid),
89
79
  "data-invalid": (0, _zag_js_dom_query.dataAttr)(invalid),
90
80
  "data-required": (0, _zag_js_dom_query.dataAttr)(required),
@@ -94,11 +84,13 @@ var useField = (props = {}) => {
94
84
  disabled,
95
85
  readOnly
96
86
  }), [
97
- labelIds,
87
+ hasHelperText,
88
+ helperTextId,
98
89
  invalid,
99
90
  required,
100
91
  readOnly,
101
92
  id,
93
+ errorMessageId,
102
94
  disabled
103
95
  ]);
104
96
  const getInputProps = (0, react.useMemo)(() => () => ({
@@ -128,7 +120,7 @@ var useField = (props = {}) => {
128
120
  ...require_field_anatomy.parts.requiredIndicator.attrs
129
121
  }), []);
130
122
  return {
131
- ariaDescribedby: labelIds,
123
+ ariaDescribedby: hasHelperText ? helperTextId : void 0,
132
124
  ids: {
133
125
  root: rootId,
134
126
  control: id,