@drjoshcsimmons/scl 0.2.5 → 0.2.7

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 (113) hide show
  1. package/dist/index100.js +13 -217
  2. package/dist/index101.js +6 -14
  3. package/dist/index102.js +24 -47
  4. package/dist/index103.js +53 -48
  5. package/dist/index104.js +30 -9
  6. package/dist/index105.js +216 -45
  7. package/dist/index106.js +8 -649
  8. package/dist/index107.js +30 -15
  9. package/dist/index108.js +180 -3
  10. package/dist/index109.js +649 -8
  11. package/dist/index11.js +2 -2
  12. package/dist/index110.js +30 -30
  13. package/dist/index111.js +1 -1
  14. package/dist/index112.js +47 -29
  15. package/dist/index113.js +6 -48
  16. package/dist/index114.js +48 -6
  17. package/dist/index115.js +1 -1
  18. package/dist/index116.js +1 -1
  19. package/dist/index117.js +21 -206
  20. package/dist/index118.js +9 -22
  21. package/dist/index119.js +38 -400
  22. package/dist/index12.js +1 -1
  23. package/dist/index120.js +11 -14
  24. package/dist/index121.js +206 -9
  25. package/dist/index122.js +21 -37
  26. package/dist/index123.js +399 -17
  27. package/dist/index124.js +1 -1
  28. package/dist/index13.js +2 -2
  29. package/dist/index134.js +1 -1
  30. package/dist/index136.js +4 -4
  31. package/dist/index14.js +2 -2
  32. package/dist/index141.js +69 -65
  33. package/dist/index142.js +8 -68
  34. package/dist/index143.js +14 -9
  35. package/dist/index144.js +66 -14
  36. package/dist/index145.js +64 -65
  37. package/dist/index15.js +2 -2
  38. package/dist/index17.js +3 -3
  39. package/dist/index18.js +2 -2
  40. package/dist/index20.js +1 -1
  41. package/dist/index21.js +1 -1
  42. package/dist/index22.js +1 -1
  43. package/dist/index23.js +2 -2
  44. package/dist/index24.js +1 -1
  45. package/dist/index25.js +4 -4
  46. package/dist/index26.js +1 -1
  47. package/dist/index27.js +3 -3
  48. package/dist/index29.js +1 -1
  49. package/dist/index33.js +1 -1
  50. package/dist/index36.js +2 -2
  51. package/dist/index37.js +1 -1
  52. package/dist/index4.js +2 -2
  53. package/dist/index45.js +220 -108
  54. package/dist/index46.js +11 -33
  55. package/dist/index47.js +33 -249
  56. package/dist/index48.js +73 -9
  57. package/dist/index49.js +116 -64
  58. package/dist/index5.js +1 -1
  59. package/dist/index50.js +507 -214
  60. package/dist/index51.js +260 -11
  61. package/dist/index52.js +12 -60
  62. package/dist/index53.js +60 -12
  63. package/dist/index54.js +1 -1
  64. package/dist/index55.js +12 -118
  65. package/dist/index56.js +9 -82
  66. package/dist/index57.js +298 -229
  67. package/dist/index58.js +12 -236
  68. package/dist/index59.js +82 -11
  69. package/dist/index6.js +1 -1
  70. package/dist/index60.js +7 -7
  71. package/dist/index61.js +425 -244
  72. package/dist/index62.js +221 -232
  73. package/dist/index63.js +225 -12
  74. package/dist/index64.js +11 -225
  75. package/dist/index65.js +1 -1
  76. package/dist/index66.js +333 -28
  77. package/dist/index67.js +153 -302
  78. package/dist/index68.js +22 -12
  79. package/dist/index69.js +811 -481
  80. package/dist/index7.js +1 -1
  81. package/dist/index70.js +9 -860
  82. package/dist/index71.js +31 -9
  83. package/dist/index72.js +241 -323
  84. package/dist/index73.js +210 -409
  85. package/dist/index74.js +98 -141
  86. package/dist/index75.js +238 -19
  87. package/dist/index76.js +64 -23
  88. package/dist/index77.js +42 -64
  89. package/dist/index78.js +25 -5
  90. package/dist/index79.js +6 -51
  91. package/dist/index8.js +1 -1
  92. package/dist/index80.js +51 -5
  93. package/dist/index81.js +33 -24
  94. package/dist/index82.js +10 -68
  95. package/dist/index83.js +7 -33
  96. package/dist/index84.js +54 -8
  97. package/dist/index85.js +10 -54
  98. package/dist/index86.js +4 -11
  99. package/dist/index87.js +30 -4
  100. package/dist/index88.js +13 -30
  101. package/dist/index89.js +8 -12
  102. package/dist/index9.js +2 -2
  103. package/dist/index90.js +66 -43
  104. package/dist/index91.js +3 -10
  105. package/dist/index92.js +124 -7
  106. package/dist/index93.js +134 -29
  107. package/dist/index94.js +14 -55
  108. package/dist/index95.js +15 -30
  109. package/dist/index96.js +9 -181
  110. package/dist/index97.js +47 -122
  111. package/dist/index98.js +46 -13
  112. package/dist/index99.js +29 -134
  113. package/package.json +5 -3
