@vhyxui/react 0.3.0-alpha → 0.4.0-alpha

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 (237) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +65 -0
  3. package/dist/Accordion-qtPur3CA.js +81 -0
  4. package/dist/Accordion-z3QDvyGf.cjs +1 -0
  5. package/dist/Alert-D4EFVKUy.js +99 -0
  6. package/dist/Alert-DWB9Gtpv.cjs +1 -0
  7. package/dist/Avatar-CDoAvY0m.js +51 -0
  8. package/dist/Avatar-afXJdutp.cjs +1 -0
  9. package/dist/Badge-DOhfKlXt.cjs +1 -0
  10. package/dist/Badge-Z6crWSLX.js +38 -0
  11. package/dist/Breadcrumb-CbPmH-b4.js +90 -0
  12. package/dist/Breadcrumb-DWRxQvbb.cjs +1 -0
  13. package/dist/Button-CnNtk6HV.cjs +1 -0
  14. package/dist/Button-DN5vy24q.js +60 -0
  15. package/dist/Card-CI7DyOJg.js +79 -0
  16. package/dist/Card-CZUQhd45.cjs +1 -0
  17. package/dist/Center-BmKeGEa1.cjs +1 -0
  18. package/dist/Center-DFq5m7mf.js +22 -0
  19. package/dist/Checkbox-D-5qaOEj.js +92 -0
  20. package/dist/Checkbox-DOd4SIx2.cjs +1 -0
  21. package/dist/Container-CcsVyA6r.cjs +1 -0
  22. package/dist/Container-DPKIgeDZ.js +21 -0
  23. package/dist/Dialog-B7Mhq9Qc.cjs +1 -0
  24. package/dist/Dialog-DhIanyWH.js +258 -0
  25. package/dist/Drawer-8maigAH9.cjs +1 -0
  26. package/dist/Drawer-BKizItfr.js +259 -0
  27. package/dist/Field-DJvjEmzE.cjs +1 -0
  28. package/dist/Field-Dx9gXxGL.js +120 -0
  29. package/dist/Grid-Bzzb0usH.cjs +1 -0
  30. package/dist/Grid-x_OHCzGV.js +25 -0
  31. package/dist/Heading-BPqfnM8i.js +14 -0
  32. package/dist/Heading-icKRWRno.cjs +1 -0
  33. package/dist/Input-B0dEXpG8.js +151 -0
  34. package/dist/Input-CdS0oZyf.cjs +1 -0
  35. package/dist/Kbd-C2vxklhy.cjs +1 -0
  36. package/dist/Kbd-DGURpjWN.js +22 -0
  37. package/dist/Pagination-CiE9Jzm0.cjs +1 -0
  38. package/dist/Pagination-UQ53MWnR.js +128 -0
  39. package/dist/{Popover-j9pNswBn.js → Popover-0QvSlzcQ.js} +53 -53
  40. package/dist/Popover-Chf2ikqa.cjs +1 -0
  41. package/dist/Progress-DdWZRQVS.js +75 -0
  42. package/dist/Progress-lItZES-D.cjs +1 -0
  43. package/dist/RadioItem-BbIH7LoA.js +141 -0
  44. package/dist/RadioItem-Cfxch4Gj.cjs +1 -0
  45. package/dist/Select-CgjfJSB8.js +350 -0
  46. package/dist/Select-D_oVKzzK.cjs +1 -0
  47. package/dist/SelectField-DBGtOECg.js +49 -0
  48. package/dist/SelectField-DdkU9fXq.cjs +1 -0
  49. package/dist/Separator-BwR51KpL.js +52 -0
  50. package/dist/Separator-CTncQd7E.cjs +1 -0
  51. package/dist/Skeleton-C1LTpmVC.js +20 -0
  52. package/dist/Skeleton-CpzYhkFp.cjs +1 -0
  53. package/dist/Spinner-BJnT9SOB.cjs +1 -0
  54. package/dist/{Spinner-BYi9eTfl.js → Spinner-Dz68qwGs.js} +25 -25
  55. package/dist/Stack--mNjuxZe.cjs +1 -0
  56. package/dist/Stack-CfwjUv0j.js +49 -0
  57. package/dist/Switch-I712svE0.cjs +1 -0
  58. package/dist/{Switch-DOAZfSV0.js → Switch-bIbcXIMH.js} +22 -22
  59. package/dist/Table-C2TUkSZv.cjs +1 -0
  60. package/dist/Table-C_jZjmPK.js +67 -0
  61. package/dist/Tabs-CbmdCTVE.js +220 -0
  62. package/dist/Tabs-Dfuu2ZVq.cjs +1 -0
  63. package/dist/Text-CgsfCbWf.cjs +1 -0
  64. package/dist/Text-Dl4z0gus.js +26 -0
  65. package/dist/Text.module-CEBydIO4.js +7 -0
  66. package/dist/Text.module-gGopk2Yk.cjs +1 -0
  67. package/dist/TextField-B492c5Ct.js +31 -0
  68. package/dist/TextField-Bp-b0-hG.cjs +1 -0
  69. package/dist/{Textarea-CLrctxHU.js → Textarea-cloHZ5Sz.js} +41 -41
  70. package/dist/Textarea-uXK6PrFb.cjs +1 -0
  71. package/dist/TextareaField-C5naVyA1.cjs +1 -0
  72. package/dist/TextareaField-CrRndsuY.js +31 -0
  73. package/dist/Toast-CESL8AKT.cjs +1 -0
  74. package/dist/Toast-DYqE0PjM.js +167 -0
  75. package/dist/Tooltip-B-PpSm6T.cjs +1 -0
  76. package/dist/{Tooltip-BAmErB_g.js → Tooltip-DCCaNX5W.js} +34 -34
  77. package/dist/VhyxUIProvider-3f3b9ukY.cjs +1 -0
  78. package/dist/VhyxUIProvider-B2UHeumk.js +58 -0
  79. package/dist/VisuallyHidden-BWdnOImJ.cjs +1 -0
  80. package/dist/VisuallyHidden-CPTxPvL_.js +18 -0
  81. package/dist/accordion.cjs +1 -0
  82. package/dist/accordion.d.ts +48 -0
  83. package/dist/accordion.js +5 -0
  84. package/dist/alert.cjs +1 -1
  85. package/dist/alert.js +3 -2
  86. package/dist/avatar.cjs +1 -0
  87. package/dist/avatar.d.ts +53 -0
  88. package/dist/avatar.js +7 -0
  89. package/dist/badge.cjs +1 -1
  90. package/dist/badge.js +2 -1
  91. package/dist/breadcrumb.cjs +1 -1
  92. package/dist/breadcrumb.js +3 -2
  93. package/dist/button.cjs +1 -1
  94. package/dist/button.js +3 -2
  95. package/dist/card.cjs +1 -1
  96. package/dist/card.js +3 -2
  97. package/dist/center.cjs +1 -0
  98. package/dist/center.d.ts +20 -0
  99. package/dist/center.js +5 -0
  100. package/dist/checkbox.cjs +1 -1
  101. package/dist/checkbox.js +3 -2
  102. package/dist/container.cjs +1 -0
  103. package/dist/container.d.ts +23 -0
  104. package/dist/container.js +5 -0
  105. package/dist/cx-OWdTFKLx.js +15 -0
  106. package/dist/cx-dgWA95G6.cjs +1 -0
  107. package/dist/dialog.cjs +1 -1
  108. package/dist/dialog.d.ts +0 -1
  109. package/dist/dialog.js +3 -2
  110. package/dist/drawer.cjs +1 -1
  111. package/dist/drawer.d.ts +0 -1
  112. package/dist/drawer.js +3 -2
  113. package/dist/env-Cqd4Y-Z7.cjs +1 -0
  114. package/dist/env-lFT_FRkA.js +19 -0
  115. package/dist/form.cjs +1 -1
  116. package/dist/form.d.ts +6 -6
  117. package/dist/form.js +5 -4
  118. package/dist/grid.cjs +1 -0
  119. package/dist/grid.d.ts +35 -0
  120. package/dist/grid.js +5 -0
  121. package/dist/heading.cjs +1 -0
  122. package/dist/heading.d.ts +25 -0
  123. package/dist/heading.js +5 -0
  124. package/dist/index.cjs +1 -1
  125. package/dist/index.d.ts +440 -20
  126. package/dist/index.js +96 -62
  127. package/dist/input.cjs +1 -1
  128. package/dist/input.js +3 -2
  129. package/dist/kbd.cjs +1 -0
  130. package/dist/kbd.d.ts +16 -0
  131. package/dist/kbd.js +5 -0
  132. package/dist/pagination.cjs +1 -1
  133. package/dist/pagination.js +2 -1
  134. package/dist/popover.cjs +1 -1
  135. package/dist/popover.js +3 -2
  136. package/dist/progress.cjs +1 -1
  137. package/dist/progress.js +2 -1
  138. package/dist/radio.cjs +1 -1
  139. package/dist/radio.js +4 -3
  140. package/dist/select.cjs +1 -1
  141. package/dist/select.d.ts +3 -3
  142. package/dist/select.js +3 -2
  143. package/dist/selectfield.cjs +1 -1
  144. package/dist/selectfield.d.ts +6 -6
  145. package/dist/selectfield.js +3 -2
  146. package/dist/separator.cjs +1 -1
  147. package/dist/separator.js +3 -2
  148. package/dist/skeleton.cjs +1 -0
  149. package/dist/skeleton.d.ts +22 -0
  150. package/dist/skeleton.js +5 -0
  151. package/dist/spinner.cjs +1 -1
  152. package/dist/spinner.js +3 -2
  153. package/dist/stack.cjs +1 -0
  154. package/dist/stack.d.ts +58 -0
  155. package/dist/stack.js +7 -0
  156. package/dist/style.css +2 -1
  157. package/dist/switch.cjs +1 -1
  158. package/dist/switch.js +3 -2
  159. package/dist/table.cjs +1 -0
  160. package/dist/table.d.ts +65 -0
  161. package/dist/table.js +5 -0
  162. package/dist/tabs.cjs +1 -1
  163. package/dist/tabs.js +3 -2
  164. package/dist/test-utils.cjs +1 -1
  165. package/dist/test-utils.d.ts +14 -2
  166. package/dist/test-utils.js +5 -5
  167. package/dist/text.cjs +1 -0
  168. package/dist/text.d.ts +38 -0
  169. package/dist/text.js +5 -0
  170. package/dist/textarea.cjs +1 -1
  171. package/dist/textarea.js +2 -1
  172. package/dist/textareafield.cjs +1 -1
  173. package/dist/textareafield.d.ts +6 -6
  174. package/dist/textareafield.js +2 -1
  175. package/dist/textfield.cjs +1 -1
  176. package/dist/textfield.d.ts +6 -6
  177. package/dist/textfield.js +3 -2
  178. package/dist/toast.cjs +1 -1
  179. package/dist/toast.js +4 -3
  180. package/dist/tooltip.cjs +1 -1
  181. package/dist/tooltip.js +3 -2
  182. package/dist/utils.cjs +1 -0
  183. package/dist/utils.d.ts +28 -0
  184. package/dist/utils.js +8 -0
  185. package/dist/visually-hidden.cjs +1 -0
  186. package/dist/visually-hidden.d.ts +16 -0
  187. package/dist/visually-hidden.js +5 -0
  188. package/package.json +166 -72
  189. package/dist/Alert-BJ1O0bnK.cjs +0 -1
  190. package/dist/Alert-am3ANPTH.js +0 -99
  191. package/dist/Badge-Bbxb4wyt.js +0 -38
  192. package/dist/Badge-SBO9tGzn.cjs +0 -1
  193. package/dist/Breadcrumb-Db7ASomJ.js +0 -90
  194. package/dist/Breadcrumb-StitgXXx.cjs +0 -1
  195. package/dist/Button-DDMc7-3S.js +0 -58
  196. package/dist/Button-akOSYEu9.cjs +0 -1
  197. package/dist/Card-DSCA-Igh.cjs +0 -1
  198. package/dist/Card-Dh9Pcmfa.js +0 -79
  199. package/dist/Checkbox-DWl91ci_.js +0 -92
  200. package/dist/Checkbox-DvkT6QP9.cjs +0 -1
  201. package/dist/Dialog-CtYu14zl.js +0 -245
  202. package/dist/Dialog-gPT4noD8.cjs +0 -1
  203. package/dist/Drawer-BFJxsPG1.js +0 -246
  204. package/dist/Drawer-BygSIQQn.cjs +0 -1
  205. package/dist/Field-Bv07PL2M.js +0 -120
  206. package/dist/Field-D6FSsUGj.cjs +0 -1
  207. package/dist/Input-BS_t1bl-.js +0 -151
  208. package/dist/Input-UQ2fQwE7.cjs +0 -1
  209. package/dist/Pagination-C1h7OTgM.js +0 -128
  210. package/dist/Pagination-CmmcBPNz.cjs +0 -1
  211. package/dist/Popover-BlCmIF9J.cjs +0 -1
  212. package/dist/Progress-DWLr6Bq2.js +0 -75
  213. package/dist/Progress-FO-4WX0i.cjs +0 -1
  214. package/dist/RadioItem-BfkTHBxQ.cjs +0 -1
  215. package/dist/RadioItem-CzHSS_qK.js +0 -141
  216. package/dist/Select-BkJNe4Lc.cjs +0 -1
  217. package/dist/Select-DfV10hZt.js +0 -350
  218. package/dist/SelectField-B6N0uub8.js +0 -49
  219. package/dist/SelectField-Dxl2Mgbv.cjs +0 -1
  220. package/dist/Separator-C5lPGzes.cjs +0 -1
  221. package/dist/Separator-DQT58t90.js +0 -52
  222. package/dist/Spinner-CeIDpqkx.cjs +0 -1
  223. package/dist/Switch-BU_Tcttb.cjs +0 -1
  224. package/dist/Tabs-BTfm4LbV.js +0 -220
  225. package/dist/Tabs-DuU02-UD.cjs +0 -1
  226. package/dist/TextField-C3r-6jr6.cjs +0 -1
  227. package/dist/TextField-DtXQQJJk.js +0 -31
  228. package/dist/Textarea-H6evM8L4.cjs +0 -1
  229. package/dist/TextareaField-CpqPinvx.js +0 -31
  230. package/dist/TextareaField-D234Lyi_.cjs +0 -1
  231. package/dist/Toast-0acAjZTB.js +0 -167
  232. package/dist/Toast-ndaxbpcV.cjs +0 -1
  233. package/dist/Tooltip-CCd6VRvZ.cjs +0 -1
  234. package/dist/VhyxUIProvider-C7ie8u2L.cjs +0 -1
  235. package/dist/VhyxUIProvider-DVFSW4q-.js +0 -31
  236. package/dist/jsx-runtime-BRMkMA8J.cjs +0 -22
  237. package/dist/jsx-runtime-CL69jGNW.js +0 -279
