@lolmath/ui 1.2.0 → 2.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/dist/index.cjs +202 -84
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +16 -4
- package/dist/index.d.ts +16 -4
- package/dist/index.js +205 -84
- package/dist/index.js.map +1 -1
- package/package.json +1 -1
package/dist/index.cjs
CHANGED
|
@@ -27,12 +27,14 @@ __export(src_exports, {
|
|
|
27
27
|
Button: () => Button,
|
|
28
28
|
Item: () => Item,
|
|
29
29
|
Label: () => Label3,
|
|
30
|
+
NumberField: () => NumberField,
|
|
30
31
|
ProgressBar: () => ProgressBar,
|
|
31
32
|
Radio: () => Radio,
|
|
32
33
|
RadioGroup: () => RadioGroup,
|
|
33
34
|
SearchField: () => SearchField,
|
|
34
35
|
Select: () => Select,
|
|
35
36
|
Slider: () => Slider,
|
|
37
|
+
SliderLabel: () => SliderLabel,
|
|
36
38
|
Switch: () => Switch,
|
|
37
39
|
TextField: () => TextField
|
|
38
40
|
});
|
|
@@ -75,15 +77,15 @@ function _Button({ children, className, priority = "secondary", ...props }, ref)
|
|
|
75
77
|
"span",
|
|
76
78
|
{
|
|
77
79
|
className: (0, import_tailwind_merge.twMerge)(
|
|
78
|
-
"block m-0.5 px-4 py-2 bg-
|
|
80
|
+
"block m-0.5 px-4 py-2 bg-lol-gray-950 transition-colors duration-200",
|
|
79
81
|
priority === "primary" && "bg-gradient-to-b",
|
|
80
82
|
"text-[#cdbe91] tracking-wide",
|
|
81
|
-
values.isHovered && "text-
|
|
82
|
-
values.isPressed && "text-
|
|
83
|
-
values.isDisabled && "text-
|
|
83
|
+
values.isHovered && "text-lol-gold-100",
|
|
84
|
+
values.isPressed && "text-lol-gray-500",
|
|
85
|
+
values.isDisabled && "text-lol-gray-500",
|
|
84
86
|
values.isFocused && "",
|
|
85
87
|
values.isFocusVisible && "",
|
|
86
|
-
priority === "primary" && "from-
|
|
88
|
+
priority === "primary" && "from-lol-gold-700 via-lol-gold-800 to-lol-gold-900",
|
|
87
89
|
priority === "primary" && values.isHovered && "from-[#604522] via-[#846745] to-[#725634]",
|
|
88
90
|
priority === "primary" && values.isPressed && "from-[#261b0d] via-[#261b0d] to-[#261b0d] text-[#67604c]"
|
|
89
91
|
),
|
|
@@ -128,7 +130,7 @@ function Select({
|
|
|
128
130
|
"span",
|
|
129
131
|
{
|
|
130
132
|
className: (0, import_tailwind_merge2.twMerge)(
|
|
131
|
-
"block m-px bg-
|
|
133
|
+
"block m-px bg-lol-gray-950 px-2 py-1 text-[#a09b8c] text-xs font-normal tracking-wide pr-6 bg-no-repeat"
|
|
132
134
|
),
|
|
133
135
|
style: {
|
|
134
136
|
backgroundPosition: "right 0.5rem center",
|
|
@@ -162,7 +164,7 @@ function Item({ className, ...props }) {
|
|
|
162
164
|
const finalClassName = typeof className === "function" ? className(values) : className;
|
|
163
165
|
return (0, import_tailwind_merge2.twMerge)(
|
|
164
166
|
"px-2 py-0.5 border-b border-[#1f2123] text-[#cdbe91] text-sm font-spiegel font-bold outline-none",
|
|
165
|
-
values.isHovered && "bg-
|
|
167
|
+
values.isHovered && "bg-lol-gray-950 text-lol-gold-100",
|
|
166
168
|
values.isPressed && "bg-[#1e232880] text-[#463714]",
|
|
167
169
|
values.isFocusVisible && outlineClassName,
|
|
168
170
|
values.isFocused && "",
|
|
@@ -178,8 +180,8 @@ var import_react_aria_components3 = require("react-aria-components");
|
|
|
178
180
|
var import_tailwind_merge3 = require("tailwind-merge");
|
|
179
181
|
|
|
180
182
|
// src/utilities/resolve-classname.ts
|
|
181
|
-
function resolveClassname(
|
|
182
|
-
return typeof
|
|
183
|
+
function resolveClassname(className, values) {
|
|
184
|
+
return typeof className === "function" ? className(values) : className;
|
|
183
185
|
}
|
|
184
186
|
|
|
185
187
|
// src/components/search-field.tsx
|
|
@@ -192,9 +194,9 @@ function SearchField({
|
|
|
192
194
|
import_react_aria_components3.SearchField,
|
|
193
195
|
{
|
|
194
196
|
className: (values) => {
|
|
195
|
-
const finalClassName =
|
|
197
|
+
const finalClassName = resolveClassname(props.className, values);
|
|
196
198
|
return (0, import_tailwind_merge3.twMerge)(
|
|
197
|
-
"flex flex-col outline-none
|
|
199
|
+
"flex flex-col outline-none",
|
|
198
200
|
borderClassName,
|
|
199
201
|
"focus-within:from-lol-gold-300 focus-within:via-lol-gold-200 focus-within:to-lol-gold-50",
|
|
200
202
|
props.isDisabled && "from-lol-gray-700 via-lol-gray-700 to-lol-gray-700",
|
|
@@ -202,12 +204,12 @@ function SearchField({
|
|
|
202
204
|
);
|
|
203
205
|
},
|
|
204
206
|
...props,
|
|
205
|
-
children: ({ state }) => /* @__PURE__ */ (0, import_jsx_runtime3.jsxs)(
|
|
207
|
+
children: ({ state, isDisabled }) => /* @__PURE__ */ (0, import_jsx_runtime3.jsxs)(
|
|
206
208
|
"div",
|
|
207
209
|
{
|
|
208
210
|
className: (0, import_tailwind_merge3.twMerge)(
|
|
209
|
-
"m-px bg-
|
|
210
|
-
props.isDisabled && "
|
|
211
|
+
"m-px bg-black flex flex-row focus-within:from-lol-gray-950 focus-within:to-lol-gray-900 focus-within:bg-gradient-to-b",
|
|
212
|
+
props.isDisabled && "bg-lol-gray-950"
|
|
211
213
|
),
|
|
212
214
|
children: [
|
|
213
215
|
/* @__PURE__ */ (0, import_jsx_runtime3.jsx)(
|
|
@@ -215,9 +217,13 @@ function SearchField({
|
|
|
215
217
|
{
|
|
216
218
|
...inputProps,
|
|
217
219
|
className: (values) => {
|
|
218
|
-
const finalClassName = resolveClassname(
|
|
220
|
+
const finalClassName = resolveClassname(
|
|
221
|
+
inputProps.className,
|
|
222
|
+
values
|
|
223
|
+
);
|
|
219
224
|
return (0, import_tailwind_merge3.twMerge)(
|
|
220
|
-
"bg-transparent grow py-2 px-3 text-lol-gold-50 text-xs outline-none font-spiegel tracking-wide",
|
|
225
|
+
"bg-transparent grow py-2 px-3 text-lol-gold-50 text-xs outline-none font-spiegel tracking-wide pl-6",
|
|
226
|
+
props.isDisabled && "text-lol-gray-500",
|
|
221
227
|
finalClassName
|
|
222
228
|
);
|
|
223
229
|
},
|
|
@@ -230,12 +236,12 @@ function SearchField({
|
|
|
230
236
|
}
|
|
231
237
|
}
|
|
232
238
|
),
|
|
233
|
-
state.value.length > 0 && /* @__PURE__ */ (0, import_jsx_runtime3.jsx)(
|
|
239
|
+
state.value.length > 0 && !isDisabled && /* @__PURE__ */ (0, import_jsx_runtime3.jsx)(
|
|
234
240
|
import_react_aria_components3.Button,
|
|
235
241
|
{
|
|
236
242
|
className: (buttonValues) => (0, import_tailwind_merge3.twMerge)(
|
|
237
243
|
"font-black text-[#cdbe91] text-xs px-4",
|
|
238
|
-
buttonValues.isHovered && "text-
|
|
244
|
+
buttonValues.isHovered && "text-lol-gold-100",
|
|
239
245
|
buttonValues.isPressed && "text-[#463714]"
|
|
240
246
|
),
|
|
241
247
|
children: "\u2715"
|
|
@@ -261,62 +267,113 @@ var sliderDisabled = "url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAGgAAAB
|
|
|
261
267
|
// src/components/slider.tsx
|
|
262
268
|
var import_jsx_runtime4 = require("react/jsx-runtime");
|
|
263
269
|
function Slider({
|
|
264
|
-
|
|
265
|
-
|
|
266
|
-
|
|
270
|
+
children,
|
|
271
|
+
sliderThumbProps = {},
|
|
272
|
+
sliderTrackProps = {},
|
|
273
|
+
sliderTrackBackgroundClassName,
|
|
274
|
+
sliderTrackForegroundClassName,
|
|
267
275
|
...props
|
|
268
276
|
}) {
|
|
269
|
-
return /* @__PURE__ */ (0, import_jsx_runtime4.jsx)(
|
|
270
|
-
|
|
271
|
-
|
|
272
|
-
|
|
273
|
-
|
|
274
|
-
|
|
275
|
-
|
|
276
|
-
|
|
277
|
-
|
|
278
|
-
|
|
277
|
+
return /* @__PURE__ */ (0, import_jsx_runtime4.jsx)(
|
|
278
|
+
import_react_aria_components4.Slider,
|
|
279
|
+
{
|
|
280
|
+
...props,
|
|
281
|
+
className: (values) => {
|
|
282
|
+
const resolvedClassName = resolveClassname(props.className, values);
|
|
283
|
+
return (0, import_tailwind_merge4.twMerge)("", resolvedClassName);
|
|
284
|
+
},
|
|
285
|
+
children: (values) => /* @__PURE__ */ (0, import_jsx_runtime4.jsxs)(import_jsx_runtime4.Fragment, { children: [
|
|
286
|
+
typeof children === "function" ? children(values) : children,
|
|
279
287
|
/* @__PURE__ */ (0, import_jsx_runtime4.jsx)(
|
|
280
|
-
|
|
288
|
+
import_react_aria_components4.SliderTrack,
|
|
281
289
|
{
|
|
282
|
-
|
|
283
|
-
|
|
284
|
-
|
|
285
|
-
|
|
286
|
-
|
|
287
|
-
|
|
288
|
-
|
|
289
|
-
style: { left: `${left}%`, width: `${width}%` }
|
|
290
|
-
}
|
|
291
|
-
),
|
|
292
|
-
state2.values.map((_, i) => {
|
|
293
|
-
let zIndex = state2.getThumbPercent(i === 1 ? 0 : 1) === (i === 1 ? 0 : 1) ? 2 : void 0;
|
|
294
|
-
return /* @__PURE__ */ (0, import_jsx_runtime4.jsx)(import_jsx_runtime4.Fragment, { children: /* @__PURE__ */ (0, import_jsx_runtime4.jsx)(
|
|
295
|
-
import_react_aria_components4.SliderThumb,
|
|
296
|
-
{
|
|
297
|
-
index: i,
|
|
298
|
-
className: (0, import_tailwind_merge4.twMerge)(
|
|
299
|
-
"bg-contain h-7 w-7 top-[50%] outline-none",
|
|
300
|
-
"[background-image:var(--normal)]",
|
|
301
|
-
state2.isDisabled ? "[background-image:var(--disabled)]" : [
|
|
302
|
-
state2.isThumbDragging(i) && "[background-image:var(--active)]",
|
|
303
|
-
!state2.isThumbDragging(0) && !state2.isThumbDragging(1) && "group-hover:[background-image:var(--hover)]"
|
|
304
|
-
]
|
|
305
|
-
),
|
|
306
|
-
style: {
|
|
307
|
-
"--normal": sliderNormal,
|
|
308
|
-
"--hover": sliderHover,
|
|
309
|
-
"--active": sliderActive,
|
|
310
|
-
"--disabled": sliderDisabled,
|
|
311
|
-
zIndex
|
|
312
|
-
}
|
|
290
|
+
...sliderTrackProps,
|
|
291
|
+
className: (sliderTrackRenderProps) => {
|
|
292
|
+
const resolvedClassName = resolveClassname(
|
|
293
|
+
sliderTrackProps.className,
|
|
294
|
+
sliderTrackRenderProps
|
|
295
|
+
);
|
|
296
|
+
return (0, import_tailwind_merge4.twMerge)("relative w-full h-7 group", resolvedClassName);
|
|
313
297
|
},
|
|
314
|
-
|
|
315
|
-
|
|
316
|
-
|
|
317
|
-
|
|
318
|
-
|
|
319
|
-
|
|
298
|
+
children: (values2) => {
|
|
299
|
+
const left = values2.state.values.length === 1 ? 0 : values2.state.getThumbPercent(0) * 100;
|
|
300
|
+
const width = values2.state.values.length === 1 ? values2.state.getThumbPercent(0) * 100 : (values2.state.getThumbPercent(1) - values2.state.getThumbPercent(0)) * 100;
|
|
301
|
+
return /* @__PURE__ */ (0, import_jsx_runtime4.jsxs)(import_jsx_runtime4.Fragment, { children: [
|
|
302
|
+
/* @__PURE__ */ (0, import_jsx_runtime4.jsx)(
|
|
303
|
+
"div",
|
|
304
|
+
{
|
|
305
|
+
className: (0, import_tailwind_merge4.twMerge)(
|
|
306
|
+
"absolute h-0.5 top-[50%] transform translate-y-[-50%] w-full rounded-full bg-lol-gray-950",
|
|
307
|
+
resolveClassname(sliderTrackBackgroundClassName, values2)
|
|
308
|
+
)
|
|
309
|
+
}
|
|
310
|
+
),
|
|
311
|
+
/* @__PURE__ */ (0, import_jsx_runtime4.jsx)(
|
|
312
|
+
"div",
|
|
313
|
+
{
|
|
314
|
+
className: (0, import_tailwind_merge4.twMerge)(
|
|
315
|
+
"absolute h-0.5 top-[50%] transform translate-y-[-50%] from-[#463714] to-[#695625] bg-gradient-to-r",
|
|
316
|
+
values2.state.isDisabled ? "from-transparent via-transparent to-transparent bg-[#5C5B57]" : [
|
|
317
|
+
"group-hover:from-[#785a28] group-hover:via-[#c89b3c] group-hover:to-[#c8aa6e]",
|
|
318
|
+
"group-active:from-[#695625] group-active:via-[#463714] group-active:to-[#463714]"
|
|
319
|
+
],
|
|
320
|
+
resolveClassname(sliderTrackForegroundClassName, values2)
|
|
321
|
+
),
|
|
322
|
+
style: { left: `${left}%`, width: `${width}%` }
|
|
323
|
+
}
|
|
324
|
+
),
|
|
325
|
+
values2.state.values.map((_, i) => {
|
|
326
|
+
let zIndex = values2.state.getThumbPercent(i === 1 ? 0 : 1) === (i === 1 ? 0 : 1) ? 2 : void 0;
|
|
327
|
+
return /* @__PURE__ */ (0, import_jsx_runtime4.jsx)(import_jsx_runtime4.Fragment, { children: /* @__PURE__ */ (0, import_jsx_runtime4.jsx)(
|
|
328
|
+
import_react_aria_components4.SliderThumb,
|
|
329
|
+
{
|
|
330
|
+
index: i,
|
|
331
|
+
...sliderThumbProps,
|
|
332
|
+
className: (sliderThumbRenderProps) => {
|
|
333
|
+
const resolvedClassName = resolveClassname(
|
|
334
|
+
sliderThumbProps.className,
|
|
335
|
+
sliderThumbRenderProps
|
|
336
|
+
);
|
|
337
|
+
return (0, import_tailwind_merge4.twMerge)(
|
|
338
|
+
"bg-contain h-7 w-7 top-[50%] outline-none",
|
|
339
|
+
"[background-image:var(--normal)]",
|
|
340
|
+
sliderThumbRenderProps.isDisabled ? "[background-image:var(--disabled)]" : [
|
|
341
|
+
sliderThumbRenderProps.state.isThumbDragging(
|
|
342
|
+
i
|
|
343
|
+
) && "[background-image:var(--active)]",
|
|
344
|
+
!sliderThumbRenderProps.state.isThumbDragging(
|
|
345
|
+
0
|
|
346
|
+
) && !sliderThumbRenderProps.state.isThumbDragging(
|
|
347
|
+
1
|
|
348
|
+
) && "group-hover:[background-image:var(--hover)]"
|
|
349
|
+
],
|
|
350
|
+
resolvedClassName
|
|
351
|
+
);
|
|
352
|
+
},
|
|
353
|
+
style: {
|
|
354
|
+
"--normal": sliderNormal,
|
|
355
|
+
"--hover": sliderHover,
|
|
356
|
+
"--active": sliderActive,
|
|
357
|
+
"--disabled": sliderDisabled,
|
|
358
|
+
zIndex
|
|
359
|
+
}
|
|
360
|
+
},
|
|
361
|
+
i
|
|
362
|
+
) });
|
|
363
|
+
})
|
|
364
|
+
] });
|
|
365
|
+
}
|
|
366
|
+
}
|
|
367
|
+
)
|
|
368
|
+
] })
|
|
369
|
+
}
|
|
370
|
+
);
|
|
371
|
+
}
|
|
372
|
+
function SliderLabel({ children }) {
|
|
373
|
+
return /* @__PURE__ */ (0, import_jsx_runtime4.jsxs)("div", { className: "flex items-center justify-between font-spiegel text-xs text-lol-gray-300 font-normal tracking-wide", children: [
|
|
374
|
+
/* @__PURE__ */ (0, import_jsx_runtime4.jsx)(import_react_aria_components4.Label, { className: "", children }),
|
|
375
|
+
/* @__PURE__ */ (0, import_jsx_runtime4.jsx)(import_react_aria_components4.SliderOutput, { className: "", children: (sliderRenderProps) => sliderRenderProps.state.values.map((_, i) => sliderRenderProps.state.getThumbValueLabel(i)).join(" \u2013 ") })
|
|
376
|
+
] });
|
|
320
377
|
}
|
|
321
378
|
|
|
322
379
|
// src/components/switch.tsx
|
|
@@ -351,7 +408,7 @@ function Switch({
|
|
|
351
408
|
"div",
|
|
352
409
|
{
|
|
353
410
|
className: (0, import_tailwind_merge5.twMerge)(
|
|
354
|
-
"relative grid h-full w-full rounded-full bg-
|
|
411
|
+
"relative grid h-full w-full rounded-full bg-lol-gray-950 transition-colors duration-200 ease-in-out",
|
|
355
412
|
values.isPressed && "",
|
|
356
413
|
values.isSelected && "bg-green-800",
|
|
357
414
|
values.isSelected && values.isPressed && "bg-green-900",
|
|
@@ -369,7 +426,7 @@ function Switch({
|
|
|
369
426
|
values.isPressed && borderPressedClassName,
|
|
370
427
|
values.isDisabled && borderDisabledClassName
|
|
371
428
|
),
|
|
372
|
-
children: /* @__PURE__ */ (0, import_jsx_runtime5.jsx)("span", { className: "block h-full w-full rounded-full bg-
|
|
429
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime5.jsx)("span", { className: "block h-full w-full rounded-full bg-lol-gray-950" })
|
|
373
430
|
}
|
|
374
431
|
)
|
|
375
432
|
}
|
|
@@ -392,7 +449,7 @@ function ProgressBar({
|
|
|
392
449
|
...props
|
|
393
450
|
}) {
|
|
394
451
|
return /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(import_react_aria_components6.ProgressBar, { className: "flex w-56 flex-col gap-1 text-sm", ...props, children: ({ percentage, valueText }) => /* @__PURE__ */ (0, import_jsx_runtime6.jsxs)(import_jsx_runtime6.Fragment, { children: [
|
|
395
|
-
/* @__PURE__ */ (0, import_jsx_runtime6.jsxs)("div", { className: "flex font-[beaufort] font-bold uppercase text-
|
|
452
|
+
/* @__PURE__ */ (0, import_jsx_runtime6.jsxs)("div", { className: "flex font-[beaufort] font-bold uppercase text-lol-gold-100", children: [
|
|
396
453
|
/* @__PURE__ */ (0, import_jsx_runtime6.jsx)(import_react_aria_components6.Label, { className: "flex-1 ", children: label ?? "Loading" }),
|
|
397
454
|
/* @__PURE__ */ (0, import_jsx_runtime6.jsx)("span", { children: valueText })
|
|
398
455
|
] }),
|
|
@@ -403,15 +460,21 @@ function ProgressBar({
|
|
|
403
460
|
borderClassName,
|
|
404
461
|
"-ml-0.5 -mr-1 h-3 rounded-full p-px"
|
|
405
462
|
),
|
|
406
|
-
children: /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(
|
|
463
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(
|
|
407
464
|
"div",
|
|
408
465
|
{
|
|
409
|
-
className: (0, import_tailwind_merge6.twMerge)(
|
|
410
|
-
|
|
411
|
-
|
|
412
|
-
|
|
466
|
+
className: (0, import_tailwind_merge6.twMerge)("h-full w-full rounded-full bg-lol-gray-950"),
|
|
467
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(
|
|
468
|
+
"div",
|
|
469
|
+
{
|
|
470
|
+
className: (0, import_tailwind_merge6.twMerge)(
|
|
471
|
+
"h-full rounded-full bg-gradient-to-r from-[#005A82] via-[#067F9B] to-[#73CCD5]"
|
|
472
|
+
),
|
|
473
|
+
style: { width: `${percentage}%` }
|
|
474
|
+
}
|
|
475
|
+
)
|
|
413
476
|
}
|
|
414
|
-
)
|
|
477
|
+
)
|
|
415
478
|
}
|
|
416
479
|
)
|
|
417
480
|
] }) });
|
|
@@ -509,9 +572,9 @@ function TextField({
|
|
|
509
572
|
import_react_aria_components7.TextField,
|
|
510
573
|
{
|
|
511
574
|
className: (values) => {
|
|
512
|
-
const finalClassName =
|
|
575
|
+
const finalClassName = resolveClassname(props.className, values);
|
|
513
576
|
return (0, import_tailwind_merge8.twMerge)(
|
|
514
|
-
"flex flex-col outline-none
|
|
577
|
+
"flex flex-col outline-none",
|
|
515
578
|
borderClassName,
|
|
516
579
|
"focus-within:from-lol-gold-300 focus-within:via-lol-gold-200 focus-within:to-lol-gold-50",
|
|
517
580
|
props.isDisabled && "from-lol-gray-700 via-lol-gray-700 to-lol-gray-700",
|
|
@@ -524,16 +587,20 @@ function TextField({
|
|
|
524
587
|
{
|
|
525
588
|
className: (0, import_tailwind_merge8.twMerge)(
|
|
526
589
|
"m-px bg-black flex flex-row focus-within:from-lol-gray-950 focus-within:to-lol-gray-900 focus-within:bg-gradient-to-b",
|
|
527
|
-
props.isDisabled && "
|
|
590
|
+
props.isDisabled && "bg-lol-gray-950"
|
|
528
591
|
),
|
|
529
592
|
children: /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(
|
|
530
593
|
import_react_aria_components7.Input,
|
|
531
594
|
{
|
|
532
595
|
...inputProps,
|
|
533
596
|
className: (values) => {
|
|
534
|
-
const finalClassName =
|
|
597
|
+
const finalClassName = resolveClassname(
|
|
598
|
+
inputProps.className,
|
|
599
|
+
values
|
|
600
|
+
);
|
|
535
601
|
return (0, import_tailwind_merge8.twMerge)(
|
|
536
602
|
"bg-transparent grow py-2 px-3 text-lol-gold-50 text-xs outline-none font-spiegel tracking-wide",
|
|
603
|
+
values.isDisabled && "text-lol-gray-500",
|
|
537
604
|
finalClassName
|
|
538
605
|
);
|
|
539
606
|
},
|
|
@@ -556,7 +623,7 @@ function RadioGroup({ ...props }) {
|
|
|
556
623
|
{
|
|
557
624
|
...props,
|
|
558
625
|
className: (values) => {
|
|
559
|
-
const finalClassName = resolveClassname(props, values);
|
|
626
|
+
const finalClassName = resolveClassname(props.className, values);
|
|
560
627
|
return (0, import_tailwind_merge9.twMerge)("flex flex-col items-start", finalClassName);
|
|
561
628
|
}
|
|
562
629
|
}
|
|
@@ -568,7 +635,7 @@ function Radio({ ...props }) {
|
|
|
568
635
|
{
|
|
569
636
|
...props,
|
|
570
637
|
className: (values) => {
|
|
571
|
-
const finalClassName = resolveClassname(props, values);
|
|
638
|
+
const finalClassName = resolveClassname(props.className, values);
|
|
572
639
|
return (0, import_tailwind_merge9.twMerge)(
|
|
573
640
|
"text-lol-gold-300 font-spiegel text-xs font-normal py-2 bg-no-repeat bg-[length:18px] bg-left pl-6 pr-4",
|
|
574
641
|
values.isDisabled ? "text-lol-gray-500" : values.isHovered || values.isSelected ? "text-lol-gold-50" : "",
|
|
@@ -605,6 +672,55 @@ function Label3({ ...props }) {
|
|
|
605
672
|
}
|
|
606
673
|
);
|
|
607
674
|
}
|
|
675
|
+
|
|
676
|
+
// src/components/number-field.tsx
|
|
677
|
+
var import_react_aria_components10 = require("react-aria-components");
|
|
678
|
+
var import_tailwind_merge11 = require("tailwind-merge");
|
|
679
|
+
var import_jsx_runtime11 = require("react/jsx-runtime");
|
|
680
|
+
function NumberField({
|
|
681
|
+
inputProps = {},
|
|
682
|
+
groupProps = {},
|
|
683
|
+
...props
|
|
684
|
+
}) {
|
|
685
|
+
return /* @__PURE__ */ (0, import_jsx_runtime11.jsx)(import_react_aria_components10.NumberField, { ...props, children: /* @__PURE__ */ (0, import_jsx_runtime11.jsxs)(
|
|
686
|
+
import_react_aria_components10.Group,
|
|
687
|
+
{
|
|
688
|
+
...groupProps,
|
|
689
|
+
className: (values) => {
|
|
690
|
+
const finalClassName = resolveClassname(groupProps.className, values);
|
|
691
|
+
return (0, import_tailwind_merge11.twMerge)(
|
|
692
|
+
"grid grid-cols-[auto_1fr_auto] outline-none gap-px p-px",
|
|
693
|
+
borderClassName,
|
|
694
|
+
"focus-within:from-lol-gold-300 focus-within:via-lol-gold-200 focus-within:to-lol-gold-50",
|
|
695
|
+
props.isDisabled && "from-lol-gray-700 via-lol-gray-700 to-lol-gray-700",
|
|
696
|
+
finalClassName
|
|
697
|
+
);
|
|
698
|
+
},
|
|
699
|
+
children: [
|
|
700
|
+
/* @__PURE__ */ (0, import_jsx_runtime11.jsx)(import_react_aria_components10.Button, { className: "text-lol-gray-50 px-2.5 bg-black", slot: "decrement", children: "-" }),
|
|
701
|
+
/* @__PURE__ */ (0, import_jsx_runtime11.jsx)(
|
|
702
|
+
import_react_aria_components10.Input,
|
|
703
|
+
{
|
|
704
|
+
...inputProps,
|
|
705
|
+
className: (values) => {
|
|
706
|
+
const finalClassName = resolveClassname(
|
|
707
|
+
inputProps.className,
|
|
708
|
+
values
|
|
709
|
+
);
|
|
710
|
+
return (0, import_tailwind_merge11.twMerge)(
|
|
711
|
+
"bg-black w-full py-2 px-3 text-lol-gold-50 text-xs outline-none font-spiegel",
|
|
712
|
+
values.isDisabled && "text-lol-gray-500 bg-lol-gray-950",
|
|
713
|
+
values.isFocused && "from-lol-gray-950 to-lol-gray-900 bg-gradient-to-b",
|
|
714
|
+
finalClassName
|
|
715
|
+
);
|
|
716
|
+
}
|
|
717
|
+
}
|
|
718
|
+
),
|
|
719
|
+
/* @__PURE__ */ (0, import_jsx_runtime11.jsx)(import_react_aria_components10.Button, { className: "text-lol-gray-50 px-2.5 bg-black", slot: "increment", children: "+" })
|
|
720
|
+
]
|
|
721
|
+
}
|
|
722
|
+
) });
|
|
723
|
+
}
|
|
608
724
|
// Annotate the CommonJS export names for ESM import in node:
|
|
609
725
|
0 && (module.exports = {
|
|
610
726
|
Accordion,
|
|
@@ -614,12 +730,14 @@ function Label3({ ...props }) {
|
|
|
614
730
|
Button,
|
|
615
731
|
Item,
|
|
616
732
|
Label,
|
|
733
|
+
NumberField,
|
|
617
734
|
ProgressBar,
|
|
618
735
|
Radio,
|
|
619
736
|
RadioGroup,
|
|
620
737
|
SearchField,
|
|
621
738
|
Select,
|
|
622
739
|
Slider,
|
|
740
|
+
SliderLabel,
|
|
623
741
|
Switch,
|
|
624
742
|
TextField
|
|
625
743
|
});
|