@ark-ui/react 4.5.0 → 4.7.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 (117) hide show
  1. package/dist/components/carousel/carousel-autoplay-trigger.cjs +21 -0
  2. package/dist/components/carousel/carousel-autoplay-trigger.d.cts +7 -0
  3. package/dist/components/carousel/carousel-autoplay-trigger.d.ts +7 -0
  4. package/dist/components/carousel/carousel-autoplay-trigger.js +17 -0
  5. package/dist/components/carousel/carousel-control.cjs +7 -2
  6. package/dist/components/carousel/carousel-control.js +7 -2
  7. package/dist/components/carousel/carousel-item.cjs +1 -1
  8. package/dist/components/carousel/carousel-item.js +1 -1
  9. package/dist/components/carousel/carousel-root.cjs +15 -6
  10. package/dist/components/carousel/carousel-root.js +15 -6
  11. package/dist/components/carousel/carousel.anatomy.d.cts +1 -2
  12. package/dist/components/carousel/carousel.anatomy.d.ts +1 -2
  13. package/dist/components/carousel/carousel.cjs +2 -2
  14. package/dist/components/carousel/carousel.d.cts +11 -11
  15. package/dist/components/carousel/carousel.d.ts +11 -11
  16. package/dist/components/carousel/carousel.js +1 -1
  17. package/dist/components/carousel/index.cjs +9 -6
  18. package/dist/components/carousel/index.d.cts +2 -2
  19. package/dist/components/carousel/index.d.ts +2 -2
  20. package/dist/components/carousel/index.js +2 -2
  21. package/dist/components/carousel/use-carousel.cjs +3 -3
  22. package/dist/components/carousel/use-carousel.d.cts +2 -2
  23. package/dist/components/carousel/use-carousel.d.ts +2 -2
  24. package/dist/components/carousel/use-carousel.js +3 -3
  25. package/dist/components/checkbox/checkbox.anatomy.d.cts +1 -1
  26. package/dist/components/checkbox/checkbox.anatomy.d.ts +1 -1
  27. package/dist/components/checkbox/use-checkbox-group.cjs +3 -3
  28. package/dist/components/checkbox/use-checkbox-group.js +3 -3
  29. package/dist/components/clipboard/clipboard-value-text.cjs +19 -0
  30. package/dist/components/clipboard/clipboard-value-text.d.cts +7 -0
  31. package/dist/components/clipboard/clipboard-value-text.d.ts +7 -0
  32. package/dist/components/clipboard/clipboard-value-text.js +15 -0
  33. package/dist/components/clipboard/clipboard.cjs +2 -0
  34. package/dist/components/clipboard/clipboard.d.cts +1 -0
  35. package/dist/components/clipboard/clipboard.d.ts +1 -0
  36. package/dist/components/clipboard/clipboard.js +1 -0
  37. package/dist/components/clipboard/index.cjs +2 -0
  38. package/dist/components/clipboard/index.d.cts +2 -1
  39. package/dist/components/clipboard/index.d.ts +2 -1
  40. package/dist/components/clipboard/index.js +1 -0
  41. package/dist/components/collection.d.cts +1 -1
  42. package/dist/components/collection.d.ts +1 -1
  43. package/dist/components/combobox/combobox-root.cjs +1 -0
  44. package/dist/components/combobox/combobox-root.js +1 -0
  45. package/dist/components/date-picker/date-picker.anatomy.d.cts +1 -1
  46. package/dist/components/date-picker/date-picker.anatomy.d.ts +1 -1
  47. package/dist/components/field/use-field.d.cts +1 -1
  48. package/dist/components/field/use-field.d.ts +1 -1
  49. package/dist/components/fieldset/use-fieldset.d.cts +1 -1
  50. package/dist/components/fieldset/use-fieldset.d.ts +1 -1
  51. package/dist/components/file-upload/file-upload-root.cjs +1 -0
  52. package/dist/components/file-upload/file-upload-root.js +1 -0
  53. package/dist/components/index.cjs +17 -10
  54. package/dist/components/index.js +6 -4
  55. package/dist/components/menu/menu-root.cjs +1 -0
  56. package/dist/components/menu/menu-root.js +1 -0
  57. package/dist/components/portal/portal.d.cts +1 -1
  58. package/dist/components/portal/portal.d.ts +1 -1
  59. package/dist/components/presence/use-presence.cjs +1 -3
  60. package/dist/components/presence/use-presence.js +1 -3
  61. package/dist/components/progress/examples/circular/controlled.d.cts +1 -0
  62. package/dist/components/progress/examples/circular/controlled.d.ts +1 -0
  63. package/dist/components/progress/examples/linear/controlled.d.cts +1 -0
  64. package/dist/components/progress/examples/linear/controlled.d.ts +1 -0
  65. package/dist/components/progress/examples/linear/root-provider.d.cts +1 -1
  66. package/dist/components/progress/examples/linear/root-provider.d.ts +1 -1
  67. package/dist/components/progress/progress-root.cjs +2 -0
  68. package/dist/components/progress/progress-root.d.cts +2 -1
  69. package/dist/components/progress/progress-root.d.ts +2 -1
  70. package/dist/components/progress/progress-root.js +2 -0
  71. package/dist/components/progress/use-progress.cjs +4 -1
  72. package/dist/components/progress/use-progress.d.cts +5 -0
  73. package/dist/components/progress/use-progress.d.ts +5 -0
  74. package/dist/components/progress/use-progress.js +4 -1
  75. package/dist/components/qr-code/index.cjs +2 -0
  76. package/dist/components/qr-code/index.d.cts +1 -0
  77. package/dist/components/qr-code/index.d.ts +1 -0
  78. package/dist/components/qr-code/index.js +1 -0
  79. package/dist/components/qr-code/qr-code-download-trigger.cjs +27 -0
  80. package/dist/components/qr-code/qr-code-download-trigger.d.cts +8 -0
  81. package/dist/components/qr-code/qr-code-download-trigger.d.ts +8 -0
  82. package/dist/components/qr-code/qr-code-download-trigger.js +23 -0
  83. package/dist/components/qr-code/qr-code-root.cjs +2 -0
  84. package/dist/components/qr-code/qr-code-root.d.cts +2 -1
  85. package/dist/components/qr-code/qr-code-root.d.ts +2 -1
  86. package/dist/components/qr-code/qr-code-root.js +2 -0
  87. package/dist/components/qr-code/qr-code.cjs +2 -0
  88. package/dist/components/qr-code/qr-code.d.cts +6 -5
  89. package/dist/components/qr-code/qr-code.d.ts +6 -5
  90. package/dist/components/qr-code/qr-code.js +1 -0
  91. package/dist/components/qr-code/use-qr-code.cjs +10 -2
  92. package/dist/components/qr-code/use-qr-code.d.cts +5 -0
  93. package/dist/components/qr-code/use-qr-code.d.ts +5 -0
  94. package/dist/components/qr-code/use-qr-code.js +10 -2
  95. package/dist/components/segment-group/segment-group.anatomy.d.cts +2 -2
  96. package/dist/components/segment-group/segment-group.anatomy.d.ts +2 -2
  97. package/dist/components/tabs/tab-content.cjs +2 -1
  98. package/dist/components/tabs/tab-content.js +2 -1
  99. package/dist/components/tabs/tabs-root.cjs +1 -0
  100. package/dist/components/tabs/tabs-root.js +1 -0
  101. package/dist/components/timer/index.cjs +4 -4
  102. package/dist/components/timer/index.d.cts +2 -2
  103. package/dist/components/timer/index.d.ts +2 -2
  104. package/dist/components/timer/index.js +2 -2
  105. package/dist/components/tree-view/tree-view-root-provider.d.cts +1 -0
  106. package/dist/components/tree-view/tree-view-root-provider.d.ts +1 -0
  107. package/dist/components/tree-view/tree-view-root.d.cts +1 -0
  108. package/dist/components/tree-view/tree-view-root.d.ts +1 -0
  109. package/dist/index.cjs +17 -10
  110. package/dist/index.js +6 -4
  111. package/package.json +61 -61
  112. package/dist/components/carousel/carousel-viewport.cjs +0 -19
  113. package/dist/components/carousel/carousel-viewport.d.cts +0 -7
  114. package/dist/components/carousel/carousel-viewport.d.ts +0 -7
  115. package/dist/components/carousel/carousel-viewport.js +0 -15
  116. package/dist/components/carousel/carousel.anatomy.cjs +0 -10
  117. package/dist/components/carousel/carousel.anatomy.js +0 -6
