@ark-ui/react 0.0.0-rc-20230126030105 → 0.0.0-rc-20230128111337

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 (47) hide show
  1. package/dist/accordion/use-accordion.cjs +3 -0
  2. package/dist/accordion/use-accordion.mjs +3 -0
  3. package/dist/checkbox/use-checkbox.cjs +3 -0
  4. package/dist/checkbox/use-checkbox.mjs +3 -0
  5. package/dist/dialog/use-dialog.cjs +3 -0
  6. package/dist/dialog/use-dialog.mjs +3 -0
  7. package/dist/editable/use-editable.cjs +3 -0
  8. package/dist/editable/use-editable.mjs +3 -0
  9. package/dist/environment/environment-context.cjs +15 -0
  10. package/dist/environment/environment-context.d.ts +4 -0
  11. package/dist/environment/environment-context.mjs +10 -0
  12. package/dist/environment/environment.d.ts +6 -0
  13. package/dist/environment/index.d.ts +2 -0
  14. package/dist/hover-card/use-hover-card.cjs +3 -0
  15. package/dist/hover-card/use-hover-card.mjs +3 -0
  16. package/dist/menu/use-menu.cjs +3 -0
  17. package/dist/menu/use-menu.mjs +3 -0
  18. package/dist/number-input/use-number-input.cjs +3 -0
  19. package/dist/number-input/use-number-input.mjs +3 -0
  20. package/dist/pagination/use-pagination.cjs +3 -0
  21. package/dist/pagination/use-pagination.mjs +3 -0
  22. package/dist/pin-input/use-pin-input.cjs +3 -0
  23. package/dist/pin-input/use-pin-input.mjs +3 -0
  24. package/dist/popover/use-popover.cjs +3 -0
  25. package/dist/popover/use-popover.d.ts +5 -1
  26. package/dist/popover/use-popover.mjs +3 -0
  27. package/dist/pressable/use-pressable.cjs +3 -0
  28. package/dist/pressable/use-pressable.mjs +3 -0
  29. package/dist/radio-group/use-radio-group.cjs +3 -0
  30. package/dist/radio-group/use-radio-group.mjs +3 -0
  31. package/dist/range-slider/use-range-slider.cjs +3 -0
  32. package/dist/range-slider/use-range-slider.mjs +3 -0
  33. package/dist/rating-group/use-rating-group.cjs +3 -0
  34. package/dist/rating-group/use-rating-group.mjs +3 -0
  35. package/dist/select/use-select.cjs +3 -0
  36. package/dist/select/use-select.mjs +3 -0
  37. package/dist/slider/use-slider.cjs +8 -1
  38. package/dist/slider/use-slider.mjs +8 -1
  39. package/dist/tabs/use-tabs.cjs +8 -1
  40. package/dist/tabs/use-tabs.mjs +8 -1
  41. package/dist/tags-input/use-tags-input.cjs +3 -0
  42. package/dist/tags-input/use-tags-input.mjs +3 -0
  43. package/dist/toast/toast-provider.cjs +4 -1
  44. package/dist/toast/toast-provider.mjs +4 -1
  45. package/dist/tooltip/use-tooltip.cjs +3 -0
  46. package/dist/tooltip/use-tooltip.mjs +3 -0
  47. package/package.json +4 -2
@@ -5,6 +5,7 @@ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
5
5
  const accordion = require('@zag-js/accordion');
6
6
  const react = require('@zag-js/react');
7
7
  const React = require('react');
8
+ const environmentContext = require('../environment/environment-context.cjs');
8
9
 
