@simpli-route/apollo-ds 0.1.28 → 0.1.30

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 (250) hide show
  1. package/dist/components/Input/InputInvisible.d.ts +12 -0
  2. package/dist/components/Input/index.d.ts +2 -1
  3. package/dist/components/Input/types.d.ts +29 -1
  4. package/dist/components/Input/variants.d.ts +14 -0
  5. package/dist/components/NumberField/variants.d.ts +1 -1
  6. package/dist/index.cjs.js +1 -1
  7. package/dist/index.cjs10.js +1 -1
  8. package/dist/index.cjs100.js +1 -1
  9. package/dist/index.cjs101.js +1 -1
  10. package/dist/index.cjs102.js +1 -1
  11. package/dist/index.cjs103.js +1 -1
  12. package/dist/index.cjs104.js +1 -1
  13. package/dist/index.cjs105.js +1 -1
  14. package/dist/index.cjs11.js +1 -1
  15. package/dist/index.cjs116.js +1 -1
  16. package/dist/index.cjs117.js +1 -1
  17. package/dist/index.cjs118.js +1 -1
  18. package/dist/index.cjs119.js +1 -1
  19. package/dist/index.cjs12.js +1 -1
  20. package/dist/index.cjs120.js +1 -1
  21. package/dist/index.cjs121.js +1 -1
  22. package/dist/index.cjs122.js +1 -1
  23. package/dist/index.cjs123.js +1 -1
  24. package/dist/index.cjs124.js +1 -1
  25. package/dist/index.cjs13.js +1 -1
  26. package/dist/index.cjs134.js +1 -1
  27. package/dist/index.cjs135.js +1 -1
  28. package/dist/index.cjs136.js +1 -1
  29. package/dist/index.cjs14.js +1 -1
  30. package/dist/index.cjs143.js +1 -0
  31. package/dist/index.cjs15.js +1 -1
  32. package/dist/index.cjs16.js +1 -1
  33. package/dist/index.cjs17.js +1 -1
  34. package/dist/index.cjs18.js +1 -1
  35. package/dist/index.cjs19.js +1 -1
  36. package/dist/index.cjs2.js +1 -1
  37. package/dist/index.cjs20.js +1 -1
  38. package/dist/index.cjs21.js +1 -1
  39. package/dist/index.cjs22.js +1 -1
  40. package/dist/index.cjs23.js +1 -1
  41. package/dist/index.cjs24.js +1 -1
  42. package/dist/index.cjs25.js +1 -1
  43. package/dist/index.cjs26.js +1 -1
  44. package/dist/index.cjs27.js +1 -1
  45. package/dist/index.cjs28.js +1 -1
  46. package/dist/index.cjs29.js +1 -1
  47. package/dist/index.cjs3.js +1 -1
  48. package/dist/index.cjs30.js +1 -1
  49. package/dist/index.cjs31.js +1 -1
  50. package/dist/index.cjs32.js +1 -1
  51. package/dist/index.cjs33.js +1 -1
  52. package/dist/index.cjs34.js +1 -1
  53. package/dist/index.cjs35.js +1 -1
  54. package/dist/index.cjs36.js +1 -1
  55. package/dist/index.cjs37.js +1 -1
  56. package/dist/index.cjs38.js +1 -1
  57. package/dist/index.cjs39.js +1 -1
  58. package/dist/index.cjs4.js +1 -1
  59. package/dist/index.cjs40.js +1 -1
  60. package/dist/index.cjs41.js +1 -1
  61. package/dist/index.cjs42.js +1 -1
  62. package/dist/index.cjs43.js +1 -1
  63. package/dist/index.cjs44.js +1 -1
  64. package/dist/index.cjs45.js +1 -1
  65. package/dist/index.cjs46.js +1 -1
  66. package/dist/index.cjs47.js +1 -1
  67. package/dist/index.cjs48.js +1 -1
  68. package/dist/index.cjs49.js +1 -1
  69. package/dist/index.cjs5.js +1 -1
  70. package/dist/index.cjs50.js +1 -1
  71. package/dist/index.cjs51.js +1 -1
  72. package/dist/index.cjs52.js +1 -1
  73. package/dist/index.cjs53.js +1 -1
  74. package/dist/index.cjs54.js +1 -1
  75. package/dist/index.cjs55.js +1 -1
  76. package/dist/index.cjs56.js +1 -1
  77. package/dist/index.cjs57.js +1 -1
  78. package/dist/index.cjs58.js +1 -1
  79. package/dist/index.cjs59.js +1 -1
  80. package/dist/index.cjs6.js +1 -1
  81. package/dist/index.cjs60.js +1 -1
  82. package/dist/index.cjs61.js +1 -1
  83. package/dist/index.cjs62.js +1 -1
  84. package/dist/index.cjs63.js +1 -1
  85. package/dist/index.cjs64.js +1 -9
  86. package/dist/index.cjs65.js +3 -13
  87. package/dist/index.cjs66.js +19 -1
  88. package/dist/index.cjs67.js +1 -1
  89. package/dist/index.cjs68.js +1 -1
  90. package/dist/index.cjs69.js +1 -1
  91. package/dist/index.cjs7.js +1 -1
  92. package/dist/index.cjs70.js +1 -1
  93. package/dist/index.cjs71.js +1 -1
  94. package/dist/index.cjs72.js +1 -1
  95. package/dist/index.cjs73.js +1 -1
  96. package/dist/index.cjs74.js +1 -1
  97. package/dist/index.cjs75.js +1 -1
  98. package/dist/index.cjs76.js +1 -1
  99. package/dist/index.cjs77.js +1 -1
  100. package/dist/index.cjs78.js +1 -1
  101. package/dist/index.cjs79.js +1 -1
  102. package/dist/index.cjs8.js +1 -1
  103. package/dist/index.cjs80.js +1 -1
  104. package/dist/index.cjs81.js +1 -1
  105. package/dist/index.cjs82.js +1 -1
  106. package/dist/index.cjs84.js +1 -1
  107. package/dist/index.cjs85.js +1 -1
  108. package/dist/index.cjs86.js +1 -1
  109. package/dist/index.cjs88.js +1 -1
  110. package/dist/index.cjs89.js +1 -1
  111. package/dist/index.cjs9.js +1 -1
  112. package/dist/index.cjs90.js +1 -1
  113. package/dist/index.cjs91.js +1 -1
  114. package/dist/index.cjs92.js +1 -1
  115. package/dist/index.cjs93.js +1 -1
  116. package/dist/index.cjs94.js +1 -1
  117. package/dist/index.cjs95.js +1 -1
  118. package/dist/index.cjs96.js +1 -1
  119. package/dist/index.cjs97.js +1 -1
  120. package/dist/index.cjs98.js +1 -1
  121. package/dist/index.cjs99.js +1 -1
  122. package/dist/index.es.js +39 -37
  123. package/dist/index.es10.js +31 -49
  124. package/dist/index.es100.js +147 -10
  125. package/dist/index.es101.js +11 -11
  126. package/dist/index.es102.js +13 -207
  127. package/dist/index.es103.js +199 -56
  128. package/dist/index.es104.js +64 -10
  129. package/dist/index.es105.js +14 -4
  130. package/dist/index.es106.js +2 -2
  131. package/dist/index.es107.js +2 -2
  132. package/dist/index.es108.js +2 -2
  133. package/dist/index.es11.js +49 -37
  134. package/dist/index.es110.js +2 -2
  135. package/dist/index.es111.js +2 -2
  136. package/dist/index.es112.js +2 -2
  137. package/dist/index.es113.js +2 -2
  138. package/dist/index.es114.js +2 -2
  139. package/dist/index.es115.js +2 -2
  140. package/dist/index.es116.js +2 -2
  141. package/dist/index.es117.js +2 -1063
  142. package/dist/index.es118.js +1064 -76
  143. package/dist/index.es119.js +77 -4
  144. package/dist/index.es12.js +34 -87
  145. package/dist/index.es120.js +2 -57
  146. package/dist/index.es121.js +59 -20
  147. package/dist/index.es122.js +20 -4
  148. package/dist/index.es123.js +2 -8
  149. package/dist/index.es124.js +1 -1
  150. package/dist/index.es13.js +82 -90
  151. package/dist/index.es134.js +10 -28
  152. package/dist/index.es135.js +28 -4
  153. package/dist/index.es136.js +2 -2
  154. package/dist/index.es14.js +98 -72
  155. package/dist/index.es143.js +4 -0
  156. package/dist/index.es15.js +74 -141
  157. package/dist/index.es16.js +135 -31
  158. package/dist/index.es17.js +37 -75
  159. package/dist/index.es18.js +78 -48
  160. package/dist/index.es19.js +48 -3
  161. package/dist/index.es2.js +2 -2
  162. package/dist/index.es20.js +3 -100
  163. package/dist/index.es21.js +99 -77
  164. package/dist/index.es22.js +76 -43
  165. package/dist/index.es23.js +41 -20
  166. package/dist/index.es24.js +21 -25
  167. package/dist/index.es25.js +28 -8
  168. package/dist/index.es26.js +7 -7
  169. package/dist/index.es27.js +8 -6
  170. package/dist/index.es28.js +6 -6
  171. package/dist/index.es29.js +6 -171
  172. package/dist/index.es3.js +3 -3
  173. package/dist/index.es30.js +17 -43
  174. package/dist/index.es31.js +29 -33
  175. package/dist/index.es32.js +20 -36
  176. package/dist/index.es33.js +29 -29
  177. package/dist/index.es34.js +145 -25
  178. package/dist/index.es35.js +42 -23
  179. package/dist/index.es36.js +26 -47
  180. package/dist/index.es37.js +106 -29
  181. package/dist/index.es38.js +40 -3
  182. package/dist/index.es39.js +41 -78
  183. package/dist/index.es4.js +20 -19
  184. package/dist/index.es40.js +39 -21
  185. package/dist/index.es41.js +3 -17
  186. package/dist/index.es42.js +86 -95
  187. package/dist/index.es43.js +20 -11
  188. package/dist/index.es44.js +3 -3
  189. package/dist/index.es45.js +2 -2
  190. package/dist/index.es46.js +3 -3
  191. package/dist/index.es47.js +163 -13
  192. package/dist/index.es48.js +100 -136
  193. package/dist/index.es49.js +12 -19
  194. package/dist/index.es5.js +4 -4
  195. package/dist/index.es50.js +7 -163
  196. package/dist/index.es51.js +16 -28
  197. package/dist/index.es52.js +147 -16
  198. package/dist/index.es53.js +15 -14
  199. package/dist/index.es54.js +14 -13
  200. package/dist/index.es55.js +16 -10
  201. package/dist/index.es56.js +19 -10
  202. package/dist/index.es57.js +17 -42
  203. package/dist/index.es58.js +13 -7
  204. package/dist/index.es59.js +9 -17
  205. package/dist/index.es6.js +3 -3
  206. package/dist/index.es60.js +10 -149
  207. package/dist/index.es61.js +45 -19
  208. package/dist/index.es62.js +133 -16
  209. package/dist/index.es63.js +20 -2
  210. package/dist/index.es64.js +2 -30
  211. package/dist/index.es65.js +21 -590
  212. package/dist/index.es66.js +599 -21
  213. package/dist/index.es67.js +4 -4
  214. package/dist/index.es68.js +11 -9
  215. package/dist/index.es69.js +7 -7
  216. package/dist/index.es7.js +15 -15
  217. package/dist/index.es70.js +13 -15
  218. package/dist/index.es71.js +8 -8
  219. package/dist/index.es72.js +10 -8
  220. package/dist/index.es73.js +10 -10
  221. package/dist/index.es74.js +19 -30
  222. package/dist/index.es75.js +29 -56
  223. package/dist/index.es76.js +57 -4
  224. package/dist/index.es77.js +6 -28
  225. package/dist/index.es78.js +28 -4
  226. package/dist/index.es79.js +2 -8
  227. package/dist/index.es8.js +3 -3
  228. package/dist/index.es80.js +8 -340
  229. package/dist/index.es81.js +336 -162
  230. package/dist/index.es82.js +166 -2
  231. package/dist/index.es83.js +2 -2
  232. package/dist/index.es84.js +4 -190
  233. package/dist/index.es85.js +178 -39
  234. package/dist/index.es86.js +51 -4
  235. package/dist/index.es88.js +4 -21
  236. package/dist/index.es89.js +21 -4
  237. package/dist/index.es9.js +77 -32
  238. package/dist/index.es90.js +2 -43
  239. package/dist/index.es91.js +43 -5
  240. package/dist/index.es92.js +5 -5
  241. package/dist/index.es93.js +7 -27
  242. package/dist/index.es94.js +22 -187
  243. package/dist/index.es95.js +184 -8
  244. package/dist/index.es96.js +10 -347
  245. package/dist/index.es97.js +347 -18
  246. package/dist/index.es98.js +18 -13
  247. package/dist/index.es99.js +12 -147
  248. package/dist/stories/InputInvisible.stories.d.ts +45 -0
  249. package/dist/style.css +76 -0
  250. package/package.json +1 -1