package/dist/index62.js CHANGED
@@ -1,262 +1,251 @@
1
1
  import * as s from "react";
2
- import { composeEventHandlers as p } from "./index78.js";
3
- import { useComposedRefs as _ } from "./index76.js";
4
- import { createContextScope as V, createContext as q } from "./index77.js";
5
- import { useId as R } from "./index91.js";
6
- import { useControllableState as K } from "./index79.js";
7
- import { DismissableLayer as U } from "./index97.js";
8
- import { FocusScope as Y } from "./index99.js";
9
- import { Portal as Z } from "./index101.js";
10
- import { Presence as h } from "./index82.js";
11
- import { Primitive as m } from "./index83.js";
12
- import { useFocusGuards as z } from "./index98.js";
13
- import J from "./index104.js";
14
- import { hideOthers as Q } from "./index103.js";
15
- import { createSlot as X } from "./index105.js";
16
- import { jsx as i, jsxs as P, Fragment as O } from "react/jsx-runtime";
17
- var v = "Dialog", [I, Ne] = V(v), [ee, u] = I(v), x = (e) => {
2
+ import { useComposedRefs as B } from "./index78.js";
3
+ import { createContextScope as L } from "./index76.js";
4
+ import { composeEventHandlers as S } from "./index79.js";
5
+ import { useControllableState as O } from "./index80.js";
6
+ import { usePrevious as j } from "./index101.js";
7
+ import { useSize as H } from "./index102.js";
8
+ import { Presence as z } from "./index90.js";
9
+ import { Primitive as P } from "./index81.js";
10
+ import { jsx as b, jsxs as G, Fragment as K } from "react/jsx-runtime";
11
+ var g = "Checkbox", [U] = L(g), [X, E] = U(g);
12
+ function J(t) {
18
13
  const {
19
- __scopeDialog: o,
20
- children: n,
21
- open: a,
22
- defaultOpen: r,
23
- onOpenChange: t,
24
- modal: c = !0
25
- } = e, l = s.useRef(null), d = s.useRef(null), [g, C] = K({
26
- prop: a,
14
+ __scopeCheckbox: a,
15
+ checked: c,
16
+ children: u,
17
+ defaultChecked: r,
18
+ disabled: e,
19
+ form: p,
20
+ name: f,
21
+ onCheckedChange: i,
22
+ required: m,
23
+ value: C = "on",
24
+ // @ts-expect-error
25
+ internal_do_not_use_render: d
26
+ } = t, [l, v] = O({
27
+ prop: c,
27
28
  defaultProp: r ?? !1,
28
- onChange: t,
29
- caller: v
30
- });
31
- return /* @__PURE__ */ i(
32
- ee,
29
+ onChange: i,
30
+ caller: g
31
+ }), [k, x] = s.useState(null), [_, o] = s.useState(null), n = s.useRef(!1), I = k ? !!p || !!k.closest("form") : (
32
+ // We set this to true by default so that events bubble to forms without JS (SSR)
33
+ !0
34
+ ), R = {
35
+ checked: l,
36
+ disabled: e,
37
+ setChecked: v,
38
+ control: k,
39
+ setControl: x,
40
+ name: f,
41
+ form: p,
42
+ value: C,
43
+ hasConsumerStoppedPropagationRef: n,
44
+ required: m,
45
+ defaultChecked: h(r) ? !1 : r,
46
+ isFormControl: I,
47
+ bubbleInput: _,
48
+ setBubbleInput: o
49
+ };
50
+ return /* @__PURE__ */ b(
51
+ X,
33
52
  {
34
- scope: o,
35
- triggerRef: l,
36
- contentRef: d,
37
- contentId: R(),
38
- titleId: R(),
39
- descriptionId: R(),
40
- open: g,
41
- onOpenChange: C,
42
- onOpenToggle: s.useCallback(() => C((H) => !H), [C]),
43
- modal: c,
44
- children: n
53
+ scope: a,
54
+ ...R,
55
+ children: W(d) ? d(R) : u
45
56
  }
46
57
  );
47
- };
48
- x.displayName = v;
49
- var A = "DialogTrigger", T = s.forwardRef(
50
- (e, o) => {
51
- const { __scopeDialog: n, ...a } = e, r = u(A, n), t = _(o, r.triggerRef);
52
- return /* @__PURE__ */ i(
53
- m.button,
58
+ }
59
+ var N = "CheckboxTrigger", w = s.forwardRef(
60
+ ({ __scopeCheckbox: t, onKeyDown: a, onClick: c, ...u }, r) => {
61
+ const {
62
+ control: e,
63
+ value: p,
64
+ disabled: f,
65
+ checked: i,
66
+ required: m,
67
+ setControl: C,
68
+ setChecked: d,
69
+ hasConsumerStoppedPropagationRef: l,
70
+ isFormControl: v,
71
+ bubbleInput: k
72
+ } = E(N, t), x = B(r, C), _ = s.useRef(i);
73
+ return s.useEffect(() => {
74
+ const o = e == null ? void 0 : e.form;
75
+ if (o) {
76
+ const n = () => d(_.current);
77
+ return o.addEventListener("reset", n), () => o.removeEventListener("reset", n);
78
+ }
79
+ }, [e, d]), /* @__PURE__ */ b(
80
+ P.button,
54
81
  {
55
82
  type: "button",
56
- "aria-haspopup": "dialog",
57
- "aria-expanded": r.open,
58
- "aria-controls": r.contentId,
59
- "data-state": N(r.open),
60
- ...a,
61
- ref: t,
62
- onClick: p(e.onClick, r.onOpenToggle)
83
+ role: "checkbox",
84
+ "aria-checked": h(i) ? "mixed" : i,
85
+ "aria-required": m,
86
+ "data-state": A(i),
87
+ "data-disabled": f ? "" : void 0,
88
+ disabled: f,
89
+ value: p,
90
+ ...u,
91
+ ref: x,
92
+ onKeyDown: S(a, (o) => {
93
+ o.key === "Enter" && o.preventDefault();
94
+ }),
95
+ onClick: S(c, (o) => {
96
+ d((n) => h(n) ? !0 : !n), k && v && (l.current = o.isPropagationStopped(), l.current || o.stopPropagation());
97
+ })
63
98
  }
64
99
  );
65
100
  }
66
101
  );
67
- T.displayName = A;
68
- var E = "DialogPortal", [te, b] = I(E, {
69
- forceMount: void 0
70
- }), M = (e) => {
71
- const { __scopeDialog: o, forceMount: n, children: a, container: r } = e, t = u(E, o);
72
- return /* @__PURE__ */ i(te, { scope: o, forceMount: n, children: s.Children.map(a, (c) => /* @__PURE__ */ i(h, { present: n || t.open, children: /* @__PURE__ */ i(Z, { asChild: !0, container: r, children: c }) })) });
73
- };
74
- M.displayName = E;
75
- var D = "DialogOverlay", w = s.forwardRef(
76
- (e, o) => {
77
- const n = b(D, e.__scopeDialog), { forceMount: a = n.forceMount, ...r } = e, t = u(D, e.__scopeDialog);
78
- return t.modal ? /* @__PURE__ */ i(h, { present: a || t.open, children: /* @__PURE__ */ i(re, { ...r, ref: o }) }) : null;
79
- }
80
- );
81
- w.displayName = D;
82
- var oe = X("DialogOverlay.RemoveScroll"), re = s.forwardRef(
83
- (e, o) => {
84
- const { __scopeDialog: n, ...a } = e, r = u(D, n);
85
- return (
86
- // Make sure `Content` is scrollable even when it doesn't live inside `RemoveScroll`
87
- // ie. when `Overlay` and `Content` are siblings
88
- /* @__PURE__ */ i(J, { as: oe, allowPinchZoom: !0, shards: [r.contentRef], children: /* @__PURE__ */ i(
89
- m.div,
90
- {
91
- "data-state": N(r.open),
92
- ...a,
93
- ref: o,
94
- style: { pointerEvents: "auto", ...a.style }
95
- }
96
- ) })
97
- );
98
- }
99
- ), f = "DialogContent", S = s.forwardRef(
100
- (e, o) => {
101
- const n = b(f, e.__scopeDialog), { forceMount: a = n.forceMount, ...r } = e, t = u(f, e.__scopeDialog);
102
- return /* @__PURE__ */ i(h, { present: a || t.open, children: t.modal ? /* @__PURE__ */ i(ne, { ...r, ref: o }) : /* @__PURE__ */ i(ae, { ...r, ref: o }) });
103
- }
104
- );
105
- S.displayName = f;
106
- var ne = s.forwardRef(
107
- (e, o) => {
108
- const n = u(f, e.__scopeDialog), a = s.useRef(null), r = _(o, n.contentRef, a);
109
- return s.useEffect(() => {
110
- const t = a.current;
111
- if (t) return Q(t);
112
- }, []), /* @__PURE__ */ i(
113
- F,
102
+ w.displayName = N;
103
+ var Q = s.forwardRef(
104
+ (t, a) => {
105
+ const {
106
+ __scopeCheckbox: c,
107
+ name: u,
108
+ checked: r,
109
+ defaultChecked: e,
110
+ required: p,
111
+ disabled: f,
112
+ value: i,
113
+ onCheckedChange: m,
114
+ form: C,
115
+ ...d
116
+ } = t;
117
+ return /* @__PURE__ */ b(
118
+ J,
114
119
  {
115
- ...e,
116
- ref: r,
117
- trapFocus: n.open,
118
- disableOutsidePointerEvents: !0,
119
- onCloseAutoFocus: p(e.onCloseAutoFocus, (t) => {
120
- var c;
121
- t.preventDefault(), (c = n.triggerRef.current) == null || c.focus();
122
- }),
123
- onPointerDownOutside: p(e.onPointerDownOutside, (t) => {
124
- const c = t.detail.originalEvent, l = c.button === 0 && c.ctrlKey === !0;
125
- (c.button === 2 || l) && t.preventDefault();
126
- }),
127
- onFocusOutside: p(
128
- e.onFocusOutside,
129
- (t) => t.preventDefault()
130
- )
120
+ __scopeCheckbox: c,
121
+ checked: r,
122
+ defaultChecked: e,
123
+ disabled: f,
124
+ required: p,
125
+ onCheckedChange: m,
126
+ name: u,
127
+ form: C,
128
+ value: i,
129
+ internal_do_not_use_render: ({ isFormControl: l }) => /* @__PURE__ */ G(K, { children: [
130
+ /* @__PURE__ */ b(
131
+ w,
132
+ {
133
+ ...d,
134
+ ref: a,
135
+ __scopeCheckbox: c
136
+ }
137
+ ),
138
+ l && /* @__PURE__ */ b(
139
+ q,
140
+ {
141
+ __scopeCheckbox: c
142
+ }
143
+ )
144
+ ] })
131
145
  }
132
146
  );
133
147
  }
134
- ), ae = s.forwardRef(
135
- (e, o) => {
136
- const n = u(f, e.__scopeDialog), a = s.useRef(!1), r = s.useRef(!1);
137
- return /* @__PURE__ */ i(
138
- F,
148
+ );
149
+ Q.displayName = g;
150
+ var T = "CheckboxIndicator", V = s.forwardRef(
151
+ (t, a) => {
152
+ const { __scopeCheckbox: c, forceMount: u, ...r } = t, e = E(T, c);
153
+ return /* @__PURE__ */ b(
154
+ z,
139
155
  {
140
- ...e,
141
- ref: o,
142
- trapFocus: !1,
143
- disableOutsidePointerEvents: !1,
144
- onCloseAutoFocus: (t) => {
145
- var c, l;
146
- (c = e.onCloseAutoFocus) == null || c.call(e, t), t.defaultPrevented || (a.current || (l = n.triggerRef.current) == null || l.focus(), t.preventDefault()), a.current = !1, r.current = !1;
147
- },
148
- onInteractOutside: (t) => {
149
- var d, g;
150
- (d = e.onInteractOutside) == null || d.call(e, t), t.defaultPrevented || (a.current = !0, t.detail.originalEvent.type === "pointerdown" && (r.current = !0));
151
- const c = t.target;
152
- ((g = n.triggerRef.current) == null ? void 0 : g.contains(c)) && t.preventDefault(), t.detail.originalEvent.type === "focusin" && r.current && t.preventDefault();
153
- }
156
+ present: u || h(e.checked) || e.checked === !0,
157
+ children: /* @__PURE__ */ b(
158
+ P.span,
159
+ {
160
+ "data-state": A(e.checked),
161
+ "data-disabled": e.disabled ? "" : void 0,
162
+ ...r,
163
+ ref: a,
164
+ style: { pointerEvents: "none", ...t.style }
165
+ }
166
+ )
154
167
  }
155
168
  );
156
169
  }
157
- ), F = s.forwardRef(
158
- (e, o) => {
159
- const { __scopeDialog: n, trapFocus: a, onOpenAutoFocus: r, onCloseAutoFocus: t, ...c } = e, l = u(f, n), d = s.useRef(null), g = _(o, d);
160
- return z(), /* @__PURE__ */ P(O, { children: [
161
- /* @__PURE__ */ i(
162
- Y,
163
- {
164
- asChild: !0,
165
- loop: !0,
166
- trapped: a,
167
- onMountAutoFocus: r,
168
- onUnmountAutoFocus: t,
169
- children: /* @__PURE__ */ i(
170
- U,
171
- {
172
- role: "dialog",
173
- id: l.contentId,
174
- "aria-describedby": l.descriptionId,
175
- "aria-labelledby": l.titleId,
176
- "data-state": N(l.open),
177
- ...c,
178
- ref: g,
179
- onDismiss: () => l.onOpenChange(!1)
180
- }
181
- )
182
- }
183
- ),
184
- /* @__PURE__ */ P(O, { children: [
185
- /* @__PURE__ */ i(ie, { titleId: l.titleId }),
186
- /* @__PURE__ */ i(ce, { contentRef: d, descriptionId: l.descriptionId })
187
- ] })
188
- ] });
189
- }
190
- ), y = "DialogTitle", W = s.forwardRef(
191
- (e, o) => {
192
- const { __scopeDialog: n, ...a } = e, r = u(y, n);
193
- return /* @__PURE__ */ i(m.h2, { id: r.titleId, ...a, ref: o });
194
- }
195
170
  );
196
- W.displayName = y;
197
- var k = "DialogDescription", G = s.forwardRef(
198
- (e, o) => {
199
- const { __scopeDialog: n, ...a } = e, r = u(k, n);
200
- return /* @__PURE__ */ i(m.p, { id: r.descriptionId, ...a, ref: o });
201
- }
202
- );
203
- G.displayName = k;
204
- var L = "DialogClose", $ = s.forwardRef(
205
- (e, o) => {
206
- const { __scopeDialog: n, ...a } = e, r = u(L, n);
207
- return /* @__PURE__ */ i(
208
- m.button,
171
+ V.displayName = T;
172
+ var M = "CheckboxBubbleInput", q = s.forwardRef(
173
+ ({ __scopeCheckbox: t, ...a }, c) => {
174
+ const {
175
+ control: u,
176
+ hasConsumerStoppedPropagationRef: r,
177
+ checked: e,
178
+ defaultChecked: p,
179
+ required: f,
180
+ disabled: i,
181
+ name: m,
182
+ value: C,
183
+ form: d,
184
+ bubbleInput: l,
185
+ setBubbleInput: v
186
+ } = E(M, t), k = B(c, v), x = j(e), _ = H(u);
187
+ s.useEffect(() => {
188
+ const n = l;
189
+ if (!n) return;
190
+ const I = window.HTMLInputElement.prototype, y = Object.getOwnPropertyDescriptor(
191
+ I,
192
+ "checked"
193
+ ).set, D = !r.current;
194
+ if (x !== e && y) {
195
+ const F = new Event("click", { bubbles: D });
196
+ n.indeterminate = h(e), y.call(n, h(e) ? !1 : e), n.dispatchEvent(F);
197
+ }
198
+ }, [l, x, e, r]);
199
+ const o = s.useRef(h(e) ? !1 : e);
200
+ return /* @__PURE__ */ b(
201
+ P.input,
209
202
  {
210
- type: "button",
203
+ type: "checkbox",
204
+ "aria-hidden": !0,
205
+ defaultChecked: p ?? o.current,
206
+ required: f,
207
+ disabled: i,
208
+ name: m,
209
+ value: C,
210
+ form: d,
211
211
  ...a,
212
- ref: o,
213
- onClick: p(e.onClick, () => r.onOpenChange(!1))
212
+ tabIndex: -1,
213
+ ref: k,
214
+ style: {
215
+ ...a.style,
216
+ ..._,
217
+ position: "absolute",
218
+ pointerEvents: "none",
219
+ opacity: 0,
220
+ margin: 0,
221
+ // We transform because the input is absolutely positioned but we have
222
+ // rendered it **after** the button. This pulls it back to sit on top
223
+ // of the button.
224
+ transform: "translateX(-100%)"
225
+ }
214
226
  }
215
227
  );
216
228
  }
217
229
  );
218
- $.displayName = L;
219
- function N(e) {
220
- return e ? "open" : "closed";
230
+ q.displayName = M;
231
+ function W(t) {
232
+ return typeof t == "function";
233
+ }
234
+ function h(t) {
235
+ return t === "indeterminate";
236
+ }
237
+ function A(t) {
238
+ return h(t) ? "indeterminate" : t ? "checked" : "unchecked";
221
239
  }
222
- var B = "DialogTitleWarning", [Pe, j] = q(B, {
223
- contentName: f,
224
- titleName: y,
225
- docsSlug: "dialog"
226
- }), ie = ({ titleId: e }) => {
227
- const o = j(B), n = `\`${o.contentName}\` requires a \`${o.titleName}\` for the component to be accessible for screen reader users.
228
-
229
- If you want to hide the \`${o.titleName}\`, you can wrap it with our VisuallyHidden component.
230
-
231
- For more information, see https://radix-ui.com/primitives/docs/components/${o.docsSlug}`;
232
- return s.useEffect(() => {
233
- e && (document.getElementById(e) || console.error(n));
234
- }, [n, e]), null;
235
- }, se = "DialogDescriptionWarning", ce = ({ contentRef: e, descriptionId: o }) => {
236
- const a = `Warning: Missing \`Description\` or \`aria-describedby={undefined}\` for {${j(se).contentName}}.`;
237
- return s.useEffect(() => {
238
- var t;
239
- const r = (t = e.current) == null ? void 0 : t.getAttribute("aria-describedby");
240
- o && r && (document.getElementById(o) || console.warn(a));
241
- }, [a, e, o]), null;
242
- }, Oe = x, Ie = T, xe = M, Ae = w, Te = S, be = W, Me = G, we = $;
243
240
  export {
244
- we as Close,
245
- Te as Content,
246
- Me as Description,
247
- x as Dialog,
248
- $ as DialogClose,
249
- S as DialogContent,
250
- G as DialogDescription,
251
- w as DialogOverlay,
252
- M as DialogPortal,
253
- W as DialogTitle,
254
- T as DialogTrigger,
255
- Ae as Overlay,
256
- xe as Portal,
257
- Oe as Root,
258
- be as Title,
259
- Ie as Trigger,
260
- Pe as WarningProvider,
261
- Ne as createDialogScope
241
+ Q as Checkbox,
242
+ V as CheckboxIndicator,
243
+ V as Indicator,
244
+ Q as Root,
245
+ q as unstable_BubbleInput,
246
+ q as unstable_CheckboxBubbleInput,
247
+ J as unstable_CheckboxProvider,
248
+ w as unstable_CheckboxTrigger,
249
+ J as unstable_Provider,
250
+ w as unstable_Trigger
262
251
  };