brutx-ui-vue 0.9.9 → 0.9.11

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 (156) hide show
  1. package/dist/chunks/{AuthCard-DAk6Q3n2.js → AuthCard-DeACCtKv.js} +1 -1
  2. package/dist/chunks/{DashboardShell-C9QDHVsG.js → DashboardShell-BuAqv-5Z.js} +12 -12
  3. package/dist/chunks/{DataTable-v6odfpSY.js → DataTable-S5luTeKx.js} +2 -2
  4. package/dist/chunks/{FeedbackForm-Bj38uGf-.js → FeedbackForm-xqjfiPHv.js} +2 -2
  5. package/dist/chunks/{FooterSection-Cv2eQQXH.js → FooterSection-BWAUiRAn.js} +10 -10
  6. package/dist/chunks/{HardcoreInput-b6-eON5f.js → HardcoreInput-DgMpsS2d.js} +40 -31
  7. package/dist/chunks/{HeaderSection-Dm7MhNWk.js → HeaderSection-BwOsh0lZ.js} +18 -18
  8. package/dist/chunks/{Input-Cgt7mldw.js → Input-qKeVv2nE.js} +35 -25
  9. package/dist/chunks/{KanbanBoard-CsmS0Sr-.js → KanbanBoard-DPBZJwqL.js} +2 -2
  10. package/dist/chunks/{NoiseBackground-MyEeaFgH.js → NoiseBackground-u5ie1E_M.js} +1 -2
  11. package/dist/chunks/{Pagination-D94MJ-5i.js → Pagination-TPDhgBtp.js} +1 -1
  12. package/dist/chunks/ScratchCard-CSnH0QrE.js +100 -0
  13. package/dist/chunks/{SelectSeparator-B4kviEmv.js → SelectSeparator-PCTmI70q.js} +21 -20
  14. package/dist/chunks/{SkeletonTable-jS8HiisA.js → SkeletonTable-Y3mmt4Ru.js} +1 -0
  15. package/dist/chunks/{Slider-DxFWq588.js → Slider-DOfELoQi.js} +46 -46
  16. package/dist/chunks/{Stepper-D49v7iMb.js → Stepper-DrciUcXp.js} +9 -9
  17. package/dist/chunks/{SubMenu-oD7qBrtZ.js → SubMenu-DIYKb1P3.js} +31 -24
  18. package/dist/chunks/{TableCaption-C-DUnkXx.js → TableCaption-BOGu3F4m.js} +1 -1
  19. package/dist/chunks/{Tabs-5NGmdnfd.js → Tabs-C1TspMAr.js} +51 -43
  20. package/dist/chunks/{TagsInputItemDelete-CTHZCMUY.js → TagsInputItemDelete-xHFI-gXR.js} +12 -8
  21. package/dist/chunks/{Textarea-BWwVFvYd.js → Textarea-zK2n7NrR.js} +19 -9
  22. package/dist/chunks/{Tour-BZGKQNf7.js → Tour-xVANZOcM.js} +9 -1
  23. package/dist/chunks/{Transfer-BcLrawvV.js → Transfer-BQeH3qg4.js} +3 -3
  24. package/dist/chunks/{TreeSelect-Dt2UiMnG.js → TreeSelect-CZkeUsxa.js} +131 -114
  25. package/dist/chunks/{TreeView-B7ETE04q.js → TreeView-CVv06aG0.js} +123 -123
  26. package/dist/chunks/{UploadFileList-CWrGZQo3.js → UploadFileList-Galy0yYT.js} +107 -97
  27. package/dist/chunks/{VirtualScroll-1GcfIhEp.js → VirtualScroll-BUg5hvXK.js} +2 -0
  28. package/dist/chunks/{Watermark-D7VB39cd.js → Watermark-D8AQEV6Q.js} +12 -5
  29. package/dist/chunks/{code-block-BJoWlko2.js → code-block-iSJabE5O.js} +1 -1
  30. package/dist/chunks/{form-BMVZ-Mdq.js → form-xJNi-zE3.js} +7 -5
  31. package/dist/chunks/{functional-ZVsrDRu9.js → functional-fYVlDvZ_.js} +5 -5
  32. package/dist/chunks/{locales-vmgWoduO.js → locales-C_U381MQ.js} +27 -17
  33. package/dist/chunks/{plugin-CHaCenTo.js → plugin-CwDSizUp.js} +7 -3
  34. package/dist/chunks/{useInfiniteScroll-Bj0Hy8eF.js → useInfiniteScroll-DMMdTHID.js} +3 -2
  35. package/dist/chunks/{useMessage-DSUQYEbg.js → useMessage-Ckp2SQB0.js} +1 -1
  36. package/dist/chunks/{zh-CN-Dp1Z58Nv.js → zh-CN-9JcLDC8B.js} +8 -10
  37. package/dist/components/auth-card/index.js +1 -1
  38. package/dist/components/code-block/CodeBlock.vue.d.ts.map +1 -1
  39. package/dist/components/code-block/index.js +1 -1
  40. package/dist/components/dashboard-shell/DashboardShell.vue.d.ts.map +1 -1
  41. package/dist/components/dashboard-shell/index.js +1 -1
  42. package/dist/components/data-table/index.js +1 -1
  43. package/dist/components/dialog/index.js +1 -1
  44. package/dist/components/feedback-form/index.js +1 -1
  45. package/dist/components/footer-section/FooterSection.vue.d.ts.map +1 -1
  46. package/dist/components/footer-section/index.js +1 -1
  47. package/dist/components/form/Form.vue.d.ts.map +1 -1
  48. package/dist/components/form/FormWizard.vue.d.ts.map +1 -1
  49. package/dist/components/form/index.js +1 -1
  50. package/dist/components/hardcore-input/HardcoreInput.vue.d.ts.map +1 -1
  51. package/dist/components/hardcore-input/index.js +1 -1
  52. package/dist/components/header-section/HeaderSection.vue.d.ts.map +1 -1
  53. package/dist/components/header-section/index.js +1 -1
  54. package/dist/components/infinite-scroll/InfiniteScroll.vue.d.ts +7 -0
  55. package/dist/components/infinite-scroll/InfiniteScroll.vue.d.ts.map +1 -1
  56. package/dist/components/infinite-scroll/index.js +1 -1
  57. package/dist/components/input/Input.vue.d.ts.map +1 -1
  58. package/dist/components/input/index.js +1 -1
  59. package/dist/components/kanban/KanbanBoard.vue.d.ts.map +1 -1
  60. package/dist/components/kanban/index.js +1 -1
  61. package/dist/components/menu/MenuItem.vue.d.ts.map +1 -1
  62. package/dist/components/menu/SubMenu.vue.d.ts.map +1 -1
  63. package/dist/components/menu/index.js +1 -1
  64. package/dist/components/message/index.js +1 -1
  65. package/dist/components/noise-background/NoiseBackground.vue.d.ts.map +1 -1
  66. package/dist/components/noise-background/index.js +1 -1
  67. package/dist/components/pagination/index.js +1 -1
  68. package/dist/components/scratch-card/ScratchCard.vue.d.ts.map +1 -1
  69. package/dist/components/scratch-card/index.js +1 -1
  70. package/dist/components/select/Select.vue.d.ts.map +1 -1
  71. package/dist/components/select/index.js +1 -1
  72. package/dist/components/skeleton/SkeletonAvatar.vue.d.ts.map +1 -1
  73. package/dist/components/skeleton/index.js +1 -1
  74. package/dist/components/slider/Slider.vue.d.ts +1 -1
  75. package/dist/components/slider/Slider.vue.d.ts.map +1 -1
  76. package/dist/components/slider/index.js +1 -1
  77. package/dist/components/stepper/Stepper.vue.d.ts.map +1 -1
  78. package/dist/components/stepper/index.js +1 -1
  79. package/dist/components/table/index.js +1 -1
  80. package/dist/components/tabs/Tabs.vue.d.ts.map +1 -1
  81. package/dist/components/tabs/index.js +1 -1
  82. package/dist/components/tags-input/TagsInputItemDelete.vue.d.ts +5 -1
  83. package/dist/components/tags-input/TagsInputItemDelete.vue.d.ts.map +1 -1
  84. package/dist/components/tags-input/index.js +1 -1
  85. package/dist/components/textarea/Textarea.vue.d.ts.map +1 -1
  86. package/dist/components/textarea/index.js +1 -1
  87. package/dist/components/tour/Tour.vue.d.ts +3 -14
  88. package/dist/components/tour/Tour.vue.d.ts.map +1 -1
  89. package/dist/components/tour/index.d.ts +1 -0
  90. package/dist/components/tour/index.d.ts.map +1 -1
  91. package/dist/components/tour/index.js +1 -1
  92. package/dist/components/tour/types.d.ts +13 -0
  93. package/dist/components/tour/types.d.ts.map +1 -0
  94. package/dist/components/transfer/Transfer.vue.d.ts +1 -5
  95. package/dist/components/transfer/Transfer.vue.d.ts.map +1 -1
  96. package/dist/components/transfer/index.d.ts +1 -0
  97. package/dist/components/transfer/index.d.ts.map +1 -1
  98. package/dist/components/transfer/index.js +1 -1
  99. package/dist/components/transfer/types.d.ts +6 -0
  100. package/dist/components/transfer/types.d.ts.map +1 -0
  101. package/dist/components/tree-select/TreeSelect.vue.d.ts.map +1 -1
  102. package/dist/components/tree-select/TreeSelectNode.vue.d.ts.map +1 -1
  103. package/dist/components/tree-select/index.js +1 -1
  104. package/dist/components/tree-view/TreeView.vue.d.ts.map +1 -1
  105. package/dist/components/tree-view/TreeViewNode.vue.d.ts.map +1 -1
  106. package/dist/components/tree-view/index.js +1 -1
  107. package/dist/components/upload/Upload.vue.d.ts.map +1 -1
  108. package/dist/components/upload/UploadFileItem.vue.d.ts +2 -2
  109. package/dist/components/upload/UploadFileList.vue.d.ts +2 -2
  110. package/dist/components/upload/UploadTrigger.vue.d.ts +2 -2
  111. package/dist/components/upload/UploadTrigger.vue.d.ts.map +1 -1
  112. package/dist/components/upload/index.js +1 -1
  113. package/dist/components/virtual-scroll/VirtualScroll.vue.d.ts.map +1 -1
  114. package/dist/components/virtual-scroll/index.js +1 -1
  115. package/dist/components/watermark/Watermark.vue.d.ts.map +1 -1
  116. package/dist/components/watermark/index.js +1 -1
  117. package/dist/composables/destroyFallbacks.d.ts +7 -1
  118. package/dist/composables/destroyFallbacks.d.ts.map +1 -1
  119. package/dist/composables/destroyFallbacks.js +3 -2
  120. package/dist/composables/index.d.ts +1 -1
  121. package/dist/composables/index.d.ts.map +1 -1
  122. package/dist/composables/useDialog.js +1 -1
  123. package/dist/composables/useLocale.js +1 -1
  124. package/dist/composables/useMessage.js +1 -1
  125. package/dist/composables/useMessageBox.js +1 -1
  126. package/dist/directives/loading.d.ts +3 -4
  127. package/dist/directives/loading.d.ts.map +1 -1
  128. package/dist/directives/loading.js +26 -25
  129. package/dist/index.d.ts +3 -3
  130. package/dist/index.d.ts.map +1 -1
  131. package/dist/index.js +166 -157
  132. package/dist/lib/theme-variables.d.ts.map +1 -1
  133. package/dist/locales/en.d.ts.map +1 -1
  134. package/dist/locales/index.d.ts +6 -1
  135. package/dist/locales/index.d.ts.map +1 -1
  136. package/dist/locales/types.d.ts +18 -6
  137. package/dist/locales/types.d.ts.map +1 -1
  138. package/dist/locales/zh-CN.d.ts.map +1 -1
  139. package/dist/locales.js +2 -2
  140. package/dist/plugin.d.ts +3 -2
  141. package/dist/plugin.d.ts.map +1 -1
  142. package/dist/styles.css +1 -1
  143. package/dist/test/browser-mount.d.ts +1 -1
  144. package/dist/test/browser-mount.d.ts.map +1 -1
  145. package/dist/test-utils/a11y.d.ts +2 -1
  146. package/dist/test-utils/a11y.d.ts.map +1 -1
  147. package/dist/themes/index.d.ts +2 -1
  148. package/dist/themes/index.d.ts.map +1 -1
  149. package/dist/types.d.ts +30 -30
  150. package/dist/types.d.ts.map +1 -1
  151. package/dist/vitest.browser.setup.d.ts +1 -2
  152. package/dist/vitest.browser.setup.d.ts.map +1 -1
  153. package/dist/vitest.setup.d.ts +8 -0
  154. package/dist/vitest.setup.d.ts.map +1 -1
  155. package/package.json +1 -1
  156. package/dist/chunks/ScratchCard-ndvLtKC8.js +0 -93