9
10
  function _interopNamespaceDefault(e) {
10
11
  const n = Object.create(null, { [Symbol.toStringTag]: { value: 'Module' } });
@@ -26,8 +27,10 @@ function _interopNamespaceDefault(e) {
26
27
  const accordion__namespace = /*#__PURE__*/_interopNamespaceDefault(accordion);
27
28
 
28
29
  const useAccordion = (props) => {
30
+ const getRootNode = environmentContext.useEnvironmentContext();
29
31
  const initialContext = {
30
32
  id: React.useId(),
33
+ getRootNode,
31
34
  ...props,
32
35
  value: props.defaultValue
33
36
  };
@@ -1,10 +1,13 @@
1
1
  import * as accordion from '@zag-js/accordion';
2
2
  import { useMachine, normalizeProps } from '@zag-js/react';
3
3
  import { useId } from 'react';
4
+ import { useEnvironmentContext } from '../environment/environment-context.mjs';
4
5
 
5
6
  const useAccordion = (props) => {
7
+ const getRootNode = useEnvironmentContext();
6
8
  const initialContext = {
7
9
  id: useId(),
10
+ getRootNode,
8
11
  ...props,
9
12
  value: props.defaultValue
10
13
  };
@@ -5,6 +5,7 @@ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
5
5
  const checkbox = require('@zag-js/checkbox');
6
6
  const react = require('@zag-js/react');
7
7
  const React = require('react');
8
+ const environmentContext = require('../environment/environment-context.cjs');
8
9
 
9
10
  function _interopNamespaceDefault(e) {
10
11
  const n = Object.create(null, { [Symbol.toStringTag]: { value: 'Module' } });
@@ -26,8 +27,10 @@ function _interopNamespaceDefault(e) {
26
27
  const checkbox__namespace = /*#__PURE__*/_interopNamespaceDefault(checkbox);
27
28
 
28
29
  const useCheckbox = (props) => {
30
+ const getRootNode = environmentContext.useEnvironmentContext();
29
31
  const context = {
30
32
  id: React.useId(),
33
+ getRootNode,
31
34
  ...props
32
35
  };
33
36
  const [state, send] = react.useMachine(checkbox__namespace.machine(context), { context });
@@ -1,10 +1,13 @@
1
1
  import * as checkbox from '@zag-js/checkbox';
2
2
  import { useMachine, normalizeProps } from '@zag-js/react';
3
3
  import { useId, useEffect } from 'react';
4
+ import { useEnvironmentContext } from '../environment/environment-context.mjs';
4
5
 
5
6
  const useCheckbox = (props) => {
7
+ const getRootNode = useEnvironmentContext();
6
8
  const context = {
7
9
  id: useId(),
10
+ getRootNode,
8
11
  ...props
9
12
  };
10
13
  const [state, send] = useMachine(checkbox.machine(context), { context });
@@ -5,6 +5,7 @@ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
5
5
  const dialog = require('@zag-js/dialog');
6
6
  const react = require('@zag-js/react');
7
7
  const React = require('react');
8
+ const environmentContext = require('../environment/environment-context.cjs');
8
9
 
9
10
  function _interopNamespaceDefault(e) {
10
11
  const n = Object.create(null, { [Symbol.toStringTag]: { value: 'Module' } });
@@ -26,8 +27,10 @@ function _interopNamespaceDefault(e) {
26
27
  const dialog__namespace = /*#__PURE__*/_interopNamespaceDefault(dialog);
27
28
 
28
29
  const useDialog = (props) => {
30
+ const getRootNode = environmentContext.useEnvironmentContext();
29
31
  const context = {
30
32
  id: React.useId(),
33
+ getRootNode,
31
34
  ...props
32
35
  };
33
36
  const [state, send] = react.useMachine(dialog__namespace.machine(context), { context });
@@ -1,10 +1,13 @@
1
1
  import * as dialog from '@zag-js/dialog';
2
2
  import { useMachine, normalizeProps } from '@zag-js/react';
3
3
  import { useId } from 'react';
4
+ import { useEnvironmentContext } from '../environment/environment-context.mjs';
4
5
 
5
6
  const useDialog = (props) => {
7
+ const getRootNode = useEnvironmentContext();
6
8
  const context = {
7
9
  id: useId(),
10
+ getRootNode,
8
11
  ...props
9
12
  };
10
13
  const [state, send] = useMachine(dialog.machine(context), { context });
@@ -5,6 +5,7 @@ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
5
5
  const editable = require('@zag-js/editable');
6
6
  const react = require('@zag-js/react');
7
7
  const React = require('react');
8
+ const environmentContext = require('../environment/environment-context.cjs');
8
9
 
9
10
  function _interopNamespaceDefault(e) {
10
11
  const n = Object.create(null, { [Symbol.toStringTag]: { value: 'Module' } });
@@ -26,8 +27,10 @@ function _interopNamespaceDefault(e) {
26
27
  const editable__namespace = /*#__PURE__*/_interopNamespaceDefault(editable);
27
28
 
28
29
  const useEditable = (props) => {
30
+ const getRootNode = environmentContext.useEnvironmentContext();
29
31
  const initialContext = {
30
32
  id: React.useId(),
33
+ getRootNode,
31
34
  ...props,
32
35
  value: props.defaultValue
33
36
  };
@@ -1,10 +1,13 @@
1
1
  import * as editable from '@zag-js/editable';
2
2
  import { useMachine, normalizeProps } from '@zag-js/react';
3
3
  import { useId } from 'react';
4
+ import { useEnvironmentContext } from '../environment/environment-context.mjs';
4
5
 
5
6
  const useEditable = (props) => {
7
+ const getRootNode = useEnvironmentContext();
6
8
  const initialContext = {
7
9
  id: useId(),
10
+ getRootNode,
8
11
  ...props,
9
12
  value: props.defaultValue
10
13
  };
@@ -0,0 +1,15 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
4
+
5
+ const createContext = require('../create-context.cjs');
6
+
7
+ const [EnvironmentProvider, useEnvironmentContext] = createContext.createContext({
8
+ name: "EnvironmentContext",
9
+ hookName: "useEnvironmentContext",
10
+ providerName: "<EnvironmentProvider />",
11
+ strict: false
12
+ });
13
+
14
+ exports.EnvironmentProvider = EnvironmentProvider;
15
+ exports.useEnvironmentContext = useEnvironmentContext;
@@ -0,0 +1,4 @@
1
+ import type { Provider } from 'react';
2
+ import type { CommonProperties } from '@zag-js/types';
3
+ export declare type EnvironmentContext = CommonProperties['getRootNode'];
4
+ export declare const EnvironmentProvider: Provider<(() => Node | ShadowRoot | Document) | undefined>, useEnvironmentContext: () => (() => Node | ShadowRoot | Document) | undefined;
@@ -0,0 +1,10 @@
1
+ import { createContext } from '../create-context.mjs';
2
+
3
+ const [EnvironmentProvider, useEnvironmentContext] = createContext({
4
+ name: "EnvironmentContext",
5
+ hookName: "useEnvironmentContext",
6
+ providerName: "<EnvironmentProvider />",
7
+ strict: false
8
+ });
9
+
10
+ export { EnvironmentProvider, useEnvironmentContext };
@@ -0,0 +1,6 @@
1
+ import { type ReactNode } from 'react';
2
+ export declare type EnvironmentProps = {
3
+ children?: ReactNode;
4
+ value?: ShadowRoot | Document | Node;
5
+ };
6
+ export declare const Environment: (props: EnvironmentProps) => JSX.Element;
@@ -0,0 +1,2 @@
1
+ export { Environment, type EnvironmentProps } from './environment';
2
+ export { useEnvironmentContext } from './environment-context';
@@ -5,6 +5,7 @@ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
5
5
  const hoverCard = require('@zag-js/hover-card');
6
6
  const react = require('@zag-js/react');
7
7
  const React = require('react');
8
+ const environmentContext = require('../environment/environment-context.cjs');
8
9
 
9
10
  function _interopNamespaceDefault(e) {
10
11
  const n = Object.create(null, { [Symbol.toStringTag]: { value: 'Module' } });
@@ -26,8 +27,10 @@ function _interopNamespaceDefault(e) {
26
27
  const hoverCard__namespace = /*#__PURE__*/_interopNamespaceDefault(hoverCard);
27
28
 
28
29
  const useHoverCard = (props) => {
30
+ const getRootNode = environmentContext.useEnvironmentContext();
29
31
  const context = {
30
32
  id: React.useId(),
33
+ getRootNode,
31
34
  ...props
32
35
  };
33
36
  const [state, send] = react.useMachine(hoverCard__namespace.machine(context), { context });
@@ -1,10 +1,13 @@
1
1
  import * as hoverCard from '@zag-js/hover-card';
2
2
  import { useMachine, normalizeProps } from '@zag-js/react';
3
3
  import { useId } from 'react';
4
+ import { useEnvironmentContext } from '../environment/environment-context.mjs';
4
5
 
5
6
  const useHoverCard = (props) => {
7
+ const getRootNode = useEnvironmentContext();
6
8
  const context = {
7
9
  id: useId(),
10
+ getRootNode,
8
11
  ...props
9
12
  };
10
13
  const [state, send] = useMachine(hoverCard.machine(context), { context });
@@ -5,6 +5,7 @@ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
5
5
  const menu = require('@zag-js/menu');
6
6
  const react = require('@zag-js/react');
7
7
  const React = require('react');
8
+ const environmentContext = require('../environment/environment-context.cjs');
8
9
 
9
10
  function _interopNamespaceDefault(e) {
10
11
  const n = Object.create(null, { [Symbol.toStringTag]: { value: 'Module' } });
@@ -26,8 +27,10 @@ function _interopNamespaceDefault(e) {
26
27
  const menu__namespace = /*#__PURE__*/_interopNamespaceDefault(menu);
27
28
 
28
29
  const useMenu = (props) => {
30
+ const getRootNode = environmentContext.useEnvironmentContext();
29
31
  const context = {
30
32
  id: React.useId(),
33
+ getRootNode,
31
34
  ...props
32
35
  };
33
36
  const [state, send, machine] = react.useMachine(menu__namespace.machine(context), { context });
@@ -1,10 +1,13 @@
1
1
  import * as menu from '@zag-js/menu';
2
2
  import { useMachine, normalizeProps } from '@zag-js/react';
3
3
  import { useId } from 'react';
4
+ import { useEnvironmentContext } from '../environment/environment-context.mjs';
4
5
 
5
6
  const useMenu = (props) => {
7
+ const getRootNode = useEnvironmentContext();
6
8
  const context = {
7
9
  id: useId(),
10
+ getRootNode,
8
11
  ...props
9
12
  };
10
13
  const [state, send, machine] = useMachine(menu.machine(context), { context });
@@ -5,6 +5,7 @@ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
5
5
  const numberInput = require('@zag-js/number-input');
6
6
  const react = require('@zag-js/react');
7
7
  const React = require('react');
8
+ const environmentContext = require('../environment/environment-context.cjs');
8
9
 
9
10
  function _interopNamespaceDefault(e) {
10
11
  const n = Object.create(null, { [Symbol.toStringTag]: { value: 'Module' } });
@@ -26,8 +27,10 @@ function _interopNamespaceDefault(e) {
26
27
  const numberInput__namespace = /*#__PURE__*/_interopNamespaceDefault(numberInput);
27
28
 
28
29
  const useNumberInput = (props) => {
30
+ const getRootNode = environmentContext.useEnvironmentContext();
29
31
  const initialContext = {
30
32
  id: React.useId(),
33
+ getRootNode,
31
34
  ...props,
32
35
  value: props.defaultValue
33
36
  };
@@ -1,10 +1,13 @@
1
1
  import * as numberInput from '@zag-js/number-input';
2
2
  import { useMachine, normalizeProps } from '@zag-js/react';
3
3
  import { useId } from 'react';
4
+ import { useEnvironmentContext } from '../environment/environment-context.mjs';
4
5
 
5
6
  const useNumberInput = (props) => {
7
+ const getRootNode = useEnvironmentContext();
6
8
  const initialContext = {
7
9
  id: useId(),
10
+ getRootNode,
8
11
  ...props,
9
12
  value: props.defaultValue
10
13
  };
@@ -5,6 +5,7 @@ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
5
5
  const pagination = require('@zag-js/pagination');
6
6
  const react = require('@zag-js/react');
7
7
  const React = require('react');
8
+ const environmentContext = require('../environment/environment-context.cjs');
8
9
 
9
10
  function _interopNamespaceDefault(e) {
10
11
  const n = Object.create(null, { [Symbol.toStringTag]: { value: 'Module' } });
@@ -26,8 +27,10 @@ function _interopNamespaceDefault(e) {
26
27
  const pagination__namespace = /*#__PURE__*/_interopNamespaceDefault(pagination);
27
28
 
28
29
  const usePagination = (props) => {
30
+ const getRootNode = environmentContext.useEnvironmentContext();
29
31
  const context = {
30
32
  id: React.useId(),
33
+ getRootNode,
31
34
  ...props
32
35
  };
33
36
  const [state, send] = react.useMachine(pagination__namespace.machine(context), { context });
@@ -1,10 +1,13 @@
1
1
  import * as pagination from '@zag-js/pagination';
2
2
  import { useMachine, normalizeProps } from '@zag-js/react';
3
3
  import { useId } from 'react';
4
+ import { useEnvironmentContext } from '../environment/environment-context.mjs';
4
5
 
5
6
  const usePagination = (props) => {
7
+ const getRootNode = useEnvironmentContext();
6
8
  const context = {
7
9
  id: useId(),
10
+ getRootNode,
8
11
  ...props
9
12
  };
10
13
  const [state, send] = useMachine(pagination.machine(context), { context });
@@ -5,6 +5,7 @@ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
5
5
  const pinInput = require('@zag-js/pin-input');
6
6
  const react = require('@zag-js/react');
7
7
  const React = require('react');
8
+ const environmentContext = require('../environment/environment-context.cjs');
8
9
 
9
10
  function _interopNamespaceDefault(e) {
10
11
  const n = Object.create(null, { [Symbol.toStringTag]: { value: 'Module' } });
@@ -26,8 +27,10 @@ function _interopNamespaceDefault(e) {
26
27
  const pinInput__namespace = /*#__PURE__*/_interopNamespaceDefault(pinInput);
27
28
 
28
29
  const usePinInput = (props) => {
30
+ const getRootNode = environmentContext.useEnvironmentContext();
29
31
  const initialContext = {
30
32
  id: React.useId(),
33
+ getRootNode,
31
34
  ...props,
32
35
  value: props.defaultValue ?? []
33
36
  };
@@ -1,10 +1,13 @@
1
1
  import * as pinInput from '@zag-js/pin-input';
2
2
  import { useMachine, normalizeProps } from '@zag-js/react';
3
3
  import { useId } from 'react';
4
+ import { useEnvironmentContext } from '../environment/environment-context.mjs';
4
5
 
5
6
  const usePinInput = (props) => {
7
+ const getRootNode = useEnvironmentContext();
6
8
  const initialContext = {
7
9
  id: useId(),
10
+ getRootNode,
8
11
  ...props,
9
12
  value: props.defaultValue ?? []
10
13
  };
@@ -6,6 +6,7 @@ const popover = require('@zag-js/popover');
6
6
  const react = require('@zag-js/react');
7
7
  const React = require('react');
8
8
  const useLatestRef = require('../use-latest-ref.cjs');
9
+ const environmentContext = require('../environment/environment-context.cjs');
9
10
 
10
11
  function _interopNamespaceDefault(e) {
11
12
  const n = Object.create(null, { [Symbol.toStringTag]: { value: 'Module' } });
@@ -28,8 +29,10 @@ const popover__namespace = /*#__PURE__*/_interopNamespaceDefault(popover);
28
29
 
29
30
  const usePopover = (props) => {
30
31
  const { isOpen, ...restProps } = props;
32
+ const getRootNode = environmentContext.useEnvironmentContext();
31
33
  const context = {
32
34
  id: React.useId(),
35
+ getRootNode,
33
36
  ...restProps
34
37
  };
35
38
  const [state, send] = react.useMachine(popover__namespace.machine(context), { context });
@@ -12,7 +12,11 @@ export declare type UsePopoverProps = Optional<popover.Context, 'id'> & {
12
12
  export declare const usePopover: (props: UsePopoverProps) => {
13
13
  portalled: boolean;
14
14
  isOpen: boolean;
15
- open(): void;
15
+ open(): void; /**
16
+ * Control the open state of the popover.
17
+ *
18
+ * @default false
19
+ */
16
20
  close(): void;
17
21
  arrowProps: HTMLAttributes<HTMLElement>;
18
22
  arrowTipProps: HTMLAttributes<HTMLElement>;
@@ -2,11 +2,14 @@ import * as popover from '@zag-js/popover';
2
2
  import { useMachine, normalizeProps } from '@zag-js/react';
3
3
  import { useId, useEffect } from 'react';
4
4
  import { useLatestRef } from '../use-latest-ref.mjs';
5
+ import { useEnvironmentContext } from '../environment/environment-context.mjs';
5
6
 
6
7
  const usePopover = (props) => {
7
8
  const { isOpen, ...restProps } = props;
9
+ const getRootNode = useEnvironmentContext();
8
10
  const context = {
9
11
  id: useId(),
12
+ getRootNode,
10
13
  ...restProps
11
14
  };
12
15
  const [state, send] = useMachine(popover.machine(context), { context });
@@ -5,6 +5,7 @@ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
5
5
  const pressable = require('@zag-js/pressable');
6
6
  const react = require('@zag-js/react');
7
7
  const React = require('react');
8
+ const environmentContext = require('../environment/environment-context.cjs');
8
9
 
9
10
  function _interopNamespaceDefault(e) {
10
11
  const n = Object.create(null, { [Symbol.toStringTag]: { value: 'Module' } });
@@ -26,8 +27,10 @@ function _interopNamespaceDefault(e) {
26
27
  const pressable__namespace = /*#__PURE__*/_interopNamespaceDefault(pressable);
27
28
 
28
29
  const usePressable = (props) => {
30
+ const getRootNode = environmentContext.useEnvironmentContext();
29
31
  const context = {
30
32
  id: React.useId(),
33
+ getRootNode,
31
34
  ...props
32
35
  };
33
36
  const [state, send] = react.useMachine(pressable__namespace.machine(context), { context });
@@ -1,10 +1,13 @@
1
1
  import * as pressable from '@zag-js/pressable';
2
2
  import { useMachine, normalizeProps } from '@zag-js/react';
3
3
  import { useId } from 'react';
4
+ import { useEnvironmentContext } from '../environment/environment-context.mjs';
4
5
 
5
6
  const usePressable = (props) => {
7
+ const getRootNode = useEnvironmentContext();
6
8
  const context = {
7
9
  id: useId(),
10
+ getRootNode,
8
11
  ...props
9
12
  };
10
13
  const [state, send] = useMachine(pressable.machine(context), { context });
@@ -5,6 +5,7 @@ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
5
5
  const radio = require('@zag-js/radio-group');
6
6
  const react = require('@zag-js/react');
7
7
  const React = require('react');
8
+ const environmentContext = require('../environment/environment-context.cjs');
8
9
 
9
10
  function _interopNamespaceDefault(e) {
10
11
  const n = Object.create(null, { [Symbol.toStringTag]: { value: 'Module' } });
@@ -26,8 +27,10 @@ function _interopNamespaceDefault(e) {
26
27
  const radio__namespace = /*#__PURE__*/_interopNamespaceDefault(radio);
27
28
 
28
29
  const useRadioGroup = (props) => {
30
+ const getRootNode = environmentContext.useEnvironmentContext();
29
31
  const initialContext = {
30
32
  id: React.useId(),
33
+ getRootNode,
31
34
  ...props,
32
35
  value: props.defaultValue
33
36
  };
@@ -1,10 +1,13 @@
1
1
  import * as radio from '@zag-js/radio-group';
2
2
  import { useMachine, normalizeProps } from '@zag-js/react';
3
3
  import { useId } from 'react';
4
+ import { useEnvironmentContext } from '../environment/environment-context.mjs';
4
5
 
5
6
  const useRadioGroup = (props) => {
7
+ const getRootNode = useEnvironmentContext();
6
8
  const initialContext = {
7
9
  id: useId(),
10
+ getRootNode,
8
11
  ...props,
9
12
  value: props.defaultValue
10
13
  };
@@ -5,6 +5,7 @@ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
5
5
  const rangeSlider = require('@zag-js/range-slider');
6
6
  const react = require('@zag-js/react');
7
7
  const React = require('react');
8
+ const environmentContext = require('../environment/environment-context.cjs');
8
9
 
9
10
  function _interopNamespaceDefault(e) {
10
11
  const n = Object.create(null, { [Symbol.toStringTag]: { value: 'Module' } });
@@ -26,8 +27,10 @@ function _interopNamespaceDefault(e) {
26
27
  const rangeSlider__namespace = /*#__PURE__*/_interopNamespaceDefault(rangeSlider);
27
28
 
28
29
  const useRangeSlider = (props) => {
30
+ const getRootNode = environmentContext.useEnvironmentContext();
29
31
  const initialContext = {
30
32
  id: React.useId(),
33
+ getRootNode,
31
34
  ...props,
32
35
  value: props.defaultValue
33
36
  };
@@ -1,10 +1,13 @@
1
1
  import * as rangeSlider from '@zag-js/range-slider';
2
2
  import { useMachine, normalizeProps } from '@zag-js/react';
3
3
  import { useId } from 'react';
4
+ import { useEnvironmentContext } from '../environment/environment-context.mjs';
4
5
 
5
6
  const useRangeSlider = (props) => {
7
+ const getRootNode = useEnvironmentContext();
6
8
  const initialContext = {
7
9
  id: useId(),
10
+ getRootNode,
8
11
  ...props,
9
12
  value: props.defaultValue
10
13
  };
@@ -5,6 +5,7 @@ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
5
5
  const ratingGroup = require('@zag-js/rating-group');
6
6
  const react = require('@zag-js/react');
7
7
  const React = require('react');
8
+ const environmentContext = require('../environment/environment-context.cjs');
8
9
 
9
10
  function _interopNamespaceDefault(e) {
10
11
  const n = Object.create(null, { [Symbol.toStringTag]: { value: 'Module' } });
@@ -26,8 +27,10 @@ function _interopNamespaceDefault(e) {
26
27
  const ratingGroup__namespace = /*#__PURE__*/_interopNamespaceDefault(ratingGroup);
27
28
 
28
29
  const useRatingGroup = (props) => {
30
+ const getRootNode = environmentContext.useEnvironmentContext();
29
31
  const initialContext = {
30
32
  id: React.useId(),
33
+ getRootNode,
31
34
  ...props,
32
35
  value: props.defaultValue
33
36
  };
@@ -1,10 +1,13 @@
1
1
  import * as ratingGroup from '@zag-js/rating-group';
2
2
  import { useMachine, normalizeProps } from '@zag-js/react';
3
3
  import { useId } from 'react';
4
+ import { useEnvironmentContext } from '../environment/environment-context.mjs';
4
5
 
5
6
  const useRatingGroup = (props) => {
7
+ const getRootNode = useEnvironmentContext();
6
8
  const initialContext = {
7
9
  id: useId(),
10
+ getRootNode,
8
11
  ...props,
9
12
  value: props.defaultValue
10
13
  };
@@ -5,6 +5,7 @@ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
5
5
  const react = require('@zag-js/react');
6
6
  const select = require('@zag-js/select');
7
7
  const React = require('react');
8
+ const environmentContext = require('../environment/environment-context.cjs');
8
9
 
9
10
  function _interopNamespaceDefault(e) {
10
11
  const n = Object.create(null, { [Symbol.toStringTag]: { value: 'Module' } });
@@ -26,8 +27,10 @@ function _interopNamespaceDefault(e) {
26
27
  const select__namespace = /*#__PURE__*/_interopNamespaceDefault(select);
27
28
 
28
29
  const useSelect = (props) => {
30
+ const getRootNode = environmentContext.useEnvironmentContext();
29
31
  const initialContext = {
30
32
  id: React.useId(),
33
+ getRootNode,
31
34
  ...props,
32
35
  value: props.defaultValue
33
36
  };
@@ -1,10 +1,13 @@
1
1
  import { useMachine, normalizeProps } from '@zag-js/react';
2
2
  import * as select from '@zag-js/select';
3
3
  import { useId } from 'react';
4
+ import { useEnvironmentContext } from '../environment/environment-context.mjs';
4
5
 
5
6
  const useSelect = (props) => {
7
+ const getRootNode = useEnvironmentContext();
6
8
  const initialContext = {
7
9
  id: useId(),
10
+ getRootNode,
8
11
  ...props,
9
12
  value: props.defaultValue
10
13
  };
@@ -6,6 +6,7 @@ const react = require('@zag-js/react');
6
6
  const slider = require('@zag-js/slider');
7
7
  const React = require('react');
8
8
  const reactDom = require('react-dom');
9
+ const environmentContext = require('../environment/environment-context.cjs');
9
10
 
10
11
  function _interopNamespaceDefault(e) {
11
12
  const n = Object.create(null, { [Symbol.toStringTag]: { value: 'Module' } });
@@ -27,7 +28,13 @@ function _interopNamespaceDefault(e) {
27
28
  const slider__namespace = /*#__PURE__*/_interopNamespaceDefault(slider);
28
29
 
29
30
  const useSlider = (props) => {
30
- const initialContext = { id: React.useId(), ...props, value: props.defaultValue };
31
+ const getRootNode = environmentContext.useEnvironmentContext();
32
+ const initialContext = {
33
+ id: React.useId(),
34
+ getRootNode,
35
+ ...props,
36
+ value: props.defaultValue
37
+ };
31
38
  const onChange = props.onChange;
32
39
  const onChangeWithFlushSync = React.useCallback(
33
40
  (e) => reactDom.flushSync(() => onChange?.(e)),
@@ -2,9 +2,16 @@ import { useMachine, normalizeProps } from '@zag-js/react';
2
2
  import * as slider from '@zag-js/slider';
3
3
  import { useId, useCallback } from 'react';
4
4
  import { flushSync } from 'react-dom';
5
+ import { useEnvironmentContext } from '../environment/environment-context.mjs';
5
6
 
6
7
  const useSlider = (props) => {
7
- const initialContext = { id: useId(), ...props, value: props.defaultValue };
8
+ const getRootNode = useEnvironmentContext();
9
+ const initialContext = {
10
+ id: useId(),
11
+ getRootNode,
12
+ ...props,
13
+ value: props.defaultValue
14
+ };
8
15
  const onChange = props.onChange;
9
16
  const onChangeWithFlushSync = useCallback(
10
17
  (e) => flushSync(() => onChange?.(e)),
@@ -5,9 +5,16 @@ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
5
5
  const react = require('@zag-js/react');
6
6
  const tabs = require('@zag-js/tabs');
7
7
  const React = require('react');
8
+ const environmentContext = require('../environment/environment-context.cjs');
8
9
 
9
10
  const useTabs = (props) => {
10
- const initialContext = { id: React.useId(), ...props, value: props.defaultValue };
11
+ const getRootNode = environmentContext.useEnvironmentContext();
12
+ const initialContext = {
13
+ id: React.useId(),
14
+ getRootNode,
15
+ ...props,
16
+ value: props.defaultValue
17
+ };
11
18
  const context = {
12
19
  ...initialContext,
13
20
  value: props.value
@@ -1,9 +1,16 @@
1
1
  import { useMachine, normalizeProps } from '@zag-js/react';
2
2
  import { machine, connect } from '@zag-js/tabs';
3
3
  import { useId } from 'react';
4
+ import { useEnvironmentContext } from '../environment/environment-context.mjs';
4
5
 
5
6
  const useTabs = (props) => {
6
- const initialContext = { id: useId(), ...props, value: props.defaultValue };
7
+ const getRootNode = useEnvironmentContext();
8
+ const initialContext = {
9
+ id: useId(),
10
+ getRootNode,
11
+ ...props,
12
+ value: props.defaultValue
13
+ };
7
14
  const context = {
8
15
  ...initialContext,
9
16
  value: props.value
@@ -5,6 +5,7 @@ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
5
5
  const react = require('@zag-js/react');
6
6
  const tagsInput = require('@zag-js/tags-input');
7
7
  const React = require('react');
8
+ const environmentContext = require('../environment/environment-context.cjs');
8
9
 
9
10
  function _interopNamespaceDefault(e) {
10
11
  const n = Object.create(null, { [Symbol.toStringTag]: { value: 'Module' } });
@@ -26,8 +27,10 @@ function _interopNamespaceDefault(e) {
26
27
  const tagsInput__namespace = /*#__PURE__*/_interopNamespaceDefault(tagsInput);
27
28
 
28
29
  const useTagsInput = (props) => {
30
+ const getRootNode = environmentContext.useEnvironmentContext();
29
31
  const initialContext = {
30
32
  id: React.useId(),
33
+ getRootNode,
31
34
  ...props,
32
35
  value: props.value ?? props.defaultValue
33
36
  };
@@ -1,10 +1,13 @@
1
1
  import { useMachine, normalizeProps } from '@zag-js/react';
2
2
  import * as tagsInput from '@zag-js/tags-input';
3
3
  import { useId } from 'react';
4
+ import { useEnvironmentContext } from '../environment/environment-context.mjs';
4
5
 
5
6
  const useTagsInput = (props) => {
7
+ const getRootNode = useEnvironmentContext();
6
8
  const initialContext = {
7
9
  id: useId(),
10
+ getRootNode,
8
11
  ...props,
9
12
  value: props.value ?? props.defaultValue
10
13
  };
@@ -7,6 +7,7 @@ const react = require('@zag-js/react');
7
7
  const toast = require('@zag-js/toast');
8
8
  const React = require('react');
9
9
  const createContext = require('../create-context.cjs');
10
+ const environmentContext = require('../environment/environment-context.cjs');
10
11
 
11
12
  function _interopNamespaceDefault(e) {
12
13
  const n = Object.create(null, { [Symbol.toStringTag]: { value: 'Module' } });
@@ -30,7 +31,9 @@ const toast__namespace = /*#__PURE__*/_interopNamespaceDefault(toast);
30
31
  const [ToastContextProvider, useToast] = createContext.createContext();
31
32
  const ToastProvider = (props) => {
32
33
  const { children, ...restProps } = props;
33
- const [state, send] = react.useMachine(toast__namespace.group.machine({ id: React.useId(), ...restProps }));
34
+ const getRootNode = environmentContext.useEnvironmentContext();
35
+ const context = { id: React.useId(), getRootNode, ...restProps };
36
+ const [state, send] = react.useMachine(toast__namespace.group.machine(context));
34
37
  const api = toast__namespace.group.connect(state, send, react.normalizeProps);
35
38
  return /* @__PURE__ */ jsxRuntime.jsx(ToastContextProvider, { value: api, children });
36
39
  };
@@ -3,11 +3,14 @@ import { useMachine, normalizeProps } from '@zag-js/react';
3
3
  import * as toast from '@zag-js/toast';
4
4
  import { useId } from 'react';
5
5
  import { createContext } from '../create-context.mjs';
6
+ import { useEnvironmentContext } from '../environment/environment-context.mjs';
6
7
 
7
8
  const [ToastContextProvider, useToast] = createContext();
8
9
  const ToastProvider = (props) => {
9
10
  const { children, ...restProps } = props;
10
- const [state, send] = useMachine(toast.group.machine({ id: useId(), ...restProps }));
11
+ const getRootNode = useEnvironmentContext();
12
+ const context = { id: useId(), getRootNode, ...restProps };
13
+ const [state, send] = useMachine(toast.group.machine(context));
11
14
  const api = toast.group.connect(state, send, normalizeProps);
12
15
  return /* @__PURE__ */ jsx(ToastContextProvider, { value: api, children });
13
16
  };
@@ -5,6 +5,7 @@ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
5
5
  const react = require('@zag-js/react');
6
6
  const tooltip = require('@zag-js/tooltip');
7
7
  const React = require('react');
8
+ const environmentContext = require('../environment/environment-context.cjs');
8
9
 
9
10
  function _interopNamespaceDefault(e) {
10
11
  const n = Object.create(null, { [Symbol.toStringTag]: { value: 'Module' } });
@@ -26,8 +27,10 @@ function _interopNamespaceDefault(e) {
26
27
  const tooltip__namespace = /*#__PURE__*/_interopNamespaceDefault(tooltip);
27
28
 
28
29
  const useTooltip = (props) => {
30
+ const getRootNode = environmentContext.useEnvironmentContext();
29
31
  const context = {
30
32
  id: React.useId(),
33
+ getRootNode,
31
34
  ...props
32
35
  };
33
36
  const [state, send] = react.useMachine(tooltip__namespace.machine(context), { context });
@@ -1,10 +1,13 @@
1
1
  import { useMachine, normalizeProps } from '@zag-js/react';
2
2
  import * as tooltip from '@zag-js/tooltip';
3
3
  import { useId } from 'react';
4
+ import { useEnvironmentContext } from '../environment/environment-context.mjs';
4
5
 
5
6
  const useTooltip = (props) => {
7
+ const getRootNode = useEnvironmentContext();
6
8
  const context = {
7
9
  id: useId(),
10
+ getRootNode,
8
11
  ...props
9
12
  };
10
13
  const [state, send] = useMachine(tooltip.machine(context), { context });
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ark-ui/react",
3
- "version": "0.0.0-rc-20230126030105",
3
+ "version": "0.0.0-rc-20230128111337",
4
4
  "description": "",
5
5
  "keywords": [],
6
6
  "homepage": "https://github.com/chakra-ui/ark#readme",
@@ -45,7 +45,8 @@
45
45
  "@zag-js/tabs": "0.2.7",
46
46
  "@zag-js/tags-input": "0.3.8",
47
47
  "@zag-js/toast": "0.2.8",
48
- "@zag-js/tooltip": "0.2.7"
48
+ "@zag-js/tooltip": "0.2.7",
49
+ "@zag-js/types": "0.3.3"
49
50
  },
50
51
  "devDependencies": {
51
52
  "@testing-library/dom": "8.20.0",
@@ -67,6 +68,7 @@
67
68
  "jsdom": "21.1.0",
68
69
  "react": "18.2.0",
69
70
  "react-dom": "18.2.0",
71
+ "react-frame-component": "5.2.6",
70
72
  "resize-observer-polyfill": "1.5.1",
71
73
  "typescript": "4.9.4",
72
74
  "vite": "4.0.4",