@@ -0,0 +1,8 @@
1
+ import { DownloadTriggerProps } from '@zag-js/qr-code';
2
+ import { HTMLProps, PolymorphicProps } from '../factory';
3
+ import { ForwardRefExoticComponent, RefAttributes } from 'react';
4
+ export interface QrCodeDownloadTriggerBaseProps extends DownloadTriggerProps, PolymorphicProps {
5
+ }
6
+ export interface QrCodeDownloadTriggerProps extends HTMLProps<'button'>, QrCodeDownloadTriggerBaseProps {
7
+ }
8
+ export declare const QrCodeDownloadTrigger: ForwardRefExoticComponent<QrCodeDownloadTriggerProps & RefAttributes<HTMLButtonElement>>;
@@ -0,0 +1,23 @@
1
+ 'use client';
2
+ import { jsx } from 'react/jsx-runtime';
3
+ import { mergeProps } from '@zag-js/react';
4
+ import { forwardRef } from 'react';
5
+ import { createSplitProps } from '../../utils/create-split-props.js';
6
+ import { ark } from '../factory.js';
7
+ import { useQrCodeContext } from './use-qr-code-context.js';
8
+
9
+ const QrCodeDownloadTrigger = forwardRef(
10
+ (props, ref) => {
11
+ const [downloadTriggerProps, localProps] = createSplitProps()(props, [
12
+ "fileName",
13
+ "mimeType",
14
+ "quality"
15
+ ]);
16
+ const qrCode = useQrCodeContext();
17
+ const mergedProps = mergeProps(qrCode.getDownloadTriggerProps(downloadTriggerProps), localProps);
18
+ return /* @__PURE__ */ jsx(ark.button, { ...mergedProps, ref });
19
+ }
20
+ );
21
+ QrCodeDownloadTrigger.displayName = "QrCodeDownloadTrigger";
22
+
23
+ export { QrCodeDownloadTrigger };
@@ -13,9 +13,11 @@ const useQrCodeContext = require('./use-qr-code-context.cjs');
13
13
 
