@sprawlify/react 0.0.1 → 0.0.3

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.
@@ -0,0 +1,18 @@
1
+ //#region rolldown:runtime
2
+ var __defProp = Object.defineProperty;
3
+ var __export = (all, symbols) => {
4
+ let target = {};
5
+ for (var name in all) {
6
+ __defProp(target, name, {
7
+ get: all[name],
8
+ enumerable: true
9
+ });
10
+ }
11
+ if (symbols) {
12
+ __defProp(target, Symbol.toStringTag, { value: "Module" });
13
+ }
14
+ return target;
15
+ };
16
+
17
+ //#endregion
18
+ export { __export as t };
@@ -0,0 +1,168 @@
1
+ const require_factory = require('../../factory-CfqPG186.cjs');
2
+ const require_create_context = require('../../create-context-DCEySQ7J.cjs');
3
+ let react = require("react");
4
+ let react_jsx_runtime = require("react/jsx-runtime");
5
+ let __sprawlify_primitives_machines_collapsible = require("@sprawlify/primitives/machines/collapsible");
6
+ __sprawlify_primitives_machines_collapsible = require_factory.__toESM(__sprawlify_primitives_machines_collapsible);
7
+ let __sprawlify_primitives_core = require("@sprawlify/primitives/core");
8
+
9
+ //#region src/components/collapsible/use-collapsible-context.ts
10
+ const [CollapsibleProvider, useCollapsibleContext] = require_create_context.createContext({
11
+ name: "CollapsibleContext",
12
+ hookName: "useCollapsibleContext",
13
+ providerName: "<CollapsibleProvider />"
14
+ });
15
+
16
+ //#endregion
17
+ //#region src/components/collapsible/collapsible-content.tsx
18
+ const CollapsibleContent = (0, react.forwardRef)((props, ref) => {
19
+ const collapsible = useCollapsibleContext();
20
+ if (collapsible.isUnmounted) return null;
21
+ const mergedProps = (0, __sprawlify_primitives_core.mergeProps)(collapsible.getContentProps(), props);
22
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_factory.sprawlify.div, {
23
+ ...mergedProps,
24
+ ref
25
+ });
26
+ });
27
+ CollapsibleContent.displayName = "CollapsibleContent";
28
+
29
+ //#endregion
30
+ //#region src/components/collapsible/collapsible-context.tsx
31
+ const CollapsibleContext = (props) => props.children(useCollapsibleContext());
32
+
33
+ //#endregion
34
+ //#region src/components/collapsible/collapsible-indicator.tsx
35
+ const CollapsibleIndicator = (0, react.forwardRef)((props, ref) => {
36
+ const mergedProps = (0, __sprawlify_primitives_core.mergeProps)(useCollapsibleContext().getIndicatorProps(), props);
37
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_factory.sprawlify.div, {
38
+ ...mergedProps,
39
+ ref
40
+ });
41
+ });
42
+ CollapsibleIndicator.displayName = "CollapsibleIndicator";
43
+
44
+ //#endregion
45
+ //#region src/utils/create-split-props.ts
46
+ const createSplitProps = () => (props, keys) => keys.reduce((previousValue, currentValue) => {
47
+ const [target, source] = previousValue;
48
+ const key = currentValue;
49
+ if (source[key] !== void 0) target[key] = source[key];
50
+ delete source[key];
51
+ return [target, source];
52
+ }, [{}, { ...props }]);
53
+
54
+ //#endregion
55
+ //#region src/components/collapsible/split-collapsible-props.ts
56
+ const splitCollapsibleProps = (props) => createSplitProps()(props, [
57
+ "collapsedHeight",
58
+ "collapsedWidth",
59
+ "defaultOpen",
60
+ "disabled",
61
+ "id",
62
+ "ids",
63
+ "lazyMount",
64
+ "onExitComplete",
65
+ "onOpenChange",
66
+ "open",
67
+ "unmountOnExit"
68
+ ]);
69
+
70
+ //#endregion
71
+ //#region src/components/collapsible/use-collapsible.ts
72
+ const useCollapsible = (props = {}) => {
73
+ const { lazyMount, unmountOnExit, ...collapsibleProps } = props;
74
+ const id = (0, react.useId)();
75
+ const wasVisible = (0, react.useRef)(false);
76
+ const { dir } = require_factory.useLocaleContext();
77
+ const { getRootNode } = require_factory.useEnvironmentContext();
78
+ const machineProps = {
79
+ id,
80
+ dir,
81
+ getRootNode,
82
+ ...collapsibleProps
83
+ };
84
+ const service = require_factory.useMachine(__sprawlify_primitives_machines_collapsible.machine, machineProps);
85
+ const api = __sprawlify_primitives_machines_collapsible.connect(service, require_factory.normalizeProps);
86
+ if (api.visible) wasVisible.current = true;
87
+ const isUnmounted = !api.visible && !wasVisible.current && lazyMount || unmountOnExit && !api.visible && wasVisible.current;
88
+ return {
89
+ ...api,
90
+ isUnmounted
91
+ };
92
+ };
93
+
94
+ //#endregion
95
+ //#region src/components/collapsible/collapsible-root.tsx
96
+ const CollapsibleRoot = (0, react.forwardRef)((props, ref) => {
97
+ const [useCollapsibleProps, localProps] = splitCollapsibleProps(props);
98
+ const collapsible = useCollapsible(useCollapsibleProps);
99
+ const mergedProps = (0, __sprawlify_primitives_core.mergeProps)(collapsible.getRootProps(), localProps);
100
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(CollapsibleProvider, {
101
+ value: collapsible,
102
+ children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_factory.sprawlify.div, {
103
+ ...mergedProps,
104
+ ref
105
+ })
106
+ });
107
+ });
108
+ CollapsibleRoot.displayName = "CollapsibleRoot";
109
+
110
+ //#endregion
111
+ //#region src/components/collapsible/collapsible-root-provider.tsx
112
+ const splitRootProviderProps = createSplitProps();
113
+ const CollapsibleRootProvider = (0, react.forwardRef)((props, ref) => {
114
+ const [{ value: collapsible }, localProps] = splitRootProviderProps(props, ["value"]);
115
+ const mergedProps = (0, __sprawlify_primitives_core.mergeProps)(collapsible.getRootProps(), localProps);
116
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(CollapsibleProvider, {
117
+ value: collapsible,
118
+ children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_factory.sprawlify.div, {
119
+ ...mergedProps,
120
+ ref
121
+ })
122
+ });
123
+ });
124
+ CollapsibleRootProvider.displayName = "CollapsibleRootProvider";
125
+
126
+ //#endregion
127
+ //#region src/components/collapsible/collapsible-trigger.tsx
128
+ const CollapsibleTrigger = (0, react.forwardRef)((props, ref) => {
129
+ const mergedProps = (0, __sprawlify_primitives_core.mergeProps)(useCollapsibleContext().getTriggerProps(), props);
130
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_factory.sprawlify.button, {
131
+ ...mergedProps,
132
+ ref
133
+ });
134
+ });
135
+ CollapsibleTrigger.displayName = "CollapsibleTrigger";
136
+
137
+ //#endregion
138
+ //#region src/components/collapsible/collapsible.ts
139
+ var collapsible_exports = /* @__PURE__ */ require_factory.__export({
140
+ Content: () => CollapsibleContent,
141
+ Context: () => CollapsibleContext,
142
+ Indicator: () => CollapsibleIndicator,
143
+ Root: () => CollapsibleRoot,
144
+ RootProvider: () => CollapsibleRootProvider,
145
+ Trigger: () => CollapsibleTrigger
146
+ });
147
+
148
+ //#endregion
149
+ Object.defineProperty(exports, 'Collapsible', {
150
+ enumerable: true,
151
+ get: function () {
152
+ return collapsible_exports;
153
+ }
154
+ });
155
+ exports.CollapsibleContent = CollapsibleContent;
156
+ exports.CollapsibleContext = CollapsibleContext;
157
+ exports.CollapsibleIndicator = CollapsibleIndicator;
158
+ exports.CollapsibleRoot = CollapsibleRoot;
159
+ exports.CollapsibleRootProvider = CollapsibleRootProvider;
160
+ exports.CollapsibleTrigger = CollapsibleTrigger;
161
+ Object.defineProperty(exports, 'collapsibleAnatomy', {
162
+ enumerable: true,
163
+ get: function () {
164
+ return __sprawlify_primitives_machines_collapsible.anatomy;
165
+ }
166
+ });
167
+ exports.useCollapsible = useCollapsible;
168
+ exports.useCollapsibleContext = useCollapsibleContext;
@@ -0,0 +1,62 @@
1
+ import { a as HTMLProps, n as Optional, r as PropTypes, s as PolymorphicProps } from "../../types-B_h5HVp2.cjs";
2
+ import * as collapsible from "@sprawlify/primitives/machines/collapsible";
3
+ import { OpenChangeDetails, OpenChangeDetails as CollapsibleOpenChangeDetails, anatomy as collapsibleAnatomy } from "@sprawlify/primitives/machines/collapsible";
4
+ import * as react3 from "react";
5
+ import { ReactNode } from "react";
6
+
7
+ //#region rolldown:runtime
8
+ //#endregion
9
+ //#region src/components/collapsible/collapsible-content.d.ts
10
+ interface CollapsibleContentBaseProps extends PolymorphicProps {}
11
+ interface CollapsibleContentProps extends HTMLProps<"div">, CollapsibleContentBaseProps {}
12
+ declare const CollapsibleContent: react3.ForwardRefExoticComponent<CollapsibleContentProps & react3.RefAttributes<HTMLDivElement>>;
13
+ //#endregion
14
+ //#region src/utils/render-strategy.d.ts
15
+ interface RenderStrategyProps {
16
+ lazyMount?: boolean | undefined;
17
+ unmountOnExit?: boolean | undefined;
18
+ }
19
+ //#endregion
20
+ //#region src/components/collapsible/use-collapsible.d.ts
21
+ interface UseCollapsibleProps extends Optional<Omit<collapsible.Props, "dir" | "getRootNode">, "id">, RenderStrategyProps {}
22
+ interface UseCollapsibleReturn extends collapsible.Api<PropTypes> {
23
+ isUnmounted?: boolean | undefined;
24
+ }
25
+ declare const useCollapsible: (props?: UseCollapsibleProps) => UseCollapsibleReturn;
26
+ //#endregion
27
+ //#region src/components/collapsible/use-collapsible-context.d.ts
28
+ interface UseCollapsibleContext extends UseCollapsibleReturn {}
29
+ //#endregion
30
+ //#region src/components/collapsible/collapsible-context.d.ts
31
+ interface CollapsibleContextProps {
32
+ children: (context: UseCollapsibleContext) => ReactNode;
33
+ }
34
+ declare const CollapsibleContext: (props: CollapsibleContextProps) => ReactNode;
35
+ //#endregion
36
+ //#region src/components/collapsible/collapsible-indicator.d.ts
37
+ interface CollapsibleIndicatorBaseProps extends PolymorphicProps {}
38
+ interface CollapsibleIndicatorProps extends HTMLProps<"div">, CollapsibleIndicatorBaseProps {}
39
+ declare const CollapsibleIndicator: react3.ForwardRefExoticComponent<CollapsibleIndicatorProps & react3.RefAttributes<HTMLDivElement>>;
40
+ //#endregion
41
+ //#region src/components/collapsible/collapsible-root.d.ts
42
+ interface CollapsibleRootBaseProps extends UseCollapsibleProps, PolymorphicProps {}
43
+ interface CollapsibleRootProps extends HTMLProps<"div">, CollapsibleRootBaseProps {}
44
+ declare const CollapsibleRoot: react3.ForwardRefExoticComponent<CollapsibleRootProps & react3.RefAttributes<HTMLDivElement>>;
45
+ //#endregion
46
+ //#region src/components/collapsible/collapsible-root-provider.d.ts
47
+ interface RootProviderProps {
48
+ value: UseCollapsibleReturn;
49
+ }
50
+ interface CollapsibleRootProviderBaseProps extends RootProviderProps, PolymorphicProps {}
51
+ interface CollapsibleRootProviderProps extends HTMLProps<"div">, CollapsibleRootProviderBaseProps {}
52
+ declare const CollapsibleRootProvider: react3.ForwardRefExoticComponent<CollapsibleRootProviderProps & react3.RefAttributes<HTMLDivElement>>;
53
+ //#endregion
54
+ //#region src/components/collapsible/collapsible-trigger.d.ts
55
+ interface CollapsibleTriggerBaseProps extends PolymorphicProps {}
56
+ interface CollapsibleTriggerProps extends HTMLProps<"button">, CollapsibleTriggerBaseProps {}
57
+ declare const CollapsibleTrigger: react3.ForwardRefExoticComponent<CollapsibleTriggerProps & react3.RefAttributes<HTMLButtonElement>>;
58
+ declare namespace collapsible_d_exports {
59
+ export { CollapsibleContent as Content, CollapsibleContentBaseProps as ContentBaseProps, CollapsibleContentProps as ContentProps, CollapsibleContext as Context, CollapsibleContextProps as ContextProps, CollapsibleIndicator as Indicator, CollapsibleIndicatorBaseProps as IndicatorBaseProps, CollapsibleIndicatorProps as IndicatorProps, OpenChangeDetails, CollapsibleRoot as Root, CollapsibleRootBaseProps as RootBaseProps, CollapsibleRootProps as RootProps, CollapsibleRootProvider as RootProvider, CollapsibleRootProviderBaseProps as RootProviderBaseProps, CollapsibleRootProviderProps as RootProviderProps, CollapsibleTrigger as Trigger, CollapsibleTriggerBaseProps as TriggerBaseProps, CollapsibleTriggerProps as TriggerProps };
60
+ }
61
+ //#endregion
62
+ export { collapsible_d_exports as Collapsible, CollapsibleContent, type CollapsibleContentBaseProps, type CollapsibleContentProps, CollapsibleContext, type CollapsibleContextProps, CollapsibleIndicator, type CollapsibleIndicatorBaseProps, type CollapsibleIndicatorProps, type CollapsibleOpenChangeDetails, CollapsibleRoot, type CollapsibleRootBaseProps, type CollapsibleRootProps, CollapsibleRootProvider, type CollapsibleRootProviderBaseProps, type CollapsibleRootProviderProps, CollapsibleTrigger, type CollapsibleTriggerBaseProps, type CollapsibleTriggerProps, type UseCollapsibleContext, type UseCollapsibleProps, type UseCollapsibleReturn, collapsibleAnatomy, useCollapsible, useCollapsibleContext };
@@ -0,0 +1,60 @@
1
+ import { a as PropTypes, c as HTMLProps, n as Optional, u as PolymorphicProps } from "../../types-CwELsIN6.mjs";
2
+ import * as react0 from "react";
3
+ import { ReactNode } from "react";
4
+ import * as collapsible from "@sprawlify/primitives/machines/collapsible";
5
+ import { OpenChangeDetails, OpenChangeDetails as CollapsibleOpenChangeDetails, anatomy as collapsibleAnatomy } from "@sprawlify/primitives/machines/collapsible";
6
+
7
+ //#region src/components/collapsible/collapsible-content.d.ts
8
+ interface CollapsibleContentBaseProps extends PolymorphicProps {}
9
+ interface CollapsibleContentProps extends HTMLProps<"div">, CollapsibleContentBaseProps {}
10
+ declare const CollapsibleContent: react0.ForwardRefExoticComponent<CollapsibleContentProps & react0.RefAttributes<HTMLDivElement>>;
11
+ //#endregion
12
+ //#region src/utils/render-strategy.d.ts
13
+ interface RenderStrategyProps {
14
+ lazyMount?: boolean | undefined;
15
+ unmountOnExit?: boolean | undefined;
16
+ }
17
+ //#endregion
18
+ //#region src/components/collapsible/use-collapsible.d.ts
19
+ interface UseCollapsibleProps extends Optional<Omit<collapsible.Props, "dir" | "getRootNode">, "id">, RenderStrategyProps {}
20
+ interface UseCollapsibleReturn extends collapsible.Api<PropTypes> {
21
+ isUnmounted?: boolean | undefined;
22
+ }
23
+ declare const useCollapsible: (props?: UseCollapsibleProps) => UseCollapsibleReturn;
24
+ //#endregion
25
+ //#region src/components/collapsible/use-collapsible-context.d.ts
26
+ interface UseCollapsibleContext extends UseCollapsibleReturn {}
27
+ //#endregion
28
+ //#region src/components/collapsible/collapsible-context.d.ts
29
+ interface CollapsibleContextProps {
30
+ children: (context: UseCollapsibleContext) => ReactNode;
31
+ }
32
+ declare const CollapsibleContext: (props: CollapsibleContextProps) => ReactNode;
33
+ //#endregion
34
+ //#region src/components/collapsible/collapsible-indicator.d.ts
35
+ interface CollapsibleIndicatorBaseProps extends PolymorphicProps {}
36
+ interface CollapsibleIndicatorProps extends HTMLProps<"div">, CollapsibleIndicatorBaseProps {}
37
+ declare const CollapsibleIndicator: react0.ForwardRefExoticComponent<CollapsibleIndicatorProps & react0.RefAttributes<HTMLDivElement>>;
38
+ //#endregion
39
+ //#region src/components/collapsible/collapsible-root.d.ts
40
+ interface CollapsibleRootBaseProps extends UseCollapsibleProps, PolymorphicProps {}
41
+ interface CollapsibleRootProps extends HTMLProps<"div">, CollapsibleRootBaseProps {}
42
+ declare const CollapsibleRoot: react0.ForwardRefExoticComponent<CollapsibleRootProps & react0.RefAttributes<HTMLDivElement>>;
43
+ //#endregion
44
+ //#region src/components/collapsible/collapsible-root-provider.d.ts
45
+ interface RootProviderProps {
46
+ value: UseCollapsibleReturn;
47
+ }
48
+ interface CollapsibleRootProviderBaseProps extends RootProviderProps, PolymorphicProps {}
49
+ interface CollapsibleRootProviderProps extends HTMLProps<"div">, CollapsibleRootProviderBaseProps {}
50
+ declare const CollapsibleRootProvider: react0.ForwardRefExoticComponent<CollapsibleRootProviderProps & react0.RefAttributes<HTMLDivElement>>;
51
+ //#endregion
52
+ //#region src/components/collapsible/collapsible-trigger.d.ts
53
+ interface CollapsibleTriggerBaseProps extends PolymorphicProps {}
54
+ interface CollapsibleTriggerProps extends HTMLProps<"button">, CollapsibleTriggerBaseProps {}
55
+ declare const CollapsibleTrigger: react0.ForwardRefExoticComponent<CollapsibleTriggerProps & react0.RefAttributes<HTMLButtonElement>>;
56
+ declare namespace collapsible_d_exports {
57
+ export { CollapsibleContent as Content, CollapsibleContentBaseProps as ContentBaseProps, CollapsibleContentProps as ContentProps, CollapsibleContext as Context, CollapsibleContextProps as ContextProps, CollapsibleIndicator as Indicator, CollapsibleIndicatorBaseProps as IndicatorBaseProps, CollapsibleIndicatorProps as IndicatorProps, OpenChangeDetails, CollapsibleRoot as Root, CollapsibleRootBaseProps as RootBaseProps, CollapsibleRootProps as RootProps, CollapsibleRootProvider as RootProvider, CollapsibleRootProviderBaseProps as RootProviderBaseProps, CollapsibleRootProviderProps as RootProviderProps, CollapsibleTrigger as Trigger, CollapsibleTriggerBaseProps as TriggerBaseProps, CollapsibleTriggerProps as TriggerProps };
58
+ }
59
+ //#endregion
60
+ export { collapsible_d_exports as Collapsible, CollapsibleContent, type CollapsibleContentBaseProps, type CollapsibleContentProps, CollapsibleContext, type CollapsibleContextProps, CollapsibleIndicator, type CollapsibleIndicatorBaseProps, type CollapsibleIndicatorProps, type CollapsibleOpenChangeDetails, CollapsibleRoot, type CollapsibleRootBaseProps, type CollapsibleRootProps, CollapsibleRootProvider, type CollapsibleRootProviderBaseProps, type CollapsibleRootProviderProps, CollapsibleTrigger, type CollapsibleTriggerBaseProps, type CollapsibleTriggerProps, type UseCollapsibleContext, type UseCollapsibleProps, type UseCollapsibleReturn, collapsibleAnatomy, useCollapsible, useCollapsibleContext };
@@ -0,0 +1,149 @@
1
+ import { t as __export } from "../../chunk-CbegLjfk.mjs";
2
+ import { c as useEnvironmentContext, d as normalizeProps, f as useMachine, l as mergeProps, n as sprawlify, o as useLocaleContext } from "../../factory-B_Ye-J6y.mjs";
3
+ import { t as createContext$1 } from "../../create-context-fSIoyq0R.mjs";
4
+ import { forwardRef, useId, useRef } from "react";
5
+ import { jsx } from "react/jsx-runtime";
6
+ import * as collapsible from "@sprawlify/primitives/machines/collapsible";
7
+ import { anatomy as collapsibleAnatomy } from "@sprawlify/primitives/machines/collapsible";
8
+
9
+ //#region src/components/collapsible/use-collapsible-context.ts
10
+ const [CollapsibleProvider, useCollapsibleContext] = createContext$1({
11
+ name: "CollapsibleContext",
12
+ hookName: "useCollapsibleContext",
13
+ providerName: "<CollapsibleProvider />"
14
+ });
15
+
16
+ //#endregion
17
+ //#region src/components/collapsible/collapsible-content.tsx
18
+ const CollapsibleContent = forwardRef((props, ref) => {
19
+ const collapsible$1 = useCollapsibleContext();
20
+ if (collapsible$1.isUnmounted) return null;
21
+ const mergedProps = mergeProps(collapsible$1.getContentProps(), props);
22
+ return /* @__PURE__ */ jsx(sprawlify.div, {
23
+ ...mergedProps,
24
+ ref
25
+ });
26
+ });
27
+ CollapsibleContent.displayName = "CollapsibleContent";
28
+
29
+ //#endregion
30
+ //#region src/components/collapsible/collapsible-context.tsx
31
+ const CollapsibleContext = (props) => props.children(useCollapsibleContext());
32
+
33
+ //#endregion
34
+ //#region src/components/collapsible/collapsible-indicator.tsx
35
+ const CollapsibleIndicator = forwardRef((props, ref) => {
36
+ const mergedProps = mergeProps(useCollapsibleContext().getIndicatorProps(), props);
37
+ return /* @__PURE__ */ jsx(sprawlify.div, {
38
+ ...mergedProps,
39
+ ref
40
+ });
41
+ });
42
+ CollapsibleIndicator.displayName = "CollapsibleIndicator";
43
+
44
+ //#endregion
45
+ //#region src/utils/create-split-props.ts
46
+ const createSplitProps = () => (props, keys) => keys.reduce((previousValue, currentValue) => {
47
+ const [target, source] = previousValue;
48
+ const key = currentValue;
49
+ if (source[key] !== void 0) target[key] = source[key];
50
+ delete source[key];
51
+ return [target, source];
52
+ }, [{}, { ...props }]);
53
+
54
+ //#endregion
55
+ //#region src/components/collapsible/split-collapsible-props.ts
56
+ const splitCollapsibleProps = (props) => createSplitProps()(props, [
57
+ "collapsedHeight",
58
+ "collapsedWidth",
59
+ "defaultOpen",
60
+ "disabled",
61
+ "id",
62
+ "ids",
63
+ "lazyMount",
64
+ "onExitComplete",
65
+ "onOpenChange",
66
+ "open",
67
+ "unmountOnExit"
68
+ ]);
69
+
70
+ //#endregion
71
+ //#region src/components/collapsible/use-collapsible.ts
72
+ const useCollapsible = (props = {}) => {
73
+ const { lazyMount, unmountOnExit, ...collapsibleProps } = props;
74
+ const id = useId();
75
+ const wasVisible = useRef(false);
76
+ const { dir } = useLocaleContext();
77
+ const { getRootNode } = useEnvironmentContext();
78
+ const machineProps = {
79
+ id,
80
+ dir,
81
+ getRootNode,
82
+ ...collapsibleProps
83
+ };
84
+ const service = useMachine(collapsible.machine, machineProps);
85
+ const api = collapsible.connect(service, normalizeProps);
86
+ if (api.visible) wasVisible.current = true;
87
+ const isUnmounted = !api.visible && !wasVisible.current && lazyMount || unmountOnExit && !api.visible && wasVisible.current;
88
+ return {
89
+ ...api,
90
+ isUnmounted
91
+ };
92
+ };
93
+
94
+ //#endregion
95
+ //#region src/components/collapsible/collapsible-root.tsx
96
+ const CollapsibleRoot = forwardRef((props, ref) => {
97
+ const [useCollapsibleProps, localProps] = splitCollapsibleProps(props);
98
+ const collapsible$1 = useCollapsible(useCollapsibleProps);
99
+ const mergedProps = mergeProps(collapsible$1.getRootProps(), localProps);
100
+ return /* @__PURE__ */ jsx(CollapsibleProvider, {
101
+ value: collapsible$1,
102
+ children: /* @__PURE__ */ jsx(sprawlify.div, {
103
+ ...mergedProps,
104
+ ref
105
+ })
106
+ });
107
+ });
108
+ CollapsibleRoot.displayName = "CollapsibleRoot";
109
+
110
+ //#endregion
111
+ //#region src/components/collapsible/collapsible-root-provider.tsx
112
+ const splitRootProviderProps = createSplitProps();
113
+ const CollapsibleRootProvider = forwardRef((props, ref) => {
114
+ const [{ value: collapsible$1 }, localProps] = splitRootProviderProps(props, ["value"]);
115
+ const mergedProps = mergeProps(collapsible$1.getRootProps(), localProps);
116
+ return /* @__PURE__ */ jsx(CollapsibleProvider, {
117
+ value: collapsible$1,
118
+ children: /* @__PURE__ */ jsx(sprawlify.div, {
119
+ ...mergedProps,
120
+ ref
121
+ })
122
+ });
123
+ });
124
+ CollapsibleRootProvider.displayName = "CollapsibleRootProvider";
125
+
126
+ //#endregion
127
+ //#region src/components/collapsible/collapsible-trigger.tsx
128
+ const CollapsibleTrigger = forwardRef((props, ref) => {
129
+ const mergedProps = mergeProps(useCollapsibleContext().getTriggerProps(), props);
130
+ return /* @__PURE__ */ jsx(sprawlify.button, {
131
+ ...mergedProps,
132
+ ref
133
+ });
134
+ });
135
+ CollapsibleTrigger.displayName = "CollapsibleTrigger";
136
+
137
+ //#endregion
138
+ //#region src/components/collapsible/collapsible.ts
139
+ var collapsible_exports = /* @__PURE__ */ __export({
140
+ Content: () => CollapsibleContent,
141
+ Context: () => CollapsibleContext,
142
+ Indicator: () => CollapsibleIndicator,
143
+ Root: () => CollapsibleRoot,
144
+ RootProvider: () => CollapsibleRootProvider,
145
+ Trigger: () => CollapsibleTrigger
146
+ });
147
+
148
+ //#endregion
149
+ export { collapsible_exports as Collapsible, CollapsibleContent, CollapsibleContext, CollapsibleIndicator, CollapsibleRoot, CollapsibleRootProvider, CollapsibleTrigger, collapsibleAnatomy, useCollapsible, useCollapsibleContext };
File without changes
@@ -0,0 +1 @@
1
+ export { };
@@ -0,0 +1 @@
1
+ export { };
@@ -0,0 +1 @@
1
+ export { };
@@ -0,0 +1,36 @@
1
+ const require_factory = require('./factory-CfqPG186.cjs');
2
+ let __sprawlify_primitives_utils = require("@sprawlify/primitives/utils");
3
+ let react = require("react");
4
+
5
+ //#region src/utils/create-context.ts
6
+ function getErrorMessage(hook, provider) {
7
+ return `${hook} returned \`undefined\`. Seems you forgot to wrap component within ${provider}`;
8
+ }
9
+ function createContext(options = {}) {
10
+ const { name, strict = true, hookName = "useContext", providerName = "Provider", errorMessage, defaultValue } = options;
11
+ const Context = (0, react.createContext)(defaultValue);
12
+ Context.displayName = name;
13
+ function useContext() {
14
+ const context = (0, react.useContext)(Context);
15
+ if (!context && strict) {
16
+ const error = new Error(errorMessage ?? getErrorMessage(hookName, providerName));
17
+ error.name = "ContextError";
18
+ if ((0, __sprawlify_primitives_utils.hasProp)(Error, "captureStackTrace") && (0, __sprawlify_primitives_utils.isFunction)(Error.captureStackTrace)) Error.captureStackTrace(error, useContext);
19
+ throw error;
20
+ }
21
+ return context;
22
+ }
23
+ return [
24
+ Context.Provider,
25
+ useContext,
26
+ Context
27
+ ];
28
+ }
29
+
30
+ //#endregion
31
+ Object.defineProperty(exports, 'createContext', {
32
+ enumerable: true,
33
+ get: function () {
34
+ return createContext;
35
+ }
36
+ });
@@ -0,0 +1,30 @@
1
+ import { hasProp, isFunction } from "@sprawlify/primitives/utils";
2
+ import { createContext, useContext } from "react";
3
+
4
+ //#region src/utils/create-context.ts
5
+ function getErrorMessage(hook, provider) {
6
+ return `${hook} returned \`undefined\`. Seems you forgot to wrap component within ${provider}`;
7
+ }
8
+ function createContext$1(options = {}) {
9
+ const { name, strict = true, hookName = "useContext", providerName = "Provider", errorMessage, defaultValue } = options;
10
+ const Context = createContext(defaultValue);
11
+ Context.displayName = name;
12
+ function useContext$1() {
13
+ const context = useContext(Context);
14
+ if (!context && strict) {
15
+ const error = new Error(errorMessage ?? getErrorMessage(hookName, providerName));
16
+ error.name = "ContextError";
17
+ if (hasProp(Error, "captureStackTrace") && isFunction(Error.captureStackTrace)) Error.captureStackTrace(error, useContext$1);
18
+ throw error;
19
+ }
20
+ return context;
21
+ }
22
+ return [
23
+ Context.Provider,
24
+ useContext$1,
25
+ Context
26
+ ];
27
+ }
28
+
29
+ //#endregion
30
+ export { createContext$1 as t };