quirk-ui 0.0.44 → 0.0.46
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/assets/index31.css
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
:
|
|
1
|
+
._carousel_1ijmg_1{width:100%}@media (max-width: 767px){._carousel_1ijmg_1{padding:0 2rem}}._trackContainer_1ijmg_9{overflow:hidden;width:100%}@media (max-width: 767px){._trackContainer_1ijmg_9{overflow:visible}}._track_1ijmg_9{display:flex;transition:transform .3s ease;will-change:transform}._page_1ijmg_24{display:flex;gap:var(--spacing-md);padding:0 var(--spacing-sm)}._controls_1ijmg_30{display:flex;justify-content:space-between;align-items:center;margin-top:var(--spacing-md);padding:0 var(--spacing-md);width:100%}@media (max-width: 767px){._controls_1ijmg_30{width:var(--card-width);margin-left:auto;margin-right:auto}}._indicators_1ijmg_47{display:flex;flex-wrap:wrap;max-width:125px;gap:var(--spacing-sm)}._indicator_1ijmg_47{width:10px;height:10px;border-radius:50%;background-color:#e0e0e0;border:none;cursor:pointer;transition:background-color .3s}._indicator_1ijmg_47._active_1ijmg_64{background-color:var(--color-primary)}._buttons_1ijmg_68{display:flex;gap:var(--spacing-md)}._prev_1ijmg_73._disabled_1ijmg_73,._next_1ijmg_74._disabled_1ijmg_73{opacity:.5;pointer-events:none}._buttons_1ijmg_68 button:not(._disabled_1ijmg_73):hover{background-color:var(--color-primary);color:#fff}._prev_1ijmg_73,._next_1ijmg_74{background-color:#e0e0e0;color:var(--color-text-primary);border:none;padding:var(--spacing-sm);cursor:pointer;transition:background-color .3s,color .3s;border-radius:50%;width:40px;height:40px;display:flex;justify-content:center;align-items:center}
|
|
@@ -1,21 +1,28 @@
|
|
|
1
1
|
import { jsxs as t, jsx as s } from "react/jsx-runtime";
|
|
2
|
-
import { d as
|
|
3
|
-
import { Carousel as
|
|
2
|
+
import { d as a, a as i, i as o, r as n, g as l, s as c } from "../../vi.ClIskdbk-CZ8iFAMK.js";
|
|
3
|
+
import { Carousel as d } from "./index.js";
|
|
4
4
|
import "../../index-BBIdMcpm.js";
|
|
5
|
-
|
|
6
|
-
"
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
5
|
+
a("Carousel", () => {
|
|
6
|
+
const r = Array.from({ length: 6 }, (m, e) => /* @__PURE__ */ t("div", { "data-testid": "carousel-item", children: [
|
|
7
|
+
"Item ",
|
|
8
|
+
e + 1
|
|
9
|
+
] }, e));
|
|
10
10
|
beforeEach(() => {
|
|
11
11
|
Object.defineProperty(window, "innerWidth", {
|
|
12
12
|
writable: !0,
|
|
13
13
|
configurable: !0,
|
|
14
14
|
value: 1024
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
15
|
+
}), i(() => {
|
|
16
|
+
window.dispatchEvent(new Event("resize"));
|
|
17
|
+
}), global.ResizeObserver = class {
|
|
18
|
+
observe() {
|
|
19
|
+
}
|
|
20
|
+
unobserve() {
|
|
21
|
+
}
|
|
22
|
+
disconnect() {
|
|
23
|
+
}
|
|
24
|
+
};
|
|
25
|
+
}), o("renders without crashing", () => {
|
|
26
|
+
n(/* @__PURE__ */ s(d, { items: r, itemsPerPage: 3, itemsPerRow: 1 })), l(c.getAllByTestId("carousel-item").length).toBeGreaterThan(0);
|
|
20
27
|
});
|
|
21
28
|
});
|
|
@@ -1,113 +1,129 @@
|
|
|
1
|
-
import { jsxs as
|
|
2
|
-
import { useState as
|
|
3
|
-
import { A as
|
|
1
|
+
import { jsxs as f, jsx as r } from "react/jsx-runtime";
|
|
2
|
+
import { useState as v, useRef as j, useEffect as b } from "react";
|
|
3
|
+
import { A as y } from "../../arrow-left-BIJvHwNQ.js";
|
|
4
4
|
import { A as T } from "../../arrow-right-QEwnX3Sk.js";
|
|
5
|
-
import '../../assets/index31.css';const
|
|
6
|
-
carousel:
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
controls:
|
|
11
|
-
indicators:
|
|
12
|
-
indicator:
|
|
13
|
-
active:
|
|
14
|
-
buttons:
|
|
15
|
-
prev:
|
|
16
|
-
disabled:
|
|
17
|
-
next:
|
|
5
|
+
import '../../assets/index31.css';const W = "_carousel_1ijmg_1", E = "_trackContainer_1ijmg_9", L = "_track_1ijmg_9", X = "_page_1ijmg_24", D = "_controls_1ijmg_30", G = "_indicators_1ijmg_47", O = "_indicator_1ijmg_47", S = "_active_1ijmg_64", q = "_buttons_1ijmg_68", B = "_prev_1ijmg_73", F = "_disabled_1ijmg_73", H = "_next_1ijmg_74", t = {
|
|
6
|
+
carousel: W,
|
|
7
|
+
trackContainer: E,
|
|
8
|
+
track: L,
|
|
9
|
+
page: X,
|
|
10
|
+
controls: D,
|
|
11
|
+
indicators: G,
|
|
12
|
+
indicator: O,
|
|
13
|
+
active: S,
|
|
14
|
+
buttons: q,
|
|
15
|
+
prev: B,
|
|
16
|
+
disabled: F,
|
|
17
|
+
next: H
|
|
18
18
|
};
|
|
19
|
-
function
|
|
20
|
-
items:
|
|
21
|
-
itemsPerPage:
|
|
22
|
-
itemsPerRow:
|
|
23
|
-
autoPlay:
|
|
24
|
-
autoPlayInterval:
|
|
25
|
-
className:
|
|
19
|
+
function V({
|
|
20
|
+
items: x,
|
|
21
|
+
itemsPerPage: u = 3,
|
|
22
|
+
itemsPerRow: N = 3,
|
|
23
|
+
autoPlay: i = !1,
|
|
24
|
+
autoPlayInterval: $ = 3e3,
|
|
25
|
+
className: k
|
|
26
26
|
}) {
|
|
27
|
-
const [
|
|
28
|
-
const
|
|
29
|
-
for (let o = 0; o < e.length; o +=
|
|
30
|
-
|
|
31
|
-
return
|
|
32
|
-
}
|
|
33
|
-
|
|
27
|
+
const [c, l] = v(0), [a, C] = v(0), [d, R] = v(u), h = j(null), g = j(null), I = (e, n) => {
|
|
28
|
+
const s = [];
|
|
29
|
+
for (let o = 0; o < e.length; o += n)
|
|
30
|
+
s.push(e.slice(o, o + n));
|
|
31
|
+
return s;
|
|
32
|
+
};
|
|
33
|
+
b(() => {
|
|
34
34
|
const e = () => {
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
q(s), N(s ? 1 : 3);
|
|
35
|
+
const n = window.innerWidth < 768;
|
|
36
|
+
R(n ? 1 : u);
|
|
38
37
|
};
|
|
39
38
|
return e(), window.addEventListener("resize", e), () => window.removeEventListener("resize", e);
|
|
39
|
+
}, [u]);
|
|
40
|
+
const m = Math.ceil(d / N), w = I(x, d), _ = w.length;
|
|
41
|
+
b(() => {
|
|
42
|
+
const e = new ResizeObserver((n) => {
|
|
43
|
+
for (let s of n)
|
|
44
|
+
s.contentRect && (C(s.contentRect.width), l(0));
|
|
45
|
+
});
|
|
46
|
+
return h.current && e.observe(h.current), () => e.disconnect();
|
|
40
47
|
}, []);
|
|
41
|
-
const
|
|
42
|
-
(
|
|
43
|
-
},
|
|
44
|
-
(
|
|
45
|
-
},
|
|
46
|
-
|
|
47
|
-
};
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
}), [
|
|
51
|
-
|
|
52
|
-
return /* @__PURE__ */ p("div", { className: `${j ?? ""} ${t.carousel}`, children: [
|
|
53
|
-
/* @__PURE__ */ i(
|
|
48
|
+
const p = () => {
|
|
49
|
+
l((e) => Math.min(e + 1, _ - 1));
|
|
50
|
+
}, z = () => {
|
|
51
|
+
l((e) => Math.max(e - 1, 0));
|
|
52
|
+
}, A = (e) => {
|
|
53
|
+
l(e);
|
|
54
|
+
}, M = () => a ? `translateX(-${c * a}px)` : "translateX(0px)";
|
|
55
|
+
return b(() => (i && (g.current = setInterval(p, $)), () => {
|
|
56
|
+
g.current && clearInterval(g.current);
|
|
57
|
+
}), [i, $, p]), /* @__PURE__ */ f("div", { className: `${k ?? ""} ${t.carousel}`, ref: h, children: [
|
|
58
|
+
/* @__PURE__ */ r(
|
|
54
59
|
"div",
|
|
55
60
|
{
|
|
56
|
-
className: t.
|
|
57
|
-
style: {
|
|
58
|
-
|
|
59
|
-
transform: M()
|
|
60
|
-
},
|
|
61
|
-
role: "list",
|
|
62
|
-
children: g.map((e, s) => /* @__PURE__ */ i(
|
|
61
|
+
className: t.trackContainer,
|
|
62
|
+
style: { maxWidth: `${a}px` },
|
|
63
|
+
children: /* @__PURE__ */ r(
|
|
63
64
|
"div",
|
|
64
65
|
{
|
|
65
|
-
className: t.
|
|
66
|
-
style:
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
66
|
+
className: t.track,
|
|
67
|
+
style: { width: `${_ * 100}%`, transform: M() },
|
|
68
|
+
children: w.map((e, n) => /* @__PURE__ */ r(
|
|
69
|
+
"div",
|
|
70
|
+
{
|
|
71
|
+
className: t.page,
|
|
72
|
+
style: {
|
|
73
|
+
display: m > 1 ? "grid" : "flex",
|
|
74
|
+
gridTemplateColumns: `repeat(${Math.ceil(
|
|
75
|
+
d / m
|
|
76
|
+
)}, 1fr)`,
|
|
77
|
+
gridTemplateRows: `repeat(${m}, auto)`,
|
|
78
|
+
width: `${a}px`
|
|
79
|
+
},
|
|
80
|
+
children: e.map((s, o) => /* @__PURE__ */ r(
|
|
81
|
+
"div",
|
|
82
|
+
{
|
|
83
|
+
className: t.slide,
|
|
84
|
+
style: {
|
|
85
|
+
width: `${a / m - 16}px`
|
|
86
|
+
},
|
|
87
|
+
children: s
|
|
88
|
+
},
|
|
89
|
+
o
|
|
90
|
+
))
|
|
91
|
+
},
|
|
92
|
+
n
|
|
93
|
+
))
|
|
94
|
+
}
|
|
95
|
+
)
|
|
80
96
|
}
|
|
81
97
|
),
|
|
82
|
-
|
|
83
|
-
/* @__PURE__ */
|
|
98
|
+
/* @__PURE__ */ f("div", { className: t.controls, children: [
|
|
99
|
+
/* @__PURE__ */ r("div", { className: t.indicators, children: Array.from({ length: _ }).map((e, n) => /* @__PURE__ */ r(
|
|
84
100
|
"button",
|
|
85
101
|
{
|
|
86
|
-
className: `${t.indicator} ${
|
|
87
|
-
onClick: () =>
|
|
88
|
-
"aria-label": `Go to group ${
|
|
102
|
+
className: `${t.indicator} ${n === c ? t.active : ""}`,
|
|
103
|
+
onClick: () => A(n),
|
|
104
|
+
"aria-label": `Go to group ${n + 1}`
|
|
89
105
|
},
|
|
90
|
-
|
|
106
|
+
n
|
|
91
107
|
)) }),
|
|
92
|
-
/* @__PURE__ */
|
|
93
|
-
/* @__PURE__ */
|
|
108
|
+
/* @__PURE__ */ f("div", { className: t.buttons, children: [
|
|
109
|
+
/* @__PURE__ */ r(
|
|
94
110
|
"button",
|
|
95
111
|
{
|
|
96
|
-
className: `${t.prev} ${!r && n === 0 ? t.disabled : ""}`,
|
|
97
|
-
onClick: C,
|
|
98
112
|
"aria-label": "Previous slide",
|
|
99
|
-
|
|
100
|
-
|
|
113
|
+
className: `${t.prev} ${!i && c === 0 ? t.disabled : ""}`,
|
|
114
|
+
onClick: z,
|
|
115
|
+
disabled: !i && c === 0,
|
|
116
|
+
children: /* @__PURE__ */ r(y, { size: 36 })
|
|
101
117
|
}
|
|
102
118
|
),
|
|
103
|
-
/* @__PURE__ */
|
|
119
|
+
/* @__PURE__ */ r(
|
|
104
120
|
"button",
|
|
105
121
|
{
|
|
106
|
-
className: `${t.next} ${!r && n === c - 1 ? t.disabled : ""}`,
|
|
107
|
-
onClick: u,
|
|
108
122
|
"aria-label": "Next slide",
|
|
109
|
-
|
|
110
|
-
|
|
123
|
+
className: `${t.next} ${!i && c >= _ - 1 ? t.disabled : ""}`,
|
|
124
|
+
onClick: p,
|
|
125
|
+
disabled: !i && c >= x.length - d,
|
|
126
|
+
children: /* @__PURE__ */ r(T, { size: 36 })
|
|
111
127
|
}
|
|
112
128
|
)
|
|
113
129
|
] })
|
|
@@ -115,5 +131,5 @@ function Z({
|
|
|
115
131
|
] });
|
|
116
132
|
}
|
|
117
133
|
export {
|
|
118
|
-
|
|
134
|
+
V as Carousel
|
|
119
135
|
};
|
package/dist/styles.css
CHANGED
|
@@ -28,7 +28,7 @@ ul._list_4w9h5_1{list-style-type:none;padding:0;margin:0}ol._list_4w9h5_1{list-s
|
|
|
28
28
|
._notification_1txoc_1{display:flex;align-items:center;padding:var(--spacing-md);background-color:var(--color-secondary);color:var(--color-text-primaray);box-shadow:0 4px 8px #0000001a;border-radius:var(--radius-md);font-size:var(--font-size-md);font-weight:var(--font-weight-semibold);gap:var(--spacing-sm);animation:_slideIn_1txoc_1 .3s ease forwards;opacity:1;transform-origin:right center;width:fit-content}._enter_1txoc_18{opacity:1;transform:translate(0)}._exiting_1txoc_23{animation:_slideOut_1txoc_1 .3s ease forwards}._info_1txoc_27{background-color:var(--color-info-bg);color:var(--color-info-text)}._success_1txoc_32{background-color:var(--color-success-bg);color:var(--color-success-text)}._warning_1txoc_37{background-color:var(--color-warning-bg);color:var(--color-warning-text)}._error_1txoc_42{background-color:var(--color-error-bg);color:var(--color-error-text)}._closeButton_1txoc_47{background:none;border:none;cursor:pointer;color:#fff;padding:0;margin-left:auto;display:flex;align-items:center}@keyframes _slideIn_1txoc_1{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}@keyframes _slideOut_1txoc_1{0%{transform:translate(0);opacity:1}to{transform:translate(100%);opacity:0}}
|
|
29
29
|
._container_61msx_1{position:fixed;bottom:1rem;right:1rem;display:flex;flex-direction:column;justify-content:flex-end;align-items:flex-end;gap:.5rem;z-index:1000}
|
|
30
30
|
._progressBarContainer_a1m8u_1{display:flex;align-items:center;justify-content:center;gap:.25rem;width:100%}._progressBar_a1m8u_1{flex:1;height:12px;background-color:#f0f0f0;border-radius:4px;overflow:hidden;position:relative}._fill_a1m8u_18{height:100%;transition:width .3s ease;display:flex;align-items:center;justify-content:center;color:#fff;font-weight:700;border-radius:4px}._primary_a1m8u_29 ._fill_a1m8u_18{background-color:var(--color-primary)}._success_a1m8u_33 ._fill_a1m8u_18{background-color:var(--color-success)}._warning_a1m8u_37 ._fill_a1m8u_18{background-color:var(--color-warning)}._danger_a1m8u_41 ._fill_a1m8u_18{background-color:var(--color-error)}._label_a1m8u_45{flex:.1;position:relative;width:auto;text-align:center;color:var(--color-text-primary);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold)}
|
|
31
|
-
:
|
|
31
|
+
._carousel_1ijmg_1{width:100%}@media (max-width: 767px){._carousel_1ijmg_1{padding:0 2rem}}._trackContainer_1ijmg_9{overflow:hidden;width:100%}@media (max-width: 767px){._trackContainer_1ijmg_9{overflow:visible}}._track_1ijmg_9{display:flex;transition:transform .3s ease;will-change:transform}._page_1ijmg_24{display:flex;gap:var(--spacing-md);padding:0 var(--spacing-sm)}._controls_1ijmg_30{display:flex;justify-content:space-between;align-items:center;margin-top:var(--spacing-md);padding:0 var(--spacing-md);width:100%}@media (max-width: 767px){._controls_1ijmg_30{width:var(--card-width);margin-left:auto;margin-right:auto}}._indicators_1ijmg_47{display:flex;flex-wrap:wrap;max-width:125px;gap:var(--spacing-sm)}._indicator_1ijmg_47{width:10px;height:10px;border-radius:50%;background-color:#e0e0e0;border:none;cursor:pointer;transition:background-color .3s}._indicator_1ijmg_47._active_1ijmg_64{background-color:var(--color-primary)}._buttons_1ijmg_68{display:flex;gap:var(--spacing-md)}._prev_1ijmg_73._disabled_1ijmg_73,._next_1ijmg_74._disabled_1ijmg_73{opacity:.5;pointer-events:none}._buttons_1ijmg_68 button:not(._disabled_1ijmg_73):hover{background-color:var(--color-primary);color:#fff}._prev_1ijmg_73,._next_1ijmg_74{background-color:#e0e0e0;color:var(--color-text-primary);border:none;padding:var(--spacing-sm);cursor:pointer;transition:background-color .3s,color .3s;border-radius:50%;width:40px;height:40px;display:flex;justify-content:center;align-items:center}
|
|
32
32
|
._drawer_55xty_1{position:fixed;background-color:var(--color-background);transition:transform .3s ease-in-out;z-index:1000;width:300px;height:100%;box-shadow:0 0 10px #00000026;padding:var(--spacing-md)}._right_55xty_12{top:0;right:0;transform:translate(100%)}._left_55xty_18{top:0;left:0;transform:translate(-100%)}._top_55xty_24{top:0;left:0;width:100%;height:auto;transform:translateY(-100%)}._bottom_55xty_32{bottom:0;left:0;width:100%;height:auto;transform:translateY(100%)}._open_55xty_40._right_55xty_12,._open_55xty_40._left_55xty_18{transform:translate(0)}._open_55xty_40._top_55xty_24,._open_55xty_40._bottom_55xty_32{transform:translateY(0)}._overlay_55xty_50{position:fixed;top:0;right:0;bottom:0;left:0;background-color:#0000004d;opacity:0;pointer-events:none;transition:opacity .3s ease-in-out;z-index:999}._overlay_55xty_50._show_55xty_60{opacity:1;pointer-events:all}
|
|
33
33
|
._tabs_f06du_1{display:flex;flex-direction:column;width:100%}._tabsList_f06du_7{display:flex;border-bottom:2px solid var(--color-border)}._left_f06du_12{justify-content:flex-start}._center_f06du_16{justify-content:center}._right_f06du_20{justify-content:flex-end}._tabsTrigger_f06du_24{padding:var(--spacing-md);border:none;border-bottom:2px solid transparent;background:none;cursor:pointer;color:var(--color-muted);font-weight:var(--font-weight-semibold);font-size:var(--font-size-md);transition:color .3s ease,border-color .3s ease;position:relative;top:2px}._tabsTrigger_f06du_24._active_f06du_38{border-color:var(--color-primary);color:var(--color-primary)}._tabsPanelWrapper_f06du_43{position:relative;min-height:100px}._tabsPanel_f06du_43{animation:_fadeSlide_f06du_1 .3s ease both;position:absolute;width:100%;top:0;left:0;padding:var(--spacing-md);color:var(--color-text-primary)}@keyframes _fadeSlide_f06du_1{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}
|
|
34
34
|
._breadcrumbs_1nbgu_1{display:block;font-size:var(--font-size-sm);line-height:1.5}._list_1nbgu_7{display:flex;flex-wrap:wrap;list-style:none;padding:0;margin:0}._item_1nbgu_15{display:flex;align-items:center}._separator_1nbgu_20{margin:0 var(--spacing-xs);color:var(--color-muted)}._link_1nbgu_25{color:var(--color-muted);text-decoration:none;transition:color .3s ease}._link_1nbgu_25:hover{color:var(--color-primary)}._label_1nbgu_35{color:var(--color-muted)}._active_1nbgu_39{font-weight:var(--font-weight-bold);color:var(--color-primary)}
|