@kreavoks/kreaui 0.0.1
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/README.md +49 -0
- package/lib/kreaui.css +2 -0
- package/lib/kreaui.es.js +358 -0
- package/lib/kreaui.umd.js +1 -0
- package/package.json +45 -0
package/README.md
ADDED
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
# Starlight Starter Kit: Basics
|
|
2
|
+
|
|
3
|
+
[](https://starlight.astro.build)
|
|
4
|
+
|
|
5
|
+
```
|
|
6
|
+
npm create astro@latest -- --template starlight
|
|
7
|
+
```
|
|
8
|
+
|
|
9
|
+
> π§βπ **Seasoned astronaut?** Delete this file. Have fun!
|
|
10
|
+
|
|
11
|
+
## π Project Structure
|
|
12
|
+
|
|
13
|
+
Inside of your Astro + Starlight project, you'll see the following folders and files:
|
|
14
|
+
|
|
15
|
+
```
|
|
16
|
+
.
|
|
17
|
+
βββ public/
|
|
18
|
+
βββ src/
|
|
19
|
+
β βββ assets/
|
|
20
|
+
β βββ content/
|
|
21
|
+
β β βββ docs/
|
|
22
|
+
β βββ content.config.ts
|
|
23
|
+
βββ astro.config.mjs
|
|
24
|
+
βββ package.json
|
|
25
|
+
βββ tsconfig.json
|
|
26
|
+
```
|
|
27
|
+
|
|
28
|
+
Starlight looks for `.md` or `.mdx` files in the `src/content/docs/` directory. Each file is exposed as a route based on its file name.
|
|
29
|
+
|
|
30
|
+
Images can be added to `src/assets/` and embedded in Markdown with a relative link.
|
|
31
|
+
|
|
32
|
+
Static assets, like favicons, can be placed in the `public/` directory.
|
|
33
|
+
|
|
34
|
+
## π§ Commands
|
|
35
|
+
|
|
36
|
+
All commands are run from the root of the project, from a terminal:
|
|
37
|
+
|
|
38
|
+
| Command | Action |
|
|
39
|
+
| :------------------------ | :----------------------------------------------- |
|
|
40
|
+
| `npm install` | Installs dependencies |
|
|
41
|
+
| `npm run dev` | Starts local dev server at `localhost:4321` |
|
|
42
|
+
| `npm run build` | Build your production site to `./dist/` |
|
|
43
|
+
| `npm run preview` | Preview your build locally, before deploying |
|
|
44
|
+
| `npm run astro ...` | Run CLI commands like `astro add`, `astro check` |
|
|
45
|
+
| `npm run astro -- --help` | Get help using the Astro CLI |
|
|
46
|
+
|
|
47
|
+
## π Want to learn more?
|
|
48
|
+
|
|
49
|
+
Check out [Starlightβs docs](https://starlight.astro.build/), read [the Astro documentation](https://docs.astro.build), or jump into the [Astro Discord server](https://astro.build/chat).
|
package/lib/kreaui.css
ADDED
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
.krea-dropdown-wrapper[data-v-948716a5]{display:inline-block;position:relative}.krea-dropdown-popover[data-v-948716a5]{z-index:50;background:#fff;border:1px solid #e2e8f0;border-radius:12px;flex-direction:column;gap:2px;min-width:14rem;padding:4px;animation:.12s cubic-bezier(.16,1,.3,1) krea-dropdown-in-948716a5;display:flex;position:absolute;top:calc(100% + 8px)}@keyframes krea-dropdown-in-948716a5{0%{opacity:0;transform:scale(.96)translateY(-4px)}to{opacity:1;transform:scale(1)translateY(0)}}:where([data-theme=dark],[data-theme=dark] *) .krea-dropdown-popover[data-v-948716a5]{background:#18181b;border-color:#27272a}.krea-dropdown-divider[data-v-948716a5]{background:#f1f5f9;height:1px;margin:4px 0}:where([data-theme=dark],[data-theme=dark] *) .krea-dropdown-divider[data-v-948716a5]{background:#27272a}.krea-dropdown-item[data-v-948716a5]{color:#334155;cursor:pointer;background:0 0;border:none;border-radius:8px;justify-content:space-between;align-items:center;width:100%;padding:8px 12px;font-size:.875rem;font-weight:500;transition:background-color .15s,color .15s;display:flex}.krea-dropdown-item[data-v-948716a5]:hover{background:#f1f5f9}:where([data-theme=dark],[data-theme=dark] *) .krea-dropdown-item[data-v-948716a5]{color:#e2e8f0}:where([data-theme=dark],[data-theme=dark] *) .krea-dropdown-item[data-v-948716a5]:hover{background:#27272a}.krea-dropdown-item[data-v-948716a5]:disabled{pointer-events:none;opacity:.4}.krea-dropdown-item--active[data-v-948716a5]{color:#4082e6;background:#eff6ff;font-weight:600}:where([data-theme=dark],[data-theme=dark] *) .krea-dropdown-item--active[data-v-948716a5]{color:#4082e6;background:#4082e626}.krea-dropdown-item--active[data-v-948716a5]:hover{background:#dbeafe}:where([data-theme=dark],[data-theme=dark] *) .krea-dropdown-item--active[data-v-948716a5]:hover{background:#4082e640}.krea-dropdown-item--danger[data-v-948716a5]{color:#f43f5e}.krea-dropdown-item--danger[data-v-948716a5]:hover{background:#fff1f2}:where([data-theme=dark],[data-theme=dark] *) .krea-dropdown-item--danger[data-v-948716a5]:hover{background:#f43f5e26}
|
|
2
|
+
/*$vite$:1*/
|
package/lib/kreaui.es.js
ADDED
|
@@ -0,0 +1,358 @@
|
|
|
1
|
+
import { Fragment as e, computed as t, createBlock as n, createCommentVNode as r, createElementBlock as i, createElementVNode as a, createTextVNode as o, createVNode as s, defineComponent as c, normalizeClass as l, normalizeStyle as u, onMounted as d, onUnmounted as f, openBlock as p, ref as m, renderList as h, renderSlot as g, resolveDynamicComponent as _, toDisplayString as v, unref as y, vShow as b, withDirectives as x } from "vue";
|
|
2
|
+
import { ChevronDown as S, Loader2 as C } from "lucide-vue-next";
|
|
3
|
+
//#endregion
|
|
4
|
+
//#region src/shared/ui/badge/Badge.vue
|
|
5
|
+
var w = /* @__PURE__ */ c({
|
|
6
|
+
__name: "Badge",
|
|
7
|
+
props: {
|
|
8
|
+
type: { default: "label" },
|
|
9
|
+
variant: { default: "primary" },
|
|
10
|
+
appearance: {},
|
|
11
|
+
size: { default: "md" },
|
|
12
|
+
rounded: { default: "lg" },
|
|
13
|
+
iconOnly: {
|
|
14
|
+
type: Boolean,
|
|
15
|
+
default: !1
|
|
16
|
+
},
|
|
17
|
+
class: { default: "" }
|
|
18
|
+
},
|
|
19
|
+
setup(e) {
|
|
20
|
+
let n = e, a = t(() => n.appearance ? n.appearance : n.type === "label" ? "soft" : "solid"), o = {
|
|
21
|
+
primary: "bg-blue-50 text-primary border-blue-200/70 dark:bg-blue-950/40 dark:text-blue-400 dark:border-blue-800/50",
|
|
22
|
+
secondary: "bg-slate-100 text-slate-600 border-slate-200 dark:bg-slate-800/80 dark:text-slate-300 dark:border-slate-700",
|
|
23
|
+
success: "bg-emerald-50 text-emerald-600 border-emerald-200 dark:bg-emerald-500/10 dark:text-emerald-400 dark:border-emerald-500/20",
|
|
24
|
+
error: "bg-rose-50 text-rose-600 border-rose-200 dark:bg-rose-500/10 dark:text-rose-400 dark:border-rose-500/20",
|
|
25
|
+
warning: "bg-amber-50 text-amber-600 border-amber-200 dark:bg-amber-500/10 dark:text-amber-400 dark:border-amber-500/20",
|
|
26
|
+
info: "bg-sky-50 text-sky-600 border-sky-200 dark:bg-sky-500/10 dark:text-sky-400 dark:border-sky-500/20",
|
|
27
|
+
outline: "bg-transparent text-slate-600 border-slate-200 dark:text-slate-400 dark:border-slate-700"
|
|
28
|
+
}, s = {
|
|
29
|
+
primary: "bg-[#4082E6] text-white border-transparent",
|
|
30
|
+
secondary: "bg-slate-500 text-white border-transparent",
|
|
31
|
+
success: "bg-emerald-500 text-white border-transparent",
|
|
32
|
+
error: "bg-rose-500 text-white border-transparent",
|
|
33
|
+
warning: "bg-amber-500 text-white border-transparent",
|
|
34
|
+
info: "bg-sky-500 text-white border-transparent",
|
|
35
|
+
outline: "bg-transparent text-slate-600 border-slate-200"
|
|
36
|
+
}, c = {
|
|
37
|
+
sm: "text-[12px] px-2 py-0.5 tracking-wide font-medium",
|
|
38
|
+
md: "text-[14px] px-2.5 py-0.5 tracking-wide font-medium",
|
|
39
|
+
lg: "text-[16px] px-3 py-1 tracking-wide font-medium"
|
|
40
|
+
}, u = {
|
|
41
|
+
sm: "text-[12px] h-4 min-w-[16px] px-1 font-bold",
|
|
42
|
+
md: "text-[12px] h-5 min-w-[20px] px-1.5 font-bold",
|
|
43
|
+
lg: "text-[14px] h-6 min-w-[24px] px-2 font-bold"
|
|
44
|
+
}, d = {
|
|
45
|
+
sm: "h-4 w-4",
|
|
46
|
+
md: "h-5 w-5",
|
|
47
|
+
lg: "h-6 w-6"
|
|
48
|
+
}, f = {
|
|
49
|
+
sm: "h-5 w-5",
|
|
50
|
+
md: "h-6 w-6",
|
|
51
|
+
lg: "h-7 w-7"
|
|
52
|
+
}, m = {
|
|
53
|
+
sm: "h-2 w-2",
|
|
54
|
+
md: "h-3 w-3",
|
|
55
|
+
lg: "h-4 w-4"
|
|
56
|
+
}, h = {
|
|
57
|
+
sm: "rounded-sm",
|
|
58
|
+
md: "rounded-md",
|
|
59
|
+
lg: "rounded-lg",
|
|
60
|
+
full: "rounded-full"
|
|
61
|
+
}, _ = t(() => {
|
|
62
|
+
let e = "inline-flex items-center justify-center transition-all duration-200 select-none whitespace-nowrap box-border", t = a.value === "soft" ? o[n.variant] : s[n.variant];
|
|
63
|
+
return n.type === "notification" ? [
|
|
64
|
+
e,
|
|
65
|
+
"rounded-full border",
|
|
66
|
+
t,
|
|
67
|
+
n.iconOnly ? d[n.size] : u[n.size],
|
|
68
|
+
n.class
|
|
69
|
+
].filter(Boolean).join(" ") : n.type === "hint" ? [
|
|
70
|
+
e,
|
|
71
|
+
"rounded-full border",
|
|
72
|
+
t,
|
|
73
|
+
m[n.size],
|
|
74
|
+
n.class
|
|
75
|
+
].filter(Boolean).join(" ") : [
|
|
76
|
+
e,
|
|
77
|
+
"border",
|
|
78
|
+
t,
|
|
79
|
+
n.iconOnly ? f[n.size] : c[n.size],
|
|
80
|
+
h[n.rounded],
|
|
81
|
+
n.class
|
|
82
|
+
].filter(Boolean).join(" ");
|
|
83
|
+
});
|
|
84
|
+
return (t, n) => (p(), i("span", { class: l(_.value) }, [e.type === "hint" ? r("", !0) : g(t.$slots, "default", { key: 0 })], 2));
|
|
85
|
+
}
|
|
86
|
+
}), T = ["disabled"], E = /* @__PURE__ */ c({
|
|
87
|
+
__name: "Button",
|
|
88
|
+
props: {
|
|
89
|
+
variant: { default: "primary" },
|
|
90
|
+
size: { default: "md" },
|
|
91
|
+
disabled: {
|
|
92
|
+
type: Boolean,
|
|
93
|
+
default: !1
|
|
94
|
+
},
|
|
95
|
+
loading: {
|
|
96
|
+
type: Boolean,
|
|
97
|
+
default: !1
|
|
98
|
+
},
|
|
99
|
+
icon: {
|
|
100
|
+
type: Boolean,
|
|
101
|
+
default: !1
|
|
102
|
+
},
|
|
103
|
+
label: { default: "" },
|
|
104
|
+
iconLeft: {},
|
|
105
|
+
iconRight: {},
|
|
106
|
+
class: { default: "" }
|
|
107
|
+
},
|
|
108
|
+
emits: ["click"],
|
|
109
|
+
setup(a, { emit: s }) {
|
|
110
|
+
let c = a, u = {
|
|
111
|
+
primary: "bg-[#4082E6] text-white hover:bg-[#2d6ed4] focus-visible:ring-[#4082E6]",
|
|
112
|
+
outline: "border border-slate-200 bg-transparent text-slate-600 hover:bg-slate-50 hover:text-slate-900 focus-visible:ring-slate-400 dark:border-slate-700 dark:text-slate-300 dark:hover:bg-slate-800 dark:hover:text-slate-100",
|
|
113
|
+
ghost: "bg-transparent text-slate-600 hover:bg-slate-100 hover:text-slate-900 focus-visible:ring-slate-400 dark:text-slate-300 dark:hover:bg-slate-800 dark:hover:text-slate-100",
|
|
114
|
+
danger: "bg-rose-500 text-white hover:bg-rose-600 focus-visible:ring-rose-500"
|
|
115
|
+
}, d = {
|
|
116
|
+
sm: "h-9 px-4 text-sm gap-1.5 [&_svg]:w-4 [&_svg]:h-4",
|
|
117
|
+
md: "h-11 px-6 text-base gap-2 [&_svg]:w-5 [&_svg]:h-5",
|
|
118
|
+
lg: "h-14 px-10 text-2xl gap-2.5 [&_svg]:w-6 [&_svg]:h-6"
|
|
119
|
+
}, f = {
|
|
120
|
+
sm: "h-9 w-9 text-lg [&_svg]:w-6 [&_svg]:h-6",
|
|
121
|
+
md: "h-11 w-11 text-xl [&_svg]:w-8 [&_svg]:h-8",
|
|
122
|
+
lg: "h-14 w-14 text-2xl [&_svg]:w-10 [&_svg]:h-10"
|
|
123
|
+
}, m = s, h = (e) => {
|
|
124
|
+
!c.disabled && !c.loading && m("click", e);
|
|
125
|
+
}, b = t(() => [
|
|
126
|
+
"inline-flex items-center justify-center whitespace-nowrap rounded-2xl transition-colors duration-200",
|
|
127
|
+
c.icon ? "font-medium" : "font-bold",
|
|
128
|
+
"focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-offset-2",
|
|
129
|
+
"disabled:pointer-events-none disabled:opacity-50",
|
|
130
|
+
u[c.variant],
|
|
131
|
+
c.icon ? f[c.size] : d[c.size],
|
|
132
|
+
c.class
|
|
133
|
+
].filter(Boolean).join(" "));
|
|
134
|
+
return (t, s) => (p(), i("button", {
|
|
135
|
+
class: l(b.value),
|
|
136
|
+
disabled: a.disabled || a.loading,
|
|
137
|
+
onClick: h
|
|
138
|
+
}, [
|
|
139
|
+
a.loading ? (p(), n(y(C), {
|
|
140
|
+
key: 0,
|
|
141
|
+
class: "animate-spin shrink-0"
|
|
142
|
+
})) : a.iconLeft ? (p(), n(_(a.iconLeft), { key: 1 })) : r("", !0),
|
|
143
|
+
a.label ? (p(), i(e, { key: 2 }, [o(v(a.label), 1)], 64)) : r("", !0),
|
|
144
|
+
g(t.$slots, "default"),
|
|
145
|
+
a.iconRight && !a.loading ? (p(), n(_(a.iconRight), { key: 3 })) : r("", !0)
|
|
146
|
+
], 10, T));
|
|
147
|
+
}
|
|
148
|
+
}), D = { class: "p-6" }, O = {
|
|
149
|
+
key: 0,
|
|
150
|
+
class: "text-base font-semibold text-[#131313] dark:text-white"
|
|
151
|
+
}, k = {
|
|
152
|
+
key: 1,
|
|
153
|
+
class: "mt-1 text-sm text-slate-500 dark:text-slate-400"
|
|
154
|
+
}, A = {
|
|
155
|
+
key: 0,
|
|
156
|
+
class: "flex items-center justify-end gap-3 border-t border-slate-100 dark:border-slate-800 px-6 py-4 bg-slate-50/50 dark:bg-slate-950/50"
|
|
157
|
+
}, j = /* @__PURE__ */ c({
|
|
158
|
+
__name: "Card",
|
|
159
|
+
props: {
|
|
160
|
+
title: { default: "" },
|
|
161
|
+
description: { default: "" },
|
|
162
|
+
class: { default: "" }
|
|
163
|
+
},
|
|
164
|
+
setup(e) {
|
|
165
|
+
let t = e;
|
|
166
|
+
return (n, o) => (p(), i("div", { class: l(["rounded-3xl border border-slate-200 dark:border-slate-800 bg-white dark:bg-slate-900 overflow-hidden", t.class]) }, [a("div", D, [
|
|
167
|
+
e.title ? (p(), i("h3", O, v(e.title), 1)) : r("", !0),
|
|
168
|
+
e.description ? (p(), i("p", k, v(e.description), 1)) : r("", !0),
|
|
169
|
+
a("div", { class: l([e.title || e.description ? "mt-4" : ""]) }, [g(n.$slots, "default")], 2)
|
|
170
|
+
]), n.$slots.footer ? (p(), i("div", A, [g(n.$slots, "footer")])) : r("", !0)], 2));
|
|
171
|
+
}
|
|
172
|
+
}), M = ["disabled"], N = { class: "flex items-center gap-2" }, P = {
|
|
173
|
+
key: 0,
|
|
174
|
+
class: "krea-dropdown-divider"
|
|
175
|
+
}, F = ["disabled", "onClick"], I = { class: "flex items-center gap-3" }, L = /*#__PURE__*/ ((e, t) => {
|
|
176
|
+
let n = e.__vccOpts || e;
|
|
177
|
+
for (let [e, r] of t) n[e] = r;
|
|
178
|
+
return n;
|
|
179
|
+
})(/* @__PURE__ */ c({
|
|
180
|
+
__name: "DropdownMenu",
|
|
181
|
+
props: {
|
|
182
|
+
triggerText: { default: "Pilih Opsi" },
|
|
183
|
+
align: { default: "left" },
|
|
184
|
+
disabled: {
|
|
185
|
+
type: Boolean,
|
|
186
|
+
default: !1
|
|
187
|
+
},
|
|
188
|
+
items: { default: () => [] },
|
|
189
|
+
modelValue: { default: "" },
|
|
190
|
+
variant: { default: "default" },
|
|
191
|
+
size: { default: "md" }
|
|
192
|
+
},
|
|
193
|
+
emits: ["update:modelValue", "select"],
|
|
194
|
+
setup(o, { emit: c }) {
|
|
195
|
+
let C = o, w = c, T = m(!1), E = m(null), D = t(() => C.items.find((e) => e.id === C.modelValue)), O = t(() => D.value?.label ?? C.triggerText), k = t(() => D.value?.icon), A = t(() => [
|
|
196
|
+
"inline-flex items-center justify-between whitespace-nowrap",
|
|
197
|
+
"font-semibold transition-all duration-150",
|
|
198
|
+
"focus:outline-none focus:ring-2 focus:ring-[#4082E6]",
|
|
199
|
+
"disabled:pointer-events-none disabled:opacity-50 cursor-pointer",
|
|
200
|
+
{
|
|
201
|
+
default: "border border-slate-200 dark:border-slate-800 bg-white dark:bg-slate-900 text-slate-700 dark:text-slate-200 hover:bg-slate-50 dark:hover:bg-slate-800",
|
|
202
|
+
ghost: "bg-transparent text-slate-700 dark:text-slate-200 hover:bg-slate-100 dark:hover:bg-slate-800",
|
|
203
|
+
outline: "border border-slate-300 dark:border-slate-700 bg-transparent text-slate-700 dark:text-slate-200 hover:border-[#4082E6] hover:text-[#4082E6]"
|
|
204
|
+
}[C.variant],
|
|
205
|
+
{
|
|
206
|
+
sm: "h-8 px-3 text-xs rounded-xl gap-2",
|
|
207
|
+
md: "h-10 px-4 text-sm rounded-2xl gap-2.5",
|
|
208
|
+
lg: "h-12 px-5 text-base rounded-2xl gap-3"
|
|
209
|
+
}[C.size]
|
|
210
|
+
].join(" ")), j = t(() => ({
|
|
211
|
+
sm: "w-3 h-3",
|
|
212
|
+
md: "w-4 h-4",
|
|
213
|
+
lg: "w-4 h-4"
|
|
214
|
+
})[C.size]), L = t(() => C.align === "right" ? "right-0" : "left-0"), R = () => {
|
|
215
|
+
C.disabled || (T.value = !T.value);
|
|
216
|
+
}, z = (e) => {
|
|
217
|
+
e.disabled || (w("update:modelValue", e.id), w("select", e), T.value = !1);
|
|
218
|
+
}, B = (e) => {
|
|
219
|
+
T.value && (E.value?.contains(e.target) || (T.value = !1));
|
|
220
|
+
};
|
|
221
|
+
return d(() => {
|
|
222
|
+
document.addEventListener("mousedown", B);
|
|
223
|
+
}), f(() => {
|
|
224
|
+
document.removeEventListener("mousedown", B);
|
|
225
|
+
}), (t, c) => (p(), i("div", {
|
|
226
|
+
ref_key: "wrapperEl",
|
|
227
|
+
ref: E,
|
|
228
|
+
class: "krea-dropdown-wrapper"
|
|
229
|
+
}, [a("button", {
|
|
230
|
+
type: "button",
|
|
231
|
+
onClick: R,
|
|
232
|
+
disabled: o.disabled,
|
|
233
|
+
class: l(A.value)
|
|
234
|
+
}, [a("div", N, [k.value ? (p(), n(_(k.value), {
|
|
235
|
+
key: 0,
|
|
236
|
+
class: "w-4 h-4 shrink-0 text-slate-500 dark:text-slate-400"
|
|
237
|
+
})) : r("", !0), a("span", null, v(O.value), 1)]), s(y(S), {
|
|
238
|
+
class: l([j.value, "text-slate-400 shrink-0 transition-transform duration-200"]),
|
|
239
|
+
style: u({ transform: T.value ? "rotate(180deg)" : "" })
|
|
240
|
+
}, null, 8, ["class", "style"])], 10, M), x(a("div", { class: l(["krea-dropdown-popover", L.value]) }, [g(t.$slots, "default", {}, () => [(p(!0), i(e, null, h(o.items, (t, s) => (p(), i(e, { key: t.id ?? s }, [t.divider ? (p(), i("div", P)) : r("", !0), a("button", {
|
|
241
|
+
type: "button",
|
|
242
|
+
disabled: t.disabled,
|
|
243
|
+
onClick: (e) => z(t),
|
|
244
|
+
class: l(["krea-dropdown-item", t.variant === "danger" ? "krea-dropdown-item--danger" : o.modelValue === t.id ? "krea-dropdown-item--active" : ""])
|
|
245
|
+
}, [a("div", I, [t.icon ? (p(), n(_(t.icon), {
|
|
246
|
+
key: 0,
|
|
247
|
+
class: "w-4 h-4 shrink-0 text-slate-400"
|
|
248
|
+
})) : r("", !0), a("span", null, v(t.label), 1)])], 10, F)], 64))), 128))], !0)], 2), [[b, T.value]])], 512));
|
|
249
|
+
}
|
|
250
|
+
}), [["__scopeId", "data-v-948716a5"]]), R = ["disabled", "onClick"], z = /* @__PURE__ */ c({
|
|
251
|
+
__name: "Tabs",
|
|
252
|
+
props: {
|
|
253
|
+
modelValue: { default: "" },
|
|
254
|
+
items: {},
|
|
255
|
+
variant: { default: "pills" },
|
|
256
|
+
size: { default: "md" },
|
|
257
|
+
class: { default: "" }
|
|
258
|
+
},
|
|
259
|
+
emits: ["update:modelValue", "change"],
|
|
260
|
+
setup(a, { emit: s }) {
|
|
261
|
+
let c = a, u = s, d = t({
|
|
262
|
+
get: () => c.modelValue || c.items[0]?.id || "",
|
|
263
|
+
set: (e) => {
|
|
264
|
+
u("update:modelValue", e), u("change", e);
|
|
265
|
+
}
|
|
266
|
+
}), f = t(() => c.variant === "pills" ? "inline-flex items-center p-1.5 gap-1 bg-slate-100 dark:bg-slate-900 border border-slate-200/60 dark:border-slate-800 rounded-2xl" : c.variant === "separated" ? "inline-flex items-center gap-2 flex-wrap" : "flex items-center gap-6 border-b border-slate-200 dark:border-slate-800 w-full"), m = {
|
|
267
|
+
sm: "px-3 py-1.5 text-sm gap-1.5 [&_svg]:w-4 [&_svg]:h-4",
|
|
268
|
+
md: "px-5 py-2 text-sm gap-2 [&_svg]:w-4 [&_svg]:h-4",
|
|
269
|
+
lg: "px-7 py-3 text-base gap-2.5 [&_svg]:w-5 [&_svg]:h-5"
|
|
270
|
+
};
|
|
271
|
+
function g(e) {
|
|
272
|
+
let t = d.value === e.id;
|
|
273
|
+
return c.variant === "pills" || c.variant === "separated" ? [
|
|
274
|
+
"inline-flex items-center rounded-xl font-medium transition-all duration-200 focus:outline-none disabled:pointer-events-none disabled:opacity-50",
|
|
275
|
+
m[c.size],
|
|
276
|
+
t ? "bg-[#4082E6] text-white font-semibold" : "text-slate-600 dark:text-slate-400 hover:text-slate-900 dark:hover:text-white hover:bg-slate-200/50 dark:hover:bg-slate-800"
|
|
277
|
+
].join(" ") : [
|
|
278
|
+
"inline-flex items-center font-medium border-b-2 -mb-px pb-3 transition-colors focus:outline-none disabled:pointer-events-none disabled:opacity-50",
|
|
279
|
+
m[c.size],
|
|
280
|
+
t ? "border-[#4082E6] text-[#4082E6] font-semibold" : "border-transparent text-slate-500 hover:text-slate-800 dark:hover:text-slate-200"
|
|
281
|
+
].join(" ");
|
|
282
|
+
}
|
|
283
|
+
return (t, s) => (p(), i("div", { class: l([f.value, c.class]) }, [(p(!0), i(e, null, h(a.items, (e) => (p(), i("button", {
|
|
284
|
+
key: e.id,
|
|
285
|
+
type: "button",
|
|
286
|
+
disabled: e.disabled,
|
|
287
|
+
class: l(g(e)),
|
|
288
|
+
onClick: (t) => d.value = e.id
|
|
289
|
+
}, [e.icon ? (p(), n(_(e.icon), { key: 0 })) : r("", !0), o(" " + v(e.label), 1)], 10, R))), 128))], 2));
|
|
290
|
+
}
|
|
291
|
+
});
|
|
292
|
+
//#endregion
|
|
293
|
+
//#region node_modules/tailwindcss/dist/plugin.mjs
|
|
294
|
+
function B(e, t) {
|
|
295
|
+
return {
|
|
296
|
+
handler: e,
|
|
297
|
+
config: t
|
|
298
|
+
};
|
|
299
|
+
}
|
|
300
|
+
B.withOptions = function(e, t = () => ({})) {
|
|
301
|
+
function n(n) {
|
|
302
|
+
return {
|
|
303
|
+
handler: e(n),
|
|
304
|
+
config: t(n)
|
|
305
|
+
};
|
|
306
|
+
}
|
|
307
|
+
return n.__isOptionsFunction = !0, n;
|
|
308
|
+
};
|
|
309
|
+
//#endregion
|
|
310
|
+
//#region src/plugin.ts
|
|
311
|
+
var V = B(function({ addBase: e, addComponents: t, theme: n }) {
|
|
312
|
+
e({
|
|
313
|
+
":root": {
|
|
314
|
+
"--kv-color-primary": "#4082E6",
|
|
315
|
+
"--kv-color-primary-hover": "#2d6ed4",
|
|
316
|
+
"--kv-color-primary-light": "#dbeafe",
|
|
317
|
+
"--kv-color-secondary": "#FEF747",
|
|
318
|
+
"--kv-color-soft-black": "#121212",
|
|
319
|
+
"--kv-color-soft-white": "#fafafa",
|
|
320
|
+
"--kv-color-surface": "#ffffff",
|
|
321
|
+
"--kv-color-border": "#e2e8f0",
|
|
322
|
+
"--kv-color-muted": "#64748b",
|
|
323
|
+
"--kv-color-muted-light": "#f1f5f9",
|
|
324
|
+
"--kv-color-danger": "#f43f5e",
|
|
325
|
+
"--kv-radius-sm": "0.75rem",
|
|
326
|
+
"--kv-radius-md": "1rem",
|
|
327
|
+
"--kv-radius-default": "1.5rem",
|
|
328
|
+
"--kv-shadow-none": "none"
|
|
329
|
+
},
|
|
330
|
+
"[data-theme=\"dark\"]": {
|
|
331
|
+
"--kv-color-soft-black": "#fafafa",
|
|
332
|
+
"--kv-color-soft-white": "#09090b",
|
|
333
|
+
"--kv-color-surface": "#0f0f12",
|
|
334
|
+
"--kv-color-border": "#27272a",
|
|
335
|
+
"--kv-color-muted": "#a1a1aa",
|
|
336
|
+
"--kv-color-muted-light": "#18181b"
|
|
337
|
+
}
|
|
338
|
+
});
|
|
339
|
+
}, { theme: { extend: {
|
|
340
|
+
colors: { kv: {
|
|
341
|
+
primary: {
|
|
342
|
+
DEFAULT: "var(--kv-color-primary)",
|
|
343
|
+
hover: "var(--kv-color-primary-hover)",
|
|
344
|
+
light: "var(--kv-color-primary-light)"
|
|
345
|
+
},
|
|
346
|
+
secondary: "var(--kv-color-secondary)",
|
|
347
|
+
surface: "var(--kv-color-surface)",
|
|
348
|
+
border: "var(--kv-color-border)",
|
|
349
|
+
muted: "var(--kv-color-muted)"
|
|
350
|
+
} },
|
|
351
|
+
borderRadius: {
|
|
352
|
+
"kv-sm": "var(--kv-radius-sm)",
|
|
353
|
+
"kv-md": "var(--kv-radius-md)",
|
|
354
|
+
"kv-default": "var(--kv-radius-default)"
|
|
355
|
+
}
|
|
356
|
+
} } });
|
|
357
|
+
//#endregion
|
|
358
|
+
export { w as Badge, E as Button, j as Card, L as DropdownMenu, z as Tabs, V as kreauiPlugin };
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
(function(e,t){typeof exports==`object`&&typeof module<`u`?t(exports,require("vue"),require("lucide-vue-next")):typeof define==`function`&&define.amd?define([`exports`,`vue`,`lucide-vue-next`],t):(e=typeof globalThis<`u`?globalThis:e||self,t(e.KreaUI={},e.Vue,e.LucideVueNext))})(this,function(e,t,n){Object.defineProperty(e,Symbol.toStringTag,{value:`Module`});var r=(0,t.defineComponent)({__name:`Badge`,props:{type:{default:`label`},variant:{default:`primary`},appearance:{},size:{default:`md`},rounded:{default:`lg`},iconOnly:{type:Boolean,default:!1},class:{default:``}},setup(e){let n=e,r=(0,t.computed)(()=>n.appearance?n.appearance:n.type===`label`?`soft`:`solid`),i={primary:`bg-blue-50 text-primary border-blue-200/70 dark:bg-blue-950/40 dark:text-blue-400 dark:border-blue-800/50`,secondary:`bg-slate-100 text-slate-600 border-slate-200 dark:bg-slate-800/80 dark:text-slate-300 dark:border-slate-700`,success:`bg-emerald-50 text-emerald-600 border-emerald-200 dark:bg-emerald-500/10 dark:text-emerald-400 dark:border-emerald-500/20`,error:`bg-rose-50 text-rose-600 border-rose-200 dark:bg-rose-500/10 dark:text-rose-400 dark:border-rose-500/20`,warning:`bg-amber-50 text-amber-600 border-amber-200 dark:bg-amber-500/10 dark:text-amber-400 dark:border-amber-500/20`,info:`bg-sky-50 text-sky-600 border-sky-200 dark:bg-sky-500/10 dark:text-sky-400 dark:border-sky-500/20`,outline:`bg-transparent text-slate-600 border-slate-200 dark:text-slate-400 dark:border-slate-700`},a={primary:`bg-[#4082E6] text-white border-transparent`,secondary:`bg-slate-500 text-white border-transparent`,success:`bg-emerald-500 text-white border-transparent`,error:`bg-rose-500 text-white border-transparent`,warning:`bg-amber-500 text-white border-transparent`,info:`bg-sky-500 text-white border-transparent`,outline:`bg-transparent text-slate-600 border-slate-200`},o={sm:`text-[12px] px-2 py-0.5 tracking-wide font-medium`,md:`text-[14px] px-2.5 py-0.5 tracking-wide font-medium`,lg:`text-[16px] px-3 py-1 tracking-wide font-medium`},s={sm:`text-[12px] h-4 min-w-[16px] px-1 font-bold`,md:`text-[12px] h-5 min-w-[20px] px-1.5 font-bold`,lg:`text-[14px] h-6 min-w-[24px] px-2 font-bold`},c={sm:`h-4 w-4`,md:`h-5 w-5`,lg:`h-6 w-6`},l={sm:`h-5 w-5`,md:`h-6 w-6`,lg:`h-7 w-7`},u={sm:`h-2 w-2`,md:`h-3 w-3`,lg:`h-4 w-4`},d={sm:`rounded-sm`,md:`rounded-md`,lg:`rounded-lg`,full:`rounded-full`},f=(0,t.computed)(()=>{let e=`inline-flex items-center justify-center transition-all duration-200 select-none whitespace-nowrap box-border`,t=r.value===`soft`?i[n.variant]:a[n.variant];return n.type===`notification`?[e,`rounded-full border`,t,n.iconOnly?c[n.size]:s[n.size],n.class].filter(Boolean).join(` `):n.type===`hint`?[e,`rounded-full border`,t,u[n.size],n.class].filter(Boolean).join(` `):[e,`border`,t,n.iconOnly?l[n.size]:o[n.size],d[n.rounded],n.class].filter(Boolean).join(` `)});return(n,r)=>((0,t.openBlock)(),(0,t.createElementBlock)(`span`,{class:(0,t.normalizeClass)(f.value)},[e.type===`hint`?(0,t.createCommentVNode)(``,!0):(0,t.renderSlot)(n.$slots,`default`,{key:0})],2))}}),i=[`disabled`],a=(0,t.defineComponent)({__name:`Button`,props:{variant:{default:`primary`},size:{default:`md`},disabled:{type:Boolean,default:!1},loading:{type:Boolean,default:!1},icon:{type:Boolean,default:!1},label:{default:``},iconLeft:{},iconRight:{},class:{default:``}},emits:[`click`],setup(e,{emit:r}){let a=e,o={primary:`bg-[#4082E6] text-white hover:bg-[#2d6ed4] focus-visible:ring-[#4082E6]`,outline:`border border-slate-200 bg-transparent text-slate-600 hover:bg-slate-50 hover:text-slate-900 focus-visible:ring-slate-400 dark:border-slate-700 dark:text-slate-300 dark:hover:bg-slate-800 dark:hover:text-slate-100`,ghost:`bg-transparent text-slate-600 hover:bg-slate-100 hover:text-slate-900 focus-visible:ring-slate-400 dark:text-slate-300 dark:hover:bg-slate-800 dark:hover:text-slate-100`,danger:`bg-rose-500 text-white hover:bg-rose-600 focus-visible:ring-rose-500`},s={sm:`h-9 px-4 text-sm gap-1.5 [&_svg]:w-4 [&_svg]:h-4`,md:`h-11 px-6 text-base gap-2 [&_svg]:w-5 [&_svg]:h-5`,lg:`h-14 px-10 text-2xl gap-2.5 [&_svg]:w-6 [&_svg]:h-6`},c={sm:`h-9 w-9 text-lg [&_svg]:w-6 [&_svg]:h-6`,md:`h-11 w-11 text-xl [&_svg]:w-8 [&_svg]:h-8`,lg:`h-14 w-14 text-2xl [&_svg]:w-10 [&_svg]:h-10`},l=r,u=e=>{!a.disabled&&!a.loading&&l(`click`,e)},d=(0,t.computed)(()=>[`inline-flex items-center justify-center whitespace-nowrap rounded-2xl transition-colors duration-200`,a.icon?`font-medium`:`font-bold`,`focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-offset-2`,`disabled:pointer-events-none disabled:opacity-50`,o[a.variant],a.icon?c[a.size]:s[a.size],a.class].filter(Boolean).join(` `));return(r,a)=>((0,t.openBlock)(),(0,t.createElementBlock)(`button`,{class:(0,t.normalizeClass)(d.value),disabled:e.disabled||e.loading,onClick:u},[e.loading?((0,t.openBlock)(),(0,t.createBlock)((0,t.unref)(n.Loader2),{key:0,class:`animate-spin shrink-0`})):e.iconLeft?((0,t.openBlock)(),(0,t.createBlock)((0,t.resolveDynamicComponent)(e.iconLeft),{key:1})):(0,t.createCommentVNode)(``,!0),e.label?((0,t.openBlock)(),(0,t.createElementBlock)(t.Fragment,{key:2},[(0,t.createTextVNode)((0,t.toDisplayString)(e.label),1)],64)):(0,t.createCommentVNode)(``,!0),(0,t.renderSlot)(r.$slots,`default`),e.iconRight&&!e.loading?((0,t.openBlock)(),(0,t.createBlock)((0,t.resolveDynamicComponent)(e.iconRight),{key:3})):(0,t.createCommentVNode)(``,!0)],10,i))}}),o={class:`p-6`},s={key:0,class:`text-base font-semibold text-[#131313] dark:text-white`},c={key:1,class:`mt-1 text-sm text-slate-500 dark:text-slate-400`},l={key:0,class:`flex items-center justify-end gap-3 border-t border-slate-100 dark:border-slate-800 px-6 py-4 bg-slate-50/50 dark:bg-slate-950/50`},u=(0,t.defineComponent)({__name:`Card`,props:{title:{default:``},description:{default:``},class:{default:``}},setup(e){let n=e;return(r,i)=>((0,t.openBlock)(),(0,t.createElementBlock)(`div`,{class:(0,t.normalizeClass)([`rounded-3xl border border-slate-200 dark:border-slate-800 bg-white dark:bg-slate-900 overflow-hidden`,n.class])},[(0,t.createElementVNode)(`div`,o,[e.title?((0,t.openBlock)(),(0,t.createElementBlock)(`h3`,s,(0,t.toDisplayString)(e.title),1)):(0,t.createCommentVNode)(``,!0),e.description?((0,t.openBlock)(),(0,t.createElementBlock)(`p`,c,(0,t.toDisplayString)(e.description),1)):(0,t.createCommentVNode)(``,!0),(0,t.createElementVNode)(`div`,{class:(0,t.normalizeClass)([e.title||e.description?`mt-4`:``])},[(0,t.renderSlot)(r.$slots,`default`)],2)]),r.$slots.footer?((0,t.openBlock)(),(0,t.createElementBlock)(`div`,l,[(0,t.renderSlot)(r.$slots,`footer`)])):(0,t.createCommentVNode)(``,!0)],2))}}),d=[`disabled`],f={class:`flex items-center gap-2`},p={key:0,class:`krea-dropdown-divider`},m=[`disabled`,`onClick`],h={class:`flex items-center gap-3`},g=((e,t)=>{let n=e.__vccOpts||e;for(let[e,r]of t)n[e]=r;return n})((0,t.defineComponent)({__name:`DropdownMenu`,props:{triggerText:{default:`Pilih Opsi`},align:{default:`left`},disabled:{type:Boolean,default:!1},items:{default:()=>[]},modelValue:{default:``},variant:{default:`default`},size:{default:`md`}},emits:[`update:modelValue`,`select`],setup(e,{emit:r}){let i=e,a=r,o=(0,t.ref)(!1),s=(0,t.ref)(null),c=(0,t.computed)(()=>i.items.find(e=>e.id===i.modelValue)),l=(0,t.computed)(()=>c.value?.label??i.triggerText),u=(0,t.computed)(()=>c.value?.icon),g=(0,t.computed)(()=>[`inline-flex items-center justify-between whitespace-nowrap`,`font-semibold transition-all duration-150`,`focus:outline-none focus:ring-2 focus:ring-[#4082E6]`,`disabled:pointer-events-none disabled:opacity-50 cursor-pointer`,{default:`border border-slate-200 dark:border-slate-800 bg-white dark:bg-slate-900 text-slate-700 dark:text-slate-200 hover:bg-slate-50 dark:hover:bg-slate-800`,ghost:`bg-transparent text-slate-700 dark:text-slate-200 hover:bg-slate-100 dark:hover:bg-slate-800`,outline:`border border-slate-300 dark:border-slate-700 bg-transparent text-slate-700 dark:text-slate-200 hover:border-[#4082E6] hover:text-[#4082E6]`}[i.variant],{sm:`h-8 px-3 text-xs rounded-xl gap-2`,md:`h-10 px-4 text-sm rounded-2xl gap-2.5`,lg:`h-12 px-5 text-base rounded-2xl gap-3`}[i.size]].join(` `)),_=(0,t.computed)(()=>({sm:`w-3 h-3`,md:`w-4 h-4`,lg:`w-4 h-4`})[i.size]),v=(0,t.computed)(()=>i.align===`right`?`right-0`:`left-0`),y=()=>{i.disabled||(o.value=!o.value)},b=e=>{e.disabled||(a(`update:modelValue`,e.id),a(`select`,e),o.value=!1)},x=e=>{o.value&&(s.value?.contains(e.target)||(o.value=!1))};return(0,t.onMounted)(()=>{document.addEventListener(`mousedown`,x)}),(0,t.onUnmounted)(()=>{document.removeEventListener(`mousedown`,x)}),(r,i)=>((0,t.openBlock)(),(0,t.createElementBlock)(`div`,{ref_key:`wrapperEl`,ref:s,class:`krea-dropdown-wrapper`},[(0,t.createElementVNode)(`button`,{type:`button`,onClick:y,disabled:e.disabled,class:(0,t.normalizeClass)(g.value)},[(0,t.createElementVNode)(`div`,f,[u.value?((0,t.openBlock)(),(0,t.createBlock)((0,t.resolveDynamicComponent)(u.value),{key:0,class:`w-4 h-4 shrink-0 text-slate-500 dark:text-slate-400`})):(0,t.createCommentVNode)(``,!0),(0,t.createElementVNode)(`span`,null,(0,t.toDisplayString)(l.value),1)]),(0,t.createVNode)((0,t.unref)(n.ChevronDown),{class:(0,t.normalizeClass)([_.value,`text-slate-400 shrink-0 transition-transform duration-200`]),style:(0,t.normalizeStyle)({transform:o.value?`rotate(180deg)`:``})},null,8,[`class`,`style`])],10,d),(0,t.withDirectives)((0,t.createElementVNode)(`div`,{class:(0,t.normalizeClass)([`krea-dropdown-popover`,v.value])},[(0,t.renderSlot)(r.$slots,`default`,{},()=>[((0,t.openBlock)(!0),(0,t.createElementBlock)(t.Fragment,null,(0,t.renderList)(e.items,(n,r)=>((0,t.openBlock)(),(0,t.createElementBlock)(t.Fragment,{key:n.id??r},[n.divider?((0,t.openBlock)(),(0,t.createElementBlock)(`div`,p)):(0,t.createCommentVNode)(``,!0),(0,t.createElementVNode)(`button`,{type:`button`,disabled:n.disabled,onClick:e=>b(n),class:(0,t.normalizeClass)([`krea-dropdown-item`,n.variant===`danger`?`krea-dropdown-item--danger`:e.modelValue===n.id?`krea-dropdown-item--active`:``])},[(0,t.createElementVNode)(`div`,h,[n.icon?((0,t.openBlock)(),(0,t.createBlock)((0,t.resolveDynamicComponent)(n.icon),{key:0,class:`w-4 h-4 shrink-0 text-slate-400`})):(0,t.createCommentVNode)(``,!0),(0,t.createElementVNode)(`span`,null,(0,t.toDisplayString)(n.label),1)])],10,m)],64))),128))],!0)],2),[[t.vShow,o.value]])],512))}}),[[`__scopeId`,`data-v-948716a5`]]),_=[`disabled`,`onClick`],v=(0,t.defineComponent)({__name:`Tabs`,props:{modelValue:{default:``},items:{},variant:{default:`pills`},size:{default:`md`},class:{default:``}},emits:[`update:modelValue`,`change`],setup(e,{emit:n}){let r=e,i=n,a=(0,t.computed)({get:()=>r.modelValue||r.items[0]?.id||``,set:e=>{i(`update:modelValue`,e),i(`change`,e)}}),o=(0,t.computed)(()=>r.variant===`pills`?`inline-flex items-center p-1.5 gap-1 bg-slate-100 dark:bg-slate-900 border border-slate-200/60 dark:border-slate-800 rounded-2xl`:r.variant===`separated`?`inline-flex items-center gap-2 flex-wrap`:`flex items-center gap-6 border-b border-slate-200 dark:border-slate-800 w-full`),s={sm:`px-3 py-1.5 text-sm gap-1.5 [&_svg]:w-4 [&_svg]:h-4`,md:`px-5 py-2 text-sm gap-2 [&_svg]:w-4 [&_svg]:h-4`,lg:`px-7 py-3 text-base gap-2.5 [&_svg]:w-5 [&_svg]:h-5`};function c(e){let t=a.value===e.id;return r.variant===`pills`||r.variant===`separated`?[`inline-flex items-center rounded-xl font-medium transition-all duration-200 focus:outline-none disabled:pointer-events-none disabled:opacity-50`,s[r.size],t?`bg-[#4082E6] text-white font-semibold`:`text-slate-600 dark:text-slate-400 hover:text-slate-900 dark:hover:text-white hover:bg-slate-200/50 dark:hover:bg-slate-800`].join(` `):[`inline-flex items-center font-medium border-b-2 -mb-px pb-3 transition-colors focus:outline-none disabled:pointer-events-none disabled:opacity-50`,s[r.size],t?`border-[#4082E6] text-[#4082E6] font-semibold`:`border-transparent text-slate-500 hover:text-slate-800 dark:hover:text-slate-200`].join(` `)}return(n,i)=>((0,t.openBlock)(),(0,t.createElementBlock)(`div`,{class:(0,t.normalizeClass)([o.value,r.class])},[((0,t.openBlock)(!0),(0,t.createElementBlock)(t.Fragment,null,(0,t.renderList)(e.items,e=>((0,t.openBlock)(),(0,t.createElementBlock)(`button`,{key:e.id,type:`button`,disabled:e.disabled,class:(0,t.normalizeClass)(c(e)),onClick:t=>a.value=e.id},[e.icon?((0,t.openBlock)(),(0,t.createBlock)((0,t.resolveDynamicComponent)(e.icon),{key:0})):(0,t.createCommentVNode)(``,!0),(0,t.createTextVNode)(` `+(0,t.toDisplayString)(e.label),1)],10,_))),128))],2))}});function y(e,t){return{handler:e,config:t}}y.withOptions=function(e,t=()=>({})){function n(n){return{handler:e(n),config:t(n)}}return n.__isOptionsFunction=!0,n};var b=y(function({addBase:e,addComponents:t,theme:n}){e({":root":{"--kv-color-primary":`#4082E6`,"--kv-color-primary-hover":`#2d6ed4`,"--kv-color-primary-light":`#dbeafe`,"--kv-color-secondary":`#FEF747`,"--kv-color-soft-black":`#121212`,"--kv-color-soft-white":`#fafafa`,"--kv-color-surface":`#ffffff`,"--kv-color-border":`#e2e8f0`,"--kv-color-muted":`#64748b`,"--kv-color-muted-light":`#f1f5f9`,"--kv-color-danger":`#f43f5e`,"--kv-radius-sm":`0.75rem`,"--kv-radius-md":`1rem`,"--kv-radius-default":`1.5rem`,"--kv-shadow-none":`none`},'[data-theme="dark"]':{"--kv-color-soft-black":`#fafafa`,"--kv-color-soft-white":`#09090b`,"--kv-color-surface":`#0f0f12`,"--kv-color-border":`#27272a`,"--kv-color-muted":`#a1a1aa`,"--kv-color-muted-light":`#18181b`}})},{theme:{extend:{colors:{kv:{primary:{DEFAULT:`var(--kv-color-primary)`,hover:`var(--kv-color-primary-hover)`,light:`var(--kv-color-primary-light)`},secondary:`var(--kv-color-secondary)`,surface:`var(--kv-color-surface)`,border:`var(--kv-color-border)`,muted:`var(--kv-color-muted)`}},borderRadius:{"kv-sm":`var(--kv-radius-sm)`,"kv-md":`var(--kv-radius-md)`,"kv-default":`var(--kv-radius-default)`}}}});e.Badge=r,e.Button=a,e.Card=u,e.DropdownMenu=g,e.Tabs=v,e.kreauiPlugin=b});
|
package/package.json
ADDED
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "@kreavoks/kreaui",
|
|
3
|
+
"type": "module",
|
|
4
|
+
"version": "0.0.1",
|
|
5
|
+
"main": "./lib/kreaui.umd.js",
|
|
6
|
+
"module": "./lib/kreaui.es.js",
|
|
7
|
+
"exports": {
|
|
8
|
+
".": {
|
|
9
|
+
"import": "./lib/kreaui.es.js",
|
|
10
|
+
"require": "./lib/kreaui.umd.js"
|
|
11
|
+
},
|
|
12
|
+
"./style.css": "./lib/kreaui.css"
|
|
13
|
+
},
|
|
14
|
+
"files": [
|
|
15
|
+
"lib"
|
|
16
|
+
],
|
|
17
|
+
"scripts": {
|
|
18
|
+
"dev": "astro dev",
|
|
19
|
+
"start": "astro dev",
|
|
20
|
+
"build": "astro build",
|
|
21
|
+
"build:lib": "vite build",
|
|
22
|
+
"preview": "astro preview",
|
|
23
|
+
"astro": "astro"
|
|
24
|
+
},
|
|
25
|
+
"dependencies": {
|
|
26
|
+
"@astrojs/react": "^6.0.0",
|
|
27
|
+
"@astrojs/starlight": "^0.41.1",
|
|
28
|
+
"@astrojs/vue": "^7.0.0",
|
|
29
|
+
"@tailwindcss/vite": "^4.3.1",
|
|
30
|
+
"@types/react": "^19.2.17",
|
|
31
|
+
"@types/react-dom": "^19.2.3",
|
|
32
|
+
"astro": "^7.0.2",
|
|
33
|
+
"lucide-astro": "^0.556.0",
|
|
34
|
+
"lucide-vue-next": "^1.0.0",
|
|
35
|
+
"react": "^19.2.7",
|
|
36
|
+
"react-dom": "^19.2.7",
|
|
37
|
+
"sharp": "^0.34.5",
|
|
38
|
+
"tailwindcss": "^4.3.1",
|
|
39
|
+
"vue": "^3.5.39"
|
|
40
|
+
},
|
|
41
|
+
"peerDependencies": {
|
|
42
|
+
"vue": "^3.0.0",
|
|
43
|
+
"lucide-vue-next": "^1.0.0"
|
|
44
|
+
}
|
|
45
|
+
}
|