@trading-game/design-intelligence-layer 1.1.0 → 1.2.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/AGENTS.md +1 -0
- package/README.md +5 -3
- package/dist/index.cjs +892 -620
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +22 -1
- package/dist/index.d.ts +22 -1
- package/dist/index.js +893 -622
- package/dist/index.js.map +1 -1
- package/docs/components/calendar.md +1 -1
- package/docs/components/date-wheel-picker.md +106 -0
- package/docs/components/toast.md +2 -2
- package/package.json +3 -2
- package/src/styles.css +15 -0
package/dist/index.js
CHANGED
|
@@ -3026,25 +3026,297 @@ function ContextMenuShortcut(_a) {
|
|
|
3026
3026
|
);
|
|
3027
3027
|
}
|
|
3028
3028
|
|
|
3029
|
+
// components/ui/date-wheel-picker.tsx
|
|
3030
|
+
import * as React7 from "react";
|
|
3031
|
+
import { jsx as jsx23, jsxs as jsxs15 } from "react/jsx-runtime";
|
|
3032
|
+
var ROW = 40;
|
|
3033
|
+
var VISIBLE_ROWS = 5;
|
|
3034
|
+
var SETTLE_MS = 120;
|
|
3035
|
+
var toParts = (date) => ({
|
|
3036
|
+
y: date.getFullYear(),
|
|
3037
|
+
m: date.getMonth(),
|
|
3038
|
+
d: date.getDate()
|
|
3039
|
+
});
|
|
3040
|
+
var toDate = ({ y, m, d }) => new Date(y, m, d);
|
|
3041
|
+
var daysIn = (y, m) => new Date(y, m + 1, 0).getDate();
|
|
3042
|
+
var dayStart = (date) => new Date(date.getFullYear(), date.getMonth(), date.getDate());
|
|
3043
|
+
function clamp(parts, min, max) {
|
|
3044
|
+
const d = Math.min(parts.d, daysIn(parts.y, parts.m));
|
|
3045
|
+
const date = toDate(__spreadProps(__spreadValues({}, parts), { d }));
|
|
3046
|
+
if (date < min) return toParts(min);
|
|
3047
|
+
if (date > max) return toParts(max);
|
|
3048
|
+
return __spreadProps(__spreadValues({}, parts), { d });
|
|
3049
|
+
}
|
|
3050
|
+
function Wheel({ items, index, onIndexChange, label, className }) {
|
|
3051
|
+
var _a;
|
|
3052
|
+
const ref = React7.useRef(null);
|
|
3053
|
+
const settleTimer = React7.useRef(null);
|
|
3054
|
+
const mounted = React7.useRef(false);
|
|
3055
|
+
const [live, setLive] = React7.useState(index);
|
|
3056
|
+
const scrollToIndex = React7.useCallback((i, smooth) => {
|
|
3057
|
+
var _a2;
|
|
3058
|
+
const el = ref.current;
|
|
3059
|
+
if (!el) return;
|
|
3060
|
+
const reduce = (_a2 = window.matchMedia) == null ? void 0 : _a2.call(window, "(prefers-reduced-motion: reduce)").matches;
|
|
3061
|
+
el.scrollTo({ top: i * ROW, behavior: smooth && !reduce ? "smooth" : "auto" });
|
|
3062
|
+
}, []);
|
|
3063
|
+
React7.useEffect(() => {
|
|
3064
|
+
setLive(index);
|
|
3065
|
+
const el = ref.current;
|
|
3066
|
+
if (el && Math.round(el.scrollTop / ROW) !== index) {
|
|
3067
|
+
scrollToIndex(index, mounted.current);
|
|
3068
|
+
}
|
|
3069
|
+
mounted.current = true;
|
|
3070
|
+
}, [index, items.length, scrollToIndex]);
|
|
3071
|
+
React7.useEffect(
|
|
3072
|
+
() => () => {
|
|
3073
|
+
if (settleTimer.current) clearTimeout(settleTimer.current);
|
|
3074
|
+
},
|
|
3075
|
+
[]
|
|
3076
|
+
);
|
|
3077
|
+
const nearestEnabled = (i) => {
|
|
3078
|
+
var _a2;
|
|
3079
|
+
if (!((_a2 = items[i]) == null ? void 0 : _a2.disabled)) return i;
|
|
3080
|
+
for (let step2 = 1; step2 < items.length; step2++) {
|
|
3081
|
+
if (items[i - step2] && !items[i - step2].disabled) return i - step2;
|
|
3082
|
+
if (items[i + step2] && !items[i + step2].disabled) return i + step2;
|
|
3083
|
+
}
|
|
3084
|
+
return i;
|
|
3085
|
+
};
|
|
3086
|
+
const onScroll = () => {
|
|
3087
|
+
var _a2;
|
|
3088
|
+
const el = ref.current;
|
|
3089
|
+
if (!el) return;
|
|
3090
|
+
const i = Math.max(0, Math.min(items.length - 1, Math.round(el.scrollTop / ROW)));
|
|
3091
|
+
if (i !== live) {
|
|
3092
|
+
setLive(i);
|
|
3093
|
+
(_a2 = navigator.vibrate) == null ? void 0 : _a2.call(navigator, 4);
|
|
3094
|
+
}
|
|
3095
|
+
if (settleTimer.current) clearTimeout(settleTimer.current);
|
|
3096
|
+
settleTimer.current = setTimeout(() => {
|
|
3097
|
+
const target = nearestEnabled(i);
|
|
3098
|
+
if (target !== i) {
|
|
3099
|
+
setLive(target);
|
|
3100
|
+
scrollToIndex(target, true);
|
|
3101
|
+
if (target !== index) onIndexChange(target);
|
|
3102
|
+
} else if (target !== index) onIndexChange(target);
|
|
3103
|
+
}, SETTLE_MS);
|
|
3104
|
+
};
|
|
3105
|
+
const step = (from, delta) => {
|
|
3106
|
+
var _a2;
|
|
3107
|
+
let i = from;
|
|
3108
|
+
for (let n = Math.abs(delta); n > 0; n--) {
|
|
3109
|
+
let next = i + Math.sign(delta);
|
|
3110
|
+
while ((_a2 = items[next]) == null ? void 0 : _a2.disabled) next += Math.sign(delta);
|
|
3111
|
+
if (!items[next]) break;
|
|
3112
|
+
i = next;
|
|
3113
|
+
}
|
|
3114
|
+
return i;
|
|
3115
|
+
};
|
|
3116
|
+
const onKeyDown = (e) => {
|
|
3117
|
+
const last = items.length - 1;
|
|
3118
|
+
let next = null;
|
|
3119
|
+
if (e.key === "ArrowDown") next = step(index, 1);
|
|
3120
|
+
else if (e.key === "ArrowUp") next = step(index, -1);
|
|
3121
|
+
else if (e.key === "PageDown") next = step(index, 5);
|
|
3122
|
+
else if (e.key === "PageUp") next = step(index, -5);
|
|
3123
|
+
else if (e.key === "Home") next = nearestEnabled(0);
|
|
3124
|
+
else if (e.key === "End") next = nearestEnabled(last);
|
|
3125
|
+
if (next === null) return;
|
|
3126
|
+
e.preventDefault();
|
|
3127
|
+
if (next !== index) onIndexChange(next);
|
|
3128
|
+
};
|
|
3129
|
+
const enabled = items.filter((it) => !it.disabled);
|
|
3130
|
+
return /* @__PURE__ */ jsxs15(
|
|
3131
|
+
"div",
|
|
3132
|
+
{
|
|
3133
|
+
ref,
|
|
3134
|
+
"data-slot": "date-wheel-picker-wheel",
|
|
3135
|
+
role: "spinbutton",
|
|
3136
|
+
tabIndex: 0,
|
|
3137
|
+
"aria-label": label,
|
|
3138
|
+
"aria-valuenow": index,
|
|
3139
|
+
"aria-valuetext": (_a = items[index]) == null ? void 0 : _a.label,
|
|
3140
|
+
"aria-valuemin": items.indexOf(enabled[0]),
|
|
3141
|
+
"aria-valuemax": items.indexOf(enabled[enabled.length - 1]),
|
|
3142
|
+
onScroll,
|
|
3143
|
+
onKeyDown,
|
|
3144
|
+
className: cn(
|
|
3145
|
+
"relative z-10 h-50 min-w-0 snap-y snap-mandatory overflow-y-scroll rounded-md outline-none",
|
|
3146
|
+
"[scrollbar-width:none] [&::-webkit-scrollbar]:hidden",
|
|
3147
|
+
// Rows fade toward the edges so the wheel reads as a drum.
|
|
3148
|
+
"[mask-image:linear-gradient(to_bottom,transparent,black_32%,black_68%,transparent)]",
|
|
3149
|
+
"focus-visible:ring-[3px] focus-visible:ring-ring-focus-strong",
|
|
3150
|
+
className
|
|
3151
|
+
),
|
|
3152
|
+
children: [
|
|
3153
|
+
/* @__PURE__ */ jsx23("div", { "aria-hidden": true, className: "h-20" }),
|
|
3154
|
+
items.map((item, i) => /* @__PURE__ */ jsx23(
|
|
3155
|
+
"div",
|
|
3156
|
+
{
|
|
3157
|
+
"aria-hidden": true,
|
|
3158
|
+
"data-selected": i === live ? "" : void 0,
|
|
3159
|
+
"data-disabled": item.disabled ? "" : void 0,
|
|
3160
|
+
onClick: () => !item.disabled && scrollToIndex(i, true),
|
|
3161
|
+
className: cn(
|
|
3162
|
+
"type-date-wheel-picker-item flex h-10 cursor-pointer snap-center items-center justify-center whitespace-nowrap tabular-nums select-none",
|
|
3163
|
+
"text-text-subtle-default transition-[color,transform] duration-fast ease-standard motion-reduce:transition-none",
|
|
3164
|
+
"data-selected:scale-[1.04] data-selected:text-text-brand-selected",
|
|
3165
|
+
"data-disabled:cursor-default data-disabled:text-text-disabled-default"
|
|
3166
|
+
),
|
|
3167
|
+
children: item.label
|
|
3168
|
+
},
|
|
3169
|
+
i
|
|
3170
|
+
)),
|
|
3171
|
+
/* @__PURE__ */ jsx23("div", { "aria-hidden": true, className: "h-20" })
|
|
3172
|
+
]
|
|
3173
|
+
}
|
|
3174
|
+
);
|
|
3175
|
+
}
|
|
3176
|
+
function DateWheelPicker(_a) {
|
|
3177
|
+
var _b = _a, {
|
|
3178
|
+
value,
|
|
3179
|
+
defaultValue,
|
|
3180
|
+
onValueChange,
|
|
3181
|
+
min: minProp,
|
|
3182
|
+
max: maxProp,
|
|
3183
|
+
order = "dmy",
|
|
3184
|
+
monthFormat = "long",
|
|
3185
|
+
locale,
|
|
3186
|
+
className
|
|
3187
|
+
} = _b, props = __objRest(_b, [
|
|
3188
|
+
"value",
|
|
3189
|
+
"defaultValue",
|
|
3190
|
+
"onValueChange",
|
|
3191
|
+
"min",
|
|
3192
|
+
"max",
|
|
3193
|
+
"order",
|
|
3194
|
+
"monthFormat",
|
|
3195
|
+
"locale",
|
|
3196
|
+
"className"
|
|
3197
|
+
]);
|
|
3198
|
+
const min = React7.useMemo(
|
|
3199
|
+
() => dayStart(minProp != null ? minProp : new Date(1900, 0, 1)),
|
|
3200
|
+
[minProp]
|
|
3201
|
+
);
|
|
3202
|
+
const max = React7.useMemo(
|
|
3203
|
+
() => dayStart(maxProp != null ? maxProp : new Date((/* @__PURE__ */ new Date()).getFullYear() + 10, 11, 31)),
|
|
3204
|
+
[maxProp]
|
|
3205
|
+
);
|
|
3206
|
+
const [inner, setInner] = React7.useState(
|
|
3207
|
+
() => clamp(toParts(defaultValue != null ? defaultValue : /* @__PURE__ */ new Date()), min, max)
|
|
3208
|
+
);
|
|
3209
|
+
const parts = value ? clamp(toParts(value), min, max) : clamp(inner, min, max);
|
|
3210
|
+
const commit = (next) => {
|
|
3211
|
+
const c = clamp(next, min, max);
|
|
3212
|
+
if (!value) setInner(c);
|
|
3213
|
+
if (c.y !== parts.y || c.m !== parts.m || c.d !== parts.d) {
|
|
3214
|
+
onValueChange == null ? void 0 : onValueChange(toDate(c));
|
|
3215
|
+
}
|
|
3216
|
+
};
|
|
3217
|
+
const monthNames = React7.useMemo(() => {
|
|
3218
|
+
const fmt = new Intl.DateTimeFormat(locale, {
|
|
3219
|
+
month: monthFormat === "numeric" ? "2-digit" : monthFormat
|
|
3220
|
+
});
|
|
3221
|
+
return Array.from({ length: 12 }, (_, m) => fmt.format(new Date(2e3, m, 1)));
|
|
3222
|
+
}, [locale, monthFormat]);
|
|
3223
|
+
const years = React7.useMemo(() => {
|
|
3224
|
+
const list = [];
|
|
3225
|
+
for (let y = min.getFullYear(); y <= max.getFullYear(); y++) list.push(y);
|
|
3226
|
+
return list;
|
|
3227
|
+
}, [min, max]);
|
|
3228
|
+
const inRange = (y, m, d) => {
|
|
3229
|
+
const date = new Date(y, m, d);
|
|
3230
|
+
return date >= min && date <= max;
|
|
3231
|
+
};
|
|
3232
|
+
const dayItems = Array.from({ length: daysIn(parts.y, parts.m) }, (_, i) => ({
|
|
3233
|
+
label: String(i + 1).padStart(2, "0"),
|
|
3234
|
+
disabled: !inRange(parts.y, parts.m, i + 1)
|
|
3235
|
+
}));
|
|
3236
|
+
const monthItems = monthNames.map((label, m) => ({
|
|
3237
|
+
label,
|
|
3238
|
+
// A month is off only when none of its days are in range.
|
|
3239
|
+
disabled: new Date(parts.y, m, daysIn(parts.y, m)) < min || new Date(parts.y, m, 1) > max
|
|
3240
|
+
}));
|
|
3241
|
+
const yearItems = years.map((y) => ({ label: String(y), disabled: false }));
|
|
3242
|
+
const wheels = {
|
|
3243
|
+
d: /* @__PURE__ */ jsx23(
|
|
3244
|
+
Wheel,
|
|
3245
|
+
{
|
|
3246
|
+
label: "Day",
|
|
3247
|
+
items: dayItems,
|
|
3248
|
+
index: parts.d - 1,
|
|
3249
|
+
onIndexChange: (i) => commit(__spreadProps(__spreadValues({}, parts), { d: i + 1 })),
|
|
3250
|
+
className: "flex-[0.8]"
|
|
3251
|
+
},
|
|
3252
|
+
"d"
|
|
3253
|
+
),
|
|
3254
|
+
m: /* @__PURE__ */ jsx23(
|
|
3255
|
+
Wheel,
|
|
3256
|
+
{
|
|
3257
|
+
label: "Month",
|
|
3258
|
+
items: monthItems,
|
|
3259
|
+
index: parts.m,
|
|
3260
|
+
onIndexChange: (i) => commit(__spreadProps(__spreadValues({}, parts), { m: i })),
|
|
3261
|
+
className: monthFormat === "long" ? "flex-[1.5]" : "flex-1"
|
|
3262
|
+
},
|
|
3263
|
+
"m"
|
|
3264
|
+
),
|
|
3265
|
+
y: /* @__PURE__ */ jsx23(
|
|
3266
|
+
Wheel,
|
|
3267
|
+
{
|
|
3268
|
+
label: "Year",
|
|
3269
|
+
items: yearItems,
|
|
3270
|
+
index: parts.y - years[0],
|
|
3271
|
+
onIndexChange: (i) => commit(__spreadProps(__spreadValues({}, parts), { y: years[i] })),
|
|
3272
|
+
className: "flex-1"
|
|
3273
|
+
},
|
|
3274
|
+
"y"
|
|
3275
|
+
)
|
|
3276
|
+
};
|
|
3277
|
+
return /* @__PURE__ */ jsxs15(
|
|
3278
|
+
"div",
|
|
3279
|
+
__spreadProps(__spreadValues({
|
|
3280
|
+
"data-slot": "date-wheel-picker",
|
|
3281
|
+
role: "group",
|
|
3282
|
+
"aria-label": "Date",
|
|
3283
|
+
className: cn("relative flex w-full gap-1", className),
|
|
3284
|
+
style: { height: ROW * VISIBLE_ROWS }
|
|
3285
|
+
}, props), {
|
|
3286
|
+
children: [
|
|
3287
|
+
/* @__PURE__ */ jsx23(
|
|
3288
|
+
"div",
|
|
3289
|
+
{
|
|
3290
|
+
"aria-hidden": true,
|
|
3291
|
+
"data-slot": "date-wheel-picker-band",
|
|
3292
|
+
className: "pointer-events-none absolute inset-x-0 top-20 h-10 rounded-md bg-background-brand-selected"
|
|
3293
|
+
}
|
|
3294
|
+
),
|
|
3295
|
+
order.split("").map((k) => wheels[k])
|
|
3296
|
+
]
|
|
3297
|
+
})
|
|
3298
|
+
);
|
|
3299
|
+
}
|
|
3300
|
+
|
|
3029
3301
|
// components/ui/drawer.tsx
|
|
3030
3302
|
import { XIcon as XIcon2 } from "lucide-react";
|
|
3031
3303
|
import { Drawer as DrawerPrimitive } from "vaul";
|
|
3032
|
-
import { jsx as
|
|
3304
|
+
import { jsx as jsx24, jsxs as jsxs16 } from "react/jsx-runtime";
|
|
3033
3305
|
function Drawer(_a) {
|
|
3034
3306
|
var props = __objRest(_a, []);
|
|
3035
|
-
return /* @__PURE__ */
|
|
3307
|
+
return /* @__PURE__ */ jsx24(DrawerPrimitive.Root, __spreadValues({ "data-slot": "drawer" }, props));
|
|
3036
3308
|
}
|
|
3037
3309
|
function DrawerTrigger(_a) {
|
|
3038
3310
|
var props = __objRest(_a, []);
|
|
3039
|
-
return /* @__PURE__ */
|
|
3311
|
+
return /* @__PURE__ */ jsx24(DrawerPrimitive.Trigger, __spreadValues({ "data-slot": "drawer-trigger" }, props));
|
|
3040
3312
|
}
|
|
3041
3313
|
function DrawerPortal(_a) {
|
|
3042
3314
|
var props = __objRest(_a, []);
|
|
3043
|
-
return /* @__PURE__ */
|
|
3315
|
+
return /* @__PURE__ */ jsx24(DrawerPrimitive.Portal, __spreadValues({ "data-slot": "drawer-portal" }, props));
|
|
3044
3316
|
}
|
|
3045
3317
|
function DrawerClose(_a) {
|
|
3046
3318
|
var props = __objRest(_a, []);
|
|
3047
|
-
return /* @__PURE__ */
|
|
3319
|
+
return /* @__PURE__ */ jsx24(DrawerPrimitive.Close, __spreadValues({ "data-slot": "drawer-close" }, props));
|
|
3048
3320
|
}
|
|
3049
3321
|
function DrawerOverlay(_a) {
|
|
3050
3322
|
var _b = _a, {
|
|
@@ -3052,7 +3324,7 @@ function DrawerOverlay(_a) {
|
|
|
3052
3324
|
} = _b, props = __objRest(_b, [
|
|
3053
3325
|
"className"
|
|
3054
3326
|
]);
|
|
3055
|
-
return /* @__PURE__ */
|
|
3327
|
+
return /* @__PURE__ */ jsx24(
|
|
3056
3328
|
DrawerPrimitive.Overlay,
|
|
3057
3329
|
__spreadValues({
|
|
3058
3330
|
"data-slot": "drawer-overlay",
|
|
@@ -3073,9 +3345,9 @@ function DrawerContent(_a) {
|
|
|
3073
3345
|
"children",
|
|
3074
3346
|
"dismiss"
|
|
3075
3347
|
]);
|
|
3076
|
-
return /* @__PURE__ */
|
|
3077
|
-
/* @__PURE__ */
|
|
3078
|
-
/* @__PURE__ */
|
|
3348
|
+
return /* @__PURE__ */ jsxs16(DrawerPortal, { "data-slot": "drawer-portal", children: [
|
|
3349
|
+
/* @__PURE__ */ jsx24(DrawerOverlay, {}),
|
|
3350
|
+
/* @__PURE__ */ jsxs16(
|
|
3079
3351
|
DrawerPrimitive.Content,
|
|
3080
3352
|
__spreadProps(__spreadValues({
|
|
3081
3353
|
"data-slot": "drawer-content",
|
|
@@ -3089,13 +3361,13 @@ function DrawerContent(_a) {
|
|
|
3089
3361
|
)
|
|
3090
3362
|
}, props), {
|
|
3091
3363
|
children: [
|
|
3092
|
-
dismiss === "handle" ? /* @__PURE__ */
|
|
3364
|
+
dismiss === "handle" ? /* @__PURE__ */ jsx24("div", { className: "mx-auto mt-4 hidden h-2 w-[100px] shrink-0 rounded-full bg-border-default-default group-data-[vaul-drawer-direction=bottom]/drawer-content:block" }) : /* @__PURE__ */ jsx24("div", { className: "flex shrink-0 justify-end p-4 pb-0", children: /* @__PURE__ */ jsx24(DrawerPrimitive.Close, { asChild: true, children: /* @__PURE__ */ jsx24(
|
|
3093
3365
|
NavigationButton,
|
|
3094
3366
|
{
|
|
3095
3367
|
"data-slot": "drawer-close",
|
|
3096
3368
|
size: "sm",
|
|
3097
3369
|
"aria-label": "Close",
|
|
3098
|
-
children: /* @__PURE__ */
|
|
3370
|
+
children: /* @__PURE__ */ jsx24(XIcon2, { className: "size-4" })
|
|
3099
3371
|
}
|
|
3100
3372
|
) }) }),
|
|
3101
3373
|
children
|
|
@@ -3106,7 +3378,7 @@ function DrawerContent(_a) {
|
|
|
3106
3378
|
}
|
|
3107
3379
|
function DrawerHeader(_a) {
|
|
3108
3380
|
var _b = _a, { className } = _b, props = __objRest(_b, ["className"]);
|
|
3109
|
-
return /* @__PURE__ */
|
|
3381
|
+
return /* @__PURE__ */ jsx24(
|
|
3110
3382
|
"div",
|
|
3111
3383
|
__spreadValues({
|
|
3112
3384
|
"data-slot": "drawer-header",
|
|
@@ -3119,7 +3391,7 @@ function DrawerHeader(_a) {
|
|
|
3119
3391
|
}
|
|
3120
3392
|
function DrawerFooter(_a) {
|
|
3121
3393
|
var _b = _a, { className } = _b, props = __objRest(_b, ["className"]);
|
|
3122
|
-
return /* @__PURE__ */
|
|
3394
|
+
return /* @__PURE__ */ jsx24(
|
|
3123
3395
|
"div",
|
|
3124
3396
|
__spreadValues({
|
|
3125
3397
|
"data-slot": "drawer-footer",
|
|
@@ -3133,7 +3405,7 @@ function DrawerTitle(_a) {
|
|
|
3133
3405
|
} = _b, props = __objRest(_b, [
|
|
3134
3406
|
"className"
|
|
3135
3407
|
]);
|
|
3136
|
-
return /* @__PURE__ */
|
|
3408
|
+
return /* @__PURE__ */ jsx24(
|
|
3137
3409
|
DrawerPrimitive.Title,
|
|
3138
3410
|
__spreadValues({
|
|
3139
3411
|
"data-slot": "drawer-title",
|
|
@@ -3147,7 +3419,7 @@ function DrawerDescription(_a) {
|
|
|
3147
3419
|
} = _b, props = __objRest(_b, [
|
|
3148
3420
|
"className"
|
|
3149
3421
|
]);
|
|
3150
|
-
return /* @__PURE__ */
|
|
3422
|
+
return /* @__PURE__ */ jsx24(
|
|
3151
3423
|
DrawerPrimitive.Description,
|
|
3152
3424
|
__spreadValues({
|
|
3153
3425
|
"data-slot": "drawer-description",
|
|
@@ -3159,18 +3431,18 @@ function DrawerDescription(_a) {
|
|
|
3159
3431
|
// components/ui/dropdown-menu.tsx
|
|
3160
3432
|
import { CheckIcon as CheckIcon4, ChevronRightIcon as ChevronRightIcon4, CircleIcon as CircleIcon2 } from "lucide-react";
|
|
3161
3433
|
import { DropdownMenu as DropdownMenuPrimitive } from "radix-ui";
|
|
3162
|
-
import { jsx as
|
|
3434
|
+
import { jsx as jsx25, jsxs as jsxs17 } from "react/jsx-runtime";
|
|
3163
3435
|
function DropdownMenu(_a) {
|
|
3164
3436
|
var props = __objRest(_a, []);
|
|
3165
|
-
return /* @__PURE__ */
|
|
3437
|
+
return /* @__PURE__ */ jsx25(DropdownMenuPrimitive.Root, __spreadValues({ "data-slot": "dropdown-menu" }, props));
|
|
3166
3438
|
}
|
|
3167
3439
|
function DropdownMenuPortal(_a) {
|
|
3168
3440
|
var props = __objRest(_a, []);
|
|
3169
|
-
return /* @__PURE__ */
|
|
3441
|
+
return /* @__PURE__ */ jsx25(DropdownMenuPrimitive.Portal, __spreadValues({ "data-slot": "dropdown-menu-portal" }, props));
|
|
3170
3442
|
}
|
|
3171
3443
|
function DropdownMenuTrigger(_a) {
|
|
3172
3444
|
var props = __objRest(_a, []);
|
|
3173
|
-
return /* @__PURE__ */
|
|
3445
|
+
return /* @__PURE__ */ jsx25(
|
|
3174
3446
|
DropdownMenuPrimitive.Trigger,
|
|
3175
3447
|
__spreadValues({
|
|
3176
3448
|
"data-slot": "dropdown-menu-trigger"
|
|
@@ -3185,7 +3457,7 @@ function DropdownMenuContent(_a) {
|
|
|
3185
3457
|
"className",
|
|
3186
3458
|
"sideOffset"
|
|
3187
3459
|
]);
|
|
3188
|
-
return /* @__PURE__ */
|
|
3460
|
+
return /* @__PURE__ */ jsx25(DropdownMenuPrimitive.Portal, { children: /* @__PURE__ */ jsx25(
|
|
3189
3461
|
DropdownMenuPrimitive.Content,
|
|
3190
3462
|
__spreadValues({
|
|
3191
3463
|
"data-slot": "dropdown-menu-content",
|
|
@@ -3199,7 +3471,7 @@ function DropdownMenuContent(_a) {
|
|
|
3199
3471
|
}
|
|
3200
3472
|
function DropdownMenuGroup(_a) {
|
|
3201
3473
|
var props = __objRest(_a, []);
|
|
3202
|
-
return /* @__PURE__ */
|
|
3474
|
+
return /* @__PURE__ */ jsx25(DropdownMenuPrimitive.Group, __spreadValues({ "data-slot": "dropdown-menu-group" }, props));
|
|
3203
3475
|
}
|
|
3204
3476
|
function DropdownMenuItem(_a) {
|
|
3205
3477
|
var _b = _a, {
|
|
@@ -3211,7 +3483,7 @@ function DropdownMenuItem(_a) {
|
|
|
3211
3483
|
"inset",
|
|
3212
3484
|
"variant"
|
|
3213
3485
|
]);
|
|
3214
|
-
return /* @__PURE__ */
|
|
3486
|
+
return /* @__PURE__ */ jsx25(
|
|
3215
3487
|
DropdownMenuPrimitive.Item,
|
|
3216
3488
|
__spreadValues({
|
|
3217
3489
|
"data-slot": "dropdown-menu-item",
|
|
@@ -3234,7 +3506,7 @@ function DropdownMenuCheckboxItem(_a) {
|
|
|
3234
3506
|
"children",
|
|
3235
3507
|
"checked"
|
|
3236
3508
|
]);
|
|
3237
|
-
return /* @__PURE__ */
|
|
3509
|
+
return /* @__PURE__ */ jsxs17(
|
|
3238
3510
|
DropdownMenuPrimitive.CheckboxItem,
|
|
3239
3511
|
__spreadProps(__spreadValues({
|
|
3240
3512
|
"data-slot": "dropdown-menu-checkbox-item",
|
|
@@ -3245,7 +3517,7 @@ function DropdownMenuCheckboxItem(_a) {
|
|
|
3245
3517
|
checked
|
|
3246
3518
|
}, props), {
|
|
3247
3519
|
children: [
|
|
3248
|
-
/* @__PURE__ */
|
|
3520
|
+
/* @__PURE__ */ jsx25("span", { className: "pointer-events-none absolute left-2 flex size-3.5 items-center justify-center", children: /* @__PURE__ */ jsx25(DropdownMenuPrimitive.ItemIndicator, { children: /* @__PURE__ */ jsx25(CheckIcon4, { className: "size-4" }) }) }),
|
|
3249
3521
|
children
|
|
3250
3522
|
]
|
|
3251
3523
|
})
|
|
@@ -3253,7 +3525,7 @@ function DropdownMenuCheckboxItem(_a) {
|
|
|
3253
3525
|
}
|
|
3254
3526
|
function DropdownMenuRadioGroup(_a) {
|
|
3255
3527
|
var props = __objRest(_a, []);
|
|
3256
|
-
return /* @__PURE__ */
|
|
3528
|
+
return /* @__PURE__ */ jsx25(
|
|
3257
3529
|
DropdownMenuPrimitive.RadioGroup,
|
|
3258
3530
|
__spreadValues({
|
|
3259
3531
|
"data-slot": "dropdown-menu-radio-group"
|
|
@@ -3268,7 +3540,7 @@ function DropdownMenuRadioItem(_a) {
|
|
|
3268
3540
|
"className",
|
|
3269
3541
|
"children"
|
|
3270
3542
|
]);
|
|
3271
|
-
return /* @__PURE__ */
|
|
3543
|
+
return /* @__PURE__ */ jsxs17(
|
|
3272
3544
|
DropdownMenuPrimitive.RadioItem,
|
|
3273
3545
|
__spreadProps(__spreadValues({
|
|
3274
3546
|
"data-slot": "dropdown-menu-radio-item",
|
|
@@ -3278,7 +3550,7 @@ function DropdownMenuRadioItem(_a) {
|
|
|
3278
3550
|
)
|
|
3279
3551
|
}, props), {
|
|
3280
3552
|
children: [
|
|
3281
|
-
/* @__PURE__ */
|
|
3553
|
+
/* @__PURE__ */ jsx25("span", { className: "pointer-events-none absolute left-2 flex size-3.5 items-center justify-center", children: /* @__PURE__ */ jsx25(DropdownMenuPrimitive.ItemIndicator, { children: /* @__PURE__ */ jsx25(CircleIcon2, { className: "size-2 fill-current" }) }) }),
|
|
3282
3554
|
children
|
|
3283
3555
|
]
|
|
3284
3556
|
})
|
|
@@ -3292,7 +3564,7 @@ function DropdownMenuLabel(_a) {
|
|
|
3292
3564
|
"className",
|
|
3293
3565
|
"inset"
|
|
3294
3566
|
]);
|
|
3295
|
-
return /* @__PURE__ */
|
|
3567
|
+
return /* @__PURE__ */ jsx25(
|
|
3296
3568
|
DropdownMenuPrimitive.Label,
|
|
3297
3569
|
__spreadValues({
|
|
3298
3570
|
"data-slot": "dropdown-menu-label",
|
|
@@ -3310,7 +3582,7 @@ function DropdownMenuSeparator(_a) {
|
|
|
3310
3582
|
} = _b, props = __objRest(_b, [
|
|
3311
3583
|
"className"
|
|
3312
3584
|
]);
|
|
3313
|
-
return /* @__PURE__ */
|
|
3585
|
+
return /* @__PURE__ */ jsx25(
|
|
3314
3586
|
DropdownMenuPrimitive.Separator,
|
|
3315
3587
|
__spreadValues({
|
|
3316
3588
|
"data-slot": "dropdown-menu-separator",
|
|
@@ -3324,7 +3596,7 @@ function DropdownMenuShortcut(_a) {
|
|
|
3324
3596
|
} = _b, props = __objRest(_b, [
|
|
3325
3597
|
"className"
|
|
3326
3598
|
]);
|
|
3327
|
-
return /* @__PURE__ */
|
|
3599
|
+
return /* @__PURE__ */ jsx25(
|
|
3328
3600
|
"span",
|
|
3329
3601
|
__spreadValues({
|
|
3330
3602
|
"data-slot": "dropdown-menu-shortcut",
|
|
@@ -3337,7 +3609,7 @@ function DropdownMenuShortcut(_a) {
|
|
|
3337
3609
|
}
|
|
3338
3610
|
function DropdownMenuSub(_a) {
|
|
3339
3611
|
var props = __objRest(_a, []);
|
|
3340
|
-
return /* @__PURE__ */
|
|
3612
|
+
return /* @__PURE__ */ jsx25(DropdownMenuPrimitive.Sub, __spreadValues({ "data-slot": "dropdown-menu-sub" }, props));
|
|
3341
3613
|
}
|
|
3342
3614
|
function DropdownMenuSubTrigger(_a) {
|
|
3343
3615
|
var _b = _a, {
|
|
@@ -3349,7 +3621,7 @@ function DropdownMenuSubTrigger(_a) {
|
|
|
3349
3621
|
"inset",
|
|
3350
3622
|
"children"
|
|
3351
3623
|
]);
|
|
3352
|
-
return /* @__PURE__ */
|
|
3624
|
+
return /* @__PURE__ */ jsxs17(
|
|
3353
3625
|
DropdownMenuPrimitive.SubTrigger,
|
|
3354
3626
|
__spreadProps(__spreadValues({
|
|
3355
3627
|
"data-slot": "dropdown-menu-sub-trigger",
|
|
@@ -3361,7 +3633,7 @@ function DropdownMenuSubTrigger(_a) {
|
|
|
3361
3633
|
}, props), {
|
|
3362
3634
|
children: [
|
|
3363
3635
|
children,
|
|
3364
|
-
/* @__PURE__ */
|
|
3636
|
+
/* @__PURE__ */ jsx25(ChevronRightIcon4, { className: "ml-auto size-4" })
|
|
3365
3637
|
]
|
|
3366
3638
|
})
|
|
3367
3639
|
);
|
|
@@ -3372,7 +3644,7 @@ function DropdownMenuSubContent(_a) {
|
|
|
3372
3644
|
} = _b, props = __objRest(_b, [
|
|
3373
3645
|
"className"
|
|
3374
3646
|
]);
|
|
3375
|
-
return /* @__PURE__ */
|
|
3647
|
+
return /* @__PURE__ */ jsx25(
|
|
3376
3648
|
DropdownMenuPrimitive.SubContent,
|
|
3377
3649
|
__spreadValues({
|
|
3378
3650
|
"data-slot": "dropdown-menu-sub-content",
|
|
@@ -3386,10 +3658,10 @@ function DropdownMenuSubContent(_a) {
|
|
|
3386
3658
|
|
|
3387
3659
|
// components/ui/empty.tsx
|
|
3388
3660
|
import { cva as cva6 } from "class-variance-authority";
|
|
3389
|
-
import { jsx as
|
|
3661
|
+
import { jsx as jsx26 } from "react/jsx-runtime";
|
|
3390
3662
|
function Empty(_a) {
|
|
3391
3663
|
var _b = _a, { className } = _b, props = __objRest(_b, ["className"]);
|
|
3392
|
-
return /* @__PURE__ */
|
|
3664
|
+
return /* @__PURE__ */ jsx26(
|
|
3393
3665
|
"div",
|
|
3394
3666
|
__spreadValues({
|
|
3395
3667
|
"data-slot": "empty",
|
|
@@ -3402,7 +3674,7 @@ function Empty(_a) {
|
|
|
3402
3674
|
}
|
|
3403
3675
|
function EmptyHeader(_a) {
|
|
3404
3676
|
var _b = _a, { className } = _b, props = __objRest(_b, ["className"]);
|
|
3405
|
-
return /* @__PURE__ */
|
|
3677
|
+
return /* @__PURE__ */ jsx26(
|
|
3406
3678
|
"div",
|
|
3407
3679
|
__spreadValues({
|
|
3408
3680
|
"data-slot": "empty-header",
|
|
@@ -3435,7 +3707,7 @@ function EmptyMedia(_a) {
|
|
|
3435
3707
|
"className",
|
|
3436
3708
|
"variant"
|
|
3437
3709
|
]);
|
|
3438
|
-
return /* @__PURE__ */
|
|
3710
|
+
return /* @__PURE__ */ jsx26(
|
|
3439
3711
|
"div",
|
|
3440
3712
|
__spreadValues({
|
|
3441
3713
|
"data-slot": "empty-icon",
|
|
@@ -3446,7 +3718,7 @@ function EmptyMedia(_a) {
|
|
|
3446
3718
|
}
|
|
3447
3719
|
function EmptyTitle(_a) {
|
|
3448
3720
|
var _b = _a, { className } = _b, props = __objRest(_b, ["className"]);
|
|
3449
|
-
return /* @__PURE__ */
|
|
3721
|
+
return /* @__PURE__ */ jsx26(
|
|
3450
3722
|
"div",
|
|
3451
3723
|
__spreadValues({
|
|
3452
3724
|
"data-slot": "empty-title",
|
|
@@ -3456,7 +3728,7 @@ function EmptyTitle(_a) {
|
|
|
3456
3728
|
}
|
|
3457
3729
|
function EmptyDescription(_a) {
|
|
3458
3730
|
var _b = _a, { className } = _b, props = __objRest(_b, ["className"]);
|
|
3459
|
-
return /* @__PURE__ */
|
|
3731
|
+
return /* @__PURE__ */ jsx26(
|
|
3460
3732
|
"div",
|
|
3461
3733
|
__spreadValues({
|
|
3462
3734
|
"data-slot": "empty-description",
|
|
@@ -3469,7 +3741,7 @@ function EmptyDescription(_a) {
|
|
|
3469
3741
|
}
|
|
3470
3742
|
function EmptyContent(_a) {
|
|
3471
3743
|
var _b = _a, { className } = _b, props = __objRest(_b, ["className"]);
|
|
3472
|
-
return /* @__PURE__ */
|
|
3744
|
+
return /* @__PURE__ */ jsx26(
|
|
3473
3745
|
"div",
|
|
3474
3746
|
__spreadValues({
|
|
3475
3747
|
"data-slot": "empty-content",
|
|
@@ -3482,20 +3754,20 @@ function EmptyContent(_a) {
|
|
|
3482
3754
|
}
|
|
3483
3755
|
|
|
3484
3756
|
// components/ui/field.tsx
|
|
3485
|
-
import * as
|
|
3486
|
-
import { useMemo as
|
|
3757
|
+
import * as React8 from "react";
|
|
3758
|
+
import { useMemo as useMemo3 } from "react";
|
|
3487
3759
|
import { cva as cva7 } from "class-variance-authority";
|
|
3488
3760
|
|
|
3489
3761
|
// components/ui/label.tsx
|
|
3490
3762
|
import { Label as LabelPrimitive } from "radix-ui";
|
|
3491
|
-
import { jsx as
|
|
3763
|
+
import { jsx as jsx27 } from "react/jsx-runtime";
|
|
3492
3764
|
function Label(_a) {
|
|
3493
3765
|
var _b = _a, {
|
|
3494
3766
|
className
|
|
3495
3767
|
} = _b, props = __objRest(_b, [
|
|
3496
3768
|
"className"
|
|
3497
3769
|
]);
|
|
3498
|
-
return /* @__PURE__ */
|
|
3770
|
+
return /* @__PURE__ */ jsx27(
|
|
3499
3771
|
LabelPrimitive.Root,
|
|
3500
3772
|
__spreadValues({
|
|
3501
3773
|
"data-slot": "label",
|
|
@@ -3511,7 +3783,7 @@ function Label(_a) {
|
|
|
3511
3783
|
|
|
3512
3784
|
// components/ui/separator.tsx
|
|
3513
3785
|
import { Separator as SeparatorPrimitive } from "radix-ui";
|
|
3514
|
-
import { jsx as
|
|
3786
|
+
import { jsx as jsx28 } from "react/jsx-runtime";
|
|
3515
3787
|
function Separator(_a) {
|
|
3516
3788
|
var _b = _a, {
|
|
3517
3789
|
className,
|
|
@@ -3522,7 +3794,7 @@ function Separator(_a) {
|
|
|
3522
3794
|
"orientation",
|
|
3523
3795
|
"decorative"
|
|
3524
3796
|
]);
|
|
3525
|
-
return /* @__PURE__ */
|
|
3797
|
+
return /* @__PURE__ */ jsx28(
|
|
3526
3798
|
SeparatorPrimitive.Root,
|
|
3527
3799
|
__spreadValues({
|
|
3528
3800
|
"data-slot": "separator",
|
|
@@ -3537,10 +3809,10 @@ function Separator(_a) {
|
|
|
3537
3809
|
}
|
|
3538
3810
|
|
|
3539
3811
|
// components/ui/field.tsx
|
|
3540
|
-
import { jsx as
|
|
3541
|
-
var FieldSizeContext =
|
|
3812
|
+
import { jsx as jsx29, jsxs as jsxs18 } from "react/jsx-runtime";
|
|
3813
|
+
var FieldSizeContext = React8.createContext("md");
|
|
3542
3814
|
function useFieldSize() {
|
|
3543
|
-
return
|
|
3815
|
+
return React8.useContext(FieldSizeContext);
|
|
3544
3816
|
}
|
|
3545
3817
|
var fieldLabelType = {
|
|
3546
3818
|
sm: "type-field-label-sm",
|
|
@@ -3549,7 +3821,7 @@ var fieldLabelType = {
|
|
|
3549
3821
|
};
|
|
3550
3822
|
function FieldSet(_a) {
|
|
3551
3823
|
var _b = _a, { className } = _b, props = __objRest(_b, ["className"]);
|
|
3552
|
-
return /* @__PURE__ */
|
|
3824
|
+
return /* @__PURE__ */ jsx29(
|
|
3553
3825
|
"fieldset",
|
|
3554
3826
|
__spreadValues({
|
|
3555
3827
|
"data-slot": "field-set",
|
|
@@ -3569,7 +3841,7 @@ function FieldLegend(_a) {
|
|
|
3569
3841
|
"className",
|
|
3570
3842
|
"variant"
|
|
3571
3843
|
]);
|
|
3572
|
-
return /* @__PURE__ */
|
|
3844
|
+
return /* @__PURE__ */ jsx29(
|
|
3573
3845
|
"legend",
|
|
3574
3846
|
__spreadValues({
|
|
3575
3847
|
"data-slot": "field-legend",
|
|
@@ -3586,7 +3858,7 @@ function FieldLegend(_a) {
|
|
|
3586
3858
|
}
|
|
3587
3859
|
function FieldGroup(_a) {
|
|
3588
3860
|
var _b = _a, { className } = _b, props = __objRest(_b, ["className"]);
|
|
3589
|
-
return /* @__PURE__ */
|
|
3861
|
+
return /* @__PURE__ */ jsx29(
|
|
3590
3862
|
"div",
|
|
3591
3863
|
__spreadValues({
|
|
3592
3864
|
"data-slot": "field-group",
|
|
@@ -3636,7 +3908,7 @@ function Field(_a) {
|
|
|
3636
3908
|
"orientation",
|
|
3637
3909
|
"size"
|
|
3638
3910
|
]);
|
|
3639
|
-
return /* @__PURE__ */
|
|
3911
|
+
return /* @__PURE__ */ jsx29(FieldSizeContext.Provider, { value: size != null ? size : "md", children: /* @__PURE__ */ jsx29(
|
|
3640
3912
|
"div",
|
|
3641
3913
|
__spreadValues({
|
|
3642
3914
|
role: "group",
|
|
@@ -3649,7 +3921,7 @@ function Field(_a) {
|
|
|
3649
3921
|
}
|
|
3650
3922
|
function FieldContent(_a) {
|
|
3651
3923
|
var _b = _a, { className } = _b, props = __objRest(_b, ["className"]);
|
|
3652
|
-
return /* @__PURE__ */
|
|
3924
|
+
return /* @__PURE__ */ jsx29(
|
|
3653
3925
|
"div",
|
|
3654
3926
|
__spreadValues({
|
|
3655
3927
|
"data-slot": "field-content",
|
|
@@ -3667,7 +3939,7 @@ function FieldLabel(_a) {
|
|
|
3667
3939
|
"className"
|
|
3668
3940
|
]);
|
|
3669
3941
|
const size = useFieldSize();
|
|
3670
|
-
return /* @__PURE__ */
|
|
3942
|
+
return /* @__PURE__ */ jsx29(
|
|
3671
3943
|
Label,
|
|
3672
3944
|
__spreadValues({
|
|
3673
3945
|
"data-slot": "field-label",
|
|
@@ -3684,7 +3956,7 @@ function FieldLabel(_a) {
|
|
|
3684
3956
|
function FieldTitle(_a) {
|
|
3685
3957
|
var _b = _a, { className } = _b, props = __objRest(_b, ["className"]);
|
|
3686
3958
|
const size = useFieldSize();
|
|
3687
|
-
return /* @__PURE__ */
|
|
3959
|
+
return /* @__PURE__ */ jsx29(
|
|
3688
3960
|
"div",
|
|
3689
3961
|
__spreadValues({
|
|
3690
3962
|
"data-slot": "field-label",
|
|
@@ -3698,7 +3970,7 @@ function FieldTitle(_a) {
|
|
|
3698
3970
|
}
|
|
3699
3971
|
function FieldDescription(_a) {
|
|
3700
3972
|
var _b = _a, { className } = _b, props = __objRest(_b, ["className"]);
|
|
3701
|
-
return /* @__PURE__ */
|
|
3973
|
+
return /* @__PURE__ */ jsx29(
|
|
3702
3974
|
"p",
|
|
3703
3975
|
__spreadValues({
|
|
3704
3976
|
"data-slot": "field-description",
|
|
@@ -3719,7 +3991,7 @@ function FieldSeparator(_a) {
|
|
|
3719
3991
|
"children",
|
|
3720
3992
|
"className"
|
|
3721
3993
|
]);
|
|
3722
|
-
return /* @__PURE__ */
|
|
3994
|
+
return /* @__PURE__ */ jsxs18(
|
|
3723
3995
|
"div",
|
|
3724
3996
|
__spreadProps(__spreadValues({
|
|
3725
3997
|
"data-slot": "field-separator",
|
|
@@ -3730,8 +4002,8 @@ function FieldSeparator(_a) {
|
|
|
3730
4002
|
)
|
|
3731
4003
|
}, props), {
|
|
3732
4004
|
children: [
|
|
3733
|
-
/* @__PURE__ */
|
|
3734
|
-
children && /* @__PURE__ */
|
|
4005
|
+
/* @__PURE__ */ jsx29(Separator, { className: "absolute inset-0 top-1/2" }),
|
|
4006
|
+
children && /* @__PURE__ */ jsx29(
|
|
3735
4007
|
"span",
|
|
3736
4008
|
{
|
|
3737
4009
|
className: "relative mx-auto block w-fit bg-background-primary-surface px-2 text-text-subtle-default",
|
|
@@ -3753,7 +4025,7 @@ function FieldError(_a) {
|
|
|
3753
4025
|
"children",
|
|
3754
4026
|
"errors"
|
|
3755
4027
|
]);
|
|
3756
|
-
const content =
|
|
4028
|
+
const content = useMemo3(() => {
|
|
3757
4029
|
var _a2;
|
|
3758
4030
|
if (children) {
|
|
3759
4031
|
return children;
|
|
@@ -3767,14 +4039,14 @@ function FieldError(_a) {
|
|
|
3767
4039
|
if ((uniqueErrors == null ? void 0 : uniqueErrors.length) == 1) {
|
|
3768
4040
|
return (_a2 = uniqueErrors[0]) == null ? void 0 : _a2.message;
|
|
3769
4041
|
}
|
|
3770
|
-
return /* @__PURE__ */
|
|
3771
|
-
(error, index) => (error == null ? void 0 : error.message) && /* @__PURE__ */
|
|
4042
|
+
return /* @__PURE__ */ jsx29("ul", { className: "ml-4 flex list-disc flex-col gap-1", children: uniqueErrors.map(
|
|
4043
|
+
(error, index) => (error == null ? void 0 : error.message) && /* @__PURE__ */ jsx29("li", { children: error.message }, index)
|
|
3772
4044
|
) });
|
|
3773
4045
|
}, [children, errors]);
|
|
3774
4046
|
if (!content) {
|
|
3775
4047
|
return null;
|
|
3776
4048
|
}
|
|
3777
|
-
return /* @__PURE__ */
|
|
4049
|
+
return /* @__PURE__ */ jsx29(
|
|
3778
4050
|
"div",
|
|
3779
4051
|
__spreadProps(__spreadValues({
|
|
3780
4052
|
role: "alert",
|
|
@@ -3788,14 +4060,14 @@ function FieldError(_a) {
|
|
|
3788
4060
|
|
|
3789
4061
|
// components/ui/hover-card.tsx
|
|
3790
4062
|
import { HoverCard as HoverCardPrimitive } from "radix-ui";
|
|
3791
|
-
import { jsx as
|
|
4063
|
+
import { jsx as jsx30 } from "react/jsx-runtime";
|
|
3792
4064
|
function HoverCard(_a) {
|
|
3793
4065
|
var props = __objRest(_a, []);
|
|
3794
|
-
return /* @__PURE__ */
|
|
4066
|
+
return /* @__PURE__ */ jsx30(HoverCardPrimitive.Root, __spreadValues({ "data-slot": "hover-card" }, props));
|
|
3795
4067
|
}
|
|
3796
4068
|
function HoverCardTrigger(_a) {
|
|
3797
4069
|
var props = __objRest(_a, []);
|
|
3798
|
-
return /* @__PURE__ */
|
|
4070
|
+
return /* @__PURE__ */ jsx30(HoverCardPrimitive.Trigger, __spreadValues({ "data-slot": "hover-card-trigger" }, props));
|
|
3799
4071
|
}
|
|
3800
4072
|
function HoverCardContent(_a) {
|
|
3801
4073
|
var _b = _a, {
|
|
@@ -3807,7 +4079,7 @@ function HoverCardContent(_a) {
|
|
|
3807
4079
|
"align",
|
|
3808
4080
|
"sideOffset"
|
|
3809
4081
|
]);
|
|
3810
|
-
return /* @__PURE__ */
|
|
4082
|
+
return /* @__PURE__ */ jsx30(HoverCardPrimitive.Portal, { "data-slot": "hover-card-portal", children: /* @__PURE__ */ jsx30(
|
|
3811
4083
|
HoverCardPrimitive.Content,
|
|
3812
4084
|
__spreadValues({
|
|
3813
4085
|
"data-slot": "hover-card-content",
|
|
@@ -3823,7 +4095,7 @@ function HoverCardContent(_a) {
|
|
|
3823
4095
|
|
|
3824
4096
|
// components/ui/input.tsx
|
|
3825
4097
|
import { cva as cva8 } from "class-variance-authority";
|
|
3826
|
-
import { jsx as
|
|
4098
|
+
import { jsx as jsx31 } from "react/jsx-runtime";
|
|
3827
4099
|
var inputVariants = cva8(
|
|
3828
4100
|
[
|
|
3829
4101
|
"w-full min-w-0 rounded-xs border font-body transition-[color,box-shadow] outline-none",
|
|
@@ -3894,7 +4166,7 @@ function Input(_a) {
|
|
|
3894
4166
|
]);
|
|
3895
4167
|
const fieldSize = useFieldSize();
|
|
3896
4168
|
const resolvedSize = size != null ? size : fieldSize;
|
|
3897
|
-
return /* @__PURE__ */
|
|
4169
|
+
return /* @__PURE__ */ jsx31(
|
|
3898
4170
|
"input",
|
|
3899
4171
|
__spreadValues({
|
|
3900
4172
|
type,
|
|
@@ -3907,14 +4179,14 @@ function Input(_a) {
|
|
|
3907
4179
|
}
|
|
3908
4180
|
|
|
3909
4181
|
// components/ui/input-group.tsx
|
|
3910
|
-
import * as
|
|
4182
|
+
import * as React9 from "react";
|
|
3911
4183
|
import { cva as cva9 } from "class-variance-authority";
|
|
3912
4184
|
|
|
3913
4185
|
// components/ui/textarea.tsx
|
|
3914
|
-
import { jsx as
|
|
4186
|
+
import { jsx as jsx32 } from "react/jsx-runtime";
|
|
3915
4187
|
function Textarea(_a) {
|
|
3916
4188
|
var _b = _a, { className } = _b, props = __objRest(_b, ["className"]);
|
|
3917
|
-
return /* @__PURE__ */
|
|
4189
|
+
return /* @__PURE__ */ jsx32(
|
|
3918
4190
|
"textarea",
|
|
3919
4191
|
__spreadValues({
|
|
3920
4192
|
"data-slot": "textarea",
|
|
@@ -3927,9 +4199,9 @@ function Textarea(_a) {
|
|
|
3927
4199
|
}
|
|
3928
4200
|
|
|
3929
4201
|
// components/ui/input-group.tsx
|
|
3930
|
-
import { jsx as
|
|
3931
|
-
var InputGroupSizeContext =
|
|
3932
|
-
var InputGroupVariantContext =
|
|
4202
|
+
import { jsx as jsx33 } from "react/jsx-runtime";
|
|
4203
|
+
var InputGroupSizeContext = React9.createContext("md");
|
|
4204
|
+
var InputGroupVariantContext = React9.createContext("default");
|
|
3933
4205
|
var inputGroupVariants = cva9(
|
|
3934
4206
|
[
|
|
3935
4207
|
"group/input-group relative flex w-full items-center rounded-xs border",
|
|
@@ -3988,11 +4260,11 @@ function InputGroup(_a) {
|
|
|
3988
4260
|
]);
|
|
3989
4261
|
const fieldSize = useFieldSize();
|
|
3990
4262
|
const resolvedSize = size != null ? size : fieldSize;
|
|
3991
|
-
return /* @__PURE__ */
|
|
4263
|
+
return /* @__PURE__ */ jsx33(
|
|
3992
4264
|
InputGroupVariantContext.Provider,
|
|
3993
4265
|
{
|
|
3994
4266
|
value: variant,
|
|
3995
|
-
children: /* @__PURE__ */
|
|
4267
|
+
children: /* @__PURE__ */ jsx33(InputGroupSizeContext.Provider, { value: resolvedSize, children: /* @__PURE__ */ jsx33(
|
|
3996
4268
|
"div",
|
|
3997
4269
|
__spreadValues({
|
|
3998
4270
|
"data-slot": "input-group",
|
|
@@ -4047,7 +4319,7 @@ function InputGroupAddon(_a) {
|
|
|
4047
4319
|
"className",
|
|
4048
4320
|
"align"
|
|
4049
4321
|
]);
|
|
4050
|
-
return /* @__PURE__ */
|
|
4322
|
+
return /* @__PURE__ */ jsx33(
|
|
4051
4323
|
"div",
|
|
4052
4324
|
__spreadValues({
|
|
4053
4325
|
role: "group",
|
|
@@ -4094,7 +4366,7 @@ function InputGroupButton(_a) {
|
|
|
4094
4366
|
"variant",
|
|
4095
4367
|
"size"
|
|
4096
4368
|
]);
|
|
4097
|
-
return /* @__PURE__ */
|
|
4369
|
+
return /* @__PURE__ */ jsx33(
|
|
4098
4370
|
Button,
|
|
4099
4371
|
__spreadValues({
|
|
4100
4372
|
type,
|
|
@@ -4107,7 +4379,7 @@ function InputGroupButton(_a) {
|
|
|
4107
4379
|
}
|
|
4108
4380
|
function InputGroupText(_a) {
|
|
4109
4381
|
var _b = _a, { className } = _b, props = __objRest(_b, ["className"]);
|
|
4110
|
-
return /* @__PURE__ */
|
|
4382
|
+
return /* @__PURE__ */ jsx33(
|
|
4111
4383
|
"span",
|
|
4112
4384
|
__spreadValues({
|
|
4113
4385
|
className: cn(
|
|
@@ -4136,11 +4408,11 @@ function InputGroupInput(_a) {
|
|
|
4136
4408
|
"size",
|
|
4137
4409
|
"variant"
|
|
4138
4410
|
]);
|
|
4139
|
-
const groupSize =
|
|
4140
|
-
const groupVariant =
|
|
4411
|
+
const groupSize = React9.useContext(InputGroupSizeContext);
|
|
4412
|
+
const groupVariant = React9.useContext(InputGroupVariantContext);
|
|
4141
4413
|
const size = sizeProp != null ? sizeProp : groupSize;
|
|
4142
4414
|
const variant = variantProp != null ? variantProp : groupVariant;
|
|
4143
|
-
return /* @__PURE__ */
|
|
4415
|
+
return /* @__PURE__ */ jsx33(
|
|
4144
4416
|
Input,
|
|
4145
4417
|
__spreadValues({
|
|
4146
4418
|
"data-slot": "input-group-control",
|
|
@@ -4159,7 +4431,7 @@ function InputGroupTextarea(_a) {
|
|
|
4159
4431
|
} = _b, props = __objRest(_b, [
|
|
4160
4432
|
"className"
|
|
4161
4433
|
]);
|
|
4162
|
-
return /* @__PURE__ */
|
|
4434
|
+
return /* @__PURE__ */ jsx33(
|
|
4163
4435
|
Textarea,
|
|
4164
4436
|
__spreadValues({
|
|
4165
4437
|
"data-slot": "input-group-control",
|
|
@@ -4172,10 +4444,10 @@ function InputGroupTextarea(_a) {
|
|
|
4172
4444
|
}
|
|
4173
4445
|
|
|
4174
4446
|
// components/ui/input-otp.tsx
|
|
4175
|
-
import * as
|
|
4447
|
+
import * as React10 from "react";
|
|
4176
4448
|
import { OTPInput, OTPInputContext } from "input-otp";
|
|
4177
4449
|
import { MinusIcon } from "lucide-react";
|
|
4178
|
-
import { jsx as
|
|
4450
|
+
import { jsx as jsx34, jsxs as jsxs19 } from "react/jsx-runtime";
|
|
4179
4451
|
function InputOTP(_a) {
|
|
4180
4452
|
var _b = _a, {
|
|
4181
4453
|
className,
|
|
@@ -4184,7 +4456,7 @@ function InputOTP(_a) {
|
|
|
4184
4456
|
"className",
|
|
4185
4457
|
"containerClassName"
|
|
4186
4458
|
]);
|
|
4187
|
-
return /* @__PURE__ */
|
|
4459
|
+
return /* @__PURE__ */ jsx34(
|
|
4188
4460
|
OTPInput,
|
|
4189
4461
|
__spreadValues({
|
|
4190
4462
|
"data-slot": "input-otp",
|
|
@@ -4198,7 +4470,7 @@ function InputOTP(_a) {
|
|
|
4198
4470
|
}
|
|
4199
4471
|
function InputOTPGroup(_a) {
|
|
4200
4472
|
var _b = _a, { className } = _b, props = __objRest(_b, ["className"]);
|
|
4201
|
-
return /* @__PURE__ */
|
|
4473
|
+
return /* @__PURE__ */ jsx34(
|
|
4202
4474
|
"div",
|
|
4203
4475
|
__spreadValues({
|
|
4204
4476
|
"data-slot": "input-otp-group",
|
|
@@ -4215,9 +4487,9 @@ function InputOTPSlot(_a) {
|
|
|
4215
4487
|
"className"
|
|
4216
4488
|
]);
|
|
4217
4489
|
var _a2;
|
|
4218
|
-
const inputOTPContext =
|
|
4490
|
+
const inputOTPContext = React10.useContext(OTPInputContext);
|
|
4219
4491
|
const { char, hasFakeCaret, isActive } = (_a2 = inputOTPContext == null ? void 0 : inputOTPContext.slots[index]) != null ? _a2 : {};
|
|
4220
|
-
return /* @__PURE__ */
|
|
4492
|
+
return /* @__PURE__ */ jsxs19(
|
|
4221
4493
|
"div",
|
|
4222
4494
|
__spreadProps(__spreadValues({
|
|
4223
4495
|
"data-slot": "input-otp-slot",
|
|
@@ -4229,20 +4501,20 @@ function InputOTPSlot(_a) {
|
|
|
4229
4501
|
}, props), {
|
|
4230
4502
|
children: [
|
|
4231
4503
|
char,
|
|
4232
|
-
hasFakeCaret && /* @__PURE__ */
|
|
4504
|
+
hasFakeCaret && /* @__PURE__ */ jsx34("div", { className: "pointer-events-none absolute inset-0 flex items-center justify-center", children: /* @__PURE__ */ jsx34("div", { className: "h-4 w-px animate-caret-blink bg-text-prominent-default duration-1000" }) })
|
|
4233
4505
|
]
|
|
4234
4506
|
})
|
|
4235
4507
|
);
|
|
4236
4508
|
}
|
|
4237
4509
|
function InputOTPSeparator(_a) {
|
|
4238
4510
|
var props = __objRest(_a, []);
|
|
4239
|
-
return /* @__PURE__ */
|
|
4511
|
+
return /* @__PURE__ */ jsx34("div", __spreadProps(__spreadValues({ "data-slot": "input-otp-separator", role: "separator" }, props), { children: /* @__PURE__ */ jsx34(MinusIcon, {}) }));
|
|
4240
4512
|
}
|
|
4241
4513
|
|
|
4242
4514
|
// components/ui/item.tsx
|
|
4243
4515
|
import { cva as cva10 } from "class-variance-authority";
|
|
4244
4516
|
import { Slot as Slot6 } from "radix-ui";
|
|
4245
|
-
import { jsx as
|
|
4517
|
+
import { jsx as jsx35 } from "react/jsx-runtime";
|
|
4246
4518
|
function ItemGroup(_a) {
|
|
4247
4519
|
var _b = _a, {
|
|
4248
4520
|
className,
|
|
@@ -4251,7 +4523,7 @@ function ItemGroup(_a) {
|
|
|
4251
4523
|
"className",
|
|
4252
4524
|
"divider"
|
|
4253
4525
|
]);
|
|
4254
|
-
return /* @__PURE__ */
|
|
4526
|
+
return /* @__PURE__ */ jsx35(
|
|
4255
4527
|
"div",
|
|
4256
4528
|
__spreadValues({
|
|
4257
4529
|
role: "list",
|
|
@@ -4284,7 +4556,7 @@ function ItemSeparator(_a) {
|
|
|
4284
4556
|
} = _b, props = __objRest(_b, [
|
|
4285
4557
|
"className"
|
|
4286
4558
|
]);
|
|
4287
|
-
return /* @__PURE__ */
|
|
4559
|
+
return /* @__PURE__ */ jsx35(
|
|
4288
4560
|
Separator,
|
|
4289
4561
|
__spreadValues({
|
|
4290
4562
|
"data-slot": "item-separator",
|
|
@@ -4335,7 +4607,7 @@ function Item(_a) {
|
|
|
4335
4607
|
"asChild"
|
|
4336
4608
|
]);
|
|
4337
4609
|
const Comp = asChild ? Slot6.Root : "div";
|
|
4338
|
-
return /* @__PURE__ */
|
|
4610
|
+
return /* @__PURE__ */ jsx35(
|
|
4339
4611
|
Comp,
|
|
4340
4612
|
__spreadValues({
|
|
4341
4613
|
"data-slot": "item",
|
|
@@ -4368,7 +4640,7 @@ function ItemMedia(_a) {
|
|
|
4368
4640
|
"className",
|
|
4369
4641
|
"variant"
|
|
4370
4642
|
]);
|
|
4371
|
-
return /* @__PURE__ */
|
|
4643
|
+
return /* @__PURE__ */ jsx35(
|
|
4372
4644
|
"div",
|
|
4373
4645
|
__spreadValues({
|
|
4374
4646
|
"data-slot": "item-media",
|
|
@@ -4379,7 +4651,7 @@ function ItemMedia(_a) {
|
|
|
4379
4651
|
}
|
|
4380
4652
|
function ItemContent(_a) {
|
|
4381
4653
|
var _b = _a, { className } = _b, props = __objRest(_b, ["className"]);
|
|
4382
|
-
return /* @__PURE__ */
|
|
4654
|
+
return /* @__PURE__ */ jsx35(
|
|
4383
4655
|
"div",
|
|
4384
4656
|
__spreadValues({
|
|
4385
4657
|
"data-slot": "item-content",
|
|
@@ -4392,7 +4664,7 @@ function ItemContent(_a) {
|
|
|
4392
4664
|
}
|
|
4393
4665
|
function ItemTitle(_a) {
|
|
4394
4666
|
var _b = _a, { className } = _b, props = __objRest(_b, ["className"]);
|
|
4395
|
-
return /* @__PURE__ */
|
|
4667
|
+
return /* @__PURE__ */ jsx35(
|
|
4396
4668
|
"div",
|
|
4397
4669
|
__spreadValues({
|
|
4398
4670
|
"data-slot": "item-title",
|
|
@@ -4405,7 +4677,7 @@ function ItemTitle(_a) {
|
|
|
4405
4677
|
}
|
|
4406
4678
|
function ItemDescription(_a) {
|
|
4407
4679
|
var _b = _a, { className } = _b, props = __objRest(_b, ["className"]);
|
|
4408
|
-
return /* @__PURE__ */
|
|
4680
|
+
return /* @__PURE__ */ jsx35(
|
|
4409
4681
|
"p",
|
|
4410
4682
|
__spreadValues({
|
|
4411
4683
|
"data-slot": "item-description",
|
|
@@ -4419,7 +4691,7 @@ function ItemDescription(_a) {
|
|
|
4419
4691
|
}
|
|
4420
4692
|
function ItemActions(_a) {
|
|
4421
4693
|
var _b = _a, { className } = _b, props = __objRest(_b, ["className"]);
|
|
4422
|
-
return /* @__PURE__ */
|
|
4694
|
+
return /* @__PURE__ */ jsx35(
|
|
4423
4695
|
"div",
|
|
4424
4696
|
__spreadValues({
|
|
4425
4697
|
"data-slot": "item-actions",
|
|
@@ -4429,7 +4701,7 @@ function ItemActions(_a) {
|
|
|
4429
4701
|
}
|
|
4430
4702
|
function ItemHeader(_a) {
|
|
4431
4703
|
var _b = _a, { className } = _b, props = __objRest(_b, ["className"]);
|
|
4432
|
-
return /* @__PURE__ */
|
|
4704
|
+
return /* @__PURE__ */ jsx35(
|
|
4433
4705
|
"div",
|
|
4434
4706
|
__spreadValues({
|
|
4435
4707
|
"data-slot": "item-header",
|
|
@@ -4442,7 +4714,7 @@ function ItemHeader(_a) {
|
|
|
4442
4714
|
}
|
|
4443
4715
|
function ItemFooter(_a) {
|
|
4444
4716
|
var _b = _a, { className } = _b, props = __objRest(_b, ["className"]);
|
|
4445
|
-
return /* @__PURE__ */
|
|
4717
|
+
return /* @__PURE__ */ jsx35(
|
|
4446
4718
|
"div",
|
|
4447
4719
|
__spreadValues({
|
|
4448
4720
|
"data-slot": "item-footer",
|
|
@@ -4457,7 +4729,7 @@ function ItemFooter(_a) {
|
|
|
4457
4729
|
// components/ui/link.tsx
|
|
4458
4730
|
import { cva as cva11 } from "class-variance-authority";
|
|
4459
4731
|
import { Slot as Slot7 } from "radix-ui";
|
|
4460
|
-
import { jsx as
|
|
4732
|
+
import { jsx as jsx36 } from "react/jsx-runtime";
|
|
4461
4733
|
var linkVariants = cva11(
|
|
4462
4734
|
[
|
|
4463
4735
|
"inline-flex shrink-0 items-center gap-1.5 whitespace-nowrap transition-colors outline-none focus-visible:ring-[3px] focus-visible:ring-ring-focus-strong active:opacity-60 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg]:inline font-display normal-case",
|
|
@@ -4499,7 +4771,7 @@ function Link(_a) {
|
|
|
4499
4771
|
"asChild"
|
|
4500
4772
|
]);
|
|
4501
4773
|
const Comp = asChild ? Slot7.Root : "a";
|
|
4502
|
-
return /* @__PURE__ */
|
|
4774
|
+
return /* @__PURE__ */ jsx36(
|
|
4503
4775
|
Comp,
|
|
4504
4776
|
__spreadValues({
|
|
4505
4777
|
"data-slot": "link",
|
|
@@ -4513,14 +4785,14 @@ function Link(_a) {
|
|
|
4513
4785
|
// components/ui/menubar.tsx
|
|
4514
4786
|
import { CheckIcon as CheckIcon5, ChevronRightIcon as ChevronRightIcon5, CircleIcon as CircleIcon3 } from "lucide-react";
|
|
4515
4787
|
import { Menubar as MenubarPrimitive } from "radix-ui";
|
|
4516
|
-
import { jsx as
|
|
4788
|
+
import { jsx as jsx37, jsxs as jsxs20 } from "react/jsx-runtime";
|
|
4517
4789
|
function Menubar(_a) {
|
|
4518
4790
|
var _b = _a, {
|
|
4519
4791
|
className
|
|
4520
4792
|
} = _b, props = __objRest(_b, [
|
|
4521
4793
|
"className"
|
|
4522
4794
|
]);
|
|
4523
|
-
return /* @__PURE__ */
|
|
4795
|
+
return /* @__PURE__ */ jsx37(
|
|
4524
4796
|
MenubarPrimitive.Root,
|
|
4525
4797
|
__spreadValues({
|
|
4526
4798
|
"data-slot": "menubar",
|
|
@@ -4533,19 +4805,19 @@ function Menubar(_a) {
|
|
|
4533
4805
|
}
|
|
4534
4806
|
function MenubarMenu(_a) {
|
|
4535
4807
|
var props = __objRest(_a, []);
|
|
4536
|
-
return /* @__PURE__ */
|
|
4808
|
+
return /* @__PURE__ */ jsx37(MenubarPrimitive.Menu, __spreadValues({ "data-slot": "menubar-menu" }, props));
|
|
4537
4809
|
}
|
|
4538
4810
|
function MenubarGroup(_a) {
|
|
4539
4811
|
var props = __objRest(_a, []);
|
|
4540
|
-
return /* @__PURE__ */
|
|
4812
|
+
return /* @__PURE__ */ jsx37(MenubarPrimitive.Group, __spreadValues({ "data-slot": "menubar-group" }, props));
|
|
4541
4813
|
}
|
|
4542
4814
|
function MenubarPortal(_a) {
|
|
4543
4815
|
var props = __objRest(_a, []);
|
|
4544
|
-
return /* @__PURE__ */
|
|
4816
|
+
return /* @__PURE__ */ jsx37(MenubarPrimitive.Portal, __spreadValues({ "data-slot": "menubar-portal" }, props));
|
|
4545
4817
|
}
|
|
4546
4818
|
function MenubarRadioGroup(_a) {
|
|
4547
4819
|
var props = __objRest(_a, []);
|
|
4548
|
-
return /* @__PURE__ */
|
|
4820
|
+
return /* @__PURE__ */ jsx37(MenubarPrimitive.RadioGroup, __spreadValues({ "data-slot": "menubar-radio-group" }, props));
|
|
4549
4821
|
}
|
|
4550
4822
|
function MenubarTrigger(_a) {
|
|
4551
4823
|
var _b = _a, {
|
|
@@ -4553,7 +4825,7 @@ function MenubarTrigger(_a) {
|
|
|
4553
4825
|
} = _b, props = __objRest(_b, [
|
|
4554
4826
|
"className"
|
|
4555
4827
|
]);
|
|
4556
|
-
return /* @__PURE__ */
|
|
4828
|
+
return /* @__PURE__ */ jsx37(
|
|
4557
4829
|
MenubarPrimitive.Trigger,
|
|
4558
4830
|
__spreadValues({
|
|
4559
4831
|
"data-slot": "menubar-trigger",
|
|
@@ -4576,7 +4848,7 @@ function MenubarContent(_a) {
|
|
|
4576
4848
|
"alignOffset",
|
|
4577
4849
|
"sideOffset"
|
|
4578
4850
|
]);
|
|
4579
|
-
return /* @__PURE__ */
|
|
4851
|
+
return /* @__PURE__ */ jsx37(MenubarPortal, { children: /* @__PURE__ */ jsx37(
|
|
4580
4852
|
MenubarPrimitive.Content,
|
|
4581
4853
|
__spreadValues({
|
|
4582
4854
|
"data-slot": "menubar-content",
|
|
@@ -4600,7 +4872,7 @@ function MenubarItem(_a) {
|
|
|
4600
4872
|
"inset",
|
|
4601
4873
|
"variant"
|
|
4602
4874
|
]);
|
|
4603
|
-
return /* @__PURE__ */
|
|
4875
|
+
return /* @__PURE__ */ jsx37(
|
|
4604
4876
|
MenubarPrimitive.Item,
|
|
4605
4877
|
__spreadValues({
|
|
4606
4878
|
"data-slot": "menubar-item",
|
|
@@ -4623,7 +4895,7 @@ function MenubarCheckboxItem(_a) {
|
|
|
4623
4895
|
"children",
|
|
4624
4896
|
"checked"
|
|
4625
4897
|
]);
|
|
4626
|
-
return /* @__PURE__ */
|
|
4898
|
+
return /* @__PURE__ */ jsxs20(
|
|
4627
4899
|
MenubarPrimitive.CheckboxItem,
|
|
4628
4900
|
__spreadProps(__spreadValues({
|
|
4629
4901
|
"data-slot": "menubar-checkbox-item",
|
|
@@ -4634,7 +4906,7 @@ function MenubarCheckboxItem(_a) {
|
|
|
4634
4906
|
checked
|
|
4635
4907
|
}, props), {
|
|
4636
4908
|
children: [
|
|
4637
|
-
/* @__PURE__ */
|
|
4909
|
+
/* @__PURE__ */ jsx37("span", { className: "pointer-events-none absolute left-2 flex size-3.5 items-center justify-center", children: /* @__PURE__ */ jsx37(MenubarPrimitive.ItemIndicator, { children: /* @__PURE__ */ jsx37(CheckIcon5, { className: "size-4" }) }) }),
|
|
4638
4910
|
children
|
|
4639
4911
|
]
|
|
4640
4912
|
})
|
|
@@ -4648,7 +4920,7 @@ function MenubarRadioItem(_a) {
|
|
|
4648
4920
|
"className",
|
|
4649
4921
|
"children"
|
|
4650
4922
|
]);
|
|
4651
|
-
return /* @__PURE__ */
|
|
4923
|
+
return /* @__PURE__ */ jsxs20(
|
|
4652
4924
|
MenubarPrimitive.RadioItem,
|
|
4653
4925
|
__spreadProps(__spreadValues({
|
|
4654
4926
|
"data-slot": "menubar-radio-item",
|
|
@@ -4658,7 +4930,7 @@ function MenubarRadioItem(_a) {
|
|
|
4658
4930
|
)
|
|
4659
4931
|
}, props), {
|
|
4660
4932
|
children: [
|
|
4661
|
-
/* @__PURE__ */
|
|
4933
|
+
/* @__PURE__ */ jsx37("span", { className: "pointer-events-none absolute left-2 flex size-3.5 items-center justify-center", children: /* @__PURE__ */ jsx37(MenubarPrimitive.ItemIndicator, { children: /* @__PURE__ */ jsx37(CircleIcon3, { className: "size-2 fill-current" }) }) }),
|
|
4662
4934
|
children
|
|
4663
4935
|
]
|
|
4664
4936
|
})
|
|
@@ -4672,7 +4944,7 @@ function MenubarLabel(_a) {
|
|
|
4672
4944
|
"className",
|
|
4673
4945
|
"inset"
|
|
4674
4946
|
]);
|
|
4675
|
-
return /* @__PURE__ */
|
|
4947
|
+
return /* @__PURE__ */ jsx37(
|
|
4676
4948
|
MenubarPrimitive.Label,
|
|
4677
4949
|
__spreadValues({
|
|
4678
4950
|
"data-slot": "menubar-label",
|
|
@@ -4690,7 +4962,7 @@ function MenubarSeparator(_a) {
|
|
|
4690
4962
|
} = _b, props = __objRest(_b, [
|
|
4691
4963
|
"className"
|
|
4692
4964
|
]);
|
|
4693
|
-
return /* @__PURE__ */
|
|
4965
|
+
return /* @__PURE__ */ jsx37(
|
|
4694
4966
|
MenubarPrimitive.Separator,
|
|
4695
4967
|
__spreadValues({
|
|
4696
4968
|
"data-slot": "menubar-separator",
|
|
@@ -4704,7 +4976,7 @@ function MenubarShortcut(_a) {
|
|
|
4704
4976
|
} = _b, props = __objRest(_b, [
|
|
4705
4977
|
"className"
|
|
4706
4978
|
]);
|
|
4707
|
-
return /* @__PURE__ */
|
|
4979
|
+
return /* @__PURE__ */ jsx37(
|
|
4708
4980
|
"span",
|
|
4709
4981
|
__spreadValues({
|
|
4710
4982
|
"data-slot": "menubar-shortcut",
|
|
@@ -4717,7 +4989,7 @@ function MenubarShortcut(_a) {
|
|
|
4717
4989
|
}
|
|
4718
4990
|
function MenubarSub(_a) {
|
|
4719
4991
|
var props = __objRest(_a, []);
|
|
4720
|
-
return /* @__PURE__ */
|
|
4992
|
+
return /* @__PURE__ */ jsx37(MenubarPrimitive.Sub, __spreadValues({ "data-slot": "menubar-sub" }, props));
|
|
4721
4993
|
}
|
|
4722
4994
|
function MenubarSubTrigger(_a) {
|
|
4723
4995
|
var _b = _a, {
|
|
@@ -4729,7 +5001,7 @@ function MenubarSubTrigger(_a) {
|
|
|
4729
5001
|
"inset",
|
|
4730
5002
|
"children"
|
|
4731
5003
|
]);
|
|
4732
|
-
return /* @__PURE__ */
|
|
5004
|
+
return /* @__PURE__ */ jsxs20(
|
|
4733
5005
|
MenubarPrimitive.SubTrigger,
|
|
4734
5006
|
__spreadProps(__spreadValues({
|
|
4735
5007
|
"data-slot": "menubar-sub-trigger",
|
|
@@ -4741,7 +5013,7 @@ function MenubarSubTrigger(_a) {
|
|
|
4741
5013
|
}, props), {
|
|
4742
5014
|
children: [
|
|
4743
5015
|
children,
|
|
4744
|
-
/* @__PURE__ */
|
|
5016
|
+
/* @__PURE__ */ jsx37(ChevronRightIcon5, { className: "ml-auto" })
|
|
4745
5017
|
]
|
|
4746
5018
|
})
|
|
4747
5019
|
);
|
|
@@ -4752,7 +5024,7 @@ function MenubarSubContent(_a) {
|
|
|
4752
5024
|
} = _b, props = __objRest(_b, [
|
|
4753
5025
|
"className"
|
|
4754
5026
|
]);
|
|
4755
|
-
return /* @__PURE__ */
|
|
5027
|
+
return /* @__PURE__ */ jsx37(
|
|
4756
5028
|
MenubarPrimitive.SubContent,
|
|
4757
5029
|
__spreadValues({
|
|
4758
5030
|
"data-slot": "menubar-sub-content",
|
|
@@ -4766,7 +5038,7 @@ function MenubarSubContent(_a) {
|
|
|
4766
5038
|
|
|
4767
5039
|
// components/ui/native-select.tsx
|
|
4768
5040
|
import { ChevronDownIcon as ChevronDownIcon4 } from "lucide-react";
|
|
4769
|
-
import { jsx as
|
|
5041
|
+
import { jsx as jsx38, jsxs as jsxs21 } from "react/jsx-runtime";
|
|
4770
5042
|
var sizeClasses = {
|
|
4771
5043
|
sm: "type-native-select-sm h-8 py-1",
|
|
4772
5044
|
md: "type-native-select-md h-10 py-2",
|
|
@@ -4782,13 +5054,13 @@ function NativeSelect(_a) {
|
|
|
4782
5054
|
]);
|
|
4783
5055
|
const fieldSize = useFieldSize();
|
|
4784
5056
|
const resolvedSize = size === "default" || size == null ? size == null ? fieldSize : "md" : size;
|
|
4785
|
-
return /* @__PURE__ */
|
|
5057
|
+
return /* @__PURE__ */ jsxs21(
|
|
4786
5058
|
"div",
|
|
4787
5059
|
{
|
|
4788
5060
|
className: "group/native-select relative w-fit has-[select:disabled]:text-text-disabled-default",
|
|
4789
5061
|
"data-slot": "native-select-wrapper",
|
|
4790
5062
|
children: [
|
|
4791
|
-
/* @__PURE__ */
|
|
5063
|
+
/* @__PURE__ */ jsx38(
|
|
4792
5064
|
"select",
|
|
4793
5065
|
__spreadValues({
|
|
4794
5066
|
"data-slot": "native-select",
|
|
@@ -4801,7 +5073,7 @@ function NativeSelect(_a) {
|
|
|
4801
5073
|
)
|
|
4802
5074
|
}, props)
|
|
4803
5075
|
),
|
|
4804
|
-
/* @__PURE__ */
|
|
5076
|
+
/* @__PURE__ */ jsx38(
|
|
4805
5077
|
ChevronDownIcon4,
|
|
4806
5078
|
{
|
|
4807
5079
|
className: "pointer-events-none absolute top-1/2 right-3.5 size-4 -translate-y-1/2 text-icon-subtle-default select-none group-has-[select:disabled]/native-select:text-icon-disabled-default",
|
|
@@ -4815,7 +5087,7 @@ function NativeSelect(_a) {
|
|
|
4815
5087
|
}
|
|
4816
5088
|
function NativeSelectOption(_a) {
|
|
4817
5089
|
var props = __objRest(_a, []);
|
|
4818
|
-
return /* @__PURE__ */
|
|
5090
|
+
return /* @__PURE__ */ jsx38("option", __spreadValues({ "data-slot": "native-select-option" }, props));
|
|
4819
5091
|
}
|
|
4820
5092
|
function NativeSelectOptGroup(_a) {
|
|
4821
5093
|
var _b = _a, {
|
|
@@ -4823,7 +5095,7 @@ function NativeSelectOptGroup(_a) {
|
|
|
4823
5095
|
} = _b, props = __objRest(_b, [
|
|
4824
5096
|
"className"
|
|
4825
5097
|
]);
|
|
4826
|
-
return /* @__PURE__ */
|
|
5098
|
+
return /* @__PURE__ */ jsx38(
|
|
4827
5099
|
"optgroup",
|
|
4828
5100
|
__spreadValues({
|
|
4829
5101
|
"data-slot": "native-select-optgroup",
|
|
@@ -4836,7 +5108,7 @@ function NativeSelectOptGroup(_a) {
|
|
|
4836
5108
|
import { cva as cva12 } from "class-variance-authority";
|
|
4837
5109
|
import { ChevronDownIcon as ChevronDownIcon5 } from "lucide-react";
|
|
4838
5110
|
import { NavigationMenu as NavigationMenuPrimitive } from "radix-ui";
|
|
4839
|
-
import { jsx as
|
|
5111
|
+
import { jsx as jsx39, jsxs as jsxs22 } from "react/jsx-runtime";
|
|
4840
5112
|
function NavigationMenu(_a) {
|
|
4841
5113
|
var _b = _a, {
|
|
4842
5114
|
className,
|
|
@@ -4847,7 +5119,7 @@ function NavigationMenu(_a) {
|
|
|
4847
5119
|
"children",
|
|
4848
5120
|
"viewport"
|
|
4849
5121
|
]);
|
|
4850
|
-
return /* @__PURE__ */
|
|
5122
|
+
return /* @__PURE__ */ jsxs22(
|
|
4851
5123
|
NavigationMenuPrimitive.Root,
|
|
4852
5124
|
__spreadProps(__spreadValues({
|
|
4853
5125
|
"data-slot": "navigation-menu",
|
|
@@ -4859,7 +5131,7 @@ function NavigationMenu(_a) {
|
|
|
4859
5131
|
}, props), {
|
|
4860
5132
|
children: [
|
|
4861
5133
|
children,
|
|
4862
|
-
viewport && /* @__PURE__ */
|
|
5134
|
+
viewport && /* @__PURE__ */ jsx39(NavigationMenuViewport, {})
|
|
4863
5135
|
]
|
|
4864
5136
|
})
|
|
4865
5137
|
);
|
|
@@ -4870,7 +5142,7 @@ function NavigationMenuList(_a) {
|
|
|
4870
5142
|
} = _b, props = __objRest(_b, [
|
|
4871
5143
|
"className"
|
|
4872
5144
|
]);
|
|
4873
|
-
return /* @__PURE__ */
|
|
5145
|
+
return /* @__PURE__ */ jsx39(
|
|
4874
5146
|
NavigationMenuPrimitive.List,
|
|
4875
5147
|
__spreadValues({
|
|
4876
5148
|
"data-slot": "navigation-menu-list",
|
|
@@ -4887,7 +5159,7 @@ function NavigationMenuItem(_a) {
|
|
|
4887
5159
|
} = _b, props = __objRest(_b, [
|
|
4888
5160
|
"className"
|
|
4889
5161
|
]);
|
|
4890
|
-
return /* @__PURE__ */
|
|
5162
|
+
return /* @__PURE__ */ jsx39(
|
|
4891
5163
|
NavigationMenuPrimitive.Item,
|
|
4892
5164
|
__spreadValues({
|
|
4893
5165
|
"data-slot": "navigation-menu-item",
|
|
@@ -4906,7 +5178,7 @@ function NavigationMenuTrigger(_a) {
|
|
|
4906
5178
|
"className",
|
|
4907
5179
|
"children"
|
|
4908
5180
|
]);
|
|
4909
|
-
return /* @__PURE__ */
|
|
5181
|
+
return /* @__PURE__ */ jsxs22(
|
|
4910
5182
|
NavigationMenuPrimitive.Trigger,
|
|
4911
5183
|
__spreadProps(__spreadValues({
|
|
4912
5184
|
"data-slot": "navigation-menu-trigger",
|
|
@@ -4915,7 +5187,7 @@ function NavigationMenuTrigger(_a) {
|
|
|
4915
5187
|
children: [
|
|
4916
5188
|
children,
|
|
4917
5189
|
" ",
|
|
4918
|
-
/* @__PURE__ */
|
|
5190
|
+
/* @__PURE__ */ jsx39(
|
|
4919
5191
|
ChevronDownIcon5,
|
|
4920
5192
|
{
|
|
4921
5193
|
className: "relative top-[1px] ml-1 size-3 transition duration-slow group-data-[state=open]:rotate-180",
|
|
@@ -4932,7 +5204,7 @@ function NavigationMenuContent(_a) {
|
|
|
4932
5204
|
} = _b, props = __objRest(_b, [
|
|
4933
5205
|
"className"
|
|
4934
5206
|
]);
|
|
4935
|
-
return /* @__PURE__ */
|
|
5207
|
+
return /* @__PURE__ */ jsx39(
|
|
4936
5208
|
NavigationMenuPrimitive.Content,
|
|
4937
5209
|
__spreadValues({
|
|
4938
5210
|
"data-slot": "navigation-menu-content",
|
|
@@ -4950,13 +5222,13 @@ function NavigationMenuViewport(_a) {
|
|
|
4950
5222
|
} = _b, props = __objRest(_b, [
|
|
4951
5223
|
"className"
|
|
4952
5224
|
]);
|
|
4953
|
-
return /* @__PURE__ */
|
|
5225
|
+
return /* @__PURE__ */ jsx39(
|
|
4954
5226
|
"div",
|
|
4955
5227
|
{
|
|
4956
5228
|
className: cn(
|
|
4957
5229
|
"absolute top-full left-0 isolate z-50 flex justify-center"
|
|
4958
5230
|
),
|
|
4959
|
-
children: /* @__PURE__ */
|
|
5231
|
+
children: /* @__PURE__ */ jsx39(
|
|
4960
5232
|
NavigationMenuPrimitive.Viewport,
|
|
4961
5233
|
__spreadValues({
|
|
4962
5234
|
"data-slot": "navigation-menu-viewport",
|
|
@@ -4975,7 +5247,7 @@ function NavigationMenuLink(_a) {
|
|
|
4975
5247
|
} = _b, props = __objRest(_b, [
|
|
4976
5248
|
"className"
|
|
4977
5249
|
]);
|
|
4978
|
-
return /* @__PURE__ */
|
|
5250
|
+
return /* @__PURE__ */ jsx39(
|
|
4979
5251
|
NavigationMenuPrimitive.Link,
|
|
4980
5252
|
__spreadValues({
|
|
4981
5253
|
"data-slot": "navigation-menu-link",
|
|
@@ -4992,7 +5264,7 @@ function NavigationMenuIndicator(_a) {
|
|
|
4992
5264
|
} = _b, props = __objRest(_b, [
|
|
4993
5265
|
"className"
|
|
4994
5266
|
]);
|
|
4995
|
-
return /* @__PURE__ */
|
|
5267
|
+
return /* @__PURE__ */ jsx39(
|
|
4996
5268
|
NavigationMenuPrimitive.Indicator,
|
|
4997
5269
|
__spreadProps(__spreadValues({
|
|
4998
5270
|
"data-slot": "navigation-menu-indicator",
|
|
@@ -5001,15 +5273,15 @@ function NavigationMenuIndicator(_a) {
|
|
|
5001
5273
|
className
|
|
5002
5274
|
)
|
|
5003
5275
|
}, props), {
|
|
5004
|
-
children: /* @__PURE__ */
|
|
5276
|
+
children: /* @__PURE__ */ jsx39("div", { className: "relative top-[60%] h-2 w-2 rotate-45 rounded-tl-sm bg-border-default-default" })
|
|
5005
5277
|
})
|
|
5006
5278
|
);
|
|
5007
5279
|
}
|
|
5008
5280
|
|
|
5009
5281
|
// components/ui/numpad.tsx
|
|
5010
|
-
import * as
|
|
5282
|
+
import * as React11 from "react";
|
|
5011
5283
|
import { Delete } from "lucide-react";
|
|
5012
|
-
import { jsx as
|
|
5284
|
+
import { jsx as jsx40 } from "react/jsx-runtime";
|
|
5013
5285
|
var LONG_PRESS_MS = 600;
|
|
5014
5286
|
function Numpad(_a) {
|
|
5015
5287
|
var _b = _a, {
|
|
@@ -5025,8 +5297,8 @@ function Numpad(_a) {
|
|
|
5025
5297
|
"decimal",
|
|
5026
5298
|
"disabled"
|
|
5027
5299
|
]);
|
|
5028
|
-
const holdTimer =
|
|
5029
|
-
const longPressFired =
|
|
5300
|
+
const holdTimer = React11.useRef(null);
|
|
5301
|
+
const longPressFired = React11.useRef(false);
|
|
5030
5302
|
const startHold = () => {
|
|
5031
5303
|
longPressFired.current = false;
|
|
5032
5304
|
holdTimer.current = setTimeout(() => {
|
|
@@ -5038,7 +5310,7 @@ function Numpad(_a) {
|
|
|
5038
5310
|
if (holdTimer.current) clearTimeout(holdTimer.current);
|
|
5039
5311
|
holdTimer.current = null;
|
|
5040
5312
|
};
|
|
5041
|
-
|
|
5313
|
+
React11.useEffect(() => cancelHold, []);
|
|
5042
5314
|
const keys = [
|
|
5043
5315
|
"1",
|
|
5044
5316
|
"2",
|
|
@@ -5053,7 +5325,7 @@ function Numpad(_a) {
|
|
|
5053
5325
|
"0",
|
|
5054
5326
|
"backspace"
|
|
5055
5327
|
];
|
|
5056
|
-
return /* @__PURE__ */
|
|
5328
|
+
return /* @__PURE__ */ jsx40(
|
|
5057
5329
|
"div",
|
|
5058
5330
|
__spreadProps(__spreadValues({
|
|
5059
5331
|
"data-slot": "numpad",
|
|
@@ -5066,7 +5338,7 @@ function Numpad(_a) {
|
|
|
5066
5338
|
)
|
|
5067
5339
|
}, props), {
|
|
5068
5340
|
children: keys.map(
|
|
5069
|
-
(key, i) => key === null ? /* @__PURE__ */
|
|
5341
|
+
(key, i) => key === null ? /* @__PURE__ */ jsx40("span", { "aria-hidden": true }, `empty-${i}`) : /* @__PURE__ */ jsx40(
|
|
5070
5342
|
"button",
|
|
5071
5343
|
{
|
|
5072
5344
|
type: "button",
|
|
@@ -5091,7 +5363,7 @@ function Numpad(_a) {
|
|
|
5091
5363
|
}
|
|
5092
5364
|
onKeyPress == null ? void 0 : onKeyPress(key);
|
|
5093
5365
|
},
|
|
5094
|
-
children: key === "backspace" ? /* @__PURE__ */
|
|
5366
|
+
children: key === "backspace" ? /* @__PURE__ */ jsx40(Delete, { className: "size-5.5" }) : key
|
|
5095
5367
|
},
|
|
5096
5368
|
key
|
|
5097
5369
|
)
|
|
@@ -5102,14 +5374,14 @@ function Numpad(_a) {
|
|
|
5102
5374
|
|
|
5103
5375
|
// components/ui/popover.tsx
|
|
5104
5376
|
import { Popover as PopoverPrimitive } from "radix-ui";
|
|
5105
|
-
import { jsx as
|
|
5377
|
+
import { jsx as jsx41 } from "react/jsx-runtime";
|
|
5106
5378
|
function Popover(_a) {
|
|
5107
5379
|
var props = __objRest(_a, []);
|
|
5108
|
-
return /* @__PURE__ */
|
|
5380
|
+
return /* @__PURE__ */ jsx41(PopoverPrimitive.Root, __spreadValues({ "data-slot": "popover" }, props));
|
|
5109
5381
|
}
|
|
5110
5382
|
function PopoverTrigger(_a) {
|
|
5111
5383
|
var props = __objRest(_a, []);
|
|
5112
|
-
return /* @__PURE__ */
|
|
5384
|
+
return /* @__PURE__ */ jsx41(PopoverPrimitive.Trigger, __spreadValues({ "data-slot": "popover-trigger" }, props));
|
|
5113
5385
|
}
|
|
5114
5386
|
function PopoverContent(_a) {
|
|
5115
5387
|
var _b = _a, {
|
|
@@ -5121,7 +5393,7 @@ function PopoverContent(_a) {
|
|
|
5121
5393
|
"align",
|
|
5122
5394
|
"sideOffset"
|
|
5123
5395
|
]);
|
|
5124
|
-
return /* @__PURE__ */
|
|
5396
|
+
return /* @__PURE__ */ jsx41(PopoverPrimitive.Portal, { children: /* @__PURE__ */ jsx41(
|
|
5125
5397
|
PopoverPrimitive.Content,
|
|
5126
5398
|
__spreadValues({
|
|
5127
5399
|
"data-slot": "popover-content",
|
|
@@ -5136,11 +5408,11 @@ function PopoverContent(_a) {
|
|
|
5136
5408
|
}
|
|
5137
5409
|
function PopoverAnchor(_a) {
|
|
5138
5410
|
var props = __objRest(_a, []);
|
|
5139
|
-
return /* @__PURE__ */
|
|
5411
|
+
return /* @__PURE__ */ jsx41(PopoverPrimitive.Anchor, __spreadValues({ "data-slot": "popover-anchor" }, props));
|
|
5140
5412
|
}
|
|
5141
5413
|
function PopoverHeader(_a) {
|
|
5142
5414
|
var _b = _a, { className } = _b, props = __objRest(_b, ["className"]);
|
|
5143
|
-
return /* @__PURE__ */
|
|
5415
|
+
return /* @__PURE__ */ jsx41(
|
|
5144
5416
|
"div",
|
|
5145
5417
|
__spreadValues({
|
|
5146
5418
|
"data-slot": "popover-header",
|
|
@@ -5150,7 +5422,7 @@ function PopoverHeader(_a) {
|
|
|
5150
5422
|
}
|
|
5151
5423
|
function PopoverTitle(_a) {
|
|
5152
5424
|
var _b = _a, { className } = _b, props = __objRest(_b, ["className"]);
|
|
5153
|
-
return /* @__PURE__ */
|
|
5425
|
+
return /* @__PURE__ */ jsx41(
|
|
5154
5426
|
"div",
|
|
5155
5427
|
__spreadValues({
|
|
5156
5428
|
"data-slot": "popover-title",
|
|
@@ -5164,7 +5436,7 @@ function PopoverDescription(_a) {
|
|
|
5164
5436
|
} = _b, props = __objRest(_b, [
|
|
5165
5437
|
"className"
|
|
5166
5438
|
]);
|
|
5167
|
-
return /* @__PURE__ */
|
|
5439
|
+
return /* @__PURE__ */ jsx41(
|
|
5168
5440
|
"p",
|
|
5169
5441
|
__spreadValues({
|
|
5170
5442
|
"data-slot": "popover-description",
|
|
@@ -5174,9 +5446,9 @@ function PopoverDescription(_a) {
|
|
|
5174
5446
|
}
|
|
5175
5447
|
|
|
5176
5448
|
// components/ui/progress.tsx
|
|
5177
|
-
import * as
|
|
5449
|
+
import * as React12 from "react";
|
|
5178
5450
|
import { Progress as ProgressPrimitive } from "radix-ui";
|
|
5179
|
-
import { jsx as
|
|
5451
|
+
import { jsx as jsx42, jsxs as jsxs23 } from "react/jsx-runtime";
|
|
5180
5452
|
var BAR_HEIGHTS = {
|
|
5181
5453
|
sm: "h-1",
|
|
5182
5454
|
md: "h-2",
|
|
@@ -5219,11 +5491,11 @@ function Progress(_a) {
|
|
|
5219
5491
|
"onTimerEnd",
|
|
5220
5492
|
"children"
|
|
5221
5493
|
]);
|
|
5222
|
-
const [timerPct, setTimerPct] =
|
|
5494
|
+
const [timerPct, setTimerPct] = React12.useState(
|
|
5223
5495
|
timer != null ? direction === "up" ? 0 : 100 : null
|
|
5224
5496
|
);
|
|
5225
|
-
const endedRef =
|
|
5226
|
-
|
|
5497
|
+
const endedRef = React12.useRef(false);
|
|
5498
|
+
React12.useEffect(() => {
|
|
5227
5499
|
if (timer == null) {
|
|
5228
5500
|
setTimerPct(null);
|
|
5229
5501
|
return;
|
|
@@ -5249,7 +5521,7 @@ function Progress(_a) {
|
|
|
5249
5521
|
const content = typeof children === "function" ? children(pct) : children;
|
|
5250
5522
|
if (variant === "dots") {
|
|
5251
5523
|
const filled = Math.round(pct / 100 * segments);
|
|
5252
|
-
return /* @__PURE__ */
|
|
5524
|
+
return /* @__PURE__ */ jsx42(
|
|
5253
5525
|
"div",
|
|
5254
5526
|
__spreadProps(__spreadValues({
|
|
5255
5527
|
"data-slot": "progress",
|
|
@@ -5260,7 +5532,7 @@ function Progress(_a) {
|
|
|
5260
5532
|
"aria-valuenow": pct,
|
|
5261
5533
|
className: cn("flex items-center gap-1", className)
|
|
5262
5534
|
}, props), {
|
|
5263
|
-
children: Array.from({ length: segments }, (_, i) => /* @__PURE__ */
|
|
5535
|
+
children: Array.from({ length: segments }, (_, i) => /* @__PURE__ */ jsx42(
|
|
5264
5536
|
"span",
|
|
5265
5537
|
{
|
|
5266
5538
|
"data-slot": "progress-dot",
|
|
@@ -5279,7 +5551,7 @@ function Progress(_a) {
|
|
|
5279
5551
|
if (variant === "ring") {
|
|
5280
5552
|
const { box, r, stroke } = RINGS[size in RINGS ? size : "md"];
|
|
5281
5553
|
const circumference = 2 * Math.PI * r;
|
|
5282
|
-
return /* @__PURE__ */
|
|
5554
|
+
return /* @__PURE__ */ jsxs23(
|
|
5283
5555
|
"div",
|
|
5284
5556
|
__spreadProps(__spreadValues({
|
|
5285
5557
|
"data-slot": "progress",
|
|
@@ -5292,14 +5564,14 @@ function Progress(_a) {
|
|
|
5292
5564
|
style: { width: box, height: box }
|
|
5293
5565
|
}, props), {
|
|
5294
5566
|
children: [
|
|
5295
|
-
/* @__PURE__ */
|
|
5567
|
+
/* @__PURE__ */ jsxs23(
|
|
5296
5568
|
"svg",
|
|
5297
5569
|
{
|
|
5298
5570
|
viewBox: `0 0 ${box} ${box}`,
|
|
5299
5571
|
className: "absolute inset-0 -rotate-90",
|
|
5300
5572
|
"aria-hidden": true,
|
|
5301
5573
|
children: [
|
|
5302
|
-
/* @__PURE__ */
|
|
5574
|
+
/* @__PURE__ */ jsx42(
|
|
5303
5575
|
"circle",
|
|
5304
5576
|
{
|
|
5305
5577
|
cx: box / 2,
|
|
@@ -5310,7 +5582,7 @@ function Progress(_a) {
|
|
|
5310
5582
|
strokeWidth: stroke
|
|
5311
5583
|
}
|
|
5312
5584
|
),
|
|
5313
|
-
pct > 0 && /* @__PURE__ */
|
|
5585
|
+
pct > 0 && /* @__PURE__ */ jsx42(
|
|
5314
5586
|
"circle",
|
|
5315
5587
|
{
|
|
5316
5588
|
"data-slot": "progress-ring-fill",
|
|
@@ -5331,12 +5603,12 @@ function Progress(_a) {
|
|
|
5331
5603
|
]
|
|
5332
5604
|
}
|
|
5333
5605
|
),
|
|
5334
|
-
content != null && /* @__PURE__ */
|
|
5606
|
+
content != null && /* @__PURE__ */ jsx42("span", { className: "type-progress-value relative text-text-prominent-default", children: content })
|
|
5335
5607
|
]
|
|
5336
5608
|
})
|
|
5337
5609
|
);
|
|
5338
5610
|
}
|
|
5339
|
-
const bar = /* @__PURE__ */
|
|
5611
|
+
const bar = /* @__PURE__ */ jsx42(
|
|
5340
5612
|
ProgressPrimitive.Root,
|
|
5341
5613
|
__spreadProps(__spreadValues({
|
|
5342
5614
|
"data-slot": "progress",
|
|
@@ -5350,7 +5622,7 @@ function Progress(_a) {
|
|
|
5350
5622
|
label == null && valueLabel == null && className
|
|
5351
5623
|
)
|
|
5352
5624
|
}, props), {
|
|
5353
|
-
children: /* @__PURE__ */
|
|
5625
|
+
children: /* @__PURE__ */ jsx42(
|
|
5354
5626
|
ProgressPrimitive.Indicator,
|
|
5355
5627
|
{
|
|
5356
5628
|
"data-slot": "progress-indicator",
|
|
@@ -5364,10 +5636,10 @@ function Progress(_a) {
|
|
|
5364
5636
|
})
|
|
5365
5637
|
);
|
|
5366
5638
|
if (label == null && valueLabel == null) return bar;
|
|
5367
|
-
return /* @__PURE__ */
|
|
5368
|
-
/* @__PURE__ */
|
|
5369
|
-
label != null && /* @__PURE__ */
|
|
5370
|
-
valueLabel != null && /* @__PURE__ */
|
|
5639
|
+
return /* @__PURE__ */ jsxs23("div", { "data-slot": "progress-meter", className: cn("flex w-full flex-col gap-1.5", className), children: [
|
|
5640
|
+
/* @__PURE__ */ jsxs23("div", { className: "flex items-baseline justify-between gap-3", children: [
|
|
5641
|
+
label != null && /* @__PURE__ */ jsx42("span", { className: "type-progress-label text-text-prominent-default", children: label }),
|
|
5642
|
+
valueLabel != null && /* @__PURE__ */ jsx42("span", { className: "type-progress-label ml-auto text-text-subtle-default tabular-nums", children: valueLabel })
|
|
5371
5643
|
] }),
|
|
5372
5644
|
bar
|
|
5373
5645
|
] });
|
|
@@ -5375,7 +5647,7 @@ function Progress(_a) {
|
|
|
5375
5647
|
|
|
5376
5648
|
// components/ui/profile-photo.tsx
|
|
5377
5649
|
import { Camera, User } from "lucide-react";
|
|
5378
|
-
import { jsx as
|
|
5650
|
+
import { jsx as jsx43, jsxs as jsxs24 } from "react/jsx-runtime";
|
|
5379
5651
|
var BOX = 112;
|
|
5380
5652
|
var PHOTO = 96;
|
|
5381
5653
|
var STROKE = 5;
|
|
@@ -5402,7 +5674,7 @@ function ProfilePhoto(_a) {
|
|
|
5402
5674
|
]);
|
|
5403
5675
|
const pct = Math.min(100, Math.max(0, progress));
|
|
5404
5676
|
const complete = pct >= 100;
|
|
5405
|
-
return /* @__PURE__ */
|
|
5677
|
+
return /* @__PURE__ */ jsxs24(
|
|
5406
5678
|
"div",
|
|
5407
5679
|
__spreadProps(__spreadValues({
|
|
5408
5680
|
"data-slot": "profile-photo",
|
|
@@ -5412,14 +5684,14 @@ function ProfilePhoto(_a) {
|
|
|
5412
5684
|
style: { width: BOX, height: BOX }
|
|
5413
5685
|
}, props), {
|
|
5414
5686
|
children: [
|
|
5415
|
-
/* @__PURE__ */
|
|
5687
|
+
/* @__PURE__ */ jsxs24(
|
|
5416
5688
|
"svg",
|
|
5417
5689
|
{
|
|
5418
5690
|
viewBox: `0 0 ${BOX} ${BOX}`,
|
|
5419
5691
|
"aria-hidden": "true",
|
|
5420
5692
|
className: "absolute inset-0 size-full rotate-90",
|
|
5421
5693
|
children: [
|
|
5422
|
-
/* @__PURE__ */
|
|
5694
|
+
/* @__PURE__ */ jsx43(
|
|
5423
5695
|
"circle",
|
|
5424
5696
|
{
|
|
5425
5697
|
cx: BOX / 2,
|
|
@@ -5430,7 +5702,7 @@ function ProfilePhoto(_a) {
|
|
|
5430
5702
|
strokeWidth: STROKE
|
|
5431
5703
|
}
|
|
5432
5704
|
),
|
|
5433
|
-
/* @__PURE__ */
|
|
5705
|
+
/* @__PURE__ */ jsx43(
|
|
5434
5706
|
"circle",
|
|
5435
5707
|
{
|
|
5436
5708
|
"data-slot": "profile-photo-ring",
|
|
@@ -5449,19 +5721,19 @@ function ProfilePhoto(_a) {
|
|
|
5449
5721
|
]
|
|
5450
5722
|
}
|
|
5451
5723
|
),
|
|
5452
|
-
/* @__PURE__ */
|
|
5724
|
+
/* @__PURE__ */ jsx43(
|
|
5453
5725
|
"div",
|
|
5454
5726
|
{
|
|
5455
5727
|
"data-slot": "profile-photo-image",
|
|
5456
5728
|
className: "absolute flex items-center justify-center overflow-hidden rounded-full bg-background-secondary-surface",
|
|
5457
5729
|
style: { inset: INSET },
|
|
5458
|
-
children: src ? /* @__PURE__ */
|
|
5730
|
+
children: src ? /* @__PURE__ */ jsx43("img", { src, alt, className: "size-full object-cover" }) : /* @__PURE__ */ jsx43(User, { className: "size-10 text-icon-subtle-default", strokeWidth: 1.5, "aria-hidden": "true" })
|
|
5459
5731
|
}
|
|
5460
5732
|
),
|
|
5461
5733
|
onPhotoChange ? (
|
|
5462
5734
|
// 24px keeps the chip subordinate to the photo; the ::after extends the
|
|
5463
5735
|
// hit area to ~44px so it still meets the touch-target minimum.
|
|
5464
|
-
/* @__PURE__ */
|
|
5736
|
+
/* @__PURE__ */ jsx43(
|
|
5465
5737
|
Button,
|
|
5466
5738
|
{
|
|
5467
5739
|
variant: "primary",
|
|
@@ -5470,11 +5742,11 @@ function ProfilePhoto(_a) {
|
|
|
5470
5742
|
onClick: onPhotoChange,
|
|
5471
5743
|
"data-slot": "profile-photo-camera",
|
|
5472
5744
|
className: "absolute right-0.5 bottom-5 rounded-full border-2 border-prominent after:absolute after:-inset-2.5 after:content-['']",
|
|
5473
|
-
children: /* @__PURE__ */
|
|
5745
|
+
children: /* @__PURE__ */ jsx43(Camera, {})
|
|
5474
5746
|
}
|
|
5475
5747
|
)
|
|
5476
5748
|
) : null,
|
|
5477
|
-
status ? /* @__PURE__ */
|
|
5749
|
+
status ? /* @__PURE__ */ jsx43(
|
|
5478
5750
|
"div",
|
|
5479
5751
|
{
|
|
5480
5752
|
"data-slot": "profile-photo-status",
|
|
@@ -5490,14 +5762,14 @@ function ProfilePhoto(_a) {
|
|
|
5490
5762
|
// components/ui/radio-group.tsx
|
|
5491
5763
|
import { CircleIcon as CircleIcon4 } from "lucide-react";
|
|
5492
5764
|
import { RadioGroup as RadioGroupPrimitive } from "radix-ui";
|
|
5493
|
-
import { jsx as
|
|
5765
|
+
import { jsx as jsx44 } from "react/jsx-runtime";
|
|
5494
5766
|
function RadioGroup(_a) {
|
|
5495
5767
|
var _b = _a, {
|
|
5496
5768
|
className
|
|
5497
5769
|
} = _b, props = __objRest(_b, [
|
|
5498
5770
|
"className"
|
|
5499
5771
|
]);
|
|
5500
|
-
return /* @__PURE__ */
|
|
5772
|
+
return /* @__PURE__ */ jsx44(
|
|
5501
5773
|
RadioGroupPrimitive.Root,
|
|
5502
5774
|
__spreadValues({
|
|
5503
5775
|
"data-slot": "radio-group",
|
|
@@ -5511,7 +5783,7 @@ function RadioGroupItem(_a) {
|
|
|
5511
5783
|
} = _b, props = __objRest(_b, [
|
|
5512
5784
|
"className"
|
|
5513
5785
|
]);
|
|
5514
|
-
return /* @__PURE__ */
|
|
5786
|
+
return /* @__PURE__ */ jsx44(
|
|
5515
5787
|
RadioGroupPrimitive.Item,
|
|
5516
5788
|
__spreadProps(__spreadValues({
|
|
5517
5789
|
"data-slot": "radio-group-item",
|
|
@@ -5520,12 +5792,12 @@ function RadioGroupItem(_a) {
|
|
|
5520
5792
|
className
|
|
5521
5793
|
)
|
|
5522
5794
|
}, props), {
|
|
5523
|
-
children: /* @__PURE__ */
|
|
5795
|
+
children: /* @__PURE__ */ jsx44(
|
|
5524
5796
|
RadioGroupPrimitive.Indicator,
|
|
5525
5797
|
{
|
|
5526
5798
|
"data-slot": "radio-group-indicator",
|
|
5527
5799
|
className: "relative flex items-center justify-center",
|
|
5528
|
-
children: /* @__PURE__ */
|
|
5800
|
+
children: /* @__PURE__ */ jsx44(CircleIcon4, { className: "absolute top-1/2 left-1/2 size-2 -translate-x-1/2 -translate-y-1/2 fill-text-brand-selected text-background-brand-default" })
|
|
5529
5801
|
}
|
|
5530
5802
|
)
|
|
5531
5803
|
})
|
|
@@ -5535,14 +5807,14 @@ function RadioGroupItem(_a) {
|
|
|
5535
5807
|
// components/ui/resizable.tsx
|
|
5536
5808
|
import { GripVerticalIcon } from "lucide-react";
|
|
5537
5809
|
import * as ResizablePrimitive from "react-resizable-panels";
|
|
5538
|
-
import { jsx as
|
|
5810
|
+
import { jsx as jsx45 } from "react/jsx-runtime";
|
|
5539
5811
|
function ResizablePanelGroup(_a) {
|
|
5540
5812
|
var _b = _a, {
|
|
5541
5813
|
className
|
|
5542
5814
|
} = _b, props = __objRest(_b, [
|
|
5543
5815
|
"className"
|
|
5544
5816
|
]);
|
|
5545
|
-
return /* @__PURE__ */
|
|
5817
|
+
return /* @__PURE__ */ jsx45(
|
|
5546
5818
|
ResizablePrimitive.Group,
|
|
5547
5819
|
__spreadValues({
|
|
5548
5820
|
"data-slot": "resizable-panel-group",
|
|
@@ -5555,7 +5827,7 @@ function ResizablePanelGroup(_a) {
|
|
|
5555
5827
|
}
|
|
5556
5828
|
function ResizablePanel(_a) {
|
|
5557
5829
|
var props = __objRest(_a, []);
|
|
5558
|
-
return /* @__PURE__ */
|
|
5830
|
+
return /* @__PURE__ */ jsx45(ResizablePrimitive.Panel, __spreadValues({ "data-slot": "resizable-panel" }, props));
|
|
5559
5831
|
}
|
|
5560
5832
|
function ResizableHandle(_a) {
|
|
5561
5833
|
var _b = _a, {
|
|
@@ -5565,7 +5837,7 @@ function ResizableHandle(_a) {
|
|
|
5565
5837
|
"withHandle",
|
|
5566
5838
|
"className"
|
|
5567
5839
|
]);
|
|
5568
|
-
return /* @__PURE__ */
|
|
5840
|
+
return /* @__PURE__ */ jsx45(
|
|
5569
5841
|
ResizablePrimitive.Separator,
|
|
5570
5842
|
__spreadProps(__spreadValues({
|
|
5571
5843
|
"data-slot": "resizable-handle",
|
|
@@ -5574,14 +5846,14 @@ function ResizableHandle(_a) {
|
|
|
5574
5846
|
className
|
|
5575
5847
|
)
|
|
5576
5848
|
}, props), {
|
|
5577
|
-
children: withHandle && /* @__PURE__ */
|
|
5849
|
+
children: withHandle && /* @__PURE__ */ jsx45("div", { className: "z-10 flex h-4 w-3 items-center justify-center rounded-xs border border-border-default-default bg-border-default-default text-icon-subtle-default", children: /* @__PURE__ */ jsx45(GripVerticalIcon, { className: "size-2.5" }) })
|
|
5578
5850
|
})
|
|
5579
5851
|
);
|
|
5580
5852
|
}
|
|
5581
5853
|
|
|
5582
5854
|
// components/ui/scroll-area.tsx
|
|
5583
5855
|
import { ScrollArea as ScrollAreaPrimitive } from "radix-ui";
|
|
5584
|
-
import { jsx as
|
|
5856
|
+
import { jsx as jsx46, jsxs as jsxs25 } from "react/jsx-runtime";
|
|
5585
5857
|
function ScrollArea(_a) {
|
|
5586
5858
|
var _b = _a, {
|
|
5587
5859
|
className,
|
|
@@ -5590,14 +5862,14 @@ function ScrollArea(_a) {
|
|
|
5590
5862
|
"className",
|
|
5591
5863
|
"children"
|
|
5592
5864
|
]);
|
|
5593
|
-
return /* @__PURE__ */
|
|
5865
|
+
return /* @__PURE__ */ jsxs25(
|
|
5594
5866
|
ScrollAreaPrimitive.Root,
|
|
5595
5867
|
__spreadProps(__spreadValues({
|
|
5596
5868
|
"data-slot": "scroll-area",
|
|
5597
5869
|
className: cn("relative", className)
|
|
5598
5870
|
}, props), {
|
|
5599
5871
|
children: [
|
|
5600
|
-
/* @__PURE__ */
|
|
5872
|
+
/* @__PURE__ */ jsx46(
|
|
5601
5873
|
ScrollAreaPrimitive.Viewport,
|
|
5602
5874
|
{
|
|
5603
5875
|
"data-slot": "scroll-area-viewport",
|
|
@@ -5605,8 +5877,8 @@ function ScrollArea(_a) {
|
|
|
5605
5877
|
children
|
|
5606
5878
|
}
|
|
5607
5879
|
),
|
|
5608
|
-
/* @__PURE__ */
|
|
5609
|
-
/* @__PURE__ */
|
|
5880
|
+
/* @__PURE__ */ jsx46(ScrollBar, {}),
|
|
5881
|
+
/* @__PURE__ */ jsx46(ScrollAreaPrimitive.Corner, {})
|
|
5610
5882
|
]
|
|
5611
5883
|
})
|
|
5612
5884
|
);
|
|
@@ -5619,7 +5891,7 @@ function ScrollBar(_a) {
|
|
|
5619
5891
|
"className",
|
|
5620
5892
|
"orientation"
|
|
5621
5893
|
]);
|
|
5622
|
-
return /* @__PURE__ */
|
|
5894
|
+
return /* @__PURE__ */ jsx46(
|
|
5623
5895
|
ScrollAreaPrimitive.ScrollAreaScrollbar,
|
|
5624
5896
|
__spreadProps(__spreadValues({
|
|
5625
5897
|
"data-slot": "scroll-area-scrollbar",
|
|
@@ -5631,7 +5903,7 @@ function ScrollBar(_a) {
|
|
|
5631
5903
|
className
|
|
5632
5904
|
)
|
|
5633
5905
|
}, props), {
|
|
5634
|
-
children: /* @__PURE__ */
|
|
5906
|
+
children: /* @__PURE__ */ jsx46(
|
|
5635
5907
|
ScrollAreaPrimitive.ScrollAreaThumb,
|
|
5636
5908
|
{
|
|
5637
5909
|
"data-slot": "scroll-area-thumb",
|
|
@@ -5645,22 +5917,22 @@ function ScrollBar(_a) {
|
|
|
5645
5917
|
// components/ui/sheet.tsx
|
|
5646
5918
|
import { XIcon as XIcon3 } from "lucide-react";
|
|
5647
5919
|
import { Dialog as SheetPrimitive } from "radix-ui";
|
|
5648
|
-
import { jsx as
|
|
5920
|
+
import { jsx as jsx47, jsxs as jsxs26 } from "react/jsx-runtime";
|
|
5649
5921
|
function Sheet(_a) {
|
|
5650
5922
|
var props = __objRest(_a, []);
|
|
5651
|
-
return /* @__PURE__ */
|
|
5923
|
+
return /* @__PURE__ */ jsx47(SheetPrimitive.Root, __spreadValues({ "data-slot": "sheet" }, props));
|
|
5652
5924
|
}
|
|
5653
5925
|
function SheetTrigger(_a) {
|
|
5654
5926
|
var props = __objRest(_a, []);
|
|
5655
|
-
return /* @__PURE__ */
|
|
5927
|
+
return /* @__PURE__ */ jsx47(SheetPrimitive.Trigger, __spreadValues({ "data-slot": "sheet-trigger" }, props));
|
|
5656
5928
|
}
|
|
5657
5929
|
function SheetClose(_a) {
|
|
5658
5930
|
var props = __objRest(_a, []);
|
|
5659
|
-
return /* @__PURE__ */
|
|
5931
|
+
return /* @__PURE__ */ jsx47(SheetPrimitive.Close, __spreadValues({ "data-slot": "sheet-close" }, props));
|
|
5660
5932
|
}
|
|
5661
5933
|
function SheetPortal(_a) {
|
|
5662
5934
|
var props = __objRest(_a, []);
|
|
5663
|
-
return /* @__PURE__ */
|
|
5935
|
+
return /* @__PURE__ */ jsx47(SheetPrimitive.Portal, __spreadValues({ "data-slot": "sheet-portal" }, props));
|
|
5664
5936
|
}
|
|
5665
5937
|
function SheetOverlay(_a) {
|
|
5666
5938
|
var _b = _a, {
|
|
@@ -5668,7 +5940,7 @@ function SheetOverlay(_a) {
|
|
|
5668
5940
|
} = _b, props = __objRest(_b, [
|
|
5669
5941
|
"className"
|
|
5670
5942
|
]);
|
|
5671
|
-
return /* @__PURE__ */
|
|
5943
|
+
return /* @__PURE__ */ jsx47(
|
|
5672
5944
|
SheetPrimitive.Overlay,
|
|
5673
5945
|
__spreadValues({
|
|
5674
5946
|
"data-slot": "sheet-overlay",
|
|
@@ -5691,9 +5963,9 @@ function SheetContent(_a) {
|
|
|
5691
5963
|
"side",
|
|
5692
5964
|
"showCloseButton"
|
|
5693
5965
|
]);
|
|
5694
|
-
return /* @__PURE__ */
|
|
5695
|
-
/* @__PURE__ */
|
|
5696
|
-
/* @__PURE__ */
|
|
5966
|
+
return /* @__PURE__ */ jsxs26(SheetPortal, { children: [
|
|
5967
|
+
/* @__PURE__ */ jsx47(SheetOverlay, {}),
|
|
5968
|
+
/* @__PURE__ */ jsxs26(
|
|
5697
5969
|
SheetPrimitive.Content,
|
|
5698
5970
|
__spreadProps(__spreadValues({
|
|
5699
5971
|
"data-slot": "sheet-content",
|
|
@@ -5708,14 +5980,14 @@ function SheetContent(_a) {
|
|
|
5708
5980
|
}, props), {
|
|
5709
5981
|
children: [
|
|
5710
5982
|
children,
|
|
5711
|
-
showCloseButton && /* @__PURE__ */
|
|
5983
|
+
showCloseButton && /* @__PURE__ */ jsx47(SheetPrimitive.Close, { asChild: true, children: /* @__PURE__ */ jsx47(
|
|
5712
5984
|
NavigationButton,
|
|
5713
5985
|
{
|
|
5714
5986
|
"data-slot": "sheet-close",
|
|
5715
5987
|
size: "sm",
|
|
5716
5988
|
"aria-label": "Close",
|
|
5717
5989
|
className: "absolute top-4 right-4",
|
|
5718
|
-
children: /* @__PURE__ */
|
|
5990
|
+
children: /* @__PURE__ */ jsx47(XIcon3, { className: "size-4" })
|
|
5719
5991
|
}
|
|
5720
5992
|
) })
|
|
5721
5993
|
]
|
|
@@ -5725,7 +5997,7 @@ function SheetContent(_a) {
|
|
|
5725
5997
|
}
|
|
5726
5998
|
function SheetHeader(_a) {
|
|
5727
5999
|
var _b = _a, { className } = _b, props = __objRest(_b, ["className"]);
|
|
5728
|
-
return /* @__PURE__ */
|
|
6000
|
+
return /* @__PURE__ */ jsx47(
|
|
5729
6001
|
"div",
|
|
5730
6002
|
__spreadValues({
|
|
5731
6003
|
"data-slot": "sheet-header",
|
|
@@ -5735,7 +6007,7 @@ function SheetHeader(_a) {
|
|
|
5735
6007
|
}
|
|
5736
6008
|
function SheetFooter(_a) {
|
|
5737
6009
|
var _b = _a, { className } = _b, props = __objRest(_b, ["className"]);
|
|
5738
|
-
return /* @__PURE__ */
|
|
6010
|
+
return /* @__PURE__ */ jsx47(
|
|
5739
6011
|
"div",
|
|
5740
6012
|
__spreadValues({
|
|
5741
6013
|
"data-slot": "sheet-footer",
|
|
@@ -5749,7 +6021,7 @@ function SheetTitle(_a) {
|
|
|
5749
6021
|
} = _b, props = __objRest(_b, [
|
|
5750
6022
|
"className"
|
|
5751
6023
|
]);
|
|
5752
|
-
return /* @__PURE__ */
|
|
6024
|
+
return /* @__PURE__ */ jsx47(
|
|
5753
6025
|
SheetPrimitive.Title,
|
|
5754
6026
|
__spreadValues({
|
|
5755
6027
|
"data-slot": "sheet-title",
|
|
@@ -5763,7 +6035,7 @@ function SheetDescription(_a) {
|
|
|
5763
6035
|
} = _b, props = __objRest(_b, [
|
|
5764
6036
|
"className"
|
|
5765
6037
|
]);
|
|
5766
|
-
return /* @__PURE__ */
|
|
6038
|
+
return /* @__PURE__ */ jsx47(
|
|
5767
6039
|
SheetPrimitive.Description,
|
|
5768
6040
|
__spreadValues({
|
|
5769
6041
|
"data-slot": "sheet-description",
|
|
@@ -5773,17 +6045,17 @@ function SheetDescription(_a) {
|
|
|
5773
6045
|
}
|
|
5774
6046
|
|
|
5775
6047
|
// components/ui/sidebar.tsx
|
|
5776
|
-
import * as
|
|
6048
|
+
import * as React15 from "react";
|
|
5777
6049
|
import { cva as cva13 } from "class-variance-authority";
|
|
5778
6050
|
import { PanelLeftIcon } from "lucide-react";
|
|
5779
6051
|
import { Slot as Slot8 } from "radix-ui";
|
|
5780
6052
|
|
|
5781
6053
|
// hooks/use-mobile.ts
|
|
5782
|
-
import * as
|
|
6054
|
+
import * as React13 from "react";
|
|
5783
6055
|
var MOBILE_BREAKPOINT = 768;
|
|
5784
6056
|
function useIsMobile() {
|
|
5785
|
-
const [isMobile, setIsMobile] =
|
|
5786
|
-
|
|
6057
|
+
const [isMobile, setIsMobile] = React13.useState(void 0);
|
|
6058
|
+
React13.useEffect(() => {
|
|
5787
6059
|
const mql = window.matchMedia(`(max-width: ${MOBILE_BREAKPOINT - 1}px)`);
|
|
5788
6060
|
const onChange = () => {
|
|
5789
6061
|
setIsMobile(window.innerWidth < MOBILE_BREAKPOINT);
|
|
@@ -5796,10 +6068,10 @@ function useIsMobile() {
|
|
|
5796
6068
|
}
|
|
5797
6069
|
|
|
5798
6070
|
// components/ui/skeleton.tsx
|
|
5799
|
-
import { jsx as
|
|
6071
|
+
import { jsx as jsx48 } from "react/jsx-runtime";
|
|
5800
6072
|
function Skeleton(_a) {
|
|
5801
6073
|
var _b = _a, { className } = _b, props = __objRest(_b, ["className"]);
|
|
5802
|
-
return /* @__PURE__ */
|
|
6074
|
+
return /* @__PURE__ */ jsx48(
|
|
5803
6075
|
"div",
|
|
5804
6076
|
__spreadValues({
|
|
5805
6077
|
"data-slot": "skeleton",
|
|
@@ -5813,17 +6085,17 @@ function Skeleton(_a) {
|
|
|
5813
6085
|
}
|
|
5814
6086
|
|
|
5815
6087
|
// components/ui/tooltip.tsx
|
|
5816
|
-
import * as
|
|
6088
|
+
import * as React14 from "react";
|
|
5817
6089
|
import { Tooltip as TooltipPrimitive } from "radix-ui";
|
|
5818
|
-
import { jsx as
|
|
5819
|
-
var TooltipModeContext =
|
|
6090
|
+
import { jsx as jsx49, jsxs as jsxs27 } from "react/jsx-runtime";
|
|
6091
|
+
var TooltipModeContext = React14.createContext("tooltip");
|
|
5820
6092
|
function TooltipProvider(_a) {
|
|
5821
6093
|
var _b = _a, {
|
|
5822
6094
|
delayDuration = 0
|
|
5823
6095
|
} = _b, props = __objRest(_b, [
|
|
5824
6096
|
"delayDuration"
|
|
5825
6097
|
]);
|
|
5826
|
-
return /* @__PURE__ */
|
|
6098
|
+
return /* @__PURE__ */ jsx49(
|
|
5827
6099
|
TooltipPrimitive.Provider,
|
|
5828
6100
|
__spreadValues({
|
|
5829
6101
|
"data-slot": "tooltip-provider",
|
|
@@ -5840,9 +6112,9 @@ function Tooltip(_a) {
|
|
|
5840
6112
|
const isMobile = useIsMobile();
|
|
5841
6113
|
const mode = isMobile ? "drawer" : "tooltip";
|
|
5842
6114
|
if (mode === "drawer") {
|
|
5843
|
-
return /* @__PURE__ */
|
|
6115
|
+
return /* @__PURE__ */ jsx49(TooltipModeContext.Provider, { value: "drawer", children: /* @__PURE__ */ jsx49(Drawer, { children }) });
|
|
5844
6116
|
}
|
|
5845
|
-
return /* @__PURE__ */
|
|
6117
|
+
return /* @__PURE__ */ jsx49(TooltipModeContext.Provider, { value: "tooltip", children: /* @__PURE__ */ jsx49(TooltipPrimitive.Root, __spreadProps(__spreadValues({ "data-slot": "tooltip" }, props), { children })) });
|
|
5846
6118
|
}
|
|
5847
6119
|
function TooltipTrigger(_a) {
|
|
5848
6120
|
var _b = _a, {
|
|
@@ -5850,11 +6122,11 @@ function TooltipTrigger(_a) {
|
|
|
5850
6122
|
} = _b, props = __objRest(_b, [
|
|
5851
6123
|
"children"
|
|
5852
6124
|
]);
|
|
5853
|
-
const mode =
|
|
6125
|
+
const mode = React14.useContext(TooltipModeContext);
|
|
5854
6126
|
if (mode === "drawer") {
|
|
5855
|
-
return /* @__PURE__ */
|
|
6127
|
+
return /* @__PURE__ */ jsx49(DrawerTrigger, __spreadProps(__spreadValues({ "data-slot": "tooltip-trigger" }, props), { children }));
|
|
5856
6128
|
}
|
|
5857
|
-
return /* @__PURE__ */
|
|
6129
|
+
return /* @__PURE__ */ jsx49(TooltipPrimitive.Trigger, __spreadProps(__spreadValues({ "data-slot": "tooltip-trigger" }, props), { children }));
|
|
5858
6130
|
}
|
|
5859
6131
|
function TooltipContent(_a) {
|
|
5860
6132
|
var _b = _a, {
|
|
@@ -5872,17 +6144,17 @@ function TooltipContent(_a) {
|
|
|
5872
6144
|
"closeLabel",
|
|
5873
6145
|
"children"
|
|
5874
6146
|
]);
|
|
5875
|
-
const mode =
|
|
6147
|
+
const mode = React14.useContext(TooltipModeContext);
|
|
5876
6148
|
if (mode === "drawer") {
|
|
5877
|
-
return /* @__PURE__ */
|
|
5878
|
-
/* @__PURE__ */
|
|
5879
|
-
/* @__PURE__ */
|
|
5880
|
-
/* @__PURE__ */
|
|
6149
|
+
return /* @__PURE__ */ jsxs27(DrawerContent, { "data-slot": "tooltip-content", "data-variant": variant, children: [
|
|
6150
|
+
/* @__PURE__ */ jsx49(DrawerHeader, { children: /* @__PURE__ */ jsx49(DrawerTitle, { children: title }) }),
|
|
6151
|
+
/* @__PURE__ */ jsx49("div", { className: cn("type-drawer-description p-4 text-text-subtle-default", className), children }),
|
|
6152
|
+
/* @__PURE__ */ jsx49(DrawerFooter, { children: /* @__PURE__ */ jsx49(DrawerClose, { asChild: true, children: /* @__PURE__ */ jsx49(Button, { variant: "primary", size: "md", children: closeLabel }) }) })
|
|
5881
6153
|
] });
|
|
5882
6154
|
}
|
|
5883
6155
|
const surfaceClasses = variant === "inverse" ? "border border-border-default-default bg-background-primary-surface text-text-prominent-default" : "bg-background-inverse-surface text-text-prominent-inverse";
|
|
5884
6156
|
const arrowClasses = variant === "inverse" ? "fill-background-primary-surface" : "fill-background-inverse-surface";
|
|
5885
|
-
return /* @__PURE__ */
|
|
6157
|
+
return /* @__PURE__ */ jsx49(TooltipPrimitive.Portal, { children: /* @__PURE__ */ jsxs27(
|
|
5886
6158
|
TooltipPrimitive.Content,
|
|
5887
6159
|
__spreadProps(__spreadValues({
|
|
5888
6160
|
"data-slot": "tooltip-content",
|
|
@@ -5896,23 +6168,23 @@ function TooltipContent(_a) {
|
|
|
5896
6168
|
}, props), {
|
|
5897
6169
|
children: [
|
|
5898
6170
|
children,
|
|
5899
|
-
/* @__PURE__ */
|
|
6171
|
+
/* @__PURE__ */ jsx49(TooltipPrimitive.Arrow, { className: arrowClasses })
|
|
5900
6172
|
]
|
|
5901
6173
|
})
|
|
5902
6174
|
) });
|
|
5903
6175
|
}
|
|
5904
6176
|
|
|
5905
6177
|
// components/ui/sidebar.tsx
|
|
5906
|
-
import { jsx as
|
|
6178
|
+
import { jsx as jsx50, jsxs as jsxs28 } from "react/jsx-runtime";
|
|
5907
6179
|
var SIDEBAR_COOKIE_NAME = "sidebar_state";
|
|
5908
6180
|
var SIDEBAR_COOKIE_MAX_AGE = 60 * 60 * 24 * 7;
|
|
5909
6181
|
var SIDEBAR_WIDTH = "16rem";
|
|
5910
6182
|
var SIDEBAR_WIDTH_MOBILE = "18rem";
|
|
5911
6183
|
var SIDEBAR_WIDTH_ICON = "3rem";
|
|
5912
6184
|
var SIDEBAR_KEYBOARD_SHORTCUT = "b";
|
|
5913
|
-
var SidebarContext =
|
|
6185
|
+
var SidebarContext = React15.createContext(null);
|
|
5914
6186
|
function useSidebar() {
|
|
5915
|
-
const context =
|
|
6187
|
+
const context = React15.useContext(SidebarContext);
|
|
5916
6188
|
if (!context) {
|
|
5917
6189
|
throw new Error("useSidebar must be used within a SidebarProvider.");
|
|
5918
6190
|
}
|
|
@@ -5935,10 +6207,10 @@ function SidebarProvider(_a) {
|
|
|
5935
6207
|
"children"
|
|
5936
6208
|
]);
|
|
5937
6209
|
const isMobile = useIsMobile();
|
|
5938
|
-
const [openMobile, setOpenMobile] =
|
|
5939
|
-
const [_open, _setOpen] =
|
|
6210
|
+
const [openMobile, setOpenMobile] = React15.useState(false);
|
|
6211
|
+
const [_open, _setOpen] = React15.useState(defaultOpen);
|
|
5940
6212
|
const open = openProp != null ? openProp : _open;
|
|
5941
|
-
const setOpen =
|
|
6213
|
+
const setOpen = React15.useCallback(
|
|
5942
6214
|
(value) => {
|
|
5943
6215
|
const openState = typeof value === "function" ? value(open) : value;
|
|
5944
6216
|
if (setOpenProp) {
|
|
@@ -5950,10 +6222,10 @@ function SidebarProvider(_a) {
|
|
|
5950
6222
|
},
|
|
5951
6223
|
[setOpenProp, open]
|
|
5952
6224
|
);
|
|
5953
|
-
const toggleSidebar =
|
|
6225
|
+
const toggleSidebar = React15.useCallback(() => {
|
|
5954
6226
|
return isMobile ? setOpenMobile((open2) => !open2) : setOpen((open2) => !open2);
|
|
5955
6227
|
}, [isMobile, setOpen, setOpenMobile]);
|
|
5956
|
-
|
|
6228
|
+
React15.useEffect(() => {
|
|
5957
6229
|
const handleKeyDown = (event) => {
|
|
5958
6230
|
if (event.key === SIDEBAR_KEYBOARD_SHORTCUT && (event.metaKey || event.ctrlKey)) {
|
|
5959
6231
|
event.preventDefault();
|
|
@@ -5964,7 +6236,7 @@ function SidebarProvider(_a) {
|
|
|
5964
6236
|
return () => window.removeEventListener("keydown", handleKeyDown);
|
|
5965
6237
|
}, [toggleSidebar]);
|
|
5966
6238
|
const state = open ? "expanded" : "collapsed";
|
|
5967
|
-
const contextValue =
|
|
6239
|
+
const contextValue = React15.useMemo(
|
|
5968
6240
|
() => ({
|
|
5969
6241
|
state,
|
|
5970
6242
|
open,
|
|
@@ -5976,7 +6248,7 @@ function SidebarProvider(_a) {
|
|
|
5976
6248
|
}),
|
|
5977
6249
|
[state, open, setOpen, isMobile, openMobile, setOpenMobile, toggleSidebar]
|
|
5978
6250
|
);
|
|
5979
|
-
return /* @__PURE__ */
|
|
6251
|
+
return /* @__PURE__ */ jsx50(SidebarContext.Provider, { value: contextValue, children: /* @__PURE__ */ jsx50(TooltipProvider, { delayDuration: 0, children: /* @__PURE__ */ jsx50(
|
|
5980
6252
|
"div",
|
|
5981
6253
|
__spreadProps(__spreadValues({
|
|
5982
6254
|
"data-slot": "sidebar-wrapper",
|
|
@@ -6009,7 +6281,7 @@ function Sidebar(_a) {
|
|
|
6009
6281
|
]);
|
|
6010
6282
|
const { isMobile, state, openMobile, setOpenMobile } = useSidebar();
|
|
6011
6283
|
if (collapsible === "none") {
|
|
6012
|
-
return /* @__PURE__ */
|
|
6284
|
+
return /* @__PURE__ */ jsx50(
|
|
6013
6285
|
"div",
|
|
6014
6286
|
__spreadProps(__spreadValues({
|
|
6015
6287
|
"data-slot": "sidebar",
|
|
@@ -6023,7 +6295,7 @@ function Sidebar(_a) {
|
|
|
6023
6295
|
);
|
|
6024
6296
|
}
|
|
6025
6297
|
if (isMobile) {
|
|
6026
|
-
return /* @__PURE__ */
|
|
6298
|
+
return /* @__PURE__ */ jsx50(Sheet, __spreadProps(__spreadValues({ open: openMobile, onOpenChange: setOpenMobile }, props), { children: /* @__PURE__ */ jsxs28(
|
|
6027
6299
|
SheetContent,
|
|
6028
6300
|
{
|
|
6029
6301
|
"data-sidebar": "sidebar",
|
|
@@ -6035,16 +6307,16 @@ function Sidebar(_a) {
|
|
|
6035
6307
|
},
|
|
6036
6308
|
side,
|
|
6037
6309
|
children: [
|
|
6038
|
-
/* @__PURE__ */
|
|
6039
|
-
/* @__PURE__ */
|
|
6040
|
-
/* @__PURE__ */
|
|
6310
|
+
/* @__PURE__ */ jsxs28(SheetHeader, { className: "sr-only", children: [
|
|
6311
|
+
/* @__PURE__ */ jsx50(SheetTitle, { children: "Sidebar" }),
|
|
6312
|
+
/* @__PURE__ */ jsx50(SheetDescription, { children: "Displays the mobile sidebar." })
|
|
6041
6313
|
] }),
|
|
6042
|
-
/* @__PURE__ */
|
|
6314
|
+
/* @__PURE__ */ jsx50("div", { className: "flex h-full w-full flex-col", children })
|
|
6043
6315
|
]
|
|
6044
6316
|
}
|
|
6045
6317
|
) }));
|
|
6046
6318
|
}
|
|
6047
|
-
return /* @__PURE__ */
|
|
6319
|
+
return /* @__PURE__ */ jsxs28(
|
|
6048
6320
|
"div",
|
|
6049
6321
|
{
|
|
6050
6322
|
className: "group peer hidden text-text-prominent-default md:block",
|
|
@@ -6054,7 +6326,7 @@ function Sidebar(_a) {
|
|
|
6054
6326
|
"data-side": side,
|
|
6055
6327
|
"data-slot": "sidebar",
|
|
6056
6328
|
children: [
|
|
6057
|
-
/* @__PURE__ */
|
|
6329
|
+
/* @__PURE__ */ jsx50(
|
|
6058
6330
|
"div",
|
|
6059
6331
|
{
|
|
6060
6332
|
"data-slot": "sidebar-gap",
|
|
@@ -6066,7 +6338,7 @@ function Sidebar(_a) {
|
|
|
6066
6338
|
)
|
|
6067
6339
|
}
|
|
6068
6340
|
),
|
|
6069
|
-
/* @__PURE__ */
|
|
6341
|
+
/* @__PURE__ */ jsx50(
|
|
6070
6342
|
"div",
|
|
6071
6343
|
__spreadProps(__spreadValues({
|
|
6072
6344
|
"data-slot": "sidebar-container",
|
|
@@ -6078,7 +6350,7 @@ function Sidebar(_a) {
|
|
|
6078
6350
|
className
|
|
6079
6351
|
)
|
|
6080
6352
|
}, props), {
|
|
6081
|
-
children: /* @__PURE__ */
|
|
6353
|
+
children: /* @__PURE__ */ jsx50(
|
|
6082
6354
|
"div",
|
|
6083
6355
|
{
|
|
6084
6356
|
"data-sidebar": "sidebar",
|
|
@@ -6102,7 +6374,7 @@ function SidebarTrigger(_a) {
|
|
|
6102
6374
|
"onClick"
|
|
6103
6375
|
]);
|
|
6104
6376
|
const { toggleSidebar } = useSidebar();
|
|
6105
|
-
return /* @__PURE__ */
|
|
6377
|
+
return /* @__PURE__ */ jsxs28(
|
|
6106
6378
|
Button,
|
|
6107
6379
|
__spreadProps(__spreadValues({
|
|
6108
6380
|
"data-sidebar": "trigger",
|
|
@@ -6116,8 +6388,8 @@ function SidebarTrigger(_a) {
|
|
|
6116
6388
|
}
|
|
6117
6389
|
}, props), {
|
|
6118
6390
|
children: [
|
|
6119
|
-
/* @__PURE__ */
|
|
6120
|
-
/* @__PURE__ */
|
|
6391
|
+
/* @__PURE__ */ jsx50(PanelLeftIcon, {}),
|
|
6392
|
+
/* @__PURE__ */ jsx50("span", { className: "sr-only", children: "Toggle Sidebar" })
|
|
6121
6393
|
]
|
|
6122
6394
|
})
|
|
6123
6395
|
);
|
|
@@ -6125,7 +6397,7 @@ function SidebarTrigger(_a) {
|
|
|
6125
6397
|
function SidebarRail(_a) {
|
|
6126
6398
|
var _b = _a, { className } = _b, props = __objRest(_b, ["className"]);
|
|
6127
6399
|
const { toggleSidebar } = useSidebar();
|
|
6128
|
-
return /* @__PURE__ */
|
|
6400
|
+
return /* @__PURE__ */ jsx50(
|
|
6129
6401
|
"button",
|
|
6130
6402
|
__spreadValues({
|
|
6131
6403
|
"data-sidebar": "rail",
|
|
@@ -6148,7 +6420,7 @@ function SidebarRail(_a) {
|
|
|
6148
6420
|
}
|
|
6149
6421
|
function SidebarInset(_a) {
|
|
6150
6422
|
var _b = _a, { className } = _b, props = __objRest(_b, ["className"]);
|
|
6151
|
-
return /* @__PURE__ */
|
|
6423
|
+
return /* @__PURE__ */ jsx50(
|
|
6152
6424
|
"main",
|
|
6153
6425
|
__spreadValues({
|
|
6154
6426
|
"data-slot": "sidebar-inset",
|
|
@@ -6166,7 +6438,7 @@ function SidebarInput(_a) {
|
|
|
6166
6438
|
} = _b, props = __objRest(_b, [
|
|
6167
6439
|
"className"
|
|
6168
6440
|
]);
|
|
6169
|
-
return /* @__PURE__ */
|
|
6441
|
+
return /* @__PURE__ */ jsx50(
|
|
6170
6442
|
Input,
|
|
6171
6443
|
__spreadValues({
|
|
6172
6444
|
"data-slot": "sidebar-input",
|
|
@@ -6177,7 +6449,7 @@ function SidebarInput(_a) {
|
|
|
6177
6449
|
}
|
|
6178
6450
|
function SidebarHeader(_a) {
|
|
6179
6451
|
var _b = _a, { className } = _b, props = __objRest(_b, ["className"]);
|
|
6180
|
-
return /* @__PURE__ */
|
|
6452
|
+
return /* @__PURE__ */ jsx50(
|
|
6181
6453
|
"div",
|
|
6182
6454
|
__spreadValues({
|
|
6183
6455
|
"data-slot": "sidebar-header",
|
|
@@ -6191,7 +6463,7 @@ function SidebarHeader(_a) {
|
|
|
6191
6463
|
}
|
|
6192
6464
|
function SidebarFooter(_a) {
|
|
6193
6465
|
var _b = _a, { className } = _b, props = __objRest(_b, ["className"]);
|
|
6194
|
-
return /* @__PURE__ */
|
|
6466
|
+
return /* @__PURE__ */ jsx50(
|
|
6195
6467
|
"div",
|
|
6196
6468
|
__spreadValues({
|
|
6197
6469
|
"data-slot": "sidebar-footer",
|
|
@@ -6209,7 +6481,7 @@ function SidebarSeparator(_a) {
|
|
|
6209
6481
|
} = _b, props = __objRest(_b, [
|
|
6210
6482
|
"className"
|
|
6211
6483
|
]);
|
|
6212
|
-
return /* @__PURE__ */
|
|
6484
|
+
return /* @__PURE__ */ jsx50(
|
|
6213
6485
|
Separator,
|
|
6214
6486
|
__spreadValues({
|
|
6215
6487
|
"data-slot": "sidebar-separator",
|
|
@@ -6220,7 +6492,7 @@ function SidebarSeparator(_a) {
|
|
|
6220
6492
|
}
|
|
6221
6493
|
function SidebarContent(_a) {
|
|
6222
6494
|
var _b = _a, { className } = _b, props = __objRest(_b, ["className"]);
|
|
6223
|
-
return /* @__PURE__ */
|
|
6495
|
+
return /* @__PURE__ */ jsx50(
|
|
6224
6496
|
"div",
|
|
6225
6497
|
__spreadValues({
|
|
6226
6498
|
"data-slot": "sidebar-content",
|
|
@@ -6234,7 +6506,7 @@ function SidebarContent(_a) {
|
|
|
6234
6506
|
}
|
|
6235
6507
|
function SidebarGroup(_a) {
|
|
6236
6508
|
var _b = _a, { className } = _b, props = __objRest(_b, ["className"]);
|
|
6237
|
-
return /* @__PURE__ */
|
|
6509
|
+
return /* @__PURE__ */ jsx50(
|
|
6238
6510
|
"div",
|
|
6239
6511
|
__spreadValues({
|
|
6240
6512
|
"data-slot": "sidebar-group",
|
|
@@ -6255,7 +6527,7 @@ function SidebarGroupLabel(_a) {
|
|
|
6255
6527
|
"asChild"
|
|
6256
6528
|
]);
|
|
6257
6529
|
const Comp = asChild ? Slot8.Root : "div";
|
|
6258
|
-
return /* @__PURE__ */
|
|
6530
|
+
return /* @__PURE__ */ jsx50(
|
|
6259
6531
|
Comp,
|
|
6260
6532
|
__spreadValues({
|
|
6261
6533
|
"data-slot": "sidebar-group-label",
|
|
@@ -6277,7 +6549,7 @@ function SidebarGroupAction(_a) {
|
|
|
6277
6549
|
"asChild"
|
|
6278
6550
|
]);
|
|
6279
6551
|
const Comp = asChild ? Slot8.Root : "button";
|
|
6280
|
-
return /* @__PURE__ */
|
|
6552
|
+
return /* @__PURE__ */ jsx50(
|
|
6281
6553
|
Comp,
|
|
6282
6554
|
__spreadValues({
|
|
6283
6555
|
"data-slot": "sidebar-group-action",
|
|
@@ -6298,7 +6570,7 @@ function SidebarGroupContent(_a) {
|
|
|
6298
6570
|
} = _b, props = __objRest(_b, [
|
|
6299
6571
|
"className"
|
|
6300
6572
|
]);
|
|
6301
|
-
return /* @__PURE__ */
|
|
6573
|
+
return /* @__PURE__ */ jsx50(
|
|
6302
6574
|
"div",
|
|
6303
6575
|
__spreadValues({
|
|
6304
6576
|
"data-slot": "sidebar-group-content",
|
|
@@ -6309,7 +6581,7 @@ function SidebarGroupContent(_a) {
|
|
|
6309
6581
|
}
|
|
6310
6582
|
function SidebarMenu(_a) {
|
|
6311
6583
|
var _b = _a, { className } = _b, props = __objRest(_b, ["className"]);
|
|
6312
|
-
return /* @__PURE__ */
|
|
6584
|
+
return /* @__PURE__ */ jsx50(
|
|
6313
6585
|
"ul",
|
|
6314
6586
|
__spreadValues({
|
|
6315
6587
|
"data-slot": "sidebar-menu",
|
|
@@ -6320,7 +6592,7 @@ function SidebarMenu(_a) {
|
|
|
6320
6592
|
}
|
|
6321
6593
|
function SidebarMenuItem(_a) {
|
|
6322
6594
|
var _b = _a, { className } = _b, props = __objRest(_b, ["className"]);
|
|
6323
|
-
return /* @__PURE__ */
|
|
6595
|
+
return /* @__PURE__ */ jsx50(
|
|
6324
6596
|
"li",
|
|
6325
6597
|
__spreadValues({
|
|
6326
6598
|
"data-slot": "sidebar-menu-item",
|
|
@@ -6367,7 +6639,7 @@ function SidebarMenuButton(_a) {
|
|
|
6367
6639
|
]);
|
|
6368
6640
|
const Comp = asChild ? Slot8.Root : "button";
|
|
6369
6641
|
const { isMobile, state } = useSidebar();
|
|
6370
|
-
const button = /* @__PURE__ */
|
|
6642
|
+
const button = /* @__PURE__ */ jsx50(
|
|
6371
6643
|
Comp,
|
|
6372
6644
|
__spreadValues({
|
|
6373
6645
|
"data-slot": "sidebar-menu-button",
|
|
@@ -6385,9 +6657,9 @@ function SidebarMenuButton(_a) {
|
|
|
6385
6657
|
children: tooltip
|
|
6386
6658
|
};
|
|
6387
6659
|
}
|
|
6388
|
-
return /* @__PURE__ */
|
|
6389
|
-
/* @__PURE__ */
|
|
6390
|
-
/* @__PURE__ */
|
|
6660
|
+
return /* @__PURE__ */ jsxs28(Tooltip, { children: [
|
|
6661
|
+
/* @__PURE__ */ jsx50(TooltipTrigger, { asChild: true, children: button }),
|
|
6662
|
+
/* @__PURE__ */ jsx50(
|
|
6391
6663
|
TooltipContent,
|
|
6392
6664
|
__spreadValues({
|
|
6393
6665
|
side: "right",
|
|
@@ -6408,7 +6680,7 @@ function SidebarMenuAction(_a) {
|
|
|
6408
6680
|
"showOnHover"
|
|
6409
6681
|
]);
|
|
6410
6682
|
const Comp = asChild ? Slot8.Root : "button";
|
|
6411
|
-
return /* @__PURE__ */
|
|
6683
|
+
return /* @__PURE__ */ jsx50(
|
|
6412
6684
|
Comp,
|
|
6413
6685
|
__spreadValues({
|
|
6414
6686
|
"data-slot": "sidebar-menu-action",
|
|
@@ -6433,7 +6705,7 @@ function SidebarMenuBadge(_a) {
|
|
|
6433
6705
|
} = _b, props = __objRest(_b, [
|
|
6434
6706
|
"className"
|
|
6435
6707
|
]);
|
|
6436
|
-
return /* @__PURE__ */
|
|
6708
|
+
return /* @__PURE__ */ jsx50(
|
|
6437
6709
|
"div",
|
|
6438
6710
|
__spreadValues({
|
|
6439
6711
|
"data-slot": "sidebar-menu-badge",
|
|
@@ -6459,7 +6731,7 @@ function SidebarMenuSkeleton(_a) {
|
|
|
6459
6731
|
"showIcon"
|
|
6460
6732
|
]);
|
|
6461
6733
|
const width = "70%";
|
|
6462
|
-
return /* @__PURE__ */
|
|
6734
|
+
return /* @__PURE__ */ jsxs28(
|
|
6463
6735
|
"div",
|
|
6464
6736
|
__spreadProps(__spreadValues({
|
|
6465
6737
|
"data-slot": "sidebar-menu-skeleton",
|
|
@@ -6467,14 +6739,14 @@ function SidebarMenuSkeleton(_a) {
|
|
|
6467
6739
|
className: cn("flex h-8 items-center gap-2 rounded-md px-2", className)
|
|
6468
6740
|
}, props), {
|
|
6469
6741
|
children: [
|
|
6470
|
-
showIcon && /* @__PURE__ */
|
|
6742
|
+
showIcon && /* @__PURE__ */ jsx50(
|
|
6471
6743
|
Skeleton,
|
|
6472
6744
|
{
|
|
6473
6745
|
className: "size-4 rounded-md",
|
|
6474
6746
|
"data-sidebar": "menu-skeleton-icon"
|
|
6475
6747
|
}
|
|
6476
6748
|
),
|
|
6477
|
-
/* @__PURE__ */
|
|
6749
|
+
/* @__PURE__ */ jsx50(
|
|
6478
6750
|
Skeleton,
|
|
6479
6751
|
{
|
|
6480
6752
|
className: "h-4 max-w-(--skeleton-width) flex-1",
|
|
@@ -6490,7 +6762,7 @@ function SidebarMenuSkeleton(_a) {
|
|
|
6490
6762
|
}
|
|
6491
6763
|
function SidebarMenuSub(_a) {
|
|
6492
6764
|
var _b = _a, { className } = _b, props = __objRest(_b, ["className"]);
|
|
6493
|
-
return /* @__PURE__ */
|
|
6765
|
+
return /* @__PURE__ */ jsx50(
|
|
6494
6766
|
"ul",
|
|
6495
6767
|
__spreadValues({
|
|
6496
6768
|
"data-slot": "sidebar-menu-sub",
|
|
@@ -6509,7 +6781,7 @@ function SidebarMenuSubItem(_a) {
|
|
|
6509
6781
|
} = _b, props = __objRest(_b, [
|
|
6510
6782
|
"className"
|
|
6511
6783
|
]);
|
|
6512
|
-
return /* @__PURE__ */
|
|
6784
|
+
return /* @__PURE__ */ jsx50(
|
|
6513
6785
|
"li",
|
|
6514
6786
|
__spreadValues({
|
|
6515
6787
|
"data-slot": "sidebar-menu-sub-item",
|
|
@@ -6531,7 +6803,7 @@ function SidebarMenuSubButton(_a) {
|
|
|
6531
6803
|
"className"
|
|
6532
6804
|
]);
|
|
6533
6805
|
const Comp = asChild ? Slot8.Root : "a";
|
|
6534
|
-
return /* @__PURE__ */
|
|
6806
|
+
return /* @__PURE__ */ jsx50(
|
|
6535
6807
|
Comp,
|
|
6536
6808
|
__spreadValues({
|
|
6537
6809
|
"data-slot": "sidebar-menu-sub-button",
|
|
@@ -6551,9 +6823,9 @@ function SidebarMenuSubButton(_a) {
|
|
|
6551
6823
|
}
|
|
6552
6824
|
|
|
6553
6825
|
// components/ui/slider.tsx
|
|
6554
|
-
import * as
|
|
6826
|
+
import * as React16 from "react";
|
|
6555
6827
|
import { Slider as SliderPrimitive } from "radix-ui";
|
|
6556
|
-
import { jsx as
|
|
6828
|
+
import { jsx as jsx51, jsxs as jsxs29 } from "react/jsx-runtime";
|
|
6557
6829
|
function Slider(_a) {
|
|
6558
6830
|
var _b = _a, {
|
|
6559
6831
|
className,
|
|
@@ -6568,11 +6840,11 @@ function Slider(_a) {
|
|
|
6568
6840
|
"min",
|
|
6569
6841
|
"max"
|
|
6570
6842
|
]);
|
|
6571
|
-
const _values =
|
|
6843
|
+
const _values = React16.useMemo(
|
|
6572
6844
|
() => Array.isArray(value) ? value : Array.isArray(defaultValue) ? defaultValue : [min, max],
|
|
6573
6845
|
[value, defaultValue, min, max]
|
|
6574
6846
|
);
|
|
6575
|
-
return /* @__PURE__ */
|
|
6847
|
+
return /* @__PURE__ */ jsxs29(
|
|
6576
6848
|
SliderPrimitive.Root,
|
|
6577
6849
|
__spreadProps(__spreadValues({
|
|
6578
6850
|
"data-slot": "slider",
|
|
@@ -6586,7 +6858,7 @@ function Slider(_a) {
|
|
|
6586
6858
|
)
|
|
6587
6859
|
}, props), {
|
|
6588
6860
|
children: [
|
|
6589
|
-
/* @__PURE__ */
|
|
6861
|
+
/* @__PURE__ */ jsx51(
|
|
6590
6862
|
SliderPrimitive.Track,
|
|
6591
6863
|
{
|
|
6592
6864
|
"data-slot": "slider-track",
|
|
@@ -6595,7 +6867,7 @@ function Slider(_a) {
|
|
|
6595
6867
|
// surface, solid brand fill.
|
|
6596
6868
|
"relative grow overflow-hidden rounded-full bg-background-secondary-surface data-[orientation=horizontal]:h-2 data-[orientation=horizontal]:w-full data-[orientation=vertical]:h-full data-[orientation=vertical]:w-2"
|
|
6597
6869
|
),
|
|
6598
|
-
children: /* @__PURE__ */
|
|
6870
|
+
children: /* @__PURE__ */ jsx51(
|
|
6599
6871
|
SliderPrimitive.Range,
|
|
6600
6872
|
{
|
|
6601
6873
|
"data-slot": "slider-range",
|
|
@@ -6606,7 +6878,7 @@ function Slider(_a) {
|
|
|
6606
6878
|
)
|
|
6607
6879
|
}
|
|
6608
6880
|
),
|
|
6609
|
-
Array.from({ length: _values.length }, (_, index) => /* @__PURE__ */
|
|
6881
|
+
Array.from({ length: _values.length }, (_, index) => /* @__PURE__ */ jsx51(
|
|
6610
6882
|
SliderPrimitive.Thumb,
|
|
6611
6883
|
{
|
|
6612
6884
|
"data-slot": "slider-thumb",
|
|
@@ -6620,7 +6892,7 @@ function Slider(_a) {
|
|
|
6620
6892
|
}
|
|
6621
6893
|
|
|
6622
6894
|
// components/ui/toast.tsx
|
|
6623
|
-
import * as
|
|
6895
|
+
import * as React17 from "react";
|
|
6624
6896
|
import {
|
|
6625
6897
|
CircleCheckIcon,
|
|
6626
6898
|
InfoIcon,
|
|
@@ -6628,27 +6900,25 @@ import {
|
|
|
6628
6900
|
OctagonXIcon,
|
|
6629
6901
|
TriangleAlertIcon
|
|
6630
6902
|
} from "lucide-react";
|
|
6631
|
-
import { useTheme } from "next-themes";
|
|
6632
6903
|
import { Toaster as Sonner, toast } from "sonner";
|
|
6633
|
-
import { jsx as
|
|
6904
|
+
import { jsx as jsx52, jsxs as jsxs30 } from "react/jsx-runtime";
|
|
6634
6905
|
var Toaster = (_a) => {
|
|
6635
6906
|
var props = __objRest(_a, []);
|
|
6636
|
-
const { theme = "system" } = useTheme();
|
|
6637
6907
|
const isMobile = useIsMobile();
|
|
6638
|
-
return /* @__PURE__ */
|
|
6908
|
+
return /* @__PURE__ */ jsx52(
|
|
6639
6909
|
Sonner,
|
|
6640
6910
|
__spreadValues({
|
|
6641
|
-
theme,
|
|
6911
|
+
theme: "system",
|
|
6642
6912
|
className: "toaster group",
|
|
6643
6913
|
position: isMobile ? "top-center" : "bottom-right",
|
|
6644
6914
|
visibleToasts: isMobile ? 1 : 3,
|
|
6645
6915
|
duration: 4e3,
|
|
6646
6916
|
icons: {
|
|
6647
|
-
success: /* @__PURE__ */
|
|
6648
|
-
info: /* @__PURE__ */
|
|
6649
|
-
warning: /* @__PURE__ */
|
|
6650
|
-
error: /* @__PURE__ */
|
|
6651
|
-
loading: /* @__PURE__ */
|
|
6917
|
+
success: /* @__PURE__ */ jsx52(CircleCheckIcon, { className: "size-4" }),
|
|
6918
|
+
info: /* @__PURE__ */ jsx52(InfoIcon, { className: "size-4" }),
|
|
6919
|
+
warning: /* @__PURE__ */ jsx52(TriangleAlertIcon, { className: "size-4" }),
|
|
6920
|
+
error: /* @__PURE__ */ jsx52(OctagonXIcon, { className: "size-4" }),
|
|
6921
|
+
loading: /* @__PURE__ */ jsx52(Loader2Icon, { className: "size-4 animate-spin" })
|
|
6652
6922
|
},
|
|
6653
6923
|
toastOptions: {
|
|
6654
6924
|
classNames: {
|
|
@@ -6698,30 +6968,30 @@ function ResultSnackbar(_a) {
|
|
|
6698
6968
|
"className"
|
|
6699
6969
|
]);
|
|
6700
6970
|
const isWin = outcome === "win";
|
|
6701
|
-
const [leaving, setLeaving] =
|
|
6971
|
+
const [leaving, setLeaving] = React17.useState(false);
|
|
6702
6972
|
const reduced = usePrefersReducedMotion();
|
|
6703
|
-
const onDismissRef =
|
|
6704
|
-
|
|
6973
|
+
const onDismissRef = React17.useRef(onDismiss);
|
|
6974
|
+
React17.useEffect(() => {
|
|
6705
6975
|
onDismissRef.current = onDismiss;
|
|
6706
6976
|
}, [onDismiss]);
|
|
6707
|
-
const firedRef =
|
|
6708
|
-
const finish =
|
|
6977
|
+
const firedRef = React17.useRef(false);
|
|
6978
|
+
const finish = React17.useCallback(() => {
|
|
6709
6979
|
var _a2;
|
|
6710
6980
|
if (firedRef.current) return;
|
|
6711
6981
|
firedRef.current = true;
|
|
6712
6982
|
(_a2 = onDismissRef.current) == null ? void 0 : _a2.call(onDismissRef);
|
|
6713
6983
|
}, []);
|
|
6714
|
-
|
|
6984
|
+
React17.useEffect(() => {
|
|
6715
6985
|
const leave = window.setTimeout(() => setLeaving(true), durationMs);
|
|
6716
6986
|
return () => window.clearTimeout(leave);
|
|
6717
6987
|
}, [durationMs]);
|
|
6718
|
-
|
|
6988
|
+
React17.useEffect(() => {
|
|
6719
6989
|
if (!leaving) return;
|
|
6720
6990
|
const done = window.setTimeout(finish, reduced ? 0 : RESULT_SNACKBAR_EXIT_MS);
|
|
6721
6991
|
return () => window.clearTimeout(done);
|
|
6722
6992
|
}, [leaving, finish, reduced]);
|
|
6723
|
-
const [display, setDisplay] =
|
|
6724
|
-
|
|
6993
|
+
const [display, setDisplay] = React17.useState(null);
|
|
6994
|
+
React17.useEffect(() => {
|
|
6725
6995
|
if (amountValue === void 0 || reduced || !Number.isFinite(amountValue)) {
|
|
6726
6996
|
setDisplay(null);
|
|
6727
6997
|
return;
|
|
@@ -6746,7 +7016,7 @@ function ResultSnackbar(_a) {
|
|
|
6746
7016
|
const spoken = announcement != null ? announcement : `${isWin ? "Won" : "Lost"} ${amount} ${currency}. ${contractLabel}, ${duration}.`;
|
|
6747
7017
|
const enterOut = leaving ? "out" : "in";
|
|
6748
7018
|
const motionName = `result-snackbar-${enterOut}-${placement}`;
|
|
6749
|
-
return /* @__PURE__ */
|
|
7019
|
+
return /* @__PURE__ */ jsxs30(
|
|
6750
7020
|
"div",
|
|
6751
7021
|
__spreadProps(__spreadValues({
|
|
6752
7022
|
role: "status",
|
|
@@ -6770,8 +7040,8 @@ function ResultSnackbar(_a) {
|
|
|
6770
7040
|
}
|
|
6771
7041
|
}, props), {
|
|
6772
7042
|
children: [
|
|
6773
|
-
/* @__PURE__ */
|
|
6774
|
-
icon ? /* @__PURE__ */
|
|
7043
|
+
/* @__PURE__ */ jsx52("span", { className: "sr-only", children: spoken }),
|
|
7044
|
+
icon ? /* @__PURE__ */ jsx52(
|
|
6775
7045
|
"span",
|
|
6776
7046
|
{
|
|
6777
7047
|
"data-slot": "result-snackbar-icon",
|
|
@@ -6782,8 +7052,8 @@ function ResultSnackbar(_a) {
|
|
|
6782
7052
|
children: icon
|
|
6783
7053
|
}
|
|
6784
7054
|
) : null,
|
|
6785
|
-
/* @__PURE__ */
|
|
6786
|
-
/* @__PURE__ */
|
|
7055
|
+
/* @__PURE__ */ jsxs30("span", { "aria-hidden": true, className: "flex min-w-max flex-col gap-0.5", children: [
|
|
7056
|
+
/* @__PURE__ */ jsxs30(
|
|
6787
7057
|
"span",
|
|
6788
7058
|
{
|
|
6789
7059
|
className: cn(
|
|
@@ -6793,17 +7063,17 @@ function ResultSnackbar(_a) {
|
|
|
6793
7063
|
children: [
|
|
6794
7064
|
display != null ? display : amount,
|
|
6795
7065
|
" ",
|
|
6796
|
-
/* @__PURE__ */
|
|
7066
|
+
/* @__PURE__ */ jsx52("span", { className: "type-result-snackbar-currency", children: currency })
|
|
6797
7067
|
]
|
|
6798
7068
|
}
|
|
6799
7069
|
),
|
|
6800
|
-
/* @__PURE__ */
|
|
7070
|
+
/* @__PURE__ */ jsxs30("span", { className: "type-result-snackbar-terms min-w-max text-text-subtle-default", children: [
|
|
6801
7071
|
contractLabel,
|
|
6802
7072
|
" \xB7 ",
|
|
6803
7073
|
duration
|
|
6804
7074
|
] })
|
|
6805
7075
|
] }),
|
|
6806
|
-
/* @__PURE__ */
|
|
7076
|
+
/* @__PURE__ */ jsx52(
|
|
6807
7077
|
"span",
|
|
6808
7078
|
{
|
|
6809
7079
|
"aria-hidden": true,
|
|
@@ -6822,8 +7092,8 @@ function ResultSnackbar(_a) {
|
|
|
6822
7092
|
);
|
|
6823
7093
|
}
|
|
6824
7094
|
function usePrefersReducedMotion() {
|
|
6825
|
-
const [reduced, setReduced] =
|
|
6826
|
-
|
|
7095
|
+
const [reduced, setReduced] = React17.useState(false);
|
|
7096
|
+
React17.useEffect(() => {
|
|
6827
7097
|
const query = window.matchMedia("(prefers-reduced-motion: reduce)");
|
|
6828
7098
|
setReduced(query.matches);
|
|
6829
7099
|
const onChange = (event) => setReduced(event.matches);
|
|
@@ -6834,9 +7104,9 @@ function usePrefersReducedMotion() {
|
|
|
6834
7104
|
}
|
|
6835
7105
|
|
|
6836
7106
|
// components/ui/slide-to-confirm.tsx
|
|
6837
|
-
import * as
|
|
7107
|
+
import * as React18 from "react";
|
|
6838
7108
|
import { ArrowRight as ArrowRight2, Check } from "lucide-react";
|
|
6839
|
-
import { jsx as
|
|
7109
|
+
import { jsx as jsx53, jsxs as jsxs31 } from "react/jsx-runtime";
|
|
6840
7110
|
var CONFIRM_AT = 0.9;
|
|
6841
7111
|
var HANDLE = 46;
|
|
6842
7112
|
var INSET2 = 5;
|
|
@@ -6856,21 +7126,21 @@ function SlideToConfirm(_a) {
|
|
|
6856
7126
|
"confirmed",
|
|
6857
7127
|
"className"
|
|
6858
7128
|
]);
|
|
6859
|
-
const trackRef =
|
|
6860
|
-
const [dragX, setDragX] =
|
|
6861
|
-
const [dragging, setDragging] =
|
|
6862
|
-
const [trackWidth, setTrackWidth] =
|
|
6863
|
-
const [internalConfirmed, setInternalConfirmed] =
|
|
7129
|
+
const trackRef = React18.useRef(null);
|
|
7130
|
+
const [dragX, setDragX] = React18.useState(0);
|
|
7131
|
+
const [dragging, setDragging] = React18.useState(false);
|
|
7132
|
+
const [trackWidth, setTrackWidth] = React18.useState(0);
|
|
7133
|
+
const [internalConfirmed, setInternalConfirmed] = React18.useState(false);
|
|
6864
7134
|
const confirmed = controlledConfirmed != null ? controlledConfirmed : internalConfirmed;
|
|
6865
|
-
const firedRef =
|
|
6866
|
-
|
|
7135
|
+
const firedRef = React18.useRef(false);
|
|
7136
|
+
React18.useEffect(() => {
|
|
6867
7137
|
if (controlledConfirmed === false) {
|
|
6868
7138
|
setInternalConfirmed(false);
|
|
6869
7139
|
setDragX(0);
|
|
6870
7140
|
firedRef.current = false;
|
|
6871
7141
|
}
|
|
6872
7142
|
}, [controlledConfirmed]);
|
|
6873
|
-
|
|
7143
|
+
React18.useEffect(() => {
|
|
6874
7144
|
const track = trackRef.current;
|
|
6875
7145
|
if (!track) return;
|
|
6876
7146
|
const ro = new ResizeObserver(() => setTrackWidth(track.clientWidth));
|
|
@@ -6919,7 +7189,7 @@ function SlideToConfirm(_a) {
|
|
|
6919
7189
|
const fillWidth = dragX === 0 ? 0 : dragX + HANDLE;
|
|
6920
7190
|
const revealWidth = INSET2 + dragX + HANDLE / 2;
|
|
6921
7191
|
const spring = "duration-slow ease-(--primitive-ease-spring)";
|
|
6922
|
-
return /* @__PURE__ */
|
|
7192
|
+
return /* @__PURE__ */ jsxs31(
|
|
6923
7193
|
"div",
|
|
6924
7194
|
__spreadProps(__spreadValues({
|
|
6925
7195
|
ref: trackRef,
|
|
@@ -6938,8 +7208,8 @@ function SlideToConfirm(_a) {
|
|
|
6938
7208
|
)
|
|
6939
7209
|
}, props), {
|
|
6940
7210
|
children: [
|
|
6941
|
-
/* @__PURE__ */
|
|
6942
|
-
/* @__PURE__ */
|
|
7211
|
+
/* @__PURE__ */ jsx53("span", { className: "absolute inset-0 grid place-items-center", children: /* @__PURE__ */ jsx53("span", { className: "type-slide-to-confirm text-text-subtle-default", children: label }) }),
|
|
7212
|
+
/* @__PURE__ */ jsx53(
|
|
6943
7213
|
"span",
|
|
6944
7214
|
{
|
|
6945
7215
|
"aria-hidden": true,
|
|
@@ -6957,7 +7227,7 @@ function SlideToConfirm(_a) {
|
|
|
6957
7227
|
}
|
|
6958
7228
|
}
|
|
6959
7229
|
),
|
|
6960
|
-
/* @__PURE__ */
|
|
7230
|
+
/* @__PURE__ */ jsx53(
|
|
6961
7231
|
"span",
|
|
6962
7232
|
{
|
|
6963
7233
|
"aria-hidden": true,
|
|
@@ -6969,10 +7239,10 @@ function SlideToConfirm(_a) {
|
|
|
6969
7239
|
style: {
|
|
6970
7240
|
clipPath: confirmed ? "inset(0 round 9999px)" : `inset(0 calc(100% - ${revealWidth}px) 0 0 round 9999px)`
|
|
6971
7241
|
},
|
|
6972
|
-
children: /* @__PURE__ */
|
|
7242
|
+
children: /* @__PURE__ */ jsx53("span", { className: "type-slide-to-confirm flex items-center gap-2 text-text-on-brand-static", children: confirmed ? confirmedLabel : label })
|
|
6973
7243
|
}
|
|
6974
7244
|
),
|
|
6975
|
-
/* @__PURE__ */
|
|
7245
|
+
/* @__PURE__ */ jsx53(
|
|
6976
7246
|
"span",
|
|
6977
7247
|
{
|
|
6978
7248
|
"data-slot": "slide-to-confirm-handle",
|
|
@@ -7001,7 +7271,7 @@ function SlideToConfirm(_a) {
|
|
|
7001
7271
|
// the keyboard, where dragX never moved.
|
|
7002
7272
|
translate: `${confirmed ? maxTravel : dragX}px -50%`
|
|
7003
7273
|
},
|
|
7004
|
-
children: confirmed ? /* @__PURE__ */
|
|
7274
|
+
children: confirmed ? /* @__PURE__ */ jsx53(Check, { className: "size-4.5 [animation:slide-confirm-pop_var(--motion-pop)_var(--primitive-ease-overshoot)]" }) : /* @__PURE__ */ jsx53(ArrowRight2, { className: "size-4.5" })
|
|
7005
7275
|
}
|
|
7006
7276
|
)
|
|
7007
7277
|
]
|
|
@@ -7010,10 +7280,10 @@ function SlideToConfirm(_a) {
|
|
|
7010
7280
|
}
|
|
7011
7281
|
|
|
7012
7282
|
// components/ui/stepper.tsx
|
|
7013
|
-
import * as
|
|
7283
|
+
import * as React19 from "react";
|
|
7014
7284
|
import { Minus, Plus } from "lucide-react";
|
|
7015
|
-
import { jsx as
|
|
7016
|
-
function
|
|
7285
|
+
import { jsx as jsx54, jsxs as jsxs32 } from "react/jsx-runtime";
|
|
7286
|
+
function clamp2(value, min, max) {
|
|
7017
7287
|
return Math.min(Math.max(value, min), max);
|
|
7018
7288
|
}
|
|
7019
7289
|
function getDecimalPlaces(n) {
|
|
@@ -7040,16 +7310,16 @@ function Stepper({
|
|
|
7040
7310
|
"aria-label": ariaLabel
|
|
7041
7311
|
}) {
|
|
7042
7312
|
const isControlled = controlledValue !== void 0;
|
|
7043
|
-
const [internalValue, setInternalValue] =
|
|
7044
|
-
|
|
7313
|
+
const [internalValue, setInternalValue] = React19.useState(
|
|
7314
|
+
clamp2(defaultValue, min, max)
|
|
7045
7315
|
);
|
|
7046
7316
|
const currentValue = isControlled ? controlledValue : internalValue;
|
|
7047
7317
|
const decimalPlaces = getDecimalPlaces(step);
|
|
7048
|
-
const [displayString, setDisplayString] =
|
|
7318
|
+
const [displayString, setDisplayString] = React19.useState(
|
|
7049
7319
|
formatValue(currentValue, decimalPlaces)
|
|
7050
7320
|
);
|
|
7051
|
-
const [isFocused, setIsFocused] =
|
|
7052
|
-
|
|
7321
|
+
const [isFocused, setIsFocused] = React19.useState(false);
|
|
7322
|
+
React19.useEffect(() => {
|
|
7053
7323
|
if (!isFocused) {
|
|
7054
7324
|
setDisplayString(formatValue(currentValue, decimalPlaces));
|
|
7055
7325
|
}
|
|
@@ -7062,7 +7332,7 @@ function Stepper({
|
|
|
7062
7332
|
committed = max;
|
|
7063
7333
|
} else {
|
|
7064
7334
|
const rounded = decimalPlaces > 0 ? parseFloat(next.toFixed(decimalPlaces)) : Math.round(next);
|
|
7065
|
-
committed =
|
|
7335
|
+
committed = clamp2(rounded, min, max);
|
|
7066
7336
|
}
|
|
7067
7337
|
if (!isControlled) setInternalValue(committed);
|
|
7068
7338
|
setDisplayString(formatValue(committed, decimalPlaces));
|
|
@@ -7106,7 +7376,7 @@ function Stepper({
|
|
|
7106
7376
|
}
|
|
7107
7377
|
}
|
|
7108
7378
|
}
|
|
7109
|
-
return /* @__PURE__ */
|
|
7379
|
+
return /* @__PURE__ */ jsxs32(
|
|
7110
7380
|
"div",
|
|
7111
7381
|
{
|
|
7112
7382
|
"data-slot": "stepper",
|
|
@@ -7125,7 +7395,7 @@ function Stepper({
|
|
|
7125
7395
|
className
|
|
7126
7396
|
),
|
|
7127
7397
|
children: [
|
|
7128
|
-
label != null && /* @__PURE__ */
|
|
7398
|
+
label != null && /* @__PURE__ */ jsx54(
|
|
7129
7399
|
"span",
|
|
7130
7400
|
{
|
|
7131
7401
|
"data-slot": "stepper-label",
|
|
@@ -7136,13 +7406,13 @@ function Stepper({
|
|
|
7136
7406
|
children: label
|
|
7137
7407
|
}
|
|
7138
7408
|
),
|
|
7139
|
-
/* @__PURE__ */
|
|
7409
|
+
/* @__PURE__ */ jsxs32(
|
|
7140
7410
|
"div",
|
|
7141
7411
|
{
|
|
7142
7412
|
"data-slot": "stepper-row",
|
|
7143
7413
|
className: "flex w-full items-center justify-between gap-4",
|
|
7144
7414
|
children: [
|
|
7145
|
-
/* @__PURE__ */
|
|
7415
|
+
/* @__PURE__ */ jsx54(
|
|
7146
7416
|
Button,
|
|
7147
7417
|
{
|
|
7148
7418
|
type: "button",
|
|
@@ -7151,10 +7421,10 @@ function Stepper({
|
|
|
7151
7421
|
onClick: handleDecrement,
|
|
7152
7422
|
disabled: disabled || currentValue <= min,
|
|
7153
7423
|
"aria-label": "Decrease value",
|
|
7154
|
-
children: /* @__PURE__ */
|
|
7424
|
+
children: /* @__PURE__ */ jsx54(Minus, {})
|
|
7155
7425
|
}
|
|
7156
7426
|
),
|
|
7157
|
-
/* @__PURE__ */
|
|
7427
|
+
/* @__PURE__ */ jsx54(
|
|
7158
7428
|
"input",
|
|
7159
7429
|
{
|
|
7160
7430
|
type: "text",
|
|
@@ -7178,7 +7448,7 @@ function Stepper({
|
|
|
7178
7448
|
className: "type-stepper-stake-amount min-w-0 flex-1 border-0 bg-transparent text-center text-text-prominent-default outline-none disabled:text-text-disabled-default [appearance:textfield] [&::-webkit-inner-spin-button]:appearance-none [&::-webkit-outer-spin-button]:appearance-none"
|
|
7179
7449
|
}
|
|
7180
7450
|
),
|
|
7181
|
-
/* @__PURE__ */
|
|
7451
|
+
/* @__PURE__ */ jsx54(
|
|
7182
7452
|
Button,
|
|
7183
7453
|
{
|
|
7184
7454
|
type: "button",
|
|
@@ -7187,7 +7457,7 @@ function Stepper({
|
|
|
7187
7457
|
onClick: handleIncrement,
|
|
7188
7458
|
disabled: disabled || currentValue >= max,
|
|
7189
7459
|
"aria-label": "Increase value",
|
|
7190
|
-
children: /* @__PURE__ */
|
|
7460
|
+
children: /* @__PURE__ */ jsx54(Plus, {})
|
|
7191
7461
|
}
|
|
7192
7462
|
)
|
|
7193
7463
|
]
|
|
@@ -7199,10 +7469,10 @@ function Stepper({
|
|
|
7199
7469
|
}
|
|
7200
7470
|
|
|
7201
7471
|
// components/ui/steps.tsx
|
|
7202
|
-
import * as
|
|
7472
|
+
import * as React20 from "react";
|
|
7203
7473
|
import { Check as Check2 } from "lucide-react";
|
|
7204
|
-
import { jsx as
|
|
7205
|
-
var StepsContext =
|
|
7474
|
+
import { jsx as jsx55, jsxs as jsxs33 } from "react/jsx-runtime";
|
|
7475
|
+
var StepsContext = React20.createContext({ shape: "circle", orientation: "horizontal", size: "md" });
|
|
7206
7476
|
function Steps(_a) {
|
|
7207
7477
|
var _b = _a, {
|
|
7208
7478
|
shape = "circle",
|
|
@@ -7217,8 +7487,8 @@ function Steps(_a) {
|
|
|
7217
7487
|
"className",
|
|
7218
7488
|
"children"
|
|
7219
7489
|
]);
|
|
7220
|
-
const steps =
|
|
7221
|
-
return /* @__PURE__ */
|
|
7490
|
+
const steps = React20.Children.toArray(children);
|
|
7491
|
+
return /* @__PURE__ */ jsx55(StepsContext.Provider, { value: { shape, orientation, size }, children: /* @__PURE__ */ jsx55(
|
|
7222
7492
|
"ol",
|
|
7223
7493
|
__spreadProps(__spreadValues({
|
|
7224
7494
|
"data-slot": "steps",
|
|
@@ -7232,7 +7502,7 @@ function Steps(_a) {
|
|
|
7232
7502
|
)
|
|
7233
7503
|
}, props), {
|
|
7234
7504
|
children: steps.map(
|
|
7235
|
-
(child, index) =>
|
|
7505
|
+
(child, index) => React20.isValidElement(child) ? React20.cloneElement(child, {
|
|
7236
7506
|
index: index + 1,
|
|
7237
7507
|
isFirst: index === 0,
|
|
7238
7508
|
isLast: index === steps.length - 1
|
|
@@ -7263,10 +7533,10 @@ function Step(_a) {
|
|
|
7263
7533
|
"isLast",
|
|
7264
7534
|
"className"
|
|
7265
7535
|
]);
|
|
7266
|
-
const { shape, orientation, size } =
|
|
7536
|
+
const { shape, orientation, size } = React20.useContext(StepsContext);
|
|
7267
7537
|
const horizontal = orientation === "horizontal";
|
|
7268
7538
|
const sm = size === "sm";
|
|
7269
|
-
const indicator = /* @__PURE__ */
|
|
7539
|
+
const indicator = /* @__PURE__ */ jsx55(
|
|
7270
7540
|
"span",
|
|
7271
7541
|
{
|
|
7272
7542
|
"data-slot": "step-indicator",
|
|
@@ -7280,11 +7550,11 @@ function Step(_a) {
|
|
|
7280
7550
|
"[&_svg]:pointer-events-none [&_svg]:shrink-0",
|
|
7281
7551
|
sm ? "[&_svg:not([class*='size-'])]:size-3.5" : "[&_svg:not([class*='size-'])]:size-4"
|
|
7282
7552
|
),
|
|
7283
|
-
children: state === "done" ? /* @__PURE__ */
|
|
7553
|
+
children: state === "done" ? /* @__PURE__ */ jsx55(Check2, {}) : icon != null ? icon : index
|
|
7284
7554
|
}
|
|
7285
7555
|
);
|
|
7286
7556
|
if (horizontal) {
|
|
7287
|
-
return /* @__PURE__ */
|
|
7557
|
+
return /* @__PURE__ */ jsxs33(
|
|
7288
7558
|
"li",
|
|
7289
7559
|
__spreadProps(__spreadValues({
|
|
7290
7560
|
"data-slot": "step",
|
|
@@ -7293,8 +7563,8 @@ function Step(_a) {
|
|
|
7293
7563
|
className: cn("flex min-w-0 flex-1 flex-col items-center", className)
|
|
7294
7564
|
}, props), {
|
|
7295
7565
|
children: [
|
|
7296
|
-
/* @__PURE__ */
|
|
7297
|
-
/* @__PURE__ */
|
|
7566
|
+
/* @__PURE__ */ jsxs33("div", { className: "flex w-full items-center", children: [
|
|
7567
|
+
/* @__PURE__ */ jsx55(
|
|
7298
7568
|
"span",
|
|
7299
7569
|
{
|
|
7300
7570
|
"aria-hidden": true,
|
|
@@ -7302,10 +7572,10 @@ function Step(_a) {
|
|
|
7302
7572
|
className: cn("h-px flex-1", !isFirst && "bg-border-neutral-default")
|
|
7303
7573
|
}
|
|
7304
7574
|
),
|
|
7305
|
-
/* @__PURE__ */
|
|
7575
|
+
/* @__PURE__ */ jsx55("span", { className: cn(!isFirst && "w-1", "shrink-0") }),
|
|
7306
7576
|
indicator,
|
|
7307
|
-
/* @__PURE__ */
|
|
7308
|
-
/* @__PURE__ */
|
|
7577
|
+
/* @__PURE__ */ jsx55("span", { className: cn(!isLast && "w-1", "shrink-0") }),
|
|
7578
|
+
/* @__PURE__ */ jsx55(
|
|
7309
7579
|
"span",
|
|
7310
7580
|
{
|
|
7311
7581
|
"aria-hidden": true,
|
|
@@ -7314,7 +7584,7 @@ function Step(_a) {
|
|
|
7314
7584
|
}
|
|
7315
7585
|
)
|
|
7316
7586
|
] }),
|
|
7317
|
-
(title != null || description != null) && /* @__PURE__ */
|
|
7587
|
+
(title != null || description != null) && /* @__PURE__ */ jsxs33(
|
|
7318
7588
|
"div",
|
|
7319
7589
|
{
|
|
7320
7590
|
"data-slot": "step-body",
|
|
@@ -7323,7 +7593,7 @@ function Step(_a) {
|
|
|
7323
7593
|
sm ? "mt-1" : "mt-1.5"
|
|
7324
7594
|
),
|
|
7325
7595
|
children: [
|
|
7326
|
-
title != null && /* @__PURE__ */
|
|
7596
|
+
title != null && /* @__PURE__ */ jsx55(
|
|
7327
7597
|
"span",
|
|
7328
7598
|
{
|
|
7329
7599
|
className: cn(
|
|
@@ -7333,8 +7603,8 @@ function Step(_a) {
|
|
|
7333
7603
|
children: title
|
|
7334
7604
|
}
|
|
7335
7605
|
),
|
|
7336
|
-
tag != null && /* @__PURE__ */
|
|
7337
|
-
description != null && /* @__PURE__ */
|
|
7606
|
+
tag != null && /* @__PURE__ */ jsx55("span", { className: "type-steps-tag whitespace-nowrap text-text-brand-selected", children: tag }),
|
|
7607
|
+
description != null && /* @__PURE__ */ jsx55("span", { className: "type-steps-description text-text-subtle-default", children: description })
|
|
7338
7608
|
]
|
|
7339
7609
|
}
|
|
7340
7610
|
)
|
|
@@ -7343,7 +7613,7 @@ function Step(_a) {
|
|
|
7343
7613
|
);
|
|
7344
7614
|
}
|
|
7345
7615
|
const hasBody = title != null || description != null;
|
|
7346
|
-
return /* @__PURE__ */
|
|
7616
|
+
return /* @__PURE__ */ jsxs33(
|
|
7347
7617
|
"li",
|
|
7348
7618
|
__spreadProps(__spreadValues({
|
|
7349
7619
|
"data-slot": "step",
|
|
@@ -7360,9 +7630,9 @@ function Step(_a) {
|
|
|
7360
7630
|
)
|
|
7361
7631
|
}, props), {
|
|
7362
7632
|
children: [
|
|
7363
|
-
/* @__PURE__ */
|
|
7633
|
+
/* @__PURE__ */ jsxs33("div", { className: "flex flex-col items-center self-stretch", children: [
|
|
7364
7634
|
indicator,
|
|
7365
|
-
!isLast && /* @__PURE__ */
|
|
7635
|
+
!isLast && /* @__PURE__ */ jsx55(
|
|
7366
7636
|
"span",
|
|
7367
7637
|
{
|
|
7368
7638
|
"aria-hidden": true,
|
|
@@ -7371,13 +7641,13 @@ function Step(_a) {
|
|
|
7371
7641
|
}
|
|
7372
7642
|
)
|
|
7373
7643
|
] }),
|
|
7374
|
-
/* @__PURE__ */
|
|
7644
|
+
/* @__PURE__ */ jsxs33(
|
|
7375
7645
|
"div",
|
|
7376
7646
|
{
|
|
7377
7647
|
"data-slot": "step-body",
|
|
7378
7648
|
className: cn("flex min-w-0 flex-col", !isLast && (sm ? "pb-4" : "pb-6")),
|
|
7379
7649
|
children: [
|
|
7380
|
-
title != null && /* @__PURE__ */
|
|
7650
|
+
title != null && /* @__PURE__ */ jsxs33(
|
|
7381
7651
|
"span",
|
|
7382
7652
|
{
|
|
7383
7653
|
className: cn(
|
|
@@ -7386,12 +7656,12 @@ function Step(_a) {
|
|
|
7386
7656
|
),
|
|
7387
7657
|
children: [
|
|
7388
7658
|
title,
|
|
7389
|
-
tag != null && /* @__PURE__ */
|
|
7659
|
+
tag != null && /* @__PURE__ */ jsx55("span", { className: "type-steps-tag ml-2 whitespace-nowrap text-text-brand-selected", children: tag })
|
|
7390
7660
|
]
|
|
7391
7661
|
}
|
|
7392
7662
|
),
|
|
7393
|
-
description != null && /* @__PURE__ */
|
|
7394
|
-
!hasBody && /* @__PURE__ */
|
|
7663
|
+
description != null && /* @__PURE__ */ jsx55("span", { className: "type-steps-description text-text-subtle-default", children: description }),
|
|
7664
|
+
!hasBody && /* @__PURE__ */ jsxs33("span", { className: "sr-only", children: [
|
|
7395
7665
|
"Step ",
|
|
7396
7666
|
index
|
|
7397
7667
|
] })
|
|
@@ -7405,7 +7675,7 @@ function Step(_a) {
|
|
|
7405
7675
|
|
|
7406
7676
|
// components/ui/switch.tsx
|
|
7407
7677
|
import { Switch as SwitchPrimitive } from "radix-ui";
|
|
7408
|
-
import { jsx as
|
|
7678
|
+
import { jsx as jsx56 } from "react/jsx-runtime";
|
|
7409
7679
|
function Switch(_a) {
|
|
7410
7680
|
var _b = _a, {
|
|
7411
7681
|
className,
|
|
@@ -7414,7 +7684,7 @@ function Switch(_a) {
|
|
|
7414
7684
|
"className",
|
|
7415
7685
|
"size"
|
|
7416
7686
|
]);
|
|
7417
|
-
return /* @__PURE__ */
|
|
7687
|
+
return /* @__PURE__ */ jsx56(
|
|
7418
7688
|
SwitchPrimitive.Root,
|
|
7419
7689
|
__spreadProps(__spreadValues({
|
|
7420
7690
|
"data-slot": "switch",
|
|
@@ -7424,7 +7694,7 @@ function Switch(_a) {
|
|
|
7424
7694
|
className
|
|
7425
7695
|
)
|
|
7426
7696
|
}, props), {
|
|
7427
|
-
children: /* @__PURE__ */
|
|
7697
|
+
children: /* @__PURE__ */ jsx56(
|
|
7428
7698
|
SwitchPrimitive.Thumb,
|
|
7429
7699
|
{
|
|
7430
7700
|
"data-slot": "switch-thumb",
|
|
@@ -7438,15 +7708,15 @@ function Switch(_a) {
|
|
|
7438
7708
|
}
|
|
7439
7709
|
|
|
7440
7710
|
// components/ui/table.tsx
|
|
7441
|
-
import { jsx as
|
|
7711
|
+
import { jsx as jsx57 } from "react/jsx-runtime";
|
|
7442
7712
|
function Table(_a) {
|
|
7443
7713
|
var _b = _a, { className } = _b, props = __objRest(_b, ["className"]);
|
|
7444
|
-
return /* @__PURE__ */
|
|
7714
|
+
return /* @__PURE__ */ jsx57(
|
|
7445
7715
|
"div",
|
|
7446
7716
|
{
|
|
7447
7717
|
"data-slot": "table-container",
|
|
7448
7718
|
className: "relative w-full overflow-x-auto",
|
|
7449
|
-
children: /* @__PURE__ */
|
|
7719
|
+
children: /* @__PURE__ */ jsx57(
|
|
7450
7720
|
"table",
|
|
7451
7721
|
__spreadValues({
|
|
7452
7722
|
"data-slot": "table",
|
|
@@ -7458,7 +7728,7 @@ function Table(_a) {
|
|
|
7458
7728
|
}
|
|
7459
7729
|
function TableHeader(_a) {
|
|
7460
7730
|
var _b = _a, { className } = _b, props = __objRest(_b, ["className"]);
|
|
7461
|
-
return /* @__PURE__ */
|
|
7731
|
+
return /* @__PURE__ */ jsx57(
|
|
7462
7732
|
"thead",
|
|
7463
7733
|
__spreadValues({
|
|
7464
7734
|
"data-slot": "table-header",
|
|
@@ -7468,7 +7738,7 @@ function TableHeader(_a) {
|
|
|
7468
7738
|
}
|
|
7469
7739
|
function TableBody(_a) {
|
|
7470
7740
|
var _b = _a, { className } = _b, props = __objRest(_b, ["className"]);
|
|
7471
|
-
return /* @__PURE__ */
|
|
7741
|
+
return /* @__PURE__ */ jsx57(
|
|
7472
7742
|
"tbody",
|
|
7473
7743
|
__spreadValues({
|
|
7474
7744
|
"data-slot": "table-body",
|
|
@@ -7478,7 +7748,7 @@ function TableBody(_a) {
|
|
|
7478
7748
|
}
|
|
7479
7749
|
function TableFooter(_a) {
|
|
7480
7750
|
var _b = _a, { className } = _b, props = __objRest(_b, ["className"]);
|
|
7481
|
-
return /* @__PURE__ */
|
|
7751
|
+
return /* @__PURE__ */ jsx57(
|
|
7482
7752
|
"tfoot",
|
|
7483
7753
|
__spreadValues({
|
|
7484
7754
|
"data-slot": "table-footer",
|
|
@@ -7491,7 +7761,7 @@ function TableFooter(_a) {
|
|
|
7491
7761
|
}
|
|
7492
7762
|
function TableRow(_a) {
|
|
7493
7763
|
var _b = _a, { className } = _b, props = __objRest(_b, ["className"]);
|
|
7494
|
-
return /* @__PURE__ */
|
|
7764
|
+
return /* @__PURE__ */ jsx57(
|
|
7495
7765
|
"tr",
|
|
7496
7766
|
__spreadValues({
|
|
7497
7767
|
"data-slot": "table-row",
|
|
@@ -7504,7 +7774,7 @@ function TableRow(_a) {
|
|
|
7504
7774
|
}
|
|
7505
7775
|
function TableHead(_a) {
|
|
7506
7776
|
var _b = _a, { className } = _b, props = __objRest(_b, ["className"]);
|
|
7507
|
-
return /* @__PURE__ */
|
|
7777
|
+
return /* @__PURE__ */ jsx57(
|
|
7508
7778
|
"th",
|
|
7509
7779
|
__spreadValues({
|
|
7510
7780
|
"data-slot": "table-head",
|
|
@@ -7517,7 +7787,7 @@ function TableHead(_a) {
|
|
|
7517
7787
|
}
|
|
7518
7788
|
function TableCell(_a) {
|
|
7519
7789
|
var _b = _a, { className } = _b, props = __objRest(_b, ["className"]);
|
|
7520
|
-
return /* @__PURE__ */
|
|
7790
|
+
return /* @__PURE__ */ jsx57(
|
|
7521
7791
|
"td",
|
|
7522
7792
|
__spreadValues({
|
|
7523
7793
|
"data-slot": "table-cell",
|
|
@@ -7534,7 +7804,7 @@ function TableCaption(_a) {
|
|
|
7534
7804
|
} = _b, props = __objRest(_b, [
|
|
7535
7805
|
"className"
|
|
7536
7806
|
]);
|
|
7537
|
-
return /* @__PURE__ */
|
|
7807
|
+
return /* @__PURE__ */ jsx57(
|
|
7538
7808
|
"caption",
|
|
7539
7809
|
__spreadValues({
|
|
7540
7810
|
"data-slot": "table-caption",
|
|
@@ -7546,7 +7816,7 @@ function TableCaption(_a) {
|
|
|
7546
7816
|
// components/ui/tabs.tsx
|
|
7547
7817
|
import { cva as cva14 } from "class-variance-authority";
|
|
7548
7818
|
import { Tabs as TabsPrimitive } from "radix-ui";
|
|
7549
|
-
import { jsx as
|
|
7819
|
+
import { jsx as jsx58 } from "react/jsx-runtime";
|
|
7550
7820
|
function Tabs(_a) {
|
|
7551
7821
|
var _b = _a, {
|
|
7552
7822
|
className,
|
|
@@ -7555,7 +7825,7 @@ function Tabs(_a) {
|
|
|
7555
7825
|
"className",
|
|
7556
7826
|
"orientation"
|
|
7557
7827
|
]);
|
|
7558
|
-
return /* @__PURE__ */
|
|
7828
|
+
return /* @__PURE__ */ jsx58(
|
|
7559
7829
|
TabsPrimitive.Root,
|
|
7560
7830
|
__spreadValues({
|
|
7561
7831
|
"data-slot": "tabs",
|
|
@@ -7598,7 +7868,7 @@ function TabsList(_a) {
|
|
|
7598
7868
|
"variant",
|
|
7599
7869
|
"size"
|
|
7600
7870
|
]);
|
|
7601
|
-
return /* @__PURE__ */
|
|
7871
|
+
return /* @__PURE__ */ jsx58(
|
|
7602
7872
|
TabsPrimitive.List,
|
|
7603
7873
|
__spreadValues({
|
|
7604
7874
|
"data-slot": "tabs-list",
|
|
@@ -7616,7 +7886,7 @@ function TabsTrigger(_a) {
|
|
|
7616
7886
|
"className",
|
|
7617
7887
|
"iconPosition"
|
|
7618
7888
|
]);
|
|
7619
|
-
return /* @__PURE__ */
|
|
7889
|
+
return /* @__PURE__ */ jsx58(
|
|
7620
7890
|
TabsPrimitive.Trigger,
|
|
7621
7891
|
__spreadValues({
|
|
7622
7892
|
"data-slot": "tabs-trigger",
|
|
@@ -7642,7 +7912,7 @@ function TabsContent(_a) {
|
|
|
7642
7912
|
} = _b, props = __objRest(_b, [
|
|
7643
7913
|
"className"
|
|
7644
7914
|
]);
|
|
7645
|
-
return /* @__PURE__ */
|
|
7915
|
+
return /* @__PURE__ */ jsx58(
|
|
7646
7916
|
TabsPrimitive.Content,
|
|
7647
7917
|
__spreadValues({
|
|
7648
7918
|
"data-slot": "tabs-content",
|
|
@@ -7654,7 +7924,7 @@ function TabsContent(_a) {
|
|
|
7654
7924
|
// components/ui/toggle.tsx
|
|
7655
7925
|
import { cva as cva15 } from "class-variance-authority";
|
|
7656
7926
|
import { Toggle as TogglePrimitive } from "radix-ui";
|
|
7657
|
-
import { jsx as
|
|
7927
|
+
import { jsx as jsx59 } from "react/jsx-runtime";
|
|
7658
7928
|
var toggleVariants = cva15(
|
|
7659
7929
|
"type-toggle inline-flex items-center justify-center gap-2 rounded-md border border-border-default-default bg-background-primary-surface text-text-prominent-default whitespace-nowrap transition-[color,background-color,border-color,box-shadow] outline-none hover:bg-background-secondary-surface active:bg-background-secondary-wash focus-visible:border-ring-focus-default focus-visible:ring-[3px] focus-visible:ring-ring-focus-strong disabled:pointer-events-none disabled:opacity-(--opacity-disabled) aria-invalid:border-border-error-default aria-invalid:ring-ring-error-soft data-[state=on]:border-transparent data-[state=on]:bg-background-brand-default data-[state=on]:text-text-on-brand-static [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4",
|
|
7660
7930
|
{
|
|
@@ -7678,7 +7948,7 @@ function Toggle(_a) {
|
|
|
7678
7948
|
"className",
|
|
7679
7949
|
"size"
|
|
7680
7950
|
]);
|
|
7681
|
-
return /* @__PURE__ */
|
|
7951
|
+
return /* @__PURE__ */ jsx59(
|
|
7682
7952
|
TogglePrimitive.Root,
|
|
7683
7953
|
__spreadValues({
|
|
7684
7954
|
"data-slot": "toggle",
|
|
@@ -7688,10 +7958,10 @@ function Toggle(_a) {
|
|
|
7688
7958
|
}
|
|
7689
7959
|
|
|
7690
7960
|
// components/ui/toggle-group.tsx
|
|
7691
|
-
import * as
|
|
7961
|
+
import * as React21 from "react";
|
|
7692
7962
|
import { ToggleGroup as ToggleGroupPrimitive } from "radix-ui";
|
|
7693
|
-
import { jsx as
|
|
7694
|
-
var ToggleGroupContext =
|
|
7963
|
+
import { jsx as jsx60 } from "react/jsx-runtime";
|
|
7964
|
+
var ToggleGroupContext = React21.createContext({
|
|
7695
7965
|
size: "default",
|
|
7696
7966
|
spacing: 0
|
|
7697
7967
|
});
|
|
@@ -7707,7 +7977,7 @@ function ToggleGroup(_a) {
|
|
|
7707
7977
|
"spacing",
|
|
7708
7978
|
"children"
|
|
7709
7979
|
]);
|
|
7710
|
-
return /* @__PURE__ */
|
|
7980
|
+
return /* @__PURE__ */ jsx60(
|
|
7711
7981
|
ToggleGroupPrimitive.Root,
|
|
7712
7982
|
__spreadProps(__spreadValues({
|
|
7713
7983
|
"data-slot": "toggle-group",
|
|
@@ -7719,7 +7989,7 @@ function ToggleGroup(_a) {
|
|
|
7719
7989
|
className
|
|
7720
7990
|
)
|
|
7721
7991
|
}, props), {
|
|
7722
|
-
children: /* @__PURE__ */
|
|
7992
|
+
children: /* @__PURE__ */ jsx60(ToggleGroupContext.Provider, { value: { size, spacing }, children })
|
|
7723
7993
|
})
|
|
7724
7994
|
);
|
|
7725
7995
|
}
|
|
@@ -7733,8 +8003,8 @@ function ToggleGroupItem(_a) {
|
|
|
7733
8003
|
"children",
|
|
7734
8004
|
"size"
|
|
7735
8005
|
]);
|
|
7736
|
-
const context =
|
|
7737
|
-
return /* @__PURE__ */
|
|
8006
|
+
const context = React21.useContext(ToggleGroupContext);
|
|
8007
|
+
return /* @__PURE__ */ jsx60(
|
|
7738
8008
|
ToggleGroupPrimitive.Item,
|
|
7739
8009
|
__spreadProps(__spreadValues({
|
|
7740
8010
|
"data-slot": "toggle-group-item",
|
|
@@ -7757,7 +8027,7 @@ function ToggleGroupItem(_a) {
|
|
|
7757
8027
|
}
|
|
7758
8028
|
|
|
7759
8029
|
// components/blocks/result-block.tsx
|
|
7760
|
-
import { Fragment as Fragment3, jsx as
|
|
8030
|
+
import { Fragment as Fragment3, jsx as jsx61, jsxs as jsxs34 } from "react/jsx-runtime";
|
|
7761
8031
|
var THUMBS_UP_DATA_URL = "data:image/webp;base64,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";
|
|
7762
8032
|
var THUMBS_DOWN_DATA_URL = "data:image/webp;base64,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";
|
|
7763
8033
|
function ResultBlock({
|
|
@@ -7774,9 +8044,9 @@ function ResultBlock({
|
|
|
7774
8044
|
const signedAmount = isWin ? `+${amount}` : `\u2212${amount}`;
|
|
7775
8045
|
const amountColorClass = isWin ? "text-semantic-win" : "text-semantic-loss";
|
|
7776
8046
|
const haloBgClass = isWin ? "bg-semantic-win" : "bg-semantic-loss";
|
|
7777
|
-
return /* @__PURE__ */
|
|
7778
|
-
/* @__PURE__ */
|
|
7779
|
-
/* @__PURE__ */
|
|
8047
|
+
return /* @__PURE__ */ jsxs34(Card, { className: "w-80 shrink-0 overflow-hidden rounded-md shadow-sm px-5 py-5 items-center gap-3", children: [
|
|
8048
|
+
/* @__PURE__ */ jsxs34("div", { className: "relative flex items-center justify-center py-2", children: [
|
|
8049
|
+
/* @__PURE__ */ jsx61(
|
|
7780
8050
|
"span",
|
|
7781
8051
|
{
|
|
7782
8052
|
"aria-hidden": true,
|
|
@@ -7784,7 +8054,7 @@ function ResultBlock({
|
|
|
7784
8054
|
className: `absolute size-24 rounded-full blur-2xl opacity-20 ${haloBgClass}`
|
|
7785
8055
|
}
|
|
7786
8056
|
),
|
|
7787
|
-
/* @__PURE__ */
|
|
8057
|
+
/* @__PURE__ */ jsx61(
|
|
7788
8058
|
"img",
|
|
7789
8059
|
{
|
|
7790
8060
|
"data-results-motion": isWin ? "icon-win" : "icon-loss",
|
|
@@ -7794,28 +8064,28 @@ function ResultBlock({
|
|
|
7794
8064
|
}
|
|
7795
8065
|
)
|
|
7796
8066
|
] }),
|
|
7797
|
-
/* @__PURE__ */
|
|
7798
|
-
/* @__PURE__ */
|
|
7799
|
-
/* @__PURE__ */
|
|
7800
|
-
/* @__PURE__ */
|
|
8067
|
+
/* @__PURE__ */ jsx61("p", { className: "text-lg font-semibold text-on-prominent", children: titleText }),
|
|
8068
|
+
/* @__PURE__ */ jsxs34("p", { className: `flex items-baseline gap-1.5 ${amountColorClass}`, children: [
|
|
8069
|
+
/* @__PURE__ */ jsx61("span", { className: "font-display text-4xl font-semibold tabular-nums tracking-tight", children: signedAmount }),
|
|
8070
|
+
/* @__PURE__ */ jsx61("span", { className: "text-lg font-semibold", children: currency })
|
|
7801
8071
|
] }),
|
|
7802
|
-
/* @__PURE__ */
|
|
7803
|
-
/* @__PURE__ */
|
|
8072
|
+
/* @__PURE__ */ jsxs34("div", { className: "flex items-center gap-2", children: [
|
|
8073
|
+
/* @__PURE__ */ jsxs34(Badge, { variant: "tint-neutral", size: "sm", children: [
|
|
7804
8074
|
contractLabel,
|
|
7805
|
-
pickedDigit !== void 0 && /* @__PURE__ */
|
|
7806
|
-
/* @__PURE__ */
|
|
7807
|
-
/* @__PURE__ */
|
|
8075
|
+
pickedDigit !== void 0 && /* @__PURE__ */ jsxs34(Fragment3, { children: [
|
|
8076
|
+
/* @__PURE__ */ jsx61("span", { "aria-hidden": true, className: "h-3 w-px bg-border-prominent/40 mx-1" }),
|
|
8077
|
+
/* @__PURE__ */ jsx61("span", { className: "tabular-nums", children: pickedDigit })
|
|
7808
8078
|
] })
|
|
7809
8079
|
] }),
|
|
7810
|
-
/* @__PURE__ */
|
|
8080
|
+
/* @__PURE__ */ jsx61(Badge, { variant: "tint-neutral", size: "sm", children: duration })
|
|
7811
8081
|
] }),
|
|
7812
|
-
/* @__PURE__ */
|
|
7813
|
-
ctaMode === "next-round" && /* @__PURE__ */
|
|
7814
|
-
ctaMode === "go-again" && /* @__PURE__ */
|
|
7815
|
-
ctaMode === "conversion" && /* @__PURE__ */
|
|
7816
|
-
/* @__PURE__ */
|
|
7817
|
-
/* @__PURE__ */
|
|
7818
|
-
/* @__PURE__ */
|
|
8082
|
+
/* @__PURE__ */ jsxs34("div", { className: "w-full pt-2", children: [
|
|
8083
|
+
ctaMode === "next-round" && /* @__PURE__ */ jsx61(Button, { className: "w-full", children: "Next round" }),
|
|
8084
|
+
ctaMode === "go-again" && /* @__PURE__ */ jsx61(Button, { className: "w-full", children: "Go again" }),
|
|
8085
|
+
ctaMode === "conversion" && /* @__PURE__ */ jsxs34("div", { className: "w-full flex flex-col gap-3", children: [
|
|
8086
|
+
/* @__PURE__ */ jsx61("p", { className: "text-center text-base font-semibold text-on-prominent", children: "Ready to play for real?" }),
|
|
8087
|
+
/* @__PURE__ */ jsx61(Button, { className: "w-full", children: "Deposit now" }),
|
|
8088
|
+
/* @__PURE__ */ jsx61(Button, { variant: "secondary", className: "w-full", children: "Stay in demo" })
|
|
7819
8089
|
] })
|
|
7820
8090
|
] })
|
|
7821
8091
|
] });
|
|
@@ -7826,21 +8096,21 @@ function ResultDialog({
|
|
|
7826
8096
|
primaryLabel,
|
|
7827
8097
|
secondaryLabel
|
|
7828
8098
|
}) {
|
|
7829
|
-
return /* @__PURE__ */
|
|
7830
|
-
/* @__PURE__ */
|
|
7831
|
-
/* @__PURE__ */
|
|
7832
|
-
/* @__PURE__ */
|
|
8099
|
+
return /* @__PURE__ */ jsxs34(Card, { className: "w-80 shrink-0 overflow-hidden rounded-md shadow-sm px-5 py-6 items-center gap-4", children: [
|
|
8100
|
+
/* @__PURE__ */ jsxs34("div", { className: "flex flex-col items-center gap-2 text-center", children: [
|
|
8101
|
+
/* @__PURE__ */ jsx61("p", { className: "text-lg font-semibold text-on-prominent", children: title }),
|
|
8102
|
+
/* @__PURE__ */ jsx61("p", { className: "text-sm text-on-subtle", children: body })
|
|
7833
8103
|
] }),
|
|
7834
|
-
/* @__PURE__ */
|
|
7835
|
-
/* @__PURE__ */
|
|
7836
|
-
/* @__PURE__ */
|
|
8104
|
+
/* @__PURE__ */ jsxs34("div", { className: "w-full flex flex-col gap-2", children: [
|
|
8105
|
+
/* @__PURE__ */ jsx61(Button, { className: "w-full", children: primaryLabel }),
|
|
8106
|
+
/* @__PURE__ */ jsx61(Button, { variant: "secondary", className: "w-full", children: secondaryLabel })
|
|
7837
8107
|
] })
|
|
7838
8108
|
] });
|
|
7839
8109
|
}
|
|
7840
8110
|
|
|
7841
8111
|
// components/blocks/header-navigation-block.tsx
|
|
7842
8112
|
import { ArrowLeft as ArrowLeft2, History } from "lucide-react";
|
|
7843
|
-
import { jsx as
|
|
8113
|
+
import { jsx as jsx62, jsxs as jsxs35 } from "react/jsx-runtime";
|
|
7844
8114
|
function HeaderNavigationBlock({
|
|
7845
8115
|
onBack,
|
|
7846
8116
|
badge,
|
|
@@ -7849,15 +8119,15 @@ function HeaderNavigationBlock({
|
|
|
7849
8119
|
actions
|
|
7850
8120
|
}) {
|
|
7851
8121
|
var _a;
|
|
7852
|
-
return /* @__PURE__ */
|
|
7853
|
-
onBack && /* @__PURE__ */
|
|
7854
|
-
/* @__PURE__ */
|
|
7855
|
-
badge && /* @__PURE__ */
|
|
7856
|
-
/* @__PURE__ */
|
|
7857
|
-
/* @__PURE__ */
|
|
8122
|
+
return /* @__PURE__ */ jsx62("div", { className: "w-full min-w-80 max-w-layout-diagram-small rounded-md overflow-hidden bg-prominent", children: /* @__PURE__ */ jsxs35("header", { className: "flex items-center gap-2 border-b border-border-subtle bg-prominent px-layout-margin-inline py-3", children: [
|
|
8123
|
+
onBack && /* @__PURE__ */ jsx62(NavigationButton, { type: "button", size: "md", "aria-label": "Back", onClick: onBack, children: /* @__PURE__ */ jsx62(ArrowLeft2, { className: "size-5" }) }),
|
|
8124
|
+
/* @__PURE__ */ jsxs35("div", { className: "flex min-w-0 flex-1 items-center justify-center gap-2", children: [
|
|
8125
|
+
badge && /* @__PURE__ */ jsx62(Badge, { variant: (_a = badge.variant) != null ? _a : "tint-warning", size: "sm", children: badge.label }),
|
|
8126
|
+
/* @__PURE__ */ jsx62("span", { className: "font-display font-semibold tabular-nums text-on-prominent", children: balance.amount }),
|
|
8127
|
+
/* @__PURE__ */ jsx62("span", { className: "text-sm text-on-subtle", children: balance.currency })
|
|
7858
8128
|
] }),
|
|
7859
|
-
/* @__PURE__ */
|
|
7860
|
-
history && /* @__PURE__ */
|
|
8129
|
+
/* @__PURE__ */ jsxs35("div", { className: "flex shrink-0 items-center gap-1", children: [
|
|
8130
|
+
history && /* @__PURE__ */ jsx62(HistoryButton, __spreadValues({}, history)),
|
|
7861
8131
|
actions
|
|
7862
8132
|
] })
|
|
7863
8133
|
] }) });
|
|
@@ -7870,9 +8140,9 @@ function HistoryButton({
|
|
|
7870
8140
|
const show = typeof count === "number" && count > 0;
|
|
7871
8141
|
const label = show ? count > 99 ? "99+" : String(count) : null;
|
|
7872
8142
|
const ariaLabel = ariaLabelOverride != null ? ariaLabelOverride : show ? `Open history, ${count} new` : "Open history";
|
|
7873
|
-
return /* @__PURE__ */
|
|
7874
|
-
/* @__PURE__ */
|
|
7875
|
-
show && /* @__PURE__ */
|
|
8143
|
+
return /* @__PURE__ */ jsxs35("div", { className: "relative inline-flex", children: [
|
|
8144
|
+
/* @__PURE__ */ jsx62(NavigationButton, { type: "button", size: "md", "aria-label": ariaLabel, onClick, children: /* @__PURE__ */ jsx62(History, { className: "size-5" }) }),
|
|
8145
|
+
show && /* @__PURE__ */ jsx62(
|
|
7876
8146
|
Badge,
|
|
7877
8147
|
{
|
|
7878
8148
|
"aria-hidden": true,
|
|
@@ -7887,7 +8157,7 @@ function HistoryButton({
|
|
|
7887
8157
|
// components/blocks/faq-block.tsx
|
|
7888
8158
|
import { Plus as Plus2 } from "lucide-react";
|
|
7889
8159
|
import { Accordion as AccordionPrimitive2 } from "radix-ui";
|
|
7890
|
-
import { jsx as
|
|
8160
|
+
import { jsx as jsx63, jsxs as jsxs36 } from "react/jsx-runtime";
|
|
7891
8161
|
function FAQBlock({
|
|
7892
8162
|
eyebrow = "FAQ",
|
|
7893
8163
|
title = "Frequently asked questions",
|
|
@@ -7899,34 +8169,34 @@ function FAQBlock({
|
|
|
7899
8169
|
}) {
|
|
7900
8170
|
var _a, _b;
|
|
7901
8171
|
if (layout === "two-column") {
|
|
7902
|
-
return /* @__PURE__ */
|
|
7903
|
-
/* @__PURE__ */
|
|
7904
|
-
/* @__PURE__ */
|
|
7905
|
-
/* @__PURE__ */
|
|
7906
|
-
intro && /* @__PURE__ */
|
|
8172
|
+
return /* @__PURE__ */ jsx63("div", { className: "@container w-full", children: /* @__PURE__ */ jsxs36("div", { className: "flex flex-col @[600px]:flex-row gap-8 @[600px]:gap-12", children: [
|
|
8173
|
+
/* @__PURE__ */ jsxs36("div", { className: "flex flex-col gap-4 flex-1 @[600px]:max-w-xs", children: [
|
|
8174
|
+
/* @__PURE__ */ jsx63("span", { className: "text-xs font-body font-semibold tracking-widest uppercase text-on-subtle", children: eyebrow }),
|
|
8175
|
+
/* @__PURE__ */ jsx63("h2", { className: "text-4xl @[600px]:text-6xl font-semibold font-display text-on-prominent tracking-tight", children: title }),
|
|
8176
|
+
intro && /* @__PURE__ */ jsx63("p", { className: "text-base font-body text-on-subtle", children: intro })
|
|
7907
8177
|
] }),
|
|
7908
|
-
/* @__PURE__ */
|
|
8178
|
+
/* @__PURE__ */ jsx63("div", { className: "flex-1", children: /* @__PURE__ */ jsx63(
|
|
7909
8179
|
Accordion,
|
|
7910
8180
|
{
|
|
7911
8181
|
type: "single",
|
|
7912
8182
|
collapsible: true,
|
|
7913
8183
|
defaultValue: defaultValue != null ? defaultValue : (_a = items[0]) == null ? void 0 : _a.value,
|
|
7914
8184
|
className: "w-full",
|
|
7915
|
-
children: items.map(({ value, question, answer }, i) => /* @__PURE__ */
|
|
7916
|
-
/* @__PURE__ */
|
|
8185
|
+
children: items.map(({ value, question, answer }, i) => /* @__PURE__ */ jsxs36(AccordionItem, { value, children: [
|
|
8186
|
+
/* @__PURE__ */ jsx63(AccordionPrimitive2.Header, { className: "flex", children: /* @__PURE__ */ jsxs36(
|
|
7917
8187
|
AccordionPrimitive2.Trigger,
|
|
7918
8188
|
{
|
|
7919
8189
|
className: "group flex flex-1 items-center justify-between gap-4 py-5 text-left outline-none focus-visible:border-ring focus-visible:ring-[3px] focus-visible:ring-ring/50",
|
|
7920
8190
|
children: [
|
|
7921
|
-
/* @__PURE__ */
|
|
7922
|
-
/* @__PURE__ */
|
|
7923
|
-
/* @__PURE__ */
|
|
8191
|
+
/* @__PURE__ */ jsxs36("span", { className: "flex items-baseline gap-4", children: [
|
|
8192
|
+
/* @__PURE__ */ jsx63("span", { className: "text-sm font-body text-on-subtle shrink-0 w-6", children: String(i + 1).padStart(2, "0") }),
|
|
8193
|
+
/* @__PURE__ */ jsx63("span", { className: "text-lg @[600px]:text-xl font-semibold font-display text-on-prominent", children: question })
|
|
7924
8194
|
] }),
|
|
7925
|
-
/* @__PURE__ */
|
|
8195
|
+
/* @__PURE__ */ jsx63("span", { className: cn(
|
|
7926
8196
|
"shrink-0 size-7 flex items-center justify-center rounded-sm border transition-all duration-200",
|
|
7927
8197
|
"group-data-[state=open]:bg-primary group-data-[state=open]:border-primary",
|
|
7928
8198
|
"group-data-[state=closed]:bg-transparent group-data-[state=closed]:border-border-subtle"
|
|
7929
|
-
), children: /* @__PURE__ */
|
|
8199
|
+
), children: /* @__PURE__ */ jsx63(Plus2, { className: cn(
|
|
7930
8200
|
"size-4 transition-all duration-200",
|
|
7931
8201
|
"group-data-[state=open]:rotate-45 group-data-[state=open]:text-on-primary",
|
|
7932
8202
|
"group-data-[state=closed]:text-on-prominent"
|
|
@@ -7934,7 +8204,7 @@ function FAQBlock({
|
|
|
7934
8204
|
]
|
|
7935
8205
|
}
|
|
7936
8206
|
) }),
|
|
7937
|
-
/* @__PURE__ */
|
|
8207
|
+
/* @__PURE__ */ jsx63(AccordionContent, { children: /* @__PURE__ */ jsx63("p", { className: "text-base font-body text-on-subtle pl-10 pb-4", children: answer }) })
|
|
7938
8208
|
] }, value))
|
|
7939
8209
|
}
|
|
7940
8210
|
) })
|
|
@@ -7945,38 +8215,38 @@ function FAQBlock({
|
|
|
7945
8215
|
const helpCardPaddingClass = layout === "desktop" ? "p-8" : "p-6";
|
|
7946
8216
|
const gapClass = layout === "desktop" ? "gap-12" : "gap-10";
|
|
7947
8217
|
const headerGapClass = layout === "desktop" ? "gap-5" : "gap-4";
|
|
7948
|
-
return /* @__PURE__ */
|
|
7949
|
-
/* @__PURE__ */
|
|
7950
|
-
/* @__PURE__ */
|
|
7951
|
-
/* @__PURE__ */
|
|
7952
|
-
intro && /* @__PURE__ */
|
|
8218
|
+
return /* @__PURE__ */ jsxs36("div", { className: `w-full flex flex-col ${gapClass}`, children: [
|
|
8219
|
+
/* @__PURE__ */ jsxs36("div", { className: `flex flex-col ${headerGapClass} items-center w-full`, children: [
|
|
8220
|
+
/* @__PURE__ */ jsx63("span", { className: "text-sm text-on-subtle font-body", children: eyebrow }),
|
|
8221
|
+
/* @__PURE__ */ jsx63("h2", { className: headingClass, children: title }),
|
|
8222
|
+
intro && /* @__PURE__ */ jsx63("p", { className: "text-lg text-on-subtle font-body text-center", children: intro })
|
|
7953
8223
|
] }),
|
|
7954
|
-
/* @__PURE__ */
|
|
8224
|
+
/* @__PURE__ */ jsx63(
|
|
7955
8225
|
Accordion,
|
|
7956
8226
|
{
|
|
7957
8227
|
type: "single",
|
|
7958
8228
|
collapsible: true,
|
|
7959
8229
|
defaultValue: defaultValue != null ? defaultValue : (_b = items[0]) == null ? void 0 : _b.value,
|
|
7960
8230
|
className: "w-full",
|
|
7961
|
-
children: items.map(({ value, question, answer }) => /* @__PURE__ */
|
|
7962
|
-
/* @__PURE__ */
|
|
7963
|
-
/* @__PURE__ */
|
|
8231
|
+
children: items.map(({ value, question, answer }) => /* @__PURE__ */ jsxs36(AccordionItem, { value, children: [
|
|
8232
|
+
/* @__PURE__ */ jsx63(AccordionTrigger, { className: "text-base font-medium font-body text-on-prominent hover:no-underline", children: question }),
|
|
8233
|
+
/* @__PURE__ */ jsx63(AccordionContent, { children: /* @__PURE__ */ jsx63("p", { className: "text-sm text-on-subtle font-body pb-4", children: answer }) })
|
|
7964
8234
|
] }, value))
|
|
7965
8235
|
}
|
|
7966
8236
|
),
|
|
7967
|
-
helpCard && /* @__PURE__ */
|
|
7968
|
-
/* @__PURE__ */
|
|
7969
|
-
/* @__PURE__ */
|
|
7970
|
-
/* @__PURE__ */
|
|
8237
|
+
helpCard && /* @__PURE__ */ jsxs36("div", { className: `flex flex-col gap-6 items-center w-full bg-subtle rounded-xl ${helpCardPaddingClass}`, children: [
|
|
8238
|
+
/* @__PURE__ */ jsxs36("div", { className: "flex flex-col gap-2 w-full", children: [
|
|
8239
|
+
/* @__PURE__ */ jsx63("h3", { className: helpTitleClass, children: helpCard.title }),
|
|
8240
|
+
/* @__PURE__ */ jsx63("p", { className: "text-base text-on-subtle font-body", children: helpCard.body })
|
|
7971
8241
|
] }),
|
|
7972
|
-
/* @__PURE__ */
|
|
8242
|
+
/* @__PURE__ */ jsx63(Button, { size: "sm", onClick: helpCard.onCtaClick, children: helpCard.ctaLabel })
|
|
7973
8243
|
] })
|
|
7974
8244
|
] });
|
|
7975
8245
|
}
|
|
7976
8246
|
|
|
7977
8247
|
// components/blocks/hero-block.tsx
|
|
7978
8248
|
import { ArrowRight as ArrowRight3, ArrowUpRight } from "lucide-react";
|
|
7979
|
-
import { jsx as
|
|
8249
|
+
import { jsx as jsx64, jsxs as jsxs37 } from "react/jsx-runtime";
|
|
7980
8250
|
function HeroBlock({
|
|
7981
8251
|
layout = "centered",
|
|
7982
8252
|
tagline,
|
|
@@ -7987,31 +8257,31 @@ function HeroBlock({
|
|
|
7987
8257
|
image
|
|
7988
8258
|
}) {
|
|
7989
8259
|
if (layout === "centered") {
|
|
7990
|
-
return /* @__PURE__ */
|
|
7991
|
-
/* @__PURE__ */
|
|
7992
|
-
tagline && /* @__PURE__ */
|
|
7993
|
-
/* @__PURE__ */
|
|
7994
|
-
/* @__PURE__ */
|
|
8260
|
+
return /* @__PURE__ */ jsx64("div", { className: "w-full border border-border-subtle rounded-xl overflow-hidden bg-prominent", children: /* @__PURE__ */ jsxs37("div", { className: "flex flex-col items-center justify-center gap-8 px-layout-margin-inline py-24 max-w-2xl mx-auto text-center", children: [
|
|
8261
|
+
/* @__PURE__ */ jsxs37("div", { className: "flex flex-col items-center gap-6 w-full", children: [
|
|
8262
|
+
tagline && /* @__PURE__ */ jsx64(TaglinePill, __spreadValues({}, tagline)),
|
|
8263
|
+
/* @__PURE__ */ jsx64("h1", { className: "text-5xl font-semibold font-display tracking-tight text-on-prominent text-center", children: heading }),
|
|
8264
|
+
/* @__PURE__ */ jsx64("p", { className: "text-lg font-body text-on-subtle text-center", children: body })
|
|
7995
8265
|
] }),
|
|
7996
|
-
/* @__PURE__ */
|
|
8266
|
+
/* @__PURE__ */ jsxs37(Button, { size: "sm", onClick: primaryCta.onClick, children: [
|
|
7997
8267
|
primaryCta.label,
|
|
7998
|
-
primaryCta.trailingArrow !== false && /* @__PURE__ */
|
|
8268
|
+
primaryCta.trailingArrow !== false && /* @__PURE__ */ jsx64(ArrowRight3, { className: "size-4" })
|
|
7999
8269
|
] })
|
|
8000
8270
|
] }) });
|
|
8001
8271
|
}
|
|
8002
|
-
return /* @__PURE__ */
|
|
8003
|
-
/* @__PURE__ */
|
|
8004
|
-
/* @__PURE__ */
|
|
8005
|
-
tagline && /* @__PURE__ */
|
|
8006
|
-
/* @__PURE__ */
|
|
8007
|
-
/* @__PURE__ */
|
|
8272
|
+
return /* @__PURE__ */ jsx64("div", { className: "w-full border border-border-subtle rounded-xl overflow-hidden bg-prominent", children: /* @__PURE__ */ jsxs37("div", { className: "flex flex-col min-[600px]:flex-row items-center gap-layout-gutter px-layout-margin-inline py-16 min-[600px]:py-24 max-w-5xl mx-auto", children: [
|
|
8273
|
+
/* @__PURE__ */ jsxs37("div", { className: "flex flex-col gap-6 min-[600px]:gap-8 flex-1 min-w-0 items-center min-[600px]:items-start text-center min-[600px]:text-left w-full", children: [
|
|
8274
|
+
/* @__PURE__ */ jsxs37("div", { className: "flex flex-col gap-5 min-[600px]:gap-6 items-center min-[600px]:items-start w-full", children: [
|
|
8275
|
+
tagline && /* @__PURE__ */ jsx64(TaglinePill, __spreadProps(__spreadValues({}, tagline), { responsive: true })),
|
|
8276
|
+
/* @__PURE__ */ jsx64("h1", { className: "text-4xl min-[600px]:text-5xl font-semibold font-display tracking-tight text-on-prominent", children: heading }),
|
|
8277
|
+
/* @__PURE__ */ jsx64("p", { className: "text-lg font-body text-on-subtle", children: body })
|
|
8008
8278
|
] }),
|
|
8009
|
-
/* @__PURE__ */
|
|
8010
|
-
/* @__PURE__ */
|
|
8011
|
-
secondaryCta && /* @__PURE__ */
|
|
8279
|
+
/* @__PURE__ */ jsxs37("div", { className: "flex items-center justify-center min-[600px]:justify-start gap-2", children: [
|
|
8280
|
+
/* @__PURE__ */ jsx64(Button, { size: "sm", onClick: primaryCta.onClick, children: primaryCta.label }),
|
|
8281
|
+
secondaryCta && /* @__PURE__ */ jsx64(Button, { variant: "secondary", size: "sm", onClick: secondaryCta.onClick, children: secondaryCta.label })
|
|
8012
8282
|
] })
|
|
8013
8283
|
] }),
|
|
8014
|
-
/* @__PURE__ */
|
|
8284
|
+
/* @__PURE__ */ jsx64("div", { className: "w-full min-[600px]:flex-1 min-[600px]:min-w-0 aspect-square rounded-xl bg-subtle shrink-0", "aria-hidden": "true", children: image })
|
|
8015
8285
|
] }) });
|
|
8016
8286
|
}
|
|
8017
8287
|
function TaglinePill({
|
|
@@ -8019,25 +8289,25 @@ function TaglinePill({
|
|
|
8019
8289
|
suffix,
|
|
8020
8290
|
responsive
|
|
8021
8291
|
}) {
|
|
8022
|
-
return /* @__PURE__ */
|
|
8023
|
-
/* @__PURE__ */
|
|
8024
|
-
responsive && suffix ? /* @__PURE__ */
|
|
8025
|
-
/* @__PURE__ */
|
|
8292
|
+
return /* @__PURE__ */ jsxs37("div", { className: "inline-flex items-center gap-1.5 h-7 px-3 rounded-full border border-border-subtle bg-prominent shadow-sm shrink-0", children: [
|
|
8293
|
+
/* @__PURE__ */ jsx64("span", { className: "size-1.5 rounded-full bg-semantic-win shrink-0", "aria-hidden": "true" }),
|
|
8294
|
+
responsive && suffix ? /* @__PURE__ */ jsxs37("span", { className: "text-sm font-body text-on-prominent whitespace-nowrap", children: [
|
|
8295
|
+
/* @__PURE__ */ jsxs37("span", { className: "hidden min-[600px]:inline", children: [
|
|
8026
8296
|
label,
|
|
8027
|
-
/* @__PURE__ */
|
|
8297
|
+
/* @__PURE__ */ jsx64("span", { className: "text-on-subtle", children: " \xB7 " })
|
|
8028
8298
|
] }),
|
|
8029
|
-
/* @__PURE__ */
|
|
8030
|
-
] }) : /* @__PURE__ */
|
|
8299
|
+
/* @__PURE__ */ jsx64("span", { className: "text-on-subtle min-[600px]:text-on-prominent", children: suffix })
|
|
8300
|
+
] }) : /* @__PURE__ */ jsxs37("span", { className: "text-sm font-body text-on-prominent whitespace-nowrap", children: [
|
|
8031
8301
|
label,
|
|
8032
|
-
suffix && /* @__PURE__ */
|
|
8302
|
+
suffix && /* @__PURE__ */ jsx64("span", { className: "text-on-subtle", children: ` \xB7 ${suffix}` })
|
|
8033
8303
|
] }),
|
|
8034
|
-
/* @__PURE__ */
|
|
8304
|
+
/* @__PURE__ */ jsx64(ArrowUpRight, { className: "size-4 text-on-subtle shrink-0", "aria-hidden": "true" })
|
|
8035
8305
|
] });
|
|
8036
8306
|
}
|
|
8037
8307
|
|
|
8038
8308
|
// components/blocks/auth-block.tsx
|
|
8039
|
-
import * as
|
|
8040
|
-
import { jsx as
|
|
8309
|
+
import * as React22 from "react";
|
|
8310
|
+
import { jsx as jsx65, jsxs as jsxs38 } from "react/jsx-runtime";
|
|
8041
8311
|
function AuthBlock({
|
|
8042
8312
|
mode,
|
|
8043
8313
|
logoSrc,
|
|
@@ -8052,20 +8322,20 @@ function AuthBlock({
|
|
|
8052
8322
|
const ctaText = mode === "sign-in" ? "Sign in" : "Sign up";
|
|
8053
8323
|
const footerPrompt = mode === "sign-in" ? "Don't have an account?" : "Already have an account?";
|
|
8054
8324
|
const footerLinkLabel = mode === "sign-in" ? "Sign up" : "Log in";
|
|
8055
|
-
const [email, setEmail] =
|
|
8056
|
-
return /* @__PURE__ */
|
|
8057
|
-
/* @__PURE__ */
|
|
8058
|
-
/* @__PURE__ */
|
|
8059
|
-
/* @__PURE__ */
|
|
8325
|
+
const [email, setEmail] = React22.useState("");
|
|
8326
|
+
return /* @__PURE__ */ jsxs38("div", { className: "flex flex-col items-center gap-6 w-full", children: [
|
|
8327
|
+
/* @__PURE__ */ jsxs38("div", { className: "flex items-center gap-2", children: [
|
|
8328
|
+
/* @__PURE__ */ jsx65("img", { src: logoSrc, alt: wordmark, className: "size-8 object-contain" }),
|
|
8329
|
+
/* @__PURE__ */ jsx65("span", { className: "font-display font-semibold text-base text-on-prominent tracking-tight", children: wordmark })
|
|
8060
8330
|
] }),
|
|
8061
|
-
/* @__PURE__ */
|
|
8062
|
-
/* @__PURE__ */
|
|
8063
|
-
/* @__PURE__ */
|
|
8064
|
-
/* @__PURE__ */
|
|
8065
|
-
/* @__PURE__ */
|
|
8066
|
-
/* @__PURE__ */
|
|
8331
|
+
/* @__PURE__ */ jsx65("h2", { className: "text-3xl font-semibold font-display text-on-prominent text-center", children: headingText }),
|
|
8332
|
+
/* @__PURE__ */ jsx65("div", { className: "flex flex-col gap-3 w-full", children: providers.map((p) => /* @__PURE__ */ jsx65(ProviderButton, { provider: p }, p)) }),
|
|
8333
|
+
/* @__PURE__ */ jsxs38("div", { className: "flex items-center gap-3 w-full", children: [
|
|
8334
|
+
/* @__PURE__ */ jsx65("div", { className: "flex-1 h-px bg-border-subtle" }),
|
|
8335
|
+
/* @__PURE__ */ jsx65("span", { className: "text-sm text-on-subtle font-body", children: "or" }),
|
|
8336
|
+
/* @__PURE__ */ jsx65("div", { className: "flex-1 h-px bg-border-subtle" })
|
|
8067
8337
|
] }),
|
|
8068
|
-
/* @__PURE__ */
|
|
8338
|
+
/* @__PURE__ */ jsx65("div", { className: "flex items-center gap-2 w-full", children: /* @__PURE__ */ jsx65(
|
|
8069
8339
|
Input,
|
|
8070
8340
|
{
|
|
8071
8341
|
id: `${idPrefix}-email`,
|
|
@@ -8076,60 +8346,60 @@ function AuthBlock({
|
|
|
8076
8346
|
onChange: (e) => setEmail(e.target.value)
|
|
8077
8347
|
}
|
|
8078
8348
|
) }),
|
|
8079
|
-
/* @__PURE__ */
|
|
8349
|
+
/* @__PURE__ */ jsxs38("p", { className: "text-sm text-on-subtle font-body text-left w-full", children: [
|
|
8080
8350
|
termsText,
|
|
8081
8351
|
", you agree to our",
|
|
8082
8352
|
" ",
|
|
8083
|
-
/* @__PURE__ */
|
|
8353
|
+
/* @__PURE__ */ jsx65(Link, { size: "sm", href: "#", children: "Terms & Conditions" })
|
|
8084
8354
|
] }),
|
|
8085
|
-
/* @__PURE__ */
|
|
8086
|
-
/* @__PURE__ */
|
|
8355
|
+
/* @__PURE__ */ jsx65(Button, { size: "md", className: "w-full", onClick: () => onSubmit == null ? void 0 : onSubmit({ email }), children: ctaText }),
|
|
8356
|
+
/* @__PURE__ */ jsxs38("p", { className: "text-sm text-on-subtle font-body text-center", children: [
|
|
8087
8357
|
footerPrompt,
|
|
8088
8358
|
" ",
|
|
8089
|
-
/* @__PURE__ */
|
|
8359
|
+
/* @__PURE__ */ jsx65(Link, { size: "sm", href: crossLinkHref, children: footerLinkLabel })
|
|
8090
8360
|
] })
|
|
8091
8361
|
] });
|
|
8092
8362
|
}
|
|
8093
8363
|
function ProviderButton({ provider }) {
|
|
8094
8364
|
switch (provider) {
|
|
8095
8365
|
case "google":
|
|
8096
|
-
return /* @__PURE__ */
|
|
8097
|
-
/* @__PURE__ */
|
|
8098
|
-
/* @__PURE__ */
|
|
8099
|
-
/* @__PURE__ */
|
|
8100
|
-
/* @__PURE__ */
|
|
8101
|
-
/* @__PURE__ */
|
|
8366
|
+
return /* @__PURE__ */ jsxs38(Button, { variant: "secondary", size: "lg", className: "w-full", children: [
|
|
8367
|
+
/* @__PURE__ */ jsxs38("svg", { width: "18", height: "18", viewBox: "0 0 18 18", "aria-hidden": "true", fill: "none", className: "shrink-0", children: [
|
|
8368
|
+
/* @__PURE__ */ jsx65("path", { d: "M17.64 9.205c0-.639-.057-1.252-.164-1.841H9v3.481h4.844a4.14 4.14 0 0 1-1.796 2.716v2.259h2.908c1.702-1.567 2.684-3.875 2.684-6.615Z", fill: "#4285F4" }),
|
|
8369
|
+
/* @__PURE__ */ jsx65("path", { d: "M9 18c2.43 0 4.467-.806 5.956-2.18l-2.908-2.259c-.806.54-1.837.86-3.048.86-2.344 0-4.328-1.584-5.036-3.711H.957v2.332A8.997 8.997 0 0 0 9 18Z", fill: "#34A853" }),
|
|
8370
|
+
/* @__PURE__ */ jsx65("path", { d: "M3.964 10.71A5.41 5.41 0 0 1 3.682 9c0-.593.102-1.17.282-1.71V4.958H.957A8.996 8.996 0 0 0 0 9c0 1.452.348 2.827.957 4.042l3.007-2.332Z", fill: "#FBBC05" }),
|
|
8371
|
+
/* @__PURE__ */ jsx65("path", { d: "M9 3.58c1.321 0 2.508.454 3.44 1.345l2.582-2.58C13.463.891 11.426 0 9 0A8.997 8.997 0 0 0 .957 4.958L3.964 7.29C4.672 5.163 6.656 3.58 9 3.58Z", fill: "#EA4335" })
|
|
8102
8372
|
] }),
|
|
8103
8373
|
"Continue with Google"
|
|
8104
8374
|
] });
|
|
8105
8375
|
case "telegram":
|
|
8106
|
-
return /* @__PURE__ */
|
|
8107
|
-
/* @__PURE__ */
|
|
8108
|
-
/* @__PURE__ */
|
|
8109
|
-
/* @__PURE__ */
|
|
8110
|
-
/* @__PURE__ */
|
|
8376
|
+
return /* @__PURE__ */ jsxs38(Button, { variant: "secondary", size: "lg", className: "w-full", children: [
|
|
8377
|
+
/* @__PURE__ */ jsxs38("svg", { width: "18", height: "18", viewBox: "0 0 18 18", "aria-hidden": "true", fill: "none", className: "shrink-0", children: [
|
|
8378
|
+
/* @__PURE__ */ jsx65("circle", { cx: "9", cy: "9", r: "9", fill: "#29B6F6" }),
|
|
8379
|
+
/* @__PURE__ */ jsx65("path", { d: "M13.5 5.25 11.25 13.5l-2.25-3-3 1.5 1.5-5.25 6-1.5Z", fill: "white", opacity: "0.3" }),
|
|
8380
|
+
/* @__PURE__ */ jsx65("path", { d: "m4.5 8.625 7.5-3-1.125 7.125-2.625-2.25-1.5 1.5.375-3.375Z", fill: "white" })
|
|
8111
8381
|
] }),
|
|
8112
8382
|
"Continue with Telegram"
|
|
8113
8383
|
] });
|
|
8114
8384
|
case "x":
|
|
8115
|
-
return /* @__PURE__ */
|
|
8116
|
-
/* @__PURE__ */
|
|
8385
|
+
return /* @__PURE__ */ jsxs38(Button, { variant: "secondary", size: "lg", className: "w-full", children: [
|
|
8386
|
+
/* @__PURE__ */ jsx65("svg", { width: "18", height: "18", viewBox: "0 0 18 18", "aria-hidden": "true", fill: "currentColor", className: "shrink-0", children: /* @__PURE__ */ jsx65("path", { d: "M13.955 2.25h2.423L10.977 8.28 17.25 15.75h-4.812l-3.913-5.116-4.477 5.116H1.645l5.703-6.52L1.125 2.25h4.934l3.538 4.678 4.358-4.678Zm-.85 12.105h1.343L5.025 3.627H3.579l9.526 10.728Z" }) }),
|
|
8117
8387
|
"Continue with X (Twitter)"
|
|
8118
8388
|
] });
|
|
8119
8389
|
}
|
|
8120
8390
|
}
|
|
8121
8391
|
|
|
8122
8392
|
// components/blocks/navbar-block.tsx
|
|
8123
|
-
import * as
|
|
8393
|
+
import * as React23 from "react";
|
|
8124
8394
|
import { Menu, X as X3 } from "lucide-react";
|
|
8125
|
-
import { jsx as
|
|
8395
|
+
import { jsx as jsx66, jsxs as jsxs39 } from "react/jsx-runtime";
|
|
8126
8396
|
function NavBarBlock({ brand, links, signIn, signUp }) {
|
|
8127
8397
|
var _a, _b, _c, _d;
|
|
8128
|
-
const [mobileMenuOpen, setMobileMenuOpen] =
|
|
8129
|
-
return /* @__PURE__ */
|
|
8130
|
-
/* @__PURE__ */
|
|
8131
|
-
/* @__PURE__ */
|
|
8132
|
-
/* @__PURE__ */
|
|
8398
|
+
const [mobileMenuOpen, setMobileMenuOpen] = React23.useState(false);
|
|
8399
|
+
return /* @__PURE__ */ jsx66("div", { className: "w-full border border-border-subtle rounded-md overflow-hidden", children: /* @__PURE__ */ jsxs39("nav", { className: "bg-prominent", children: [
|
|
8400
|
+
/* @__PURE__ */ jsxs39("div", { className: "flex items-center justify-between px-layout-margin-inline py-3", children: [
|
|
8401
|
+
/* @__PURE__ */ jsxs39("div", { className: "flex items-center gap-6", children: [
|
|
8402
|
+
/* @__PURE__ */ jsx66(
|
|
8133
8403
|
"img",
|
|
8134
8404
|
{
|
|
8135
8405
|
src: brand.fullLogoSrc,
|
|
@@ -8137,7 +8407,7 @@ function NavBarBlock({ brand, links, signIn, signUp }) {
|
|
|
8137
8407
|
className: "hidden min-[600px]:block h-7 w-auto shrink-0 object-contain object-left"
|
|
8138
8408
|
}
|
|
8139
8409
|
),
|
|
8140
|
-
/* @__PURE__ */
|
|
8410
|
+
/* @__PURE__ */ jsx66(
|
|
8141
8411
|
"img",
|
|
8142
8412
|
{
|
|
8143
8413
|
src: brand.iconLogoSrc,
|
|
@@ -8145,13 +8415,13 @@ function NavBarBlock({ brand, links, signIn, signUp }) {
|
|
|
8145
8415
|
className: "min-[600px]:hidden size-7 shrink-0 object-contain"
|
|
8146
8416
|
}
|
|
8147
8417
|
),
|
|
8148
|
-
/* @__PURE__ */
|
|
8418
|
+
/* @__PURE__ */ jsx66("div", { className: "hidden min-[600px]:flex items-center gap-1", children: links.map((l) => /* @__PURE__ */ jsx66(Button, { variant: "tertiary", size: "sm", onClick: l.onClick, children: l.label }, l.label)) })
|
|
8149
8419
|
] }),
|
|
8150
|
-
/* @__PURE__ */
|
|
8151
|
-
signIn && /* @__PURE__ */
|
|
8152
|
-
signUp && /* @__PURE__ */
|
|
8420
|
+
/* @__PURE__ */ jsxs39("div", { className: "hidden min-[600px]:flex items-center gap-2", children: [
|
|
8421
|
+
signIn && /* @__PURE__ */ jsx66(Button, { variant: "tertiary", size: "sm", onClick: signIn.onClick, children: (_a = signIn.label) != null ? _a : "Sign in" }),
|
|
8422
|
+
signUp && /* @__PURE__ */ jsx66(Button, { size: "sm", onClick: signUp.onClick, children: (_b = signUp.label) != null ? _b : "Sign up" })
|
|
8153
8423
|
] }),
|
|
8154
|
-
/* @__PURE__ */
|
|
8424
|
+
/* @__PURE__ */ jsx66(
|
|
8155
8425
|
Button,
|
|
8156
8426
|
{
|
|
8157
8427
|
variant: "tertiary",
|
|
@@ -8160,12 +8430,12 @@ function NavBarBlock({ brand, links, signIn, signUp }) {
|
|
|
8160
8430
|
"aria-expanded": mobileMenuOpen,
|
|
8161
8431
|
className: "min-[600px]:hidden",
|
|
8162
8432
|
onClick: () => setMobileMenuOpen((prev) => !prev),
|
|
8163
|
-
children: mobileMenuOpen ? /* @__PURE__ */
|
|
8433
|
+
children: mobileMenuOpen ? /* @__PURE__ */ jsx66(X3, { className: "size-4" }) : /* @__PURE__ */ jsx66(Menu, { className: "size-4" })
|
|
8164
8434
|
}
|
|
8165
8435
|
)
|
|
8166
8436
|
] }),
|
|
8167
|
-
mobileMenuOpen && /* @__PURE__ */
|
|
8168
|
-
links.map((l) => /* @__PURE__ */
|
|
8437
|
+
mobileMenuOpen && /* @__PURE__ */ jsxs39("div", { className: "min-[600px]:hidden flex flex-col border-t border-border-subtle px-layout-margin-inline py-3 gap-1", children: [
|
|
8438
|
+
links.map((l) => /* @__PURE__ */ jsx66(
|
|
8169
8439
|
Button,
|
|
8170
8440
|
{
|
|
8171
8441
|
variant: "tertiary",
|
|
@@ -8176,9 +8446,9 @@ function NavBarBlock({ brand, links, signIn, signUp }) {
|
|
|
8176
8446
|
},
|
|
8177
8447
|
l.label
|
|
8178
8448
|
)),
|
|
8179
|
-
(signIn || signUp) && /* @__PURE__ */
|
|
8180
|
-
signIn && /* @__PURE__ */
|
|
8181
|
-
signUp && /* @__PURE__ */
|
|
8449
|
+
(signIn || signUp) && /* @__PURE__ */ jsxs39("div", { className: "flex flex-col gap-2 pt-3 mt-2 border-t border-border-subtle", children: [
|
|
8450
|
+
signIn && /* @__PURE__ */ jsx66(Button, { variant: "secondary", size: "sm", className: "w-full", onClick: signIn.onClick, children: (_c = signIn.label) != null ? _c : "Sign in" }),
|
|
8451
|
+
signUp && /* @__PURE__ */ jsx66(Button, { size: "sm", className: "w-full", onClick: signUp.onClick, children: (_d = signUp.label) != null ? _d : "Sign up" })
|
|
8182
8452
|
] })
|
|
8183
8453
|
] })
|
|
8184
8454
|
] }) });
|
|
@@ -8186,7 +8456,7 @@ function NavBarBlock({ brand, links, signIn, signUp }) {
|
|
|
8186
8456
|
|
|
8187
8457
|
// components/blocks/open-positions-block.tsx
|
|
8188
8458
|
import { History as History2, X as X4 } from "lucide-react";
|
|
8189
|
-
import { jsx as
|
|
8459
|
+
import { jsx as jsx67, jsxs as jsxs40 } from "react/jsx-runtime";
|
|
8190
8460
|
function OpenPositionsBlock({
|
|
8191
8461
|
trigger,
|
|
8192
8462
|
sheetTitle = "Positions",
|
|
@@ -8195,28 +8465,28 @@ function OpenPositionsBlock({
|
|
|
8195
8465
|
emptyState
|
|
8196
8466
|
}) {
|
|
8197
8467
|
const isMobile = useIsMobile();
|
|
8198
|
-
const body = positions.length === 0 ? emptyState != null ? emptyState : /* @__PURE__ */
|
|
8468
|
+
const body = positions.length === 0 ? emptyState != null ? emptyState : /* @__PURE__ */ jsx67(DefaultEmptyState, { onViewHistory }) : /* @__PURE__ */ jsx67(PositionsList, { positions, onViewHistory });
|
|
8199
8469
|
if (isMobile) {
|
|
8200
|
-
return /* @__PURE__ */
|
|
8201
|
-
/* @__PURE__ */
|
|
8202
|
-
/* @__PURE__ */
|
|
8203
|
-
/* @__PURE__ */
|
|
8204
|
-
/* @__PURE__ */
|
|
8205
|
-
/* @__PURE__ */
|
|
8470
|
+
return /* @__PURE__ */ jsxs40(Drawer, { children: [
|
|
8471
|
+
/* @__PURE__ */ jsx67(DrawerTrigger, { asChild: true, children: trigger }),
|
|
8472
|
+
/* @__PURE__ */ jsxs40(DrawerContent, { className: "p-0 flex flex-col", children: [
|
|
8473
|
+
/* @__PURE__ */ jsxs40(DrawerHeader, { className: "flex-row items-center justify-between px-4 py-3 shrink-0 text-left", children: [
|
|
8474
|
+
/* @__PURE__ */ jsx67(DrawerTitle, { className: "text-base font-semibold font-display text-on-prominent", children: sheetTitle }),
|
|
8475
|
+
/* @__PURE__ */ jsx67(DrawerClose, { asChild: true, children: /* @__PURE__ */ jsx67(NavigationButton, { size: "sm", "aria-label": "Close", children: /* @__PURE__ */ jsx67(X4, {}) }) })
|
|
8206
8476
|
] }),
|
|
8207
|
-
/* @__PURE__ */
|
|
8477
|
+
/* @__PURE__ */ jsx67(Separator, {}),
|
|
8208
8478
|
body
|
|
8209
8479
|
] })
|
|
8210
8480
|
] });
|
|
8211
8481
|
}
|
|
8212
|
-
return /* @__PURE__ */
|
|
8213
|
-
/* @__PURE__ */
|
|
8214
|
-
/* @__PURE__ */
|
|
8215
|
-
/* @__PURE__ */
|
|
8216
|
-
/* @__PURE__ */
|
|
8217
|
-
/* @__PURE__ */
|
|
8482
|
+
return /* @__PURE__ */ jsxs40(Sheet, { children: [
|
|
8483
|
+
/* @__PURE__ */ jsx67(SheetTrigger, { asChild: true, children: trigger }),
|
|
8484
|
+
/* @__PURE__ */ jsxs40(SheetContent, { side: "right", showCloseButton: false, className: "p-0 flex flex-col w-80 sm:max-w-xs", children: [
|
|
8485
|
+
/* @__PURE__ */ jsxs40(SheetHeader, { className: "flex-row items-center justify-between px-4 py-3 shrink-0", children: [
|
|
8486
|
+
/* @__PURE__ */ jsx67(SheetTitle, { className: "text-base font-semibold font-display text-on-prominent", children: sheetTitle }),
|
|
8487
|
+
/* @__PURE__ */ jsx67(SheetClose, { asChild: true, children: /* @__PURE__ */ jsx67(NavigationButton, { size: "sm", "aria-label": "Close", children: /* @__PURE__ */ jsx67(X4, {}) }) })
|
|
8218
8488
|
] }),
|
|
8219
|
-
/* @__PURE__ */
|
|
8489
|
+
/* @__PURE__ */ jsx67(Separator, {}),
|
|
8220
8490
|
body
|
|
8221
8491
|
] })
|
|
8222
8492
|
] });
|
|
@@ -8225,23 +8495,23 @@ function PositionsList({
|
|
|
8225
8495
|
positions,
|
|
8226
8496
|
onViewHistory
|
|
8227
8497
|
}) {
|
|
8228
|
-
return /* @__PURE__ */
|
|
8229
|
-
/* @__PURE__ */
|
|
8230
|
-
/* @__PURE__ */
|
|
8231
|
-
/* @__PURE__ */
|
|
8498
|
+
return /* @__PURE__ */ jsxs40("div", { className: "flex flex-col flex-1 min-h-0", children: [
|
|
8499
|
+
/* @__PURE__ */ jsx67(ItemGroup, { className: "min-h-0 overflow-y-auto", children: positions.map((pos, i) => /* @__PURE__ */ jsx67(PositionRow, { position: pos }, i)) }),
|
|
8500
|
+
/* @__PURE__ */ jsx67(Separator, {}),
|
|
8501
|
+
/* @__PURE__ */ jsx67("div", { className: "shrink-0 flex justify-center py-4", children: /* @__PURE__ */ jsx67(Button, { variant: "tertiary", size: "md", onClick: onViewHistory, children: "View trade history" }) })
|
|
8232
8502
|
] });
|
|
8233
8503
|
}
|
|
8234
8504
|
function PositionRow({ position }) {
|
|
8235
8505
|
const { label, suffix } = positionTitleParts(position);
|
|
8236
|
-
return /* @__PURE__ */
|
|
8237
|
-
/* @__PURE__ */
|
|
8238
|
-
/* @__PURE__ */
|
|
8239
|
-
/* @__PURE__ */
|
|
8240
|
-
suffix && /* @__PURE__ */
|
|
8506
|
+
return /* @__PURE__ */ jsxs40(Item, { size: "sm", children: [
|
|
8507
|
+
/* @__PURE__ */ jsxs40(ItemContent, { children: [
|
|
8508
|
+
/* @__PURE__ */ jsxs40(ItemTitle, { children: [
|
|
8509
|
+
/* @__PURE__ */ jsx67("span", { className: "text-on-prominent", children: label }),
|
|
8510
|
+
suffix && /* @__PURE__ */ jsx67("span", { className: "text-on-subtle", children: ` ${suffix}` })
|
|
8241
8511
|
] }),
|
|
8242
|
-
/* @__PURE__ */
|
|
8512
|
+
/* @__PURE__ */ jsx67(MetaNote, { market: position.market, duration: position.duration })
|
|
8243
8513
|
] }),
|
|
8244
|
-
/* @__PURE__ */
|
|
8514
|
+
/* @__PURE__ */ jsx67(ItemActions, { children: /* @__PURE__ */ jsx67(PnlMeta, { pnl: position.pnl, win: position.win, stake: position.stake }) })
|
|
8245
8515
|
] });
|
|
8246
8516
|
}
|
|
8247
8517
|
var DIGITS_TYPE_LABEL = {
|
|
@@ -8267,29 +8537,29 @@ function positionTitleParts(p) {
|
|
|
8267
8537
|
}
|
|
8268
8538
|
}
|
|
8269
8539
|
function MetaNote({ market, duration }) {
|
|
8270
|
-
return /* @__PURE__ */
|
|
8540
|
+
return /* @__PURE__ */ jsxs40("span", { className: "text-xs text-on-subtle whitespace-nowrap", children: [
|
|
8271
8541
|
market,
|
|
8272
8542
|
" \xB7 ",
|
|
8273
8543
|
duration
|
|
8274
8544
|
] });
|
|
8275
8545
|
}
|
|
8276
8546
|
function PnlMeta({ pnl, win, stake }) {
|
|
8277
|
-
return /* @__PURE__ */
|
|
8278
|
-
/* @__PURE__ */
|
|
8279
|
-
/* @__PURE__ */
|
|
8547
|
+
return /* @__PURE__ */ jsxs40("div", { className: "flex flex-col items-end gap-0.5", children: [
|
|
8548
|
+
/* @__PURE__ */ jsx67("span", { className: `font-display font-semibold tabular-nums text-base ${win ? "text-semantic-win" : "text-semantic-loss"}`, children: pnl }),
|
|
8549
|
+
/* @__PURE__ */ jsx67("span", { className: "tabular-nums text-xs text-on-subtle", children: stake })
|
|
8280
8550
|
] });
|
|
8281
8551
|
}
|
|
8282
8552
|
function DefaultEmptyState({ onViewHistory }) {
|
|
8283
|
-
return /* @__PURE__ */
|
|
8284
|
-
/* @__PURE__ */
|
|
8285
|
-
/* @__PURE__ */
|
|
8286
|
-
/* @__PURE__ */
|
|
8553
|
+
return /* @__PURE__ */ jsx67(Empty, { className: "flex min-h-0 flex-1 flex-col justify-center border-none rounded-none p-6 text-center", children: /* @__PURE__ */ jsxs40(EmptyHeader, { className: "gap-4", children: [
|
|
8554
|
+
/* @__PURE__ */ jsx67(EmptyMedia, { children: /* @__PURE__ */ jsx67(History2, { className: "size-8 text-on-subtle" }) }),
|
|
8555
|
+
/* @__PURE__ */ jsx67(EmptyTitle, { className: "h6 text-on-subtle", children: "No trades yet." }),
|
|
8556
|
+
/* @__PURE__ */ jsx67(Button, { variant: "tertiary", size: "md", onClick: onViewHistory, children: "View trade history" })
|
|
8287
8557
|
] }) });
|
|
8288
8558
|
}
|
|
8289
8559
|
|
|
8290
8560
|
// components/blocks/game-loading-block.tsx
|
|
8291
|
-
import * as
|
|
8292
|
-
import { jsx as
|
|
8561
|
+
import * as React24 from "react";
|
|
8562
|
+
import { jsx as jsx68, jsxs as jsxs41 } from "react/jsx-runtime";
|
|
8293
8563
|
function useSmoothProgress({
|
|
8294
8564
|
checkpoints,
|
|
8295
8565
|
reached,
|
|
@@ -8299,19 +8569,19 @@ function useSmoothProgress({
|
|
|
8299
8569
|
readyLabel = "Ready"
|
|
8300
8570
|
}) {
|
|
8301
8571
|
var _a, _b;
|
|
8302
|
-
const [progress, setProgress] =
|
|
8303
|
-
const [delayed, setDelayed] =
|
|
8304
|
-
const checkpointsRef =
|
|
8305
|
-
const reachedRef =
|
|
8306
|
-
const doneRef =
|
|
8307
|
-
|
|
8572
|
+
const [progress, setProgress] = React24.useState(0);
|
|
8573
|
+
const [delayed, setDelayed] = React24.useState(false);
|
|
8574
|
+
const checkpointsRef = React24.useRef(checkpoints);
|
|
8575
|
+
const reachedRef = React24.useRef(reached);
|
|
8576
|
+
const doneRef = React24.useRef(done);
|
|
8577
|
+
React24.useEffect(() => {
|
|
8308
8578
|
checkpointsRef.current = checkpoints;
|
|
8309
8579
|
reachedRef.current = reached;
|
|
8310
8580
|
doneRef.current = done;
|
|
8311
8581
|
});
|
|
8312
|
-
const progressRef =
|
|
8313
|
-
const lastAdvanceRef =
|
|
8314
|
-
|
|
8582
|
+
const progressRef = React24.useRef(0);
|
|
8583
|
+
const lastAdvanceRef = React24.useRef(0);
|
|
8584
|
+
React24.useEffect(() => {
|
|
8315
8585
|
let raf = 0;
|
|
8316
8586
|
let last = 0;
|
|
8317
8587
|
const tick = (ts) => {
|
|
@@ -8365,14 +8635,14 @@ function GameLoadingBlock({
|
|
|
8365
8635
|
backgroundImageUrl,
|
|
8366
8636
|
className
|
|
8367
8637
|
}) {
|
|
8368
|
-
const [go, setGo] =
|
|
8369
|
-
const [reduced, setReduced] =
|
|
8370
|
-
|
|
8638
|
+
const [go, setGo] = React24.useState(false);
|
|
8639
|
+
const [reduced, setReduced] = React24.useState(false);
|
|
8640
|
+
React24.useEffect(() => {
|
|
8371
8641
|
if (typeof window !== "undefined" && typeof window.matchMedia === "function") {
|
|
8372
8642
|
setReduced(window.matchMedia("(prefers-reduced-motion: reduce)").matches);
|
|
8373
8643
|
}
|
|
8374
8644
|
}, []);
|
|
8375
|
-
|
|
8645
|
+
React24.useEffect(() => {
|
|
8376
8646
|
if (!exiting) return;
|
|
8377
8647
|
const raf = requestAnimationFrame(() => setGo(true));
|
|
8378
8648
|
const timer = setTimeout(() => onExitEnd == null ? void 0 : onExitEnd(), reduced ? 240 : 700);
|
|
@@ -8384,7 +8654,7 @@ function GameLoadingBlock({
|
|
|
8384
8654
|
const isAbsolute = exiting || contained;
|
|
8385
8655
|
const punched = Boolean(logoSrc);
|
|
8386
8656
|
const animate = exiting && go && !reduced;
|
|
8387
|
-
return /* @__PURE__ */
|
|
8657
|
+
return /* @__PURE__ */ jsxs41(
|
|
8388
8658
|
"div",
|
|
8389
8659
|
{
|
|
8390
8660
|
role: "status",
|
|
@@ -8400,7 +8670,7 @@ function GameLoadingBlock({
|
|
|
8400
8670
|
className
|
|
8401
8671
|
),
|
|
8402
8672
|
children: [
|
|
8403
|
-
/* @__PURE__ */
|
|
8673
|
+
/* @__PURE__ */ jsx68(
|
|
8404
8674
|
"div",
|
|
8405
8675
|
{
|
|
8406
8676
|
"aria-hidden": "true",
|
|
@@ -8418,7 +8688,7 @@ function GameLoadingBlock({
|
|
|
8418
8688
|
} : null)
|
|
8419
8689
|
}
|
|
8420
8690
|
),
|
|
8421
|
-
logoSrc && /* @__PURE__ */
|
|
8691
|
+
logoSrc && /* @__PURE__ */ jsx68(
|
|
8422
8692
|
"img",
|
|
8423
8693
|
{
|
|
8424
8694
|
src: logoSrc,
|
|
@@ -8427,16 +8697,16 @@ function GameLoadingBlock({
|
|
|
8427
8697
|
className: cn("game-loader-mark", animate && "game-loader-mark-exit")
|
|
8428
8698
|
}
|
|
8429
8699
|
),
|
|
8430
|
-
!exiting && /* @__PURE__ */
|
|
8431
|
-
/* @__PURE__ */
|
|
8700
|
+
!exiting && /* @__PURE__ */ jsxs41("div", { className: "absolute bottom-10 left-1/2 flex w-[200px] -translate-x-1/2 flex-col items-start gap-3.5", children: [
|
|
8701
|
+
/* @__PURE__ */ jsx68("div", { className: "relative h-2 w-full overflow-hidden rounded-xs bg-background-secondary-surface", children: /* @__PURE__ */ jsx68(
|
|
8432
8702
|
"div",
|
|
8433
8703
|
{
|
|
8434
8704
|
className: "absolute inset-y-0 left-0 overflow-hidden rounded-xs bg-background-brand-default",
|
|
8435
8705
|
style: { width: `${progress}%` },
|
|
8436
|
-
children: /* @__PURE__ */
|
|
8706
|
+
children: /* @__PURE__ */ jsx68("span", { "aria-hidden": "true", className: "game-loader-shimmer absolute inset-y-0 left-[-60%] w-[60%]" })
|
|
8437
8707
|
}
|
|
8438
8708
|
) }),
|
|
8439
|
-
/* @__PURE__ */
|
|
8709
|
+
/* @__PURE__ */ jsx68("span", { className: "caption text-text-subtle-default", children: delayed ? "Taking longer than usual\u2026" : label })
|
|
8440
8710
|
] })
|
|
8441
8711
|
]
|
|
8442
8712
|
}
|
|
@@ -8522,6 +8792,7 @@ export {
|
|
|
8522
8792
|
ContextMenuSubContent,
|
|
8523
8793
|
ContextMenuSubTrigger,
|
|
8524
8794
|
ContextMenuTrigger,
|
|
8795
|
+
DateWheelPicker,
|
|
8525
8796
|
Dialog,
|
|
8526
8797
|
DialogClose,
|
|
8527
8798
|
DialogContent,
|