14
14
  const QrCodeRoot = react.forwardRef((props, ref) => {
15
15
  const [qrcodeProps, localProps] = createSplitProps.createSplitProps()(props, [
16
+ "defaultValue",
16
17
  "encoding",
17
18
  "id",
18
19
  "ids",
20
+ "onValueChange",
19
21
  "value"
20
22
  ]);
21
23
  const qrCode = useQrCode.useQrCode(qrcodeProps);
@@ -1,8 +1,9 @@
1
+ import { Assign } from '../../types';
1
2
  import { HTMLProps, PolymorphicProps } from '../factory';
2
3
  import { UseQrCodeProps } from './use-qr-code';
3
4
  import { ForwardRefExoticComponent, RefAttributes } from 'react';
4
5
  export interface QrCodeRootBaseProps extends UseQrCodeProps, PolymorphicProps {
5
6
  }
6
- export interface QrCodeRootProps extends HTMLProps<'div'>, QrCodeRootBaseProps {
7
+ export interface QrCodeRootProps extends Assign<HTMLProps<'div'>, QrCodeRootBaseProps> {
7
8
  }
8
9
  export declare const QrCodeRoot: ForwardRefExoticComponent<QrCodeRootProps & RefAttributes<HTMLDivElement>>;
@@ -1,8 +1,9 @@
1
+ import { Assign } from '../../types';
1
2
  import { HTMLProps, PolymorphicProps } from '../factory';
2
3
  import { UseQrCodeProps } from './use-qr-code';
3
4
  import { ForwardRefExoticComponent, RefAttributes } from 'react';
4
5
  export interface QrCodeRootBaseProps extends UseQrCodeProps, PolymorphicProps {
5
6
  }
6
- export interface QrCodeRootProps extends HTMLProps<'div'>, QrCodeRootBaseProps {
7
+ export interface QrCodeRootProps extends Assign<HTMLProps<'div'>, QrCodeRootBaseProps> {
7
8
  }
8
9
  export declare const QrCodeRoot: ForwardRefExoticComponent<QrCodeRootProps & RefAttributes<HTMLDivElement>>;
@@ -9,9 +9,11 @@ import { QrCodeProvider } from './use-qr-code-context.js';
9
9
 
10
10
  const QrCodeRoot = forwardRef((props, ref) => {
11
11
  const [qrcodeProps, localProps] = createSplitProps()(props, [
12
+ "defaultValue",
12
13
  "encoding",
13
14
  "id",
14
15
  "ids",
16
+ "onValueChange",
15
17
  "value"
16
18
  ]);
17
19
  const qrCode = useQrCode(qrcodeProps);
@@ -3,6 +3,7 @@
3
3
  Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
4
4
 
5
5
  const qrCodeContext = require('./qr-code-context.cjs');
6
+ const qrCodeDownloadTrigger = require('./qr-code-download-trigger.cjs');
6
7
  const qrCodeFrame = require('./qr-code-frame.cjs');
7
8
  const qrCodeOverlay = require('./qr-code-overlay.cjs');
8
9
  const qrCodePattern = require('./qr-code-pattern.cjs');
@@ -12,6 +13,7 @@ const qrCodeRootProvider = require('./qr-code-root-provider.cjs');
12
13
 
13
14
 
14
15
  exports.Context = qrCodeContext.QrCodeContext;
16
+ exports.DownloadTrigger = qrCodeDownloadTrigger.QrCodeDownloadTrigger;
15
17
  exports.Frame = qrCodeFrame.QrCodeFrame;
16
18
  exports.Overlay = qrCodeOverlay.QrCodeOverlay;
17
19
  exports.Pattern = qrCodePattern.QrCodePattern;
@@ -1,7 +1,8 @@
1
1
  export type { QrCodeGenerateOptions as GenerateOptions, QrCodeGenerateResult as GenerateResult, } from '@zag-js/qr-code';
2
2
  export { QrCodeContext as Context, type QrCodeContextProps as ContextProps, } from './qr-code-context';
3
- export { QrCodeFrame as Frame, type QrCodeFrameProps as FrameProps, type QrCodeFrameBaseProps as FrameBaseProps, } from './qr-code-frame';
4
- export { QrCodeOverlay as Overlay, type QrCodeOverlayProps as OverlayProps, type QrCodeOverlayBaseProps as OverlayBaseProps, } from './qr-code-overlay';
5
- export { QrCodePattern as Pattern, type QrCodePatternProps as PatternProps, type QrCodePatternBaseProps as PatternBaseProps, } from './qr-code-pattern';
6
- export { QrCodeRoot as Root, type QrCodeRootProps as RootProps, type QrCodeRootBaseProps as RootBaseProps, } from './qr-code-root';
7
- export { QrCodeRootProvider as RootProvider, type QrCodeRootProviderProps as RootProviderProps, type QrCodeRootProviderBaseProps as RootProviderBaseProps, } from './qr-code-root-provider';
3
+ export { QrCodeDownloadTrigger as DownloadTrigger, type QrCodeDownloadTriggerBaseProps as DownloadTriggerBaseProps, type QrCodeDownloadTriggerProps as DownloadTriggerProps, } from './qr-code-download-trigger';
4
+ export { QrCodeFrame as Frame, type QrCodeFrameBaseProps as FrameBaseProps, type QrCodeFrameProps as FrameProps, } from './qr-code-frame';
5
+ export { QrCodeOverlay as Overlay, type QrCodeOverlayBaseProps as OverlayBaseProps, type QrCodeOverlayProps as OverlayProps, } from './qr-code-overlay';
6
+ export { QrCodePattern as Pattern, type QrCodePatternBaseProps as PatternBaseProps, type QrCodePatternProps as PatternProps, } from './qr-code-pattern';
7
+ export { QrCodeRoot as Root, type QrCodeRootBaseProps as RootBaseProps, type QrCodeRootProps as RootProps, } from './qr-code-root';
8
+ export { QrCodeRootProvider as RootProvider, type QrCodeRootProviderBaseProps as RootProviderBaseProps, type QrCodeRootProviderProps as RootProviderProps, } from './qr-code-root-provider';
@@ -1,7 +1,8 @@
1
1
  export type { QrCodeGenerateOptions as GenerateOptions, QrCodeGenerateResult as GenerateResult, } from '@zag-js/qr-code';
2
2
  export { QrCodeContext as Context, type QrCodeContextProps as ContextProps, } from './qr-code-context';
3
- export { QrCodeFrame as Frame, type QrCodeFrameProps as FrameProps, type QrCodeFrameBaseProps as FrameBaseProps, } from './qr-code-frame';
4
- export { QrCodeOverlay as Overlay, type QrCodeOverlayProps as OverlayProps, type QrCodeOverlayBaseProps as OverlayBaseProps, } from './qr-code-overlay';
5
- export { QrCodePattern as Pattern, type QrCodePatternProps as PatternProps, type QrCodePatternBaseProps as PatternBaseProps, } from './qr-code-pattern';
6
- export { QrCodeRoot as Root, type QrCodeRootProps as RootProps, type QrCodeRootBaseProps as RootBaseProps, } from './qr-code-root';
7
- export { QrCodeRootProvider as RootProvider, type QrCodeRootProviderProps as RootProviderProps, type QrCodeRootProviderBaseProps as RootProviderBaseProps, } from './qr-code-root-provider';
3
+ export { QrCodeDownloadTrigger as DownloadTrigger, type QrCodeDownloadTriggerBaseProps as DownloadTriggerBaseProps, type QrCodeDownloadTriggerProps as DownloadTriggerProps, } from './qr-code-download-trigger';
4
+ export { QrCodeFrame as Frame, type QrCodeFrameBaseProps as FrameBaseProps, type QrCodeFrameProps as FrameProps, } from './qr-code-frame';
5
+ export { QrCodeOverlay as Overlay, type QrCodeOverlayBaseProps as OverlayBaseProps, type QrCodeOverlayProps as OverlayProps, } from './qr-code-overlay';
6
+ export { QrCodePattern as Pattern, type QrCodePatternBaseProps as PatternBaseProps, type QrCodePatternProps as PatternProps, } from './qr-code-pattern';
7
+ export { QrCodeRoot as Root, type QrCodeRootBaseProps as RootBaseProps, type QrCodeRootProps as RootProps, } from './qr-code-root';
8
+ export { QrCodeRootProvider as RootProvider, type QrCodeRootProviderBaseProps as RootProviderBaseProps, type QrCodeRootProviderProps as RootProviderProps, } from './qr-code-root-provider';
@@ -1,4 +1,5 @@
1
1
  export { QrCodeContext as Context } from './qr-code-context.js';
2
+ export { QrCodeDownloadTrigger as DownloadTrigger } from './qr-code-download-trigger.js';
2
3
  export { QrCodeFrame as Frame } from './qr-code-frame.js';
3
4
  export { QrCodeOverlay as Overlay } from './qr-code-overlay.js';
4
5
  export { QrCodePattern as Pattern } from './qr-code-pattern.js';
@@ -8,6 +8,7 @@ const react$1 = require('@zag-js/react');
8
8
  const react = require('react');
9
9
  const useEnvironmentContext = require('../../providers/environment/use-environment-context.cjs');
10
10
  const useLocaleContext = require('../../providers/locale/use-locale-context.cjs');
11
+ const useEvent = require('../../utils/use-event.cjs');
11
12
 
12
13
  function _interopNamespaceDefault(e) {
13
14
  const n = Object.create(null, { [Symbol.toStringTag]: { value: 'Module' } });
@@ -31,13 +32,20 @@ const qrcode__namespace = /*#__PURE__*/_interopNamespaceDefault(qrcode);
31
32
  const useQrCode = (props = {}) => {
32
33
  const { getRootNode } = useEnvironmentContext.useEnvironmentContext();
33
34
  const { dir } = useLocaleContext.useLocaleContext();
34
- const context = {
35
+ const initialContext = {
35
36
  id: react.useId(),
36
37
  dir,
38
+ value: props.defaultValue,
37
39
  getRootNode,
40
+ onValueChange: useEvent.useEvent(props.onValueChange, { sync: true }),
38
41
  ...props
39
42
  };
40
- const [state, send] = react$1.useMachine(qrcode__namespace.machine(context), { context });
43
+ const context = {
44
+ ...initialContext,
45
+ value: props.value,
46
+ onValueChange: useEvent.useEvent(props.onValueChange, { sync: true })
47
+ };
48
+ const [state, send] = react$1.useMachine(qrcode__namespace.machine(initialContext), { context });
41
49
  return qrcode__namespace.connect(state, send, react$1.normalizeProps);
42
50
  };
43
51
 
@@ -2,6 +2,11 @@ import { PropTypes } from '@zag-js/react';
2
2
  import { Optional } from '../../types';
3
3
  import * as qrcode from '@zag-js/qr-code';
4
4
  export interface UseQrCodeProps extends Optional<Omit<qrcode.Context, 'dir' | 'getRootNode'>, 'id'> {
5
+ /**
6
+ * The initial value of the qr code when it is first rendered.
7
+ * Use when you do not need to control the state of the qr code.
8
+ */
9
+ defaultValue?: qrcode.Context['value'];
5
10
  }
6
11
  export interface UseQrCodeReturn extends qrcode.Api<PropTypes> {
7
12
  }
@@ -2,6 +2,11 @@ import { PropTypes } from '@zag-js/react';
2
2
  import { Optional } from '../../types';
3
3
  import * as qrcode from '@zag-js/qr-code';
4
4
  export interface UseQrCodeProps extends Optional<Omit<qrcode.Context, 'dir' | 'getRootNode'>, 'id'> {
5
+ /**
6
+ * The initial value of the qr code when it is first rendered.
7
+ * Use when you do not need to control the state of the qr code.
8
+ */
9
+ defaultValue?: qrcode.Context['value'];
5
10
  }
6
11
  export interface UseQrCodeReturn extends qrcode.Api<PropTypes> {
7
12
  }
@@ -4,17 +4,25 @@ 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
  import { useLocaleContext } from '../../providers/locale/use-locale-context.js';
7
+ import { useEvent } from '../../utils/use-event.js';
7
8
 
8
9
  const useQrCode = (props = {}) => {
9
10
  const { getRootNode } = useEnvironmentContext();
10
11
  const { dir } = useLocaleContext();
11
- const context = {
12
+ const initialContext = {
12
13
  id: useId(),
13
14
  dir,
15
+ value: props.defaultValue,
14
16
  getRootNode,
17
+ onValueChange: useEvent(props.onValueChange, { sync: true }),
15
18
  ...props
16
19
  };
17
- const [state, send] = useMachine(qrcode.machine(context), { context });
20
+ const context = {
21
+ ...initialContext,
22
+ value: props.value,
23
+ onValueChange: useEvent(props.onValueChange, { sync: true })
24
+ };
25
+ const [state, send] = useMachine(qrcode.machine(initialContext), { context });
18
26
  return qrcode.connect(state, send, normalizeProps);
19
27
  };
20
28
 
@@ -1,3 +1,3 @@
1
1
  import { Anatomy, AnatomyPart } from '@zag-js/anatomy';
2
- export declare const segmentGroupAnatomy: Anatomy<"label" | "root" | "item" | "indicator" | "itemText" | "itemControl">;
3
- export declare const parts: Record<"label" | "root" | "item" | "indicator" | "itemText" | "itemControl", AnatomyPart>;
2
+ export declare const segmentGroupAnatomy: Anatomy<"label" | "root" | "indicator" | "item" | "itemText" | "itemControl">;
3
+ export declare const parts: Record<"label" | "root" | "indicator" | "item" | "itemText" | "itemControl", AnatomyPart>;
@@ -1,3 +1,3 @@
1
1
  import { Anatomy, AnatomyPart } from '@zag-js/anatomy';
2
- export declare const segmentGroupAnatomy: Anatomy<"label" | "root" | "item" | "indicator" | "itemText" | "itemControl">;
3
- export declare const parts: Record<"label" | "root" | "item" | "indicator" | "itemText" | "itemControl", AnatomyPart>;
2
+ export declare const segmentGroupAnatomy: Anatomy<"label" | "root" | "indicator" | "item" | "itemText" | "itemControl">;
3
+ export declare const parts: Record<"label" | "root" | "indicator" | "item" | "itemText" | "itemControl", AnatomyPart>;
@@ -9,6 +9,7 @@ const react = require('react');
9
9
  const composeRefs = require('../../utils/compose-refs.cjs');
10
10
  const createSplitProps = require('../../utils/create-split-props.cjs');
11
11
  const renderStrategy = require('../../utils/render-strategy.cjs');
12
+ const useDebounce = require('../../utils/use-debounce.cjs');
12
13
  const factory = require('../factory.cjs');
13
14
  const usePresence = require('../presence/use-presence.cjs');
14
15
  const usePresenceContext = require('../presence/use-presence-context.cjs');
@@ -20,7 +21,7 @@ const TabContent = react.forwardRef((props, ref) => {
20
21
  const renderStrategyProps = renderStrategy.useRenderStrategyPropsContext();
21
22
  const presence = usePresence.usePresence({
22
23
  ...renderStrategyProps,
23
- present: tabs.value === props.value,
24
+ present: useDebounce.useDebounce(tabs.value === props.value, 0),
24
25
  immediate: true
25
26
  });
26
27
  const mergedProps = react$1.mergeProps(
@@ -5,6 +5,7 @@ import { forwardRef } from 'react';
5
5
  import { composeRefs } from '../../utils/compose-refs.js';
6
6
  import { createSplitProps } from '../../utils/create-split-props.js';
7
7
  import { useRenderStrategyPropsContext } from '../../utils/render-strategy.js';
8
+ import { useDebounce } from '../../utils/use-debounce.js';
8
9
  import { ark } from '../factory.js';
9
10
  import { usePresence } from '../presence/use-presence.js';
10
11
  import { PresenceProvider } from '../presence/use-presence-context.js';
@@ -16,7 +17,7 @@ const TabContent = forwardRef((props, ref) => {
16
17
  const renderStrategyProps = useRenderStrategyPropsContext();
17
18
  const presence = usePresence({
18
19
  ...renderStrategyProps,
19
- present: tabs.value === props.value,
20
+ present: useDebounce(tabs.value === props.value, 0),
20
21
  immediate: true
21
22
  });
22
23
  const mergedProps = mergeProps(
@@ -22,6 +22,7 @@ const TabsRoot = react.forwardRef((props, ref) => {
22
22
  "id",
23
23
  "ids",
24
24
  "loopFocus",
25
+ "navigate",
25
26
  "onFocusChange",
26
27
  "onValueChange",
27
28
  "orientation",
@@ -18,6 +18,7 @@ const TabsRoot = forwardRef((props, ref) => {
18
18
  "id",
19
19
  "ids",
20
20
  "loopFocus",
21
+ "navigate",
21
22
  "onFocusChange",
22
23
  "onValueChange",
23
24
  "orientation",
@@ -3,10 +3,10 @@
3
3
  Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
4
4
 
5
5
  const timerActionTrigger = require('./timer-action-trigger.cjs');
6
+ const timerArea = require('./timer-area.cjs');
6
7
  const timerContext = require('./timer-context.cjs');
7
- const timerItem = require('./timer-item.cjs');
8
8
  const timerControl = require('./timer-control.cjs');
9
- const timerArea = require('./timer-area.cjs');
9
+ const timerItem = require('./timer-item.cjs');
10
10
  const timerRoot = require('./timer-root.cjs');
11
11
  const timerRootProvider = require('./timer-root-provider.cjs');
12
12
  const timerSeparator = require('./timer-separator.cjs');
@@ -18,10 +18,10 @@ const timer = require('@zag-js/timer');
18
18
 
19
19
 
20
20
  exports.TimerActionTrigger = timerActionTrigger.TimerActionTrigger;
21
+ exports.TimerArea = timerArea.TimerArea;
21
22
  exports.TimerContext = timerContext.TimerContext;
22
- exports.TimerItem = timerItem.TimerItem;
23
23
  exports.TimerControl = timerControl.TimerControl;
24
- exports.TimerArea = timerArea.TimerArea;
24
+ exports.TimerItem = timerItem.TimerItem;
25
25
  exports.TimerRoot = timerRoot.TimerRoot;
26
26
  exports.TimerRootProvider = timerRootProvider.TimerRootProvider;
27
27
  exports.TimerSeparator = timerSeparator.TimerSeparator;
@@ -1,8 +1,8 @@
1
1
  export { TimerActionTrigger, type TimerActionTriggerBaseProps, type TimerActionTriggerProps, } from './timer-action-trigger';
2
+ export { TimerArea, type TimerAreaBaseProps, type TimerAreaProps } from './timer-area';
2
3
  export { TimerContext, type TimerContextProps } from './timer-context';
3
- export { TimerItem, type TimerItemBaseProps, type TimerItemProps } from './timer-item';
4
4
  export { TimerControl, type TimerControlBaseProps, type TimerControlProps } from './timer-control';
5
- export { TimerArea, type TimerAreaBaseProps, type TimerAreaProps } from './timer-area';
5
+ export { TimerItem, type TimerItemBaseProps, type TimerItemProps } from './timer-item';
6
6
  export { TimerRoot, type TimerRootBaseProps, type TimerRootProps } from './timer-root';
7
7
  export { TimerRootProvider, type TimerRootProviderBaseProps, type TimerRootProviderProps, } from './timer-root-provider';
8
8
  export { TimerSeparator, type TimerSeparatorBaseProps, type TimerSeparatorProps, } from './timer-separator';
@@ -1,8 +1,8 @@
1
1
  export { TimerActionTrigger, type TimerActionTriggerBaseProps, type TimerActionTriggerProps, } from './timer-action-trigger';
2
+ export { TimerArea, type TimerAreaBaseProps, type TimerAreaProps } from './timer-area';
2
3
  export { TimerContext, type TimerContextProps } from './timer-context';
3
- export { TimerItem, type TimerItemBaseProps, type TimerItemProps } from './timer-item';
4
4
  export { TimerControl, type TimerControlBaseProps, type TimerControlProps } from './timer-control';
5
- export { TimerArea, type TimerAreaBaseProps, type TimerAreaProps } from './timer-area';
5
+ export { TimerItem, type TimerItemBaseProps, type TimerItemProps } from './timer-item';
6
6
  export { TimerRoot, type TimerRootBaseProps, type TimerRootProps } from './timer-root';
7
7
  export { TimerRootProvider, type TimerRootProviderBaseProps, type TimerRootProviderProps, } from './timer-root-provider';
8
8
  export { TimerSeparator, type TimerSeparatorBaseProps, type TimerSeparatorProps, } from './timer-separator';
@@ -1,8 +1,8 @@
1
1
  export { TimerActionTrigger } from './timer-action-trigger.js';
2
+ export { TimerArea } from './timer-area.js';
2
3
  export { TimerContext } from './timer-context.js';
3
- export { TimerItem } from './timer-item.js';
4
4
  export { TimerControl } from './timer-control.js';
5
- export { TimerArea } from './timer-area.js';
5
+ export { TimerItem } from './timer-item.js';
6
6
  export { TimerRoot } from './timer-root.js';
7
7
  export { TimerRootProvider } from './timer-root-provider.js';
8
8
  export { TimerSeparator } from './timer-separator.js';
@@ -1,3 +1,4 @@
1
+ import { JSX } from 'react';
1
2
  import { RenderStrategyProps } from '../../utils/render-strategy';
2
3
  import { TreeNode } from '../collection';
3
4
  import { HTMLProps, PolymorphicProps } from '../factory';
@@ -1,3 +1,4 @@
1
+ import { JSX } from 'react';
1
2
  import { RenderStrategyProps } from '../../utils/render-strategy';
2
3
  import { TreeNode } from '../collection';
3
4
  import { HTMLProps, PolymorphicProps } from '../factory';
@@ -1,3 +1,4 @@
1
+ import { JSX } from 'react';
1
2
  import { RenderStrategyProps } from '../../utils/render-strategy';
2
3
  import { TreeNode } from '../collection';
3
4
  import { HTMLProps, PolymorphicProps } from '../factory';
@@ -1,3 +1,4 @@
1
+ import { JSX } from 'react';
1
2
  import { RenderStrategyProps } from '../../utils/render-strategy';
2
3
  import { TreeNode } from '../collection';
3
4
  import { HTMLProps, PolymorphicProps } from '../factory';
package/dist/index.cjs CHANGED
@@ -22,6 +22,7 @@ const avatarRootProvider = require('./components/avatar/avatar-root-provider.cjs
22
22
  const useAvatar = require('./components/avatar/use-avatar.cjs');
23
23
  const useAvatarContext = require('./components/avatar/use-avatar-context.cjs');
24
24
  const avatar$1 = require('./components/avatar/avatar.cjs');
25
+ const carouselAutoplayTrigger = require('./components/carousel/carousel-autoplay-trigger.cjs');
25
26
  const carouselContext = require('./components/carousel/carousel-context.cjs');
26
27
  const carouselControl = require('./components/carousel/carousel-control.cjs');
27
28
  const carouselIndicator = require('./components/carousel/carousel-indicator.cjs');
@@ -32,11 +33,9 @@ const carouselNextTrigger = require('./components/carousel/carousel-next-trigger
32
33
  const carouselPrevTrigger = require('./components/carousel/carousel-prev-trigger.cjs');
33
34
  const carouselRoot = require('./components/carousel/carousel-root.cjs');
34
35
  const carouselRootProvider = require('./components/carousel/carousel-root-provider.cjs');
35
- const carouselViewport = require('./components/carousel/carousel-viewport.cjs');
36
- const carousel_anatomy = require('./components/carousel/carousel.anatomy.cjs');
37
36
  const useCarousel = require('./components/carousel/use-carousel.cjs');
38
37
  const useCarouselContext = require('./components/carousel/use-carousel-context.cjs');
39
- const carousel = require('./components/carousel/carousel.cjs');
38
+ const carousel$1 = require('./components/carousel/carousel.cjs');
40
39
  const checkboxContext = require('./components/checkbox/checkbox-context.cjs');
41
40
  const checkboxControl = require('./components/checkbox/checkbox-control.cjs');
42
41
  const checkboxGroup = require('./components/checkbox/checkbox-group.cjs');
@@ -60,6 +59,7 @@ const clipboardLabel = require('./components/clipboard/clipboard-label.cjs');
60
59
  const clipboardRoot = require('./components/clipboard/clipboard-root.cjs');
61
60
  const clipboardRootProvider = require('./components/clipboard/clipboard-root-provider.cjs');
62
61
  const clipboardTrigger = require('./components/clipboard/clipboard-trigger.cjs');
62
+ const clipboardValueText = require('./components/clipboard/clipboard-value-text.cjs');
63
63
  const useClipboard = require('./components/clipboard/use-clipboard.cjs');
64
64
  const useClipboardContext = require('./components/clipboard/use-clipboard-context.cjs');
65
65
  const clipboard$1 = require('./components/clipboard/clipboard.cjs');
@@ -337,6 +337,7 @@ const useProgress = require('./components/progress/use-progress.cjs');
337
337
  const useProgressContext = require('./components/progress/use-progress-context.cjs');
338
338
  const progress$1 = require('./components/progress/progress.cjs');
339
339
  const qrCodeContext = require('./components/qr-code/qr-code-context.cjs');
340
+ const qrCodeDownloadTrigger = require('./components/qr-code/qr-code-download-trigger.cjs');
340
341
  const qrCodeFrame = require('./components/qr-code/qr-code-frame.cjs');
341
342
  const qrCodeOverlay = require('./components/qr-code/qr-code-overlay.cjs');
342
343
  const qrCodePattern = require('./components/qr-code/qr-code-pattern.cjs');
@@ -519,10 +520,10 @@ const useTimePicker = require('./components/time-picker/use-time-picker.cjs');
519
520
  const useTimePickerContext = require('./components/time-picker/use-time-picker-context.cjs');
520
521
  const timePicker$1 = require('./components/time-picker/time-picker.cjs');
521
522
  const timerActionTrigger = require('./components/timer/timer-action-trigger.cjs');
523
+ const timerArea = require('./components/timer/timer-area.cjs');
522
524
  const timerContext = require('./components/timer/timer-context.cjs');
523
- const timerItem = require('./components/timer/timer-item.cjs');
524
525
  const timerControl = require('./components/timer/timer-control.cjs');
525
- const timerArea = require('./components/timer/timer-area.cjs');
526
+ const timerItem = require('./components/timer/timer-item.cjs');
526
527
  const timerRoot = require('./components/timer/timer-root.cjs');
527
528
  const timerRootProvider = require('./components/timer/timer-root-provider.cjs');
528
529
  const timerSeparator = require('./components/timer/timer-separator.cjs');
@@ -589,6 +590,7 @@ const localeProvider = require('./providers/locale/locale-provider.cjs');
589
590
  const useLocaleContext = require('./providers/locale/use-locale-context.cjs');
590
591
  const accordion = require('@zag-js/accordion');
591
592
  const avatar = require('@zag-js/avatar');
593
+ const carousel = require('@zag-js/carousel');
592
594
  const clipboard = require('@zag-js/clipboard');
593
595
  const collapsible = require('@zag-js/collapsible');
594
596
  const combobox = require('@zag-js/combobox');
@@ -642,6 +644,7 @@ exports.AvatarRootProvider = avatarRootProvider.AvatarRootProvider;
642
644
  exports.useAvatar = useAvatar.useAvatar;
643
645
  exports.useAvatarContext = useAvatarContext.useAvatarContext;
644
646
  exports.Avatar = avatar$1;
647
+ exports.CarouselAutoplayTrigger = carouselAutoplayTrigger.CarouselAutoplayTrigger;
645
648
  exports.CarouselContext = carouselContext.CarouselContext;
646
649
  exports.CarouselControl = carouselControl.CarouselControl;
647
650
  exports.CarouselIndicator = carouselIndicator.CarouselIndicator;
@@ -652,11 +655,9 @@ exports.CarouselNextTrigger = carouselNextTrigger.CarouselNextTrigger;
652
655
  exports.CarouselPrevTrigger = carouselPrevTrigger.CarouselPrevTrigger;
653
656
  exports.CarouselRoot = carouselRoot.CarouselRoot;
654
657
  exports.CarouselRootProvider = carouselRootProvider.CarouselRootProvider;
655
- exports.CarouselViewport = carouselViewport.CarouselViewport;
656
- exports.carouselAnatomy = carousel_anatomy.carouselAnatomy;
657
658
  exports.useCarousel = useCarousel.useCarousel;
658
659
  exports.useCarouselContext = useCarouselContext.useCarouselContext;
659
- exports.Carousel = carousel;
660
+ exports.Carousel = carousel$1;
660
661
  exports.CheckboxContext = checkboxContext.CheckboxContext;
661
662
  exports.CheckboxControl = checkboxControl.CheckboxControl;
662
663
  exports.CheckboxGroup = checkboxGroup.CheckboxGroup;
@@ -680,6 +681,7 @@ exports.ClipboardLabel = clipboardLabel.ClipboardLabel;
680
681
  exports.ClipboardRoot = clipboardRoot.ClipboardRoot;
681
682
  exports.ClipboardRootProvider = clipboardRootProvider.ClipboardRootProvider;
682
683
  exports.ClipboardTrigger = clipboardTrigger.ClipboardTrigger;
684
+ exports.ClipboardValueText = clipboardValueText.ClipboardValueText;
683
685
  exports.useClipboard = useClipboard.useClipboard;
684
686
  exports.useClipboardContext = useClipboardContext.useClipboardContext;
685
687
  exports.Clipboard = clipboard$1;
@@ -967,6 +969,7 @@ exports.useProgress = useProgress.useProgress;
967
969
  exports.useProgressContext = useProgressContext.useProgressContext;
968
970
  exports.Progress = progress$1;
969
971
  exports.QrCodeContext = qrCodeContext.QrCodeContext;
972
+ exports.QrCodeDownloadTrigger = qrCodeDownloadTrigger.QrCodeDownloadTrigger;
970
973
  exports.QrCodeFrame = qrCodeFrame.QrCodeFrame;
971
974
  exports.QrCodeOverlay = qrCodeOverlay.QrCodeOverlay;
972
975
  exports.QrCodePattern = qrCodePattern.QrCodePattern;
@@ -1152,10 +1155,10 @@ exports.useTimePicker = useTimePicker.useTimePicker;
1152
1155
  exports.useTimePickerContext = useTimePickerContext.useTimePickerContext;
1153
1156
  exports.TimePicker = timePicker$1;
1154
1157
  exports.TimerActionTrigger = timerActionTrigger.TimerActionTrigger;
1158
+ exports.TimerArea = timerArea.TimerArea;
1155
1159
  exports.TimerContext = timerContext.TimerContext;
1156
- exports.TimerItem = timerItem.TimerItem;
1157
1160
  exports.TimerControl = timerControl.TimerControl;
1158
- exports.TimerArea = timerArea.TimerArea;
1161
+ exports.TimerItem = timerItem.TimerItem;
1159
1162
  exports.TimerRoot = timerRoot.TimerRoot;
1160
1163
  exports.TimerRootProvider = timerRootProvider.TimerRootProvider;
1161
1164
  exports.TimerSeparator = timerSeparator.TimerSeparator;
@@ -1228,6 +1231,10 @@ Object.defineProperty(exports, "avatarAnatomy", {
1228
1231
  enumerable: true,
1229
1232
  get: () => avatar.anatomy
1230
1233
  });
1234
+ Object.defineProperty(exports, "carouselAnatomy", {
1235
+ enumerable: true,
1236
+ get: () => carousel.anatomy
1237
+ });
1231
1238
  Object.defineProperty(exports, "clipboardAnatomy", {
1232
1239
  enumerable: true,
1233
1240
  get: () => clipboard.anatomy
package/dist/index.js CHANGED
@@ -20,6 +20,7 @@ export { useAvatar } from './components/avatar/use-avatar.js';
20
20
  export { useAvatarContext } from './components/avatar/use-avatar-context.js';
21
21
  import * as avatar from './components/avatar/avatar.js';
22
22
  export { avatar as Avatar };
23
+ export { CarouselAutoplayTrigger } from './components/carousel/carousel-autoplay-trigger.js';
23
24
  export { CarouselContext } from './components/carousel/carousel-context.js';
24
25
  export { CarouselControl } from './components/carousel/carousel-control.js';
25
26
  export { CarouselIndicator } from './components/carousel/carousel-indicator.js';
@@ -30,8 +31,6 @@ export { CarouselNextTrigger } from './components/carousel/carousel-next-trigger
30
31
  export { CarouselPrevTrigger } from './components/carousel/carousel-prev-trigger.js';
31
32
  export { CarouselRoot } from './components/carousel/carousel-root.js';
32
33
  export { CarouselRootProvider } from './components/carousel/carousel-root-provider.js';
33
- export { CarouselViewport } from './components/carousel/carousel-viewport.js';
34
- export { carouselAnatomy } from './components/carousel/carousel.anatomy.js';
35
34
  export { useCarousel } from './components/carousel/use-carousel.js';
36
35
  export { useCarouselContext } from './components/carousel/use-carousel-context.js';
37
36
  import * as carousel from './components/carousel/carousel.js';
@@ -60,6 +59,7 @@ export { ClipboardLabel } from './components/clipboard/clipboard-label.js';
60
59
  export { ClipboardRoot } from './components/clipboard/clipboard-root.js';
61
60
  export { ClipboardRootProvider } from './components/clipboard/clipboard-root-provider.js';
62
61
  export { ClipboardTrigger } from './components/clipboard/clipboard-trigger.js';
62
+ export { ClipboardValueText } from './components/clipboard/clipboard-value-text.js';
63
63
  export { useClipboard } from './components/clipboard/use-clipboard.js';
64
64
  export { useClipboardContext } from './components/clipboard/use-clipboard-context.js';
65
65
  import * as clipboard from './components/clipboard/clipboard.js';
@@ -355,6 +355,7 @@ export { useProgressContext } from './components/progress/use-progress-context.j
355
355
  import * as progress from './components/progress/progress.js';
356
356
  export { progress as Progress };
357
357
  export { QrCodeContext } from './components/qr-code/qr-code-context.js';
358
+ export { QrCodeDownloadTrigger } from './components/qr-code/qr-code-download-trigger.js';
358
359
  export { QrCodeFrame } from './components/qr-code/qr-code-frame.js';
359
360
  export { QrCodeOverlay } from './components/qr-code/qr-code-overlay.js';
360
361
  export { QrCodePattern } from './components/qr-code/qr-code-pattern.js';
@@ -550,10 +551,10 @@ export { useTimePickerContext } from './components/time-picker/use-time-picker-c
550
551
  import * as timePicker from './components/time-picker/time-picker.js';
551
552
  export { timePicker as TimePicker };
552
553
  export { TimerActionTrigger } from './components/timer/timer-action-trigger.js';
554
+ export { TimerArea } from './components/timer/timer-area.js';
553
555
  export { TimerContext } from './components/timer/timer-context.js';
554
- export { TimerItem } from './components/timer/timer-item.js';
555
556
  export { TimerControl } from './components/timer/timer-control.js';
556
- export { TimerArea } from './components/timer/timer-area.js';
557
+ export { TimerItem } from './components/timer/timer-item.js';
557
558
  export { TimerRoot } from './components/timer/timer-root.js';
558
559
  export { TimerRootProvider } from './components/timer/timer-root-provider.js';
559
560
  export { TimerSeparator } from './components/timer/timer-separator.js';
@@ -626,6 +627,7 @@ export { LocaleProvider } from './providers/locale/locale-provider.js';
626
627
  export { useLocaleContext } from './providers/locale/use-locale-context.js';
627
628
  export { anatomy as accordionAnatomy } from '@zag-js/accordion';
628
629
  export { anatomy as avatarAnatomy } from '@zag-js/avatar';
630
+ export { anatomy as carouselAnatomy } from '@zag-js/carousel';
629
631
  export { anatomy as clipboardAnatomy } from '@zag-js/clipboard';
630
632
  export { anatomy as collapsibleAnatomy } from '@zag-js/collapsible';
631
633
  export { anatomy as comboboxAnatomy } from '@zag-js/combobox';