@datawire-ai/busyfile-design-library 1.31.0 → 1.31.1

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 (69) hide show
  1. package/dist/index100.js +125 -5
  2. package/dist/index101.js +126 -60
  3. package/dist/index102.js +13 -124
  4. package/dist/index103.js +15 -10
  5. package/dist/index104.js +8 -219
  6. package/dist/index105.js +50 -15
  7. package/dist/index106.js +219 -29
  8. package/dist/index107.js +30 -4
  9. package/dist/index108.js +14 -46
  10. package/dist/index109.js +8 -13
  11. package/dist/index110.js +4 -136
  12. package/dist/index111.js +13 -50
  13. package/dist/index112.js +4 -9
  14. package/dist/index113.js +46 -14
  15. package/dist/index116.js +15 -15
  16. package/dist/index12.js +150 -85
  17. package/dist/index121.js +12 -6
  18. package/dist/index122.js +204 -10
  19. package/dist/index123.js +20 -204
  20. package/dist/index124.js +399 -21
  21. package/dist/index125.js +6 -400
  22. package/dist/index126.js +25 -2
  23. package/dist/index127.js +29 -53
  24. package/dist/index128.js +5 -65
  25. package/dist/index129.js +2 -25
  26. package/dist/index130.js +53 -29
  27. package/dist/index131.js +65 -5
  28. package/dist/index200.js +5 -2
  29. package/dist/index201.js +3 -2
  30. package/dist/index202.js +21 -522
  31. package/dist/index203.js +109 -127
  32. package/dist/index204.js +15 -133
  33. package/dist/index205.js +525 -5
  34. package/dist/index206.js +128 -3
  35. package/dist/index207.js +132 -22
  36. package/dist/index208.js +2 -110
  37. package/dist/index209.js +2 -16
  38. package/dist/index26.js +31 -17
  39. package/dist/index268.js +69 -65
  40. package/dist/index269.js +8 -68
  41. package/dist/index270.js +14 -9
  42. package/dist/index271.js +66 -14
  43. package/dist/index272.js +64 -65
  44. package/dist/index42.js +6 -6
  45. package/dist/index44.js +8 -8
  46. package/dist/index46.js +7 -7
  47. package/dist/index49.js +12 -12
  48. package/dist/index52.js +10 -10
  49. package/dist/index53.js +17 -17
  50. package/dist/index59.js +5 -5
  51. package/dist/index63.js +1 -1
  52. package/dist/index74.js +1 -1
  53. package/dist/index75.js +7 -7
  54. package/dist/index82.js +18 -18
  55. package/dist/index85.js +13 -13
  56. package/dist/index86.js +3 -3
  57. package/dist/index87.js +5 -5
  58. package/dist/index90.js +67 -33
  59. package/dist/index91.js +5 -66
  60. package/dist/index92.js +51 -10
  61. package/dist/index93.js +6 -4
  62. package/dist/index94.js +24 -12
  63. package/dist/index95.js +68 -5
  64. package/dist/index96.js +33 -181
  65. package/dist/index97.js +178 -48
  66. package/dist/index99.js +10 -24
  67. package/dist/style.css +1 -1
  68. package/dist/types/index.d.ts +9 -4
  69. package/package.json +1 -1
package/dist/index109.js CHANGED
@@ -1,18 +1,13 @@
1
- "use client";
2
1
  import * as r from "react";
