@dimasbaguspm/versaur 0.0.16 → 0.0.17

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 (58) hide show
  1. package/dist/js/bottom-sheet-CHRSxXRE.js +501 -0
  2. package/dist/js/{switch-input-Bx6_2zG9.js → email-input-CVyrFzqL.js} +592 -807
  3. package/dist/js/enforce-subpath-import.js +5 -2
  4. package/dist/js/feedbacks/index.js +1 -1
  5. package/dist/js/{form-layout-4ASWdXn8.js → form-layout-Dhlv-FZL.js} +1 -1
  6. package/dist/js/forms/index.js +17 -14
  7. package/dist/js/{index-DOdDlCoL.js → index-C1uJQB34.js} +2 -2
  8. package/dist/js/index.js +45 -43
  9. package/dist/js/layouts/index.js +1 -1
  10. package/dist/js/modal-FqewbVts.js +150 -0
  11. package/dist/js/navigation/index.js +1 -1
  12. package/dist/js/overlays/index.js +4 -4
  13. package/dist/js/primitive/index.js +14 -15
  14. package/dist/js/{skeleton-BNZyaRjo.js → skeleton-QEyPZAuF.js} +1 -1
  15. package/dist/js/{tabs-BbOkYchB.js → tabs-DYcTvVao.js} +1 -1
  16. package/dist/js/tile-B9bt2AY6.js +1776 -0
  17. package/dist/types/forms/chip-multiple-input/chip-multiple-input.atoms.d.ts +10 -0
  18. package/dist/types/forms/chip-multiple-input/chip-multiple-input.d.ts +5 -0
  19. package/dist/types/forms/chip-multiple-input/index.d.ts +2 -0
  20. package/dist/types/forms/{chip-input → chip-multiple-input}/types.d.ts +16 -4
  21. package/dist/types/forms/chip-single-input/chip-single-input.atoms.d.ts +10 -0
  22. package/dist/types/forms/chip-single-input/chip-single-input.d.ts +5 -0
  23. package/dist/types/forms/chip-single-input/index.d.ts +1 -0
  24. package/dist/types/forms/chip-single-input/types.d.ts +67 -0
  25. package/dist/types/forms/date-single-picker-input/date-single-picker-input.d.ts +1 -8
  26. package/dist/types/forms/date-single-picker-input/index.d.ts +1 -1
  27. package/dist/types/forms/date-single-picker-input/types.d.ts +12 -66
  28. package/dist/types/forms/email-input/email-input.d.ts +8 -0
  29. package/dist/types/forms/email-input/index.d.ts +2 -0
  30. package/dist/types/forms/email-input/types.d.ts +6 -0
  31. package/dist/types/forms/index.d.ts +5 -1
  32. package/dist/types/forms/price-input/index.d.ts +2 -0
  33. package/dist/types/forms/price-input/price-input.d.ts +6 -0
  34. package/dist/types/forms/price-input/types.d.ts +15 -0
  35. package/dist/types/forms/price-input/use-price-input.d.ts +6 -0
  36. package/dist/types/forms/search-input/index.d.ts +2 -0
  37. package/dist/types/forms/search-input/search-input.d.ts +8 -0
  38. package/dist/types/forms/search-input/types.d.ts +35 -0
  39. package/dist/types/forms/segment-multiple-input/types.d.ts +1 -5
  40. package/dist/types/forms/segment-single-input/types.d.ts +1 -5
  41. package/dist/types/overlays/modal/types.d.ts +1 -1
  42. package/dist/types/primitive/anchor/types.d.ts +8 -2
  43. package/package.json +1 -1
  44. package/dist/js/bottom-sheet-Difan0U1.js +0 -340
  45. package/dist/js/calendar-CUjVZ7Ap.js +0 -811
  46. package/dist/js/menu-Bm-yPIMN.js +0 -310
  47. package/dist/js/tile-BjhJ5Mvl.js +0 -939
  48. package/dist/types/forms/chip-input/chip-input.atoms.d.ts +0 -10
  49. package/dist/types/forms/chip-input/chip-input.d.ts +0 -5
  50. package/dist/types/forms/chip-input/index.d.ts +0 -2
  51. package/dist/types/forms/date-range-picker-input/date-range-picker-input.d.ts +0 -10
  52. package/dist/types/forms/date-range-picker-input/index.d.ts +0 -2
  53. package/dist/types/forms/date-range-picker-input/types.d.ts +0 -64
  54. package/dist/types/forms/date-range-picker-input/use-date-range-picker.d.ts +0 -13
  55. package/dist/types/forms/date-single-picker-input/date-single-picker-input.atoms.d.ts +0 -13
  56. package/dist/types/forms/date-single-picker-input/date-single-picker-input.docked.d.ts +0 -14
  57. package/dist/types/forms/date-single-picker-input/date-single-picker-input.modal.d.ts +0 -15
  58. package/dist/types/forms/date-single-picker-input/use-date-single-picker.d.ts +0 -10
