@ark-ui/react 4.1.1 → 4.2.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 (129) hide show
  1. package/dist/components/accordion/examples/context/focusedValue.d.cts +1 -0
  2. package/dist/components/accordion/examples/context/focusedValue.d.ts +1 -0
  3. package/dist/components/accordion/examples/context/getItemState.d.cts +1 -0
  4. package/dist/components/accordion/examples/context/getItemState.d.ts +1 -0
  5. package/dist/components/accordion/examples/context/setValue.d.cts +1 -0
  6. package/dist/components/accordion/examples/context/setValue.d.ts +1 -0
  7. package/dist/components/accordion/examples/context/value.d.cts +1 -0
  8. package/dist/components/accordion/examples/context/value.d.ts +1 -0
  9. package/dist/components/client-only/client-only.cjs +23 -0
  10. package/dist/components/client-only/client-only.d.cts +5 -0
  11. package/dist/components/client-only/client-only.d.ts +5 -0
  12. package/dist/components/client-only/client-only.js +19 -0
  13. package/dist/components/client-only/index.cjs +9 -0
  14. package/dist/components/client-only/index.d.cts +1 -0
  15. package/dist/components/client-only/index.d.ts +1 -0
  16. package/dist/components/client-only/index.js +1 -0
  17. package/dist/components/clipboard/use-clipboard.cjs +1 -1
  18. package/dist/components/clipboard/use-clipboard.d.cts +1 -1
  19. package/dist/components/clipboard/use-clipboard.d.ts +1 -1
  20. package/dist/components/clipboard/use-clipboard.js +1 -1
  21. package/dist/components/color-picker/use-color-picker.cjs +1 -1
  22. package/dist/components/color-picker/use-color-picker.d.cts +1 -1
  23. package/dist/components/color-picker/use-color-picker.d.ts +1 -1
  24. package/dist/components/color-picker/use-color-picker.js +1 -1
  25. package/dist/components/field/field-required-indicator.cjs +24 -0
  26. package/dist/components/field/field-required-indicator.d.cts +8 -0
  27. package/dist/components/field/field-required-indicator.d.ts +8 -0
  28. package/dist/components/field/field-required-indicator.js +20 -0
  29. package/dist/components/field/field.anatomy.cjs +2 -1
  30. package/dist/components/field/field.anatomy.d.cts +2 -2
  31. package/dist/components/field/field.anatomy.d.ts +2 -2
  32. package/dist/components/field/field.anatomy.js +2 -1
  33. package/dist/components/field/field.cjs +14 -12
  34. package/dist/components/field/field.d.cts +9 -8
  35. package/dist/components/field/field.d.ts +9 -8
  36. package/dist/components/field/field.js +7 -6
  37. package/dist/components/field/index.cjs +2 -0
  38. package/dist/components/field/index.d.cts +1 -0
  39. package/dist/components/field/index.d.ts +1 -0
  40. package/dist/components/field/index.js +1 -0
  41. package/dist/components/field/use-field.cjs +9 -1
  42. package/dist/components/field/use-field.d.cts +1 -0
  43. package/dist/components/field/use-field.d.ts +1 -0
  44. package/dist/components/field/use-field.js +9 -1
  45. package/dist/components/fieldset/use-fieldset.cjs +2 -1
  46. package/dist/components/fieldset/use-fieldset.js +3 -2
  47. package/dist/components/frame/frame.cjs +1 -0
  48. package/dist/components/frame/frame.js +1 -0
  49. package/dist/components/index.cjs +6 -0
  50. package/dist/components/index.d.cts +1 -0
  51. package/dist/components/index.d.ts +1 -0
  52. package/dist/components/index.js +3 -0
  53. package/dist/components/portal/portal.cjs +15 -6
  54. package/dist/components/portal/portal.js +16 -7
  55. package/dist/components/progress/examples/circular/root-provider.d.cts +1 -0
  56. package/dist/components/progress/examples/circular/root-provider.d.ts +1 -0
  57. package/dist/components/progress/examples/linear/root-provider.d.cts +1 -0
  58. package/dist/components/progress/examples/linear/root-provider.d.ts +1 -0
  59. package/dist/components/progress/use-progress.cjs +1 -1
  60. package/dist/components/progress/use-progress.d.cts +1 -1
  61. package/dist/components/progress/use-progress.d.ts +1 -1
  62. package/dist/components/progress/use-progress.js +1 -1
  63. package/dist/components/radio-group/use-radio-group.cjs +1 -1
  64. package/dist/components/radio-group/use-radio-group.d.cts +1 -1
  65. package/dist/components/radio-group/use-radio-group.d.ts +1 -1
  66. package/dist/components/radio-group/use-radio-group.js +1 -1
  67. package/dist/components/rating-group/use-rating-group.cjs +1 -1
  68. package/dist/components/rating-group/use-rating-group.d.cts +1 -1
  69. package/dist/components/rating-group/use-rating-group.d.ts +1 -1
  70. package/dist/components/rating-group/use-rating-group.js +1 -1
  71. package/dist/components/segment-group/use-segment-group.cjs +1 -1
  72. package/dist/components/segment-group/use-segment-group.d.cts +1 -1
  73. package/dist/components/segment-group/use-segment-group.d.ts +1 -1
  74. package/dist/components/segment-group/use-segment-group.js +1 -1
  75. package/dist/components/signature-pad/use-signature-pad.cjs +1 -1
  76. package/dist/components/signature-pad/use-signature-pad.d.cts +1 -1
  77. package/dist/components/signature-pad/use-signature-pad.d.ts +1 -1
  78. package/dist/components/signature-pad/use-signature-pad.js +1 -1
  79. package/dist/components/slider/index.cjs +2 -0
  80. package/dist/components/slider/index.d.cts +1 -0
  81. package/dist/components/slider/index.d.ts +1 -0
  82. package/dist/components/slider/index.js +1 -0
  83. package/dist/components/slider/slider-dragging-indicator.cjs +23 -0
  84. package/dist/components/slider/slider-dragging-indicator.d.cts +7 -0
  85. package/dist/components/slider/slider-dragging-indicator.d.ts +7 -0
  86. package/dist/components/slider/slider-dragging-indicator.js +19 -0
  87. package/dist/components/slider/slider.cjs +4 -2
  88. package/dist/components/slider/slider.d.cts +12 -11
  89. package/dist/components/slider/slider.d.ts +12 -11
  90. package/dist/components/slider/slider.js +2 -1
  91. package/dist/components/slider/use-slider.cjs +1 -1
  92. package/dist/components/slider/use-slider.d.cts +1 -1
  93. package/dist/components/slider/use-slider.d.ts +1 -1
  94. package/dist/components/slider/use-slider.js +1 -1
  95. package/dist/components/splitter/use-splitter.cjs +1 -1
  96. package/dist/components/splitter/use-splitter.d.cts +1 -1
  97. package/dist/components/splitter/use-splitter.d.ts +1 -1
  98. package/dist/components/splitter/use-splitter.js +1 -1
  99. package/dist/components/switch/use-switch.cjs +1 -1
  100. package/dist/components/switch/use-switch.d.cts +1 -1
  101. package/dist/components/switch/use-switch.d.ts +1 -1
  102. package/dist/components/switch/use-switch.js +1 -1
  103. package/dist/components/tabs/use-tabs.cjs +1 -1
  104. package/dist/components/tabs/use-tabs.d.cts +1 -1
  105. package/dist/components/tabs/use-tabs.d.ts +1 -1
  106. package/dist/components/tabs/use-tabs.js +1 -1
  107. package/dist/components/tags-input/use-tags-input.cjs +1 -1
  108. package/dist/components/tags-input/use-tags-input.d.cts +1 -1
  109. package/dist/components/tags-input/use-tags-input.d.ts +1 -1
  110. package/dist/components/tags-input/use-tags-input.js +1 -1
  111. package/dist/components/timer/use-timer.cjs +1 -1
  112. package/dist/components/timer/use-timer.d.cts +1 -1
  113. package/dist/components/timer/use-timer.d.ts +1 -1
  114. package/dist/components/timer/use-timer.js +1 -1
  115. package/dist/components/toggle-group/use-toggle-group.cjs +1 -1
  116. package/dist/components/toggle-group/use-toggle-group.d.cts +1 -1
  117. package/dist/components/toggle-group/use-toggle-group.d.ts +1 -1
  118. package/dist/components/toggle-group/use-toggle-group.js +1 -1
  119. package/dist/components/tooltip/use-tooltip.cjs +1 -1
  120. package/dist/components/tooltip/use-tooltip.d.cts +1 -1
  121. package/dist/components/tooltip/use-tooltip.d.ts +1 -1
  122. package/dist/components/tooltip/use-tooltip.js +1 -1
  123. package/dist/index.cjs +6 -0
  124. package/dist/index.js +3 -0
  125. package/package.json +66 -66
  126. package/dist/utils/use-is-server.cjs +0 -16
  127. package/dist/utils/use-is-server.d.cts +0 -1
  128. package/dist/utils/use-is-server.d.ts +0 -1
  129. package/dist/utils/use-is-server.js +0 -12