@@ -1,77 +1,103 @@
1
- import { j as s } from "./index.es27.js";
2
- import { SearchIcon as P, CrossIcon as y } from "./index.es41.js";
3
- import { useMemo as z } from "react";
4
- import { ComboBox as D, Input as H, Text as R, FieldError as E, Popover as O, ListBox as F, ListBoxItem as M } from "react-aria-components";
5
- import { cn as S } from "./index.es28.js";
6
- import { useDebouncedValue as _ } from "./index.es47.js";
7
- import { IconButton as T } from "./index.es8.js";
8
- import { Label as $ } from "./index.es9.js";
9
- import { inputVariants as k } from "./index.es34.js";
10
- import { popoverVariants as q, searchOptionVariants as A } from "./index.es35.js";
11
- const se = (i) => {
1
+ import { j as t } from "./index.es28.js";
2
+ import { motion as D } from "framer-motion";
3
+ import { ProgressBar as I } from "react-aria-components";
4
+ import "react";
5
+ import { cn as s } from "./index.es29.js";
6
+ import "./index.es34.js";
7
+ import "./index.es32.js";
8
+ import "react-aria";
9
+ import "./index.es33.js";
10
+ import "@react-stately/color";
11
+ import "./index.es8.js";
12
+ import "./index.es9.js";
13
+ import { Label as M } from "./index.es10.js";
14
+ import "./index.es12.js";
15
+ import "./index.es35.js";
16
+ import { progressBarVariants as S, progressFillVariants as $ } from "./index.es36.js";
17
+ import "./index.es37.js";
18
+ import "./index.es38.js";
19
+ import "./index.es39.js";
20
+ import "./index.es40.js";
21
+ import { Tooltip as k } from "./index.es24.js";
22
+ import { TooltipTrigger as z } from "./index.es25.js";
23
+ import "./index.es19.js";
24
+ import "./index.es20.js";
25
+ import "./index.es21.js";
26
+ import "./index.es42.js";
27
+ import "./index.es23.js";
28
+ import { Text as d } from "./index.es26.js";
29
+ import "./index.es43.js";
30
+ const ct = (f) => {
12
31
  const {
13
- label: n,
14
- onReset: c,
15
- placeholder: f,
16
- isDisabled: l,
17
- delay: b = 300,
18
- searchIcon: j,
19
- clearIcon: I,
20
- size: N = "md",
21
- description: d,
22
- inputValue: h,
23
- isInvalid: m,
24
- errorMessage: x,
25
- items: r,
32
+ className: h,
33
+ classNameLabel: N,
34
+ label: l,
35
+ variant: p = "primary",
36
+ barClassName: u,
37
+ fillClassName: g,
38
+ valueTextClassName: n,
39
+ isLoading: e = !1,
40
+ showPercentage: x = !0,
41
+ percentageDisplayMode: r = "text",
42
+ positionTooltip: j = "top",
43
+ modeTooltip: b = "dark",
44
+ maxValue: w = 100,
45
+ minValue: y = 0,
46
+ valueCustomLabel: a,
47
+ valuePosition: c = "right",
48
+ classNameTooltip: v,
49
+ tooltipMessage: i,
50
+ barStyle: C = {},
51
+ fillStyle: T = {},
26
52
  ...L
27
- } = i, w = j ?? /* @__PURE__ */ s.jsx(P, { className: "size-6 text-neutral-700", "data-testid": "search-icon" }), C = /* @__PURE__ */ s.jsx(T, { intent: "minimal", size: "md", className: "p-0", "data-testid": "clear-icon-button", onPress: c, children: I ?? /* @__PURE__ */ s.jsx(y, { className: "size-5 text-neutral-700", "data-testid": "clear-icon" }) }), a = _(h, b), u = a && c, V = u ? C : w, v = (e, t) => {
28
- if (!t.trim())
29
- return [{ text: e, highlight: !1 }];
30
- const o = new RegExp(`(${t})`, "gi");
31
- return e.split(o).filter(Boolean).map((g) => ({
32
- text: g,
33
- highlight: g.toLowerCase() === t.toLowerCase()
34
- }));
35
- }, B = z(
36
- () => a ? r.filter((e) => e.label.toLowerCase().includes(a.toLowerCase())).map((e) => {
37
- const t = a && e.label.toLowerCase().includes(a.toLowerCase()), o = v(e.label, a ?? "");
38
- return { ...e, shouldHighlight: t, highlightedParts: o };
39
- }) : r.map((e) => ({
40
- ...e,
41
- shouldHighlight: !1,
42
- highlightedParts: [{ text: e.label, highlight: !1 }]
43
- })),
44
- [a, r]
45
- );
46
- return /* @__PURE__ */ s.jsxs(D, { inputValue: h, isDisabled: l, ...L, children: [
47
- n && /* @__PURE__ */ s.jsx($, { children: n }),
48
- /* @__PURE__ */ s.jsxs("div", { className: "relative flex items-center", children: [
49
- /* @__PURE__ */ s.jsx(
50
- H,
51
- {
52
- placeholder: f,
53
- className: k({ size: N, isDisabled: l, hasIcon: !0 }),
54
- disabled: l,
55
- readOnly: i.isReadOnly
56
- }
57
- ),
58
- /* @__PURE__ */ s.jsx("span", { className: S("absolute right-2 top-1/2 -translate-y-1/2", u && "top-[53%]"), children: V })
59
- ] }),
60
- d && !m && /* @__PURE__ */ s.jsx(R, { slot: "description", className: "text-xs leading-5 text-neutral-700", children: d }),
61
- x && m && /* @__PURE__ */ s.jsx(E, { className: "text-sm leading-6 text-error-500", children: x }),
62
- /* @__PURE__ */ s.jsx(O, { className: q(), children: /* @__PURE__ */ s.jsx(F, { items: B, className: "max-h-60 overflow-auto outline-none", children: (e) => /* @__PURE__ */ s.jsx(
63
- M,
64
- {
65
- id: e.id,
66
- textValue: e.label,
67
- className: ({ isDisabled: t, isSelected: o, isFocused: p }) => A({ isFocused: p, isSelected: o, isDisabled: t }),
68
- children: e.shouldHighlight ? /* @__PURE__ */ s.jsx("span", { children: e.highlightedParts.map(
69
- (t, o) => t.highlight ? /* @__PURE__ */ s.jsx("span", { className: "font-bold text-neutral-900", children: t.text }, t.text + o) : t.text
70
- ) }) : e.label
71
- }
72
- ) }) })
73
- ] });
53
+ } = f, P = s("flex w-full flex-col gap-2 text-neutral-900", h), B = s(S({ variant: p }), u), V = s($({ variant: p }), g);
54
+ return /* @__PURE__ */ t.jsx(I, { className: P, maxValue: w, minValue: y, ...L, children: ({ percentage: o, valueText: m }) => /* @__PURE__ */ t.jsxs(
55
+ "div",
56
+ {
57
+ className: s("flex w-full items-center gap-2", {
58
+ "items-end": l
59
+ }),
60
+ children: [
61
+ /* @__PURE__ */ t.jsxs("div", { className: "flex w-full flex-col gap-1", children: [
62
+ l ? /* @__PURE__ */ t.jsx(M, { labelClassName: s("leading-[19.07px] text-left", N), children: l }) : null,
63
+ /* @__PURE__ */ t.jsxs(
64
+ z,
65
+ {
66
+ isDisabled: r === "text" && !i || e,
67
+ className: "items-start",
68
+ delay: 90,
69
+ closeDelay: 200,
70
+ children: [
71
+ /* @__PURE__ */ t.jsx("div", { className: B, style: C, children: /* @__PURE__ */ t.jsx(
72
+ D.div,
73
+ {
74
+ className: V,
75
+ style: { width: e ? "100%" : `${o}%`, ...T },
76
+ animate: e ? { x: ["-100%", "100%"] } : { width: o + "%", x: [0, 0] },
77
+ transition: e ? { repeat: 1 / 0, duration: 1, ease: "easeInOut" } : {}
78
+ }
79
+ ) }),
80
+ /* @__PURE__ */ t.jsx(
81
+ k,
82
+ {
83
+ className: s("text-xs", v),
84
+ style: r === "tooltip" ? { left: o + "%" } : {},
85
+ mode: b,
86
+ size: "sm",
87
+ placement: j,
88
+ children: i && r === "text" ? i : a || m
89
+ }
90
+ )
91
+ ]
92
+ }
93
+ ),
94
+ !e && x && r === "text" && c === "bottom" && /* @__PURE__ */ t.jsx("div", { className: "mt-0.5 self-end", children: /* @__PURE__ */ t.jsx(d, { className: s("whitespace-nowrap text-xs text-neutral-900", n), children: a || m }) })
95
+ ] }),
96
+ !e && x && r === "text" && c === "right" && /* @__PURE__ */ t.jsx("div", { className: l ? "-mb-0.5" : "", children: /* @__PURE__ */ t.jsx(d, { className: s("whitespace-nowrap text-xs text-neutral-900", n), children: a || m }) })
97
+ ]
98
+ }
99
+ ) });
74
100
  };
