@nexxtmove/ui 0.1.4 → 0.1.5
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/index.d.ts +5 -1
- package/dist/index.js +82 -80
- package/package.json +1 -1
package/dist/index.d.ts
CHANGED
|
@@ -8,7 +8,11 @@ declare const __VLS_component: DefineComponent<NexxtButtonProps, {}, {}, {}, {},
|
|
|
8
8
|
|
|
9
9
|
declare const __VLS_component_2: DefineComponent<NexxtHeaderProps, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {}, string, PublicProps, Readonly<NexxtHeaderProps> & Readonly<{}>, {}, {}, {}, {}, string, ComponentProvideOptions, false, {}, HTMLDivElement>;
|
|
10
10
|
|
|
11
|
-
declare const __VLS_component_3: DefineComponent<NexxtStepperHeaderProps, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {
|
|
11
|
+
declare const __VLS_component_3: DefineComponent<NexxtStepperHeaderProps, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {
|
|
12
|
+
"update:currentStep": (...args: any[]) => void;
|
|
13
|
+
}, string, PublicProps, Readonly<NexxtStepperHeaderProps> & Readonly<{
|
|
14
|
+
"onUpdate:currentStep"?: ((...args: any[]) => any) | undefined;
|
|
15
|
+
}>, {}, {}, {}, {}, string, ComponentProvideOptions, false, {}, HTMLDivElement>;
|
|
12
16
|
|
|
13
17
|
declare type __VLS_Props = {
|
|
14
18
|
value: number;
|
package/dist/index.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { defineComponent as
|
|
2
|
-
const
|
|
1
|
+
import { defineComponent as y, ref as N, computed as v, watch as j, createBlock as $, openBlock as a, TransitionGroup as C, withCtx as f, createElementBlock as s, Fragment as B, renderList as S, createVNode as m, Transition as T, toDisplayString as b, normalizeClass as r, createCommentVNode as u, renderSlot as p, createElementVNode as o, createTextVNode as A, watchEffect as H, normalizeStyle as M, withKeys as k, withModifiers as P, createSlots as V } from "vue";
|
|
2
|
+
const E = /* @__PURE__ */ y({
|
|
3
3
|
__name: "AnimatedNumber",
|
|
4
4
|
props: {
|
|
5
5
|
value: {},
|
|
@@ -7,39 +7,39 @@ const I = /* @__PURE__ */ h({
|
|
|
7
7
|
easing: { default: "ease-out" }
|
|
8
8
|
},
|
|
9
9
|
setup(e) {
|
|
10
|
-
const t =
|
|
11
|
-
return
|
|
10
|
+
const t = N("up"), n = v(() => String(e.value).split("")), i = v(() => `duration-${e.duration}`);
|
|
11
|
+
return j(
|
|
12
12
|
() => e.value,
|
|
13
|
-
(c,
|
|
14
|
-
t.value = c >
|
|
13
|
+
(c, d) => {
|
|
14
|
+
t.value = c > d ? "up" : "down";
|
|
15
15
|
}
|
|
16
|
-
), (c,
|
|
16
|
+
), (c, d) => (a(), $(C, {
|
|
17
17
|
tag: "div",
|
|
18
18
|
class: "relative flex shrink-0 items-center tabular-nums",
|
|
19
19
|
"aria-label": e.value,
|
|
20
|
-
"enter-active-class": `transition-all ${
|
|
21
|
-
"leave-active-class": `absolute transition-all ${
|
|
20
|
+
"enter-active-class": `transition-all ${i.value} ${e.easing}`,
|
|
21
|
+
"leave-active-class": `absolute transition-all ${i.value} ${e.easing}`,
|
|
22
22
|
"enter-from-class": t.value === "up" ? "translate-y-full opacity-0" : "-translate-y-full opacity-0",
|
|
23
23
|
"leave-to-class": t.value === "up" ? "-translate-y-full opacity-0" : "translate-y-full opacity-0",
|
|
24
24
|
"move-class": "transition-all duration-500 ease-in-out"
|
|
25
25
|
}, {
|
|
26
26
|
default: f(() => [
|
|
27
|
-
(
|
|
28
|
-
key:
|
|
27
|
+
(a(!0), s(B, null, S(n.value, (g, h) => (a(), s("div", {
|
|
28
|
+
key: h,
|
|
29
29
|
class: "relative inline-flex h-[1.5em] w-[1ch] items-center justify-center overflow-hidden",
|
|
30
30
|
"aria-hidden": "true"
|
|
31
31
|
}, [
|
|
32
|
-
m(
|
|
33
|
-
"enter-active-class": `transition-transform ${
|
|
34
|
-
"leave-active-class": `absolute inset-0 transition-transform ${
|
|
32
|
+
m(T, {
|
|
33
|
+
"enter-active-class": `transition-transform ${i.value} ${e.easing}`,
|
|
34
|
+
"leave-active-class": `absolute inset-0 transition-transform ${i.value} ${e.easing}`,
|
|
35
35
|
"enter-from-class": t.value === "up" ? "translate-y-full" : "-translate-y-full",
|
|
36
36
|
"leave-to-class": t.value === "up" ? "-translate-y-full" : "translate-y-full"
|
|
37
37
|
}, {
|
|
38
38
|
default: f(() => [
|
|
39
|
-
(
|
|
40
|
-
key:
|
|
39
|
+
(a(), s("span", {
|
|
40
|
+
key: g,
|
|
41
41
|
class: "flex h-full w-full items-center justify-center"
|
|
42
|
-
}, b(
|
|
42
|
+
}, b(g), 1))
|
|
43
43
|
]),
|
|
44
44
|
_: 2
|
|
45
45
|
}, 1032, ["enter-active-class", "leave-active-class", "enter-from-class", "leave-to-class"])
|
|
@@ -48,7 +48,7 @@ const I = /* @__PURE__ */ h({
|
|
|
48
48
|
_: 1
|
|
49
49
|
}, 8, ["aria-label", "enter-active-class", "leave-active-class", "enter-from-class", "leave-to-class"]));
|
|
50
50
|
}
|
|
51
|
-
}),
|
|
51
|
+
}), w = /* @__PURE__ */ y({
|
|
52
52
|
name: "NexxtIcon",
|
|
53
53
|
__name: "Icon",
|
|
54
54
|
props: {
|
|
@@ -56,14 +56,14 @@ const I = /* @__PURE__ */ h({
|
|
|
56
56
|
type: { default: "light" }
|
|
57
57
|
},
|
|
58
58
|
setup(e) {
|
|
59
|
-
return (t,
|
|
59
|
+
return (t, n) => (a(), s("i", {
|
|
60
60
|
class: r([`fa-${e.type}`, `fa-${e.name}`, "items-center", "justify-center"])
|
|
61
61
|
}, null, 2));
|
|
62
62
|
}
|
|
63
|
-
}),
|
|
63
|
+
}), I = ["type", "disabled", "data-variant"], K = {
|
|
64
64
|
key: 0,
|
|
65
65
|
class: /* @__PURE__ */ r(["absolute inset-0 flex items-center justify-center rounded-lg"])
|
|
66
|
-
},
|
|
66
|
+
}, L = /* @__PURE__ */ y({
|
|
67
67
|
name: "NexxtButton",
|
|
68
68
|
__name: "Button",
|
|
69
69
|
props: {
|
|
@@ -75,7 +75,7 @@ const I = /* @__PURE__ */ h({
|
|
|
75
75
|
buttonType: { default: "button" }
|
|
76
76
|
},
|
|
77
77
|
setup(e) {
|
|
78
|
-
return (t,
|
|
78
|
+
return (t, n) => (a(), s("button", {
|
|
79
79
|
type: e.buttonType,
|
|
80
80
|
disabled: e.disabled,
|
|
81
81
|
class: r([
|
|
@@ -87,12 +87,12 @@ const I = /* @__PURE__ */ h({
|
|
|
87
87
|
]),
|
|
88
88
|
"data-variant": e.variant
|
|
89
89
|
}, [
|
|
90
|
-
e.icon ? (
|
|
90
|
+
e.icon ? (a(), $(w, {
|
|
91
91
|
key: 0,
|
|
92
92
|
name: e.icon,
|
|
93
93
|
class: r(["transition-all duration-200", { "order-last": e.iconRight, "opacity-0": e.loading }])
|
|
94
94
|
}, null, 8, ["name", "class"])) : u("", !0),
|
|
95
|
-
t.$slots.default ? (
|
|
95
|
+
t.$slots.default ? (a(), s("span", {
|
|
96
96
|
key: 1,
|
|
97
97
|
class: r([
|
|
98
98
|
"inline-block transition-all duration-200",
|
|
@@ -101,9 +101,9 @@ const I = /* @__PURE__ */ h({
|
|
|
101
101
|
e.variant === "link" && !e.loading && !e.disabled ? "hover:underline-offset-2" : ""
|
|
102
102
|
])
|
|
103
103
|
}, [
|
|
104
|
-
|
|
104
|
+
p(t.$slots, "default")
|
|
105
105
|
], 2)) : u("", !0),
|
|
106
|
-
m(
|
|
106
|
+
m(T, {
|
|
107
107
|
"enter-active-class": "transition-opacity duration-200",
|
|
108
108
|
"enter-from-class": "opacity-0",
|
|
109
109
|
"enter-to-class": "opacity-100",
|
|
@@ -112,8 +112,8 @@ const I = /* @__PURE__ */ h({
|
|
|
112
112
|
"leave-to-class": "opacity-0"
|
|
113
113
|
}, {
|
|
114
114
|
default: f(() => [
|
|
115
|
-
e.loading ? (
|
|
116
|
-
m(
|
|
115
|
+
e.loading ? (a(), s("div", K, [
|
|
116
|
+
m(w, {
|
|
117
117
|
name: "spinner-third",
|
|
118
118
|
type: "light",
|
|
119
119
|
class: "fa-spin absolute text-sm"
|
|
@@ -122,12 +122,12 @@ const I = /* @__PURE__ */ h({
|
|
|
122
122
|
]),
|
|
123
123
|
_: 1
|
|
124
124
|
})
|
|
125
|
-
], 10,
|
|
125
|
+
], 10, I));
|
|
126
126
|
}
|
|
127
|
-
}),
|
|
127
|
+
}), z = { class: "flex max-w-full items-center justify-start gap-4" }, D = { class: "block truncate heading-4 text-sapphire-500" }, F = {
|
|
128
128
|
key: 0,
|
|
129
129
|
class: "col-span-1 col-start-2 flex justify-center"
|
|
130
|
-
},
|
|
130
|
+
}, G = /* @__PURE__ */ y({
|
|
131
131
|
name: "NexxtHeader",
|
|
132
132
|
__name: "Header",
|
|
133
133
|
props: {
|
|
@@ -138,42 +138,42 @@ const I = /* @__PURE__ */ h({
|
|
|
138
138
|
} }
|
|
139
139
|
},
|
|
140
140
|
setup(e) {
|
|
141
|
-
return (t,
|
|
141
|
+
return (t, n) => (a(), s("div", {
|
|
142
142
|
class: r(["header flex items-center", t.$slots.center ? "grid grid-cols-3" : ""])
|
|
143
143
|
}, [
|
|
144
|
-
o("div",
|
|
145
|
-
m(
|
|
144
|
+
o("div", z, [
|
|
145
|
+
m(L, {
|
|
146
146
|
class: "shrink-0",
|
|
147
147
|
variant: "secondary",
|
|
148
148
|
onClick: e.backButtonAction
|
|
149
149
|
}, {
|
|
150
150
|
default: f(() => [
|
|
151
|
-
|
|
151
|
+
A(b(e.backButtonText), 1)
|
|
152
152
|
]),
|
|
153
153
|
_: 1
|
|
154
154
|
}, 8, ["onClick"]),
|
|
155
|
-
o("span",
|
|
155
|
+
o("span", D, b(e.title), 1)
|
|
156
156
|
]),
|
|
157
|
-
t.$slots.center ? (
|
|
158
|
-
|
|
157
|
+
t.$slots.center ? (a(), s("div", F, [
|
|
158
|
+
p(t.$slots, "center")
|
|
159
159
|
])) : u("", !0),
|
|
160
|
-
t.$slots.right ? (
|
|
160
|
+
t.$slots.right ? (a(), s("div", {
|
|
161
161
|
key: 1,
|
|
162
162
|
class: r(t.$slots.center ? "col-span-1 col-start-3 flex justify-end" : "ml-auto")
|
|
163
163
|
}, [
|
|
164
|
-
|
|
164
|
+
p(t.$slots, "right")
|
|
165
165
|
], 2)) : u("", !0)
|
|
166
166
|
], 2));
|
|
167
167
|
}
|
|
168
|
-
}),
|
|
168
|
+
}), R = { class: "@container" }, q = { class: "flex flex-col @md:gap-2" }, U = { class: "flex items-center justify-between gap-2" }, J = ["aria-label", "aria-valuenow", "aria-valuetext"], O = {
|
|
169
169
|
key: 0,
|
|
170
170
|
class: "flex items-center small-normal tabular-nums @md:hidden",
|
|
171
171
|
"aria-hidden": "true"
|
|
172
|
-
},
|
|
172
|
+
}, Q = {
|
|
173
173
|
key: 0,
|
|
174
174
|
class: "flex justify-between @max-md:order-first @max-md:justify-center",
|
|
175
175
|
"aria-label": "Progress steps"
|
|
176
|
-
},
|
|
176
|
+
}, W = ["aria-current", "role", "tabindex", "aria-label", "onClick", "onKeydown"], X = /* @__PURE__ */ y({
|
|
177
177
|
name: "NexxtProgressBar",
|
|
178
178
|
__name: "ProgressBar",
|
|
179
179
|
props: {
|
|
@@ -183,57 +183,57 @@ const I = /* @__PURE__ */ h({
|
|
|
183
183
|
stepTitles: {}
|
|
184
184
|
},
|
|
185
185
|
emits: ["update:currentStep"],
|
|
186
|
-
setup(e
|
|
187
|
-
const
|
|
188
|
-
return
|
|
186
|
+
setup(e) {
|
|
187
|
+
const t = v(() => Math.min(Math.max(0, e.currentStep), Math.max(0, e.steps - 1))), n = v(() => e.steps > 0 ? t.value + 1 : 0), i = v(() => e.steps <= 1 ? e.steps === 1 ? 100 : 0 : t.value / (e.steps - 1) * 100), c = v(() => !!e.stepTitles?.length);
|
|
188
|
+
return H(() => {
|
|
189
189
|
e.stepTitles && e.stepTitles.length !== e.steps && console.warn(
|
|
190
190
|
`[NexxtProgressBar] The "stepTitles" array length (${e.stepTitles.length}) must match the "steps" prop (${e.steps}).`
|
|
191
191
|
);
|
|
192
|
-
}), (
|
|
193
|
-
o("div",
|
|
194
|
-
o("div",
|
|
192
|
+
}), (d, g) => (a(), s("div", R, [
|
|
193
|
+
o("div", q, [
|
|
194
|
+
o("div", U, [
|
|
195
195
|
o("div", {
|
|
196
196
|
class: "progress-bar progress-bar-bar h-2 w-full overflow-hidden rounded-full",
|
|
197
197
|
role: "progressbar",
|
|
198
198
|
"aria-label": e.progressLabel,
|
|
199
199
|
"aria-valuemin": "0",
|
|
200
200
|
"aria-valuemax": "100",
|
|
201
|
-
"aria-valuenow": Math.round(
|
|
202
|
-
"aria-valuetext":
|
|
201
|
+
"aria-valuenow": Math.round(i.value),
|
|
202
|
+
"aria-valuetext": c.value && e.stepTitles?.[t.value] ? `Step ${n.value} of ${e.steps}: ${e.stepTitles[t.value]}` : `Step ${n.value} of ${e.steps}`
|
|
203
203
|
}, [
|
|
204
204
|
o("div", {
|
|
205
205
|
class: "progress-bar-progress h-full transition-all duration-500 ease-out",
|
|
206
|
-
style:
|
|
206
|
+
style: M({ width: `${i.value}%` }),
|
|
207
207
|
"aria-hidden": !0
|
|
208
208
|
}, null, 4)
|
|
209
|
-
], 8,
|
|
210
|
-
|
|
211
|
-
m(
|
|
209
|
+
], 8, J),
|
|
210
|
+
c.value ? (a(), s("div", O, [
|
|
211
|
+
m(E, { value: n.value }, null, 8, ["value"]),
|
|
212
212
|
o("span", null, "/" + b(e.steps), 1)
|
|
213
213
|
])) : u("", !0)
|
|
214
214
|
]),
|
|
215
|
-
|
|
216
|
-
(
|
|
217
|
-
key:
|
|
215
|
+
c.value ? (a(), s("ol", Q, [
|
|
216
|
+
(a(!0), s(B, null, S(e.stepTitles, (h, l) => (a(), s("li", {
|
|
217
|
+
key: h,
|
|
218
218
|
class: r(["rounded-xs transition-colors duration-500 focus-visible:outline-3 @max-md:hidden @max-md:body-normal @min-md:small-normal", [
|
|
219
|
-
|
|
220
|
-
|
|
219
|
+
l === t.value ? "text-sapphire-500 @max-md:inline" : "",
|
|
220
|
+
l < t.value ? "cursor-pointer duration-200! hover:text-sapphire-400" : ""
|
|
221
221
|
]]),
|
|
222
|
-
"aria-current":
|
|
223
|
-
role:
|
|
224
|
-
tabindex:
|
|
225
|
-
"aria-label":
|
|
226
|
-
onClick: (
|
|
222
|
+
"aria-current": l === t.value ? "step" : void 0,
|
|
223
|
+
role: l < t.value ? "button" : void 0,
|
|
224
|
+
tabindex: l < t.value ? 0 : void 0,
|
|
225
|
+
"aria-label": l < t.value ? `Ga naar ${h}` : void 0,
|
|
226
|
+
onClick: (x) => l < t.value && d.$emit("update:currentStep", l),
|
|
227
227
|
onKeydown: [
|
|
228
|
-
|
|
229
|
-
|
|
228
|
+
k((x) => l < t.value && d.$emit("update:currentStep", l), ["enter"]),
|
|
229
|
+
k(P((x) => l < t.value && d.$emit("update:currentStep", l), ["prevent"]), ["space"])
|
|
230
230
|
]
|
|
231
|
-
}, b(
|
|
231
|
+
}, b(h), 43, W))), 128))
|
|
232
232
|
])) : u("", !0)
|
|
233
233
|
])
|
|
234
234
|
]));
|
|
235
235
|
}
|
|
236
|
-
}),
|
|
236
|
+
}), Z = /* @__PURE__ */ y({
|
|
237
237
|
name: "NexxtStepperHeader",
|
|
238
238
|
__name: "StepperHeader",
|
|
239
239
|
props: {
|
|
@@ -243,20 +243,22 @@ const I = /* @__PURE__ */ h({
|
|
|
243
243
|
backButtonText: {},
|
|
244
244
|
backButtonAction: {}
|
|
245
245
|
},
|
|
246
|
+
emits: ["update:currentStep"],
|
|
246
247
|
setup(e) {
|
|
247
|
-
return (t,
|
|
248
|
+
return (t, n) => (a(), $(G, {
|
|
248
249
|
title: e.title,
|
|
249
250
|
"back-button-action": e.backButtonAction,
|
|
250
251
|
"back-button-text": e.backButtonText
|
|
251
|
-
},
|
|
252
|
+
}, V({ _: 2 }, [
|
|
252
253
|
e.steps ? {
|
|
253
254
|
name: "center",
|
|
254
255
|
fn: f(() => [
|
|
255
|
-
m(
|
|
256
|
+
m(X, {
|
|
256
257
|
class: "w-full",
|
|
257
258
|
steps: e.steps.length,
|
|
258
259
|
"step-titles": e.steps,
|
|
259
|
-
"current-step": e.currentStep
|
|
260
|
+
"current-step": e.currentStep,
|
|
261
|
+
"onUpdate:currentStep": n[0] || (n[0] = (i) => t.$emit("update:currentStep", i))
|
|
260
262
|
}, null, 8, ["steps", "step-titles", "current-step"])
|
|
261
263
|
]),
|
|
262
264
|
key: "0"
|
|
@@ -264,7 +266,7 @@ const I = /* @__PURE__ */ h({
|
|
|
264
266
|
t.$slots.default ? {
|
|
265
267
|
name: "right",
|
|
266
268
|
fn: f(() => [
|
|
267
|
-
|
|
269
|
+
p(t.$slots, "default")
|
|
268
270
|
]),
|
|
269
271
|
key: "1"
|
|
270
272
|
} : void 0
|
|
@@ -272,10 +274,10 @@ const I = /* @__PURE__ */ h({
|
|
|
272
274
|
}
|
|
273
275
|
});
|
|
274
276
|
export {
|
|
275
|
-
|
|
276
|
-
|
|
277
|
-
|
|
278
|
-
|
|
279
|
-
|
|
280
|
-
|
|
277
|
+
E as NexxtAnimatedNumber,
|
|
278
|
+
L as NexxtButton,
|
|
279
|
+
G as NexxtHeader,
|
|
280
|
+
w as NexxtIcon,
|
|
281
|
+
X as NexxtProgressBar,
|
|
282
|
+
Z as NexxtStepperHeader
|
|
281
283
|
};
|