@drjoshcsimmons/scl 0.2.3 → 0.2.5

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 (105) hide show
  1. package/dist/index100.js +205 -167
  2. package/dist/index101.js +14 -9
  3. package/dist/index102.js +47 -29
  4. package/dist/index103.js +49 -47
  5. package/dist/index104.js +9 -4
  6. package/dist/index105.js +1 -1
  7. package/dist/index106.js +649 -5
  8. package/dist/index107.js +12 -647
  9. package/dist/index108.js +4 -30
  10. package/dist/index109.js +9 -30
  11. package/dist/index11.js +2 -2
  12. package/dist/index110.js +30 -15
  13. package/dist/index111.js +47 -24
  14. package/dist/index112.js +30 -9
  15. package/dist/index113.js +48 -6
  16. package/dist/index114.js +6 -48
  17. package/dist/index115.js +1 -1
  18. package/dist/index116.js +1 -1
  19. package/dist/index118.js +1 -1
  20. package/dist/index12.js +1 -1
  21. package/dist/index124.js +1 -1
  22. package/dist/index13.js +2 -2
  23. package/dist/index142.js +1 -1
  24. package/dist/index143.js +1 -1
  25. package/dist/index148.js +11 -21
  26. package/dist/index149.js +26 -11
  27. package/dist/index15.js +2 -2
  28. package/dist/index150.js +4 -27
  29. package/dist/index151.js +22 -4
  30. package/dist/index17.js +4 -4
  31. package/dist/index18.js +2 -2
  32. package/dist/index20.js +2 -2
  33. package/dist/index21.js +1 -1
  34. package/dist/index22.js +1 -1
  35. package/dist/index23.js +2 -2
  36. package/dist/index24.js +1 -1
  37. package/dist/index25.js +4 -4
  38. package/dist/index26.js +1 -1
  39. package/dist/index27.js +3 -3
  40. package/dist/index29.js +1 -1
  41. package/dist/index31.js +1 -1
  42. package/dist/index33.js +1 -1
  43. package/dist/index36.js +2 -2
  44. package/dist/index37.js +1 -1
  45. package/dist/index4.js +2 -2
  46. package/dist/index45.js +124 -32
  47. package/dist/index46.js +33 -73
  48. package/dist/index47.js +244 -55
  49. package/dist/index48.js +9 -237
  50. package/dist/index49.js +73 -11
  51. package/dist/index5.js +1 -1
  52. package/dist/index50.js +210 -214
  53. package/dist/index51.js +11 -82
  54. package/dist/index52.js +52 -246
  55. package/dist/index53.js +12 -118
  56. package/dist/index54.js +16 -159
  57. package/dist/index55.js +103 -321
  58. package/dist/index56.js +71 -249
  59. package/dist/index57.js +241 -12
  60. package/dist/index58.js +204 -828
  61. package/dist/index59.js +5 -3
  62. package/dist/index6.js +1 -1
  63. package/dist/index60.js +130 -9
  64. package/dist/index61.js +248 -219
  65. package/dist/index62.js +260 -11
  66. package/dist/index63.js +5 -4
  67. package/dist/index64.js +225 -12
  68. package/dist/index65.js +11 -530
  69. package/dist/index66.js +27 -18
  70. package/dist/index67.js +5 -5
  71. package/dist/index69.js +530 -18
  72. package/dist/index7.js +1 -1
  73. package/dist/index70.js +855 -26
  74. package/dist/index71.js +9 -236
  75. package/dist/index72.js +308 -407
  76. package/dist/index73.js +402 -216
  77. package/dist/index74.js +147 -111
  78. package/dist/index75.js +21 -129
  79. package/dist/index76.js +24 -52
  80. package/dist/index77.js +67 -10
  81. package/dist/index78.js +7 -4
  82. package/dist/index79.js +52 -30
  83. package/dist/index8.js +1 -1
  84. package/dist/index80.js +5 -12
  85. package/dist/index81.js +24 -67
  86. package/dist/index82.js +66 -43
  87. package/dist/index83.js +32 -25
  88. package/dist/index84.js +8 -6
  89. package/dist/index85.js +52 -49
  90. package/dist/index86.js +10 -33
  91. package/dist/index87.js +4 -11
  92. package/dist/index88.js +30 -8
  93. package/dist/index89.js +11 -123
  94. package/dist/index9.js +2 -2
  95. package/dist/index90.js +45 -14
  96. package/dist/index91.js +10 -134
  97. package/dist/index92.js +7 -218
  98. package/dist/index93.js +30 -14
  99. package/dist/index94.js +51 -65
  100. package/dist/index95.js +29 -47
  101. package/dist/index96.js +179 -48
  102. package/dist/index97.js +124 -8
  103. package/dist/index98.js +12 -52
  104. package/dist/index99.js +134 -29
  105. package/package.json +1 -1