@@ -1,310 +0,0 @@
1
- import { j as u, a as x, c as b } from "./index-DOdDlCoL.js";
2
- import { forwardRef as m, useEffect as f, useRef as y, useState as M, createContext as j, useContext as k, useId as I } from "react";
3
- const z = m(
4
- ({ className: e, ...t }, n) => /* @__PURE__ */ u.jsx(
5
- "div",
6
- {
7
- ref: n,
8
- className: x("px-6 pt-6 pb-2 text-lg font-semibold", e),
9
- ...t
10
- }
11
- )
12
- ), D = m(
13
- ({ className: e, ...t }, n) => /* @__PURE__ */ u.jsx(
14
- "div",
15
- {
16
- ref: n,
17
- className: x("px-6 py-4 flex justify-end gap-2", e),
18
- ...t
19
- }
20
- )
21
- ), V = m(
22
- ({ className: e, ...t }, n) => /* @__PURE__ */ u.jsx("div", { ref: n, className: x("px-6 py-2", e), ...t })
23
- ), A = m(
24
- ({ onOverlayClick: e, ...t }, n) => /* @__PURE__ */ u.jsx(
25
- "div",
26
- {
27
- ref: n,
28
- role: "presentation",
29
- tabIndex: -1,
30
- "aria-modal": "true",
31
- onClick: e,
32
- ...t
33
- }
34
- )
35
- ), N = b(
36
- "fixed inset-0 z-51 transition-opacity duration-300 bg-black/30 backdrop-blur-md flex items-center justify-center transition-opacity duration-200 ease-in-out",
37
- {
38
- variants: {
39
- placement: {
40
- top: "items-start",
41
- center: "items-center"
42
- }
43
- },
44
- defaultVariants: {
45
- placement: "center"
46
- }
47
- }
48
- ), C = b(
49
- [
50
- "bg-white rounded-lg shadow-xl relative",
51
- "flex flex-col",
52
- "outline-none",
53
- "mx-4",
54
- "transition-all duration-200 ease-in-out "
55
- ],
56
- {
57
- variants: {
58
- size: {
59
- sm: "w-[20rem] max-w-sm",
60
- // 20rem, 320px
61
- md: "w-[28rem] max-w-md",
62
- // 28rem, 448px
63
- lg: "w-[36rem] max-w-lg"
64
- // 36rem, 576px
65
- },
66
- placement: {
67
- top: "mt-4",
68
- center: ""
69
- }
70
- },
71
- defaultVariants: {
72
- size: "md",
73
- placement: "center"
74
- }
75
- }
76
- );
77
- function R(e, t) {
78
- f(() => {
79
- if (t && e.current) {
80
- const n = e.current.querySelectorAll(
81
- 'button, [href], input, select, textarea, [tabindex]:not([tabindex="-1"])'
82
- );
83
- n.length && n[0].focus();
84
- }
85
- }, [t, e]);
86
- }
87
- function F(e, t) {
88
- f(() => {
89
- if (!e) return;
90
- const n = (r) => {
91
- r.key === "Escape" && t();
92
- };
93
- return document.addEventListener("keydown", n), () => document.removeEventListener("keydown", n);
94
- }, [e, t]);
95
- }
96
- const L = 200, T = ({
97
- isOpen: e,
98
- onOpenChange: t,
99
- size: n = "md",
100
- placement: r = "center",
101
- children: o,
102
- disableOverlayClose: a,
103
- disableEscClose: i,
104
- ...s
105
- }) => {
106
- const d = y(null), c = y(null), [p, l] = M(e), [h, v] = M(!1);
107
- return f(() => {
108
- if (e)
109
- l(!0), v(!1), d.current = document.activeElement;
110
- else if (p) {
111
- v(!0);
112
- const g = setTimeout(() => {
113
- l(!1), v(!1), d.current && d.current.focus();
114
- }, L);
115
- return () => clearTimeout(g);
116
- }
117
- }, [e]), F(e && !i, () => {
118
- t && t(!1);
119
- }), R(c, e), /* @__PURE__ */ u.jsx(
120
- A,
121
- {
122
- ref: c,
123
- className: `${N({ placement: r })} transition-opacity duration-200 ease-in-out ` + (e && !h ? "opacity-100" : "opacity-0 pointer-events-none"),
124
- onOverlayClick: (g) => {
125
- g.target === c.current && !a && t && t(!1);
126
- },
127
- placement: r,
128
- children: /* @__PURE__ */ u.jsx(
129
- "div",
130
- {
131
- className: `${C({ size: n, placement: r })} transition-all duration-200 ease-in-out ` + (e && !h ? "opacity-100 scale-100" : "opacity-0 scale-95 pointer-events-none"),
132
- role: "dialog",
133
- ...s,
134
- tabIndex: 0,
135
- "aria-hidden": !e,
136
- children: o
137
- }
138
- )
139
- }
140
- );
141
- }, _ = Object.assign(T, {
142
- Header: z,
143
- Body: V,
144
- Footer: D
145
- }), E = j(null), w = () => {
146
- const e = k(E);
147
- if (!e)
148
- throw new Error("useMenuContext must be used within a Menu component");
149
- return e;
150
- }, S = b(
151
- // Modern, clean, accessible base style
152
- "z-50 min-w-40 bg-background text-black rounded-lg border border-border",
153
- {
154
- variants: {
155
- variant: {
156
- default: "",
157
- outline: "border bg-transparent"
158
- },
159
- size: {
160
- sm: "py-1.5 px-1",
161
- md: "py-2 px-1"
162
- }
163
- },
164
- defaultVariants: {
165
- variant: "default",
166
- size: "md"
167
- }
168
- }
169
- ), q = b(
170
- "w-full text-left px-4 rounded-sm cursor-pointer transition-colors duration-150 select-none hover:bg-background-light outline-none border border-transparent focus-visible:border-primary-light disabled:opacity-50 disabled:cursor-not-allowed",
171
- {
172
- variants: {
173
- size: {
174
- sm: "text-sm py-1",
175
- md: "text-base py-1"
176
- }
177
- },
178
- defaultVariants: {
179
- size: "md"
180
- }
181
- }
182
- ), B = m(
183
- ({ children: e, ...t }, n) => {
184
- const { open: r, triggerRef: o } = w();
185
- return /* @__PURE__ */ u.jsx(
186
- "span",
187
- {
188
- ref: (a) => {
189
- o.current = a, typeof n == "function" ? n(a) : n && (n.current = a);
190
- },
191
- "aria-haspopup": "menu",
192
- "aria-expanded": r,
193
- "aria-controls": "menu-content",
194
- ...t,
195
- children: e
196
- }
197
- );
198
- }
199
- ), H = m(
200
- ({ children: e, className: t, ...n }, r) => {
201
- const { open: o, contentRef: a, triggerRef: i, size: s } = w(), d = I();
202
- let c = 0, p = 0;
203
- if (i.current) {
204
- const l = i.current.getBoundingClientRect();
205
- c = l.bottom + window.scrollY + 4, p = l.left + window.scrollX;
206
- }
207
- return /* @__PURE__ */ u.jsx(
208
- "div",
209
- {
210
- ref: (l) => {
211
- a.current = l, typeof r == "function" ? r(l) : r && (r.current = l);
212
- },
213
- id: `menu-content-${d}`,
214
- role: "menu",
215
- tabIndex: -1,
216
- "aria-hidden": !o,
217
- className: x(
218
- S({
219
- size: s
220
- }),
221
- "absolute z-50 transition-opacity duration-150 ease-out",
222
- o ? "opacity-100" : "opacity-0",
223
- t
224
- ),
225
- style: {
226
- minWidth: i.current?.offsetWidth,
227
- top: c,
228
- left: p
229
- },
230
- ...n,
231
- children: o && e
232
- }
233
- );
234
- }
235
- ), K = m(
236
- ({ children: e, disabled: t, className: n, ...r }, o) => {
237
- const { size: a } = w();
238
- return /* @__PURE__ */ u.jsx(
239
- "button",
240
- {
241
- ref: o,
242
- role: "menuitem",
243
- tabIndex: 0,
244
- disabled: t,
245
- "aria-disabled": t,
246
- className: x(
247
- q({
248
- size: a
249
- }),
250
- n
251
- ),
252
- ...r,
253
- children: e
254
- }
255
- );
256
- }
257
- );
258
- function $(e, t, n, r) {
259
- f(() => {
260
- if (!e) return;
261
- function o(a) {
262
- !t.current?.contains(a.target) && !n.current?.contains(a.target) && r();
263
- }
264
- return document.addEventListener("mousedown", o), () => document.removeEventListener("mousedown", o);
265
- }, [e, r, t, n]);
266
- }
267
- function U(e, t) {
268
- f(() => {
269
- if (e && t.current) {
270
- const n = t.current.querySelectorAll('[role="menuitem"]');
271
- n.length && n[0].focus();
272
- }
273
- }, [e, t]);
274
- }
275
- function W(e, t, n, r) {
276
- f(() => {
277
- if (!e || !t.current) return;
278
- const o = t.current;
279
- function a(i) {
280
- const s = Array.from(
281
- o.querySelectorAll('[role="menuitem"]')
282
- ), d = document.activeElement, c = s.indexOf(d);
283
- i.key === "ArrowDown" ? (i.preventDefault(), s.length && s[(c + 1) % s.length].focus()) : i.key === "ArrowUp" ? (i.preventDefault(), s.length && s[(c - 1 + s.length) % s.length].focus()) : i.key === "Home" ? (i.preventDefault(), s.length && s[0].focus()) : i.key === "End" ? (i.preventDefault(), s.length && s[s.length - 1].focus()) : i.key === "Escape" && (i.preventDefault(), r(), n.current?.focus());
284
- }
285
- return o.addEventListener("keydown", a), () => o.removeEventListener("keydown", a);
286
- }, [e, r, t, n]);
287
- }
288
- const P = ({
289
- children: e,
290
- isOpen: t,
291
- onOutsideClick: n,
292
- size: r = "md"
293
- }) => {
294
- const o = y(null), a = y(null);
295
- return $(t, a, o, n), U(t, a), W(t, a, o, n), /* @__PURE__ */ u.jsx(
296
- E.Provider,
297
- {
298
- value: { open: t, triggerRef: o, contentRef: a, size: r },
299
- children: e
300
- }
301
- );
302
- }, G = Object.assign(P, {
303
- Trigger: B,
304
- Content: H,
305
- Item: K
306
- });
307
- export {
308
- G as M,
309
- _ as a
310
- };