brutx-ui-vue 0.8.1 → 0.8.2
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.
- package/dist/Button-A-6b4rWX.js +133 -0
- package/dist/Button-Do0Oszf9.cjs +1 -0
- package/dist/Calendar-B4CyTa9e.cjs +1 -0
- package/dist/Calendar-CXlcLuQy.js +85 -0
- package/dist/CardFooter-BweHbtKQ.js +93 -0
- package/dist/CardFooter-Bz_0se-T.cjs +1 -0
- package/dist/DialogDescription-DlEKfSB0.cjs +1 -0
- package/dist/DialogDescription-pqjAxNSO.js +324 -0
- package/dist/DropdownMenuSubContent-BaicVgv9.cjs +1 -0
- package/dist/DropdownMenuSubContent-CmMqpE7h.js +158 -0
- package/dist/FormConditional-C7ZfAyb1.js +536 -0
- package/dist/FormConditional-CrX-98WR.cjs +1 -0
- package/dist/Input-BMPIakZV.js +101 -0
- package/dist/Input-DOQnoc3k.cjs +1 -0
- package/dist/SelectSeparator-DcKDI8Sd.js +184 -0
- package/dist/SelectSeparator-d-tynmTu.cjs +1 -0
- package/dist/SubmitButton-Dkzd79Ep.cjs +1 -0
- package/dist/SubmitButton-DsCfVWIb.js +44 -0
- package/dist/TableCaption-BDwlrI6G.js +111 -0
- package/dist/TableCaption-DsvdUjbu.cjs +1 -0
- package/dist/TabsContent-DVGZgAwB.js +151 -0
- package/dist/TabsContent-yB0hrE7v.cjs +1 -0
- package/dist/ToastContainer-Ch9VdS23.cjs +1 -0
- package/dist/ToastContainer-CmDmo0gE.js +191 -0
- package/dist/brutalism-plugin.cjs +1 -1
- package/dist/brutalism-plugin.js +137 -170
- package/dist/brutx-ui-vue.css +1 -1
- package/dist/button.cjs +1 -0
- package/dist/button.d.ts +3 -0
- package/dist/button.d.ts.map +1 -0
- package/dist/button.js +2 -0
- package/dist/calendar.cjs +1 -1
- package/dist/calendar.js +1 -1
- package/dist/card.cjs +1 -0
- package/dist/card.d.ts +8 -0
- package/dist/card.d.ts.map +1 -0
- package/dist/card.js +2 -0
- package/dist/components/accordion/AccordionContent.vue.d.ts.map +1 -1
- package/dist/components/accordion/AccordionTrigger.vue.d.ts.map +1 -1
- package/dist/components/alert/Alert.vue.d.ts.map +1 -1
- package/dist/components/calendar/Calendar.vue.d.ts.map +1 -1
- package/dist/components/carousel/Carousel.vue.d.ts.map +1 -1
- package/dist/components/carousel/CarouselEnhanced.vue.d.ts +16 -37
- package/dist/components/carousel/CarouselEnhanced.vue.d.ts.map +1 -1
- package/dist/components/carousel/index.d.ts +2 -0
- package/dist/components/carousel/index.d.ts.map +1 -1
- package/dist/components/carousel/types.d.ts +32 -0
- package/dist/components/carousel/types.d.ts.map +1 -0
- package/dist/components/chat-bubble/ChatBubble.vue.d.ts +1 -10
- package/dist/components/chat-bubble/ChatBubble.vue.d.ts.map +1 -1
- package/dist/components/chat-bubble/ChatContainer.vue.d.ts +1 -10
- package/dist/components/chat-bubble/ChatContainer.vue.d.ts.map +1 -1
- package/dist/components/chat-bubble/index.d.ts +1 -0
- package/dist/components/chat-bubble/index.d.ts.map +1 -1
- package/dist/components/chat-bubble/types.d.ts +11 -0
- package/dist/components/chat-bubble/types.d.ts.map +1 -0
- package/dist/components/code-block/CodeBlock.vue.d.ts.map +1 -1
- package/dist/components/color-picker/ColorPickerInput.vue.d.ts.map +1 -1
- package/dist/components/color-picker/ColorPickerPanel.vue.d.ts.map +1 -1
- package/dist/components/command/CommandInput.vue.d.ts.map +1 -1
- package/dist/components/copy-to-clipboard/CopyToClipboard.vue.d.ts.map +1 -1
- package/dist/components/data-table/DataTable.vue.d.ts.map +1 -1
- package/dist/components/data-table-section/DataTableSection.vue.d.ts.map +1 -1
- package/dist/components/date-picker/DatePickerPanel.vue.d.ts.map +1 -1
- package/dist/components/date-picker/DatePickerRangePanel.vue.d.ts.map +1 -1
- package/dist/components/date-picker/DateTimePicker.vue.d.ts +7 -1
- package/dist/components/date-picker/DateTimePicker.vue.d.ts.map +1 -1
- package/dist/components/date-picker/DateTimePickerPanel.vue.d.ts.map +1 -1
- package/dist/components/date-picker/MonthPicker.vue.d.ts +7 -1
- package/dist/components/date-picker/MonthPicker.vue.d.ts.map +1 -1
- package/dist/components/date-picker/WeekPicker.vue.d.ts +7 -1
- package/dist/components/date-picker/WeekPicker.vue.d.ts.map +1 -1
- package/dist/components/date-picker/WeekPickerPanel.vue.d.ts.map +1 -1
- package/dist/components/date-picker/YearPicker.vue.d.ts +7 -1
- package/dist/components/date-picker/YearPicker.vue.d.ts.map +1 -1
- package/dist/components/dialog/DialogEnhanced.vue.d.ts.map +1 -1
- package/dist/components/dropdown-menu/DropdownMenuSubContent.vue.d.ts.map +1 -1
- package/dist/components/dropdown-menu/dropdown-menu-variants.d.ts +1 -0
- package/dist/components/dropdown-menu/dropdown-menu-variants.d.ts.map +1 -1
- package/dist/components/gallery-section/GallerySection.vue.d.ts.map +1 -1
- package/dist/components/glitch-button/GlitchButton.vue.d.ts.map +1 -1
- package/dist/components/glitch-text/GlitchText.vue.d.ts.map +1 -1
- package/dist/components/hardcore-input/HardcoreInput.vue.d.ts.map +1 -1
- package/dist/components/noise-background/NoiseBackground.vue.d.ts.map +1 -1
- package/dist/components/scratch-card/ScratchCard.vue.d.ts.map +1 -1
- package/dist/components/tabs/Tabs.vue.d.ts.map +1 -1
- package/dist/components/toast/Toast.vue.d.ts.map +1 -1
- package/dist/components/toggle-group/ToggleGroup.vue.d.ts.map +1 -1
- package/dist/components/tree-select/TreeSelectNode.vue.d.ts.map +1 -1
- package/dist/components/tree-view/TreeView.vue.d.ts.map +1 -1
- package/dist/components/virtual-scroll/VirtualScroll.vue.d.ts.map +1 -1
- package/dist/composables/useAudioEngine.d.ts.map +1 -1
- package/dist/composables/useCarousel.d.ts +5 -0
- package/dist/composables/useCarousel.d.ts.map +1 -1
- package/dist/composables/useCarouselEnhanced.d.ts +22 -0
- package/dist/composables/useCarouselEnhanced.d.ts.map +1 -0
- package/dist/composables/useClipboard.d.ts +1 -0
- package/dist/composables/useClipboard.d.ts.map +1 -1
- package/dist/composables/useColorHistory.d.ts.map +1 -1
- package/dist/composables/useDataTablePagination.d.ts +1 -0
- package/dist/composables/useDataTablePagination.d.ts.map +1 -1
- package/dist/composables/useReducedMotion.d.ts.map +1 -1
- package/dist/composables/useTheme.d.ts +1 -0
- package/dist/composables/useTheme.d.ts.map +1 -1
- package/dist/composables/useToast.d.ts +2 -1
- package/dist/composables/useToast.d.ts.map +1 -1
- package/dist/defaults-C3tS_SLq.cjs +1 -0
- package/dist/defaults-DiFLq-6E.js +25 -0
- package/dist/dialog.cjs +1 -0
- package/dist/dialog.d.ts +10 -0
- package/dist/dialog.d.ts.map +1 -0
- package/dist/dialog.js +3 -0
- package/dist/dist-BHWcR9E8.cjs +1 -0
- package/dist/dist-CvtuClfa.js +33 -0
- package/dist/dropdown-menu.cjs +1 -0
- package/dist/dropdown-menu.d.ts +12 -0
- package/dist/dropdown-menu.d.ts.map +1 -0
- package/dist/dropdown-menu.js +3 -0
- package/dist/form.cjs +1 -0
- package/dist/form.d.ts +14 -0
- package/dist/form.d.ts.map +1 -0
- package/dist/form.js +2 -0
- package/dist/hooks.cjs +1 -1
- package/dist/hooks.js +3 -2
- package/dist/icon-size-variants-Ck2NDe3L.js +15 -0
- package/dist/icon-size-variants-TAHpixex.cjs +1 -0
- package/dist/index.cjs +2 -6
- package/dist/index.d.ts +2 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +4321 -7292
- package/dist/input.cjs +1 -0
- package/dist/input.d.ts +3 -0
- package/dist/input.d.ts.map +1 -0
- package/dist/input.js +2 -0
- package/dist/lib/date.d.ts.map +1 -1
- package/dist/lib/defaults.d.ts +22 -0
- package/dist/lib/defaults.d.ts.map +1 -0
- package/dist/lib/env.d.ts +21 -0
- package/dist/lib/env.d.ts.map +1 -0
- package/dist/lib/theme-fallbacks.d.ts +11 -0
- package/dist/lib/theme-fallbacks.d.ts.map +1 -0
- package/dist/locales/index.d.ts +1 -1
- package/dist/locales/index.d.ts.map +1 -1
- package/dist/select.cjs +1 -0
- package/dist/select.d.ts +10 -0
- package/dist/select.d.ts.map +1 -0
- package/dist/select.js +3 -0
- package/dist/styles.css +1 -1
- package/dist/submit-button.cjs +1 -1
- package/dist/submit-button.js +1 -1
- package/dist/table.cjs +1 -0
- package/dist/table.d.ts +10 -0
- package/dist/table.d.ts.map +1 -0
- package/dist/table.js +2 -0
- package/dist/tabs.cjs +1 -0
- package/dist/tabs.d.ts +7 -0
- package/dist/tabs.d.ts.map +1 -0
- package/dist/tabs.js +3 -0
- package/dist/toast.cjs +1 -0
- package/dist/toast.d.ts +6 -0
- package/dist/toast.d.ts.map +1 -0
- package/dist/toast.js +3 -0
- package/dist/useClipboard-gPj4uHNj.js +107 -0
- package/dist/useClipboard-wl3D0t31.cjs +1 -0
- package/dist/useLocale-CNQLn5sW.cjs +1 -0
- package/dist/useLocale-D0OaVdBK.js +33 -0
- package/dist/useToast-Bf8x27n0.cjs +1 -0
- package/dist/useToast-iXaQZwI_.js +115 -0
- package/package.json +69 -19
- package/dist/Calendar-BuX5dDav.cjs +0 -1
- package/dist/Calendar-PVpaWNvC.js +0 -80
- package/dist/SubmitButton-BGRZ3hSO.cjs +0 -1
- package/dist/SubmitButton-HGM02P4m.js +0 -236
- package/dist/chunk-3b4jIN3o.js +0 -13
- package/dist/chunk-C6qsp3rV.cjs +0 -1
- package/dist/lib/test-utils.d.ts +0 -11
- package/dist/lib/test-utils.d.ts.map +0 -1
- package/dist/prism-bash-B_zRZyuj.js +0 -175
- package/dist/prism-bash-D6zCJ74D.cjs +0 -1
- package/dist/prism-c-04YixN25.cjs +0 -1
- package/dist/prism-c-RM7NyRIs.js +0 -54
- package/dist/prism-clike-Cgxp4y16.js +0 -28
- package/dist/prism-clike-DapgWyxx.cjs +0 -1
- package/dist/prism-cpp-C-lJbC-6.cjs +0 -1
- package/dist/prism-cpp-CZyRUKQ-.js +0 -63
- package/dist/prism-css-B5yjxqqK.js +0 -55
- package/dist/prism-css-CPgOzxXp.cjs +0 -1
- package/dist/prism-go-C_8qAH5n.cjs +0 -1
- package/dist/prism-go-OjKnJZlI.js +0 -20
- package/dist/prism-java-6wtusvIl.cjs +0 -1
- package/dist/prism-java-CrKR1c5Y.js +0 -99
- package/dist/prism-javascript-BnO-swvr.cjs +0 -1
- package/dist/prism-javascript-DvmneOZ2.js +0 -101
- package/dist/prism-json-CunF5YHl.js +0 -25
- package/dist/prism-json-Dp_-W-Hv.cjs +0 -1
- package/dist/prism-jsx-Cl1Yua97.js +0 -46
- package/dist/prism-jsx-hPS-apZM.cjs +0 -1
- package/dist/prism-markdown-DxC6Xq5I.cjs +0 -1
- package/dist/prism-markdown-mpdUNO4x.js +0 -251
- package/dist/prism-markup-Cp04rIa1.cjs +0 -1
- package/dist/prism-markup-DEzzy5Hf.js +0 -116
- package/dist/prism-python-C9ivWtbL.js +0 -59
- package/dist/prism-python-CfiSVtM6.cjs +0 -1
- package/dist/prism-rust-BpHiynOR.js +0 -92
- package/dist/prism-rust-Bu9N8X3N.cjs +0 -1
- package/dist/prism-scss-ClXbJmSV.cjs +0 -1
- package/dist/prism-scss-fulZVHKi.js +0 -52
- package/dist/prism-shell-session-Be4UuYoM.cjs +0 -1
- package/dist/prism-shell-session-CNYW0V5v.js +0 -40
- package/dist/prism-sql-CYhVDMEE.cjs +0 -1
- package/dist/prism-sql-Dwx2t_2R.js +0 -29
- package/dist/prism-tsx-Cs3LoQYD.js +0 -8
- package/dist/prism-tsx-p6J2Kc_4.cjs +0 -1
- package/dist/prism-typescript-BMqONzxf.cjs +0 -1
- package/dist/prism-typescript-CVGApr9W.js +0 -38
- package/dist/prism-yaml-C0JHu8gr.cjs +0 -1
- package/dist/prism-yaml-y6mSbj7L.js +0 -68
- package/dist/useClipboard-BWxtMT_r.cjs +0 -1
- package/dist/useClipboard-Bvvrmfhb.js +0 -231
|
@@ -0,0 +1,133 @@
|
|
|
1
|
+
import { t as e } from "./utils-BkwM-_ON.js";
|
|
2
|
+
import { t } from "./dist-CvtuClfa.js";
|
|
3
|
+
import { t as n } from "./icon-size-variants-Ck2NDe3L.js";
|
|
4
|
+
import { computed as r, createBlock as i, createCommentVNode as a, defineComponent as o, normalizeClass as s, openBlock as c, renderSlot as l, unref as u, withCtx as d } from "vue";
|
|
5
|
+
import { Loader2 as f } from "@lucide/vue";
|
|
6
|
+
import { Primitive as p } from "reka-ui";
|
|
7
|
+
//#region src/components/button/button-variants.ts
|
|
8
|
+
var m = t([
|
|
9
|
+
"inline-flex items-center justify-center gap-2",
|
|
10
|
+
"border-3 border-brutal",
|
|
11
|
+
"rounded-brutal",
|
|
12
|
+
"font-black tracking-wide",
|
|
13
|
+
"transition-all duration-150",
|
|
14
|
+
"focus:outline focus:outline-[3px] focus:outline-brutal-ring focus:outline-offset-2",
|
|
15
|
+
"disabled:opacity-50 disabled:pointer-events-none",
|
|
16
|
+
"active:translate-y-[var(--brutal-pressed-offset,2px)] active:shadow-none"
|
|
17
|
+
], {
|
|
18
|
+
variants: {
|
|
19
|
+
variant: {
|
|
20
|
+
default: [
|
|
21
|
+
"bg-brutal-bg text-brutal-fg",
|
|
22
|
+
"shadow-brutal",
|
|
23
|
+
"hover:shadow-brutal-lg hover:-translate-x-0.5 hover:-translate-y-0.5"
|
|
24
|
+
],
|
|
25
|
+
primary: [
|
|
26
|
+
"bg-brutal-primary text-brutal-primary-foreground",
|
|
27
|
+
"shadow-brutal",
|
|
28
|
+
"hover:shadow-brutal-lg hover:-translate-x-0.5 hover:-translate-y-0.5"
|
|
29
|
+
],
|
|
30
|
+
secondary: [
|
|
31
|
+
"bg-brutal-secondary text-brutal-secondary-foreground",
|
|
32
|
+
"shadow-brutal",
|
|
33
|
+
"hover:shadow-brutal-lg hover:-translate-x-0.5 hover:-translate-y-0.5"
|
|
34
|
+
],
|
|
35
|
+
accent: [
|
|
36
|
+
"bg-brutal-accent text-brutal-accent-foreground",
|
|
37
|
+
"shadow-brutal",
|
|
38
|
+
"hover:shadow-brutal-lg hover:-translate-x-0.5 hover:-translate-y-0.5"
|
|
39
|
+
],
|
|
40
|
+
danger: [
|
|
41
|
+
"bg-brutal-destructive text-brutal-destructive-foreground",
|
|
42
|
+
"shadow-brutal",
|
|
43
|
+
"hover:shadow-brutal-lg hover:-translate-x-0.5 hover:-translate-y-0.5"
|
|
44
|
+
],
|
|
45
|
+
success: [
|
|
46
|
+
"bg-brutal-success text-brutal-success-foreground",
|
|
47
|
+
"shadow-brutal",
|
|
48
|
+
"hover:shadow-brutal-lg hover:-translate-x-0.5 hover:-translate-y-0.5"
|
|
49
|
+
],
|
|
50
|
+
outline: [
|
|
51
|
+
"bg-transparent text-brutal-fg",
|
|
52
|
+
"shadow-brutal",
|
|
53
|
+
"hover:bg-brutal-fg hover:text-brutal-bg",
|
|
54
|
+
"hover:shadow-brutal-lg hover:-translate-x-0.5 hover:-translate-y-0.5"
|
|
55
|
+
],
|
|
56
|
+
ghost: [
|
|
57
|
+
"bg-transparent text-brutal-fg border-transparent",
|
|
58
|
+
"shadow-none",
|
|
59
|
+
"hover:bg-brutal-muted hover:border-brutal"
|
|
60
|
+
],
|
|
61
|
+
link: [
|
|
62
|
+
"bg-transparent text-brutal-fg border-transparent",
|
|
63
|
+
"shadow-none underline-offset-4",
|
|
64
|
+
"hover:underline"
|
|
65
|
+
]
|
|
66
|
+
},
|
|
67
|
+
size: {
|
|
68
|
+
sm: "h-9 px-3 py-1 text-sm",
|
|
69
|
+
default: "h-11 px-5 py-2 text-base",
|
|
70
|
+
lg: "h-14 px-8 py-3 text-lg",
|
|
71
|
+
xl: "h-16 px-10 py-4 text-xl",
|
|
72
|
+
icon: "h-11 w-11 p-0"
|
|
73
|
+
}
|
|
74
|
+
},
|
|
75
|
+
defaultVariants: {
|
|
76
|
+
variant: "default",
|
|
77
|
+
size: "default"
|
|
78
|
+
}
|
|
79
|
+
}), h = /* @__PURE__ */ o({
|
|
80
|
+
__name: "Button",
|
|
81
|
+
props: {
|
|
82
|
+
variant: { default: "default" },
|
|
83
|
+
size: { default: "default" },
|
|
84
|
+
asChild: {
|
|
85
|
+
type: Boolean,
|
|
86
|
+
default: !1
|
|
87
|
+
},
|
|
88
|
+
loading: {
|
|
89
|
+
type: Boolean,
|
|
90
|
+
default: !1
|
|
91
|
+
},
|
|
92
|
+
disabled: {
|
|
93
|
+
type: Boolean,
|
|
94
|
+
default: !1
|
|
95
|
+
},
|
|
96
|
+
class: { default: void 0 }
|
|
97
|
+
},
|
|
98
|
+
setup(t) {
|
|
99
|
+
let o = t, h = r(() => o.disabled || o.loading), g = r(() => e(m({
|
|
100
|
+
variant: o.variant,
|
|
101
|
+
size: o.size
|
|
102
|
+
}), o.asChild && h.value && "pointer-events-none", o.class)), _ = {
|
|
103
|
+
sm: "sm",
|
|
104
|
+
default: "default",
|
|
105
|
+
lg: "lg",
|
|
106
|
+
xl: "xl",
|
|
107
|
+
icon: "default"
|
|
108
|
+
}, v = r(() => e(n({ size: _[o.size] }), "animate-spin"));
|
|
109
|
+
return (e, n) => (c(), i(u(p), {
|
|
110
|
+
as: t.asChild ? void 0 : "button",
|
|
111
|
+
"as-child": t.asChild,
|
|
112
|
+
class: s(g.value),
|
|
113
|
+
disabled: !t.asChild && h.value,
|
|
114
|
+
"aria-disabled": t.asChild && h.value ? !0 : void 0,
|
|
115
|
+
"aria-busy": t.loading || void 0
|
|
116
|
+
}, {
|
|
117
|
+
default: d(() => [t.loading ? (c(), i(u(f), {
|
|
118
|
+
key: 0,
|
|
119
|
+
class: s(v.value)
|
|
120
|
+
}, null, 8, ["class"])) : a("", !0), l(e.$slots, "default")]),
|
|
121
|
+
_: 3
|
|
122
|
+
}, 8, [
|
|
123
|
+
"as",
|
|
124
|
+
"as-child",
|
|
125
|
+
"class",
|
|
126
|
+
"disabled",
|
|
127
|
+
"aria-disabled",
|
|
128
|
+
"aria-busy"
|
|
129
|
+
]));
|
|
130
|
+
}
|
|
131
|
+
});
|
|
132
|
+
//#endregion
|
|
133
|
+
export { m as n, h as t };
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
const e=require("./utils-BC5WDCkH.cjs"),t=require("./dist-BHWcR9E8.cjs"),n=require("./icon-size-variants-TAHpixex.cjs");let r=require("vue"),i=require("@lucide/vue"),a=require("reka-ui");var o=t.t([`inline-flex items-center justify-center gap-2`,`border-3 border-brutal`,`rounded-brutal`,`font-black tracking-wide`,`transition-all duration-150`,`focus:outline focus:outline-[3px] focus:outline-brutal-ring focus:outline-offset-2`,`disabled:opacity-50 disabled:pointer-events-none`,`active:translate-y-[var(--brutal-pressed-offset,2px)] active:shadow-none`],{variants:{variant:{default:[`bg-brutal-bg text-brutal-fg`,`shadow-brutal`,`hover:shadow-brutal-lg hover:-translate-x-0.5 hover:-translate-y-0.5`],primary:[`bg-brutal-primary text-brutal-primary-foreground`,`shadow-brutal`,`hover:shadow-brutal-lg hover:-translate-x-0.5 hover:-translate-y-0.5`],secondary:[`bg-brutal-secondary text-brutal-secondary-foreground`,`shadow-brutal`,`hover:shadow-brutal-lg hover:-translate-x-0.5 hover:-translate-y-0.5`],accent:[`bg-brutal-accent text-brutal-accent-foreground`,`shadow-brutal`,`hover:shadow-brutal-lg hover:-translate-x-0.5 hover:-translate-y-0.5`],danger:[`bg-brutal-destructive text-brutal-destructive-foreground`,`shadow-brutal`,`hover:shadow-brutal-lg hover:-translate-x-0.5 hover:-translate-y-0.5`],success:[`bg-brutal-success text-brutal-success-foreground`,`shadow-brutal`,`hover:shadow-brutal-lg hover:-translate-x-0.5 hover:-translate-y-0.5`],outline:[`bg-transparent text-brutal-fg`,`shadow-brutal`,`hover:bg-brutal-fg hover:text-brutal-bg`,`hover:shadow-brutal-lg hover:-translate-x-0.5 hover:-translate-y-0.5`],ghost:[`bg-transparent text-brutal-fg border-transparent`,`shadow-none`,`hover:bg-brutal-muted hover:border-brutal`],link:[`bg-transparent text-brutal-fg border-transparent`,`shadow-none underline-offset-4`,`hover:underline`]},size:{sm:`h-9 px-3 py-1 text-sm`,default:`h-11 px-5 py-2 text-base`,lg:`h-14 px-8 py-3 text-lg`,xl:`h-16 px-10 py-4 text-xl`,icon:`h-11 w-11 p-0`}},defaultVariants:{variant:`default`,size:`default`}}),s=(0,r.defineComponent)({__name:`Button`,props:{variant:{default:`default`},size:{default:`default`},asChild:{type:Boolean,default:!1},loading:{type:Boolean,default:!1},disabled:{type:Boolean,default:!1},class:{default:void 0}},setup(t){let s=t,c=(0,r.computed)(()=>s.disabled||s.loading),l=(0,r.computed)(()=>e.t(o({variant:s.variant,size:s.size}),s.asChild&&c.value&&`pointer-events-none`,s.class)),u={sm:`sm`,default:`default`,lg:`lg`,xl:`xl`,icon:`default`},d=(0,r.computed)(()=>e.t(n.t({size:u[s.size]}),`animate-spin`));return(e,n)=>((0,r.openBlock)(),(0,r.createBlock)((0,r.unref)(a.Primitive),{as:t.asChild?void 0:`button`,"as-child":t.asChild,class:(0,r.normalizeClass)(l.value),disabled:!t.asChild&&c.value,"aria-disabled":t.asChild&&c.value?!0:void 0,"aria-busy":t.loading||void 0},{default:(0,r.withCtx)(()=>[t.loading?((0,r.openBlock)(),(0,r.createBlock)((0,r.unref)(i.Loader2),{key:0,class:(0,r.normalizeClass)(d.value)},null,8,[`class`])):(0,r.createCommentVNode)(``,!0),(0,r.renderSlot)(e.$slots,`default`)]),_:3},8,[`as`,`as-child`,`class`,`disabled`,`aria-disabled`,`aria-busy`]))}});Object.defineProperty(exports,"n",{enumerable:!0,get:function(){return o}}),Object.defineProperty(exports,"t",{enumerable:!0,get:function(){return s}});
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
const e=require("./utils-BC5WDCkH.cjs");let t=require("vue"),n=require("@lucide/vue");var r={class:`font-black text-xs sm:text-sm tracking-tight uppercase text-brutal-fg`},i=(0,t.defineComponent)({__name:`Calendar`,props:{modelValue:{default:void 0},isRange:{type:Boolean,default:!1},disabled:{type:Boolean,default:!1},class:{default:void 0}},emits:[`update:modelValue`],setup(i,{emit:a}){let o=(0,t.defineAsyncComponent)(async()=>{try{return(await import(`v-calendar`)).DatePicker}catch{return console.warn(`[BrutxUI] Calendar component requires v-calendar. Install it: pnpm add v-calendar`),{template:`<div/>`}}}),s=i,c=a,l=(0,t.computed)(()=>e.t(`brutx-calendar`,`p-2 sm:p-3`,`bg-brutal-bg text-brutal-fg`,`border-3 border-brutal`,`shadow-brutal`,`w-fit max-w-full overflow-x-auto`,s.disabled?`opacity-50 pointer-events-none`:``,s.class)),u=(0,t.computed)(()=>s.isRange&&Array.isArray(s.modelValue)&&s.modelValue.length===2?{start:s.modelValue[0],end:s.modelValue[1]}:s.isRange?null:s.modelValue instanceof Date?s.modelValue:null);function d(e){s.disabled||(s.isRange?e&&typeof e==`object`&&`start`in e&&`end`in e?c(`update:modelValue`,[e.start,e.end]):c(`update:modelValue`,null):e instanceof Date||e===null?c(`update:modelValue`,e):c(`update:modelValue`,null))}function f(e){s.disabled||e&&typeof e==`object`&&`start`in e&&`end`in e&&c(`update:modelValue`,[e.start,e.end])}let p=(0,t.computed)(()=>({highlight:{class:`brutal-selected`,contentClass:`brutal-selected-content`}})),m=(0,t.computed)(()=>({highlight:{class:`brutal-range`,contentClass:`brutal-range-content`}})),h=(0,t.computed)(()=>e.t(`flex h-6 w-6 sm:h-8 sm:w-8 items-center justify-center text-[10px] sm:text-xs font-semibold transition-all duration-100 hover:bg-brutal-secondary hover:text-brutal-secondary-foreground hover:font-bold hover:shadow-brutal-sm cursor-pointer border-3 border-brutal/10`,`active:translate-y-[var(--brutal-pressed-offset,2px)] active:shadow-none transition-all`)),g=(0,t.computed)(()=>`text-brutal-muted-foreground opacity-40`),_=(0,t.computed)(()=>`opacity-40 cursor-not-allowed`),v=new Map;(0,t.watch)([h,g,_],()=>{v.clear()});function y(t,n){let r=`${t.isToday}-${t.isDisabled}-${t.inMonth}-${n??``}`,i=v.get(r);if(i!==void 0)return i;let a=!t.inMonth,o=e.t(h.value,n,t.isToday?`bg-brutal-secondary text-brutal-secondary-foreground font-black border-3 border-brutal`:``,a?g.value:``,t.isDisabled?_.value:``);return v.set(r,o),o}return(e,a)=>((0,t.openBlock)(),(0,t.createBlock)((0,t.unref)(o),{"model-value":u.value,mode:`date`,"is-range":i.isRange,class:(0,t.normalizeClass)(l.value),"select-attribute":p.value,"drag-attribute":m.value,"trim-weeks":``,"first-day-of-week":1,popover:!1,"onUpdate:modelValue":d,onDrag:f},{"header-prev-button":(0,t.withCtx)(()=>[(0,t.createVNode)((0,t.unref)(n.ChevronLeft),{class:`w-4 h-4`})]),"header-title":(0,t.withCtx)(({title:e})=>[(0,t.createElementVNode)(`span`,r,(0,t.toDisplayString)(e),1)]),"header-next-button":(0,t.withCtx)(()=>[(0,t.createVNode)((0,t.unref)(n.ChevronRight),{class:`w-4 h-4`})]),"day-content":(0,t.withCtx)(({day:e,dayProps:n,dayEvents:r})=>[(0,t.createElementVNode)(`div`,(0,t.mergeProps)(n,{class:y(e,n.class)},(0,t.toHandlers)(r,!0)),(0,t.toDisplayString)(e.label),17)]),_:1},8,[`model-value`,`is-range`,`class`,`select-attribute`,`drag-attribute`]))}});Object.defineProperty(exports,"t",{enumerable:!0,get:function(){return i}});
|
|
@@ -0,0 +1,85 @@
|
|
|
1
|
+
import { t as e } from "./utils-BkwM-_ON.js";
|
|
2
|
+
import { computed as t, createBlock as n, createElementVNode as r, createVNode as i, defineAsyncComponent as a, defineComponent as o, mergeProps as s, normalizeClass as c, openBlock as l, toDisplayString as u, toHandlers as d, unref as f, watch as p, withCtx as m } from "vue";
|
|
3
|
+
import { ChevronLeft as h, ChevronRight as g } from "@lucide/vue";
|
|
4
|
+
//#region src/components/calendar/Calendar.vue?vue&type=script&setup=true&lang.ts
|
|
5
|
+
var _ = { class: "font-black text-xs sm:text-sm tracking-tight uppercase text-brutal-fg" }, v = /* @__PURE__ */ o({
|
|
6
|
+
__name: "Calendar",
|
|
7
|
+
props: {
|
|
8
|
+
modelValue: { default: void 0 },
|
|
9
|
+
isRange: {
|
|
10
|
+
type: Boolean,
|
|
11
|
+
default: !1
|
|
12
|
+
},
|
|
13
|
+
disabled: {
|
|
14
|
+
type: Boolean,
|
|
15
|
+
default: !1
|
|
16
|
+
},
|
|
17
|
+
class: { default: void 0 }
|
|
18
|
+
},
|
|
19
|
+
emits: ["update:modelValue"],
|
|
20
|
+
setup(o, { emit: v }) {
|
|
21
|
+
let y = a(async () => {
|
|
22
|
+
try {
|
|
23
|
+
return (await import("v-calendar")).DatePicker;
|
|
24
|
+
} catch {
|
|
25
|
+
return console.warn("[BrutxUI] Calendar component requires v-calendar. Install it: pnpm add v-calendar"), { template: "<div/>" };
|
|
26
|
+
}
|
|
27
|
+
}), b = o, x = v, S = t(() => e("brutx-calendar", "p-2 sm:p-3", "bg-brutal-bg text-brutal-fg", "border-3 border-brutal", "shadow-brutal", "w-fit max-w-full overflow-x-auto", b.disabled ? "opacity-50 pointer-events-none" : "", b.class)), C = t(() => b.isRange && Array.isArray(b.modelValue) && b.modelValue.length === 2 ? {
|
|
28
|
+
start: b.modelValue[0],
|
|
29
|
+
end: b.modelValue[1]
|
|
30
|
+
} : b.isRange ? null : b.modelValue instanceof Date ? b.modelValue : null);
|
|
31
|
+
function w(e) {
|
|
32
|
+
b.disabled || (b.isRange ? e && typeof e == "object" && "start" in e && "end" in e ? x("update:modelValue", [e.start, e.end]) : x("update:modelValue", null) : e instanceof Date || e === null ? x("update:modelValue", e) : x("update:modelValue", null));
|
|
33
|
+
}
|
|
34
|
+
function T(e) {
|
|
35
|
+
b.disabled || e && typeof e == "object" && "start" in e && "end" in e && x("update:modelValue", [e.start, e.end]);
|
|
36
|
+
}
|
|
37
|
+
let E = t(() => ({ highlight: {
|
|
38
|
+
class: "brutal-selected",
|
|
39
|
+
contentClass: "brutal-selected-content"
|
|
40
|
+
} })), D = t(() => ({ highlight: {
|
|
41
|
+
class: "brutal-range",
|
|
42
|
+
contentClass: "brutal-range-content"
|
|
43
|
+
} })), O = t(() => e("flex h-6 w-6 sm:h-8 sm:w-8 items-center justify-center text-[10px] sm:text-xs font-semibold transition-all duration-100 hover:bg-brutal-secondary hover:text-brutal-secondary-foreground hover:font-bold hover:shadow-brutal-sm cursor-pointer border-3 border-brutal/10", "active:translate-y-[var(--brutal-pressed-offset,2px)] active:shadow-none transition-all")), k = t(() => "text-brutal-muted-foreground opacity-40"), A = t(() => "opacity-40 cursor-not-allowed"), j = /* @__PURE__ */ new Map();
|
|
44
|
+
p([
|
|
45
|
+
O,
|
|
46
|
+
k,
|
|
47
|
+
A
|
|
48
|
+
], () => {
|
|
49
|
+
j.clear();
|
|
50
|
+
});
|
|
51
|
+
function M(t, n) {
|
|
52
|
+
let r = `${t.isToday}-${t.isDisabled}-${t.inMonth}-${n ?? ""}`, i = j.get(r);
|
|
53
|
+
if (i !== void 0) return i;
|
|
54
|
+
let a = !t.inMonth, o = e(O.value, n, t.isToday ? "bg-brutal-secondary text-brutal-secondary-foreground font-black border-3 border-brutal" : "", a ? k.value : "", t.isDisabled ? A.value : "");
|
|
55
|
+
return j.set(r, o), o;
|
|
56
|
+
}
|
|
57
|
+
return (e, t) => (l(), n(f(y), {
|
|
58
|
+
"model-value": C.value,
|
|
59
|
+
mode: "date",
|
|
60
|
+
"is-range": o.isRange,
|
|
61
|
+
class: c(S.value),
|
|
62
|
+
"select-attribute": E.value,
|
|
63
|
+
"drag-attribute": D.value,
|
|
64
|
+
"trim-weeks": "",
|
|
65
|
+
"first-day-of-week": 1,
|
|
66
|
+
popover: !1,
|
|
67
|
+
"onUpdate:modelValue": w,
|
|
68
|
+
onDrag: T
|
|
69
|
+
}, {
|
|
70
|
+
"header-prev-button": m(() => [i(f(h), { class: "w-4 h-4" })]),
|
|
71
|
+
"header-title": m(({ title: e }) => [r("span", _, u(e), 1)]),
|
|
72
|
+
"header-next-button": m(() => [i(f(g), { class: "w-4 h-4" })]),
|
|
73
|
+
"day-content": m(({ day: e, dayProps: t, dayEvents: n }) => [r("div", s(t, { class: M(e, t.class) }, d(n, !0)), u(e.label), 17)]),
|
|
74
|
+
_: 1
|
|
75
|
+
}, 8, [
|
|
76
|
+
"model-value",
|
|
77
|
+
"is-range",
|
|
78
|
+
"class",
|
|
79
|
+
"select-attribute",
|
|
80
|
+
"drag-attribute"
|
|
81
|
+
]));
|
|
82
|
+
}
|
|
83
|
+
});
|
|
84
|
+
//#endregion
|
|
85
|
+
export { v as t };
|
|
@@ -0,0 +1,93 @@
|
|
|
1
|
+
import { t as e } from "./utils-BkwM-_ON.js";
|
|
2
|
+
import { t } from "./dist-CvtuClfa.js";
|
|
3
|
+
import { computed as n, createBlock as r, createElementBlock as i, defineComponent as a, normalizeClass as o, openBlock as s, renderSlot as c, resolveDynamicComponent as l, withCtx as u } from "vue";
|
|
4
|
+
//#region src/components/card/card-variants.ts
|
|
5
|
+
var d = t([
|
|
6
|
+
"border-3 border-brutal",
|
|
7
|
+
"rounded-brutal",
|
|
8
|
+
"bg-brutal-bg text-brutal-fg",
|
|
9
|
+
"transition-all duration-150"
|
|
10
|
+
], {
|
|
11
|
+
variants: {
|
|
12
|
+
variant: {
|
|
13
|
+
default: "shadow-brutal",
|
|
14
|
+
elevated: "shadow-brutal-lg",
|
|
15
|
+
flat: "shadow-none",
|
|
16
|
+
interactive: [
|
|
17
|
+
"shadow-brutal",
|
|
18
|
+
"hover:shadow-brutal-lg hover:-translate-x-0.5 hover:-translate-y-0.5",
|
|
19
|
+
"active:translate-y-[var(--brutal-pressed-offset,2px)] active:shadow-none",
|
|
20
|
+
"cursor-pointer"
|
|
21
|
+
],
|
|
22
|
+
primary: "shadow-brutal-primary border-[var(--brutal-primary)]",
|
|
23
|
+
secondary: "shadow-brutal-secondary border-[var(--brutal-secondary)]"
|
|
24
|
+
},
|
|
25
|
+
padding: {
|
|
26
|
+
none: "p-0",
|
|
27
|
+
sm: "p-3",
|
|
28
|
+
default: "p-5",
|
|
29
|
+
lg: "p-8"
|
|
30
|
+
}
|
|
31
|
+
},
|
|
32
|
+
defaultVariants: {
|
|
33
|
+
variant: "default",
|
|
34
|
+
padding: "default"
|
|
35
|
+
}
|
|
36
|
+
}), f = /* @__PURE__ */ a({
|
|
37
|
+
__name: "Card",
|
|
38
|
+
props: {
|
|
39
|
+
variant: { default: "default" },
|
|
40
|
+
padding: { default: "default" },
|
|
41
|
+
class: { default: void 0 }
|
|
42
|
+
},
|
|
43
|
+
setup(t) {
|
|
44
|
+
let r = t, a = n(() => e(d({
|
|
45
|
+
variant: r.variant,
|
|
46
|
+
padding: r.padding
|
|
47
|
+
}), r.class));
|
|
48
|
+
return (e, t) => (s(), i("div", { class: o(a.value) }, [c(e.$slots, "default")], 2));
|
|
49
|
+
}
|
|
50
|
+
}), p = /* @__PURE__ */ a({
|
|
51
|
+
__name: "CardHeader",
|
|
52
|
+
props: { class: {} },
|
|
53
|
+
setup(t) {
|
|
54
|
+
let r = t, a = n(() => e("flex flex-col space-y-1.5 pb-4", r.class));
|
|
55
|
+
return (e, t) => (s(), i("div", { class: o(a.value) }, [c(e.$slots, "default")], 2));
|
|
56
|
+
}
|
|
57
|
+
}), m = /* @__PURE__ */ a({
|
|
58
|
+
__name: "CardTitle",
|
|
59
|
+
props: {
|
|
60
|
+
as: { default: "h3" },
|
|
61
|
+
class: { default: void 0 }
|
|
62
|
+
},
|
|
63
|
+
setup(t) {
|
|
64
|
+
let i = t, a = n(() => e("text-2xl font-black tracking-tight leading-none", i.class));
|
|
65
|
+
return (e, n) => (s(), r(l(t.as), { class: o(a.value) }, {
|
|
66
|
+
default: u(() => [c(e.$slots, "default")]),
|
|
67
|
+
_: 3
|
|
68
|
+
}, 8, ["class"]));
|
|
69
|
+
}
|
|
70
|
+
}), h = /* @__PURE__ */ a({
|
|
71
|
+
__name: "CardDescription",
|
|
72
|
+
props: { class: {} },
|
|
73
|
+
setup(t) {
|
|
74
|
+
let r = t, a = n(() => e("text-sm text-brutal-muted-foreground font-medium", r.class));
|
|
75
|
+
return (e, t) => (s(), i("p", { class: o(a.value) }, [c(e.$slots, "default")], 2));
|
|
76
|
+
}
|
|
77
|
+
}), g = /* @__PURE__ */ a({
|
|
78
|
+
__name: "CardContent",
|
|
79
|
+
props: { class: {} },
|
|
80
|
+
setup(t) {
|
|
81
|
+
let r = t, a = n(() => e(r.class));
|
|
82
|
+
return (e, t) => (s(), i("div", { class: o(a.value) }, [c(e.$slots, "default")], 2));
|
|
83
|
+
}
|
|
84
|
+
}), _ = /* @__PURE__ */ a({
|
|
85
|
+
__name: "CardFooter",
|
|
86
|
+
props: { class: {} },
|
|
87
|
+
setup(t) {
|
|
88
|
+
let r = t, a = n(() => e("flex items-center pt-4 border-t-3 border-brutal", r.class));
|
|
89
|
+
return (e, t) => (s(), i("div", { class: o(a.value) }, [c(e.$slots, "default")], 2));
|
|
90
|
+
}
|
|
91
|
+
});
|
|
92
|
+
//#endregion
|
|
93
|
+
export { p as a, m as i, g as n, f as o, h as r, d as s, _ as t };
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
const e=require("./utils-BC5WDCkH.cjs"),t=require("./dist-BHWcR9E8.cjs");let n=require("vue");var r=t.t([`border-3 border-brutal`,`rounded-brutal`,`bg-brutal-bg text-brutal-fg`,`transition-all duration-150`],{variants:{variant:{default:`shadow-brutal`,elevated:`shadow-brutal-lg`,flat:`shadow-none`,interactive:[`shadow-brutal`,`hover:shadow-brutal-lg hover:-translate-x-0.5 hover:-translate-y-0.5`,`active:translate-y-[var(--brutal-pressed-offset,2px)] active:shadow-none`,`cursor-pointer`],primary:`shadow-brutal-primary border-[var(--brutal-primary)]`,secondary:`shadow-brutal-secondary border-[var(--brutal-secondary)]`},padding:{none:`p-0`,sm:`p-3`,default:`p-5`,lg:`p-8`}},defaultVariants:{variant:`default`,padding:`default`}}),i=(0,n.defineComponent)({__name:`Card`,props:{variant:{default:`default`},padding:{default:`default`},class:{default:void 0}},setup(t){let i=t,a=(0,n.computed)(()=>e.t(r({variant:i.variant,padding:i.padding}),i.class));return(e,t)=>((0,n.openBlock)(),(0,n.createElementBlock)(`div`,{class:(0,n.normalizeClass)(a.value)},[(0,n.renderSlot)(e.$slots,`default`)],2))}}),a=(0,n.defineComponent)({__name:`CardHeader`,props:{class:{}},setup(t){let r=t,i=(0,n.computed)(()=>e.t(`flex flex-col space-y-1.5 pb-4`,r.class));return(e,t)=>((0,n.openBlock)(),(0,n.createElementBlock)(`div`,{class:(0,n.normalizeClass)(i.value)},[(0,n.renderSlot)(e.$slots,`default`)],2))}}),o=(0,n.defineComponent)({__name:`CardTitle`,props:{as:{default:`h3`},class:{default:void 0}},setup(t){let r=t,i=(0,n.computed)(()=>e.t(`text-2xl font-black tracking-tight leading-none`,r.class));return(e,r)=>((0,n.openBlock)(),(0,n.createBlock)((0,n.resolveDynamicComponent)(t.as),{class:(0,n.normalizeClass)(i.value)},{default:(0,n.withCtx)(()=>[(0,n.renderSlot)(e.$slots,`default`)]),_:3},8,[`class`]))}}),s=(0,n.defineComponent)({__name:`CardDescription`,props:{class:{}},setup(t){let r=t,i=(0,n.computed)(()=>e.t(`text-sm text-brutal-muted-foreground font-medium`,r.class));return(e,t)=>((0,n.openBlock)(),(0,n.createElementBlock)(`p`,{class:(0,n.normalizeClass)(i.value)},[(0,n.renderSlot)(e.$slots,`default`)],2))}}),c=(0,n.defineComponent)({__name:`CardContent`,props:{class:{}},setup(t){let r=t,i=(0,n.computed)(()=>e.t(r.class));return(e,t)=>((0,n.openBlock)(),(0,n.createElementBlock)(`div`,{class:(0,n.normalizeClass)(i.value)},[(0,n.renderSlot)(e.$slots,`default`)],2))}}),l=(0,n.defineComponent)({__name:`CardFooter`,props:{class:{}},setup(t){let r=t,i=(0,n.computed)(()=>e.t(`flex items-center pt-4 border-t-3 border-brutal`,r.class));return(e,t)=>((0,n.openBlock)(),(0,n.createElementBlock)(`div`,{class:(0,n.normalizeClass)(i.value)},[(0,n.renderSlot)(e.$slots,`default`)],2))}});Object.defineProperty(exports,"a",{enumerable:!0,get:function(){return a}}),Object.defineProperty(exports,"i",{enumerable:!0,get:function(){return o}}),Object.defineProperty(exports,"n",{enumerable:!0,get:function(){return c}}),Object.defineProperty(exports,"o",{enumerable:!0,get:function(){return i}}),Object.defineProperty(exports,"r",{enumerable:!0,get:function(){return s}}),Object.defineProperty(exports,"s",{enumerable:!0,get:function(){return r}}),Object.defineProperty(exports,"t",{enumerable:!0,get:function(){return l}});
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
const e=require("./utils-BC5WDCkH.cjs"),t=require("./dist-BHWcR9E8.cjs"),n=require("./icon-size-variants-TAHpixex.cjs"),r=require("./useLocale-CNQLn5sW.cjs"),i=require("./defaults-C3tS_SLq.cjs");let a=require("vue"),o=require("@lucide/vue"),s=require("reka-ui");var c=t.t([`fixed inset-0 z-50 bg-brutal-overlay`,`data-[state=open]:animate-in data-[state=closed]:animate-out`,`data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0`]),l=t.t([`flex flex-col space-y-2 pb-4 border-b-3 border-brutal`]),u=t.t([`flex flex-col-reverse sm:flex-row sm:justify-end sm:space-x-3 pt-4 border-t-3 border-brutal`]),d=[`h-8 w-8 flex items-center justify-center`,`border-3 border-brutal bg-brutal-bg text-brutal-fg`,`shadow-brutal-sm`,`transition-all duration-150`,`hover:bg-brutal-destructive hover:text-brutal-fg`,`active:translate-y-[var(--brutal-pressed-offset,2px)] active:shadow-none`,`focus:outline-none focus:ring-2 focus:ring-brutal-ring focus:ring-offset-2`],f=(0,a.defineComponent)({__name:`DialogOverlay`,props:{class:{}},setup(t){let n=t,r=(0,a.computed)(()=>e.t(c(),n.class));return(e,t)=>((0,a.openBlock)(),(0,a.createBlock)((0,a.unref)(s.DialogOverlay),{class:(0,a.normalizeClass)(r.value)},null,8,[`class`]))}}),p=t.t([`fixed left-[50%] top-[50%] z-50 translate-x-[-50%] translate-y-[-50%]`,`w-full p-6`,`bg-brutal-bg text-brutal-fg border-3 border-brutal shadow-brutal-xl rounded-brutal`,`duration-200`,`data-[state=open]:animate-in data-[state=closed]:animate-out`,`data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0`,`data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95`,`data-[state=closed]:slide-out-to-left-1/2 data-[state=closed]:slide-out-to-top-[48%]`,`data-[state=open]:slide-in-from-left-1/2 data-[state=open]:slide-in-from-top-[48%]`],{variants:{size:{sm:`max-w-sm`,default:`max-w-lg`,lg:`max-w-2xl`,xl:`max-w-4xl`,full:`max-w-[calc(100vw-2rem)]`}},defaultVariants:{size:`default`}}),m=t.t([...d,`absolute right-4 top-4`,`hover:shadow-brutal-lg hover:-translate-x-0.5 hover:-translate-y-0.5`]),h={class:`sr-only`},g=(0,a.defineComponent)({__name:`DialogContent`,props:{showCloseButton:{type:Boolean,default:!0},size:{default:`default`},forceMount:{type:Boolean,default:void 0},class:{default:void 0}},setup(t){let i=t,{t:c}=r.r(),l=(0,a.computed)(()=>e.t(p({size:i.size}),i.class)),u=(0,a.computed)(()=>e.t(m())),d=e.t(n.t({size:`default`}),`stroke-[3]`);return(e,n)=>((0,a.openBlock)(),(0,a.createBlock)((0,a.unref)(s.DialogPortal),null,{default:(0,a.withCtx)(()=>[(0,a.createVNode)(f),(0,a.createVNode)((0,a.unref)(s.DialogContent),{class:(0,a.normalizeClass)(l.value),"force-mount":i.forceMount===!0?!0:void 0},{default:(0,a.withCtx)(()=>[(0,a.renderSlot)(e.$slots,`default`),t.showCloseButton?((0,a.openBlock)(),(0,a.createBlock)((0,a.unref)(s.DialogClose),{key:0,class:(0,a.normalizeClass)(u.value)},{default:(0,a.withCtx)(()=>[(0,a.createVNode)((0,a.unref)(o.X),{class:(0,a.normalizeClass)((0,a.unref)(d))},null,8,[`class`]),(0,a.createElementVNode)(`span`,h,(0,a.toDisplayString)((0,a.unref)(c)(`dialog.close`)),1)]),_:1},8,[`class`])):(0,a.createCommentVNode)(``,!0)]),_:3},8,[`class`,`force-mount`])]),_:3}))}}),_={class:`sr-only`},v=(0,a.defineComponent)({__name:`DialogEnhanced`,props:{showCloseButton:{type:Boolean,default:!0},forceMount:{type:Boolean,default:void 0},class:{default:void 0},draggable:{type:Boolean,default:!1},dragHandle:{default:void 0},bounds:{default:`viewport`},initialPosition:{default:void 0},resizable:{type:Boolean,default:!1},minWidth:{default:200},minHeight:{default:150},maxWidth:{default:void 0},maxHeight:{default:void 0},aspectRatio:{default:void 0}},setup(t){let c=t,{t:l}=r.r(),u=(0,a.ref)(null),d=(0,a.ref)(!1),h=(0,a.ref)(!1),g=(0,a.ref)({x:0,y:0}),v=(0,a.ref)({width:0,height:0}),y=(0,a.ref)({x:0,y:0}),b=(0,a.ref)({x:0,y:0,width:0,height:0,corner:`se`}),x=(0,a.computed)(()=>e.t(p(),c.draggable&&`cursor-move`,c.resizable&&`overflow-hidden`,c.class)),S=(0,a.computed)(()=>e.t(m())),C=e.t(n.t({size:`default`}),`stroke-[3]`),w=(0,a.computed)(()=>{let e={};return c.draggable&&(e.transform=`translate(${g.value.x}px, ${g.value.y}px)`,e.position=`fixed`,e.top=`50%`,e.left=`50%`,e.margin=`0`),c.resizable&&v.value.width>0&&v.value.height>0&&(e.width=`${v.value.width}px`,e.height=`${v.value.height}px`),e});function T(){return c.draggable?typeof c.dragHandle==`string`?u.value?.querySelector(c.dragHandle)??null:c.dragHandle instanceof HTMLElement?c.dragHandle:u.value:null}function E(e){return[`INPUT`,`TEXTAREA`,`SELECT`,`BUTTON`,`A`].includes(e.tagName)||e.isContentEditable}function D(e,t){let n=u.value?.getBoundingClientRect();if(!n)return{x:e,y:t};if(c.bounds===`viewport`)return{x:Math.max(-n.width/2,Math.min(e,window.innerWidth-n.width/2)),y:Math.max(-n.height/2,Math.min(t,window.innerHeight-n.height/2))};if(c.bounds===`parent`){let r=u.value?.parentElement?.getBoundingClientRect();if(r)return{x:Math.max(r.left-n.width/2,Math.min(e,r.right-n.width/2)),y:Math.max(r.top-n.height/2,Math.min(t,r.bottom-n.height/2))}}else if(typeof c.bounds==`object`)return{x:Math.max(c.bounds.left-n.width/2,Math.min(e,c.bounds.right-n.width/2)),y:Math.max(c.bounds.top-n.height/2,Math.min(t,c.bounds.bottom-n.height/2))};return{x:e,y:t}}function O(e){if(!i.i||!c.draggable)return;let t=e.target;if(!(t instanceof HTMLElement)||E(t))return;let n=T();n&&!n.contains(t)||(d.value=!0,y.value={x:e.clientX-g.value.x,y:e.clientY-g.value.y},document.addEventListener(`mousemove`,k),document.addEventListener(`mouseup`,A),e.preventDefault())}function k(e){d.value&&(g.value=D(e.clientX-y.value.x,e.clientY-y.value.y))}function A(){i.i&&(d.value=!1,document.removeEventListener(`mousemove`,k),document.removeEventListener(`mouseup`,A))}function j(e,t){i.i&&c.resizable&&(h.value=!0,b.value={x:e.clientX,y:e.clientY,width:v.value.width,height:v.value.height,corner:t},document.addEventListener(`mousemove`,M),document.addEventListener(`mouseup`,N),e.preventDefault(),e.stopPropagation())}function M(e){if(!h.value)return;let t=e.clientX-b.value.x,n=e.clientY-b.value.y,r=b.value.width,i=b.value.height;switch(b.value.corner){case`se`:r+=t,i+=n;break;case`sw`:r-=t,i+=n;break;case`ne`:r+=t,i-=n;break;case`nw`:r-=t,i-=n;break}c.minWidth&&(r=Math.max(c.minWidth,r)),c.minHeight&&(i=Math.max(c.minHeight,i)),c.maxWidth&&(r=Math.min(c.maxWidth,r)),c.maxHeight&&(i=Math.min(c.maxHeight,i)),c.aspectRatio&&(i=r/c.aspectRatio,c.minHeight&&(i=Math.max(c.minHeight,i)),c.maxHeight&&(i=Math.min(c.maxHeight,i))),v.value={width:r,height:i}}function N(){i.i&&(h.value=!1,document.removeEventListener(`mousemove`,M),document.removeEventListener(`mouseup`,N))}function P(){c.initialPosition?g.value={...c.initialPosition}:g.value={x:0,y:0}}function F(){u.value&&requestAnimationFrame(()=>{let e=u.value?.getBoundingClientRect();e&&e.width>0&&e.height>0&&(v.value={width:e.width,height:e.height})})}return(0,a.watch)(()=>c.initialPosition,e=>{e&&(g.value={...e})}),(0,a.onMounted)(()=>{P(),F()}),(0,a.onUnmounted)(()=>{i.i&&(document.removeEventListener(`mousemove`,k),document.removeEventListener(`mouseup`,A),document.removeEventListener(`mousemove`,M),document.removeEventListener(`mouseup`,N))}),(e,n)=>((0,a.openBlock)(),(0,a.createBlock)((0,a.unref)(s.DialogPortal),null,{default:(0,a.withCtx)(()=>[(0,a.createVNode)(f),(0,a.createVNode)((0,a.unref)(s.DialogContent),{ref_key:`contentRef`,ref:u,class:(0,a.normalizeClass)(x.value),style:(0,a.normalizeStyle)(w.value),"force-mount":c.forceMount===!0?!0:void 0,onMousedown:O},{default:(0,a.withCtx)(()=>[(0,a.renderSlot)(e.$slots,`default`),t.showCloseButton?((0,a.openBlock)(),(0,a.createBlock)((0,a.unref)(s.DialogClose),{key:0,class:(0,a.normalizeClass)(S.value)},{default:(0,a.withCtx)(()=>[(0,a.createVNode)((0,a.unref)(o.X),{class:(0,a.normalizeClass)((0,a.unref)(C))},null,8,[`class`]),(0,a.createElementVNode)(`span`,_,(0,a.toDisplayString)((0,a.unref)(l)(`dialog.close`)),1)]),_:1},8,[`class`])):(0,a.createCommentVNode)(``,!0),t.resizable?((0,a.openBlock)(),(0,a.createElementBlock)(a.Fragment,{key:1},[(0,a.createElementVNode)(`div`,{class:`absolute bottom-0 right-0 w-4 h-4 cursor-se-resize`,onMousedown:n[0]||=e=>j(e,`se`)},null,32),(0,a.createElementVNode)(`div`,{class:`absolute bottom-0 left-0 w-4 h-4 cursor-sw-resize`,onMousedown:n[1]||=e=>j(e,`sw`)},null,32),(0,a.createElementVNode)(`div`,{class:`absolute top-0 right-0 w-4 h-4 cursor-ne-resize`,onMousedown:n[2]||=e=>j(e,`ne`)},null,32),(0,a.createElementVNode)(`div`,{class:`absolute top-0 left-0 w-4 h-4 cursor-nw-resize`,onMousedown:n[3]||=e=>j(e,`nw`)},null,32)],64)):(0,a.createCommentVNode)(``,!0)]),_:3},8,[`class`,`style`,`force-mount`])]),_:3}))}}),y=(0,a.defineComponent)({__name:`DialogHeader`,props:{class:{}},setup(t){let n=t,r=(0,a.computed)(()=>e.t(l(),n.class));return(e,t)=>((0,a.openBlock)(),(0,a.createElementBlock)(`div`,{class:(0,a.normalizeClass)(r.value)},[(0,a.renderSlot)(e.$slots,`default`)],2))}}),b=(0,a.defineComponent)({__name:`DialogFooter`,props:{class:{}},setup(t){let n=t,r=(0,a.computed)(()=>e.t(u(),n.class));return(e,t)=>((0,a.openBlock)(),(0,a.createElementBlock)(`div`,{class:(0,a.normalizeClass)(r.value)},[(0,a.renderSlot)(e.$slots,`default`)],2))}}),x=(0,a.defineComponent)({__name:`DialogTitle`,props:{class:{}},setup(t){let n=t,r=(0,a.computed)(()=>e.t(`text-xl font-black tracking-tight`,n.class));return(e,t)=>((0,a.openBlock)(),(0,a.createBlock)((0,a.unref)(s.DialogTitle),{class:(0,a.normalizeClass)(r.value)},{default:(0,a.withCtx)(()=>[(0,a.renderSlot)(e.$slots,`default`)]),_:3},8,[`class`]))}}),S=(0,a.defineComponent)({__name:`DialogDescription`,props:{class:{}},setup(t){let n=t,r=(0,a.computed)(()=>e.t(`text-sm text-brutal-muted-foreground font-medium`,n.class));return(e,t)=>((0,a.openBlock)(),(0,a.createBlock)((0,a.unref)(s.DialogDescription),{class:(0,a.normalizeClass)(r.value)},{default:(0,a.withCtx)(()=>[(0,a.renderSlot)(e.$slots,`default`)]),_:3},8,[`class`]))}});Object.defineProperty(exports,"a",{enumerable:!0,get:function(){return v}}),Object.defineProperty(exports,"c",{enumerable:!0,get:function(){return p}}),Object.defineProperty(exports,"d",{enumerable:!0,get:function(){return c}}),Object.defineProperty(exports,"f",{enumerable:!0,get:function(){return u}}),Object.defineProperty(exports,"i",{enumerable:!0,get:function(){return y}}),Object.defineProperty(exports,"l",{enumerable:!0,get:function(){return f}}),Object.defineProperty(exports,"n",{enumerable:!0,get:function(){return x}}),Object.defineProperty(exports,"o",{enumerable:!0,get:function(){return g}}),Object.defineProperty(exports,"p",{enumerable:!0,get:function(){return l}}),Object.defineProperty(exports,"r",{enumerable:!0,get:function(){return b}}),Object.defineProperty(exports,"s",{enumerable:!0,get:function(){return m}}),Object.defineProperty(exports,"t",{enumerable:!0,get:function(){return S}}),Object.defineProperty(exports,"u",{enumerable:!0,get:function(){return d}});
|