@@ -0,0 +1,120 @@
1
+ import { jsx as u, jsxs as v } from "react/jsx-runtime";
2
+ import N, { useContext as w, useCallback as z, useMemo as M, createContext as P } from "react";
3
+ import { u as R } from "./useId-BGRmH6iF.js";
4
+ import { formContract as $ } from "@vhyxui/core";
5
+ import { withAgentContract as k } from "@vhyxseal/react";
6
+ const A = "_form_14a4e_3", D = "_field_14a4e_24", H = "_label_14a4e_40", L = "_control_14a4e_46", G = "_hint_14a4e_51", J = "_error_14a4e_52", K = "_required_14a4e_76", O = "_optional_14a4e_81", a = {
7
+ form: A,
8
+ field: D,
9
+ "field--horizontal": "_field--horizontal_14a4e_30",
10
+ label: H,
11
+ control: L,
12
+ hint: G,
13
+ error: J,
14
+ required: K,
15
+ optional: O
16
+ }, q = P(null);
17
+ function Q() {
18
+ return w(q);
19
+ }
20
+ const E = N.forwardRef(
21
+ ({
22
+ form: e,
23
+ layout: s = "vertical",
24
+ size: n = "md",
25
+ disabled: f = !1,
26
+ onSubmit: i,
27
+ className: y,
28
+ children: F,
29
+ ...c
30
+ }, g) => {
31
+ const d = e == null ? void 0 : e.formState, r = e == null ? void 0 : e.register, l = e ? (t) => e.getFieldState(t) : void 0, _ = z(
32
+ (t) => {
33
+ t.preventDefault(), e && i ? e.handleSubmit((h) => {
34
+ i(h);
35
+ })(t) : i && i({});
36
+ },
37
+ [e, i]
38
+ ), o = M(
39
+ () => {
40
+ const t = { disabled: f, size: n, layout: s };
41
+ return d !== void 0 && (t.formState = d), r !== void 0 && (t.register = r), l !== void 0 && (t.getFieldState = l), t;
42
+ },
43
+ [d, r, l, f, n, s]
44
+ ), m = [a.form, y].filter(Boolean).join(" ");
45
+ return /* @__PURE__ */ u(q.Provider, { value: o, children: /* @__PURE__ */ u(
46
+ "form",
47
+ {
48
+ ref: g,
49
+ className: m,
50
+ "data-layout": s,
51
+ "data-size": n,
52
+ onSubmit: _,
53
+ ...c,
54
+ children: F
55
+ }
56
+ ) });
57
+ }
58
+ );
59
+ E.displayName = "VhyxForm";
60
+ const T = { ...$, id: "vhyxui-form" }, U = k(E, T);
61
+ U.displayName = "VhyxForm";
62
+ function W({
63
+ name: e,
64
+ label: s,
65
+ hint: n,
66
+ error: f,
67
+ required: i = !1,
68
+ optional: y = !1,
69
+ layout: F,
70
+ children: c,
71
+ className: g,
72
+ ...d
73
+ }) {
74
+ var j, B, C;
75
+ const r = R("field"), l = `${r}-hint`, _ = `${r}-error`, o = Q(), m = (C = (B = (j = o == null ? void 0 : o.getFieldState) == null ? void 0 : j.call(o, e)) == null ? void 0 : B.error) == null ? void 0 : C.message, t = f ?? (typeof m == "string" ? m : void 0), h = !!t, x = !!n, p = [];
76
+ x && p.push(l), h && p.push(_);
77
+ const b = p.length > 0 ? p.join(" ") : void 0, S = F ?? (o == null ? void 0 : o.layout) ?? "vertical", I = N.isValidElement(c) ? N.cloneElement(
78
+ c,
79
+ {
80
+ id: r,
81
+ ...b !== void 0 ? { "aria-describedby": b } : {},
82
+ ...h ? { "aria-invalid": !0, "data-error": !0 } : {}
83
+ }
84
+ ) : c, V = [
85
+ a.field,
86
+ S === "horizontal" ? a["field--horizontal"] : "",
87
+ g
88
+ ].filter(Boolean).join(" ");
89
+ return /* @__PURE__ */ v("div", { className: V, "data-layout": S, ...d, children: [
90
+ s !== void 0 && /* @__PURE__ */ v("label", { htmlFor: r, className: a.label, children: [
91
+ s,
92
+ i && /* @__PURE__ */ v("span", { className: a.required, "aria-hidden": "true", children: [
93
+ " ",
94
+ "*"
95
+ ] }),
96
+ y && /* @__PURE__ */ v("span", { className: a.optional, "aria-hidden": "true", children: [
97
+ " ",
98
+ "(optional)"
99
+ ] })
100
+ ] }),
101
+ /* @__PURE__ */ u("div", { className: a.control, children: I }),
102
+ x && /* @__PURE__ */ u("span", { id: l, className: a.hint, children: n }),
103
+ h && /* @__PURE__ */ u(
104
+ "span",
105
+ {
106
+ id: _,
107
+ className: a.error,
108
+ role: "alert",
109
+ "aria-live": "assertive",
110
+ children: t
111
+ }
112
+ )
113
+ ] });
114
+ }
115
+ W.displayName = "VhyxField";
116
+ export {
117
+ W as F,
118
+ U as a,
119
+ Q as u
120
+ };
@@ -0,0 +1 @@
1
+ "use strict";const p=require("react/jsx-runtime"),d=require("react"),x=require("./cx-dgWA95G6.cjs"),f=require("./utils.cjs"),g="_grid_1w7ml_1",y={grid:g},t=d.forwardRef(({as:s="div",columns:a=1,minChildWidth:e,gap:i=4,collapseBelow:o,className:c,style:n,...m},u)=>{const r=typeof e=="number"?`${e}px`:e,l=r?`repeat(auto-fit, minmax(min(${r}, 100%), 1fr))`:`repeat(${Math.max(1,Math.floor(a))}, minmax(0, 1fr))`;return p.jsx(s,{ref:u,className:x.cx(y.grid,c),"data-collapse":r?void 0:o,style:{gridTemplateColumns:l,gap:f.spaceVar(i),...n},...m})});t.displayName="VhyxGrid";exports.Grid=t;
@@ -0,0 +1,25 @@
1
+ import { jsx as n } from "react/jsx-runtime";
2
+ import l from "react";
3
+ import { c as d } from "./cx-OWdTFKLx.js";
4
+ import { spaceVar as x } from "./utils.js";
5
+ const g = "_grid_1w7ml_1", y = {
6
+ grid: g
7
+ }, u = l.forwardRef(
8
+ ({ as: t = "div", columns: o = 1, minChildWidth: r, gap: e = 4, collapseBelow: m, className: s, style: p, ...i }, c) => {
9
+ const a = typeof r == "number" ? `${r}px` : r, f = a ? `repeat(auto-fit, minmax(min(${a}, 100%), 1fr))` : `repeat(${Math.max(1, Math.floor(o))}, minmax(0, 1fr))`;
10
+ return /* @__PURE__ */ n(
11
+ t,
12
+ {
13
+ ref: c,
14
+ className: d(y.grid, s),
15
+ "data-collapse": a ? void 0 : m,
16
+ style: { gridTemplateColumns: f, gap: x(e), ...p },
17
+ ...i
18
+ }
19
+ );
20
+ }
21
+ );
22
+ u.displayName = "VhyxGrid";
23
+ export {
24
+ u as G
25
+ };
@@ -0,0 +1,14 @@
1
+ import { jsx as e } from "react/jsx-runtime";
2
+ import i from "react";
3
+ import { c } from "./cx-OWdTFKLx.js";
4
+ import { s as d } from "./Text.module-CEBydIO4.js";
5
+ const n = { 1: "2xl", 2: "xl", 3: "lg", 4: "md", 5: "sm", 6: "xs" }, x = i.forwardRef(
6
+ ({ level: s = 2, size: a, className: o, ...r }, m) => {
7
+ const t = `h${s}`;
8
+ return /* @__PURE__ */ e(t, { ref: m, className: c(d.heading, o), "data-size": a ?? n[s], ...r });
9
+ }
10
+ );
11
+ x.displayName = "VhyxHeading";
12
+ export {
13
+ x as H
14
+ };
@@ -0,0 +1 @@
1
+ "use strict";const i=require("react/jsx-runtime"),d=require("react"),o=require("./cx-dgWA95G6.cjs"),x=require("./Text.module-gGopk2Yk.cjs"),u={1:"2xl",2:"xl",3:"lg",4:"md",5:"sm",6:"xs"},s=d.forwardRef(({level:e=2,size:t,className:a,...n},r)=>{const c=`h${e}`;return i.jsx(c,{ref:r,className:o.cx(x.styles.heading,a),"data-size":t??u[e],...n})});s.displayName="VhyxHeading";exports.Heading=s;
@@ -0,0 +1,151 @@
1
+ import { jsxs as n, jsx as t, Fragment as m } from "react/jsx-runtime";
2
+ import J, { useState as O, useCallback as w } from "react";
3
+ import { inputContract as _ } from "@vhyxui/core";
4
+ import { withAgentContract as T } from "@vhyxseal/react";
5
+ import { u as D } from "./useId-BGRmH6iF.js";
6
+ const G = "_wrapper_uqbxf_1", K = "_input_uqbxf_60", Q = "_icon_uqbxf_94", U = "_prefix_uqbxf_106", X = "_suffix_uqbxf_107", e = {
7
+ wrapper: G,
8
+ "wrapper--error": "_wrapper--error_uqbxf_29",
9
+ input: K,
10
+ icon: Q,
11
+ prefix: U,
12
+ suffix: X,
13
+ "clear-button": "_clear-button_uqbxf_117",
14
+ "toggle-button": "_toggle-button_uqbxf_118"
15
+ };
16
+ function Y({ crossed: s }) {
17
+ return /* @__PURE__ */ t(
18
+ "svg",
19
+ {
20
+ "aria-hidden": "true",
21
+ viewBox: "0 0 24 24",
22
+ fill: "none",
23
+ stroke: "currentColor",
24
+ strokeWidth: 2,
25
+ strokeLinecap: "round",
26
+ strokeLinejoin: "round",
27
+ style: { width: "1em", height: "1em" },
28
+ children: s ? /* @__PURE__ */ n(m, { children: [
29
+ /* @__PURE__ */ t("path", { d: "M17.94 17.94A10.07 10.07 0 0 1 12 20c-7 0-11-8-11-8a18.45 18.45 0 0 1 5.06-5.94" }),
30
+ /* @__PURE__ */ t("path", { d: "M9.9 4.24A9.12 9.12 0 0 1 12 4c7 0 11 8 11 8a18.5 18.5 0 0 1-2.16 3.19" }),
31
+ /* @__PURE__ */ t("line", { x1: "1", y1: "1", x2: "23", y2: "23" })
32
+ ] }) : /* @__PURE__ */ n(m, { children: [
33
+ /* @__PURE__ */ t("path", { d: "M1 12s4-8 11-8 11 8 11 8-4 8-11 8-11-8-11-8z" }),
34
+ /* @__PURE__ */ t("circle", { cx: 12, cy: 12, r: 3 })
35
+ ] })
36
+ }
37
+ );
38
+ }
39
+ function Z() {
40
+ return /* @__PURE__ */ n(
41
+ "svg",
42
+ {
43
+ "aria-hidden": "true",
44
+ viewBox: "0 0 24 24",
45
+ fill: "none",
46
+ stroke: "currentColor",
47
+ strokeWidth: 2.5,
48
+ strokeLinecap: "round",
49
+ style: { width: "0.75em", height: "0.75em" },
50
+ children: [
51
+ /* @__PURE__ */ t("line", { x1: "18", y1: "6", x2: "6", y2: "18" }),
52
+ /* @__PURE__ */ t("line", { x1: "6", y1: "6", x2: "18", y2: "18" })
53
+ ]
54
+ }
55
+ );
56
+ }
57
+ const y = J.forwardRef(
58
+ ({
59
+ size: s = "md",
60
+ icon: i,
61
+ iconPosition: o = "left",
62
+ suffix: c,
63
+ prefix: f,
64
+ clearable: g = !1,
65
+ onClear: r,
66
+ error: d = !1,
67
+ contract: v,
68
+ className: I,
69
+ id: N,
70
+ type: l,
71
+ value: u,
72
+ onChange: k,
73
+ "aria-label": C,
74
+ "aria-describedby": q,
75
+ ...S
76
+ }, B) => {
77
+ const j = D("vhyx-input"), x = N ?? j, [p, A] = O(!1), L = w(() => {
78
+ A((H) => !H);
79
+ }, []), h = l === "password", M = l === "search", P = h ? p ? "text" : "password" : l, V = u !== void 0 ? String(u).length > 0 : !1, b = g || M && V, z = w(() => {
80
+ r == null || r();
81
+ }, [r]), a = !!i, R = !!f, W = !!c || h || b, E = {
82
+ ..._,
83
+ id: x,
84
+ ...v
85
+ }, F = [
86
+ e.wrapper,
87
+ d ? e["wrapper--error"] : "",
88
+ I
89
+ ].filter(Boolean).join(" ");
90
+ return /* @__PURE__ */ n(
91
+ "div",
92
+ {
93
+ className: F,
94
+ "data-size": s,
95
+ "data-error": d ? !0 : void 0,
96
+ "data-has-icon": a ? !0 : void 0,
97
+ "data-icon-position": a ? o : void 0,
98
+ children: [
99
+ R && /* @__PURE__ */ t("span", { className: e.prefix, "aria-hidden": "true", children: f }),
100
+ a && o === "left" && /* @__PURE__ */ t("span", { className: e.icon, "aria-hidden": "true", children: i }),
101
+ /* @__PURE__ */ t(
102
+ "input",
103
+ {
104
+ ref: B,
105
+ id: x,
106
+ type: P,
107
+ value: u,
108
+ onChange: k,
109
+ "aria-invalid": d ? !0 : void 0,
110
+ "aria-label": C,
111
+ "aria-describedby": q,
112
+ className: e.input,
113
+ "data-vhyx-contract": JSON.stringify(E),
114
+ ...S
115
+ }
116
+ ),
117
+ a && o === "right" && /* @__PURE__ */ t("span", { className: e.icon, "aria-hidden": "true", children: i }),
118
+ b && /* @__PURE__ */ t(
119
+ "button",
120
+ {
121
+ type: "button",
122
+ className: e["clear-button"],
123
+ onClick: z,
124
+ "aria-label": "Clear",
125
+ tabIndex: 0,
126
+ children: /* @__PURE__ */ t(Z, {})
127
+ }
128
+ ),
129
+ h && /* @__PURE__ */ t(
130
+ "button",
131
+ {
132
+ type: "button",
133
+ className: e["toggle-button"],
134
+ onClick: L,
135
+ "aria-label": p ? "Hide password" : "Show password",
136
+ tabIndex: 0,
137
+ children: /* @__PURE__ */ t(Y, { crossed: p })
138
+ }
139
+ ),
140
+ W && c && /* @__PURE__ */ t("span", { className: e.suffix, "aria-hidden": "true", children: c })
141
+ ]
142
+ }
143
+ );
144
+ }
145
+ );
146
+ y.displayName = "VhyxInput";
147
+ const $ = { ..._, id: "vhyxui-input" }, tt = T(y, $);
148
+ tt.displayName = "VhyxInput";
149
+ export {
150
+ tt as I
151
+ };
@@ -0,0 +1 @@
1
+ "use strict";const e=require("react/jsx-runtime"),a=require("react"),w=require("@vhyxui/core"),H=require("@vhyxseal/react"),J=require("./useId-D2AEOm2G.cjs"),O="_wrapper_uqbxf_1",T="_input_uqbxf_60",D="_icon_uqbxf_94",G="_prefix_uqbxf_106",K="_suffix_uqbxf_107",t={wrapper:O,"wrapper--error":"_wrapper--error_uqbxf_29",input:T,icon:D,prefix:G,suffix:K,"clear-button":"_clear-button_uqbxf_117","toggle-button":"_toggle-button_uqbxf_118"};function Q({crossed:n}){return e.jsx("svg",{"aria-hidden":"true",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round",style:{width:"1em",height:"1em"},children:n?e.jsxs(e.Fragment,{children:[e.jsx("path",{d:"M17.94 17.94A10.07 10.07 0 0 1 12 20c-7 0-11-8-11-8a18.45 18.45 0 0 1 5.06-5.94"}),e.jsx("path",{d:"M9.9 4.24A9.12 9.12 0 0 1 12 4c7 0 11 8 11 8a18.5 18.5 0 0 1-2.16 3.19"}),e.jsx("line",{x1:"1",y1:"1",x2:"23",y2:"23"})]}):e.jsxs(e.Fragment,{children:[e.jsx("path",{d:"M1 12s4-8 11-8 11 8 11 8-4 8-11 8-11-8-11-8z"}),e.jsx("circle",{cx:12,cy:12,r:3})]})})}function U(){return e.jsxs("svg",{"aria-hidden":"true",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:2.5,strokeLinecap:"round",style:{width:"0.75em",height:"0.75em"},children:[e.jsx("line",{x1:"18",y1:"6",x2:"6",y2:"18"}),e.jsx("line",{x1:"6",y1:"6",x2:"18",y2:"18"})]})}const j=a.forwardRef(({size:n="md",icon:i,iconPosition:o="left",suffix:c,prefix:h,clearable:y=!1,onClear:s,error:d=!1,contract:g,className:m,id:v,type:u,value:l,onChange:I,"aria-label":q,"aria-describedby":k,...C},N)=>{const S=J.useId("vhyx-input"),f=v??S,[x,B]=a.useState(!1),A=a.useCallback(()=>{B(E=>!E)},[]),p=u==="password",L=u==="search",M=p?x?"text":"password":u,P=l!==void 0?String(l).length>0:!1,b=y||L&&P,R=a.useCallback(()=>{s==null||s()},[s]),r=!!i,V=!!h,z=!!c||p||b,F={...w.inputContract,id:f,...g},W=[t.wrapper,d?t["wrapper--error"]:"",m].filter(Boolean).join(" ");return e.jsxs("div",{className:W,"data-size":n,"data-error":d?!0:void 0,"data-has-icon":r?!0:void 0,"data-icon-position":r?o:void 0,children:[V&&e.jsx("span",{className:t.prefix,"aria-hidden":"true",children:h}),r&&o==="left"&&e.jsx("span",{className:t.icon,"aria-hidden":"true",children:i}),e.jsx("input",{ref:N,id:f,type:M,value:l,onChange:I,"aria-invalid":d?!0:void 0,"aria-label":q,"aria-describedby":k,className:t.input,"data-vhyx-contract":JSON.stringify(F),...C}),r&&o==="right"&&e.jsx("span",{className:t.icon,"aria-hidden":"true",children:i}),b&&e.jsx("button",{type:"button",className:t["clear-button"],onClick:R,"aria-label":"Clear",tabIndex:0,children:e.jsx(U,{})}),p&&e.jsx("button",{type:"button",className:t["toggle-button"],onClick:A,"aria-label":x?"Hide password":"Show password",tabIndex:0,children:e.jsx(Q,{crossed:x})}),z&&c&&e.jsx("span",{className:t.suffix,"aria-hidden":"true",children:c})]})});j.displayName="VhyxInput";const X={...w.inputContract,id:"vhyxui-input"},_=H.withAgentContract(j,X);_.displayName="VhyxInput";exports.Input=_;
@@ -0,0 +1 @@
1
+ "use strict";const e=require("react/jsx-runtime"),o={display:"inline-flex",alignItems:"center",minWidth:"1.5em",justifyContent:"center",padding:"0 var(--vhyx-space-1-5)",fontFamily:"var(--vhyx-font-mono)",fontSize:"var(--vhyx-text-xs)",lineHeight:1.6,color:"var(--vhyx-color-text-subtle)",background:"var(--vhyx-color-bg-subtle)",border:"var(--vhyx-border-width) solid var(--vhyx-color-border)",borderBottomWidth:2,borderRadius:"var(--vhyx-radius-sm)"};function l({keys:r,children:d,style:t,...i}){return r&&r.length>0?e.jsx("kbd",{style:{display:"inline-flex",gap:"var(--vhyx-space-1)",...t},...i,children:r.map((n,a)=>e.jsx("kbd",{style:o,children:n},`${n}-${a}`))}):e.jsx("kbd",{style:{...o,...t},...i,children:d})}exports.Kbd=l;
@@ -0,0 +1,22 @@
1
+ import { jsx as e } from "react/jsx-runtime";
2
+ const n = {
3
+ display: "inline-flex",
4
+ alignItems: "center",
5
+ minWidth: "1.5em",
6
+ justifyContent: "center",
7
+ padding: "0 var(--vhyx-space-1-5)",
8
+ fontFamily: "var(--vhyx-font-mono)",
9
+ fontSize: "var(--vhyx-text-xs)",
10
+ lineHeight: 1.6,
11
+ color: "var(--vhyx-color-text-subtle)",
12
+ background: "var(--vhyx-color-bg-subtle)",
13
+ border: "var(--vhyx-border-width) solid var(--vhyx-color-border)",
14
+ borderBottomWidth: 2,
15
+ borderRadius: "var(--vhyx-radius-sm)"
16
+ };
17
+ function v({ keys: r, children: a, style: t, ...o }) {
18
+ return r && r.length > 0 ? /* @__PURE__ */ e("kbd", { style: { display: "inline-flex", gap: "var(--vhyx-space-1)", ...t }, ...o, children: r.map((i, d) => /* @__PURE__ */ e("kbd", { style: n, children: i }, `${i}-${d}`)) }) : /* @__PURE__ */ e("kbd", { style: { ...n, ...t }, ...o, children: a });
19
+ }
20
+ export {
21
+ v as K
22
+ };
@@ -0,0 +1 @@
1
+ "use strict";const t=require("react/jsx-runtime"),m=require("react"),_=require("@vhyxui/core"),g=require("@vhyxseal/react"),L=require("./useId-D2AEOm2G.cjs"),M="_nav_1kxmq_1",P="_list_1kxmq_5",E="_button_1kxmq_15",w="_ellipsis_1kxmq_75",l={nav:M,list:P,button:E,ellipsis:w},p="ellipsis";function A(i,s,a){const u=a*2+5;if(s<=u)return Array.from({length:s},(c,x)=>x+1);const o=Math.max(i-a,2),r=Math.min(i+a,s-1),n=o>2,b=r<s-1,e=[1];n&&e.push(p);for(let c=o;c<=r;c++)e.push(c);return b&&e.push(p),e.push(s),e}const N=m.forwardRef(({page:i,pageCount:s,onPageChange:a,siblingCount:u=1,showFirstLast:o=!1,showPrevNext:r=!0,size:n="md",contract:b,className:e,...c},x)=>{const f=L.useId("vhyx-pagination"),q=m.useMemo(()=>({..._.paginationContract,id:f,...b}),[f,b]),S=m.useMemo(()=>A(i,s,u),[i,s,u]),j=i<=1,y=i>=s,I=[l.nav,e].filter(Boolean).join(" ");return t.jsx("nav",{ref:x,"aria-label":"Pagination",className:I,"data-size":n,"data-vhyx-contract":JSON.stringify(q),...c,children:t.jsxs("ul",{className:l.list,children:[o&&t.jsx("li",{children:t.jsx("button",{type:"button",className:l.button,onClick:()=>a(1),disabled:j,"aria-label":"First page","data-size":n,children:"«"})}),r&&t.jsx("li",{children:t.jsx("button",{type:"button",className:l.button,onClick:()=>a(i-1),disabled:j,"aria-label":"Previous page","data-size":n,children:"‹"})}),S.map((v,R)=>{if(v===p)return t.jsx("li",{children:t.jsx("span",{className:l.ellipsis,"aria-hidden":"true",children:"…"})},`ellipsis-${R}`);const d=v,h=d===i;return t.jsx("li",{children:t.jsx("button",{type:"button",className:l.button,onClick:()=>!h&&a(d),"aria-current":h?"page":void 0,"aria-label":h?void 0:`Page ${d}`,"data-state":h?"active":"inactive","data-size":n,children:d})},d)}),r&&t.jsx("li",{children:t.jsx("button",{type:"button",className:l.button,onClick:()=>a(i+1),disabled:y,"aria-label":"Next page","data-size":n,children:"›"})}),o&&t.jsx("li",{children:t.jsx("button",{type:"button",className:l.button,onClick:()=>a(s),disabled:y,"aria-label":"Last page","data-size":n,children:"»"})})]})})});N.displayName="VhyxPagination";const B={..._.paginationContract,id:"vhyxui-pagination"},k=g.withAgentContract(N,B);k.displayName="VhyxPagination";exports.Pagination=k;
@@ -0,0 +1,128 @@
1
+ import { jsx as t, jsxs as P } from "react/jsx-runtime";
2
+ import R, { useMemo as _ } from "react";
3
+ import { paginationContract as N } from "@vhyxui/core";
4
+ import { withAgentContract as j } from "@vhyxseal/react";
5
+ import { u as E } from "./useId-BGRmH6iF.js";
6
+ const M = "_nav_1kxmq_1", g = "_list_1kxmq_5", w = "_button_1kxmq_15", A = "_ellipsis_1kxmq_75", l = {
7
+ nav: M,
8
+ list: g,
9
+ button: w,
10
+ ellipsis: A
11
+ }, p = "ellipsis";
12
+ function B(i, a, n) {
13
+ const m = n * 2 + 5;
14
+ if (a <= m)
15
+ return Array.from({ length: a }, (e, h) => h + 1);
16
+ const r = Math.max(i - n, 2), c = Math.min(i + n, a - 1), s = r > 2, u = c < a - 1, o = [1];
17
+ s && o.push(p);
18
+ for (let e = r; e <= c; e++)
19
+ o.push(e);
20
+ return u && o.push(p), o.push(a), o;
21
+ }
22
+ const k = R.forwardRef(
23
+ ({
24
+ page: i,
25
+ pageCount: a,
26
+ onPageChange: n,
27
+ siblingCount: m = 1,
28
+ showFirstLast: r = !1,
29
+ showPrevNext: c = !0,
30
+ size: s = "md",
31
+ contract: u,
32
+ className: o,
33
+ ...e
34
+ }, h) => {
35
+ const f = E("vhyx-pagination"), S = _(
36
+ () => ({ ...N, id: f, ...u }),
37
+ [f, u]
38
+ ), q = _(
39
+ () => B(i, a, m),
40
+ [i, a, m]
41
+ ), y = i <= 1, v = i >= a, I = [l.nav, o].filter(Boolean).join(" ");
42
+ return /* @__PURE__ */ t(
43
+ "nav",
44
+ {
45
+ ref: h,
46
+ "aria-label": "Pagination",
47
+ className: I,
48
+ "data-size": s,
49
+ "data-vhyx-contract": JSON.stringify(S),
50
+ ...e,
51
+ children: /* @__PURE__ */ P("ul", { className: l.list, children: [
52
+ r && /* @__PURE__ */ t("li", { children: /* @__PURE__ */ t(
53
+ "button",
54
+ {
55
+ type: "button",
56
+ className: l.button,
57
+ onClick: () => n(1),
58
+ disabled: y,
59
+ "aria-label": "First page",
60
+ "data-size": s,
61
+ children: "«"
62
+ }
63
+ ) }),
64
+ c && /* @__PURE__ */ t("li", { children: /* @__PURE__ */ t(
65
+ "button",
66
+ {
67
+ type: "button",
68
+ className: l.button,
69
+ onClick: () => n(i - 1),
70
+ disabled: y,
71
+ "aria-label": "Previous page",
72
+ "data-size": s,
73
+ children: "‹"
74
+ }
75
+ ) }),
76
+ q.map((x, L) => {
77
+ if (x === p)
78
+ return /* @__PURE__ */ t("li", { children: /* @__PURE__ */ t("span", { className: l.ellipsis, "aria-hidden": "true", children: "…" }) }, `ellipsis-${L}`);
79
+ const d = x, b = d === i;
80
+ return /* @__PURE__ */ t("li", { children: /* @__PURE__ */ t(
81
+ "button",
82
+ {
83
+ type: "button",
84
+ className: l.button,
85
+ onClick: () => !b && n(d),
86
+ "aria-current": b ? "page" : void 0,
87
+ "aria-label": b ? void 0 : `Page ${d}`,
88
+ "data-state": b ? "active" : "inactive",
89
+ "data-size": s,
90
+ children: d
91
+ }
92
+ ) }, d);
93
+ }),
94
+ c && /* @__PURE__ */ t("li", { children: /* @__PURE__ */ t(
95
+ "button",
96
+ {
97
+ type: "button",
98
+ className: l.button,
99
+ onClick: () => n(i + 1),
100
+ disabled: v,
101
+ "aria-label": "Next page",
102
+ "data-size": s,
103
+ children: "›"
104
+ }
105
+ ) }),
106
+ r && /* @__PURE__ */ t("li", { children: /* @__PURE__ */ t(
107
+ "button",
108
+ {
109
+ type: "button",
110
+ className: l.button,
111
+ onClick: () => n(a),
112
+ disabled: v,
113
+ "aria-label": "Last page",
114
+ "data-size": s,
115
+ children: "»"
116
+ }
117
+ ) })
118
+ ] })
119
+ }
120
+ );
121
+ }
122
+ );
123
+ k.displayName = "VhyxPagination";
124
+ const V = { ...N, id: "vhyxui-pagination" }, $ = j(k, V);
125
+ $.displayName = "VhyxPagination";
126
+ export {
127
+ $ as P
128
+ };