@alebtz/redm-vue-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.
@@ -0,0 +1,731 @@
1
+ import { openBlock as u, createElementBlock as m, normalizeClass as V, renderSlot as g, computed as N, createCommentVNode as b, ref as I, watch as T, createElementVNode as v, normalizeStyle as Q, toDisplayString as S, createBlock as R, Teleport as Z, createVNode as k, Transition as D, withCtx as P, withModifiers as z, useCssVars as X } from "vue";
2
+ const f = (e, n) => {
3
+ const t = e.__vccOpts || e;
4
+ for (const [r, o] of n)
5
+ t[r] = o;
6
+ return t;
7
+ }, j = ["type", "disabled"], L = {
8
+ __name: "RdrButton",
9
+ props: {
10
+ type: {
11
+ type: String,
12
+ default: "button"
13
+ },
14
+ disabled: {
15
+ type: Boolean,
16
+ default: !1
17
+ },
18
+ active: {
19
+ type: Boolean,
20
+ default: !1
21
+ }
22
+ },
23
+ setup(e) {
24
+ return (n, t) => (u(), m("button", {
25
+ class: V(["rdr-button", { "rdr-button--active": e.active }]),
26
+ type: e.type,
27
+ disabled: e.disabled
28
+ }, [
29
+ g(n.$slots, "default", {}, void 0, !0)
30
+ ], 10, j));
31
+ }
32
+ }, M = /* @__PURE__ */ f(L, [["__scopeId", "data-v-2a1a92e1"]]), U = ["type", "value", "placeholder", "disabled"], K = {
33
+ __name: "RdrInput",
34
+ props: {
35
+ modelValue: {
36
+ type: [String, Number],
37
+ default: ""
38
+ },
39
+ type: {
40
+ type: String,
41
+ default: "text"
42
+ },
43
+ placeholder: {
44
+ type: String,
45
+ default: ""
46
+ },
47
+ disabled: {
48
+ type: Boolean,
49
+ default: !1
50
+ }
51
+ },
52
+ emits: ["update:modelValue"],
53
+ setup(e) {
54
+ return (n, t) => (u(), m("input", {
55
+ type: e.type,
56
+ value: e.modelValue,
57
+ placeholder: e.placeholder,
58
+ disabled: e.disabled,
59
+ class: "rdr-input",
60
+ onInput: t[0] || (t[0] = (r) => n.$emit("update:modelValue", r.target.value))
61
+ }, null, 40, U));
62
+ }
63
+ }, Y = /* @__PURE__ */ f(K, [["__scopeId", "data-v-ef3beb0e"]]), q = ["value", "placeholder", "disabled", "rows"], W = {
64
+ __name: "RdrTextarea",
65
+ props: {
66
+ modelValue: {
67
+ type: String,
68
+ default: ""
69
+ },
70
+ placeholder: {
71
+ type: String,
72
+ default: ""
73
+ },
74
+ disabled: {
75
+ type: Boolean,
76
+ default: !1
77
+ },
78
+ rows: {
79
+ type: Number,
80
+ default: 5
81
+ }
82
+ },
83
+ emits: ["update:modelValue"],
84
+ setup(e) {
85
+ return (n, t) => (u(), m("textarea", {
86
+ value: e.modelValue,
87
+ placeholder: e.placeholder,
88
+ disabled: e.disabled,
89
+ rows: e.rows,
90
+ class: "rdr-textarea",
91
+ onInput: t[0] || (t[0] = (r) => n.$emit("update:modelValue", r.target.value))
92
+ }, null, 40, q));
93
+ }
94
+ }, J = /* @__PURE__ */ f(W, [["__scopeId", "data-v-5c53637b"]]), _ = {
95
+ __name: "RdrCard",
96
+ props: {
97
+ padding: {
98
+ type: String,
99
+ default: "md",
100
+ validator: (e) => ["none", "sm", "md", "lg", "xl"].includes(e)
101
+ },
102
+ scrollable: {
103
+ type: Boolean,
104
+ default: !1
105
+ }
106
+ },
107
+ setup(e) {
108
+ const n = e, t = N(() => ({
109
+ [`rdr-card--padding-${n.padding}`]: !0,
110
+ "rdr-card--scrollable": n.scrollable
111
+ }));
112
+ return (r, o) => (u(), m("div", {
113
+ class: V(["rdr-card", t.value])
114
+ }, [
115
+ g(r.$slots, "default", {}, void 0, !0)
116
+ ], 2));
117
+ }
118
+ }, $ = /* @__PURE__ */ f(_, [["__scopeId", "data-v-a247d92b"]]), ee = { class: "rdr-header" }, te = { key: 0 }, ae = { key: 1 }, ne = { key: 2 }, le = { key: 3 }, re = {
119
+ __name: "RdrHeader",
120
+ props: {
121
+ level: {
122
+ type: Number,
123
+ default: 1,
124
+ validator: (e) => [1, 2, 3].includes(e)
125
+ },
126
+ divider: {
127
+ type: Boolean,
128
+ default: !0
129
+ }
130
+ },
131
+ setup(e) {
132
+ return (n, t) => (u(), m("div", ee, [
133
+ e.level === 1 ? (u(), m("h1", te, [
134
+ g(n.$slots, "default", {}, void 0, !0)
135
+ ])) : e.level === 2 ? (u(), m("h2", ae, [
136
+ g(n.$slots, "default", {}, void 0, !0)
137
+ ])) : e.level === 3 ? (u(), m("h3", ne, [
138
+ g(n.$slots, "default", {}, void 0, !0)
139
+ ])) : b("", !0),
140
+ e.divider ? (u(), m("hr", le)) : b("", !0)
141
+ ]));
142
+ }
143
+ }, se = /* @__PURE__ */ f(re, [["__scopeId", "data-v-48874094"]]), oe = {
144
+ __name: "RdrDivider",
145
+ props: {
146
+ thick: {
147
+ type: Boolean,
148
+ default: !1
149
+ }
150
+ },
151
+ setup(e) {
152
+ return (n, t) => (u(), m("hr", {
153
+ class: V(["rdr-divider", { "rdr-divider--thick": e.thick }])
154
+ }, null, 2));
155
+ }
156
+ }, de = /* @__PURE__ */ f(oe, [["__scopeId", "data-v-9640b7ae"]]), G = "data:image/png;base64,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", O = "data:image/png;base64,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", ue = { class: "rdr-slider-input" }, ie = ["disabled"], ce = { class: "rdr-slider-input__container" }, Ae = ["min", "max", "step", "value"], me = ["disabled"], fe = {
157
+ __name: "RdrSlider",
158
+ props: {
159
+ modelValue: {
160
+ type: Number,
161
+ default: 0
162
+ },
163
+ min: {
164
+ type: Number,
165
+ default: 0
166
+ },
167
+ max: {
168
+ type: Number,
169
+ default: 100
170
+ },
171
+ step: {
172
+ type: Number,
173
+ default: 1
174
+ },
175
+ showArrows: {
176
+ type: Boolean,
177
+ default: !0
178
+ }
179
+ },
180
+ emits: ["update:modelValue"],
181
+ setup(e, { emit: n }) {
182
+ const t = e, r = n, o = I(!1), a = I(!1), c = I(!1), d = N(() => ({
183
+ left: `${(t.modelValue - t.min) / (t.max - t.min) * 100}%`
184
+ }));
185
+ T(() => t.modelValue, () => {
186
+ o.value && (c.value = !0, setTimeout(() => {
187
+ c.value = !1;
188
+ }, 200));
189
+ });
190
+ function C(p) {
191
+ o.value = !0, r("update:modelValue", parseFloat(p.target.value));
192
+ }
193
+ function l() {
194
+ a.value = !0, o.value = !0;
195
+ const p = () => {
196
+ a.value = !1, o.value = !1, document.removeEventListener("mouseup", p);
197
+ };
198
+ document.addEventListener("mouseup", p);
199
+ }
200
+ function s() {
201
+ a.value || (o.value = !1);
202
+ }
203
+ function A() {
204
+ const p = Math.min(t.modelValue + t.step, t.max);
205
+ r("update:modelValue", p);
206
+ }
207
+ function w() {
208
+ const p = Math.max(t.modelValue - t.step, t.min);
209
+ r("update:modelValue", p);
210
+ }
211
+ return (p, y) => (u(), m("div", ue, [
212
+ e.showArrows ? (u(), m("button", {
213
+ key: 0,
214
+ class: "rdr-slider-input__arrow",
215
+ onClick: w,
216
+ disabled: e.modelValue <= e.min
217
+ }, [...y[1] || (y[1] = [
218
+ v("img", {
219
+ src: G,
220
+ alt: "Decrease"
221
+ }, null, -1)
222
+ ])], 8, ie)) : b("", !0),
223
+ v("div", ce, [
224
+ v("div", {
225
+ class: V(["rdr-slider-input__tooltip", { visible: o.value, updating: c.value }]),
226
+ style: Q(d.value)
227
+ }, S(e.modelValue), 7),
228
+ v("input", {
229
+ type: "range",
230
+ min: e.min,
231
+ max: e.max,
232
+ step: e.step,
233
+ value: e.modelValue,
234
+ onInput: C,
235
+ onMouseenter: y[0] || (y[0] = (x) => o.value = !0),
236
+ onMouseleave: s,
237
+ onMousedown: l,
238
+ class: "rdr-slider-input__input"
239
+ }, null, 40, Ae)
240
+ ]),
241
+ e.showArrows ? (u(), m("button", {
242
+ key: 1,
243
+ class: "rdr-slider-input__arrow",
244
+ onClick: A,
245
+ disabled: e.modelValue >= e.max
246
+ }, [...y[2] || (y[2] = [
247
+ v("img", {
248
+ src: O,
249
+ alt: "Increase"
250
+ }, null, -1)
251
+ ])], 8, me)) : b("", !0)
252
+ ]));
253
+ }
254
+ }, pe = /* @__PURE__ */ f(fe, [["__scopeId", "data-v-38f0022b"]]), ve = { class: "rdr-number-input" }, ge = ["disabled"], ye = ["value", "placeholder"], Be = ["disabled"], he = {
255
+ __name: "RdrNumberInput",
256
+ props: {
257
+ modelValue: {
258
+ type: Number,
259
+ default: 0
260
+ },
261
+ min: {
262
+ type: Number,
263
+ default: -1 / 0
264
+ },
265
+ max: {
266
+ type: Number,
267
+ default: 1 / 0
268
+ },
269
+ step: {
270
+ type: Number,
271
+ default: 1
272
+ },
273
+ placeholder: {
274
+ type: String,
275
+ default: ""
276
+ }
277
+ },
278
+ emits: ["update:modelValue"],
279
+ setup(e, { emit: n }) {
280
+ const t = e, r = n, o = N(() => t.modelValue);
281
+ let a = null, c = null, d = 500;
282
+ function C(h) {
283
+ const B = parseFloat(h.target.value);
284
+ isNaN(B) || s(B);
285
+ }
286
+ function l() {
287
+ t.modelValue < t.min ? r("update:modelValue", t.min) : t.modelValue > t.max && r("update:modelValue", t.max);
288
+ }
289
+ function s(h) {
290
+ const B = Math.max(t.min, Math.min(t.max, h)), F = Math.round(B / t.step) * t.step;
291
+ r("update:modelValue", F);
292
+ }
293
+ function A() {
294
+ const h = Math.min(t.modelValue + t.step, t.max);
295
+ r("update:modelValue", h);
296
+ }
297
+ function w() {
298
+ const h = Math.max(t.modelValue - t.step, t.min);
299
+ r("update:modelValue", h);
300
+ }
301
+ function p() {
302
+ A(), d = 500, c = setTimeout(() => {
303
+ a = setInterval(() => {
304
+ A(), d > 50 && (d -= 50, clearInterval(a), a = setInterval(() => {
305
+ A();
306
+ }, d));
307
+ }, d);
308
+ }, 300);
309
+ }
310
+ function y() {
311
+ w(), d = 500, c = setTimeout(() => {
312
+ a = setInterval(() => {
313
+ w(), d > 50 && (d -= 50, clearInterval(a), a = setInterval(() => {
314
+ w();
315
+ }, d));
316
+ }, d);
317
+ }, 300);
318
+ }
319
+ function x() {
320
+ c && (clearTimeout(c), c = null), a && (clearInterval(a), a = null), d = 500;
321
+ }
322
+ return (h, B) => (u(), m("div", ve, [
323
+ v("button", {
324
+ class: "rdr-number-input__button",
325
+ onMousedown: y,
326
+ onMouseup: x,
327
+ onMouseleave: x,
328
+ onTouchstart: y,
329
+ onTouchend: x,
330
+ disabled: e.modelValue <= e.min
331
+ }, [...B[0] || (B[0] = [
332
+ v("img", {
333
+ src: G,
334
+ alt: "Decrease"
335
+ }, null, -1)
336
+ ])], 40, ge),
337
+ v("input", {
338
+ type: "text",
339
+ value: o.value,
340
+ onInput: C,
341
+ onBlur: l,
342
+ class: "rdr-number-input__field",
343
+ placeholder: e.placeholder
344
+ }, null, 40, ye),
345
+ v("button", {
346
+ class: "rdr-number-input__button",
347
+ onMousedown: p,
348
+ onMouseup: x,
349
+ onMouseleave: x,
350
+ onTouchstart: p,
351
+ onTouchend: x,
352
+ disabled: e.modelValue >= e.max
353
+ }, [...B[1] || (B[1] = [
354
+ v("img", {
355
+ src: O,
356
+ alt: "Increase"
357
+ }, null, -1)
358
+ ])], 40, Be)
359
+ ]));
360
+ }
361
+ }, be = /* @__PURE__ */ f(he, [["__scopeId", "data-v-6aec9abe"]]), we = {
362
+ __name: "RdrPanel",
363
+ props: {
364
+ padding: {
365
+ type: String,
366
+ default: "xl",
367
+ validator: (e) => ["none", "sm", "md", "lg", "xl"].includes(e)
368
+ },
369
+ scrollable: {
370
+ type: Boolean,
371
+ default: !1
372
+ },
373
+ variant: {
374
+ type: String,
375
+ default: "default",
376
+ validator: (e) => ["default", "red"].includes(e)
377
+ }
378
+ },
379
+ setup(e) {
380
+ const n = e, t = N(() => ({
381
+ [`rdr-panel--padding-${n.padding}`]: !0,
382
+ "rdr-panel--scrollable": n.scrollable,
383
+ [`rdr-panel--${n.variant}`]: !0
384
+ }));
385
+ return (r, o) => (u(), m("div", {
386
+ class: V(["rdr-panel", t.value])
387
+ }, [
388
+ g(r.$slots, "default", {}, void 0, !0)
389
+ ], 2));
390
+ }
391
+ }, xe = /* @__PURE__ */ f(we, [["__scopeId", "data-v-0056c393"]]), E = "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAYAAACqaXHeAAAFSUlEQVR4nOWbW4hVVRzGf2MZKCgOpEmlyURqYSHVQHTRSoryoTISRYUCHxQNs5tQJNqNSiKs7EV8iC6mKGWa40tqmfVSkUo1WSOIXWwyLYsuJs7Xw9qbc2bP2eestfZa55zBD/6c2bP3+q/v+/Za++y9/vu0SKIGWjLbNRv0JwxoNIFGw8aAe4FvgPcic2kIWmpMgRXAg2XbXcCVwJ8xSQVAO3Au8G7NIyXlxSxVxj5JQ6u0a2S0StpRxvXyWm3ydiyR1J1jQLOa0Crp5wzPg5JGuRqwqYrwZjZhew7P76uZUOkiOMpynl0KrLGfllGxHbgxZ9/5wCfk6argynhJxy1HgSRNb+BZHy6p05Lnc5Vy5CUe72CAJF3VIPEHHXnenM1TrYNpDok/rrP46zzES9Kn2Vy1OrrDIfn6OghH0iQP4ZL0qxxHQBpzHTrZGFhsNmZ4CJekbyW1Vcpp2/HDDp3tkjQkgNhs3OMhXJJWVsvrQuAZh053FRSbjfs9hEvS0lq5XYmsdOg8lAlPegiXpIU2+X0IrXYgsdkjf3ms8hD+n8w3mFUfvsReciC0ySP/CPV+qLFFt6RxLn0VOTtPORDb4JB3hPo+1NigW9LZrjqKGICkhxwIvm6Rb4z8xO+Qh3gFMABJDzgQXVMlzxhJh921V81ZFwOQtNiB8CsV2vuKX1uUeygDkLTAgXi5Cb7iV4XgHdIAJM13ELBUUruHcMnclAXhHNoAl+nQk4Qrng7JN4YBSHrMQ5gNXgjNNZYBSFoeWPyKGDxjGhDShEdjcTwz0iJliuXJ5zLP9vuBKcCPQdhUQD1qg8uBhR7t3sGsPEcTD/Urjg5xPH4/MAM4GYFLL9TDgAXAs45txgHrgYHh6fRGreJoUcylWPHkc+AGIhZjY46A+RSvHF2Bqeq4TiFrxBoBdwOvBsz3JXA1EUZCDAOmAW9bHtuThM3XcRQTQk+B27EXD2aKjAN+sDh2AvARMNiDVz4C3lXd6Xh3t7OsbZtMGdsGeyQNDsW7GcQ31IQQ4l2KqKn4M3Jytcm+NB/EhKLiXVaBJGm3pLNq5Jwks7Zvg30W+aIZMMVDfN6ZL2LCniIm+Io/T9IhR/GufbiUwd+qpwE+4m3PfBET1tXDgHPk9mbGVhW/UOW9r5jFCXmsGrmKP+AgvtL6v2/YvqRxQma53Pr1vVjiY6zfLXLo39oE2863OnS+LIL4NGzLcEclzbMxwabTFQ7iH4ko3taEU0l8IGmspJZMOBkwucnEpzHPwoBTkp6QKb0N8zFgpKSuKh39JOkPSf9Kuq2O4tO4y8KAUwm3YTIvU/cxIO9xeCSwG7gwZ/9nwM7kcwKwOegjqh02AtcD/9Q4bjRwHPi90s68l6X3UhKvTHwBbACOYVZ+utx4B8WHwMQMhwGZmAkMp8S/NzJD4gKVfidwn8yFpKcsOiTNlHlvcHQDhn2lSOf2tgrT4e/kc7fMqzd92mdHwEKgEzNsACaX7VucxGhgHXCo6OkLjKnAy8nfncA2YBDwGnAAeB4Y0adVmRsDk0Clm47u5MwvkjRA0tQmOvPZEZDGkoR7RxKSNFvSnOSzV/tKi6JvALOBN5PtLZgixWWYtbtjYU9cFFwDrAW+xvCdBczBXAN+Ad5PD8wakIqfV/a/1ZHJxkIrxoSjyfZFwIuYVegjwC7gZPk1IBV/cbIT+q94gN+AWzHXgu+AWzAmpLgESiPgceAmYDqmGjuI2t+v/QntwFigA1Nt+go4DCUDJmLmSrNd2UNiFHAtZv4fSf8ZuzjabBiKuXPdC/wFp58BfXDa/3r8fz+LAhvK2I1CAAAAAElFTkSuQmCC", Ne = {
392
+ __name: "RdrModal",
393
+ props: {
394
+ modelValue: {
395
+ type: Boolean,
396
+ default: !1
397
+ },
398
+ width: {
399
+ type: String,
400
+ default: "50%"
401
+ },
402
+ height: {
403
+ type: String,
404
+ default: "50%"
405
+ },
406
+ closable: {
407
+ type: Boolean,
408
+ default: !0
409
+ },
410
+ closeOnOverlay: {
411
+ type: Boolean,
412
+ default: !0
413
+ }
414
+ },
415
+ emits: ["update:modelValue"],
416
+ setup(e, { emit: n }) {
417
+ const t = e, r = n, o = N(() => ({
418
+ width: t.width,
419
+ height: t.height
420
+ }));
421
+ function a() {
422
+ t.closeOnOverlay && r("update:modelValue", !1);
423
+ }
424
+ return (c, d) => (u(), R(Z, { to: "body" }, [
425
+ k(D, { name: "zoom-in" }, {
426
+ default: P(() => [
427
+ e.modelValue ? (u(), m("div", {
428
+ key: 0,
429
+ class: "rdr-modal-container",
430
+ onClick: z(a, ["self"])
431
+ }, [
432
+ v("div", {
433
+ class: "rdr-modal",
434
+ style: Q(o.value)
435
+ }, [
436
+ e.closable ? (u(), m("button", {
437
+ key: 0,
438
+ class: "rdr-modal__close",
439
+ onClick: a
440
+ }, [...d[0] || (d[0] = [
441
+ v("img", {
442
+ src: E,
443
+ alt: "Close"
444
+ }, null, -1)
445
+ ])])) : b("", !0),
446
+ g(c.$slots, "default", {}, void 0, !0)
447
+ ], 4)
448
+ ])) : b("", !0)
449
+ ]),
450
+ _: 3
451
+ })
452
+ ]));
453
+ }
454
+ }, Ve = /* @__PURE__ */ f(Ne, [["__scopeId", "data-v-957a7ba2"]]), Ce = { class: "rdr-slider" }, Ie = {
455
+ __name: "RdrSlider",
456
+ props: {
457
+ modelValue: {
458
+ type: Boolean,
459
+ default: !1
460
+ },
461
+ position: {
462
+ type: String,
463
+ default: "right",
464
+ validator: (e) => ["left", "right"].includes(e)
465
+ },
466
+ width: {
467
+ type: String,
468
+ default: "500px"
469
+ },
470
+ closable: {
471
+ type: Boolean,
472
+ default: !0
473
+ }
474
+ },
475
+ emits: ["update:modelValue"],
476
+ setup(e) {
477
+ X((r) => ({
478
+ v24119722: e.width
479
+ }));
480
+ const n = e, t = N(() => ({
481
+ [`rdr-slider__panel--${n.position}`]: !0
482
+ }));
483
+ return (r, o) => (u(), m("div", Ce, [
484
+ k(D, { name: "slide-in" }, {
485
+ default: P(() => [
486
+ e.modelValue ? (u(), m("div", {
487
+ key: 0,
488
+ class: V(["rdr-slider__panel", t.value])
489
+ }, [
490
+ e.closable ? (u(), m("button", {
491
+ key: 0,
492
+ class: "rdr-slider__close",
493
+ onClick: o[0] || (o[0] = (a) => r.$emit("update:modelValue", !1))
494
+ }, [...o[1] || (o[1] = [
495
+ v("img", {
496
+ src: E,
497
+ alt: "Close"
498
+ }, null, -1)
499
+ ])])) : b("", !0),
500
+ g(r.$slots, "default", {}, void 0, !0)
501
+ ], 2)) : b("", !0)
502
+ ]),
503
+ _: 3
504
+ })
505
+ ]));
506
+ }
507
+ }, De = /* @__PURE__ */ f(Ie, [["__scopeId", "data-v-d5967e05"]]), Pe = {
508
+ __name: "FadeIn",
509
+ props: {
510
+ duration: {
511
+ type: Number,
512
+ default: 300
513
+ }
514
+ },
515
+ setup(e) {
516
+ return X((n) => ({
517
+ ccf5c60c: e.duration + "ms"
518
+ })), (n, t) => (u(), R(D, { name: "fade-in" }, {
519
+ default: P(() => [
520
+ g(n.$slots, "default", {}, void 0, !0)
521
+ ]),
522
+ _: 3
523
+ }));
524
+ }
525
+ }, Re = /* @__PURE__ */ f(Pe, [["__scopeId", "data-v-859810d4"]]), Xe = {
526
+ __name: "ZoomIn",
527
+ props: {
528
+ duration: {
529
+ type: Number,
530
+ default: 300
531
+ }
532
+ },
533
+ setup(e) {
534
+ return X((n) => ({
535
+ v778dca00: e.duration + "ms"
536
+ })), (n, t) => (u(), R(D, { name: "zoom-in" }, {
537
+ default: P(() => [
538
+ g(n.$slots, "default", {}, void 0, !0)
539
+ ]),
540
+ _: 3
541
+ }));
542
+ }
543
+ }, Qe = /* @__PURE__ */ f(Xe, [["__scopeId", "data-v-77252994"]]), ke = {
544
+ __name: "SlideIn",
545
+ props: {
546
+ duration: {
547
+ type: Number,
548
+ default: 300
549
+ },
550
+ direction: {
551
+ type: String,
552
+ default: "bottom",
553
+ validator: (e) => ["top", "bottom", "left", "right"].includes(e)
554
+ },
555
+ distance: {
556
+ type: Number,
557
+ default: 200
558
+ }
559
+ },
560
+ setup(e) {
561
+ return X((n) => ({
562
+ v46383cb8: e.duration + "ms",
563
+ v41085e44: e.direction === "bottom" ? `translateY(${e.distance}px)` : e.direction === "top" ? `translateY(-${e.distance}px)` : e.direction === "right" ? `translateX(${e.distance}px)` : `translateX(-${e.distance}px)`
564
+ })), (n, t) => (u(), R(D, { name: "slide-in" }, {
565
+ default: P(() => [
566
+ g(n.$slots, "default", {}, void 0, !0)
567
+ ]),
568
+ _: 3
569
+ }));
570
+ }
571
+ }, Ge = /* @__PURE__ */ f(ke, [["__scopeId", "data-v-76e3a6cb"]]), H = {
572
+ colors: {
573
+ primary: "#B62A2A",
574
+ primaryDark: "#B21214",
575
+ text: "#fafafa",
576
+ textMuted: "rgba(250, 250, 250, 0.7)",
577
+ background: "rgba(33, 33, 33, 0.3)",
578
+ overlay: "rgba(0, 0, 0, 0.5)"
579
+ },
580
+ fonts: {
581
+ decorative: "Chinese Rocks, sans-serif",
582
+ title: "RDR Lino Regular, serif",
583
+ body: "Hapna Slab Serif, serif"
584
+ },
585
+ fontSizes: {
586
+ xs: "16px",
587
+ sm: "18px",
588
+ md: "20px",
589
+ lg: "24px",
590
+ xl: "32px"
591
+ },
592
+ spacing: {
593
+ xs: "5px",
594
+ sm: "10px",
595
+ md: "15px",
596
+ lg: "25px",
597
+ xl: "50px"
598
+ },
599
+ transitions: {
600
+ fast: "0.15s ease-out",
601
+ normal: "0.3s ease-out"
602
+ }
603
+ }, i = I({ ...H });
604
+ function Ee() {
605
+ const e = N(() => i.value);
606
+ function n(a) {
607
+ i.value = {
608
+ ...i.value,
609
+ ...a,
610
+ colors: { ...i.value.colors, ...a.colors || {} },
611
+ fonts: { ...i.value.fonts, ...a.fonts || {} },
612
+ fontSizes: { ...i.value.fontSizes, ...a.fontSizes || {} },
613
+ spacing: { ...i.value.spacing, ...a.spacing || {} },
614
+ transitions: { ...i.value.transitions, ...a.transitions || {} }
615
+ }, o();
616
+ }
617
+ function t() {
618
+ i.value = { ...H }, o();
619
+ }
620
+ function r(a) {
621
+ return a.split(".").reduce((c, d) => c == null ? void 0 : c[d], i.value);
622
+ }
623
+ function o() {
624
+ const a = document.documentElement;
625
+ a.style.setProperty("--rdr-color-primary", i.value.colors.primary), a.style.setProperty("--rdr-color-primary-dark", i.value.colors.primaryDark), a.style.setProperty("--rdr-color-text", i.value.colors.text), a.style.setProperty("--rdr-color-text-muted", i.value.colors.textMuted), a.style.setProperty("--rdr-color-background", i.value.colors.background), a.style.setProperty("--rdr-color-overlay", i.value.colors.overlay), a.style.setProperty("--rdr-font-decorative", i.value.fonts.decorative), a.style.setProperty("--rdr-font-title", i.value.fonts.title), a.style.setProperty("--rdr-font-body", i.value.fonts.body), Object.entries(i.value.fontSizes).forEach(([c, d]) => {
626
+ a.style.setProperty(`--rdr-font-size-${c}`, d);
627
+ }), Object.entries(i.value.spacing).forEach(([c, d]) => {
628
+ a.style.setProperty(`--rdr-spacing-${c}`, d);
629
+ }), a.style.setProperty("--rdr-transition-fast", i.value.transitions.fast), a.style.setProperty("--rdr-transition-normal", i.value.transitions.normal);
630
+ }
631
+ return {
632
+ theme: e,
633
+ updateTheme: n,
634
+ resetTheme: t,
635
+ getThemeValue: r
636
+ };
637
+ }
638
+ function He() {
639
+ const e = I(!1);
640
+ async function n(l, s = 300) {
641
+ return e.value = !0, await l(), new Promise((A) => {
642
+ setTimeout(() => {
643
+ e.value = !1, A();
644
+ }, s);
645
+ });
646
+ }
647
+ function t(l, s = 300) {
648
+ return new Promise((A) => {
649
+ l.style.opacity = "0", l.style.transition = `opacity ${s}ms ease-out`, requestAnimationFrame(() => {
650
+ l.style.opacity = "1", setTimeout(A, s);
651
+ });
652
+ });
653
+ }
654
+ function r(l, s = 300) {
655
+ return new Promise((A) => {
656
+ l.style.opacity = "1", l.style.transition = `opacity ${s}ms ease-out`, requestAnimationFrame(() => {
657
+ l.style.opacity = "0", setTimeout(A, s);
658
+ });
659
+ });
660
+ }
661
+ function o(l, s = 300) {
662
+ return new Promise((A) => {
663
+ l.style.opacity = "0", l.style.transform = "scale(0.8)", l.style.transition = `all ${s}ms ease-out`, requestAnimationFrame(() => {
664
+ l.style.opacity = "1", l.style.transform = "scale(1)", setTimeout(A, s);
665
+ });
666
+ });
667
+ }
668
+ function a(l, s = 300) {
669
+ return new Promise((A) => {
670
+ l.style.opacity = "1", l.style.transform = "scale(1)", l.style.transition = `all ${s}ms ease-out`, requestAnimationFrame(() => {
671
+ l.style.opacity = "0", l.style.transform = "scale(0.8)", setTimeout(A, s);
672
+ });
673
+ });
674
+ }
675
+ function c(l, s = 300) {
676
+ return new Promise((A) => {
677
+ l.style.transform = "translateY(200px)", l.style.transition = `transform ${s}ms ease-out`, requestAnimationFrame(() => {
678
+ l.style.transform = "translateY(0)", setTimeout(A, s);
679
+ });
680
+ });
681
+ }
682
+ function d(l, s = 300) {
683
+ return new Promise((A) => {
684
+ l.style.transform = "translateY(0)", l.style.transition = `transform ${s}ms ease-out`, requestAnimationFrame(() => {
685
+ l.style.transform = "translateY(200px)", setTimeout(A, s);
686
+ });
687
+ });
688
+ }
689
+ function C(l, s, A = 300) {
690
+ return new Promise((w) => {
691
+ l.classList.add(s), setTimeout(() => {
692
+ l.classList.remove(s), w();
693
+ }, A);
694
+ });
695
+ }
696
+ return {
697
+ isAnimating: e,
698
+ animate: n,
699
+ fadeIn: t,
700
+ fadeOut: r,
701
+ zoomIn: o,
702
+ zoomOut: a,
703
+ slideInFromBottom: c,
704
+ slideOutToBottom: d,
705
+ addAnimationClass: C
706
+ };
707
+ }
708
+ const Fe = {
709
+ install(e) {
710
+ e.component("RdrButton", M), e.component("RdrInput", Y), e.component("RdrTextarea", J), e.component("RdrCard", $), e.component("RdrHeader", se), e.component("RdrDivider", de), e.component("RdrSliderInput", pe), e.component("RdrNumberInput", be), e.component("RdrPanel", xe), e.component("RdrModal", Ve), e.component("RdrSlider", De), e.component("FadeIn", Re), e.component("ZoomIn", Qe), e.component("SlideIn", Ge);
711
+ }
712
+ };
713
+ export {
714
+ Re as FadeIn,
715
+ M as RdrButton,
716
+ $ as RdrCard,
717
+ de as RdrDivider,
718
+ se as RdrHeader,
719
+ Y as RdrInput,
720
+ Ve as RdrModal,
721
+ be as RdrNumberInput,
722
+ xe as RdrPanel,
723
+ De as RdrSlider,
724
+ pe as RdrSliderInput,
725
+ J as RdrTextarea,
726
+ Ge as SlideIn,
727
+ Qe as ZoomIn,
728
+ Fe as default,
729
+ He as useRdrAnimations,
730
+ Ee as useRdrTheme
731
+ };