3
- var t = 0;
4
- function a() {
5
- r.useEffect(() => {
6
- const e = document.querySelectorAll("[data-radix-focus-guard]");
7
- return document.body.insertAdjacentElement("afterbegin", e[0] ?? n()), document.body.insertAdjacentElement("beforeend", e[1] ?? n()), t++, () => {
8
- t === 1 && document.querySelectorAll("[data-radix-focus-guard]").forEach((o) => o.remove()), t--;
9
- };
2
+ function o(t) {
3
+ const e = r.useRef(t);
4
+ return r.useEffect(() => {
5
+ e.current = t;
6
+ }), r.useMemo(() => (...n) => {
7
+ var u;
8
+ return (u = e.current) == null ? void 0 : u.call(e, ...n);
10
9
  }, []);
11
10
  }
12
- function n() {
13
- const e = document.createElement("span");
14
- return e.setAttribute("data-radix-focus-guard", ""), e.tabIndex = 0, e.style.outline = "none", e.style.opacity = "0", e.style.position = "fixed", e.style.pointerEvents = "none", e;
15
- }
16
11
  export {
17
- a as useFocusGuards
12
+ o as useCallbackRef
18
13
  };
package/dist/index110.js CHANGED
@@ -1,138 +1,6 @@
1
- "use client";
2
- import * as d from "react";
3
- import { useComposedRefs as R } from "./index89.js";
4
- import { Primitive as M } from "./index90.js";
5
- import { useCallbackRef as y } from "./index92.js";
6
- import { jsx as _ } from "react/jsx-runtime";
7
- var F = "focusScope.autoFocusOnMount", T = "focusScope.autoFocusOnUnmount", N = { bubbles: !1, cancelable: !0 }, K = "FocusScope", k = d.forwardRef((e, n) => {
8
- const {
9
- loop: t = !1,
10
- trapped: u = !1,
11
- onMountAutoFocus: p,
12
- onUnmountAutoFocus: L,
13
- ...g
14
- } = 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({
15
- paused: !1,
16
- pause() {
17
- this.paused = !0;
18
- },
19
- resume() {
20
- this.paused = !1;
21
- }
22
- }).current;
23
- d.useEffect(() => {
24
- if (u) {
25
- let s = function(i) {
26
- if (a.paused || !o) return;
27
- const c = i.target;
28
- o.contains(c) ? b.current = c : f(b.current, { select: !0 });
29
- }, l = function(i) {
30
- if (a.paused || !o) return;
31
- const c = i.relatedTarget;
32
- c !== null && (o.contains(c) || f(b.current, { select: !0 }));
33
- }, r = function(i) {
34
- if (document.activeElement === document.body)
35
- for (const h of i)
36
- h.removedNodes.length > 0 && f(o);
37
- };
38
- document.addEventListener("focusin", s), document.addEventListener("focusout", l);
39
- const m = new MutationObserver(r);
40
- return o && m.observe(o, { childList: !0, subtree: !0 }), () => {
41
- document.removeEventListener("focusin", s), document.removeEventListener("focusout", l), m.disconnect();
42
- };
43
- }
44
- }, [u, o, a.paused]), d.useEffect(() => {
45
- if (o) {
46
- S.add(a);
47
- const s = document.activeElement;
48
- if (!o.contains(s)) {
49
- const r = new CustomEvent(F, N);
50
- o.addEventListener(F, E), o.dispatchEvent(r), r.defaultPrevented || (w(W(I(o)), { select: !0 }), document.activeElement === s && f(o));
51
- }
52
- return () => {
53
- o.removeEventListener(F, E), setTimeout(() => {
54
- const r = new CustomEvent(T, N);
55
- o.addEventListener(T, v), o.dispatchEvent(r), r.defaultPrevented || f(s ?? document.body, { select: !0 }), o.removeEventListener(T, v), S.remove(a);
56
- }, 0);
57
- };
58
- }
59
- }, [o, E, v, a]);
60
- const P = d.useCallback(
61
- (s) => {
62
- if (!t && !u || a.paused) return;
63
- const l = s.key === "Tab" && !s.altKey && !s.ctrlKey && !s.metaKey, r = document.activeElement;
64
- if (l && r) {
65
- const m = s.currentTarget, [i, c] = x(m);
66
- 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();
67
- }
68
- },
69
- [t, u, a.paused]
70
- );
71
- return /* @__PURE__ */ _(M.div, { tabIndex: -1, ...g, ref: A, onKeyDown: P });
72
- });
73
- k.displayName = K;
74
- function w(e, { select: n = !1 } = {}) {
75
- const t = document.activeElement;
76
- for (const u of e)
77
- if (f(u, { select: n }), document.activeElement !== t) return;
78
- }
79
- function x(e) {
80
- const n = I(e), t = O(n, e), u = O(n.reverse(), e);
81
- return [t, u];
82
- }
83
- function I(e) {
84
- const n = [], t = document.createTreeWalker(e, NodeFilter.SHOW_ELEMENT, {
85
- acceptNode: (u) => {
86
- const p = u.tagName === "INPUT" && u.type === "hidden";
87
- return u.disabled || u.hidden || p ? NodeFilter.FILTER_SKIP : u.tabIndex >= 0 ? NodeFilter.FILTER_ACCEPT : NodeFilter.FILTER_SKIP;
88
- }
89
- });
90
- for (; t.nextNode(); ) n.push(t.currentNode);
91
- return n;
92
- }
93
- function O(e, n) {
94
- for (const t of e)
95
- if (!D(t, { upTo: n })) return t;
96
- }
97
- function D(e, { upTo: n }) {
98
- if (getComputedStyle(e).visibility === "hidden") return !0;
99
- for (; e; ) {
100
- if (n !== void 0 && e === n) return !1;
101
- if (getComputedStyle(e).display === "none") return !0;
102
- e = e.parentElement;
103
- }
104
- return !1;
105
- }
106
- function H(e) {
107
- return e instanceof HTMLInputElement && "select" in e;
108
- }
109
- function f(e, { select: n = !1 } = {}) {
110
- if (e && e.focus) {
111
- const t = document.activeElement;
112
- e.focus({ preventScroll: !0 }), e !== t && H(e) && n && e.select();
113
- }
114
- }
115
- var S = V();
116
- function V() {
117
- let e = [];
118
- return {
119
- add(n) {
120
- const t = e[0];
121
- n !== t && (t == null || t.pause()), e = C(e, n), e.unshift(n);
122
- },
123
- remove(n) {
124
- var t;
125
- e = C(e, n), (t = e[0]) == null || t.resume();
126
- }
127
- };
128
- }
129
- function C(e, n) {
130
- const t = [...e], u = t.indexOf(n);
131
- return u !== -1 && t.splice(u, 1), t;
132
- }
133
- function W(e) {
134
- return e.filter((n) => n.tagName !== "A");
135
- }
1
+ import * as t from "react";
2
+ var e = globalThis != null && globalThis.document ? t.useLayoutEffect : () => {
3
+ };
136
4
  export {
137
- k as FocusScope
5
+ e as useLayoutEffect
138
6
  };
package/dist/index111.js CHANGED
@@ -1,52 +1,15 @@
1
- var S = function(r) {
2
- if (typeof document > "u")
3
- return null;
4
- var u = Array.isArray(r) ? r[0] : r;
5
- return u.ownerDocument.body;
6
- }, f = /* @__PURE__ */ new WeakMap(), v = /* @__PURE__ */ new WeakMap(), p = {}, h = 0, W = function(r) {
7
- return r && (r.host || W(r.parentNode));
8
- }, D = function(r, u) {
9
- return u.map(function(e) {
10
- if (r.contains(e))
11
- return e;
12
- var n = W(e);
13
- return n && r.contains(n) ? n : (console.error("aria-hidden", e, "in not contained inside", r, ". Doing nothing"), null);
14
- }).filter(function(e) {
15
- return !!e;
16
- });
17
- }, E = function(r, u, e, n) {
18
- var i = D(u, Array.isArray(r) ? r : [r]);
19
- p[e] || (p[e] = /* @__PURE__ */ new WeakMap());
20
- var s = p[e], l = [], o = /* @__PURE__ */ new Set(), b = new Set(i), y = function(t) {
21
- !t || o.has(t) || (o.add(t), y(t.parentNode));
22
- };
23
- i.forEach(y);
24
- var A = function(t) {
25
- !t || b.has(t) || Array.prototype.forEach.call(t.children, function(a) {
26
- if (o.has(a))
27
- A(a);
28
- else
29
- try {
30
- var c = a.getAttribute(n), w = c !== null && c !== "false", d = (f.get(a) || 0) + 1, M = (s.get(a) || 0) + 1;
31
- f.set(a, d), s.set(a, M), l.push(a), d === 1 && w && v.set(a, !0), M === 1 && a.setAttribute(e, "true"), w || a.setAttribute(n, "true");
32
- } catch (k) {
33
- console.error("aria-hidden: cannot operate on ", a, k);
34
- }
35
- });
36
- };
37
- return A(u), o.clear(), h++, function() {
38
- l.forEach(function(t) {
39
- var a = f.get(t) - 1, c = s.get(t) - 1;
40
- f.set(t, a), s.set(t, c), a || (v.has(t) || t.removeAttribute(n), v.delete(t)), c || t.removeAttribute(e);
41
- }), h--, h || (f = /* @__PURE__ */ new WeakMap(), f = /* @__PURE__ */ new WeakMap(), v = /* @__PURE__ */ new WeakMap(), p = {});
42
- };
43
- }, C = function(r, u, e) {
44
- e === void 0 && (e = "data-aria-hidden");
45
- var n = Array.from(Array.isArray(r) ? r : [r]), i = S(r);
46
- return i ? (n.push.apply(n, Array.from(i.querySelectorAll("[aria-live], script"))), E(n, i, e, "aria-hidden")) : function() {
47
- return null;
48
- };
49
- };
1
+ import { s as r } from "./index125.js";
2
+ function s() {
3
+ return r.useSyncExternalStore(
4
+ e,
5
+ () => !0,
6
+ () => !1
7
+ );
8
+ }
9
+ function e() {
10
+ return () => {
11
+ };
12
+ }
50
13
  export {
51
- C as hideOthers
14
+ s as useIsHydrated
52
15
  };
package/dist/index112.js CHANGED
@@ -1,11 +1,6 @@
1
- import { __assign as m } from "./index129.js";
2
- import * as r from "react";
3
- import { RemoveScroll as e } from "./index130.js";
4
- import t from "./index131.js";
5
- var s = r.forwardRef(function(a, o) {
6
- return r.createElement(e, m({}, a, { ref: o, sideCar: t }));
7
- });
8
- s.classNames = e.classNames;
1
+ function m(t, [a, n]) {
2
+ return Math.min(n, Math.max(a, t));
3
+ }
9
4
  export {
10
- s as default
5
+ m as clamp
11
6
  };
package/dist/index113.js CHANGED
@@ -1,17 +1,49 @@
1
- var m = 1, j = 0.9, k = 0.8, B = 0.17, v = 0.1, w = 0.999, D = 0.9999, G = 0.99, H = /[\\\/_+.#"@\[\(\{&]/, J = /[\\\/_+.#"@\[\(\{&]/g, K = /[\s-]/, A = /[\s-]/g;
2
- function $(t, o, e, i, n, h, u) {
3
- if (h === o.length) return n === t.length ? m : G;
4
- var s = `${n},${h}`;
5
- if (u[s] !== void 0) return u[s];
6
- for (var d = i.charAt(h), a = e.indexOf(d, n), l = 0, r, g, c, p; a >= 0; ) r = $(t, o, e, i, a + 1, h + 1, u), r > l && (a === n ? r *= m : H.test(t.charAt(a - 1)) ? (r *= k, c = t.slice(n, a - 1).match(J), c && n > 0 && (r *= Math.pow(w, c.length))) : K.test(t.charAt(a - 1)) ? (r *= j, p = t.slice(n, a - 1).match(A), p && n > 0 && (r *= Math.pow(w, p.length))) : (r *= B, n > 0 && (r *= Math.pow(w, a - n))), t.charAt(a) !== o.charAt(h) && (r *= D)), (r < v && e.charAt(a - 1) === i.charAt(h + 1) || i.charAt(h + 1) === i.charAt(h) && e.charAt(a - 1) !== i.charAt(h)) && (g = $(t, o, e, i, a + 1, h + 2, u), g * v > r && (r = g * v)), r > l && (l = r), a = e.indexOf(d, a + 1);
7
- return u[s] = l, l;
8
- }
9
- function x(t) {
10
- return t.toLowerCase().replace(A, " ");
11
- }
12
- function M(t, o, e) {
13
- return t = e && e.length > 0 ? `${t + " " + e.join(" ")}` : t, $(t, o, x(t), x(o), 0, 0, {});
1
+ "use client";
2
+ import r from "react";
3
+ import { createContextScope as y } from "./index90.js";
4
+ import { useComposedRefs as M } from "./index89.js";
5
+ import { createSlot as x } from "./index40.js";
6
+ import { jsx as u } from "react/jsx-runtime";
7
+ function g(s) {
8
+ const m = s + "CollectionProvider", [A, N] = y(m), [_, f] = A(
9
+ m,
10
+ { collectionRef: { current: null }, itemMap: /* @__PURE__ */ new Map() }
11
+ ), p = (c) => {
12
+ const { scope: e, children: l } = c, o = r.useRef(null), t = r.useRef(/* @__PURE__ */ new Map()).current;
13
+ return /* @__PURE__ */ u(_, { scope: e, itemMap: t, collectionRef: o, children: l });
14
+ };
15
+ p.displayName = m;
16
+ const a = s + "CollectionSlot", E = x(a), C = r.forwardRef(
17
+ (c, e) => {
18
+ const { scope: l, children: o } = c, t = f(a, l), n = M(e, t.collectionRef);
19
+ return /* @__PURE__ */ u(E, { ref: n, children: o });
20
+ }
21
+ );
22
+ C.displayName = a;
23
+ const d = s + "CollectionItemSlot", R = "data-radix-collection-item", T = x(d), I = r.forwardRef(
24
+ (c, e) => {
25
+ const { scope: l, children: o, ...t } = c, n = r.useRef(null), S = M(e, n), i = f(d, l);
26
+ return r.useEffect(() => (i.itemMap.set(n, { ref: n, ...t }), () => void i.itemMap.delete(n))), /* @__PURE__ */ u(T, { [R]: "", ref: S, children: o });
27
+ }
28
+ );
29
+ I.displayName = d;
30
+ function O(c) {
31
+ const e = f(s + "CollectionConsumer", c);
32
+ return r.useCallback(() => {
33
+ const o = e.collectionRef.current;
34
+ if (!o) return [];
35
+ const t = Array.from(o.querySelectorAll(`[${R}]`));
36
+ return Array.from(e.itemMap.values()).sort(
37
+ (i, v) => t.indexOf(i.ref.current) - t.indexOf(v.ref.current)
38
+ );
39
+ }, [e.collectionRef, e.itemMap]);
40
+ }
41
+ return [
42
+ { Provider: p, Slot: C, ItemSlot: I },
43
+ O,
44
+ N
45
+ ];
14
46
  }
15
47
  export {
16
- M as a
48
+ g as createCollection
17
49
  };
package/dist/index116.js CHANGED
@@ -1,23 +1,23 @@
1
1
  "use client";
2
2
  import * as r from "react";
3
- import { composeEventHandlers as h } from "./index95.js";
4
- import { createCollection as $e } from "./index108.js";
3
+ import { composeEventHandlers as h } from "./index91.js";
4
+ import { createCollection as $e } from "./index113.js";
5
5
  import { useComposedRefs as N, composeRefs as qe } from "./index89.js";
6
- import { createContextScope as Je } from "./index91.js";
6
+ import { createContextScope as Je } from "./index90.js";
7
7
  import { useDirection as Qe } from "./index98.js";
8
- import { DismissableLayer as et } from "./index102.js";
9
- import { useFocusGuards as tt } from "./index109.js";
10
- import { FocusScope as nt } from "./index110.js";
11
- import { useId as Me } from "./index103.js";
12
- import { createPopperScope as ve, Root as Ce, Anchor as ot, Content as rt, Arrow as ct } from "./index104.js";
13
- import { Portal as at } from "./index105.js";
14
- import { Presence as W } from "./index101.js";
15
- import { Primitive as F, dispatchDiscreteCustomEvent as st } from "./index90.js";
16
- import { createRovingFocusGroupScope as ge, Item as ut, Root as it } from "./index96.js";
8
+ import { DismissableLayer as et } from "./index100.js";
9
+ import { useFocusGuards as tt } from "./index103.js";
10
+ import { FocusScope as nt } from "./index101.js";
11
+ import { useId as Me } from "./index99.js";
12
+ import { createPopperScope as ve, Root as Ce, Anchor as ot, Content as rt, Arrow as ct } from "./index106.js";
13
+ import { Portal as at } from "./index102.js";
14
+ import { Presence as W } from "./index95.js";
15
+ import { Primitive as F, dispatchDiscreteCustomEvent as st } from "./index96.js";
16
+ import { createRovingFocusGroupScope as ge, Item as ut, Root as it } from "./index97.js";
17
17
  import { createSlot as lt } from "./index40.js";
18
- import { useCallbackRef as ee } from "./index92.js";
19
- import { hideOthers as dt } from "./index111.js";
20
- import ft from "./index112.js";
18
+ import { useCallbackRef as ee } from "./index109.js";
19
+ import { hideOthers as dt } from "./index105.js";
20
+ import ft from "./index104.js";
21
21
  import { jsx as u } from "react/jsx-runtime";
22
22
  var Q = ["Enter", " "], mt = ["ArrowDown", "PageUp", "Home"], _e = ["ArrowUp", "PageDown", "End"], pt = [...mt, ..._e], Mt = {
23
23
  ltr: [...Q, "ArrowRight"],
package/dist/index12.js CHANGED
@@ -1,109 +1,174 @@
1
- import { jsxs as u, jsx as n } from "react/jsx-runtime";
2
- import { useState as B, useMemo as M, useEffect as V } from "react";
3
- import { InputWithLabel as H } from "./index53.js";
4
- import { Select as L, SelectTrigger as q, SelectContent as z, SelectItem as F } from "./index33.js";
5
- import { cn as G } from "./index37.js";
6
- const Z = ({
7
- label: x = "Phone number",
8
- helperText: C,
9
- errorText: U,
10
- size: N = "medium",
11
- disabled: I,
12
- labelClassName: k,
13
- country: T,
14
- onCountryChange: $,
15
- countryOptions: d,
16
- showDialCode: m = !0,
17
- className: y,
18
- onValidityChange: o,
19
- includeDialCodeInValue: f = !0,
20
- ...t
1
+ import { jsxs as v, jsx as s } from "react/jsx-runtime";
2
+ import { useState as X, useMemo as x, useEffect as Y } from "react";
3
+ import { InputWithLabel as Z } from "./index53.js";
4
+ import { Select as G, SelectTrigger as J, SelectContent as O, SelectItem as Q } from "./index33.js";
5
+ import { cn as P } from "./index37.js";
6
+ const N = "US", $ = "+1";
7
+ function A(n) {
8
+ return n.replace(/\D/g, "");
9
+ }
10
+ function k(n) {
11
+ const l = (n ?? "").trim();
12
+ if (l.length === 0) return "Phone number is required";
13
+ const e = A(l);
14
+ if (l.startsWith("+")) {
15
+ if (e.length !== 11)
16
+ return "Phone number must have 11 digits including country code";
17
+ const o = e.slice(1), u = o.slice(0, 3), d = o.slice(3, 6);
18
+ return u[0] === "0" || u[0] === "1" ? "Invalid area code" : d[0] === "0" || d[0] === "1" ? "Invalid exchange code" : null;
19
+ }
20
+ return e.length !== 11 ? "Use format: +1 (XXX) XXX XXXX" : null;
21
+ }
22
+ function K(n) {
23
+ const l = (n ?? "").trim();
24
+ let e = A(l);
25
+ return l.startsWith("+") && e.startsWith("1") && (e = e.slice(1)), e.length >= 11 && e.startsWith("1") && (e = e.slice(1)), e.length > 10 && (e = e.slice(0, 10)), e;
26
+ }
27
+ function p(n) {
28
+ const l = n.slice(0, 10), e = l.slice(0, 3), c = l.slice(3, 6), o = l.slice(6, 10);
29
+ return l.length === 0 ? "" : l.length < 4 ? `(${e}` : l.length < 7 ? `(${e}) ${c}` : `(${e}) ${c}-${o}`;
30
+ }
31
+ function T(n, l) {
32
+ return n ? l ? `${$}${n}` : n : "";
33
+ }
34
+ function W(n) {
35
+ const l = typeof n == "string" ? n : Array.isArray(n) ? n.join("") : String(n ?? "");
36
+ return K(l);
37
+ }
38
+ function ee(n) {
39
+ const { key: l, ctrlKey: e, metaKey: c } = n;
40
+ return e || c || [
41
+ "Backspace",
42
+ "Delete",
43
+ "ArrowLeft",
44
+ "ArrowRight",
45
+ "ArrowUp",
46
+ "ArrowDown",
47
+ "Tab",
48
+ "Home",
49
+ "End",
50
+ "Enter"
51
+ ].includes(l) ? !0 : /^\d$/.test(l);
52
+ }
53
+ const se = ({
54
+ label: n = "Phone number",
55
+ helperText: l,
56
+ errorText: e,
57
+ size: c = "medium",
58
+ disabled: o,
59
+ labelClassName: u,
60
+ onCountryChange: d,
61
+ countryOptions: f,
62
+ showDialCode: S = !0,
63
+ className: L,
64
+ onValidityChange: h,
65
+ includeDialCodeInValue: V = !0,
66
+ requiredOnBlur: j = !1,
67
+ errorClassName: B,
68
+ ...r
21
69
  }) => {
22
- const [g, h] = B(!1), c = T || "US", a = M(
23
- () => d.find((e) => e.value === c) ?? {
24
- value: "US",
25
- label: "US",
26
- dialCode: "+1"
70
+ const [w, D] = X(!1), g = N, i = x(
71
+ () => f.find((t) => t.value === g) ?? {
72
+ value: N,
73
+ label: N,
74
+ dialCode: $
27
75
  },
28
- [d, c]
29
- ), v = (e) => {
30
- const r = (typeof e == "string" ? e : Array.isArray(e) ? e.join("") : String(e ?? "")).replace(/\D/g, "");
31
- return r.length === 11 && r.startsWith("1") ? !0 : r.length === 10;
32
- }, b = (e) => {
33
- const l = (a == null ? void 0 : a.dialCode) ?? "";
34
- if (!l) return e;
35
- const r = e.replace(/\D/g, ""), i = l.replace(/\D/g, "");
36
- return r.startsWith(i) ? `+${r}` : `${l}${r}`.replace(/^\+?/, "+");
37
- }, S = t.value ?? "";
38
- V(() => {
39
- if (!o) return;
40
- const e = c === "US" ? v(S) : !0;
41
- o(e);
42
- }, [c, S, o]);
43
- const D = /* @__PURE__ */ u(
44
- L,
76
+ [f, g]
77
+ ), y = r.value !== void 0, E = r.value ?? "", R = x(
78
+ () => W(E),
79
+ [E]
80
+ ), [q, H] = X(
81
+ () => W(
82
+ r.defaultValue ?? ""
83
+ )
84
+ ), m = y ? R : q, M = x(
85
+ () => p(m),
86
+ [m]
87
+ ), b = T(m, !0), _ = w ? k(b) : null, z = (j && w && m.length === 0 ? "Phone number is required" : _) ?? e;
88
+ Y(() => {
89
+ h && h(k(b) === null);
90
+ }, [b, h]);
91
+ const C = /* @__PURE__ */ v(
92
+ G,
45
93
  {
46
- value: c,
47
- onValueChange: $,
94
+ value: g,
95
+ onValueChange: (t) => d == null ? void 0 : d(t),
48
96
  disabled: !0,
49
97
  children: [
50
- /* @__PURE__ */ n(
51
- q,
98
+ /* @__PURE__ */ s(
99
+ J,
52
100
  {
53
- className: G(
101
+ className: P(
54
102
  "border-0 bg-transparent px-0 py-0 h-auto shadow-none focus-visible:ring-0 focus-visible:border-0 text-neutral-black-1",
55
103
  "min-w-14"
56
104
  ),
57
- children: /* @__PURE__ */ u("div", { className: "flex items-center gap-2", children: [
58
- (a == null ? void 0 : a.flag) && /* @__PURE__ */ n("span", { className: "flex-shrink-0", children: a.flag }),
59
- /* @__PURE__ */ n("span", { className: "text-sm text-neutral-black-1", children: (a == null ? void 0 : a.label) ?? c })
105
+ children: /* @__PURE__ */ v("div", { className: "flex items-center gap-2", children: [
106
+ (i == null ? void 0 : i.flag) && /* @__PURE__ */ s("span", { className: "flex-shrink-0", children: i.flag }),
107
+ /* @__PURE__ */ s("span", { className: "text-sm text-neutral-black-1", children: (i == null ? void 0 : i.label) ?? "US" }),
108
+ S && /* @__PURE__ */ s("span", { className: "text-sm text-neutral-black-3", children: (i == null ? void 0 : i.dialCode) ?? "+1" })
60
109
  ] })
61
110
  }
62
111
  ),
63
- /* @__PURE__ */ n(z, { className: "bg-white border border-neutral-black-4", children: d.map((e) => /* @__PURE__ */ n(F, { value: e.value, disabled: e.disabled, children: /* @__PURE__ */ u("span", { className: "flex items-center gap-2", children: [
64
- e.flag,
65
- /* @__PURE__ */ n("span", { children: e.label }),
66
- m && /* @__PURE__ */ n("span", { className: "text-neutral-black-3 ml-1", children: e.dialCode })
67
- ] }) }, e.value)) })
112
+ /* @__PURE__ */ s(O, { className: "bg-white border border-neutral-black-4", children: f.map((t) => /* @__PURE__ */ s(Q, { value: t.value, disabled: t.disabled, children: /* @__PURE__ */ v("span", { className: "flex items-center gap-2", children: [
113
+ t.flag,
114
+ /* @__PURE__ */ s("span", { children: t.label }),
115
+ S && /* @__PURE__ */ s("span", { className: "text-neutral-black-3 ml-1", children: t.dialCode })
116
+ ] }) }, t.value)) })
68
117
  ]
69
118
  }
70
- ), E = m && (a != null && a.dialCode) ? `${a.dialCode} ` : "", s = t.value, j = c === "US" && g && !!s && !v(s) ? "Enter a valid number" : U, W = f && typeof s == "string" ? b(s) : s;
71
- return /* @__PURE__ */ n(
72
- H,
119
+ );
120
+ return /* @__PURE__ */ s(
121
+ Z,
73
122
  {
74
- label: x,
75
- helperText: C,
76
- errorText: j,
77
- size: N,
78
- disabled: I,
79
- labelClassName: k,
80
- startSlot: D,
81
- className: y,
123
+ ...r,
124
+ label: n,
125
+ helperText: l,
126
+ errorText: z,
127
+ size: c,
128
+ disabled: o,
129
+ labelClassName: u,
130
+ startSlot: C,
131
+ errorClassName: B,
132
+ className: L,
82
133
  inputMode: "tel",
83
134
  type: "tel",
84
- placeholder: t.placeholder ?? `${E}(234) 567 8900`,
85
- value: W,
86
- onBlur: (e) => {
87
- var l;
88
- h(!0), (l = t.onBlur) == null || l.call(t, e);
135
+ placeholder: r.placeholder ?? "(234) 567-8900",
136
+ value: M,
137
+ maxLength: 15,
138
+ onKeyDown: (t) => {
139
+ var a;
140
+ ee(t) || t.preventDefault(), (a = r.onKeyDown) == null || a.call(r, t);
141
+ },
142
+ onPaste: (t) => {
143
+ var a;
144
+ (a = r.onPaste) == null || a.call(r, t);
89
145
  },
90
- onChange: (e) => {
91
- var l, r;
92
- if (g || h(!0), f) {
93
- const i = b(e.target.value), A = {
94
- ...e,
95
- target: { ...e.target, value: i },
96
- currentTarget: { ...e.currentTarget, value: i }
97
- };
98
- (l = t.onChange) == null || l.call(t, A);
99
- } else
100
- (r = t.onChange) == null || r.call(t, e);
146
+ onBlur: (t) => {
147
+ var a;
148
+ D(!0), (a = r.onBlur) == null || a.call(r, t);
101
149
  },
102
- ...t
150
+ onChange: (t) => {
151
+ var U;
152
+ D(!0);
153
+ const a = K(t.target.value);
154
+ y || H(a);
155
+ const I = T(
156
+ a,
157
+ V
158
+ ), F = {
159
+ ...t,
160
+ target: { ...t.target, value: I },
161
+ currentTarget: { ...t.currentTarget, value: I }
162
+ };
163
+ (U = r.onChange) == null || U.call(
164
+ r,
165
+ F
166
+ );
167
+ }
103
168
  }
104
169
  );
105
170
  };
106
171
  export {
107
- Z as PhoneInput,
108
- Z as default
172
+ se as PhoneInput,
173
+ se as default
109
174
  };
package/dist/index121.js CHANGED
@@ -1,8 +1,14 @@
1
- import { __module as r } from "./index126.js";
2
- import { __require as e } from "./index127.js";
3
- import { __require as o } from "./index128.js";
4
- process.env.NODE_ENV === "production" ? r.exports = e() : r.exports = o();
5
- var m = r.exports;
1
+ import * as r from "react";
2
+ import { useCallbackRef as s } from "./index109.js";
3
+ function p(n, e = globalThis == null ? void 0 : globalThis.document) {
4
+ const t = s(n);
5
+ r.useEffect(() => {
6
+ const o = (a) => {
7
+ a.key === "Escape" && t(a);
8
+ };
9
+ return e.addEventListener("keydown", o, { capture: !0 }), () => e.removeEventListener("keydown", o, { capture: !0 });
10
+ }, [t, e]);
11
+ }
6
12
  export {
7
- m as s
13
+ p as useEscapeKeydown
8
14
  };