@@ -0,0 +1 @@
1
+ export declare const ContextFocusedValue: () => import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1 @@
1
+ export declare const ContextFocusedValue: () => import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1 @@
1
+ export declare const ContextGetItemState: () => import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1 @@
1
+ export declare const ContextGetItemState: () => import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1 @@
1
+ export declare const ContextSetValue: () => import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1 @@
1
+ export declare const ContextSetValue: () => import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1 @@
1
+ export declare const ContextValue: () => import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1 @@
1
+ export declare const ContextValue: () => import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,23 @@
1
+ 'use client';
2
+ 'use strict';
3
+
4
+ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
5
+
6
+ const jsxRuntime = require('react/jsx-runtime');
7
+ const react = require('react');
8
+
9
+ const noop = () => void 0;
10
+ const ClientOnly = (props) => {
11
+ const { children, fallback } = props;
12
+ const isClient = react.useSyncExternalStore(
13
+ () => noop,
14
+ () => true,
15
+ () => false
16
+ );
17
+ if (!isClient) {
18
+ return fallback;
19
+ }
20
+ return /* @__PURE__ */ jsxRuntime.jsx(jsxRuntime.Fragment, { children });
21
+ };
22
+
23
+ exports.ClientOnly = ClientOnly;
@@ -0,0 +1,5 @@
1
+ export interface ClientOnlyProps {
2
+ children: React.ReactNode;
3
+ fallback?: React.ReactNode | undefined;
4
+ }
5
+ export declare const ClientOnly: (props: ClientOnlyProps) => React.ReactNode;
@@ -0,0 +1,5 @@
1
+ export interface ClientOnlyProps {
2
+ children: React.ReactNode;
3
+ fallback?: React.ReactNode | undefined;
4
+ }
5
+ export declare const ClientOnly: (props: ClientOnlyProps) => React.ReactNode;
@@ -0,0 +1,19 @@
1
+ 'use client';
2
+ import { jsx, Fragment } from 'react/jsx-runtime';
3
+ import { useSyncExternalStore } from 'react';
4
+
5
+ const noop = () => void 0;
6
+ const ClientOnly = (props) => {
7
+ const { children, fallback } = props;
8
+ const isClient = useSyncExternalStore(
9
+ () => noop,
10
+ () => true,
11
+ () => false
12
+ );
13
+ if (!isClient) {
14
+ return fallback;
15
+ }
16
+ return /* @__PURE__ */ jsx(Fragment, { children });
17
+ };
18
+
19
+ export { ClientOnly };
@@ -0,0 +1,9 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
4
+
5
+ const clientOnly = require('./client-only.cjs');
6
+
7
+
8
+
9
+ exports.ClientOnly = clientOnly.ClientOnly;
@@ -0,0 +1 @@
1
+ export { ClientOnly, type ClientOnlyProps } from './client-only';
@@ -0,0 +1 @@
1
+ export { ClientOnly, type ClientOnlyProps } from './client-only';
@@ -0,0 +1 @@
1
+ export { ClientOnly } from './client-only.js';
@@ -27,7 +27,7 @@ function _interopNamespaceDefault(e) {
27
27
 
28
28
  const clipboard__namespace = /*#__PURE__*/_interopNamespaceDefault(clipboard);
29
29
 
30
- const useClipboard = (props) => {
30
+ const useClipboard = (props = {}) => {
31
31
  const { getRootNode } = useEnvironmentContext.useEnvironmentContext();
32
32
  const initialContext = {
33
33
  id: react.useId(),
@@ -5,4 +5,4 @@ export interface UseClipboardProps extends Optional<Omit<clipboard.Context, 'get
5
5
  }
6
6
  export interface UseClipboardReturn extends clipboard.Api<PropTypes> {
7
7
  }
8
- export declare const useClipboard: (props: UseClipboardProps) => clipboard.Api<PropTypes>;
8
+ export declare const useClipboard: (props?: UseClipboardProps) => clipboard.Api<PropTypes>;
@@ -5,4 +5,4 @@ export interface UseClipboardProps extends Optional<Omit<clipboard.Context, 'get
5
5
  }
6
6
  export interface UseClipboardReturn extends clipboard.Api<PropTypes> {
7
7
  }
8
- export declare const useClipboard: (props: UseClipboardProps) => clipboard.Api<PropTypes>;
8
+ export declare const useClipboard: (props?: UseClipboardProps) => clipboard.Api<PropTypes>;
@@ -4,7 +4,7 @@ import { useMachine, normalizeProps } from '@zag-js/react';
4
4
  import { useId } from 'react';
5
5
  import { useEnvironmentContext } from '../../providers/environment/use-environment-context.js';
6
6
 
7
- const useClipboard = (props) => {
7
+ const useClipboard = (props = {}) => {
8
8
  const { getRootNode } = useEnvironmentContext();
9
9
  const initialContext = {
10
10
  id: useId(),
@@ -30,7 +30,7 @@ function _interopNamespaceDefault(e) {
30
30
 
31
31
  const colorPicker__namespace = /*#__PURE__*/_interopNamespaceDefault(colorPicker);
32
32
 
33
- const useColorPicker = (props) => {
33
+ const useColorPicker = (props = {}) => {
34
34
  const { getRootNode } = useEnvironmentContext.useEnvironmentContext();
35
35
  const { dir } = useLocaleContext.useLocaleContext();
36
36
  const field = useFieldContext.useFieldContext();
@@ -15,4 +15,4 @@ export interface UseColorPickerProps extends Optional<Omit<colorPicker.Context,
15
15
  }
16
16
  export interface UseColorPickerReturn extends colorPicker.Api<PropTypes> {
17
17
  }
18
- export declare const useColorPicker: (props: UseColorPickerProps) => UseColorPickerReturn;
18
+ export declare const useColorPicker: (props?: UseColorPickerProps) => UseColorPickerReturn;
@@ -15,4 +15,4 @@ export interface UseColorPickerProps extends Optional<Omit<colorPicker.Context,
15
15
  }
16
16
  export interface UseColorPickerReturn extends colorPicker.Api<PropTypes> {
17
17
  }
18
- export declare const useColorPicker: (props: UseColorPickerProps) => UseColorPickerReturn;
18
+ export declare const useColorPicker: (props?: UseColorPickerProps) => UseColorPickerReturn;
@@ -7,7 +7,7 @@ import { useLocaleContext } from '../../providers/locale/use-locale-context.js';
7
7
  import { useEvent } from '../../utils/use-event.js';
8
8
  import { useFieldContext } from '../field/use-field-context.js';
9
9
 
10
- const useColorPicker = (props) => {
10
+ const useColorPicker = (props = {}) => {
11
11
  const { getRootNode } = useEnvironmentContext();
12
12
  const { dir } = useLocaleContext();
13
13
  const field = useFieldContext();
@@ -0,0 +1,24 @@
1
+ 'use client';
2
+ 'use strict';
3
+
4
+ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
5
+
6
+ const jsxRuntime = require('react/jsx-runtime');
7
+ const core = require('@zag-js/core');
8
+ const react = require('react');
9
+ const factory = require('../factory.cjs');
10
+ const useFieldContext = require('./use-field-context.cjs');
11
+
12
+ const FieldRequiredIndicator = react.forwardRef(
13
+ ({ fallback, ...props }, ref) => {
14
+ const field = useFieldContext.useFieldContext();
15
+ if (!field.required) {
16
+ return fallback;
17
+ }
18
+ const mergedProps = core.mergeProps(field.getRequiredIndicatorProps(), props);
19
+ return /* @__PURE__ */ jsxRuntime.jsx(factory.ark.span, { ...mergedProps, ref, children: props.children ?? "*" });
20
+ }
21
+ );
22
+ FieldRequiredIndicator.displayName = "FieldRequiredIndicator";
23
+
24
+ exports.FieldRequiredIndicator = FieldRequiredIndicator;
@@ -0,0 +1,8 @@
1
+ import { HTMLProps, PolymorphicProps } from '../factory';
2
+ import { ForwardRefExoticComponent, RefAttributes } from 'react';
3
+ export interface FieldRequiredIndicatorBaseProps extends PolymorphicProps {
4
+ fallback?: React.ReactNode;
5
+ }
6
+ export interface FieldRequiredIndicatorProps extends HTMLProps<'span'>, FieldRequiredIndicatorBaseProps {
7
+ }
8
+ export declare const FieldRequiredIndicator: ForwardRefExoticComponent<FieldRequiredIndicatorProps & RefAttributes<HTMLSpanElement>>;
@@ -0,0 +1,8 @@
1
+ import { HTMLProps, PolymorphicProps } from '../factory';
2
+ import { ForwardRefExoticComponent, RefAttributes } from 'react';
3
+ export interface FieldRequiredIndicatorBaseProps extends PolymorphicProps {
4
+ fallback?: React.ReactNode;
5
+ }
6
+ export interface FieldRequiredIndicatorProps extends HTMLProps<'span'>, FieldRequiredIndicatorBaseProps {
7
+ }
8
+ export declare const FieldRequiredIndicator: ForwardRefExoticComponent<FieldRequiredIndicatorProps & RefAttributes<HTMLSpanElement>>;
@@ -0,0 +1,20 @@
1
+ 'use client';
2
+ import { jsx } from 'react/jsx-runtime';
3
+ import { mergeProps } from '@zag-js/core';
4
+ import { forwardRef } from 'react';
5
+ import { ark } from '../factory.js';
6
+ import { useFieldContext } from './use-field-context.js';
7
+
8
+ const FieldRequiredIndicator = forwardRef(
9
+ ({ fallback, ...props }, ref) => {
10
+ const field = useFieldContext();
11
+ if (!field.required) {
12
+ return fallback;
13
+ }
14
+ const mergedProps = mergeProps(field.getRequiredIndicatorProps(), props);
15
+ return /* @__PURE__ */ jsx(ark.span, { ...mergedProps, ref, children: props.children ?? "*" });
16
+ }
17
+ );
18
+ FieldRequiredIndicator.displayName = "FieldRequiredIndicator";
19
+
20
+ export { FieldRequiredIndicator };
@@ -12,7 +12,8 @@ const fieldAnatomy = anatomy.createAnatomy("field").parts(
12
12
  "input",
13
13
  "label",
14
14
  "select",
15
- "textarea"
15
+ "textarea",
16
+ "requiredIndicator"
16
17
  );
17
18
  const parts = fieldAnatomy.build();
18
19
 
@@ -1,3 +1,3 @@
1
1
  import { AnatomyInstance, AnatomyPart } from '@zag-js/anatomy';
2
- export declare const fieldAnatomy: AnatomyInstance<"input" | "label" | "select" | "textarea" | "root" | "errorText" | "helperText">;
3
- export declare const parts: Record<"input" | "label" | "select" | "textarea" | "root" | "errorText" | "helperText", AnatomyPart>;
2
+ export declare const fieldAnatomy: AnatomyInstance<"input" | "label" | "select" | "textarea" | "root" | "errorText" | "helperText" | "requiredIndicator">;
3
+ export declare const parts: Record<"input" | "label" | "select" | "textarea" | "root" | "errorText" | "helperText" | "requiredIndicator", AnatomyPart>;
@@ -1,3 +1,3 @@
1
1
  import { AnatomyInstance, AnatomyPart } from '@zag-js/anatomy';
2
- export declare const fieldAnatomy: AnatomyInstance<"input" | "label" | "select" | "textarea" | "root" | "errorText" | "helperText">;
3
- export declare const parts: Record<"input" | "label" | "select" | "textarea" | "root" | "errorText" | "helperText", AnatomyPart>;
2
+ export declare const fieldAnatomy: AnatomyInstance<"input" | "label" | "select" | "textarea" | "root" | "errorText" | "helperText" | "requiredIndicator">;
3
+ export declare const parts: Record<"input" | "label" | "select" | "textarea" | "root" | "errorText" | "helperText" | "requiredIndicator", AnatomyPart>;
@@ -8,7 +8,8 @@ const fieldAnatomy = createAnatomy("field").parts(
8
8
  "input",
9
9
  "label",
10
10
  "select",
11
- "textarea"
11
+ "textarea",
12
+ "requiredIndicator"
12
13
  );
13
14
  const parts = fieldAnatomy.build();
14
15
 
@@ -2,24 +2,26 @@
2
2
 
3
3
  Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
4
4
 
5
+ const fieldContext = require('./field-context.cjs');
6
+ const fieldErrorText = require('./field-error-text.cjs');
7
+ const fieldHelperText = require('./field-helper-text.cjs');
8
+ const fieldInput = require('./field-input.cjs');
9
+ const fieldLabel = require('./field-label.cjs');
10
+ const fieldRequiredIndicator = require('./field-required-indicator.cjs');
5
11
  const fieldRoot = require('./field-root.cjs');
6
12
  const fieldRootProvider = require('./field-root-provider.cjs');
7
- const fieldLabel = require('./field-label.cjs');
8
- const fieldInput = require('./field-input.cjs');
9
- const fieldTextarea = require('./field-textarea.cjs');
10
13
  const fieldSelect = require('./field-select.cjs');
11
- const fieldHelperText = require('./field-helper-text.cjs');
12
- const fieldErrorText = require('./field-error-text.cjs');
13
- const fieldContext = require('./field-context.cjs');
14
+ const fieldTextarea = require('./field-textarea.cjs');
14
15
 
15
16
 
16
17
 
18
+ exports.Context = fieldContext.FieldContext;
19
+ exports.ErrorText = fieldErrorText.FieldErrorText;
20
+ exports.HelperText = fieldHelperText.FieldHelperText;
21
+ exports.Input = fieldInput.FieldInput;
22
+ exports.Label = fieldLabel.FieldLabel;
23
+ exports.RequiredIndicator = fieldRequiredIndicator.FieldRequiredIndicator;
17
24
  exports.Root = fieldRoot.FieldRoot;
18
25
  exports.RootProvider = fieldRootProvider.FieldRootProvider;
19
- exports.Label = fieldLabel.FieldLabel;
20
- exports.Input = fieldInput.FieldInput;
21
- exports.Textarea = fieldTextarea.FieldTextarea;
22
26
  exports.Select = fieldSelect.FieldSelect;
23
- exports.HelperText = fieldHelperText.FieldHelperText;
24
- exports.ErrorText = fieldErrorText.FieldErrorText;
25
- exports.Context = fieldContext.FieldContext;
27
+ exports.Textarea = fieldTextarea.FieldTextarea;
@@ -1,9 +1,10 @@
1
- export { FieldRoot as Root, type FieldRootProps as RootProps, type FieldRootBaseProps as RootBaseProps, } from './field-root';
2
- export { FieldRootProvider as RootProvider, type FieldRootProviderProps as RootProviderProps, type FieldRootProviderBaseProps as RootProviderBaseProps, } from './field-root-provider';
3
- export { FieldLabel as Label, type FieldLabelProps as LabelProps, type FieldLabelBaseProps as LabelBaseProps, } from './field-label';
4
- export { FieldInput as Input, type FieldInputProps as InputProps, type FieldInputBaseProps as InputBaseProps, } from './field-input';
5
- export { FieldTextarea as Textarea, type FieldTextareaProps as TextareaProps, type FieldTextareaBaseProps as TextareaBaseProps, } from './field-textarea';
6
- export { FieldSelect as Select, type FieldSelectProps as SelectProps, type FieldSelectBaseProps as SelectBaseProps, } from './field-select';
7
- export { FieldHelperText as HelperText, type FieldHelperTextProps as HelperTextProps, type FieldHelperTextBaseProps as HelperTextBaseProps, } from './field-helper-text';
8
- export { FieldErrorText as ErrorText, type FieldErrorTextProps as ErrorTextProps, type FieldErrorTextBaseProps as ErrorTextBaseProps, } from './field-error-text';
9
1
  export { FieldContext as Context, type FieldContextProps as ContextProps } from './field-context';
2
+ export { FieldErrorText as ErrorText, type FieldErrorTextBaseProps as ErrorTextBaseProps, type FieldErrorTextProps as ErrorTextProps, } from './field-error-text';
3
+ export { FieldHelperText as HelperText, type FieldHelperTextBaseProps as HelperTextBaseProps, type FieldHelperTextProps as HelperTextProps, } from './field-helper-text';
4
+ export { FieldInput as Input, type FieldInputBaseProps as InputBaseProps, type FieldInputProps as InputProps, } from './field-input';
5
+ export { FieldLabel as Label, type FieldLabelBaseProps as LabelBaseProps, type FieldLabelProps as LabelProps, } from './field-label';
6
+ export { FieldRequiredIndicator as RequiredIndicator, type FieldRequiredIndicatorBaseProps as RequiredIndicatorBaseProps, type FieldRequiredIndicatorProps as RequiredIndicatorProps, } from './field-required-indicator';
7
+ export { FieldRoot as Root, type FieldRootBaseProps as RootBaseProps, type FieldRootProps as RootProps, } from './field-root';
8
+ export { FieldRootProvider as RootProvider, type FieldRootProviderBaseProps as RootProviderBaseProps, type FieldRootProviderProps as RootProviderProps, } from './field-root-provider';
9
+ export { FieldSelect as Select, type FieldSelectBaseProps as SelectBaseProps, type FieldSelectProps as SelectProps, } from './field-select';
10
+ export { FieldTextarea as Textarea, type FieldTextareaBaseProps as TextareaBaseProps, type FieldTextareaProps as TextareaProps, } from './field-textarea';
@@ -1,9 +1,10 @@
1
- export { FieldRoot as Root, type FieldRootProps as RootProps, type FieldRootBaseProps as RootBaseProps, } from './field-root';
2
- export { FieldRootProvider as RootProvider, type FieldRootProviderProps as RootProviderProps, type FieldRootProviderBaseProps as RootProviderBaseProps, } from './field-root-provider';
3
- export { FieldLabel as Label, type FieldLabelProps as LabelProps, type FieldLabelBaseProps as LabelBaseProps, } from './field-label';
4
- export { FieldInput as Input, type FieldInputProps as InputProps, type FieldInputBaseProps as InputBaseProps, } from './field-input';
5
- export { FieldTextarea as Textarea, type FieldTextareaProps as TextareaProps, type FieldTextareaBaseProps as TextareaBaseProps, } from './field-textarea';
6
- export { FieldSelect as Select, type FieldSelectProps as SelectProps, type FieldSelectBaseProps as SelectBaseProps, } from './field-select';
7
- export { FieldHelperText as HelperText, type FieldHelperTextProps as HelperTextProps, type FieldHelperTextBaseProps as HelperTextBaseProps, } from './field-helper-text';
8
- export { FieldErrorText as ErrorText, type FieldErrorTextProps as ErrorTextProps, type FieldErrorTextBaseProps as ErrorTextBaseProps, } from './field-error-text';
9
1
  export { FieldContext as Context, type FieldContextProps as ContextProps } from './field-context';
2
+ export { FieldErrorText as ErrorText, type FieldErrorTextBaseProps as ErrorTextBaseProps, type FieldErrorTextProps as ErrorTextProps, } from './field-error-text';
3
+ export { FieldHelperText as HelperText, type FieldHelperTextBaseProps as HelperTextBaseProps, type FieldHelperTextProps as HelperTextProps, } from './field-helper-text';
4
+ export { FieldInput as Input, type FieldInputBaseProps as InputBaseProps, type FieldInputProps as InputProps, } from './field-input';
5
+ export { FieldLabel as Label, type FieldLabelBaseProps as LabelBaseProps, type FieldLabelProps as LabelProps, } from './field-label';
6
+ export { FieldRequiredIndicator as RequiredIndicator, type FieldRequiredIndicatorBaseProps as RequiredIndicatorBaseProps, type FieldRequiredIndicatorProps as RequiredIndicatorProps, } from './field-required-indicator';
7
+ export { FieldRoot as Root, type FieldRootBaseProps as RootBaseProps, type FieldRootProps as RootProps, } from './field-root';
8
+ export { FieldRootProvider as RootProvider, type FieldRootProviderBaseProps as RootProviderBaseProps, type FieldRootProviderProps as RootProviderProps, } from './field-root-provider';
9
+ export { FieldSelect as Select, type FieldSelectBaseProps as SelectBaseProps, type FieldSelectProps as SelectProps, } from './field-select';
10
+ export { FieldTextarea as Textarea, type FieldTextareaBaseProps as TextareaBaseProps, type FieldTextareaProps as TextareaProps, } from './field-textarea';
@@ -1,9 +1,10 @@
1
+ export { FieldContext as Context } from './field-context.js';
2
+ export { FieldErrorText as ErrorText } from './field-error-text.js';
3
+ export { FieldHelperText as HelperText } from './field-helper-text.js';
4
+ export { FieldInput as Input } from './field-input.js';
5
+ export { FieldLabel as Label } from './field-label.js';
6
+ export { FieldRequiredIndicator as RequiredIndicator } from './field-required-indicator.js';
1
7
  export { FieldRoot as Root } from './field-root.js';
2
8
  export { FieldRootProvider as RootProvider } from './field-root-provider.js';
3
- export { FieldLabel as Label } from './field-label.js';
4
- export { FieldInput as Input } from './field-input.js';
5
- export { FieldTextarea as Textarea } from './field-textarea.js';
6
9
  export { FieldSelect as Select } from './field-select.js';
7
- export { FieldHelperText as HelperText } from './field-helper-text.js';
8
- export { FieldErrorText as ErrorText } from './field-error-text.js';
9
- export { FieldContext as Context } from './field-context.js';
10
+ export { FieldTextarea as Textarea } from './field-textarea.js';
@@ -11,6 +11,7 @@ const fieldRoot = require('./field-root.cjs');
11
11
  const fieldRootProvider = require('./field-root-provider.cjs');
12
12
  const fieldSelect = require('./field-select.cjs');
13
13
  const fieldTextarea = require('./field-textarea.cjs');
14
+ const fieldRequiredIndicator = require('./field-required-indicator.cjs');
14
15
  const field_anatomy = require('./field.anatomy.cjs');
15
16
  const useFieldContext = require('./use-field-context.cjs');
16
17
  const field = require('./field.cjs');
@@ -26,6 +27,7 @@ exports.FieldRoot = fieldRoot.FieldRoot;
26
27
  exports.FieldRootProvider = fieldRootProvider.FieldRootProvider;
27
28
  exports.FieldSelect = fieldSelect.FieldSelect;
28
29
  exports.FieldTextarea = fieldTextarea.FieldTextarea;
30
+ exports.FieldRequiredIndicator = fieldRequiredIndicator.FieldRequiredIndicator;
29
31
  exports.fieldAnatomy = field_anatomy.fieldAnatomy;
30
32
  exports.useFieldContext = useFieldContext.useFieldContext;
31
33
  exports.Field = field;
@@ -7,6 +7,7 @@ export { FieldRoot, type FieldRootBaseProps, type FieldRootProps } from './field
7
7
  export { FieldRootProvider, type FieldRootProviderBaseProps, type FieldRootProviderProps, } from './field-root-provider';
8
8
  export { FieldSelect, type FieldSelectBaseProps, type FieldSelectProps } from './field-select';
9
9
  export { FieldTextarea, type FieldTextareaBaseProps, type FieldTextareaProps, } from './field-textarea';
10
+ export { FieldRequiredIndicator, type FieldRequiredIndicatorProps, type FieldRequiredIndicatorBaseProps, } from './field-required-indicator';
10
11
  export { fieldAnatomy } from './field.anatomy';
11
12
  export { useFieldContext, type UseFieldContext } from './use-field-context';
12
13
  export * as Field from './field';
@@ -7,6 +7,7 @@ export { FieldRoot, type FieldRootBaseProps, type FieldRootProps } from './field
7
7
  export { FieldRootProvider, type FieldRootProviderBaseProps, type FieldRootProviderProps, } from './field-root-provider';
8
8
  export { FieldSelect, type FieldSelectBaseProps, type FieldSelectProps } from './field-select';
9
9
  export { FieldTextarea, type FieldTextareaBaseProps, type FieldTextareaProps, } from './field-textarea';
10
+ export { FieldRequiredIndicator, type FieldRequiredIndicatorProps, type FieldRequiredIndicatorBaseProps, } from './field-required-indicator';
10
11
  export { fieldAnatomy } from './field.anatomy';
11
12
  export { useFieldContext, type UseFieldContext } from './use-field-context';
12
13
  export * as Field from './field';
@@ -7,6 +7,7 @@ export { FieldRoot } from './field-root.js';
7
7
  export { FieldRootProvider } from './field-root-provider.js';
8
8
  export { FieldSelect } from './field-select.js';
9
9
  export { FieldTextarea } from './field-textarea.js';
10
+ export { FieldRequiredIndicator } from './field-required-indicator.js';
10
11
  export { fieldAnatomy } from './field.anatomy.js';
11
12
  export { useFieldContext } from './use-field-context.js';
12
13
  import * as field from './field.js';
@@ -119,6 +119,13 @@ const useField = (props) => {
119
119
  }),
120
120
  [errorTextId]
121
121
  );
122
+ const getRequiredIndicatorProps = react.useMemo(
123
+ () => () => ({
124
+ "aria-hidden": true,
125
+ ...field_anatomy.parts.requiredIndicator.attrs
126
+ }),
127
+ []
128
+ );
122
129
  return {
123
130
  ariaDescribedby: labelIds,
124
131
  ids: {
@@ -141,7 +148,8 @@ const useField = (props) => {
141
148
  getTextareaProps,
142
149
  getSelectProps,
143
150
  getHelperTextProps,
144
- getErrorTextProps
151
+ getErrorTextProps,
152
+ getRequiredIndicatorProps
145
153
  };
146
154
  };
147
155
 
@@ -57,4 +57,5 @@ export declare const useField: (props: UseFieldProps) => {
57
57
  getSelectProps: () => HTMLProps<"select">;
58
58
  getHelperTextProps: () => HTMLProps<"span">;
59
59
  getErrorTextProps: () => HTMLProps<"span">;
60
+ getRequiredIndicatorProps: () => HTMLProps<"span">;
60
61
  };
@@ -57,4 +57,5 @@ export declare const useField: (props: UseFieldProps) => {
57
57
  getSelectProps: () => HTMLProps<"select">;
58
58
  getHelperTextProps: () => HTMLProps<"span">;
59
59
  getErrorTextProps: () => HTMLProps<"span">;
60
+ getRequiredIndicatorProps: () => HTMLProps<"span">;
60
61
  };
@@ -115,6 +115,13 @@ const useField = (props) => {
115
115
  }),
116
116
  [errorTextId]
117
117
  );
118
+ const getRequiredIndicatorProps = useMemo(
119
+ () => () => ({
120
+ "aria-hidden": true,
121
+ ...parts.requiredIndicator.attrs
122
+ }),
123
+ []
124
+ );
118
125
  return {
119
126
  ariaDescribedby: labelIds,
120
127
  ids: {
@@ -137,7 +144,8 @@ const useField = (props) => {
137
144
  getTextareaProps,
138
145
  getSelectProps,
139
146
  getHelperTextProps,
140
- getErrorTextProps
147
+ getErrorTextProps,
148
+ getRequiredIndicatorProps
141
149
  };
142
150
  };
143
151
 
@@ -6,6 +6,7 @@ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
6
6
  const domQuery = require('@zag-js/dom-query');
7
7
  const react = require('react');
8
8
  const fieldset_anatomy = require('./fieldset.anatomy.cjs');
9
+ const useSafeLayoutEffect = require('../../utils/use-safe-layout-effect.cjs');
9
10
 
10
11
  const useFieldset = (props) => {
11
12
  const { disabled = false, invalid = false } = props;
@@ -15,7 +16,7 @@ const useFieldset = (props) => {
15
16
  const rootRef = react.useRef(null);
16
17
  const errorTextId = `fieldset::${id}::error-text`;
17
18
  const helperTextId = `fieldset::${id}::helper-text`;
18
- react.useLayoutEffect(() => {
19
+ useSafeLayoutEffect.useSafeLayoutEffect(() => {
19
20
  const rootNode = rootRef.current;
20
21
  if (!rootNode) return;
21
22
  const win = domQuery.getWindow(rootNode);
@@ -1,7 +1,8 @@
1
1
  'use client';
2
2
  import { getWindow } from '@zag-js/dom-query';
3
- import { useRef, useId, useLayoutEffect, useMemo } from 'react';
3
+ import { useRef, useId, useMemo } from 'react';
4
4
  import { parts } from './fieldset.anatomy.js';
5
+ import { useSafeLayoutEffect } from '../../utils/use-safe-layout-effect.js';
5
6
 
6
7
  const useFieldset = (props) => {
7
8
  const { disabled = false, invalid = false } = props;
@@ -11,7 +12,7 @@ const useFieldset = (props) => {
11
12
  const rootRef = useRef(null);
12
13
  const errorTextId = `fieldset::${id}::error-text`;
13
14
  const helperTextId = `fieldset::${id}::helper-text`;
14
- useLayoutEffect(() => {
15
+ useSafeLayoutEffect(() => {
15
16
  const rootNode = rootRef.current;
16
17
  if (!rootNode) return;
17
18
  const win = getWindow(rootNode);
@@ -1,3 +1,4 @@
1
+ 'use client';
1
2
  'use strict';
2
3
 
3
4
  Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
@@ -1,3 +1,4 @@
1
+ 'use client';
1
2
  import { jsx, jsxs } from 'react/jsx-runtime';
2
3
  import { forwardRef, useState, useEffect, useId } from 'react';
3
4
  import { createPortal } from 'react-dom';
@@ -51,6 +51,7 @@ const useCheckboxContext = require('./checkbox/use-checkbox-context.cjs');
51
51
  const useCheckboxGroup = require('./checkbox/use-checkbox-group.cjs');
52
52
  const useCheckboxGroupContext = require('./checkbox/use-checkbox-group-context.cjs');
53
53
  const checkbox = require('./checkbox/checkbox.cjs');
54
+ const clientOnly = require('./client-only/client-only.cjs');
54
55
  const clipboardContext = require('./clipboard/clipboard-context.cjs');
55
56
  const clipboardControl = require('./clipboard/clipboard-control.cjs');
56
57
  const clipboardIndicator = require('./clipboard/clipboard-indicator.cjs');
@@ -194,6 +195,7 @@ const fieldRoot = require('./field/field-root.cjs');
194
195
  const fieldRootProvider = require('./field/field-root-provider.cjs');
195
196
  const fieldSelect = require('./field/field-select.cjs');
196
197
  const fieldTextarea = require('./field/field-textarea.cjs');
198
+ const fieldRequiredIndicator = require('./field/field-required-indicator.cjs');
197
199
  const field_anatomy = require('./field/field.anatomy.cjs');
198
200
  const useFieldContext = require('./field/use-field-context.cjs');
199
201
  const field = require('./field/field.cjs');
@@ -421,6 +423,7 @@ const useSignaturePadContext = require('./signature-pad/use-signature-pad-contex
421
423
  const signaturePad$1 = require('./signature-pad/signature-pad.cjs');
422
424
  const sliderContext = require('./slider/slider-context.cjs');
423
425
  const sliderControl = require('./slider/slider-control.cjs');
426
+ const sliderDraggingIndicator = require('./slider/slider-dragging-indicator.cjs');
424
427
  const sliderHiddenInput = require('./slider/slider-hidden-input.cjs');
425
428
  const sliderLabel = require('./slider/slider-label.cjs');
426
429
  const sliderMarker = require('./slider/slider-marker.cjs');
@@ -663,6 +666,7 @@ exports.useCheckboxContext = useCheckboxContext.useCheckboxContext;
663
666
  exports.useCheckboxGroup = useCheckboxGroup.useCheckboxGroup;
664
667
  exports.useCheckboxGroupContext = useCheckboxGroupContext.useCheckboxGroupContext;
665
668
  exports.Checkbox = checkbox;
669
+ exports.ClientOnly = clientOnly.ClientOnly;
666
670
  exports.ClipboardContext = clipboardContext.ClipboardContext;
667
671
  exports.ClipboardControl = clipboardControl.ClipboardControl;
668
672
  exports.ClipboardIndicator = clipboardIndicator.ClipboardIndicator;
@@ -813,6 +817,7 @@ exports.FieldRoot = fieldRoot.FieldRoot;
813
817
  exports.FieldRootProvider = fieldRootProvider.FieldRootProvider;
814
818
  exports.FieldSelect = fieldSelect.FieldSelect;
815
819
  exports.FieldTextarea = fieldTextarea.FieldTextarea;
820
+ exports.FieldRequiredIndicator = fieldRequiredIndicator.FieldRequiredIndicator;
816
821
  exports.fieldAnatomy = field_anatomy.fieldAnatomy;
817
822
  exports.useFieldContext = useFieldContext.useFieldContext;
818
823
  exports.Field = field;
@@ -1041,6 +1046,7 @@ exports.useSignaturePadContext = useSignaturePadContext.useSignaturePadContext;
1041
1046
  exports.SignaturePad = signaturePad$1;
1042
1047
  exports.SliderContext = sliderContext.SliderContext;
1043
1048
  exports.SliderControl = sliderControl.SliderControl;
1049
+ exports.SliderDraggingIndicator = sliderDraggingIndicator.SliderDraggingIndicator;
1044
1050
  exports.SliderHiddenInput = sliderHiddenInput.SliderHiddenInput;
1045
1051
  exports.SliderLabel = sliderLabel.SliderLabel;
1046
1052
  exports.SliderMarker = sliderMarker.SliderMarker;
@@ -2,6 +2,7 @@ export * from './accordion';
2
2
  export * from './avatar';
3
3
  export * from './carousel';
4
4
  export * from './checkbox';
5
+ export * from './client-only';
5
6
  export * from './clipboard';
6
7
  export * from './collapsible';
7
8
  export * from './color-picker';
@@ -2,6 +2,7 @@ export * from './accordion';
2
2
  export * from './avatar';
3
3
  export * from './carousel';
4
4
  export * from './checkbox';
5
+ export * from './client-only';
5
6
  export * from './clipboard';
6
7
  export * from './collapsible';
7
8
  export * from './color-picker';