@luna-park/plugin-nuxt-ui 1.0.0

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 ADDED
@@ -0,0 +1,36 @@
1
+ # Nuxt UI Plugin for Luna Park
2
+
3
+ Nuxt UI is a collection of reusable components and utilities for building apps. This plugin integrates Nuxt UI components directly into Luna Park.
4
+
5
+ ## Installation
6
+
7
+ This plugin can be installed directly from the Luna Park application:
8
+ 1. Open your project in Luna Park.
9
+ 2. Navigate to the **Library** menu.
10
+ 3. Click on **Install Plugins**.
11
+ 4. Search for "Nuxt UI" and install it.
12
+
13
+ ## Configuration
14
+
15
+ You can configure the global appearance of the UI components in the plugin settings:
16
+
17
+ | Option | Description | Type | Default | Options |
18
+ |---|---|---|---|---|
19
+ | `primary` | Primary color theme | String | `green` | `red`, `orange`, `amber`, `yellow`, `lime`, `green`, `emerald`, `teal`, `cyan`, `sky`, `blue`, `indigo`, `violet`, `purple`, `fuchsia`, `pink`, `rose` |
20
+ | `neutral` | Neutral color shade | String | `slate` | `slate`, `gray`, `zinc`, `neutral`, `stone` |
21
+ | `colorMode`| Color mode preference | String | `auto` | `light`, `dark`, `auto` |
22
+ | `radius` | Global border radius | Number | `0.25` | 0 to 1 (step 0.125) |
23
+
24
+ ## Components
25
+
26
+ This plugin provides a wide range of components organized into the following categories:
27
+
28
+ - **Chat**: Components for building chat interfaces.
29
+ - **Dashboard**: Widgets and layout elements for dashboards.
30
+ - **Data**: Components for displaying data (tables, lists, etc.).
31
+ - **Element**: Basic UI elements (buttons, badges, avatars).
32
+ - **Form**: Input fields, selects, checkboxes, and other form elements.
33
+ - **Layout**: Structural components for page layout.
34
+ - **Navigation**: Menus, breadcrumbs, and other navigation aids.
35
+ - **Overlay**: Modals, slide-overs, tooltips, and notifications.
36
+ - **Page**: High-level page structure components.
@@ -0,0 +1,38 @@
1
+ function f(h = {}) {
2
+ let e, l = [];
3
+ const r = ["select", "slideFocus"];
4
+ function a(t) {
5
+ e = t;
6
+ const {
7
+ options: {
8
+ axis: n
9
+ },
10
+ slideRects: i
11
+ } = e.internalEngine();
12
+ n !== "y" && (l = i.map((o) => o.height), r.forEach((o) => e.on(o, s)), s());
13
+ }
14
+ function u() {
15
+ r.forEach((n) => e.off(n, s));
16
+ const t = e.containerNode();
17
+ t.style.height = "", t.getAttribute("style") || t.removeAttribute("style");
18
+ }
19
+ function c() {
20
+ const {
21
+ slideRegistry: t
22
+ } = e.internalEngine(), n = t[e.selectedScrollSnap()];
23
+ return n ? n.map((i) => l[i]).reduce((i, o) => Math.max(i, o), 0) : null;
24
+ }
25
+ function s() {
26
+ c() !== null && (e.containerNode().style.height = `${c()}px`);
27
+ }
28
+ return {
29
+ name: "autoHeight",
30
+ options: h,
31
+ init: a,
32
+ destroy: u
33
+ };
34
+ }
35
+ f.globalOptions = void 0;
36
+ export {
37
+ f as default
38
+ };
@@ -0,0 +1,142 @@
1
+ const Y = {
2
+ direction: "forward",
3
+ speed: 2,
4
+ startDelay: 1e3,
5
+ active: !0,
6
+ breakpoints: {},
7
+ playOnInit: !0,
8
+ stopOnFocusIn: !0,
9
+ stopOnInteraction: !0,
10
+ stopOnMouseEnter: !1,
11
+ rootNode: null
12
+ };
13
+ function Z(c, o) {
14
+ const t = c.rootNode();
15
+ return o && o(t) || t;
16
+ }
17
+ function P(c = {}) {
18
+ let o, t, a, O, w = 0, i = !1, u = !1, h;
19
+ function T(e, n) {
20
+ t = e;
21
+ const {
22
+ mergeOptions: f,
23
+ optionsAtMedia: d
24
+ } = n, p = f(Y, P.globalOptions), I = f(p, c);
25
+ if (o = d(I), t.scrollSnapList().length <= 1) return;
26
+ O = o.startDelay, a = !1, h = t.internalEngine().scrollBody;
27
+ const {
28
+ eventStore: s
29
+ } = t.internalEngine(), g = !!t.internalEngine().options.watchDrag, S = Z(t, o.rootNode);
30
+ g && t.on("pointerDown", A), g && !o.stopOnInteraction && t.on("pointerUp", b), o.stopOnMouseEnter && s.add(S, "mouseenter", R), o.stopOnMouseEnter && !o.stopOnInteraction && s.add(S, "mouseleave", W), o.stopOnFocusIn && t.on("slideFocusStart", r), o.stopOnFocusIn && !o.stopOnInteraction && s.add(t.containerNode(), "focusout", l), o.playOnInit && l();
31
+ }
32
+ function U() {
33
+ t.off("pointerDown", A).off("pointerUp", b).off("slideFocusStart", r).off("settle", D), r(), a = !0, i = !1;
34
+ }
35
+ function l() {
36
+ if (a || i) return;
37
+ t.emit("autoScroll:play");
38
+ const e = t.internalEngine(), {
39
+ ownerWindow: n
40
+ } = e;
41
+ w = n.setTimeout(() => {
42
+ e.scrollBody = k(e), e.animation.start();
43
+ }, O), i = !0;
44
+ }
45
+ function r() {
46
+ if (a || !i) return;
47
+ t.emit("autoScroll:stop");
48
+ const e = t.internalEngine(), {
49
+ ownerWindow: n
50
+ } = e;
51
+ e.scrollBody = h, n.clearTimeout(w), w = 0, i = !1;
52
+ }
53
+ function k(e) {
54
+ const {
55
+ location: n,
56
+ previousLocation: f,
57
+ offsetLocation: d,
58
+ target: p,
59
+ scrollTarget: I,
60
+ index: s,
61
+ indexPrevious: g,
62
+ limit: {
63
+ reachedMin: S,
64
+ reachedMax: C,
65
+ constrain: G
66
+ },
67
+ options: {
68
+ loop: H
69
+ }
70
+ } = e, J = o.direction === "forward" ? -1 : 1, m = () => E;
71
+ let y = 0, F = 0, v = n.get(), L = 0, M = !1;
72
+ function K() {
73
+ let x = 0;
74
+ f.set(n), y = J * o.speed, v += y, n.add(y), p.set(n), x = v - L, F = Math.sign(x), L = v;
75
+ const N = I.byDistance(0, !1).index;
76
+ s.get() !== N && (g.set(s.get()), s.set(N), t.emit("select"));
77
+ const Q = o.direction === "forward" ? S(d.get()) : C(d.get());
78
+ if (!H && Q) {
79
+ M = !0;
80
+ const X = G(n.get());
81
+ n.set(X), p.set(n), r();
82
+ }
83
+ return E;
84
+ }
85
+ const E = {
86
+ direction: () => F,
87
+ duration: () => -1,
88
+ velocity: () => y,
89
+ settled: () => M,
90
+ seek: K,
91
+ useBaseFriction: m,
92
+ useBaseDuration: m,
93
+ useFriction: m,
94
+ useDuration: m
95
+ };
96
+ return E;
97
+ }
98
+ function A() {
99
+ u || r();
100
+ }
101
+ function b() {
102
+ u || B();
103
+ }
104
+ function R() {
105
+ u = !0, r();
106
+ }
107
+ function W() {
108
+ u = !1, l();
109
+ }
110
+ function D() {
111
+ t.off("settle", D), l();
112
+ }
113
+ function B() {
114
+ t.on("settle", D);
115
+ }
116
+ function V(e) {
117
+ typeof e < "u" && (O = e), l();
118
+ }
119
+ function j() {
120
+ i && r();
121
+ }
122
+ function q() {
123
+ i && (r(), B());
124
+ }
125
+ function z() {
126
+ return i;
127
+ }
128
+ return {
129
+ name: "autoScroll",
130
+ options: c,
131
+ init: T,
132
+ destroy: U,
133
+ play: V,
134
+ stop: j,
135
+ reset: q,
136
+ isPlaying: z
137
+ };
138
+ }
139
+ P.globalOptions = void 0;
140
+ export {
141
+ P as default
142
+ };
@@ -0,0 +1,126 @@
1
+ const B = {
2
+ active: !0,
3
+ breakpoints: {},
4
+ delay: 4e3,
5
+ jump: !1,
6
+ playOnInit: !0,
7
+ stopOnFocusIn: !0,
8
+ stopOnInteraction: !0,
9
+ stopOnMouseEnter: !1,
10
+ stopOnLastSnap: !1,
11
+ rootNode: null
12
+ };
13
+ function C(l, n) {
14
+ const t = l.scrollSnapList();
15
+ return typeof n == "number" ? t.map(() => n) : n(t, l);
16
+ }
17
+ function H(l, n) {
18
+ const t = l.rootNode();
19
+ return n && n(t) || t;
20
+ }
21
+ function E(l = {}) {
22
+ let n, t, r, y, u = null, c = 0, o = !1, f = !1, g = !1, p = !1;
23
+ function x(e, a) {
24
+ t = e;
25
+ const {
26
+ mergeOptions: d,
27
+ optionsAtMedia: O
28
+ } = a, R = d(B, E.globalOptions), W = d(R, l);
29
+ if (n = O(W), t.scrollSnapList().length <= 1) return;
30
+ p = n.jump, r = !1, y = C(t, n.delay);
31
+ const {
32
+ eventStore: m,
33
+ ownerDocument: z
34
+ } = t.internalEngine(), D = !!t.internalEngine().options.watchDrag, b = H(t, n.rootNode);
35
+ m.add(z, "visibilitychange", h), D && t.on("pointerDown", I), D && !n.stopOnInteraction && t.on("pointerUp", w), n.stopOnMouseEnter && m.add(b, "mouseenter", A), n.stopOnMouseEnter && !n.stopOnInteraction && m.add(b, "mouseleave", L), n.stopOnFocusIn && t.on("slideFocusStart", s), n.stopOnFocusIn && !n.stopOnInteraction && m.add(t.containerNode(), "focusout", i), n.playOnInit && i();
36
+ }
37
+ function T() {
38
+ t.off("pointerDown", I).off("pointerUp", w).off("slideFocusStart", s), s(), r = !0, o = !1;
39
+ }
40
+ function v() {
41
+ const {
42
+ ownerWindow: e
43
+ } = t.internalEngine();
44
+ e.clearTimeout(c), c = e.setTimeout(k, y[t.selectedScrollSnap()]), u = (/* @__PURE__ */ new Date()).getTime(), t.emit("autoplay:timerset");
45
+ }
46
+ function N() {
47
+ const {
48
+ ownerWindow: e
49
+ } = t.internalEngine();
50
+ e.clearTimeout(c), c = 0, u = null, t.emit("autoplay:timerstopped");
51
+ }
52
+ function i() {
53
+ if (!r) {
54
+ if (S()) {
55
+ g = !0;
56
+ return;
57
+ }
58
+ o || t.emit("autoplay:play"), v(), o = !0;
59
+ }
60
+ }
61
+ function s() {
62
+ r || (o && t.emit("autoplay:stop"), N(), o = !1);
63
+ }
64
+ function h() {
65
+ if (S())
66
+ return g = o, s();
67
+ g && i();
68
+ }
69
+ function S() {
70
+ const {
71
+ ownerDocument: e
72
+ } = t.internalEngine();
73
+ return e.visibilityState === "hidden";
74
+ }
75
+ function I() {
76
+ f || s();
77
+ }
78
+ function w() {
79
+ f || i();
80
+ }
81
+ function A() {
82
+ f = !0, s();
83
+ }
84
+ function L() {
85
+ f = !1, i();
86
+ }
87
+ function F(e) {
88
+ typeof e < "u" && (p = e), i();
89
+ }
90
+ function M() {
91
+ o && s();
92
+ }
93
+ function U() {
94
+ o && i();
95
+ }
96
+ function j() {
97
+ return o;
98
+ }
99
+ function k() {
100
+ const {
101
+ index: e
102
+ } = t.internalEngine(), a = e.clone().add(1).get(), d = t.scrollSnapList().length - 1, O = n.stopOnLastSnap && a === d;
103
+ if (t.canScrollNext() ? t.scrollNext(p) : t.scrollTo(0, p), t.emit("autoplay:select"), O) return s();
104
+ i();
105
+ }
106
+ function P() {
107
+ if (!u) return null;
108
+ const e = y[t.selectedScrollSnap()], a = (/* @__PURE__ */ new Date()).getTime() - u;
109
+ return e - a;
110
+ }
111
+ return {
112
+ name: "autoplay",
113
+ options: l,
114
+ init: x,
115
+ destroy: T,
116
+ play: F,
117
+ stop: M,
118
+ reset: U,
119
+ isPlaying: j,
120
+ timeUntilNext: P
121
+ };
122
+ }
123
+ E.globalOptions = void 0;
124
+ export {
125
+ E as default
126
+ };
@@ -0,0 +1,74 @@
1
+ const z = {
2
+ active: !0,
3
+ breakpoints: {},
4
+ snapped: "is-snapped",
5
+ inView: "is-in-view",
6
+ draggable: "is-draggable",
7
+ dragging: "is-dragging",
8
+ loop: "is-loop"
9
+ };
10
+ function d(s) {
11
+ return (Array.isArray(s) ? s : [s]).filter(Boolean);
12
+ }
13
+ function p(s, n) {
14
+ !s || !n.length || s.classList.remove(...n);
15
+ }
16
+ function f(s, n) {
17
+ !s || !n.length || s.classList.add(...n);
18
+ }
19
+ function y(s = {}) {
20
+ let n, i, l, w, u = [], b = [];
21
+ const m = ["select"], v = ["pointerDown", "pointerUp"], I = ["slidesInView"], e = {
22
+ snapped: [],
23
+ inView: [],
24
+ draggable: [],
25
+ dragging: [],
26
+ loop: []
27
+ };
28
+ function D(o, t) {
29
+ i = o;
30
+ const {
31
+ mergeOptions: g,
32
+ optionsAtMedia: h
33
+ } = t, C = g(z, y.globalOptions), a = g(C, s);
34
+ n = h(a), l = i.rootNode(), w = i.slideNodes();
35
+ const {
36
+ watchDrag: x,
37
+ loop: A
38
+ } = i.internalEngine().options, k = !!x;
39
+ n.loop && A && (e.loop = d(n.loop), f(l, e.loop)), n.draggable && k && (e.draggable = d(n.draggable), f(l, e.draggable)), n.dragging && (e.dragging = d(n.dragging), v.forEach((r) => i.on(r, S))), n.snapped && (e.snapped = d(n.snapped), m.forEach((r) => i.on(r, E)), E()), n.inView && (e.inView = d(n.inView), I.forEach((r) => i.on(r, V)), V());
40
+ }
41
+ function O() {
42
+ v.forEach((o) => i.off(o, S)), m.forEach((o) => i.off(o, E)), I.forEach((o) => i.off(o, V)), p(l, e.loop), p(l, e.draggable), p(l, e.dragging), c([], u, e.snapped), c([], b, e.inView), Object.keys(e).forEach((o) => {
43
+ const t = o;
44
+ e[t] = [];
45
+ });
46
+ }
47
+ function S(o, t) {
48
+ (t === "pointerDown" ? f : p)(l, e.dragging);
49
+ }
50
+ function c(o = [], t = [], g) {
51
+ const h = t.map((a) => w[a]), C = o.map((a) => w[a]);
52
+ return h.forEach((a) => p(a, g)), C.forEach((a) => f(a, g)), o;
53
+ }
54
+ function E() {
55
+ const {
56
+ slideRegistry: o
57
+ } = i.internalEngine(), t = o[i.selectedScrollSnap()];
58
+ u = c(t, u, e.snapped);
59
+ }
60
+ function V() {
61
+ const o = i.slidesInView();
62
+ b = c(o, b, e.inView);
63
+ }
64
+ return {
65
+ name: "classNames",
66
+ options: s,
67
+ init: D,
68
+ destroy: O
69
+ };
70
+ }
71
+ y.globalOptions = void 0;
72
+ export {
73
+ y as default
74
+ };
@@ -0,0 +1,143 @@
1
+ function A(p, O, x) {
2
+ return Math.min(Math.max(p, O), x);
3
+ }
4
+ function m(p) {
5
+ return typeof p == "number" && !isNaN(p);
6
+ }
7
+ function k(p = {}) {
8
+ let n, f = [], F, S = 0, u = 0, v = 0, y = !1, b, P;
9
+ function I(t) {
10
+ n = t;
11
+ const o = n.selectedScrollSnap(), {
12
+ scrollBody: e,
13
+ containerRect: c,
14
+ axis: s
15
+ } = n.internalEngine(), r = s.measureSize(c);
16
+ F = A(r * 0.75, 200, 500), y = !1, f = n.scrollSnapList().map((i, l) => l === o ? 1 : 0), b = e.settled, P = n.scrollProgress, e.settled = _, n.scrollProgress = $, n.on("select", B).on("slideFocus", h).on("pointerDown", D).on("pointerUp", w), U(), h();
17
+ }
18
+ function N() {
19
+ const {
20
+ scrollBody: t
21
+ } = n.internalEngine();
22
+ t.settled = b, n.scrollProgress = P, n.off("select", B).off("slideFocus", h).off("pointerDown", D).off("pointerUp", w), n.slideNodes().forEach((o) => {
23
+ const e = o.style;
24
+ e.opacity = "", e.transform = "", e.pointerEvents = "", o.getAttribute("style") || o.removeAttribute("style");
25
+ });
26
+ }
27
+ function h() {
28
+ const t = n.selectedScrollSnap();
29
+ M(t, 1);
30
+ }
31
+ function w() {
32
+ y = !1;
33
+ }
34
+ function D() {
35
+ y = !1, S = 0, u = 0;
36
+ }
37
+ function B() {
38
+ const t = n.internalEngine().scrollBody.duration();
39
+ u = t ? 0 : 1, y = !0, t || h();
40
+ }
41
+ function R(t) {
42
+ const {
43
+ axis: o
44
+ } = n.internalEngine();
45
+ return `translate${o.scroll.toUpperCase()}(${o.direction(t)}px)`;
46
+ }
47
+ function U() {
48
+ const {
49
+ translate: t,
50
+ slideLooper: o
51
+ } = n.internalEngine();
52
+ t.clear(), t.toggleActive(!1), o.loopPoints.forEach(({
53
+ translate: e
54
+ }) => {
55
+ e.clear(), e.toggleActive(!1);
56
+ });
57
+ }
58
+ function H(t) {
59
+ const {
60
+ scrollSnaps: o,
61
+ location: e,
62
+ target: c
63
+ } = n.internalEngine();
64
+ !m(t) || f[t] < 0.5 || (e.set(o[t]), c.set(e));
65
+ }
66
+ function M(t, o) {
67
+ n.scrollSnapList().forEach((c, s) => {
68
+ const r = Math.abs(o), i = f[s], l = s === t, a = l ? i + r : i - r, d = A(a, 0, 1);
69
+ f[s] = d;
70
+ const g = l && y, E = n.previousScrollSnap();
71
+ g && (f[E] = 1 - d), l && z(t, d), L(s);
72
+ });
73
+ }
74
+ function L(t) {
75
+ const o = n.internalEngine().slideRegistry[t], {
76
+ scrollSnaps: e,
77
+ containerRect: c
78
+ } = n.internalEngine(), s = f[t];
79
+ o.forEach((r) => {
80
+ const i = n.slideNodes()[r].style, l = parseFloat(s.toFixed(2)), a = l > 0, d = a ? e[t] : c.width + 2, g = R(d);
81
+ a && (i.transform = g), i.opacity = l.toString(), i.pointerEvents = s > 0.5 ? "auto" : "none", a || (i.transform = g);
82
+ });
83
+ }
84
+ function z(t, o) {
85
+ const {
86
+ index: e,
87
+ dragHandler: c,
88
+ scrollSnaps: s
89
+ } = n.internalEngine(), r = c.pointerDown(), i = 1 / (s.length - 1);
90
+ let l = t, a = r ? n.selectedScrollSnap() : n.previousScrollSnap();
91
+ if (r && l === a) {
92
+ const E = Math.sign(S) * -1;
93
+ l = a, a = e.clone().set(a).add(E).get();
94
+ }
95
+ const d = a * i, g = (l - a) * i;
96
+ v = d + g * o;
97
+ }
98
+ function T() {
99
+ const {
100
+ dragHandler: t,
101
+ index: o,
102
+ scrollBody: e
103
+ } = n.internalEngine(), c = n.selectedScrollSnap();
104
+ if (!t.pointerDown()) return c;
105
+ const s = Math.sign(e.velocity()), r = Math.sign(S), i = o.clone().set(c).add(s * -1).get();
106
+ return !s || !r ? null : r === s ? i : c;
107
+ }
108
+ function V(t) {
109
+ const {
110
+ dragHandler: o,
111
+ scrollBody: e
112
+ } = t.internalEngine(), c = o.pointerDown(), s = e.velocity(), r = e.duration(), i = T(), l = !m(i);
113
+ if (c) {
114
+ if (!s) return;
115
+ S += s, u = Math.abs(s / F), H(i);
116
+ }
117
+ if (!c) {
118
+ if (!r || l) return;
119
+ u += (1 - f[i]) / r, u *= 0.68;
120
+ }
121
+ l || M(i, u);
122
+ }
123
+ function _() {
124
+ const {
125
+ target: t,
126
+ location: o
127
+ } = n.internalEngine(), e = t.get() - o.get(), c = Math.abs(e) >= 1, s = T(), r = !m(s);
128
+ return V(n), r || c ? !1 : f[s] > 0.999;
129
+ }
130
+ function $() {
131
+ return v;
132
+ }
133
+ return {
134
+ name: "fade",
135
+ options: p,
136
+ init: I,
137
+ destroy: N
138
+ };
139
+ }
140
+ k.globalOptions = void 0;
141
+ export {
142
+ k as default
143
+ };