@pathscale/ui 0.0.1 → 0.0.2
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/Accordion-nwuRbRRw.d.ts +27 -0
- package/dist/Checkbox-BjaweaOH.d.ts +40 -0
- package/dist/Pagination-BlrjElGg.d.ts +43 -0
- package/dist/Progress-a616LgE0.d.ts +5 -0
- package/dist/Select-CP-TUHJv.d.ts +44 -0
- package/dist/Switch-3IXS_68H.d.ts +72 -0
- package/dist/Tabs-BNR3p92D.d.ts +42 -0
- package/dist/Tag-BPrhn-Ne.d.ts +42 -0
- package/dist/Tooltip-BfPongoz.d.ts +53 -0
- package/dist/Upload-BrFuZ4JA.d.ts +39 -0
- package/dist/chunk/3IHANYRN.js +98 -0
- package/dist/chunk/4TWLQ3IA.js +103 -0
- package/dist/chunk/6SBH3KSM.jsx +96 -0
- package/dist/chunk/CJZGTNJZ.js +115 -0
- package/dist/chunk/DBQ7IOPU.js +189 -0
- package/dist/chunk/DNTGSCVF.jsx +100 -0
- package/dist/chunk/ELRAUORW.jsx +179 -0
- package/dist/chunk/FPUQ25SO.js +137 -0
- package/dist/chunk/GLEAR2TS.jsx +160 -0
- package/dist/chunk/KV6LTJHI.jsx +175 -0
- package/dist/chunk/LI3HCFL7.jsx +132 -0
- package/dist/chunk/MMTAND25.jsx +126 -0
- package/dist/chunk/MXG3MBEN.jsx +148 -0
- package/dist/chunk/NZKPDBTE.js +118 -0
- package/dist/chunk/P2L6LFLS.js +144 -0
- package/dist/chunk/QLESLIWS.jsx +110 -0
- package/dist/chunk/QNOJ6PCD.js +278 -0
- package/dist/chunk/QONDPQ2I.jsx +105 -0
- package/dist/chunk/S3ZDSQSV.js +98 -0
- package/dist/chunk/V6Y5E7BL.js +133 -0
- package/dist/chunk/WCBMW2TP.jsx +203 -0
- package/dist/chunk/WOT36Q7O.js +166 -0
- package/dist/components/Progress/index.d.ts +2 -3
- package/dist/components/Progress/index.js +1 -278
- package/dist/components/Progress/index.jsx +7 -194
- package/dist/components/accordion/index.d.ts +5 -24
- package/dist/components/accordion/index.js +1 -118
- package/dist/components/accordion/index.jsx +3 -100
- package/dist/components/breadcrumb/index.d.ts +2 -2
- package/dist/components/breadcrumb/index.js +1 -133
- package/dist/components/breadcrumb/index.jsx +4 -120
- package/dist/components/checkbox/index.d.ts +5 -37
- package/dist/components/checkbox/index.js +1 -137
- package/dist/components/checkbox/index.jsx +3 -143
- package/dist/components/pagination/index.d.ts +5 -40
- package/dist/components/pagination/index.js +1 -189
- package/dist/components/pagination/index.jsx +3 -174
- package/dist/components/select/index.d.ts +5 -41
- package/dist/components/select/index.js +1 -98
- package/dist/components/select/index.jsx +3 -91
- package/dist/components/switch/index.d.ts +5 -69
- package/dist/components/switch/index.js +1 -144
- package/dist/components/switch/index.jsx +3 -155
- package/dist/components/tabs/index.d.ts +5 -39
- package/dist/components/tabs/index.js +1 -166
- package/dist/components/tabs/index.jsx +3 -170
- package/dist/components/tag/index.d.ts +5 -39
- package/dist/components/tag/index.js +1 -115
- package/dist/components/tag/index.jsx +3 -127
- package/dist/components/tooltip/index.d.ts +5 -50
- package/dist/components/tooltip/index.js +1 -103
- package/dist/components/tooltip/index.jsx +3 -95
- package/dist/components/upload/index.d.ts +5 -36
- package/dist/components/upload/index.js +1 -98
- package/dist/components/upload/index.jsx +3 -105
- package/dist/index.d.ts +11 -0
- package/dist/index.js +12 -1
- package/dist/index.jsx +47 -1
- package/package.json +1 -1
|
@@ -0,0 +1,278 @@
|
|
|
1
|
+
import { cva } from './HKS7ET6T.js';
|
|
2
|
+
import { template, insert, effect, className, createComponent } from 'solid-js/web';
|
|
3
|
+
import { Show } from 'solid-js';
|
|
4
|
+
|
|
5
|
+
// src/components/Progress/ProgressValue.styles.ts
|
|
6
|
+
var progressWrapper = cva("mt-4 w-full max-w-md");
|
|
7
|
+
var progressBar = cva("w-full h-5 relative overflow-hidden rounded-lg bg-gray-200");
|
|
8
|
+
var progressFill = cva("h-full transition-all duration-300", {
|
|
9
|
+
variants: {
|
|
10
|
+
color: {
|
|
11
|
+
danger: "bg-red-500",
|
|
12
|
+
success: "bg-green-500",
|
|
13
|
+
info: "bg-blue-500",
|
|
14
|
+
warning: "bg-yellow-500",
|
|
15
|
+
default: "bg-gray-500"
|
|
16
|
+
}
|
|
17
|
+
},
|
|
18
|
+
defaultVariants: {
|
|
19
|
+
color: "default"
|
|
20
|
+
}
|
|
21
|
+
});
|
|
22
|
+
var progressLabel = cva("mt-2 text-right text-sm text-gray-700");
|
|
23
|
+
var progressVariants = cva(
|
|
24
|
+
[
|
|
25
|
+
"flex items-center justify-center mx-1",
|
|
26
|
+
"font-medium outline-none select-none transition active:transition-none",
|
|
27
|
+
"not-disabled:cursor-pointer",
|
|
28
|
+
"disabled:cursor-not-allowed disabled:opacity-25",
|
|
29
|
+
"aria-busy:cursor-wait"
|
|
30
|
+
],
|
|
31
|
+
{
|
|
32
|
+
variants: {
|
|
33
|
+
size: {
|
|
34
|
+
sm: "size-8 text-sm",
|
|
35
|
+
md: "size-16 text-base",
|
|
36
|
+
lg: "size-24 text-lg"
|
|
37
|
+
},
|
|
38
|
+
shape: {
|
|
39
|
+
circle: "rounded-full overflow-hidden",
|
|
40
|
+
rounded: "rounded-lg overflow-hidden"
|
|
41
|
+
},
|
|
42
|
+
variant: {
|
|
43
|
+
filled: "text-gray-800",
|
|
44
|
+
outlined: "border-2 border-gray-300 text-gray-800",
|
|
45
|
+
ghost: "text-gray-800"
|
|
46
|
+
}
|
|
47
|
+
},
|
|
48
|
+
defaultVariants: {
|
|
49
|
+
size: "md",
|
|
50
|
+
shape: "rounded",
|
|
51
|
+
variant: "filled"
|
|
52
|
+
}
|
|
53
|
+
}
|
|
54
|
+
);
|
|
55
|
+
|
|
56
|
+
// src/components/Progress/ProgressValue.tsx
|
|
57
|
+
var _tmpl$ = /* @__PURE__ */ template(`<div><div><div></div></div><div>%`);
|
|
58
|
+
var ProgressValue = (props) => {
|
|
59
|
+
return (() => {
|
|
60
|
+
var _el$ = _tmpl$(), _el$2 = _el$.firstChild, _el$3 = _el$2.firstChild, _el$4 = _el$2.nextSibling, _el$5 = _el$4.firstChild;
|
|
61
|
+
insert(_el$4, () => props.value, _el$5);
|
|
62
|
+
effect((_p$) => {
|
|
63
|
+
var _v$ = `${progressWrapper()} ${progressVariants({
|
|
64
|
+
size: props.size,
|
|
65
|
+
shape: props.shape,
|
|
66
|
+
variant: props.variant
|
|
67
|
+
})}`, _v$2 = progressBar(), _v$3 = progressFill(), _v$4 = `${props.value}%`, _v$5 = progressLabel();
|
|
68
|
+
_v$ !== _p$.e && className(_el$, _p$.e = _v$);
|
|
69
|
+
_v$2 !== _p$.t && className(_el$2, _p$.t = _v$2);
|
|
70
|
+
_v$3 !== _p$.a && className(_el$3, _p$.a = _v$3);
|
|
71
|
+
_v$4 !== _p$.o && ((_p$.o = _v$4) != null ? _el$3.style.setProperty("width", _v$4) : _el$3.style.removeProperty("width"));
|
|
72
|
+
_v$5 !== _p$.i && className(_el$4, _p$.i = _v$5);
|
|
73
|
+
return _p$;
|
|
74
|
+
}, {
|
|
75
|
+
e: void 0,
|
|
76
|
+
t: void 0,
|
|
77
|
+
a: void 0,
|
|
78
|
+
o: void 0,
|
|
79
|
+
i: void 0
|
|
80
|
+
});
|
|
81
|
+
return _el$;
|
|
82
|
+
})();
|
|
83
|
+
};
|
|
84
|
+
var ProgressValue_default = ProgressValue;
|
|
85
|
+
var _tmpl$2 = /* @__PURE__ */ template(`<div><div><div></div></div><div>%`);
|
|
86
|
+
var Progress = ({
|
|
87
|
+
value,
|
|
88
|
+
size = "md",
|
|
89
|
+
shape = "rounded",
|
|
90
|
+
variant = "filled"
|
|
91
|
+
}) => {
|
|
92
|
+
return (() => {
|
|
93
|
+
var _el$ = _tmpl$2(), _el$2 = _el$.firstChild, _el$3 = _el$2.firstChild, _el$4 = _el$2.nextSibling, _el$5 = _el$4.firstChild;
|
|
94
|
+
`${value}%` != null ? _el$3.style.setProperty("width", `${value}%`) : _el$3.style.removeProperty("width");
|
|
95
|
+
insert(_el$4, value, _el$5);
|
|
96
|
+
effect((_p$) => {
|
|
97
|
+
var _v$ = `${progressWrapper()} ${progressVariants({
|
|
98
|
+
size,
|
|
99
|
+
shape,
|
|
100
|
+
variant
|
|
101
|
+
})}`, _v$2 = progressBar(), _v$3 = progressFill(), _v$4 = progressLabel();
|
|
102
|
+
_v$ !== _p$.e && className(_el$, _p$.e = _v$);
|
|
103
|
+
_v$2 !== _p$.t && className(_el$2, _p$.t = _v$2);
|
|
104
|
+
_v$3 !== _p$.a && className(_el$3, _p$.a = _v$3);
|
|
105
|
+
_v$4 !== _p$.o && className(_el$4, _p$.o = _v$4);
|
|
106
|
+
return _p$;
|
|
107
|
+
}, {
|
|
108
|
+
e: void 0,
|
|
109
|
+
t: void 0,
|
|
110
|
+
a: void 0,
|
|
111
|
+
o: void 0
|
|
112
|
+
});
|
|
113
|
+
return _el$;
|
|
114
|
+
})();
|
|
115
|
+
};
|
|
116
|
+
var ProgressSizes_default = Progress;
|
|
117
|
+
var _tmpl$3 = /* @__PURE__ */ template(`<div><div><div>`);
|
|
118
|
+
var _tmpl$22 = /* @__PURE__ */ template(`<div>`);
|
|
119
|
+
var Progress2 = ({
|
|
120
|
+
value,
|
|
121
|
+
size = "md",
|
|
122
|
+
shape = "rounded",
|
|
123
|
+
variant = "filled",
|
|
124
|
+
showValue = false,
|
|
125
|
+
format = "raw"
|
|
126
|
+
}) => {
|
|
127
|
+
const displayValue = () => {
|
|
128
|
+
return format === "percent" ? `${value}%` : value;
|
|
129
|
+
};
|
|
130
|
+
return (() => {
|
|
131
|
+
var _el$ = _tmpl$3(), _el$2 = _el$.firstChild, _el$3 = _el$2.firstChild;
|
|
132
|
+
`${value}%` != null ? _el$3.style.setProperty("width", `${value}%`) : _el$3.style.removeProperty("width");
|
|
133
|
+
insert(_el$, showValue && (() => {
|
|
134
|
+
var _el$4 = _tmpl$22();
|
|
135
|
+
insert(_el$4, displayValue);
|
|
136
|
+
effect(() => className(_el$4, progressLabel()));
|
|
137
|
+
return _el$4;
|
|
138
|
+
})(), null);
|
|
139
|
+
effect((_p$) => {
|
|
140
|
+
var _v$ = `${progressWrapper()} ${progressVariants({
|
|
141
|
+
size,
|
|
142
|
+
shape,
|
|
143
|
+
variant
|
|
144
|
+
})}`, _v$2 = progressBar(), _v$3 = progressFill();
|
|
145
|
+
_v$ !== _p$.e && className(_el$, _p$.e = _v$);
|
|
146
|
+
_v$2 !== _p$.t && className(_el$2, _p$.t = _v$2);
|
|
147
|
+
_v$3 !== _p$.a && className(_el$3, _p$.a = _v$3);
|
|
148
|
+
return _p$;
|
|
149
|
+
}, {
|
|
150
|
+
e: void 0,
|
|
151
|
+
t: void 0,
|
|
152
|
+
a: void 0
|
|
153
|
+
});
|
|
154
|
+
return _el$;
|
|
155
|
+
})();
|
|
156
|
+
};
|
|
157
|
+
var ProgressPercent_default = Progress2;
|
|
158
|
+
var _tmpl$4 = /* @__PURE__ */ template(`<div>`);
|
|
159
|
+
var _tmpl$23 = /* @__PURE__ */ template(`<div><div>`);
|
|
160
|
+
var Progress3 = ({
|
|
161
|
+
value,
|
|
162
|
+
size = "md",
|
|
163
|
+
shape = "rounded",
|
|
164
|
+
variant = "filled",
|
|
165
|
+
showValue = false,
|
|
166
|
+
format = "raw",
|
|
167
|
+
color = "default"
|
|
168
|
+
}) => {
|
|
169
|
+
const displayValue = () => format === "percent" && value != null ? `${value}%` : value;
|
|
170
|
+
return (() => {
|
|
171
|
+
var _el$ = _tmpl$23(), _el$2 = _el$.firstChild;
|
|
172
|
+
insert(_el$2, createComponent(Show, {
|
|
173
|
+
when: value != null,
|
|
174
|
+
get fallback() {
|
|
175
|
+
return (() => {
|
|
176
|
+
var _el$4 = _tmpl$4();
|
|
177
|
+
_el$4.style.setProperty("width", "100%");
|
|
178
|
+
effect(() => className(_el$4, `${progressFill({
|
|
179
|
+
color
|
|
180
|
+
})} animate-pulse`));
|
|
181
|
+
return _el$4;
|
|
182
|
+
})();
|
|
183
|
+
},
|
|
184
|
+
get children() {
|
|
185
|
+
var _el$3 = _tmpl$4();
|
|
186
|
+
`${value}%` != null ? _el$3.style.setProperty("width", `${value}%`) : _el$3.style.removeProperty("width");
|
|
187
|
+
effect(() => className(_el$3, progressFill({
|
|
188
|
+
color
|
|
189
|
+
})));
|
|
190
|
+
return _el$3;
|
|
191
|
+
}
|
|
192
|
+
}));
|
|
193
|
+
insert(_el$, showValue && value != null && (() => {
|
|
194
|
+
var _el$5 = _tmpl$4();
|
|
195
|
+
insert(_el$5, displayValue);
|
|
196
|
+
effect(() => className(_el$5, progressLabel()));
|
|
197
|
+
return _el$5;
|
|
198
|
+
})(), null);
|
|
199
|
+
effect((_p$) => {
|
|
200
|
+
var _v$ = `${progressWrapper()} ${progressVariants({
|
|
201
|
+
size,
|
|
202
|
+
shape,
|
|
203
|
+
variant
|
|
204
|
+
})}`, _v$2 = progressBar();
|
|
205
|
+
_v$ !== _p$.e && className(_el$, _p$.e = _v$);
|
|
206
|
+
_v$2 !== _p$.t && className(_el$2, _p$.t = _v$2);
|
|
207
|
+
return _p$;
|
|
208
|
+
}, {
|
|
209
|
+
e: void 0,
|
|
210
|
+
t: void 0
|
|
211
|
+
});
|
|
212
|
+
return _el$;
|
|
213
|
+
})();
|
|
214
|
+
};
|
|
215
|
+
var ProgressColors_default = Progress3;
|
|
216
|
+
|
|
217
|
+
// src/components/Progress/Progress.tsx
|
|
218
|
+
var _tmpl$5 = /* @__PURE__ */ template(`<section><div class=p-4><h1 class="text-2xl font-semibold mb-4">Progress Component Demo</h1></div><div class="mt-4 flex flex-col gap-4"></div><div class=mt-4></div><div class="mt-4 flex flex-col gap-4">`);
|
|
219
|
+
var Progress4 = () => {
|
|
220
|
+
return (() => {
|
|
221
|
+
var _el$ = _tmpl$5(), _el$2 = _el$.firstChild, _el$4 = _el$2.nextSibling, _el$5 = _el$4.nextSibling, _el$6 = _el$5.nextSibling;
|
|
222
|
+
insert(_el$2, createComponent(ProgressValue_default, {
|
|
223
|
+
value: 40,
|
|
224
|
+
size: "sm",
|
|
225
|
+
shape: "circle",
|
|
226
|
+
variant: "filled"
|
|
227
|
+
}), null);
|
|
228
|
+
insert(_el$2, createComponent(ProgressValue_default, {
|
|
229
|
+
value: 70,
|
|
230
|
+
size: "md",
|
|
231
|
+
shape: "rounded",
|
|
232
|
+
variant: "outlined"
|
|
233
|
+
}), null);
|
|
234
|
+
insert(_el$2, createComponent(ProgressValue_default, {
|
|
235
|
+
value: 90,
|
|
236
|
+
size: "lg",
|
|
237
|
+
shape: "circle",
|
|
238
|
+
variant: "ghost"
|
|
239
|
+
}), null);
|
|
240
|
+
insert(_el$4, createComponent(ProgressSizes_default, {
|
|
241
|
+
value: 20,
|
|
242
|
+
size: "sm"
|
|
243
|
+
}), null);
|
|
244
|
+
insert(_el$4, createComponent(ProgressSizes_default, {
|
|
245
|
+
value: 30,
|
|
246
|
+
size: "md"
|
|
247
|
+
}), null);
|
|
248
|
+
insert(_el$4, createComponent(ProgressSizes_default, {
|
|
249
|
+
value: 50,
|
|
250
|
+
size: "lg"
|
|
251
|
+
}), null);
|
|
252
|
+
insert(_el$5, createComponent(ProgressPercent_default, {
|
|
253
|
+
value: 80,
|
|
254
|
+
showValue: true,
|
|
255
|
+
format: "percent"
|
|
256
|
+
}));
|
|
257
|
+
insert(_el$6, createComponent(ProgressColors_default, {
|
|
258
|
+
value: 40,
|
|
259
|
+
color: "danger"
|
|
260
|
+
}), null);
|
|
261
|
+
insert(_el$6, createComponent(ProgressColors_default, {
|
|
262
|
+
value: 60,
|
|
263
|
+
color: "success"
|
|
264
|
+
}), null);
|
|
265
|
+
insert(_el$6, createComponent(ProgressColors_default, {
|
|
266
|
+
value: 80,
|
|
267
|
+
color: "info"
|
|
268
|
+
}), null);
|
|
269
|
+
insert(_el$6, createComponent(ProgressColors_default, {
|
|
270
|
+
value: 100,
|
|
271
|
+
color: "warning"
|
|
272
|
+
}), null);
|
|
273
|
+
return _el$;
|
|
274
|
+
})();
|
|
275
|
+
};
|
|
276
|
+
var Progress_default = Progress4;
|
|
277
|
+
|
|
278
|
+
export { ProgressColors_default, ProgressPercent_default, ProgressSizes_default, ProgressValue_default, Progress_default };
|
|
@@ -0,0 +1,105 @@
|
|
|
1
|
+
import {
|
|
2
|
+
cva
|
|
3
|
+
} from "./P7WPLZNA.jsx";
|
|
4
|
+
|
|
5
|
+
// src/components/accordion/Accordion.tsx
|
|
6
|
+
import {
|
|
7
|
+
createSignal,
|
|
8
|
+
splitProps,
|
|
9
|
+
Show
|
|
10
|
+
} from "solid-js";
|
|
11
|
+
|
|
12
|
+
// src/components/accordion/Accordion.styles.ts
|
|
13
|
+
var accordionContainerVariants = cva(
|
|
14
|
+
["w-full border rounded transition-colors", "bg-white dark:bg-gray-800"],
|
|
15
|
+
{
|
|
16
|
+
variants: {
|
|
17
|
+
expanded: {
|
|
18
|
+
true: "border-blue-500",
|
|
19
|
+
false: "border-gray-300 dark:border-gray-600"
|
|
20
|
+
},
|
|
21
|
+
disabled: {
|
|
22
|
+
true: "opacity-50 cursor-not-allowed",
|
|
23
|
+
false: ""
|
|
24
|
+
}
|
|
25
|
+
},
|
|
26
|
+
defaultVariants: {
|
|
27
|
+
expanded: false,
|
|
28
|
+
disabled: false
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
);
|
|
32
|
+
var accordionHeaderVariants = cva(
|
|
33
|
+
[
|
|
34
|
+
"w-full text-left px-4 py-2 flex items-center justify-between cursor-pointer",
|
|
35
|
+
"transition-colors duration-200"
|
|
36
|
+
],
|
|
37
|
+
{
|
|
38
|
+
variants: {
|
|
39
|
+
headerIsTrigger: {
|
|
40
|
+
true: "hover:bg-gray-100 dark:hover:bg-gray-700",
|
|
41
|
+
false: ""
|
|
42
|
+
}
|
|
43
|
+
},
|
|
44
|
+
defaultVariants: {
|
|
45
|
+
headerIsTrigger: true
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
);
|
|
49
|
+
var accordionContentVariants = cva(
|
|
50
|
+
"px-4 py-2 border-t border-gray-200 dark:border-gray-700"
|
|
51
|
+
);
|
|
52
|
+
|
|
53
|
+
// src/components/accordion/Accordion.tsx
|
|
54
|
+
var Accordion = (props) => {
|
|
55
|
+
const [local, variantProps, otherProps] = splitProps(
|
|
56
|
+
props,
|
|
57
|
+
["expanded", "disabled", "headerIsTrigger", "header", "content"],
|
|
58
|
+
["expanded", "disabled"]
|
|
59
|
+
);
|
|
60
|
+
const [isOpen, setIsOpen] = createSignal(local.expanded ?? false);
|
|
61
|
+
const handleToggle = () => {
|
|
62
|
+
if (!local.disabled) setIsOpen((prev) => !prev);
|
|
63
|
+
};
|
|
64
|
+
const handleKeyDown = local.headerIsTrigger ? (e) => {
|
|
65
|
+
if (e.key === "Enter" || e.key === " ") {
|
|
66
|
+
e.preventDefault();
|
|
67
|
+
handleToggle();
|
|
68
|
+
}
|
|
69
|
+
} : void 0;
|
|
70
|
+
return <div
|
|
71
|
+
class={accordionContainerVariants({
|
|
72
|
+
...variantProps,
|
|
73
|
+
expanded: isOpen(),
|
|
74
|
+
disabled: local.disabled
|
|
75
|
+
})}
|
|
76
|
+
onKeyDown={handleKeyDown}
|
|
77
|
+
role={local.headerIsTrigger ? "button" : void 0}
|
|
78
|
+
tabindex={local.headerIsTrigger ? "0" : void 0}
|
|
79
|
+
aria-expanded={local.headerIsTrigger ? isOpen() : void 0}
|
|
80
|
+
aria-disabled={local.disabled}
|
|
81
|
+
{...otherProps}
|
|
82
|
+
>
|
|
83
|
+
<div
|
|
84
|
+
class={accordionHeaderVariants({
|
|
85
|
+
headerIsTrigger: local.headerIsTrigger
|
|
86
|
+
})}
|
|
87
|
+
onClick={local.headerIsTrigger ? handleToggle : void 0}
|
|
88
|
+
role={local.headerIsTrigger ? "button" : void 0}
|
|
89
|
+
>
|
|
90
|
+
{local.header}
|
|
91
|
+
</div>
|
|
92
|
+
|
|
93
|
+
<Show when={isOpen()}>
|
|
94
|
+
<div class={accordionContentVariants()}>{local.content}</div>
|
|
95
|
+
</Show>
|
|
96
|
+
</div>;
|
|
97
|
+
};
|
|
98
|
+
var Accordion_default = Accordion;
|
|
99
|
+
|
|
100
|
+
// src/components/accordion/index.ts
|
|
101
|
+
var accordion_default = Accordion_default;
|
|
102
|
+
|
|
103
|
+
export {
|
|
104
|
+
accordion_default
|
|
105
|
+
};
|
|
@@ -0,0 +1,98 @@
|
|
|
1
|
+
import { cva, classes } from './HKS7ET6T.js';
|
|
2
|
+
import { template, className, spread, mergeProps, insert, createComponent, effect } from 'solid-js/web';
|
|
3
|
+
import { splitProps, Show } from 'solid-js';
|
|
4
|
+
|
|
5
|
+
// src/components/upload/Upload.styles.ts
|
|
6
|
+
var uploadWrapperVariants = cva("", {
|
|
7
|
+
variants: {
|
|
8
|
+
style: {
|
|
9
|
+
boxed: "flex flex-col items-center justify-center border border-gray-300 rounded-md p-4 bg-white dark:bg-gray-800 text-gray-700 hover:text-gray-900 text-center",
|
|
10
|
+
button: "px-4 py-2 rounded inline-flex items-center gap-2 text-white transition-colors"
|
|
11
|
+
},
|
|
12
|
+
color: {
|
|
13
|
+
primary: "bg-blue-500 hover:bg-blue-600",
|
|
14
|
+
success: "bg-green-500 hover:bg-green-600",
|
|
15
|
+
info: "bg-sky-500 hover:bg-sky-600",
|
|
16
|
+
warning: "bg-yellow-500 hover:bg-yellow-600",
|
|
17
|
+
danger: "bg-red-500 hover:bg-red-600",
|
|
18
|
+
gray: ""
|
|
19
|
+
// usado solo en style="boxed"
|
|
20
|
+
},
|
|
21
|
+
size: {
|
|
22
|
+
sm: "text-sm",
|
|
23
|
+
md: "text-base",
|
|
24
|
+
lg: "text-lg"
|
|
25
|
+
}
|
|
26
|
+
},
|
|
27
|
+
defaultVariants: {
|
|
28
|
+
style: "boxed",
|
|
29
|
+
color: "gray",
|
|
30
|
+
size: "md"
|
|
31
|
+
}
|
|
32
|
+
});
|
|
33
|
+
var fileInputClass = "absolute inset-0 w-full h-full opacity-0 cursor-pointer";
|
|
34
|
+
var fileIconClass = "w-6 h-6";
|
|
35
|
+
var fileLabelClass = "font-medium";
|
|
36
|
+
|
|
37
|
+
// src/components/upload/Upload.tsx
|
|
38
|
+
var _tmpl$ = /* @__PURE__ */ template(`<span>`);
|
|
39
|
+
var _tmpl$2 = /* @__PURE__ */ template(`<div><label class="cursor-pointer relative w-full h-full"><input type=file><div><span>`);
|
|
40
|
+
var Upload = (props) => {
|
|
41
|
+
const [local, variantProps, otherProps] = splitProps(props, ["icon", "label", "multiple", "disabled", "accept", "dragDrop", "name", "onChange"], ["style", "color", "size"]);
|
|
42
|
+
const handleChange = (e) => {
|
|
43
|
+
const files = e.target.files;
|
|
44
|
+
if (!files || files.length === 0) return;
|
|
45
|
+
const result = local.multiple ? Array.from(files) : files[0];
|
|
46
|
+
if (result) {
|
|
47
|
+
local.onChange?.(result);
|
|
48
|
+
}
|
|
49
|
+
};
|
|
50
|
+
return (() => {
|
|
51
|
+
var _el$ = _tmpl$2(), _el$2 = _el$.firstChild, _el$3 = _el$2.firstChild, _el$4 = _el$3.nextSibling, _el$6 = _el$4.firstChild;
|
|
52
|
+
_el$3.addEventListener("change", handleChange);
|
|
53
|
+
className(_el$3, fileInputClass);
|
|
54
|
+
spread(_el$3, mergeProps({
|
|
55
|
+
get name() {
|
|
56
|
+
return local.name;
|
|
57
|
+
},
|
|
58
|
+
get multiple() {
|
|
59
|
+
return local.multiple;
|
|
60
|
+
},
|
|
61
|
+
get accept() {
|
|
62
|
+
return local.accept;
|
|
63
|
+
},
|
|
64
|
+
get disabled() {
|
|
65
|
+
return local.disabled;
|
|
66
|
+
}
|
|
67
|
+
}, otherProps), false, false);
|
|
68
|
+
insert(_el$4, createComponent(Show, {
|
|
69
|
+
get when() {
|
|
70
|
+
return local.icon;
|
|
71
|
+
},
|
|
72
|
+
get children() {
|
|
73
|
+
var _el$5 = _tmpl$();
|
|
74
|
+
className(_el$5, fileIconClass);
|
|
75
|
+
insert(_el$5, () => local.icon);
|
|
76
|
+
return _el$5;
|
|
77
|
+
}
|
|
78
|
+
}), _el$6);
|
|
79
|
+
className(_el$6, fileLabelClass);
|
|
80
|
+
insert(_el$6, () => local.label);
|
|
81
|
+
effect((_p$) => {
|
|
82
|
+
var _v$ = uploadWrapperVariants(variantProps), _v$2 = classes(variantProps.style === "boxed" ? "flex flex-col items-center justify-center gap-2" : "flex flex-row items-center justify-center gap-2");
|
|
83
|
+
_v$ !== _p$.e && className(_el$, _p$.e = _v$);
|
|
84
|
+
_v$2 !== _p$.t && className(_el$4, _p$.t = _v$2);
|
|
85
|
+
return _p$;
|
|
86
|
+
}, {
|
|
87
|
+
e: void 0,
|
|
88
|
+
t: void 0
|
|
89
|
+
});
|
|
90
|
+
return _el$;
|
|
91
|
+
})();
|
|
92
|
+
};
|
|
93
|
+
var Upload_default = Upload;
|
|
94
|
+
|
|
95
|
+
// src/components/upload/index.ts
|
|
96
|
+
var upload_default = Upload_default;
|
|
97
|
+
|
|
98
|
+
export { upload_default };
|
|
@@ -0,0 +1,133 @@
|
|
|
1
|
+
import { cva } from './HKS7ET6T.js';
|
|
2
|
+
import { template, insert, effect, setAttribute, spread, mergeProps, memo, className } from 'solid-js/web';
|
|
3
|
+
import { splitProps, children, createMemo, untrack } from 'solid-js';
|
|
4
|
+
|
|
5
|
+
// src/components/breadcrumb/Breadcrumb.styles.ts
|
|
6
|
+
var breadcrumbContainerVariants = cva(
|
|
7
|
+
["flex", "items-center", "gap-2", "text-sm"],
|
|
8
|
+
{
|
|
9
|
+
variants: {
|
|
10
|
+
alignment: {
|
|
11
|
+
left: "justify-start",
|
|
12
|
+
center: "justify-center",
|
|
13
|
+
right: "justify-end"
|
|
14
|
+
},
|
|
15
|
+
size: {
|
|
16
|
+
sm: "text-xs gap-1",
|
|
17
|
+
md: "text-sm gap-2",
|
|
18
|
+
lg: "text-base gap-3"
|
|
19
|
+
},
|
|
20
|
+
separator: {
|
|
21
|
+
arrow: "breadcrumb-arrow",
|
|
22
|
+
dot: "breadcrumb-dot",
|
|
23
|
+
bullet: "breadcrumb-bullet",
|
|
24
|
+
succeeds: "breadcrumb-succeeds"
|
|
25
|
+
}
|
|
26
|
+
},
|
|
27
|
+
defaultVariants: {
|
|
28
|
+
alignment: "left",
|
|
29
|
+
size: "md"
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
);
|
|
33
|
+
var breadcrumbItemVariants = cva(
|
|
34
|
+
["text-gray-600", "dark:text-gray-300"],
|
|
35
|
+
{
|
|
36
|
+
variants: {
|
|
37
|
+
active: {
|
|
38
|
+
true: "text-blue-600 font-semibold cursor-default",
|
|
39
|
+
false: "hover:underline"
|
|
40
|
+
}
|
|
41
|
+
},
|
|
42
|
+
defaultVariants: {
|
|
43
|
+
active: false
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
);
|
|
47
|
+
|
|
48
|
+
// src/components/breadcrumb/Breadcrumb.tsx
|
|
49
|
+
var _tmpl$ = /* @__PURE__ */ template(`<li class="text-gray-400 select-none"aria-hidden=true>`);
|
|
50
|
+
var _tmpl$2 = /* @__PURE__ */ template(`<li><span>`);
|
|
51
|
+
var _tmpl$3 = /* @__PURE__ */ template(`<nav aria-label=Breadcrumb><ol class="flex items-center flex-wrap gap-1">`);
|
|
52
|
+
var separatorMap = {
|
|
53
|
+
arrow: "\u2192",
|
|
54
|
+
dot: "\xB7",
|
|
55
|
+
bullet: "\u2022",
|
|
56
|
+
succeeds: "\xBB"
|
|
57
|
+
};
|
|
58
|
+
var Breadcrumb = (props) => {
|
|
59
|
+
const [local, variantProps, otherProps] = splitProps(props, ["children"], ["alignment", "size", "separator"]);
|
|
60
|
+
const resolvedChildren = children(() => local.children);
|
|
61
|
+
const items = createMemo(() => resolvedChildren.toArray());
|
|
62
|
+
const separator = createMemo(() => untrack(() => {
|
|
63
|
+
const sep = variantProps.separator;
|
|
64
|
+
return sep && separatorMap[sep] ? separatorMap[sep] : "/";
|
|
65
|
+
}));
|
|
66
|
+
const containerClasses = createMemo(() => breadcrumbContainerVariants(variantProps));
|
|
67
|
+
const renderItems = createMemo(() => {
|
|
68
|
+
return items().reduce((acc, item, idx) => {
|
|
69
|
+
if (idx > 0) {
|
|
70
|
+
acc.push((() => {
|
|
71
|
+
var _el$ = _tmpl$();
|
|
72
|
+
insert(_el$, separator);
|
|
73
|
+
return _el$;
|
|
74
|
+
})());
|
|
75
|
+
}
|
|
76
|
+
acc.push((() => {
|
|
77
|
+
var _el$2 = _tmpl$2(), _el$3 = _el$2.firstChild;
|
|
78
|
+
insert(_el$3, item);
|
|
79
|
+
effect(() => setAttribute(_el$3, "aria-current", idx === items().length - 1 ? "page" : void 0));
|
|
80
|
+
return _el$2;
|
|
81
|
+
})());
|
|
82
|
+
return acc;
|
|
83
|
+
}, []);
|
|
84
|
+
});
|
|
85
|
+
return (() => {
|
|
86
|
+
var _el$4 = _tmpl$3(), _el$5 = _el$4.firstChild;
|
|
87
|
+
spread(_el$4, mergeProps({
|
|
88
|
+
get ["class"]() {
|
|
89
|
+
return containerClasses();
|
|
90
|
+
}
|
|
91
|
+
}, otherProps), false, true);
|
|
92
|
+
insert(_el$5, renderItems);
|
|
93
|
+
return _el$4;
|
|
94
|
+
})();
|
|
95
|
+
};
|
|
96
|
+
var Breadcrumb_default = Breadcrumb;
|
|
97
|
+
var _tmpl$4 = /* @__PURE__ */ template(`<li class="flex items-center gap-1">`);
|
|
98
|
+
var _tmpl$22 = /* @__PURE__ */ template(`<a>`);
|
|
99
|
+
var _tmpl$32 = /* @__PURE__ */ template(`<span>`);
|
|
100
|
+
var BreadcrumbItem = (props) => {
|
|
101
|
+
const [local, variantProps] = splitProps(props, ["children", "href", "active"], ["active"]);
|
|
102
|
+
return (() => {
|
|
103
|
+
var _el$ = _tmpl$4();
|
|
104
|
+
insert(_el$, (() => {
|
|
105
|
+
var _c$ = memo(() => !!(local.href && !local.active));
|
|
106
|
+
return () => _c$() ? (() => {
|
|
107
|
+
var _el$2 = _tmpl$22();
|
|
108
|
+
insert(_el$2, () => local.children);
|
|
109
|
+
effect((_p$) => {
|
|
110
|
+
var _v$ = local.href, _v$2 = breadcrumbItemVariants(variantProps);
|
|
111
|
+
_v$ !== _p$.e && setAttribute(_el$2, "href", _p$.e = _v$);
|
|
112
|
+
_v$2 !== _p$.t && className(_el$2, _p$.t = _v$2);
|
|
113
|
+
return _p$;
|
|
114
|
+
}, {
|
|
115
|
+
e: void 0,
|
|
116
|
+
t: void 0
|
|
117
|
+
});
|
|
118
|
+
return _el$2;
|
|
119
|
+
})() : (() => {
|
|
120
|
+
var _el$3 = _tmpl$32();
|
|
121
|
+
insert(_el$3, () => local.children);
|
|
122
|
+
effect(() => className(_el$3, breadcrumbItemVariants({
|
|
123
|
+
active: true
|
|
124
|
+
})));
|
|
125
|
+
return _el$3;
|
|
126
|
+
})();
|
|
127
|
+
})());
|
|
128
|
+
return _el$;
|
|
129
|
+
})();
|
|
130
|
+
};
|
|
131
|
+
var BreadcrumbItem_default = BreadcrumbItem;
|
|
132
|
+
|
|
133
|
+
export { BreadcrumbItem_default, Breadcrumb_default };
|