@rpcbase/ui 0.261.0 → 0.262.0

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 (261) hide show
  1. package/dist/assets/sha256.worker-BEf4_Y9w.js.map +1 -0
  2. package/dist/components/FilesUploadField/index.d.ts +19 -6
  3. package/dist/components/FilesUploadField/index.d.ts.map +1 -1
  4. package/dist/components/FilesUploadField/sha256.d.ts +5 -0
  5. package/dist/components/FilesUploadField/sha256.d.ts.map +1 -0
  6. package/dist/components/FilesUploadField/sha256.worker.d.ts +4 -0
  7. package/dist/components/FilesUploadField/sha256.worker.d.ts.map +1 -0
  8. package/dist/components/ImagesField/index.d.ts +4 -2
  9. package/dist/components/ImagesField/index.d.ts.map +1 -1
  10. package/dist/index.js +10 -10
  11. package/dist/index298.js +11 -803
  12. package/dist/index298.js.map +1 -1
  13. package/dist/index299.js +865 -28
  14. package/dist/index299.js.map +1 -1
  15. package/dist/index300.js +26 -510
  16. package/dist/index300.js.map +1 -1
  17. package/dist/index301.js +481 -755
  18. package/dist/index301.js.map +1 -1
  19. package/dist/index302.js +786 -7428
  20. package/dist/index302.js.map +1 -1
  21. package/dist/index303.js +7429 -7
  22. package/dist/index303.js.map +1 -1
  23. package/dist/index304.js +6 -12
  24. package/dist/index304.js.map +1 -1
  25. package/dist/index305.js +12 -5
  26. package/dist/index305.js.map +1 -1
  27. package/dist/index306.js +3 -3
  28. package/dist/index306.js.map +1 -1
  29. package/dist/index307.js +5 -469
  30. package/dist/index307.js.map +1 -1
  31. package/dist/index308.js +464 -32
  32. package/dist/index308.js.map +1 -1
  33. package/dist/index309.js +36 -18
  34. package/dist/index309.js.map +1 -1
  35. package/dist/index310.js +17 -28
  36. package/dist/index310.js.map +1 -1
  37. package/dist/index311.js +30 -4
  38. package/dist/index311.js.map +1 -1
  39. package/dist/index312.js +4 -59
  40. package/dist/index312.js.map +1 -1
  41. package/dist/index313.js +59 -9
  42. package/dist/index313.js.map +1 -1
  43. package/dist/index314.js +9 -5
  44. package/dist/index314.js.map +1 -1
  45. package/dist/index315.js +5 -9
  46. package/dist/index315.js.map +1 -1
  47. package/dist/index316.js +9 -12
  48. package/dist/index316.js.map +1 -1
  49. package/dist/index317.js +13 -3
  50. package/dist/index317.js.map +1 -1
  51. package/dist/index318.js +3 -17
  52. package/dist/index318.js.map +1 -1
  53. package/dist/index319.js +14 -23
  54. package/dist/index319.js.map +1 -1
  55. package/dist/index320.js +23 -39
  56. package/dist/index320.js.map +1 -1
  57. package/dist/index321.js +41 -5
  58. package/dist/index321.js.map +1 -1
  59. package/dist/index322.js +5 -25
  60. package/dist/index322.js.map +1 -1
  61. package/dist/index323.js +24 -18
  62. package/dist/index323.js.map +1 -1
  63. package/dist/index324.js +17 -32
  64. package/dist/index324.js.map +1 -1
  65. package/dist/index325.js +34 -5
  66. package/dist/index325.js.map +1 -1
  67. package/dist/index326.js +5 -9
  68. package/dist/index326.js.map +1 -1
  69. package/dist/index327.js +8 -7
  70. package/dist/index327.js.map +1 -1
  71. package/dist/index328.js +8 -9
  72. package/dist/index328.js.map +1 -1
  73. package/dist/index329.js +9 -10
  74. package/dist/index329.js.map +1 -1
  75. package/dist/index330.js +10 -7
  76. package/dist/index330.js.map +1 -1
  77. package/dist/index331.js +7 -75
  78. package/dist/index331.js.map +1 -1
  79. package/dist/index332.js +66 -153
  80. package/dist/index332.js.map +1 -1
  81. package/dist/index333.js +147 -99
  82. package/dist/index333.js.map +1 -1
  83. package/dist/index334.js +113 -13
  84. package/dist/index334.js.map +1 -1
  85. package/dist/index335.js +12 -78
  86. package/dist/index335.js.map +1 -1
  87. package/dist/index336.js +57 -23
  88. package/dist/index336.js.map +1 -1
  89. package/dist/index337.js +45 -12
  90. package/dist/index337.js.map +1 -1
  91. package/dist/index338.js +13 -16
  92. package/dist/index338.js.map +1 -1
  93. package/dist/index339.js +15 -100
  94. package/dist/index339.js.map +1 -1
  95. package/dist/index340.js +95 -50
  96. package/dist/index340.js.map +1 -1
  97. package/dist/index341.js +5 -57
  98. package/dist/index341.js.map +1 -1
  99. package/dist/index342.js +78 -41
  100. package/dist/index342.js.map +1 -1
  101. package/dist/index343.js +58 -100
  102. package/dist/index343.js.map +1 -1
  103. package/dist/index344.js +104 -46
  104. package/dist/index344.js.map +1 -1
  105. package/dist/index345.js +51 -39
  106. package/dist/index345.js.map +1 -1
  107. package/dist/index346.js +42 -142
  108. package/dist/index346.js.map +1 -1
  109. package/dist/index347.js +123 -120
  110. package/dist/index347.js.map +1 -1
  111. package/dist/index348.js +108 -224
  112. package/dist/index348.js.map +1 -1
  113. package/dist/index349.js +174 -158
  114. package/dist/index349.js.map +1 -1
  115. package/dist/index350.js +144 -213
  116. package/dist/index350.js.map +1 -1
  117. package/dist/index351.js +309 -5
  118. package/dist/index351.js.map +1 -1
  119. package/dist/index352.js +5 -6
  120. package/dist/index352.js.map +1 -1
  121. package/dist/index353.js +6 -7
  122. package/dist/index353.js.map +1 -1
  123. package/dist/index354.js +5 -4
  124. package/dist/index354.js.map +1 -1
  125. package/dist/index355.js +4 -4
  126. package/dist/index355.js.map +1 -1
  127. package/dist/index356.js +6 -21
  128. package/dist/index356.js.map +1 -1
  129. package/dist/index357.js +21 -10
  130. package/dist/index357.js.map +1 -1
  131. package/dist/index358.js +10 -128
  132. package/dist/index358.js.map +1 -1
  133. package/dist/index359.js +122 -36
  134. package/dist/index359.js.map +1 -1
  135. package/dist/index360.js +38 -64
  136. package/dist/index360.js.map +1 -1
  137. package/dist/index361.js +66 -115
  138. package/dist/index361.js.map +1 -1
  139. package/dist/index362.js +112 -485
  140. package/dist/index362.js.map +1 -1
  141. package/dist/index363.js +490 -13
  142. package/dist/index363.js.map +1 -1
  143. package/dist/index364.js +13 -4
  144. package/dist/index364.js.map +1 -1
  145. package/dist/index365.js +4 -47
  146. package/dist/index365.js.map +1 -1
  147. package/dist/index366.js +44 -15
  148. package/dist/index366.js.map +1 -1
  149. package/dist/index367.js +19 -5
  150. package/dist/index367.js.map +1 -1
  151. package/dist/index368.js +5 -27
  152. package/dist/index368.js.map +1 -1
  153. package/dist/index369.js +27 -48
  154. package/dist/index369.js.map +1 -1
  155. package/dist/index370.js +46 -27
  156. package/dist/index370.js.map +1 -1
  157. package/dist/index371.js +27 -16
  158. package/dist/index371.js.map +1 -1
  159. package/dist/index372.js +16 -41
  160. package/dist/index372.js.map +1 -1
  161. package/dist/index373.js +42 -14
  162. package/dist/index373.js.map +1 -1
  163. package/dist/index374.js +14 -10
  164. package/dist/index374.js.map +1 -1
  165. package/dist/index375.js +9 -51
  166. package/dist/index375.js.map +1 -1
  167. package/dist/index376.js +53 -43
  168. package/dist/index376.js.map +1 -1
  169. package/dist/index377.js +43 -16
  170. package/dist/index377.js.map +1 -1
  171. package/dist/index378.js +15 -4
  172. package/dist/index378.js.map +1 -1
  173. package/dist/index379.js +4 -4
  174. package/dist/index379.js.map +1 -1
  175. package/dist/index380.js +4 -9
  176. package/dist/index380.js.map +1 -1
  177. package/dist/index381.js +9 -340
  178. package/dist/index381.js.map +1 -1
  179. package/dist/index382.js +339 -4
  180. package/dist/index382.js.map +1 -1
  181. package/dist/index383.js +5 -16
  182. package/dist/index383.js.map +1 -1
  183. package/dist/index384.js +16 -111
  184. package/dist/index384.js.map +1 -1
  185. package/dist/index385.js +109 -19
  186. package/dist/index385.js.map +1 -1
  187. package/dist/index386.js +18 -18
  188. package/dist/index386.js.map +1 -1
  189. package/dist/index387.js +21 -5
  190. package/dist/index387.js.map +1 -1
  191. package/dist/index388.js +5 -20
  192. package/dist/index388.js.map +1 -1
  193. package/dist/index389.js +19 -13
  194. package/dist/index389.js.map +1 -1
  195. package/dist/index390.js +13 -84
  196. package/dist/index390.js.map +1 -1
  197. package/dist/index391.js +84 -7
  198. package/dist/index391.js.map +1 -1
  199. package/dist/index392.js +9 -29
  200. package/dist/index392.js.map +1 -1
  201. package/dist/index393.js +28 -9
  202. package/dist/index393.js.map +1 -1
  203. package/dist/index394.js +9 -5
  204. package/dist/index394.js.map +1 -1
  205. package/dist/index395.js +6 -252
  206. package/dist/index395.js.map +1 -1
  207. package/dist/index396.js +250 -10
  208. package/dist/index396.js.map +1 -1
  209. package/dist/index397.js +11 -10
  210. package/dist/index397.js.map +1 -1
  211. package/dist/index398.js +10 -6
  212. package/dist/index398.js.map +1 -1
  213. package/dist/index399.js +6 -22
  214. package/dist/index399.js.map +1 -1
  215. package/dist/index400.js +21 -21
  216. package/dist/index400.js.map +1 -1
  217. package/dist/index401.js +21 -107
  218. package/dist/index401.js.map +1 -1
  219. package/dist/index402.js +109 -15
  220. package/dist/index402.js.map +1 -1
  221. package/dist/index403.js +15 -12
  222. package/dist/index403.js.map +1 -1
  223. package/dist/index404.js +10 -8
  224. package/dist/index404.js.map +1 -1
  225. package/dist/index405.js +8 -242
  226. package/dist/index405.js.map +1 -1
  227. package/dist/index406.js +238 -25
  228. package/dist/index406.js.map +1 -1
  229. package/dist/index407.js +29 -51
  230. package/dist/index407.js.map +1 -1
  231. package/dist/index408.js +51 -10
  232. package/dist/index408.js.map +1 -1
  233. package/dist/index409.js +11 -128
  234. package/dist/index409.js.map +1 -1
  235. package/dist/index410.js +124 -35
  236. package/dist/index410.js.map +1 -1
  237. package/dist/index411.js +36 -23
  238. package/dist/index411.js.map +1 -1
  239. package/dist/index412.js +26 -11
  240. package/dist/index412.js.map +1 -1
  241. package/dist/index413.js +11 -23
  242. package/dist/index413.js.map +1 -1
  243. package/dist/index414.js +19 -13
  244. package/dist/index414.js.map +1 -1
  245. package/dist/index415.js +14 -13
  246. package/dist/index415.js.map +1 -1
  247. package/dist/index416.js +14 -322
  248. package/dist/index416.js.map +1 -1
  249. package/dist/index417.js +323 -61
  250. package/dist/index417.js.map +1 -1
  251. package/dist/index418.js +63 -4
  252. package/dist/index418.js.map +1 -1
  253. package/dist/index419.js +4 -28
  254. package/dist/index419.js.map +1 -1
  255. package/dist/index420.js +25 -468
  256. package/dist/index420.js.map +1 -1
  257. package/dist/index421.js +452 -250
  258. package/dist/index421.js.map +1 -1
  259. package/dist/index422.js +272 -0
  260. package/dist/index422.js.map +1 -0
  261. package/package.json +2 -1