@@ -3,7 +3,7 @@ import { t } from "./icon-size-variants-nPLFCnI7.js";
3
3
  import { useLocale as n } from "../composables/useLocale.js";
4
4
  import { t as r } from "./Button-CQH3jyWY.js";
5
5
  import { t as i } from "./Label-B3416ZVX.js";
6
- import { t as a } from "./Input-Cgt7mldw.js";
6
+ import { t as a } from "./Input-qKeVv2nE.js";
7
7
  import { t as o } from "./Card-BbuXTMF2.js";
8
8
  import { i as s, n as c, r as l, t as u } from "./CardFooter-qWuhvRh2.js";
9
9
  import { t as d } from "./CardContent-BMUyIIpB.js";
@@ -5,7 +5,7 @@ import { t as r } from "./Button-CQH3jyWY.js";
5
5
  import { computed as i, createElementBlock as a, createElementVNode as o, createTextVNode as s, createVNode as c, defineComponent as l, normalizeClass as u, openBlock as d, ref as f, renderSlot as p, toDisplayString as m, unref as h, withCtx as g } from "vue";
6
6
  import { Menu as _ } from "@lucide/vue";
7
7
  //#region src/components/dashboard-shell/DashboardShell.vue?vue&type=script&setup=true&lang.ts
8
- var v = ["aria-label"], y = { class: "flex-1 space-y-1" }, b = { class: "border-t-3 border-brutal pt-4 mt-4" }, x = { class: "text-sm font-bold truncate" }, S = { class: "flex-1 flex flex-col overflow-hidden" }, C = { class: "border-b-3 border-brutal bg-brutal-bg px-6 py-3 flex items-center justify-between" }, w = { class: "flex-1 overflow-y-auto p-6" }, T = /* @__PURE__ */ l({
8
+ var v = ["aria-label"], y = { class: "flex-1 space-y-1" }, b = { class: "border-t-3 border-brutal pt-4 mt-4" }, x = { class: "text-sm font-bold truncate" }, S = { class: "flex-1 flex flex-col overflow-hidden" }, C = { class: "border-b-3 border-brutal bg-brutal-bg px-6 py-3 flex items-center justify-between" }, w = { class: "flex-1 overflow-y-auto p-6" }, T = "user@example.com", E = /* @__PURE__ */ l({
9
9
  __name: "DashboardShell",
10
10
  props: {
11
11
  userEmail: { default: void 0 },
@@ -13,32 +13,32 @@ var v = ["aria-label"], y = { class: "flex-1 space-y-1" }, b = { class: "border-
13
13
  iconSize: { default: "default" }
14
14
  },
15
15
  emits: ["sign-out"],
16
- setup(l, { emit: T }) {
17
- let E = l, D = T, { t: O } = n(), k = f(!0), A = i(() => E.userEmail ?? O("dashboardShell.defaultEmail")), j = i(() => e("flex h-screen bg-brutal-bg", E.class)), M = i(() => e("border-r-3 border-brutal bg-brutal-bg p-4 flex flex-col", k.value ? "w-64" : "w-0 overflow-hidden md:w-64")), N = i(() => e(t({ size: E.iconSize }), "stroke-[3]"));
18
- return (e, t) => (d(), a("div", { class: u(j.value) }, [o("aside", {
19
- class: u(M.value),
20
- "aria-label": h(O)("dashboardShell.sidebarNavigation")
16
+ setup(l, { emit: E }) {
17
+ let D = l, O = E, { t: k } = n(), A = f(!0), j = i(() => D.userEmail ?? T), M = i(() => e("flex h-screen bg-brutal-bg", D.class)), N = i(() => e("border-r-3 border-brutal bg-brutal-bg p-4 flex flex-col", A.value ? "w-64" : "w-0 overflow-hidden md:w-64")), P = i(() => e(t({ size: D.iconSize }), "stroke-[3]"));
18
+ return (e, t) => (d(), a("div", { class: u(M.value) }, [o("aside", {
19
+ class: u(N.value),
20
+ "aria-label": h(k)("dashboardShell.sidebarNavigation")
21
21
  }, [
22
22
  t[2] ||= o("div", { class: "font-black text-lg tracking-tight mb-8" }, " BrutxUI ", -1),
23
23
  o("nav", y, [p(e.$slots, "sidebar")]),
24
- o("div", b, [o("div", x, m(A.value), 1), c(r, {
24
+ o("div", b, [o("div", x, m(j.value), 1), c(r, {
25
25
  variant: "link",
26
26
  class: "text-sm font-bold text-brutal-destructive mt-1 hover:no-underline",
27
- onClick: t[0] ||= (e) => D("sign-out")
27
+ onClick: t[0] ||= (e) => O("sign-out")
28
28
  }, {
29
- default: g(() => [s(m(h(O)("dashboardShell.signOut")), 1)]),
29
+ default: g(() => [s(m(h(k)("dashboardShell.signOut")), 1)]),
30
30
  _: 1
31
31
  })])
32
32
  ], 10, v), o("div", S, [o("header", C, [c(r, {
33
33
  variant: "default",
34
34
  size: "icon",
35
35
  class: "md:hidden h-8 w-8 shadow-brutal-sm",
36
- onClick: t[1] ||= (e) => k.value = !k.value
36
+ onClick: t[1] ||= (e) => A.value = !A.value
37
37
  }, {
38
- default: g(() => [c(h(_), { class: u(N.value) }, null, 8, ["class"])]),
38
+ default: g(() => [c(h(_), { class: u(P.value) }, null, 8, ["class"])]),
39
39
  _: 1
40
40
  }), p(e.$slots, "header")]), o("main", w, [p(e.$slots, "default")])])], 2));
41
41
  }
42
42
  });
43
43
  //#endregion
44
- export { T as t };
44
+ export { E as t };
@@ -4,7 +4,7 @@ import { useLocale as n } from "../composables/useLocale.js";
4
4
  import { g as r } from "./defaults-BrqEfXpQ.js";
5
5
  import { t as i } from "./Button-CQH3jyWY.js";
6
6
  import { t as a } from "./Checkbox-BJKxAvEj.js";
7
- import { t as o } from "./Input-Cgt7mldw.js";
7
+ import { t as o } from "./Input-qKeVv2nE.js";
8
8
  import { t as ee } from "./PopoverContent-BR4RHXYa.js";
9
9
  import { a as te, n as ne, t as s } from "./SelectItem-B541Rhqy.js";
10
10
  import { t as c } from "./data-table-utils-Cilh_JGU.js";
@@ -12,7 +12,7 @@ import { useDataTableSort as l } from "../composables/useDataTableSort.js";
12
12
  import { useDataTableFilter as u } from "../composables/useDataTableFilter.js";
13
13
  import { useDataTableSelection as d } from "../composables/useDataTableSelection.js";
14
14
  import { useDataTablePagination as re } from "../composables/useDataTablePagination.js";
15
- import { t as ie } from "./VirtualScroll-1GcfIhEp.js";
15
+ import { t as ie } from "./VirtualScroll-BUg5hvXK.js";
16
16
  import { n as ae, t as f } from "./PopoverTrigger-BxStODw9.js";
17
17
  import { Fragment as p, computed as m, createBlock as h, createCommentVNode as g, createElementBlock as _, createElementVNode as v, createTextVNode as y, createVNode as b, defineComponent as x, markRaw as oe, normalizeClass as S, normalizeStyle as C, openBlock as w, renderList as T, renderSlot as E, shallowRef as se, toDisplayString as D, unref as O, useSlots as ce, vShow as le, watch as k, watchEffect as ue, withCtx as A, withDirectives as de, withKeys as j, withModifiers as M } from "vue";
18
18
  import { ArrowDown as fe, ArrowUp as pe, ArrowUpDown as me, ChevronDown as N, ChevronLeft as he, ChevronRight as P, ChevronsLeft as ge, ChevronsRight as _e, Filter as F, Inbox as ve, Loader2 as ye } from "@lucide/vue";
@@ -3,10 +3,10 @@ import { t } from "./icon-size-variants-nPLFCnI7.js";
3
3
  import { useLocale as ee } from "../composables/useLocale.js";
4
4
  import { t as n } from "./Button-CQH3jyWY.js";
5
5
  import { t as r } from "./Label-B3416ZVX.js";
6
- import { t as i } from "./Input-Cgt7mldw.js";
6
+ import { t as i } from "./Input-qKeVv2nE.js";
7
7
  import { t as a } from "./Card-BbuXTMF2.js";
8
8
  import { t as o } from "./Result-DiJVipLS.js";
9
- import { t as s } from "./Textarea-BWwVFvYd.js";
9
+ import { t as s } from "./Textarea-zK2n7NrR.js";
10
10
  import { t as c } from "./CardContent-BMUyIIpB.js";
11
11
  import { Fragment as l, computed as u, createBlock as te, createCommentVNode as d, createElementBlock as f, createElementVNode as p, createTextVNode as m, createVNode as h, defineComponent as g, normalizeClass as _, openBlock as v, reactive as ne, ref as y, renderSlot as b, toDisplayString as x, unref as S, withCtx as C, withModifiers as w } from "vue";
12
12
  import { Send as T } from "@lucide/vue";
@@ -10,7 +10,7 @@ var y = { class: "max-w-7xl mx-auto px-4 md:px-6 py-10" }, b = { class: "mb-8" }
10
10
  }, C = {
11
11
  key: 0,
12
12
  class: "grid grid-cols-2 md:grid-cols-4 gap-8 mb-8"
13
- }, w = { class: "font-black text-sm tracking-wide text-brutal-fg mb-3" }, T = { class: "space-y-2 list-none" }, E = ["href", "onClick"], D = { class: "pt-6 text-center" }, O = { class: "text-sm text-brutal-muted-foreground font-medium" }, k = /* @__PURE__ */ f({
13
+ }, w = { class: "font-black text-sm tracking-wide text-brutal-fg mb-3" }, T = { class: "space-y-2 list-none" }, E = ["href", "onClick"], D = { class: "pt-6 text-center" }, O = { class: "text-sm text-brutal-muted-foreground font-medium" }, k = "BrutxUI", A = /* @__PURE__ */ f({
14
14
  __name: "FooterSection",
15
15
  props: {
16
16
  logoText: { default: void 0 },
@@ -20,18 +20,18 @@ var y = { class: "max-w-7xl mx-auto px-4 md:px-6 py-10" }, b = { class: "mb-8" }
20
20
  class: { default: void 0 }
21
21
  },
22
22
  emits: ["link-click"],
23
- setup(f, { emit: k }) {
24
- let A = f, j = k, { t: M } = t(), N = a(() => A.logoText ?? M("footerSection.defaultLogoText")), P = a(() => A.description ?? M("footerSection.defaultDescription")), F = a(() => A.copyright ?? M("footerSection.defaultCopyright")), I = a(() => e("w-full", "bg-brutal-bg border-t-3 border-brutal", A.class)), L = (e) => !e || !/^(?:javascript|data|vbscript):/i.test(e.trim());
25
- return (e, t) => (m(), c("footer", { class: p(I.value) }, [l("div", y, [
26
- g(e.$slots, "header", {}, () => [l("div", b, [l("span", x, _(N.value), 1), P.value ? (m(), c("p", S, _(P.value), 1)) : s("", !0)])]),
23
+ setup(f, { emit: A }) {
24
+ let j = f, M = A, { t: N } = t(), P = a(() => j.logoText ?? k), F = a(() => j.description ?? N("footerSection.defaultDescription")), I = a(() => j.copyright ?? N("footerSection.defaultCopyright", { year: String((/* @__PURE__ */ new Date()).getFullYear()) })), L = a(() => e("w-full", "bg-brutal-bg border-t-3 border-brutal", j.class)), R = (e) => !e || !/^(?:javascript|data|vbscript):/i.test(e.trim());
25
+ return (e, t) => (m(), c("footer", { class: p(L.value) }, [l("div", y, [
26
+ g(e.$slots, "header", {}, () => [l("div", b, [l("span", x, _(P.value), 1), F.value ? (m(), c("p", S, _(F.value), 1)) : s("", !0)])]),
27
27
  g(e.$slots, "default", {}, () => [f.linkGroups.length > 0 ? (m(), c("div", C, [(m(!0), c(i, null, h(f.linkGroups, (e, r) => (m(), c("div", { key: r }, [l("h3", w, _(e.title), 1), l("ul", T, [(m(!0), c(i, null, h(e.links, (e, i) => (m(), c("li", {
28
28
  key: i,
29
29
  class: "flex items-center gap-2"
30
- }, [t[0] ||= l("span", { class: "h-1.5 w-1.5 bg-brutal-fg flex-shrink-0" }, null, -1), e.href && L(e.href) ? (m(), c("a", {
30
+ }, [t[0] ||= l("span", { class: "h-1.5 w-1.5 bg-brutal-fg flex-shrink-0" }, null, -1), e.href && R(e.href) ? (m(), c("a", {
31
31
  key: 0,
32
32
  href: e.href,
33
33
  class: "px-0 text-brutal-muted-foreground hover:text-brutal-fg text-sm font-medium cursor-pointer active:translate-y-[var(--brutal-pressed-offset,2px)] active:shadow-none transition-all",
34
- onClick: (e) => j("link-click", {
34
+ onClick: (e) => M("link-click", {
35
35
  groupIndex: r,
36
36
  linkIndex: i
37
37
  })
@@ -40,7 +40,7 @@ var y = { class: "max-w-7xl mx-auto px-4 md:px-6 py-10" }, b = { class: "mb-8" }
40
40
  variant: "ghost",
41
41
  size: "sm",
42
42
  class: "px-0 text-brutal-muted-foreground hover:text-brutal-fg",
43
- onClick: (e) => j("link-click", {
43
+ onClick: (e) => M("link-click", {
44
44
  groupIndex: r,
45
45
  linkIndex: i
46
46
  })
@@ -49,9 +49,9 @@ var y = { class: "max-w-7xl mx-auto px-4 md:px-6 py-10" }, b = { class: "mb-8" }
49
49
  _: 2
50
50
  }, 1032, ["onClick"]))]))), 128))])]))), 128))])) : s("", !0)]),
51
51
  d(r),
52
- g(e.$slots, "footer", {}, () => [l("div", D, [l("p", O, _(F.value), 1)])])
52
+ g(e.$slots, "footer", {}, () => [l("div", D, [l("p", O, _(I.value), 1)])])
53
53
  ])], 2));
54
54
  }
55
55
  });
56
56
  //#endregion
57
- export { k as t };
57
+ export { A as t };
@@ -82,66 +82,75 @@ var w = C([
82
82
  },
83
83
  emits: ["update:modelValue", "validation-change"],
84
84
  setup(n, { expose: r, emit: f }) {
85
- let C = n, j = f, M = `input-error-${S().replace(/:/g, "-")}`, N = _(!1), P = _(void 0), F = _(!1), I = a(b(C, "sound")), { t: L } = t(), R = p(i, null), { validationState: z, errorMessage: B, validate: V } = o({
85
+ let C = n, j = f, M = `input-error-${S().replace(/:/g, "-")}`, N = _(!1), P = _(void 0), F = _(!1), I = !1, L = a(b(C, "sound")), { t: R } = t(), z = p(i, null), { validationState: B, errorMessage: V, validate: H } = o({
86
86
  rules: () => C.rules,
87
87
  validateOn: () => C.validateOn,
88
- defaultErrorMessage: () => L("hardcoreInput.invalidInput")
88
+ defaultErrorMessage: () => R("hardcoreInput.invalidInput")
89
89
  });
90
90
  h(() => {
91
91
  P.value && clearTimeout(P.value);
92
92
  });
93
- let H = (e) => {
94
- let t = C.rules.length === 0, n = z.value;
95
- if (V(e), t) {
96
- R?.setError(void 0), n !== "default" && z.value === "default" && j("validation-change", "default");
93
+ let U = (e) => {
94
+ let t = C.rules.length === 0, n = B.value;
95
+ if (H(e), t) {
96
+ z?.setError(void 0), n !== "default" && B.value === "default" && j("validation-change", "default");
97
97
  return;
98
98
  }
99
- n !== z.value && (z.value === "error" ? I.playSound("fail") : z.value === "success" && I.playSound("success")), z.value === "error" && C.shakeOnError && (P.value && clearTimeout(P.value), N.value = !1, P.value = setTimeout(() => {
99
+ n !== B.value && (B.value === "error" ? L.playSound("fail") : B.value === "success" && L.playSound("success")), B.value === "error" && C.shakeOnError && (P.value && clearTimeout(P.value), N.value = !1, P.value = setTimeout(() => {
100
100
  P.value = void 0, N.value = !0;
101
- }, 10)), R && R.setError(z.value === "error" ? B.value : void 0), z.value === "error" ? j("validation-change", "error", B.value) : z.value === "success" && j("validation-change", "success");
102
- }, U = (e) => {
103
- let t = e.target;
104
- t instanceof HTMLInputElement && (F.value || (j("update:modelValue", t.value), R && R.setValue(t.value), I.playSound("type"), C.validateOn === "input" && H(t.value)));
101
+ }, 10)), z && z.setError(B.value === "error" ? V.value : void 0), B.value === "error" ? j("validation-change", "error", V.value) : B.value === "success" && j("validation-change", "success");
105
102
  }, W = (e) => {
106
103
  let t = e.target;
107
- t instanceof HTMLInputElement && (F.value = !1, j("update:modelValue", t.value), R && R.setValue(t.value), C.validateOn === "input" && H(t.value));
108
- }, G = () => {
109
- C.validateOn === "blur" && H(C.modelValue ?? "");
104
+ if (t instanceof HTMLInputElement && !(F.value || e.isComposing)) {
105
+ if (I) {
106
+ I = !1;
107
+ return;
108
+ }
109
+ j("update:modelValue", t.value), z && z.setValue(t.value), L.playSound("type"), C.validateOn === "input" && U(t.value);
110
+ }
111
+ }, G = (e) => {
112
+ let t = e.target;
113
+ t instanceof HTMLInputElement && (F.value = !1, j("update:modelValue", t.value), I = !0, z && z.setValue(t.value), C.validateOn === "input" && U(t.value));
110
114
  }, K = () => {
115
+ F.value = !1;
116
+ }, q = () => {
117
+ C.validateOn === "blur" && U(C.modelValue ?? "");
118
+ }, J = () => {
111
119
  P.value || (N.value = !1);
112
120
  };
113
121
  r({
114
122
  validate: () => {
115
- H(C.modelValue ?? "");
123
+ U(C.modelValue ?? "");
116
124
  },
117
- validationState: z,
118
- errorMessage: B
125
+ validationState: B,
126
+ errorMessage: V
119
127
  });
120
- let q = s(() => e("relative w-full flex flex-col gap-1.5", C.class)), J = s(() => e(w({ variant: z.value }), N.value ? "animate-shake" : "")), Y = s(() => e(T(), z.value === "success" ? "bg-brutal-success" : "", z.value === "error" ? "bg-brutal-destructive text-brutal-fg animate-bounce-short" : ""));
121
- return (e, t) => (g(), l("div", { class: m(q.value) }, [u("div", E, [u("input", {
128
+ let Y = s(() => e("relative w-full flex flex-col gap-1.5", C.class)), X = s(() => e(w({ variant: B.value }), N.value ? "animate-shake" : "")), Z = s(() => e(T(), B.value === "success" ? "bg-brutal-success" : "", B.value === "error" ? "bg-brutal-destructive text-brutal-fg animate-bounce-short" : ""));
129
+ return (e, t) => (g(), l("div", { class: m(Y.value) }, [u("div", E, [u("input", {
122
130
  type: n.type,
123
131
  value: n.modelValue,
124
132
  disabled: n.disabled,
125
133
  readonly: n.readonly,
126
134
  placeholder: n.placeholder,
127
- class: m(J.value),
128
- "aria-invalid": x(z) === "error",
129
- "aria-describedby": x(B) ? M : void 0,
130
- onInput: U,
131
- onBlur: G,
132
- onAnimationend: K,
135
+ class: m(X.value),
136
+ "aria-invalid": x(B) === "error",
137
+ "aria-describedby": x(V) ? M : void 0,
138
+ onInput: W,
139
+ onBlur: q,
140
+ onAnimationend: J,
133
141
  onCompositionstart: t[0] ||= (e) => F.value = !0,
134
- onCompositionend: W
135
- }, null, 42, D), u("div", O, [v(e.$slots, "default", {}, () => [x(z) === "default" ? c("", !0) : (g(), l("div", {
142
+ onCompositionend: G,
143
+ onCompositioncancel: K
144
+ }, null, 42, D), u("div", O, [v(e.$slots, "default", {}, () => [x(B) === "default" ? c("", !0) : (g(), l("div", {
136
145
  key: 0,
137
- class: m(Y.value)
138
- }, [x(z) === "success" ? (g(), l("svg", k, [...t[1] ||= [d("<circle cx=\"12\" cy=\"12\" r=\"10\" fill=\"var(--brutal-accent)\" stroke=\"currentColor\" stroke-width=\"2.5\" data-v-0cb34aed></circle><rect x=\"6\" y=\"8\" width=\"5\" height=\"4\" rx=\"1.5\" fill=\"currentColor\" stroke=\"currentColor\" stroke-width=\"1\" data-v-0cb34aed></rect><rect x=\"13\" y=\"8\" width=\"5\" height=\"4\" rx=\"1.5\" fill=\"currentColor\" stroke=\"currentColor\" stroke-width=\"1\" data-v-0cb34aed></rect><line x1=\"11\" y1=\"10\" x2=\"13\" y2=\"10\" stroke=\"currentColor\" stroke-width=\"2\" data-v-0cb34aed></line><path d=\"M8 15 Q12 19 16 15\" stroke=\"currentColor\" stroke-width=\"2.5\" stroke-linecap=\"round\" fill=\"none\" data-v-0cb34aed></path>", 5)]])) : c("", !0), x(z) === "error" ? (g(), l("svg", A, [...t[2] ||= [d("<circle cx=\"12\" cy=\"12\" r=\"10\" fill=\"var(--brutal-destructive)\" stroke=\"currentColor\" stroke-width=\"2.5\" data-v-0cb34aed></circle><line x1=\"6\" y1=\"8\" x2=\"10\" y2=\"10\" stroke=\"currentColor\" stroke-width=\"2.5\" stroke-linecap=\"round\" data-v-0cb34aed></line><line x1=\"18\" y1=\"8\" x2=\"14\" y2=\"10\" stroke=\"currentColor\" stroke-width=\"2.5\" stroke-linecap=\"round\" data-v-0cb34aed></line><circle cx=\"8\" cy=\"12\" r=\"1.5\" fill=\"currentColor\" data-v-0cb34aed></circle><circle cx=\"16\" cy=\"12\" r=\"1.5\" fill=\"currentColor\" data-v-0cb34aed></circle><path d=\"M9 17 Q12 14 15 17\" stroke=\"currentColor\" stroke-width=\"2.5\" stroke-linecap=\"round\" fill=\"none\" data-v-0cb34aed></path>", 6)]])) : c("", !0)], 2))], !0)])]), x(z) === "error" && x(B) ? (g(), l("p", {
146
+ class: m(Z.value)
147
+ }, [x(B) === "success" ? (g(), l("svg", k, [...t[1] ||= [d("<circle cx=\"12\" cy=\"12\" r=\"10\" fill=\"var(--brutal-accent)\" stroke=\"currentColor\" stroke-width=\"2.5\" data-v-a026da72></circle><rect x=\"6\" y=\"8\" width=\"5\" height=\"4\" rx=\"1.5\" fill=\"currentColor\" stroke=\"currentColor\" stroke-width=\"1\" data-v-a026da72></rect><rect x=\"13\" y=\"8\" width=\"5\" height=\"4\" rx=\"1.5\" fill=\"currentColor\" stroke=\"currentColor\" stroke-width=\"1\" data-v-a026da72></rect><line x1=\"11\" y1=\"10\" x2=\"13\" y2=\"10\" stroke=\"currentColor\" stroke-width=\"2\" data-v-a026da72></line><path d=\"M8 15 Q12 19 16 15\" stroke=\"currentColor\" stroke-width=\"2.5\" stroke-linecap=\"round\" fill=\"none\" data-v-a026da72></path>", 5)]])) : c("", !0), x(B) === "error" ? (g(), l("svg", A, [...t[2] ||= [d("<circle cx=\"12\" cy=\"12\" r=\"10\" fill=\"var(--brutal-destructive)\" stroke=\"currentColor\" stroke-width=\"2.5\" data-v-a026da72></circle><line x1=\"6\" y1=\"8\" x2=\"10\" y2=\"10\" stroke=\"currentColor\" stroke-width=\"2.5\" stroke-linecap=\"round\" data-v-a026da72></line><line x1=\"18\" y1=\"8\" x2=\"14\" y2=\"10\" stroke=\"currentColor\" stroke-width=\"2.5\" stroke-linecap=\"round\" data-v-a026da72></line><circle cx=\"8\" cy=\"12\" r=\"1.5\" fill=\"currentColor\" data-v-a026da72></circle><circle cx=\"16\" cy=\"12\" r=\"1.5\" fill=\"currentColor\" data-v-a026da72></circle><path d=\"M9 17 Q12 14 15 17\" stroke=\"currentColor\" stroke-width=\"2.5\" stroke-linecap=\"round\" fill=\"none\" data-v-a026da72></path>", 6)]])) : c("", !0)], 2))], !0)])]), x(B) === "error" && x(V) ? (g(), l("p", {
139
148
  key: 0,
140
149
  id: M,
141
150
  class: "text-xs font-black tracking-wide text-brutal-destructive animate-fade-in",
142
151
  "aria-live": "polite"
143
- }, y(x(B)), 1)) : c("", !0)], 2));
152
+ }, y(x(V)), 1)) : c("", !0)], 2));
144
153
  }
145
- }), [["__scopeId", "data-v-0cb34aed"]]);
154
+ }), [["__scopeId", "data-v-a026da72"]]);
146
155
  //#endregion
147
156
  export { T as n, w as r, j as t };
@@ -8,7 +8,7 @@ import { Fragment as l, computed as u, createBlock as d, createElementBlock as f
8
8
  import { Menu as T } from "@lucide/vue";
9
9
  import { DialogRoot as E } from "reka-ui";
10
10
  //#region src/components/header-section/HeaderSection.vue?vue&type=script&setup=true&lang.ts
11
- var D = { class: "flex h-16 items-center justify-between px-4 md:px-6 max-w-7xl mx-auto" }, O = { class: "text-xl font-black tracking-tight text-brutal-fg" }, k = { class: "hidden md:flex items-center gap-1" }, A = { class: "flex items-center gap-3" }, j = { class: "sr-only" }, M = { class: "flex flex-col gap-2 py-4" }, N = { class: "pt-4" }, P = /* @__PURE__ */ g({
11
+ var D = { class: "flex h-16 items-center justify-between px-4 md:px-6 max-w-7xl mx-auto" }, O = { class: "text-xl font-black tracking-tight text-brutal-fg" }, k = { class: "hidden md:flex items-center gap-1" }, A = { class: "flex items-center gap-3" }, j = { class: "sr-only" }, M = { class: "flex flex-col gap-2 py-4" }, N = { class: "pt-4" }, P = "BrutxUI", F = /* @__PURE__ */ g({
12
12
  __name: "HeaderSection",
13
13
  props: {
14
14
  logoText: { default: void 0 },
@@ -18,16 +18,16 @@ var D = { class: "flex h-16 items-center justify-between px-4 md:px-6 max-w-7xl
18
18
  iconSize: { default: "lg" }
19
19
  },
20
20
  emits: ["cta-click", "nav-click"],
21
- setup(g, { emit: P }) {
22
- let F = g, I = P, { t: L } = n(), R = u(() => F.logoText ?? L("headerSection.defaultLogoText")), z = u(() => F.ctaText ?? L("headerSection.defaultCtaText")), B = u(() => L("headerSection.menuLabel")), V = y(!1), H = u(() => e("sticky top-0 z-40 w-full", "bg-brutal-bg border-b-3 border-brutal shadow-brutal-sm", F.class)), U = u(() => t({ size: F.iconSize }));
23
- return (e, t) => (v(), f("header", { class: _(H.value) }, [p("div", D, [
24
- x(e.$slots, "header", {}, () => [p("span", O, S(R.value), 1)]),
21
+ setup(g, { emit: F }) {
22
+ let I = g, L = F, { t: R } = n(), z = u(() => I.logoText ?? P), B = u(() => I.ctaText ?? R("headerSection.defaultCtaText")), V = u(() => R("headerSection.menuLabel")), H = y(!1), U = u(() => e("sticky top-0 z-40 w-full", "bg-brutal-bg border-b-3 border-brutal shadow-brutal-sm", I.class)), W = u(() => t({ size: I.iconSize }));
23
+ return (e, t) => (v(), f("header", { class: _(U.value) }, [p("div", D, [
24
+ x(e.$slots, "header", {}, () => [p("span", O, S(z.value), 1)]),
25
25
  x(e.$slots, "default", {}, () => [p("nav", k, [(v(!0), f(l, null, b(g.navItems, (e, t) => (v(), d(r, {
26
26
  key: t,
27
27
  type: "button",
28
28
  variant: "ghost",
29
29
  size: "sm",
30
- onClick: (e) => I("nav-click", t)
30
+ onClick: (e) => L("nav-click", t)
31
31
  }, {
32
32
  default: w(() => [m(S(e.label), 1)]),
33
33
  _: 2
@@ -37,32 +37,32 @@ var D = { class: "flex h-16 items-center justify-between px-4 md:px-6 max-w-7xl
37
37
  variant: "primary",
38
38
  size: "sm",
39
39
  class: "hidden md:inline-flex",
40
- onClick: t[0] ||= (e) => I("cta-click")
40
+ onClick: t[0] ||= (e) => L("cta-click")
41
41
  }, {
42
- default: w(() => [m(S(z.value), 1)]),
42
+ default: w(() => [m(S(B.value), 1)]),
43
43
  _: 1
44
44
  })]), h(r, {
45
45
  type: "button",
46
46
  variant: "outline",
47
47
  size: "sm",
48
48
  class: "md:hidden",
49
- onClick: t[1] ||= (e) => V.value = !0
49
+ onClick: t[1] ||= (e) => H.value = !0
50
50
  }, {
51
- default: w(() => [h(C(T), { class: _(U.value) }, null, 8, ["class"]), p("span", j, S(B.value), 1)]),
51
+ default: w(() => [h(C(T), { class: _(W.value) }, null, 8, ["class"]), p("span", j, S(V.value), 1)]),
52
52
  _: 1
53
53
  })])
54
54
  ]), h(C(E), {
55
- open: V.value,
56
- "onUpdate:open": t[3] ||= (e) => V.value = e
55
+ open: H.value,
56
+ "onUpdate:open": t[3] ||= (e) => H.value = e
57
57
  }, {
58
58
  default: w(() => [h(a, { side: "right" }, {
59
59
  default: w(() => [
60
60
  h(s, null, {
61
61
  default: w(() => [h(o, null, {
62
- default: w(() => [m(S(R.value), 1)]),
62
+ default: w(() => [m(S(z.value), 1)]),
63
63
  _: 1
64
64
  }), h(c, null, {
65
- default: w(() => [m(S(B.value), 1)]),
65
+ default: w(() => [m(S(V.value), 1)]),
66
66
  _: 1
67
67
  })]),
68
68
  _: 1
@@ -73,7 +73,7 @@ var D = { class: "flex h-16 items-center justify-between px-4 md:px-6 max-w-7xl
73
73
  variant: "ghost",
74
74
  class: "justify-start",
75
75
  onClick: (e) => {
76
- I("nav-click", t), V.value = !1;
76
+ L("nav-click", t), H.value = !1;
77
77
  }
78
78
  }, {
79
79
  default: w(() => [m(S(e.label), 1)]),
@@ -85,10 +85,10 @@ var D = { class: "flex h-16 items-center justify-between px-4 md:px-6 max-w-7xl
85
85
  variant: "primary",
86
86
  class: "w-full",
87
87
  onClick: t[2] ||= (e) => {
88
- I("cta-click"), V.value = !1;
88
+ L("cta-click"), H.value = !1;
89
89
  }
90
90
  }, {
91
- default: w(() => [m(S(z.value), 1)]),
91
+ default: w(() => [m(S(B.value), 1)]),
92
92
  _: 1
93
93
  })])
94
94
  ]),
@@ -99,4 +99,4 @@ var D = { class: "flex h-16 items-center justify-between px-4 md:px-6 max-w-7xl
99
99
  }
100
100
  });
101
101
  //#endregion
102
- export { P as t };
102
+ export { F as t };
@@ -118,29 +118,38 @@ var T = w([
118
118
  },
119
119
  emits: ["update:modelValue", "clear"],
120
120
  setup(t, { expose: n, emit: i }) {
121
- let f = t, w = i, R = b(), z = h(null), B = h(!1), V = h(!1), { t: H } = r(), U = o(() => H(V.value ? "input.hidePassword" : "input.showPassword")), { showClear: W, handleClear: G, onMouseEnter: K, onMouseLeave: q } = a({
121
+ let f = t, w = i, R = b(), z = h(null), B = h(!1), V = !1, H = h(!1), { t: U } = r(), W = o(() => U(H.value ? "input.hidePassword" : "input.showPassword")), { showClear: G, handleClear: K, onMouseEnter: q, onMouseLeave: J } = a({
122
122
  modelValue: () => f.modelValue,
123
123
  clearable: () => f.clearable,
124
124
  disabled: () => f.disabled,
125
125
  onClear: () => {
126
126
  w("update:modelValue", ""), w("clear");
127
127
  }
128
- }), J = o(() => f.type === "password" ? V.value ? "text" : "password" : f.type), Y = o(() => f.type === "password" && f.showPassword), X = o(() => f.showWordLimit && f.maxlength !== void 0), Z = o(() => f.modelValue?.length ?? 0), Q = o(() => f.suffixIcon || W.value || Y.value), $ = o(() => e(T({
128
+ }), Y = o(() => f.type === "password" ? H.value ? "text" : "password" : f.type), X = o(() => f.type === "password" && f.showPassword), Z = o(() => f.showWordLimit && f.maxlength !== void 0), Q = o(() => f.modelValue?.length ?? 0), $ = o(() => f.suffixIcon || G.value || X.value), ee = o(() => e(T({
129
129
  variant: f.variant,
130
130
  size: f.size,
131
131
  disabled: f.disabled
132
- }), f.class)), ee = o(() => e(E(), f.readonly && "cursor-default", f.prefixIcon ? "pl-9" : "pl-3", Q.value ? "pr-9" : "pr-3"));
133
- function te() {
134
- V.value = !V.value;
135
- }
136
- function ne(e) {
137
- G(e);
132
+ }), f.class)), te = o(() => e(E(), f.readonly && "cursor-default", f.prefixIcon ? "pl-9" : "pl-3", $.value ? "pr-9" : "pr-3"));
133
+ function ne() {
134
+ H.value = !H.value;
138
135
  }
139
136
  function re(e) {
140
- B.value || w("update:modelValue", e.target.value);
137
+ K(e);
141
138
  }
142
139
  function ie(e) {
143
- B.value = !1, w("update:modelValue", e.target.value);
140
+ if (!(B.value || e.isComposing)) {
141
+ if (V) {
142
+ V = !1;
143
+ return;
144
+ }
145
+ w("update:modelValue", e.target.value);
146
+ }
147
+ }
148
+ function ae(e) {
149
+ B.value = !1, w("update:modelValue", e.target.value), V = !0;
150
+ }
151
+ function oe() {
152
+ B.value = !1;
144
153
  }
145
154
  return n({
146
155
  ref: z,
@@ -149,9 +158,9 @@ var T = w([
149
158
  select: () => z.value?.select()
150
159
  }), (e, n) => (m(), l("div", D, [
151
160
  u("div", {
152
- class: p(["brutal-input-container", $.value]),
153
- onMouseenter: n[1] ||= (...e) => y(K) && y(K)(...e),
154
- onMouseleave: n[2] ||= (...e) => y(q) && y(q)(...e)
161
+ class: p(["brutal-input-container", ee.value]),
162
+ onMouseenter: n[1] ||= (...e) => y(q) && y(q)(...e),
163
+ onMouseleave: n[2] ||= (...e) => y(J) && y(J)(...e)
155
164
  }, [
156
165
  y(R).prepend ? (m(), l("div", O, [g(e.$slots, "prepend")])) : c("", !0),
157
166
  u("div", k, [
@@ -159,13 +168,13 @@ var T = w([
159
168
  u("input", {
160
169
  ref_key: "inputRef",
161
170
  ref: z,
162
- type: J.value,
171
+ type: Y.value,
163
172
  value: t.modelValue,
164
173
  disabled: t.disabled,
165
174
  readonly: t.readonly,
166
175
  placeholder: t.placeholder,
167
176
  maxlength: t.maxlength,
168
- class: p(ee.value),
177
+ class: p(te.value),
169
178
  "aria-label": t.ariaLabel,
170
179
  "aria-labelledby": t.ariaLabelledby,
171
180
  "aria-describedby": t.ariaDescribedby,
@@ -173,30 +182,31 @@ var T = w([
173
182
  "aria-errormessage": t.ariaErrormessage,
174
183
  "aria-required": t.ariaRequired,
175
184
  onCompositionstart: n[0] ||= (e) => B.value = !0,
176
- onCompositionend: ie,
177
- onInput: re
185
+ onCompositionend: ae,
186
+ onCompositioncancel: oe,
187
+ onInput: ie
178
188
  }, null, 42, j),
179
189
  u("div", M, [
180
- y(W) ? (m(), l("button", {
190
+ y(G) ? (m(), l("button", {
181
191
  key: 0,
182
192
  type: "button",
183
193
  class: "p-0.5 hover:bg-brutal-muted rounded-brutal transition-colors",
184
- onClick: ne
194
+ onClick: re
185
195
  }, [d(y(C), { class: "h-3.5 w-3.5 text-brutal-placeholder" })])) : c("", !0),
186
- Y.value ? (m(), l("button", {
196
+ X.value ? (m(), l("button", {
187
197
  key: 1,
188
198
  type: "button",
189
199
  class: "p-0.5 hover:bg-brutal-muted rounded-brutal transition-colors",
190
- "aria-label": U.value,
191
- onClick: te
192
- }, [V.value ? (m(), s(y(S), {
200
+ "aria-label": W.value,
201
+ onClick: ne
202
+ }, [H.value ? (m(), s(y(S), {
193
203
  key: 1,
194
204
  class: "h-3.5 w-3.5 text-brutal-placeholder"
195
205
  })) : (m(), s(y(x), {
196
206
  key: 0,
197
207
  class: "h-3.5 w-3.5 text-brutal-placeholder"
198
208
  }))], 8, N)) : c("", !0),
199
- t.suffixIcon && !y(W) && !Y.value ? (m(), s(_(t.suffixIcon), {
209
+ t.suffixIcon && !y(G) && !X.value ? (m(), s(_(t.suffixIcon), {
200
210
  key: 2,
201
211
  class: "h-4 w-4 text-brutal-placeholder"
202
212
  })) : c("", !0)
@@ -204,7 +214,7 @@ var T = w([
204
214
  ]),
205
215
  y(R).append ? (m(), l("div", P, [g(e.$slots, "append")])) : c("", !0)
206
216
  ], 34),
207
- X.value ? (m(), l("div", F, [u("span", I, v(Z.value) + " / " + v(t.maxlength), 1)])) : c("", !0),
217
+ Z.value ? (m(), l("div", F, [u("span", I, v(Q.value) + " / " + v(t.maxlength), 1)])) : c("", !0),
208
218
  t.variant === "error" && t.errorMessage ? (m(), l("p", L, v(t.errorMessage), 1)) : c("", !0)
209
219
  ]));
210
220
  }
@@ -229,8 +229,8 @@ var O = D([
229
229
  if (K.value = null, H.value = null, n === t) return;
230
230
  let r = Y.value.findIndex((e) => e.id === n), i = Y.value.findIndex((e) => e.id === t);
231
231
  if (r === -1 || i === -1) return;
232
- let a = [...Y.value], [o] = a.splice(r, 1), s = r < i ? i - 1 : i;
233
- a.splice(s, 0, o), z("update:modelValue", a), z("column-move", n, r, i);
232
+ let a = [...Y.value], [o] = a.splice(r, 1);
233
+ a.splice(i, 0, o), z("update:modelValue", a), z("column-move", n, r, i);
234
234
  }
235
235
  function $(e) {
236
236
  z("add-card", e);
@@ -38,8 +38,7 @@ var v = _(["relative overflow-hidden"], {
38
38
  setup(c) {
39
39
  let _ = c, C = i(), w = p(null), T = `noise-${h()}`, E = null, D = p(_.frequency);
40
40
  function O() {
41
- if (!_.animated || !r || _.animationDuration <= 0 || C.value) return;
42
- k();
41
+ if (k(), !_.animated || !r || _.animationDuration <= 0 || C.value) return;
43
42
  let e = performance.now(), n = _.frequency, i = _.animationRange;
44
43
  function a(r) {
45
44
  let o = (r - e) / 1e3 % _.animationDuration / _.animationDuration;
@@ -2,7 +2,7 @@ import { n as e } from "./utils-CUXX1zll.js";
2
2
  import { a as t, o as n } from "./brutal-interaction-variants-BAheBvSg.js";
3
3
  import { t as r } from "./icon-size-variants-nPLFCnI7.js";
4
4
  import { useLocale as i } from "../composables/useLocale.js";
5
- import { t as a } from "./Input-Cgt7mldw.js";
5
+ import { t as a } from "./Input-qKeVv2nE.js";
6
6
  import { a as o, n as s, t as c } from "./SelectItem-B541Rhqy.js";
7
7
  import { Fragment as l, computed as u, createBlock as d, createCommentVNode as f, createElementBlock as p, createElementVNode as m, createTextVNode as ee, createVNode as h, defineComponent as g, normalizeClass as _, openBlock as v, ref as y, renderList as b, toDisplayString as x, unref as S, withCtx as C, withKeys as w } from "vue";
8
8
  import { ChevronLeft as te, ChevronRight as ne, ChevronsLeft as re, ChevronsRight as ie } from "@lucide/vue";