package/dist/index99.js CHANGED
@@ -1,32 +1,137 @@
1
- import * as f from "react";
2
- import "react-dom";
3
- import { createSlot as l } from "./index47.js";
4
- import { jsx as n } from "react/jsx-runtime";
5
- var u = [
6
- "a",
7
- "button",
8
- "div",
9
- "form",
10
- "h2",
11
- "h3",
12
- "img",
13
- "input",
14
- "label",
15
- "li",
16
- "nav",
17
- "ol",
18
- "p",
19
- "select",
20
- "span",
21
- "svg",
22
- "ul"
23
- ], w = u.reduce((t, i) => {
24
- const o = l(`Primitive.${i}`), r = f.forwardRef((e, m) => {
25
- const { asChild: a, ...p } = e, s = a ? o : i;
26
- return typeof window < "u" && (window[Symbol.for("radix-ui")] = !0), /* @__PURE__ */ n(s, { ...p, ref: m });
1
+ import * as d from "react";
2
+ import { useComposedRefs as R } from "./index76.js";
3
+ import { Primitive as M } from "./index83.js";
4
+ import { useCallbackRef as y } from "./index86.js";
5
+ import { jsx as _ } from "react/jsx-runtime";
6
+ var F = "focusScope.autoFocusOnMount", T = "focusScope.autoFocusOnUnmount", N = { bubbles: !1, cancelable: !0 }, K = "FocusScope", k = d.forwardRef((e, n) => {
7
+ const {
8
+ loop: t = !1,
9
+ trapped: u = !1,
10
+ onMountAutoFocus: p,
11
+ onUnmountAutoFocus: L,
12
+ ...g
13
+ } = e, [o, U] = d.useState(null), E = y(p), v = y(L), b = d.useRef(null), A = R(n, (s) => U(s)), a = d.useRef({
14
+ paused: !1,
15
+ pause() {
16
+ this.paused = !0;
17
+ },
18
+ resume() {
19
+ this.paused = !1;
20
+ }
21
+ }).current;
22
+ d.useEffect(() => {
23
+ if (u) {
24
+ let s = function(i) {
25
+ if (a.paused || !o) return;
26
+ const c = i.target;
27
+ o.contains(c) ? b.current = c : f(b.current, { select: !0 });
28
+ }, l = function(i) {
29
+ if (a.paused || !o) return;
30
+ const c = i.relatedTarget;
31
+ c !== null && (o.contains(c) || f(b.current, { select: !0 }));
32
+ }, r = function(i) {
33
+ if (document.activeElement === document.body)
34
+ for (const h of i)
35
+ h.removedNodes.length > 0 && f(o);
36
+ };
37
+ document.addEventListener("focusin", s), document.addEventListener("focusout", l);
38
+ const m = new MutationObserver(r);
39
+ return o && m.observe(o, { childList: !0, subtree: !0 }), () => {
40
+ document.removeEventListener("focusin", s), document.removeEventListener("focusout", l), m.disconnect();
41
+ };
42
+ }
43
+ }, [u, o, a.paused]), d.useEffect(() => {
44
+ if (o) {
45
+ S.add(a);
46
+ const s = document.activeElement;
47
+ if (!o.contains(s)) {
48
+ const r = new CustomEvent(F, N);
49
+ o.addEventListener(F, E), o.dispatchEvent(r), r.defaultPrevented || (w(W(I(o)), { select: !0 }), document.activeElement === s && f(o));
50
+ }
51
+ return () => {
52
+ o.removeEventListener(F, E), setTimeout(() => {
53
+ const r = new CustomEvent(T, N);
54
+ o.addEventListener(T, v), o.dispatchEvent(r), r.defaultPrevented || f(s ?? document.body, { select: !0 }), o.removeEventListener(T, v), S.remove(a);
55
+ }, 0);
56
+ };
57
+ }
58
+ }, [o, E, v, a]);
59
+ const P = d.useCallback(
60
+ (s) => {
61
+ if (!t && !u || a.paused) return;
62
+ const l = s.key === "Tab" && !s.altKey && !s.ctrlKey && !s.metaKey, r = document.activeElement;
63
+ if (l && r) {
64
+ const m = s.currentTarget, [i, c] = x(m);
65
+ i && c ? !s.shiftKey && r === c ? (s.preventDefault(), t && f(i, { select: !0 })) : s.shiftKey && r === i && (s.preventDefault(), t && f(c, { select: !0 })) : r === m && s.preventDefault();
66
+ }
67
+ },
68
+ [t, u, a.paused]
69
+ );
70
+ return /* @__PURE__ */ _(M.div, { tabIndex: -1, ...g, ref: A, onKeyDown: P });
71
+ });
72
+ k.displayName = K;
73
+ function w(e, { select: n = !1 } = {}) {
74
+ const t = document.activeElement;
75
+ for (const u of e)
76
+ if (f(u, { select: n }), document.activeElement !== t) return;
77
+ }
78
+ function x(e) {
79
+ const n = I(e), t = O(n, e), u = O(n.reverse(), e);
80
+ return [t, u];
81
+ }
82
+ function I(e) {
83
+ const n = [], t = document.createTreeWalker(e, NodeFilter.SHOW_ELEMENT, {
84
+ acceptNode: (u) => {
85
+ const p = u.tagName === "INPUT" && u.type === "hidden";
86
+ return u.disabled || u.hidden || p ? NodeFilter.FILTER_SKIP : u.tabIndex >= 0 ? NodeFilter.FILTER_ACCEPT : NodeFilter.FILTER_SKIP;
87
+ }
27
88
  });
28
- return r.displayName = `Primitive.${i}`, { ...t, [i]: r };
29
- }, {});
89
+ for (; t.nextNode(); ) n.push(t.currentNode);
90
+ return n;
91
+ }
92
+ function O(e, n) {
93
+ for (const t of e)
94
+ if (!D(t, { upTo: n })) return t;
95
+ }
96
+ function D(e, { upTo: n }) {
97
+ if (getComputedStyle(e).visibility === "hidden") return !0;
98
+ for (; e; ) {
99
+ if (n !== void 0 && e === n) return !1;
100
+ if (getComputedStyle(e).display === "none") return !0;
101
+ e = e.parentElement;
102
+ }
103
+ return !1;
104
+ }
105
+ function H(e) {
106
+ return e instanceof HTMLInputElement && "select" in e;
107
+ }
108
+ function f(e, { select: n = !1 } = {}) {
109
+ if (e && e.focus) {
110
+ const t = document.activeElement;
111
+ e.focus({ preventScroll: !0 }), e !== t && H(e) && n && e.select();
112
+ }
113
+ }
114
+ var S = V();
115
+ function V() {
116
+ let e = [];
117
+ return {
118
+ add(n) {
119
+ const t = e[0];
120
+ n !== t && (t == null || t.pause()), e = C(e, n), e.unshift(n);
121
+ },
122
+ remove(n) {
123
+ var t;
124
+ e = C(e, n), (t = e[0]) == null || t.resume();
125
+ }
126
+ };
127
+ }
128
+ function C(e, n) {
129
+ const t = [...e], u = t.indexOf(n);
130
+ return u !== -1 && t.splice(u, 1), t;
131
+ }
132
+ function W(e) {
133
+ return e.filter((n) => n.tagName !== "A");
134
+ }
30
135
  export {
31
- w as Primitive
136
+ k as FocusScope
32
137
  };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@drjoshcsimmons/scl",
3
- "version": "0.2.3",
3
+ "version": "0.2.5",
4
4
  "description": "A retro terminal-themed React component library built on Radix and Tailwind",
5
5
  "keywords": [
6
6
  "react",