75
101
  export {
76
- se as SearchField
102
+ ct as ProgressBar
77
103
  };
@@ -0,0 +1,4 @@
1
+ var o = { exports: {} };
2
+ export {
3
+ o as __module
4
+ };
@@ -1,145 +1,78 @@
1
- import { j as r } from "./index.es27.js";
2
- import { useState as f, useRef as C, useEffect as I } from "react";
3
- import { Select as S, Popover as tt, ListBox as st } from "react-aria-components";
4
- import { cn as P } from "./index.es28.js";
5
- import { Label as it } from "./index.es9.js";
6
- import { SelectContent as rt } from "./index.es48.js";
7
- import { SelectItem as lt } from "./index.es16.js";
8
- import { TooltipSelect as ot } from "./index.es49.js";
9
- const b = "all-select-option", wt = ({
10
- mode: e = "single",
11
- keyLabelName: V,
12
- keyIdName: j,
13
- className: _,
14
- selectButtonClassName: k,
15
- placeholder: O = "Select an option",
16
- isDisabled: x = !1,
17
- size: q = "md",
18
- items: l = [],
19
- renderItem: N,
20
- value: s = [],
21
- onSelectChange: t,
22
- classNameLabel: B,
23
- isRequired: $ = !1,
24
- label: L,
25
- tooltipText: F,
26
- tooltipSupportText: H,
27
- tooltipProps: g,
28
- hiddenDiscardButton: z = !1,
29
- tooltipMode: G = "dark",
30
- textAllOption: J = "Select all"
31
- }) => {
32
- const [y, K] = f(e), [M, d] = f(!1), [R, Q] = f(""), [U, u] = f(0), [X, T] = f(!1), [Y, A] = f(!1), m = C(null);
33
- I(() => {
34
- e !== y && (t == null || t([]), K(e));
35
- }, [e, t, y]), I(() => {
36
- if (!m.current || s.length === 0)
37
- return;
38
- const i = () => {
39
- const n = m.current;
40
- n && (A(!0), u(s.length), requestAnimationFrame(() => {
41
- let c = 0;
42
- const a = n.querySelectorAll("[data-chip]");
43
- let h = 0;
44
- const p = document.createElement("div");
45
- p.innerText = `+${s.length}`, p.style.visibility = "hidden", p.style.position = "absolute", n.appendChild(p);
46
- const v = p.offsetWidth;
47
- n.removeChild(p);
48
- for (let w = 0; w < a.length; w++) {
49
- const E = a[w].getBoundingClientRect().width, W = 8;
50
- if (c + E + W > n.offsetWidth - v)
51
- break;
52
- c += E + W, h++;
53
- }
54
- h < s.length ? (u(Math.max(1, h)), T(!0)) : (u(s.length), T(!1)), A(!1);
55
- }));
56
- };
57
- i();
58
- const o = new ResizeObserver(i);
59
- return o.observe(m.current), () => {
60
- o == null || o.disconnect();
61
- };
62
- }, [s]);
63
- const Z = P("flex w-full flex-col gap-1 !min-w-[150px]", _), D = (i) => {
64
- t == null || t((s == null ? void 0 : s.filter((o) => o !== i)) ?? []);
65
- };
66
- return /* @__PURE__ */ r.jsxs(
67
- S,
68
- {
69
- isDisabled: x,
70
- className: Z,
71
- placeholder: O,
72
- onSelectionChange: (i) => {
73
- if (i === b && e === "multiple") {
74
- if (s.length === l.length)
75
- t == null || t([]);
76
- else {
77
- const c = l.map((a) => a[j]);
78
- t == null || t(c);
79
- }
80
- return;
81
- }
82
- const o = s != null && s.includes(i) ? s.filter((c) => c !== i) : [...s, i], n = [i];
83
- e === "multiple" ? t == null || t(o) : (d(!1), t == null || t(n));
84
- },
85
- children: [
86
- /* @__PURE__ */ r.jsxs("div", { className: "flex items-center justify-between", children: [
87
- L ? /* @__PURE__ */ r.jsx(
88
- it,
89
- {
90
- labelClassName: P("leading-[19.07px] text-left mb-[1px]", {
91
- "text-neutral-700": x,
92
- classNameLabel: B
93
- }),
94
- isRequired: $,
95
- tooltipText: F,
96
- tooltipSupportText: H,
97
- tooltipProps: g,
98
- children: L
99
- }
100
- ) : /* @__PURE__ */ r.jsx("div", {}),
101
- R && /* @__PURE__ */ r.jsx("div", { className: "relative -mb-2 mr-20 flex self-end", children: /* @__PURE__ */ r.jsx(ot, { mode: G, className: "mr-2", placement: "none", children: /* @__PURE__ */ r.jsx("p", { className: "whitespace-nowrap text-xs", children: R }) }) })
102
- ] }),
103
- /* @__PURE__ */ r.jsx(
104
- rt,
105
- {
106
- isDisabled: x,
107
- size: q,
108
- selectButtonClassName: k,
109
- setIsOpen: d,
110
- isOpen: M,
111
- value: s,
112
- placeholder: O,
113
- items: l,
114
- keyIdName: j,
115
- keyLabelName: V,
116
- visibleItems: U,
117
- handleDeleteOptionSelected: D,
118
- maxLengthTextOption: 12,
119
- hiddenDiscardButton: z,
120
- containerRef: m,
121
- setTooltipMessage: Q,
122
- hasOverflow: X,
123
- isCalculatingChips: Y
124
- }
125
- ),
126
- /* @__PURE__ */ r.jsx(
127
- tt,
128
- {
129
- isOpen: M,
130
- placement: "bottom start",
131
- className: "custom-scrollbar !max-h-[185px] w-[--trigger-width] overflow-y-auto rounded-md bg-white shadow-lg ring-1 ring-black/5",
132
- onOpenChange: d,
133
- children: /* @__PURE__ */ r.jsxs(st, { items: l, className: "p-1 outline-none", children: [
134
- e === "multiple" && /* @__PURE__ */ r.jsx(lt, { id: b, children: J }, b),
135
- Array.isArray(l) && (l == null ? void 0 : l.map((i) => N ? N(i) : null))
136
- ] })
137
- }
138
- )
139
- ]
140
- }
1
+ import { j as s } from "./index.es28.js";
2
+ import { SearchIcon as P, CrossIcon as y } from "./index.es30.js";
3
+ import { useMemo as z } from "react";
4
+ import { ComboBox as D, Input as H, Text as R, FieldError as E, Popover as O, ListBox as F, ListBoxItem as M } from "react-aria-components";
5
+ import { cn as S } from "./index.es29.js";
6
+ import { useDebouncedValue as _ } from "./index.es58.js";
7
+ import { IconButton as T } from "./index.es8.js";
8
+ import "./index.es9.js";
9
+ import { Label as $ } from "./index.es10.js";
10
+ import { inputVariants as k } from "./index.es37.js";
11
+ import { popoverVariants as q, searchOptionVariants as A } from "./index.es38.js";
12
+ const te = (i) => {
13
+ const {
14
+ label: n,
15
+ onReset: c,
16
+ placeholder: f,
17
+ isDisabled: l,
18
+ delay: b = 300,
19
+ searchIcon: j,
20
+ clearIcon: I,
21
+ size: N = "md",
22
+ description: d,
23
+ inputValue: h,
24
+ isInvalid: m,
25
+ errorMessage: x,
26
+ items: r,
27
+ ...L
28
+ } = i, w = j ?? /* @__PURE__ */ s.jsx(P, { className: "size-6 text-neutral-700", "data-testid": "search-icon" }), C = /* @__PURE__ */ s.jsx(T, { intent: "minimal", size: "md", className: "p-0", "data-testid": "clear-icon-button", onPress: c, children: I ?? /* @__PURE__ */ s.jsx(y, { className: "size-5 text-neutral-700", "data-testid": "clear-icon" }) }), a = _(h, b), u = a && c, V = u ? C : w, v = (e, t) => {
29
+ if (!t.trim())
30
+ return [{ text: e, highlight: !1 }];
31
+ const o = new RegExp(`(${t})`, "gi");
32
+ return e.split(o).filter(Boolean).map((g) => ({
33
+ text: g,
34
+ highlight: g.toLowerCase() === t.toLowerCase()
35
+ }));
36
+ }, B = z(
37
+ () => a ? r.filter((e) => e.label.toLowerCase().includes(a.toLowerCase())).map((e) => {
38
+ const t = a && e.label.toLowerCase().includes(a.toLowerCase()), o = v(e.label, a ?? "");
39
+ return { ...e, shouldHighlight: t, highlightedParts: o };
40
+ }) : r.map((e) => ({
41
+ ...e,
42
+ shouldHighlight: !1,
43
+ highlightedParts: [{ text: e.label, highlight: !1 }]
44
+ })),
45
+ [a, r]
141
46
  );
47
+ return /* @__PURE__ */ s.jsxs(D, { inputValue: h, isDisabled: l, ...L, children: [
48
+ n && /* @__PURE__ */ s.jsx($, { children: n }),
49
+ /* @__PURE__ */ s.jsxs("div", { className: "relative flex items-center", children: [
50
+ /* @__PURE__ */ s.jsx(
51
+ H,
52
+ {
53
+ placeholder: f,
54
+ className: k({ size: N, isDisabled: l, hasIcon: !0 }),
55
+ disabled: l,
56
+ readOnly: i.isReadOnly
57
+ }
58
+ ),
59
+ /* @__PURE__ */ s.jsx("span", { className: S("absolute right-2 top-1/2 -translate-y-1/2", u && "top-[53%]"), children: V })
60
+ ] }),
61
+ d && !m && /* @__PURE__ */ s.jsx(R, { slot: "description", className: "text-xs leading-5 text-neutral-700", children: d }),
62
+ x && m && /* @__PURE__ */ s.jsx(E, { className: "text-sm leading-6 text-error-500", children: x }),
63
+ /* @__PURE__ */ s.jsx(O, { className: q(), children: /* @__PURE__ */ s.jsx(F, { items: B, className: "max-h-60 overflow-auto outline-none", children: (e) => /* @__PURE__ */ s.jsx(
64
+ M,
65
+ {
66
+ id: e.id,
67
+ textValue: e.label,
68
+ className: ({ isDisabled: t, isSelected: o, isFocused: p }) => A({ isFocused: p, isSelected: o, isDisabled: t }),
69
+ children: e.shouldHighlight ? /* @__PURE__ */ s.jsx("span", { children: e.highlightedParts.map(
70
+ (t, o) => t.highlight ? /* @__PURE__ */ s.jsx("span", { className: "font-bold text-neutral-900", children: t.text }, t.text + o) : t.text
71
+ ) }) : e.label
72
+ }
73
+ ) }) })
74
+ ] });
142
75
  };
143
76
  export {
144
- wt as Select
77
+ te as SearchField
145
78
  };
@@ -1,42 +1,146 @@
1
- import { j as e } from "./index.es27.js";
2
- import { ListBoxItem as m } from "react-aria-components";
3
- import { cn as i } from "./index.es28.js";
4
- const c = (t) => {
5
- const { isSelected: r } = t;
6
- return /* @__PURE__ */ e.jsx(
7
- m,
1
+ import { j as r } from "./index.es28.js";
2
+ import { useState as f, useRef as C, useEffect as I } from "react";
3
+ import { Select as S, Popover as tt, ListBox as st } from "react-aria-components";
4
+ import { cn as P } from "./index.es29.js";
5
+ import "./index.es9.js";
6
+ import { Label as it } from "./index.es10.js";
7
+ import { SelectContent as rt } from "./index.es62.js";
8
+ import { SelectItem as lt } from "./index.es17.js";
9
+ import { TooltipSelect as ot } from "./index.es63.js";
10
+ const b = "all-select-option", bt = ({
11
+ mode: e = "single",
12
+ keyLabelName: V,
13
+ keyIdName: j,
14
+ className: _,
15
+ selectButtonClassName: k,
16
+ placeholder: O = "Select an option",
17
+ isDisabled: x = !1,
18
+ size: q = "md",
19
+ items: l = [],
20
+ renderItem: N,
21
+ value: s = [],
22
+ onSelectChange: t,
23
+ classNameLabel: B,
24
+ isRequired: $ = !1,
25
+ label: L,
26
+ tooltipText: F,
27
+ tooltipSupportText: H,
28
+ tooltipProps: g,
29
+ hiddenDiscardButton: z = !1,
30
+ tooltipMode: G = "dark",
31
+ textAllOption: J = "Select all"
32
+ }) => {
33
+ const [y, K] = f(e), [M, d] = f(!1), [R, Q] = f(""), [U, u] = f(0), [X, T] = f(!1), [Y, A] = f(!1), m = C(null);
34
+ I(() => {
35
+ e !== y && (t == null || t([]), K(e));
36
+ }, [e, t, y]), I(() => {
37
+ if (!m.current || s.length === 0)
38
+ return;
39
+ const i = () => {
40
+ const n = m.current;
41
+ n && (A(!0), u(s.length), requestAnimationFrame(() => {
42
+ let c = 0;
43
+ const a = n.querySelectorAll("[data-chip]");
44
+ let h = 0;
45
+ const p = document.createElement("div");
46
+ p.innerText = `+${s.length}`, p.style.visibility = "hidden", p.style.position = "absolute", n.appendChild(p);
47
+ const v = p.offsetWidth;
48
+ n.removeChild(p);
49
+ for (let w = 0; w < a.length; w++) {
50
+ const E = a[w].getBoundingClientRect().width, W = 8;
51
+ if (c + E + W > n.offsetWidth - v)
52
+ break;
53
+ c += E + W, h++;
54
+ }
55
+ h < s.length ? (u(Math.max(1, h)), T(!0)) : (u(s.length), T(!1)), A(!1);
56
+ }));
57
+ };
58
+ i();
59
+ const o = new ResizeObserver(i);
60
+ return o.observe(m.current), () => {
61
+ o == null || o.disconnect();
62
+ };
63
+ }, [s]);
64
+ const Z = P("flex w-full flex-col gap-1 !min-w-[150px]", _), D = (i) => {
65
+ t == null || t((s == null ? void 0 : s.filter((o) => o !== i)) ?? []);
66
+ };
67
+ return /* @__PURE__ */ r.jsxs(
68
+ S,
8
69
  {
9
- ...t,
10
- className: ({ isHovered: n, isFocusVisible: l }) => i(
11
- "group flex cursor-pointer select-none items-center gap-2 rounded-sm px-4 py-2 text-primary-500 outline-none",
12
- r && "bg-primary-100",
13
- (n || l) && !r && "bg-primary-50",
14
- (n || l) && r && "bg-primary-200"
15
- ),
16
- children: /* @__PURE__ */ e.jsxs(e.Fragment, { children: [
17
- /* @__PURE__ */ e.jsx(
18
- "span",
70
+ isDisabled: x,
71
+ className: Z,
72
+ placeholder: O,
73
+ onSelectionChange: (i) => {
74
+ if (i === b && e === "multiple") {
75
+ if (s.length === l.length)
76
+ t == null || t([]);
77
+ else {
78
+ const c = l.map((a) => a[j]);
79
+ t == null || t(c);
80
+ }
81
+ return;
82
+ }
83
+ const o = s != null && s.includes(i) ? s.filter((c) => c !== i) : [...s, i], n = [i];
84
+ e === "multiple" ? t == null || t(o) : (d(!1), t == null || t(n));
85
+ },
86
+ children: [
87
+ /* @__PURE__ */ r.jsxs("div", { className: "flex items-center justify-between", children: [
88
+ L ? /* @__PURE__ */ r.jsx(
89
+ it,
90
+ {
91
+ labelClassName: P("leading-[19.07px] text-left mb-[1px]", {
92
+ "text-neutral-700": x,
93
+ classNameLabel: B
94
+ }),
95
+ isRequired: $,
96
+ tooltipText: F,
97
+ tooltipSupportText: H,
98
+ tooltipProps: g,
99
+ children: L
100
+ }
101
+ ) : /* @__PURE__ */ r.jsx("div", {}),
102
+ R && /* @__PURE__ */ r.jsx("div", { className: "relative -mb-2 mr-20 flex self-end", children: /* @__PURE__ */ r.jsx(ot, { mode: G, className: "mr-2", placement: "none", children: /* @__PURE__ */ r.jsx("p", { className: "whitespace-nowrap text-xs", children: R }) }) })
103
+ ] }),
104
+ /* @__PURE__ */ r.jsx(
105
+ rt,
19
106
  {
20
- className: i(
21
- "flex flex-1 items-center gap-2 text-sm font-normal text-primary-900",
22
- r && "text-primary-500"
23
- ),
24
- children: t == null ? void 0 : t.children
107
+ isDisabled: x,
108
+ size: q,
109
+ selectButtonClassName: k,
110
+ setIsOpen: d,
111
+ isOpen: M,
112
+ value: s,
113
+ placeholder: O,
114
+ items: l,
115
+ keyIdName: j,
116
+ keyLabelName: V,
117
+ visibleItems: U,
118
+ handleDeleteOptionSelected: D,
119
+ maxLengthTextOption: 12,
120
+ hiddenDiscardButton: z,
121
+ containerRef: m,
122
+ setTooltipMessage: Q,
123
+ hasOverflow: X,
124
+ isCalculatingChips: Y
25
125
  }
26
126
  ),
27
- /* @__PURE__ */ e.jsx("span", { className: "flex w-5 items-center", children: r && /* @__PURE__ */ e.jsx("svg", { width: "14", height: "13", viewBox: "0 0 14 13", fill: "none", xmlns: "http://www.w3.org/2000/svg", children: /* @__PURE__ */ e.jsx(
28
- "path",
127
+ /* @__PURE__ */ r.jsx(
128
+ tt,
29
129
  {
30
- fillRule: "evenodd",
31
- clipRule: "evenodd",
32
- d: "M13.2241 0.601824C13.4808 0.780773 13.5439 1.13398 13.365 1.39073L5.69829 12.3907C5.59653 12.5367 5.43209 12.6264 5.25425 12.633C5.07641 12.6395 4.90582 12.5622 4.79359 12.4241L0.460261 7.09072C0.26291 6.84783 0.299829 6.49094 0.542723 6.29358C0.785617 6.09623 1.14251 6.13315 1.33986 6.37605L5.19872 11.1254L12.4352 0.7427C12.6141 0.485948 12.9673 0.422875 13.2241 0.601824Z",
33
- fill: "#4C3BEF"
130
+ isOpen: M,
131
+ placement: "bottom start",
132
+ className: "custom-scrollbar !max-h-[185px] w-[--trigger-width] overflow-y-auto rounded-md bg-white shadow-lg ring-1 ring-black/5",
133
+ onOpenChange: d,
134
+ children: /* @__PURE__ */ r.jsxs(st, { items: l, className: "p-1 outline-none", children: [
135
+ e === "multiple" && /* @__PURE__ */ r.jsx(lt, { id: b, children: J }, b),
136
+ Array.isArray(l) && (l == null ? void 0 : l.map((i) => N ? N(i) : null))
137
+ ] })
34
138
  }
35
- ) }) })
36
- ] })
139
+ )
140
+ ]
37
141
  }
38
142
  );
39
143
  };
40
144
  export {
41
- c as SelectItem
145
+ bt as Select
42
146
  };