package/dist/index361.js CHANGED
@@ -1,121 +1,72 @@
1
- import { cn as e } from "./index12.js";
2
- import { c as t } from "react/compiler-runtime";
3
- import * as n from "react";
4
- import { Fragment as r, jsx as i, jsxs as a } from "react/jsx-runtime";
5
- //#region src/components/PhoneNumberInput/suggestions.tsx
6
- var o = n.createContext(null);
7
- function s(e, t) {
8
- if (typeof e == "function") {
9
- e(t);
10
- return;
11
- }
12
- e && typeof e == "object" && Reflect.set(e, "current", t);
1
+ //#region src/components/PhoneNumberInput/selection.ts
2
+ function e(e) {
3
+ if (!e) return !1;
4
+ let t = e.charCodeAt(0);
5
+ return t >= 48 && t <= 57;
6
+ }
7
+ function t(t, n) {
8
+ let r = 0, i = Math.min(n, t.length);
9
+ for (let n = 0; n < i; n += 1) e(t[n] ?? "") && (r += 1);
10
+ return r;
11
+ }
12
+ function n(t, n) {
13
+ if (n <= 0) return t.startsWith("+") ? Math.min(1, t.length) : 0;
14
+ let r = 0;
15
+ for (let i = 0; i < t.length; i += 1) if (e(t[i] ?? "") && (r += 1, r === n)) return i + 1;
16
+ return t.length;
17
+ }
18
+ function r(t) {
19
+ return !t || e(t) ? !1 : t !== "+";
13
20
  }
14
- var c = (r) => {
15
- let a = t(30), c = n.useContext(o), l = c?.highlightedValue === r.data.value, u, d, f;
16
- a[0] === r.innerProps ? (u = a[1], d = a[2], f = a[3]) : ({onMouseMove: u, className: d, ...f} = r.innerProps, a[0] = r.innerProps, a[1] = u, a[2] = d, a[3] = f);
17
- let m;
18
- a[4] === c?.renderOptionLabel ? m = a[5] : (m = c?.renderOptionLabel ?? p, a[4] = c?.renderOptionLabel, a[5] = m);
19
- let h = m, g = n.useRef(null), { innerRef: _ } = r, v;
20
- a[6] === _ ? v = a[7] : (v = (e) => {
21
- g.current = e, s(_, e);
22
- }, a[6] = _, a[7] = v);
23
- let y = v, b;
24
- a[8] !== c?.consumeScrollBehavior || a[9] !== l ? (b = () => {
25
- if (!l) return;
26
- let e = c?.consumeScrollBehavior, t = e ? e() : "smooth", n = g.current;
27
- if (!n) return;
28
- let r = n.parentElement;
29
- if (!r) return;
30
- let i = n.offsetTop, a = i + n.offsetHeight, o = r.scrollTop, s = o + r.clientHeight;
31
- i >= o && a <= s || n.scrollIntoView({
32
- block: "nearest",
33
- behavior: t
34
- });
35
- }, a[8] = c?.consumeScrollBehavior, a[9] = l, a[10] = b) : b = a[10];
36
- let x;
37
- a[11] !== c || a[12] !== l ? (x = [c, l], a[11] = c, a[12] = l, a[13] = x) : x = a[13], n.useEffect(b, x);
38
- let S;
39
- a[14] !== c || a[15] !== u || a[16] !== r.data ? (S = (e) => {
40
- u?.(e), c?.setHighlightedOption(r.data);
41
- }, a[14] = c, a[15] = u, a[16] = r.data, a[17] = S) : S = a[17];
42
- let C = S, w = l ? "bg-muted text-foreground" : "text-foreground hover:bg-muted", T;
43
- a[18] !== d || a[19] !== w ? (T = e("flex cursor-pointer items-center justify-between gap-3 px-3 py-2 text-sm", d, w), a[18] = d, a[19] = w, a[20] = T) : T = a[20];
44
- let E;
45
- a[21] !== r.data || a[22] !== h ? (E = h(r.data), a[21] = r.data, a[22] = h, a[23] = E) : E = a[23];
46
- let D;
47
- return a[24] !== y || a[25] !== C || a[26] !== f || a[27] !== T || a[28] !== E ? (D = /* @__PURE__ */ i("div", {
48
- ref: y,
49
- ...f,
50
- onMouseMove: C,
51
- className: T,
52
- children: E
53
- }), a[24] = y, a[25] = C, a[26] = f, a[27] = T, a[28] = E, a[29] = D) : D = a[29], D;
54
- }, l = {
55
- control: () => ({ display: "none" }),
56
- menu: (e) => ({
57
- ...e,
58
- marginTop: 4,
59
- borderRadius: "var(--radius)",
60
- boxShadow: "0 18px 36px rgba(15, 23, 42, 0.18)",
61
- backgroundColor: "hsl(var(--popover))",
62
- overflow: "hidden",
63
- zIndex: 20
64
- }),
65
- menuList: (e) => ({
66
- ...e,
67
- maxHeight: 240,
68
- padding: 0
69
- }),
70
- option: (e, t) => ({
71
- ...e,
72
- fontSize: "0.875rem",
73
- backgroundColor: t.isFocused ? "hsl(var(--muted))" : t.isSelected ? "hsl(var(--accent))" : "transparent",
74
- color: t.isSelected ? "hsl(var(--accent-foreground))" : "hsl(var(--foreground))",
75
- cursor: "pointer"
76
- }),
77
- noOptionsMessage: (e) => ({
78
- ...e,
79
- fontSize: "0.875rem",
80
- color: "hsl(var(--muted-foreground))"
81
- })
82
- }, u = (e) => {
83
- let n = t(5), { children: r, innerProps: a, innerRef: o } = e, s;
84
- n[0] === Symbol.for("react.memo_cache_sentinel") ? (s = {
85
- height: 0,
86
- minHeight: 0,
87
- opacity: 0,
88
- overflow: "hidden",
89
- pointerEvents: "none"
90
- }, n[0] = s) : s = n[0];
91
- let c;
92
- return n[1] !== r || n[2] !== a || n[3] !== o ? (c = /* @__PURE__ */ i("div", {
93
- ...a,
94
- ref: o,
95
- style: s,
96
- children: r
97
- }), n[1] = r, n[2] = a, n[3] = o, n[4] = c) : c = n[4], c;
98
- }, d = () => null;
99
- function f(e) {
100
- return /* @__PURE__ */ a(r, { children: [/* @__PURE__ */ a("span", {
101
- className: "flex min-w-0 items-center gap-2",
102
- children: [e.flag ? /* @__PURE__ */ i("span", {
103
- "aria-hidden": "true",
104
- className: "text-lg leading-none",
105
- children: e.flag
106
- }) : null, /* @__PURE__ */ i("span", {
107
- className: "truncate",
108
- children: e.name
109
- })]
110
- }), /* @__PURE__ */ a("span", {
111
- className: "text-xs text-muted-foreground",
112
- children: ["+", e.dialCode]
113
- })] });
21
+ function i(e, t) {
22
+ let n = t;
23
+ for (; n > 0 && r(e[n - 1] ?? "");) --n;
24
+ return n;
114
25
  }
115
- function p(e) {
116
- return f(e);
26
+ function a(e, t) {
27
+ let n = t;
28
+ for (; n < e.length && r(e[n] ?? "");) n += 1;
29
+ return n;
30
+ }
31
+ function o(e) {
32
+ let { value: n } = e, r = e.selectionStart ?? n.length, i = e.selectionEnd ?? r, a = r <= 1 && n.startsWith("+"), o = i <= 1 && n.startsWith("+");
33
+ return {
34
+ selectionStart: r,
35
+ selectionEnd: i,
36
+ startDigits: t(n, r),
37
+ endDigits: t(n, i),
38
+ preserveStartIndex: a,
39
+ preserveEndIndex: o,
40
+ wasAtStart: r === 0,
41
+ wasAtEnd: i === n.length
42
+ };
43
+ }
44
+ function s(e, t) {
45
+ if (e.selectionStart === e.selectionEnd) {
46
+ if (e.wasAtEnd) {
47
+ let e = t.length;
48
+ return {
49
+ start: e,
50
+ end: e
51
+ };
52
+ }
53
+ if (e.wasAtStart) return {
54
+ start: 0,
55
+ end: 0
56
+ };
57
+ }
58
+ let r = e.preserveStartIndex ? Math.min(e.selectionStart, t.length) : n(t, e.startDigits), i = e.preserveEndIndex ? Math.min(e.selectionEnd, t.length) : n(t, e.endDigits), a = r, o = i;
59
+ e.wasAtStart && (a = 0), e.wasAtEnd && (o = t.length), e.selectionStart === e.selectionEnd && (a = o);
60
+ let s = Math.min(Math.max(a, 0), t.length), c = Math.min(Math.max(o, 0), t.length);
61
+ return s > c ? {
62
+ start: c,
63
+ end: c
64
+ } : {
65
+ start: s,
66
+ end: c
67
+ };
117
68
  }
118
69
  //#endregion
119
- export { u as HiddenControl, d as NullComponent, o as SuggestionContext, c as SuggestionOption, f as formatCountryOption, l as suggestionSelectStyles };
70
+ export { o as captureSelectionSnapshot, s as resolveSelection, i as skipFormattingCharactersLeft, a as skipFormattingCharactersRight };
120
71
 
121
72
  //# sourceMappingURL=index361.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index361.js","names":["React","CountryCode","ControlProps","OptionProps","StylesConfig","cn","CountryOption","SuggestionContextValue","highlightedValue","setHighlightedOption","option","renderOptionLabel","ReactNode","consumeScrollBehavior","ScrollBehavior","SuggestionContext","createContext","assignOptionRef","ref","Ref","HTMLDivElement","node","Reflect","set","SuggestionOption","props","$","_c","context","useContext","isActive","data","value","onMouseMove","receivedClassName","restInnerProps","innerProps","className","t0","_temp","renderLabel","optionRef","useRef","innerRef","t1","current","assignRef","t2","behavior","target","parent","parentElement","top","offsetTop","bottom","offsetHeight","viewTop","scrollTop","viewBottom","clientHeight","scrollIntoView","block","t3","useEffect","t4","event","handleMouseMove","t5","t6","t7","t8","suggestionSelectStyles","control","display","menu","provided","marginTop","borderRadius","boxShadow","backgroundColor","overflow","zIndex","menuList","maxHeight","padding","state","fontSize","isFocused","isSelected","color","cursor","noOptionsMessage","HiddenControl","children","Symbol","for","height","minHeight","opacity","pointerEvents","NullComponent","formatCountryOption","flag","name","dialCode"],"sources":["../src/components/PhoneNumberInput/suggestions.tsx"],"sourcesContent":["import * as React from \"react\"\nimport type { CountryCode } from \"libphonenumber-js\"\nimport type { ControlProps, OptionProps, StylesConfig } from \"react-select\"\n\nimport { cn } from \"@/lib/utils\"\n\nimport type { CountryOption } from \"./types\"\n\n\nexport type SuggestionContextValue = {\n highlightedValue: CountryCode | null\n setHighlightedOption: (option: CountryOption) => void\n renderOptionLabel: (option: CountryOption) => React.ReactNode\n consumeScrollBehavior: () => ScrollBehavior\n}\n\nexport const SuggestionContext = React.createContext<SuggestionContextValue | null>(null)\n\nfunction assignOptionRef(ref: React.Ref<HTMLDivElement> | undefined, node: HTMLDivElement | null) {\n if (typeof ref === \"function\") {\n ref(node)\n return\n }\n if (ref && typeof ref === \"object\") {\n Reflect.set(ref, \"current\", node)\n }\n}\n\nexport const SuggestionOption = (props: OptionProps<CountryOption, false>) => {\n const context = React.useContext(SuggestionContext)\n const isActive = context?.highlightedValue === props.data.value\n const { onMouseMove, className: receivedClassName, ...restInnerProps } = props.innerProps\n const renderLabel =\n context?.renderOptionLabel ?? ((option: CountryOption) => formatCountryOption(option))\n const optionRef = React.useRef<HTMLDivElement | null>(null)\n const { innerRef } = props\n\n const assignRef = React.useCallback(\n (node: HTMLDivElement | null) => {\n optionRef.current = node\n assignOptionRef(innerRef, node)\n },\n [innerRef]\n )\n\n React.useEffect(() => {\n if (!isActive) {\n return\n }\n\n const consumeScrollBehavior = context?.consumeScrollBehavior\n const behavior = consumeScrollBehavior ? consumeScrollBehavior() : \"smooth\"\n\n const target = optionRef.current\n if (!target) {\n return\n }\n\n const parent = target.parentElement\n if (!parent) {\n return\n }\n\n const top = target.offsetTop\n const bottom = top + target.offsetHeight\n const viewTop = parent.scrollTop\n const viewBottom = viewTop + parent.clientHeight\n\n if (top >= viewTop && bottom <= viewBottom) {\n return\n }\n\n target.scrollIntoView({\n block: \"nearest\",\n behavior,\n })\n }, [context, isActive])\n\n const handleMouseMove = (event: React.MouseEvent<HTMLDivElement>) => {\n onMouseMove?.(event)\n context?.setHighlightedOption(props.data)\n }\n\n return (\n <div\n ref={assignRef}\n {...restInnerProps}\n onMouseMove={handleMouseMove}\n className={cn(\n \"flex cursor-pointer items-center justify-between gap-3 px-3 py-2 text-sm\",\n receivedClassName,\n isActive ? \"bg-muted text-foreground\" : \"text-foreground hover:bg-muted\"\n )}\n >\n {renderLabel(props.data)}\n </div>\n )\n}\n\nexport const suggestionSelectStyles: StylesConfig<CountryOption, false> = {\n control: () => ({\n display: \"none\",\n }),\n menu: (provided) => ({\n ...provided,\n marginTop: 4,\n borderRadius: \"var(--radius)\",\n boxShadow: \"0 18px 36px rgba(15, 23, 42, 0.18)\",\n backgroundColor: \"hsl(var(--popover))\",\n overflow: \"hidden\",\n zIndex: 20,\n }),\n menuList: (provided) => ({\n ...provided,\n maxHeight: 240,\n padding: 0,\n }),\n option: (provided, state) => ({\n ...provided,\n fontSize: \"0.875rem\",\n backgroundColor: state.isFocused\n ? \"hsl(var(--muted))\"\n : state.isSelected\n ? \"hsl(var(--accent))\"\n : \"transparent\",\n color: state.isSelected\n ? \"hsl(var(--accent-foreground))\"\n : \"hsl(var(--foreground))\",\n cursor: \"pointer\",\n }),\n noOptionsMessage: (provided) => ({\n ...provided,\n fontSize: \"0.875rem\",\n color: \"hsl(var(--muted-foreground))\",\n }),\n}\n\nexport const HiddenControl = (props: ControlProps<CountryOption, false>) => {\n const { children, innerProps, innerRef } = props\n\n return (\n <div\n {...innerProps}\n ref={innerRef}\n style={{\n height: 0,\n minHeight: 0,\n opacity: 0,\n overflow: \"hidden\",\n pointerEvents: \"none\",\n }}\n >\n {children}\n </div>\n )\n}\n\nexport const NullComponent = () => null\n\nexport function formatCountryOption(option: CountryOption) {\n return (\n <>\n <span className=\"flex min-w-0 items-center gap-2\">\n {option.flag ? (\n <span aria-hidden=\"true\" className=\"text-lg leading-none\">\n {option.flag}\n </span>\n ) : null}\n <span className=\"truncate\">{option.name}</span>\n </span>\n <span className=\"text-xs text-muted-foreground\">+{option.dialCode}</span>\n </>\n )\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"index361.js","names":["isDigitCharacter","char","code","charCodeAt","countDigitsBefore","value","index","count","limit","Math","min","length","position","findIndexForDigitCount","digitCount","startsWith","seen","isFormattingCharacter","skipFormattingCharactersLeft","next","skipFormattingCharactersRight","SelectionSnapshot","selectionStart","selectionEnd","startDigits","endDigits","preserveStartIndex","preserveEndIndex","wasAtStart","wasAtEnd","captureSelectionSnapshot","input","HTMLInputElement","resolveSelection","snapshot","end","start","resolvedStart","resolvedEnd","clampedStart","max","clampedEnd"],"sources":["../src/components/PhoneNumberInput/selection.ts"],"sourcesContent":["function isDigitCharacter(char: string) {\n if (!char) {\n return false\n }\n const code = char.charCodeAt(0)\n return code >= 48 && code <= 57\n}\n\nfunction countDigitsBefore(value: string, index: number) {\n let count = 0\n const limit = Math.min(index, value.length)\n for (let position = 0; position < limit; position += 1) {\n if (isDigitCharacter(value[position] ?? \"\")) {\n count += 1\n }\n }\n return count\n}\n\nfunction findIndexForDigitCount(value: string, digitCount: number) {\n if (digitCount <= 0) {\n return value.startsWith(\"+\") ? Math.min(1, value.length) : 0\n }\n\n let seen = 0\n for (let index = 0; index < value.length; index += 1) {\n if (isDigitCharacter(value[index] ?? \"\")) {\n seen += 1\n if (seen === digitCount) {\n return index + 1\n }\n }\n }\n\n return value.length\n}\n\nfunction isFormattingCharacter(char: string) {\n if (!char) {\n return false\n }\n if (isDigitCharacter(char)) {\n return false\n }\n return char !== \"+\"\n}\n\nexport function skipFormattingCharactersLeft(value: string, index: number) {\n let position = index\n while (position > 0) {\n const next = value[position - 1] ?? \"\"\n if (!isFormattingCharacter(next)) {\n break\n }\n position -= 1\n }\n return position\n}\n\nexport function skipFormattingCharactersRight(value: string, index: number) {\n let position = index\n while (position < value.length) {\n const next = value[position] ?? \"\"\n if (!isFormattingCharacter(next)) {\n break\n }\n position += 1\n }\n return position\n}\n\ntype SelectionSnapshot = {\n selectionStart: number\n selectionEnd: number\n startDigits: number\n endDigits: number\n preserveStartIndex: boolean\n preserveEndIndex: boolean\n wasAtStart: boolean\n wasAtEnd: boolean\n}\n\nexport function captureSelectionSnapshot(input: HTMLInputElement): SelectionSnapshot {\n const { value } = input\n const selectionStart = input.selectionStart ?? value.length\n const selectionEnd = input.selectionEnd ?? selectionStart\n const preserveStartIndex = selectionStart <= 1 && value.startsWith(\"+\")\n const preserveEndIndex = selectionEnd <= 1 && value.startsWith(\"+\")\n\n return {\n selectionStart,\n selectionEnd,\n startDigits: countDigitsBefore(value, selectionStart),\n endDigits: countDigitsBefore(value, selectionEnd),\n preserveStartIndex,\n preserveEndIndex,\n wasAtStart: selectionStart === 0,\n wasAtEnd: selectionEnd === value.length,\n }\n}\n\nexport function resolveSelection(snapshot: SelectionSnapshot, value: string) {\n if (snapshot.selectionStart === snapshot.selectionEnd) {\n if (snapshot.wasAtEnd) {\n const end = value.length\n return { start: end, end }\n }\n if (snapshot.wasAtStart) {\n return { start: 0, end: 0 }\n }\n }\n\n const start = snapshot.preserveStartIndex\n ? Math.min(snapshot.selectionStart, value.length)\n : findIndexForDigitCount(value, snapshot.startDigits)\n const end = snapshot.preserveEndIndex\n ? Math.min(snapshot.selectionEnd, value.length)\n : findIndexForDigitCount(value, snapshot.endDigits)\n\n let resolvedStart = start\n let resolvedEnd = end\n\n if (snapshot.wasAtStart) {\n resolvedStart = 0\n }\n\n if (snapshot.wasAtEnd) {\n resolvedEnd = value.length\n }\n\n if (snapshot.selectionStart === snapshot.selectionEnd) {\n resolvedStart = resolvedEnd\n }\n\n const clampedStart = Math.min(Math.max(resolvedStart, 0), value.length)\n const clampedEnd = Math.min(Math.max(resolvedEnd, 0), value.length)\n\n if (clampedStart > clampedEnd) {\n return { start: clampedEnd, end: clampedEnd }\n }\n\n return { start: clampedStart, end: clampedEnd }\n}\n\n"],"mappings":"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"}