@partbot/grid-garage 0.1.14 → 0.1.15
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/js/vehicle-garage.es.js +736 -733
- package/dist/js/vehicle-garage.js +3 -3
- package/package.json +1 -1
|
@@ -4394,9 +4394,12 @@ function Ol({ searchParams: e, namespace: t, selection: n }) {
|
|
|
4394
4394
|
function kl(e, t) {
|
|
4395
4395
|
return /^[a-z][a-z\d+\-.]*:/i.test(t) || t.startsWith("//") ? e.toString() : `${e.pathname}${e.search}${e.hash}`;
|
|
4396
4396
|
}
|
|
4397
|
-
function Al(
|
|
4397
|
+
function Al(e) {
|
|
4398
|
+
return /^\/collections\/[^/?]+/.test(e);
|
|
4399
|
+
}
|
|
4400
|
+
function jl({ baseUrl: e, selection: t, vehicleScopeTokens: n, yearTokens: r }) {
|
|
4398
4401
|
let i = typeof window > "u" ? "https://partbot.local" : window.location.origin, a = new URL(e, i);
|
|
4399
|
-
if (
|
|
4402
|
+
if (!Al(a.pathname)) return kl(a, e);
|
|
4400
4403
|
let o = El({
|
|
4401
4404
|
configuredParams: [n, r],
|
|
4402
4405
|
searchParams: a.searchParams
|
|
@@ -4407,9 +4410,9 @@ function Al({ baseUrl: e, selection: t, vehicleScopeTokens: n, yearTokens: r })
|
|
|
4407
4410
|
selection: t
|
|
4408
4411
|
}), kl(a, e);
|
|
4409
4412
|
}
|
|
4410
|
-
function
|
|
4411
|
-
if (typeof window > "u" || !t ||
|
|
4412
|
-
let i =
|
|
4413
|
+
function Ml({ selection: e, modifyQueryString: t = !0, vehicleScopeTokens: n, yearTokens: r }) {
|
|
4414
|
+
if (typeof window > "u" || !t || !Al(window.location.pathname)) return !1;
|
|
4415
|
+
let i = jl({
|
|
4413
4416
|
baseUrl: `${window.location.pathname}${window.location.search}`,
|
|
4414
4417
|
selection: e,
|
|
4415
4418
|
vehicleScopeTokens: n,
|
|
@@ -4417,8 +4420,8 @@ function jl({ selection: e, modifyQueryString: t = !0, vehicleScopeTokens: n, ye
|
|
|
4417
4420
|
});
|
|
4418
4421
|
return i === `${window.location.pathname}${window.location.search}` ? !1 : (window.history.pushState(null, "", i), window.location.assign(i), !0);
|
|
4419
4422
|
}
|
|
4420
|
-
function
|
|
4421
|
-
if (typeof window > "u" || !e ||
|
|
4423
|
+
function Nl({ modifyQueryString: e = !0, vehicleScopeTokens: t, yearTokens: n } = {}) {
|
|
4424
|
+
if (typeof window > "u" || !e || !Al(window.location.pathname)) return !1;
|
|
4422
4425
|
let r = new URLSearchParams(window.location.search), i = El({
|
|
4423
4426
|
configuredParams: [t, n],
|
|
4424
4427
|
searchParams: r
|
|
@@ -4433,42 +4436,42 @@ function Ml({ modifyQueryString: e = !0, vehicleScopeTokens: t, yearTokens: n }
|
|
|
4433
4436
|
}
|
|
4434
4437
|
//#endregion
|
|
4435
4438
|
//#region src/lib/events.ts
|
|
4436
|
-
function
|
|
4439
|
+
function Pl(e, t, n) {
|
|
4437
4440
|
let r = new CustomEvent(e, { detail: t });
|
|
4438
4441
|
n.forEach((e) => e.dispatchEvent(r));
|
|
4439
4442
|
}
|
|
4440
|
-
function
|
|
4443
|
+
function Fl(e, t) {
|
|
4441
4444
|
let n = { vehicle_ids: t.vehicle_ids };
|
|
4442
4445
|
if (typeof document < "u") {
|
|
4443
4446
|
if (e === "plate") {
|
|
4444
|
-
|
|
4447
|
+
Pl("plate-search-change", n, [document, window]);
|
|
4445
4448
|
return;
|
|
4446
4449
|
}
|
|
4447
|
-
|
|
4450
|
+
Pl("vehicle-search-change", {
|
|
4448
4451
|
vehicle_ids: t.vehicle_ids,
|
|
4449
4452
|
vehicle: t,
|
|
4450
4453
|
userSelected: !0
|
|
4451
4454
|
}, [document, window]);
|
|
4452
4455
|
}
|
|
4453
4456
|
}
|
|
4454
|
-
function
|
|
4455
|
-
typeof document > "u" ||
|
|
4456
|
-
}
|
|
4457
|
-
function Il() {
|
|
4458
|
-
typeof document > "u" || Nl("partbot-clear-vehicle", {}, [document, window]);
|
|
4457
|
+
function Il(e) {
|
|
4458
|
+
typeof document > "u" || Pl("vehicle-garage-change", e, [document, window]);
|
|
4459
4459
|
}
|
|
4460
4460
|
function Ll() {
|
|
4461
|
-
typeof document > "u" ||
|
|
4461
|
+
typeof document > "u" || Pl("partbot-clear-vehicle", {}, [document, window]);
|
|
4462
4462
|
}
|
|
4463
|
-
function Rl(
|
|
4464
|
-
typeof document > "u" ||
|
|
4463
|
+
function Rl() {
|
|
4464
|
+
typeof document > "u" || Pl("plate-search-modal-close", { timestamp: Date.now() }, [document]);
|
|
4465
|
+
}
|
|
4466
|
+
function zl(e) {
|
|
4467
|
+
typeof document > "u" || Pl("vehicle-garage-wheel-tyre-fitment", e, [document, window]);
|
|
4465
4468
|
}
|
|
4466
4469
|
//#endregion
|
|
4467
4470
|
//#region src/lib/url.ts
|
|
4468
|
-
function
|
|
4471
|
+
function Bl(e) {
|
|
4469
4472
|
return typeof window > "u" ? e : `${e}${window.location.search}`;
|
|
4470
4473
|
}
|
|
4471
|
-
function
|
|
4474
|
+
function Vl(e) {
|
|
4472
4475
|
if (typeof window > "u") return !1;
|
|
4473
4476
|
try {
|
|
4474
4477
|
let t = new URL(e, window.location.origin);
|
|
@@ -4479,33 +4482,33 @@ function Bl(e) {
|
|
|
4479
4482
|
}
|
|
4480
4483
|
//#endregion
|
|
4481
4484
|
//#region node_modules/clsx/dist/clsx.mjs
|
|
4482
|
-
function
|
|
4485
|
+
function Hl(e) {
|
|
4483
4486
|
var t, n, r = "";
|
|
4484
4487
|
if (typeof e == "string" || typeof e == "number") r += e;
|
|
4485
4488
|
else if (typeof e == "object") if (Array.isArray(e)) {
|
|
4486
4489
|
var i = e.length;
|
|
4487
|
-
for (t = 0; t < i; t++) e[t] && (n =
|
|
4490
|
+
for (t = 0; t < i; t++) e[t] && (n = Hl(e[t])) && (r && (r += " "), r += n);
|
|
4488
4491
|
} else for (n in e) e[n] && (r && (r += " "), r += n);
|
|
4489
4492
|
return r;
|
|
4490
4493
|
}
|
|
4491
|
-
function
|
|
4492
|
-
for (var e, t, n = 0, r = "", i = arguments.length; n < i; n++) (e = arguments[n]) && (t =
|
|
4494
|
+
function Ul() {
|
|
4495
|
+
for (var e, t, n = 0, r = "", i = arguments.length; n < i; n++) (e = arguments[n]) && (t = Hl(e)) && (r && (r += " "), r += t);
|
|
4493
4496
|
return r;
|
|
4494
4497
|
}
|
|
4495
4498
|
//#endregion
|
|
4496
4499
|
//#region node_modules/class-variance-authority/dist/index.mjs
|
|
4497
|
-
var
|
|
4498
|
-
if (t?.variants == null) return
|
|
4500
|
+
var Wl = (e) => typeof e == "boolean" ? `${e}` : e === 0 ? "0" : e, Gl = Ul, Kl = (e, t) => (n) => {
|
|
4501
|
+
if (t?.variants == null) return Gl(e, n?.class, n?.className);
|
|
4499
4502
|
let { variants: r, defaultVariants: i } = t, a = Object.keys(r).map((e) => {
|
|
4500
4503
|
let t = n?.[e], a = i?.[e];
|
|
4501
4504
|
if (t === null) return null;
|
|
4502
|
-
let o =
|
|
4505
|
+
let o = Wl(t) || Wl(a);
|
|
4503
4506
|
return r[e][o];
|
|
4504
4507
|
}), o = n && Object.entries(n).reduce((e, t) => {
|
|
4505
4508
|
let [n, r] = t;
|
|
4506
4509
|
return r === void 0 || (e[n] = r), e;
|
|
4507
4510
|
}, {});
|
|
4508
|
-
return
|
|
4511
|
+
return Gl(e, a, t?.compoundVariants?.reduce((e, t) => {
|
|
4509
4512
|
let { class: n, className: r, ...a } = t;
|
|
4510
4513
|
return Object.entries(a).every((e) => {
|
|
4511
4514
|
let [t, n] = e;
|
|
@@ -4522,100 +4525,100 @@ var Ul = (e) => typeof e == "boolean" ? `${e}` : e === 0 ? "0" : e, Wl = Hl, Gl
|
|
|
4522
4525
|
r
|
|
4523
4526
|
] : e;
|
|
4524
4527
|
}, []), n?.class, n?.className);
|
|
4525
|
-
},
|
|
4528
|
+
}, ql = (e, t) => {
|
|
4526
4529
|
let n = Array(e.length + t.length);
|
|
4527
4530
|
for (let t = 0; t < e.length; t++) n[t] = e[t];
|
|
4528
4531
|
for (let r = 0; r < t.length; r++) n[e.length + r] = t[r];
|
|
4529
4532
|
return n;
|
|
4530
|
-
},
|
|
4533
|
+
}, Jl = (e, t) => ({
|
|
4531
4534
|
classGroupId: e,
|
|
4532
4535
|
validator: t
|
|
4533
|
-
}),
|
|
4536
|
+
}), Yl = (e = /* @__PURE__ */ new Map(), t = null, n) => ({
|
|
4534
4537
|
nextPart: e,
|
|
4535
4538
|
validators: t,
|
|
4536
4539
|
classGroupId: n
|
|
4537
|
-
}),
|
|
4538
|
-
let t =
|
|
4540
|
+
}), Xl = "-", Zl = [], Ql = "arbitrary..", $l = (e) => {
|
|
4541
|
+
let t = nu(e), { conflictingClassGroups: n, conflictingClassGroupModifiers: r } = e;
|
|
4539
4542
|
return {
|
|
4540
4543
|
getClassGroupId: (e) => {
|
|
4541
|
-
if (e.startsWith("[") && e.endsWith("]")) return
|
|
4542
|
-
let n = e.split(
|
|
4543
|
-
return
|
|
4544
|
+
if (e.startsWith("[") && e.endsWith("]")) return tu(e);
|
|
4545
|
+
let n = e.split(Xl);
|
|
4546
|
+
return eu(n, +(n[0] === "" && n.length > 1), t);
|
|
4544
4547
|
},
|
|
4545
4548
|
getConflictingClassGroupIds: (e, t) => {
|
|
4546
4549
|
if (t) {
|
|
4547
4550
|
let t = r[e], i = n[e];
|
|
4548
|
-
return t ? i ?
|
|
4551
|
+
return t ? i ? ql(i, t) : t : i || Zl;
|
|
4549
4552
|
}
|
|
4550
|
-
return n[e] ||
|
|
4553
|
+
return n[e] || Zl;
|
|
4551
4554
|
}
|
|
4552
4555
|
};
|
|
4553
|
-
},
|
|
4556
|
+
}, eu = (e, t, n) => {
|
|
4554
4557
|
if (e.length - t === 0) return n.classGroupId;
|
|
4555
4558
|
let r = e[t], i = n.nextPart.get(r);
|
|
4556
4559
|
if (i) {
|
|
4557
|
-
let n =
|
|
4560
|
+
let n = eu(e, t + 1, i);
|
|
4558
4561
|
if (n) return n;
|
|
4559
4562
|
}
|
|
4560
4563
|
let a = n.validators;
|
|
4561
4564
|
if (a === null) return;
|
|
4562
|
-
let o = t === 0 ? e.join(
|
|
4565
|
+
let o = t === 0 ? e.join(Xl) : e.slice(t).join(Xl), s = a.length;
|
|
4563
4566
|
for (let e = 0; e < s; e++) {
|
|
4564
4567
|
let t = a[e];
|
|
4565
4568
|
if (t.validator(o)) return t.classGroupId;
|
|
4566
4569
|
}
|
|
4567
|
-
},
|
|
4570
|
+
}, tu = (e) => e.slice(1, -1).indexOf(":") === -1 ? void 0 : (() => {
|
|
4568
4571
|
let t = e.slice(1, -1), n = t.indexOf(":"), r = t.slice(0, n);
|
|
4569
|
-
return r ?
|
|
4570
|
-
})(),
|
|
4572
|
+
return r ? Ql + r : void 0;
|
|
4573
|
+
})(), nu = (e) => {
|
|
4571
4574
|
let { theme: t, classGroups: n } = e;
|
|
4572
|
-
return
|
|
4573
|
-
},
|
|
4574
|
-
let n =
|
|
4575
|
+
return ru(n, t);
|
|
4576
|
+
}, ru = (e, t) => {
|
|
4577
|
+
let n = Yl();
|
|
4575
4578
|
for (let r in e) {
|
|
4576
4579
|
let i = e[r];
|
|
4577
|
-
|
|
4580
|
+
iu(i, n, r, t);
|
|
4578
4581
|
}
|
|
4579
4582
|
return n;
|
|
4580
|
-
},
|
|
4583
|
+
}, iu = (e, t, n, r) => {
|
|
4581
4584
|
let i = e.length;
|
|
4582
4585
|
for (let a = 0; a < i; a++) {
|
|
4583
4586
|
let i = e[a];
|
|
4584
|
-
|
|
4587
|
+
au(i, t, n, r);
|
|
4585
4588
|
}
|
|
4586
|
-
},
|
|
4589
|
+
}, au = (e, t, n, r) => {
|
|
4587
4590
|
if (typeof e == "string") {
|
|
4588
|
-
|
|
4591
|
+
ou(e, t, n);
|
|
4589
4592
|
return;
|
|
4590
4593
|
}
|
|
4591
4594
|
if (typeof e == "function") {
|
|
4592
|
-
|
|
4595
|
+
su(e, t, n, r);
|
|
4593
4596
|
return;
|
|
4594
4597
|
}
|
|
4595
|
-
|
|
4596
|
-
},
|
|
4597
|
-
let r = e === "" ? t :
|
|
4598
|
+
cu(e, t, n, r);
|
|
4599
|
+
}, ou = (e, t, n) => {
|
|
4600
|
+
let r = e === "" ? t : lu(t, e);
|
|
4598
4601
|
r.classGroupId = n;
|
|
4599
|
-
},
|
|
4600
|
-
if (
|
|
4601
|
-
|
|
4602
|
+
}, su = (e, t, n, r) => {
|
|
4603
|
+
if (uu(e)) {
|
|
4604
|
+
iu(e(r), t, n, r);
|
|
4602
4605
|
return;
|
|
4603
4606
|
}
|
|
4604
|
-
t.validators === null && (t.validators = []), t.validators.push(
|
|
4605
|
-
},
|
|
4607
|
+
t.validators === null && (t.validators = []), t.validators.push(Jl(n, e));
|
|
4608
|
+
}, cu = (e, t, n, r) => {
|
|
4606
4609
|
let i = Object.entries(e), a = i.length;
|
|
4607
4610
|
for (let e = 0; e < a; e++) {
|
|
4608
4611
|
let [a, o] = i[e];
|
|
4609
|
-
|
|
4612
|
+
iu(o, lu(t, a), n, r);
|
|
4610
4613
|
}
|
|
4611
|
-
},
|
|
4612
|
-
let n = e, r = t.split(
|
|
4614
|
+
}, lu = (e, t) => {
|
|
4615
|
+
let n = e, r = t.split(Xl), i = r.length;
|
|
4613
4616
|
for (let e = 0; e < i; e++) {
|
|
4614
4617
|
let t = r[e], i = n.nextPart.get(t);
|
|
4615
|
-
i || (i =
|
|
4618
|
+
i || (i = Yl(), n.nextPart.set(t, i)), n = i;
|
|
4616
4619
|
}
|
|
4617
4620
|
return n;
|
|
4618
|
-
},
|
|
4621
|
+
}, uu = (e) => "isThemeGetter" in e && e.isThemeGetter === !0, du = (e) => {
|
|
4619
4622
|
if (e < 1) return {
|
|
4620
4623
|
get: () => void 0,
|
|
4621
4624
|
set: () => {}
|
|
@@ -4633,19 +4636,19 @@ var Ul = (e) => typeof e == "boolean" ? `${e}` : e === 0 ? "0" : e, Wl = Hl, Gl
|
|
|
4633
4636
|
e in n ? n[e] = t : i(e, t);
|
|
4634
4637
|
}
|
|
4635
4638
|
};
|
|
4636
|
-
},
|
|
4639
|
+
}, fu = "!", pu = ":", mu = [], hu = (e, t, n, r, i) => ({
|
|
4637
4640
|
modifiers: e,
|
|
4638
4641
|
hasImportantModifier: t,
|
|
4639
4642
|
baseClassName: n,
|
|
4640
4643
|
maybePostfixModifierPosition: r,
|
|
4641
4644
|
isExternal: i
|
|
4642
|
-
}),
|
|
4645
|
+
}), gu = (e) => {
|
|
4643
4646
|
let { prefix: t, experimentalParseClassName: n } = e, r = (e) => {
|
|
4644
4647
|
let t = [], n = 0, r = 0, i = 0, a, o = e.length;
|
|
4645
4648
|
for (let s = 0; s < o; s++) {
|
|
4646
4649
|
let o = e[s];
|
|
4647
4650
|
if (n === 0 && r === 0) {
|
|
4648
|
-
if (o ===
|
|
4651
|
+
if (o === pu) {
|
|
4649
4652
|
t.push(e.slice(i, s)), i = s + 1;
|
|
4650
4653
|
continue;
|
|
4651
4654
|
}
|
|
@@ -4657,13 +4660,13 @@ var Ul = (e) => typeof e == "boolean" ? `${e}` : e === 0 ? "0" : e, Wl = Hl, Gl
|
|
|
4657
4660
|
o === "[" ? n++ : o === "]" ? n-- : o === "(" ? r++ : o === ")" && r--;
|
|
4658
4661
|
}
|
|
4659
4662
|
let s = t.length === 0 ? e : e.slice(i), c = s, l = !1;
|
|
4660
|
-
s.endsWith(
|
|
4663
|
+
s.endsWith(fu) ? (c = s.slice(0, -1), l = !0) : s.startsWith(fu) && (c = s.slice(1), l = !0);
|
|
4661
4664
|
let u = a && a > i ? a - i : void 0;
|
|
4662
|
-
return
|
|
4665
|
+
return hu(t, l, c, u);
|
|
4663
4666
|
};
|
|
4664
4667
|
if (t) {
|
|
4665
|
-
let e = t +
|
|
4666
|
-
r = (t) => t.startsWith(e) ? n(t.slice(e.length)) : mu
|
|
4668
|
+
let e = t + pu, n = r;
|
|
4669
|
+
r = (t) => t.startsWith(e) ? n(t.slice(e.length)) : hu(mu, !1, t, void 0, !0);
|
|
4667
4670
|
}
|
|
4668
4671
|
if (n) {
|
|
4669
4672
|
let e = r;
|
|
@@ -4673,7 +4676,7 @@ var Ul = (e) => typeof e == "boolean" ? `${e}` : e === 0 ? "0" : e, Wl = Hl, Gl
|
|
|
4673
4676
|
});
|
|
4674
4677
|
}
|
|
4675
4678
|
return r;
|
|
4676
|
-
},
|
|
4679
|
+
}, _u = (e) => {
|
|
4677
4680
|
let t = /* @__PURE__ */ new Map();
|
|
4678
4681
|
return e.orderSensitiveModifiers.forEach((e, n) => {
|
|
4679
4682
|
t.set(e, 1e6 + n);
|
|
@@ -4685,13 +4688,13 @@ var Ul = (e) => typeof e == "boolean" ? `${e}` : e === 0 ? "0" : e, Wl = Hl, Gl
|
|
|
4685
4688
|
}
|
|
4686
4689
|
return r.length > 0 && (r.sort(), n.push(...r)), n;
|
|
4687
4690
|
};
|
|
4688
|
-
},
|
|
4689
|
-
cache:
|
|
4690
|
-
parseClassName:
|
|
4691
|
-
sortModifiers:
|
|
4692
|
-
|
|
4693
|
-
}),
|
|
4694
|
-
let { parseClassName: n, getClassGroupId: r, getConflictingClassGroupIds: i, sortModifiers: a } = t, o = [], s = e.trim().split(
|
|
4691
|
+
}, vu = (e) => ({
|
|
4692
|
+
cache: du(e.cacheSize),
|
|
4693
|
+
parseClassName: gu(e),
|
|
4694
|
+
sortModifiers: _u(e),
|
|
4695
|
+
...$l(e)
|
|
4696
|
+
}), yu = /\s+/, bu = (e, t) => {
|
|
4697
|
+
let { parseClassName: n, getClassGroupId: r, getConflictingClassGroupIds: i, sortModifiers: a } = t, o = [], s = e.trim().split(yu), c = "";
|
|
4695
4698
|
for (let e = s.length - 1; e >= 0; --e) {
|
|
4696
4699
|
let t = s[e], { isExternal: l, modifiers: u, hasImportantModifier: d, baseClassName: f, maybePostfixModifierPosition: p } = n(t);
|
|
4697
4700
|
if (l) {
|
|
@@ -4710,7 +4713,7 @@ var Ul = (e) => typeof e == "boolean" ? `${e}` : e === 0 ? "0" : e, Wl = Hl, Gl
|
|
|
4710
4713
|
}
|
|
4711
4714
|
m = !1;
|
|
4712
4715
|
}
|
|
4713
|
-
let g = u.length === 0 ? "" : u.length === 1 ? u[0] : a(u).join(":"), _ = d ? g +
|
|
4716
|
+
let g = u.length === 0 ? "" : u.length === 1 ? u[0] : a(u).join(":"), _ = d ? g + fu : g, v = _ + h;
|
|
4714
4717
|
if (o.indexOf(v) > -1) continue;
|
|
4715
4718
|
o.push(v);
|
|
4716
4719
|
let y = i(h, m);
|
|
@@ -4721,34 +4724,34 @@ var Ul = (e) => typeof e == "boolean" ? `${e}` : e === 0 ? "0" : e, Wl = Hl, Gl
|
|
|
4721
4724
|
c = t + (c.length > 0 ? " " + c : c);
|
|
4722
4725
|
}
|
|
4723
4726
|
return c;
|
|
4724
|
-
},
|
|
4727
|
+
}, xu = (...e) => {
|
|
4725
4728
|
let t = 0, n, r, i = "";
|
|
4726
|
-
for (; t < e.length;) (n = e[t++]) && (r =
|
|
4729
|
+
for (; t < e.length;) (n = e[t++]) && (r = Su(n)) && (i && (i += " "), i += r);
|
|
4727
4730
|
return i;
|
|
4728
|
-
},
|
|
4731
|
+
}, Su = (e) => {
|
|
4729
4732
|
if (typeof e == "string") return e;
|
|
4730
4733
|
let t, n = "";
|
|
4731
|
-
for (let r = 0; r < e.length; r++) e[r] && (t =
|
|
4734
|
+
for (let r = 0; r < e.length; r++) e[r] && (t = Su(e[r])) && (n && (n += " "), n += t);
|
|
4732
4735
|
return n;
|
|
4733
|
-
},
|
|
4734
|
-
let n, r, i, a, o = (o) => (n =
|
|
4736
|
+
}, Cu = (e, ...t) => {
|
|
4737
|
+
let n, r, i, a, o = (o) => (n = vu(t.reduce((e, t) => t(e), e())), r = n.cache.get, i = n.cache.set, a = s, s(o)), s = (e) => {
|
|
4735
4738
|
let t = r(e);
|
|
4736
4739
|
if (t) return t;
|
|
4737
|
-
let a =
|
|
4740
|
+
let a = bu(e, n);
|
|
4738
4741
|
return i(e, a), a;
|
|
4739
4742
|
};
|
|
4740
|
-
return a = o, (...e) => a(
|
|
4741
|
-
},
|
|
4742
|
-
let t = (t) => t[e] ||
|
|
4743
|
+
return a = o, (...e) => a(xu(...e));
|
|
4744
|
+
}, wu = [], Tu = (e) => {
|
|
4745
|
+
let t = (t) => t[e] || wu;
|
|
4743
4746
|
return t.isThemeGetter = !0, t;
|
|
4744
|
-
},
|
|
4745
|
-
let r = Tu.exec(e);
|
|
4746
|
-
return r ? r[1] ? t(r[1]) : n(r[2]) : !1;
|
|
4747
|
-
}, ad = (e, t, n = !1) => {
|
|
4747
|
+
}, Eu = /^\[(?:(\w[\w-]*):)?(.+)\]$/i, Du = /^\((?:(\w[\w-]*):)?(.+)\)$/i, Ou = /^\d+(?:\.\d+)?\/\d+(?:\.\d+)?$/, ku = /^(\d+(\.\d+)?)?(xs|sm|md|lg|xl)$/, Au = /\d+(%|px|r?em|[sdl]?v([hwib]|min|max)|pt|pc|in|cm|mm|cap|ch|ex|r?lh|cq(w|h|i|b|min|max))|\b(calc|min|max|clamp)\(.+\)|^0$/, ju = /^(rgba?|hsla?|hwb|(ok)?(lab|lch)|color-mix)\(.+\)$/, Mu = /^(inset_)?-?((\d+)?\.?(\d+)[a-z]+|0)_-?((\d+)?\.?(\d+)[a-z]+|0)/, Nu = /^(url|image|image-set|cross-fade|element|(repeating-)?(linear|radial|conic)-gradient)\(.+\)$/, Pu = (e) => Ou.test(e), Y = (e) => !!e && !Number.isNaN(Number(e)), Fu = (e) => !!e && Number.isInteger(Number(e)), Iu = (e) => e.endsWith("%") && Y(e.slice(0, -1)), Lu = (e) => ku.test(e), Ru = () => !0, zu = (e) => Au.test(e) && !ju.test(e), Bu = () => !1, Vu = (e) => Mu.test(e), Hu = (e) => Nu.test(e), Uu = (e) => !X(e) && !Z(e), Wu = (e) => ad(e, ld, Bu), X = (e) => Eu.test(e), Gu = (e) => ad(e, ud, zu), Ku = (e) => ad(e, dd, Y), qu = (e) => ad(e, pd, Ru), Ju = (e) => ad(e, fd, Bu), Yu = (e) => ad(e, sd, Bu), Xu = (e) => ad(e, cd, Hu), Zu = (e) => ad(e, md, Vu), Z = (e) => Du.test(e), Qu = (e) => od(e, ud), $u = (e) => od(e, fd), ed = (e) => od(e, sd), td = (e) => od(e, ld), nd = (e) => od(e, cd), rd = (e) => od(e, md, !0), id = (e) => od(e, pd, !0), ad = (e, t, n) => {
|
|
4748
4748
|
let r = Eu.exec(e);
|
|
4749
|
+
return r ? r[1] ? t(r[1]) : n(r[2]) : !1;
|
|
4750
|
+
}, od = (e, t, n = !1) => {
|
|
4751
|
+
let r = Du.exec(e);
|
|
4749
4752
|
return r ? r[1] ? t(r[1]) : n : !1;
|
|
4750
|
-
},
|
|
4751
|
-
let e =
|
|
4753
|
+
}, sd = (e) => e === "position" || e === "percentage", cd = (e) => e === "image" || e === "url", ld = (e) => e === "length" || e === "size" || e === "bg-size", ud = (e) => e === "length", dd = (e) => e === "number", fd = (e) => e === "family-name", pd = (e) => e === "number" || e === "weight", md = (e) => e === "shadow", hd = /* @__PURE__ */ Cu(() => {
|
|
4754
|
+
let e = Tu("color"), t = Tu("font"), n = Tu("text"), r = Tu("font-weight"), i = Tu("tracking"), a = Tu("leading"), o = Tu("breakpoint"), s = Tu("container"), c = Tu("spacing"), l = Tu("radius"), u = Tu("shadow"), d = Tu("inset-shadow"), f = Tu("text-shadow"), p = Tu("drop-shadow"), m = Tu("blur"), h = Tu("perspective"), g = Tu("aspect"), _ = Tu("ease"), v = Tu("animate"), y = () => [
|
|
4752
4755
|
"auto",
|
|
4753
4756
|
"avoid",
|
|
4754
4757
|
"all",
|
|
@@ -4790,12 +4793,12 @@ var Ul = (e) => typeof e == "boolean" ? `${e}` : e === 0 ? "0" : e, Wl = Hl, Gl
|
|
|
4790
4793
|
X,
|
|
4791
4794
|
c
|
|
4792
4795
|
], T = () => [
|
|
4793
|
-
|
|
4796
|
+
Pu,
|
|
4794
4797
|
"full",
|
|
4795
4798
|
"auto",
|
|
4796
4799
|
...w()
|
|
4797
4800
|
], E = () => [
|
|
4798
|
-
|
|
4801
|
+
Fu,
|
|
4799
4802
|
"none",
|
|
4800
4803
|
"subgrid",
|
|
4801
4804
|
Z,
|
|
@@ -4804,15 +4807,15 @@ var Ul = (e) => typeof e == "boolean" ? `${e}` : e === 0 ? "0" : e, Wl = Hl, Gl
|
|
|
4804
4807
|
"auto",
|
|
4805
4808
|
{ span: [
|
|
4806
4809
|
"full",
|
|
4807
|
-
|
|
4810
|
+
Fu,
|
|
4808
4811
|
Z,
|
|
4809
4812
|
X
|
|
4810
4813
|
] },
|
|
4811
|
-
|
|
4814
|
+
Fu,
|
|
4812
4815
|
Z,
|
|
4813
4816
|
X
|
|
4814
4817
|
], O = () => [
|
|
4815
|
-
|
|
4818
|
+
Fu,
|
|
4816
4819
|
"auto",
|
|
4817
4820
|
Z,
|
|
4818
4821
|
X
|
|
@@ -4842,7 +4845,7 @@ var Ul = (e) => typeof e == "boolean" ? `${e}` : e === 0 ? "0" : e, Wl = Hl, Gl
|
|
|
4842
4845
|
"center-safe",
|
|
4843
4846
|
"end-safe"
|
|
4844
4847
|
], M = () => ["auto", ...w()], N = () => [
|
|
4845
|
-
|
|
4848
|
+
Pu,
|
|
4846
4849
|
"auto",
|
|
4847
4850
|
"full",
|
|
4848
4851
|
"dvw",
|
|
@@ -4856,7 +4859,7 @@ var Ul = (e) => typeof e == "boolean" ? `${e}` : e === 0 ? "0" : e, Wl = Hl, Gl
|
|
|
4856
4859
|
"fit",
|
|
4857
4860
|
...w()
|
|
4858
4861
|
], P = () => [
|
|
4859
|
-
|
|
4862
|
+
Pu,
|
|
4860
4863
|
"screen",
|
|
4861
4864
|
"full",
|
|
4862
4865
|
"dvw",
|
|
@@ -4867,7 +4870,7 @@ var Ul = (e) => typeof e == "boolean" ? `${e}` : e === 0 ? "0" : e, Wl = Hl, Gl
|
|
|
4867
4870
|
"fit",
|
|
4868
4871
|
...w()
|
|
4869
4872
|
], F = () => [
|
|
4870
|
-
|
|
4873
|
+
Pu,
|
|
4871
4874
|
"screen",
|
|
4872
4875
|
"full",
|
|
4873
4876
|
"lh",
|
|
@@ -4884,8 +4887,8 @@ var Ul = (e) => typeof e == "boolean" ? `${e}` : e === 0 ? "0" : e, Wl = Hl, Gl
|
|
|
4884
4887
|
X
|
|
4885
4888
|
], L = () => [
|
|
4886
4889
|
...b(),
|
|
4887
|
-
|
|
4888
|
-
|
|
4890
|
+
ed,
|
|
4891
|
+
Yu,
|
|
4889
4892
|
{ position: [Z, X] }
|
|
4890
4893
|
], R = () => ["no-repeat", { repeat: [
|
|
4891
4894
|
"",
|
|
@@ -4897,13 +4900,13 @@ var Ul = (e) => typeof e == "boolean" ? `${e}` : e === 0 ? "0" : e, Wl = Hl, Gl
|
|
|
4897
4900
|
"auto",
|
|
4898
4901
|
"cover",
|
|
4899
4902
|
"contain",
|
|
4900
|
-
|
|
4901
|
-
|
|
4903
|
+
td,
|
|
4904
|
+
Wu,
|
|
4902
4905
|
{ size: [Z, X] }
|
|
4903
4906
|
], ee = () => [
|
|
4904
|
-
|
|
4905
|
-
|
|
4906
|
-
|
|
4907
|
+
Iu,
|
|
4908
|
+
Qu,
|
|
4909
|
+
Gu
|
|
4907
4910
|
], B = () => [
|
|
4908
4911
|
"",
|
|
4909
4912
|
"none",
|
|
@@ -4914,8 +4917,8 @@ var Ul = (e) => typeof e == "boolean" ? `${e}` : e === 0 ? "0" : e, Wl = Hl, Gl
|
|
|
4914
4917
|
], V = () => [
|
|
4915
4918
|
"",
|
|
4916
4919
|
Y,
|
|
4917
|
-
|
|
4918
|
-
|
|
4920
|
+
Qu,
|
|
4921
|
+
Gu
|
|
4919
4922
|
], te = () => [
|
|
4920
4923
|
"solid",
|
|
4921
4924
|
"dashed",
|
|
@@ -4940,9 +4943,9 @@ var Ul = (e) => typeof e == "boolean" ? `${e}` : e === 0 ? "0" : e, Wl = Hl, Gl
|
|
|
4940
4943
|
"luminosity"
|
|
4941
4944
|
], H = () => [
|
|
4942
4945
|
Y,
|
|
4943
|
-
|
|
4944
|
-
|
|
4945
|
-
|
|
4946
|
+
Iu,
|
|
4947
|
+
ed,
|
|
4948
|
+
Yu
|
|
4946
4949
|
], re = () => [
|
|
4947
4950
|
"",
|
|
4948
4951
|
"none",
|
|
@@ -4964,7 +4967,7 @@ var Ul = (e) => typeof e == "boolean" ? `${e}` : e === 0 ? "0" : e, Wl = Hl, Gl
|
|
|
4964
4967
|
Z,
|
|
4965
4968
|
X
|
|
4966
4969
|
], U = () => [
|
|
4967
|
-
|
|
4970
|
+
Pu,
|
|
4968
4971
|
"full",
|
|
4969
4972
|
...w()
|
|
4970
4973
|
];
|
|
@@ -4978,17 +4981,17 @@ var Ul = (e) => typeof e == "boolean" ? `${e}` : e === 0 ? "0" : e, Wl = Hl, Gl
|
|
|
4978
4981
|
"bounce"
|
|
4979
4982
|
],
|
|
4980
4983
|
aspect: ["video"],
|
|
4981
|
-
blur: [
|
|
4982
|
-
breakpoint: [
|
|
4983
|
-
color: [
|
|
4984
|
-
container: [
|
|
4985
|
-
"drop-shadow": [
|
|
4984
|
+
blur: [Lu],
|
|
4985
|
+
breakpoint: [Lu],
|
|
4986
|
+
color: [Ru],
|
|
4987
|
+
container: [Lu],
|
|
4988
|
+
"drop-shadow": [Lu],
|
|
4986
4989
|
ease: [
|
|
4987
4990
|
"in",
|
|
4988
4991
|
"out",
|
|
4989
4992
|
"in-out"
|
|
4990
4993
|
],
|
|
4991
|
-
font: [
|
|
4994
|
+
font: [Uu],
|
|
4992
4995
|
"font-weight": [
|
|
4993
4996
|
"thin",
|
|
4994
4997
|
"extralight",
|
|
@@ -5000,7 +5003,7 @@ var Ul = (e) => typeof e == "boolean" ? `${e}` : e === 0 ? "0" : e, Wl = Hl, Gl
|
|
|
5000
5003
|
"extrabold",
|
|
5001
5004
|
"black"
|
|
5002
5005
|
],
|
|
5003
|
-
"inset-shadow": [
|
|
5006
|
+
"inset-shadow": [Lu],
|
|
5004
5007
|
leading: [
|
|
5005
5008
|
"none",
|
|
5006
5009
|
"tight",
|
|
@@ -5017,11 +5020,11 @@ var Ul = (e) => typeof e == "boolean" ? `${e}` : e === 0 ? "0" : e, Wl = Hl, Gl
|
|
|
5017
5020
|
"distant",
|
|
5018
5021
|
"none"
|
|
5019
5022
|
],
|
|
5020
|
-
radius: [
|
|
5021
|
-
shadow: [
|
|
5023
|
+
radius: [Lu],
|
|
5024
|
+
shadow: [Lu],
|
|
5022
5025
|
spacing: ["px", Y],
|
|
5023
|
-
text: [
|
|
5024
|
-
"text-shadow": [
|
|
5026
|
+
text: [Lu],
|
|
5027
|
+
"text-shadow": [Lu],
|
|
5025
5028
|
tracking: [
|
|
5026
5029
|
"tighter",
|
|
5027
5030
|
"tight",
|
|
@@ -5035,7 +5038,7 @@ var Ul = (e) => typeof e == "boolean" ? `${e}` : e === 0 ? "0" : e, Wl = Hl, Gl
|
|
|
5035
5038
|
aspect: [{ aspect: [
|
|
5036
5039
|
"auto",
|
|
5037
5040
|
"square",
|
|
5038
|
-
|
|
5041
|
+
Pu,
|
|
5039
5042
|
X,
|
|
5040
5043
|
Z,
|
|
5041
5044
|
g
|
|
@@ -5141,13 +5144,13 @@ var Ul = (e) => typeof e == "boolean" ? `${e}` : e === 0 ? "0" : e, Wl = Hl, Gl
|
|
|
5141
5144
|
"collapse"
|
|
5142
5145
|
],
|
|
5143
5146
|
z: [{ z: [
|
|
5144
|
-
|
|
5147
|
+
Fu,
|
|
5145
5148
|
"auto",
|
|
5146
5149
|
Z,
|
|
5147
5150
|
X
|
|
5148
5151
|
] }],
|
|
5149
5152
|
basis: [{ basis: [
|
|
5150
|
-
|
|
5153
|
+
Pu,
|
|
5151
5154
|
"full",
|
|
5152
5155
|
"auto",
|
|
5153
5156
|
s,
|
|
@@ -5166,7 +5169,7 @@ var Ul = (e) => typeof e == "boolean" ? `${e}` : e === 0 ? "0" : e, Wl = Hl, Gl
|
|
|
5166
5169
|
] }],
|
|
5167
5170
|
flex: [{ flex: [
|
|
5168
5171
|
Y,
|
|
5169
|
-
|
|
5172
|
+
Pu,
|
|
5170
5173
|
"auto",
|
|
5171
5174
|
"initial",
|
|
5172
5175
|
"none",
|
|
@@ -5185,7 +5188,7 @@ var Ul = (e) => typeof e == "boolean" ? `${e}` : e === 0 ? "0" : e, Wl = Hl, Gl
|
|
|
5185
5188
|
X
|
|
5186
5189
|
] }],
|
|
5187
5190
|
order: [{ order: [
|
|
5188
|
-
|
|
5191
|
+
Fu,
|
|
5189
5192
|
"first",
|
|
5190
5193
|
"last",
|
|
5191
5194
|
"none",
|
|
@@ -5296,15 +5299,15 @@ var Ul = (e) => typeof e == "boolean" ? `${e}` : e === 0 ? "0" : e, Wl = Hl, Gl
|
|
|
5296
5299
|
"font-size": [{ text: [
|
|
5297
5300
|
"base",
|
|
5298
5301
|
n,
|
|
5299
|
-
|
|
5300
|
-
|
|
5302
|
+
Qu,
|
|
5303
|
+
Gu
|
|
5301
5304
|
] }],
|
|
5302
5305
|
"font-smoothing": ["antialiased", "subpixel-antialiased"],
|
|
5303
5306
|
"font-style": ["italic", "not-italic"],
|
|
5304
5307
|
"font-weight": [{ font: [
|
|
5305
5308
|
r,
|
|
5306
|
-
|
|
5307
|
-
|
|
5309
|
+
id,
|
|
5310
|
+
qu
|
|
5308
5311
|
] }],
|
|
5309
5312
|
"font-stretch": [{ "font-stretch": [
|
|
5310
5313
|
"ultra-condensed",
|
|
@@ -5316,12 +5319,12 @@ var Ul = (e) => typeof e == "boolean" ? `${e}` : e === 0 ? "0" : e, Wl = Hl, Gl
|
|
|
5316
5319
|
"expanded",
|
|
5317
5320
|
"extra-expanded",
|
|
5318
5321
|
"ultra-expanded",
|
|
5319
|
-
|
|
5322
|
+
Iu,
|
|
5320
5323
|
X
|
|
5321
5324
|
] }],
|
|
5322
5325
|
"font-family": [{ font: [
|
|
5323
|
-
|
|
5324
|
-
|
|
5326
|
+
$u,
|
|
5327
|
+
Ju,
|
|
5325
5328
|
t
|
|
5326
5329
|
] }],
|
|
5327
5330
|
"font-features": [{ "font-features": [X] }],
|
|
@@ -5340,7 +5343,7 @@ var Ul = (e) => typeof e == "boolean" ? `${e}` : e === 0 ? "0" : e, Wl = Hl, Gl
|
|
|
5340
5343
|
Y,
|
|
5341
5344
|
"none",
|
|
5342
5345
|
Z,
|
|
5343
|
-
|
|
5346
|
+
Ku
|
|
5344
5347
|
] }],
|
|
5345
5348
|
leading: [{ leading: [a, ...w()] }],
|
|
5346
5349
|
"list-image": [{ "list-image": [
|
|
@@ -5378,7 +5381,7 @@ var Ul = (e) => typeof e == "boolean" ? `${e}` : e === 0 ? "0" : e, Wl = Hl, Gl
|
|
|
5378
5381
|
"from-font",
|
|
5379
5382
|
"auto",
|
|
5380
5383
|
Z,
|
|
5381
|
-
|
|
5384
|
+
Gu
|
|
5382
5385
|
] }],
|
|
5383
5386
|
"text-decoration-color": [{ decoration: I() }],
|
|
5384
5387
|
"underline-offset": [{ "underline-offset": [
|
|
@@ -5479,7 +5482,7 @@ var Ul = (e) => typeof e == "boolean" ? `${e}` : e === 0 ? "0" : e, Wl = Hl, Gl
|
|
|
5479
5482
|
"l",
|
|
5480
5483
|
"tl"
|
|
5481
5484
|
] },
|
|
5482
|
-
|
|
5485
|
+
Fu,
|
|
5483
5486
|
Z,
|
|
5484
5487
|
X
|
|
5485
5488
|
],
|
|
@@ -5489,13 +5492,13 @@ var Ul = (e) => typeof e == "boolean" ? `${e}` : e === 0 ? "0" : e, Wl = Hl, Gl
|
|
|
5489
5492
|
X
|
|
5490
5493
|
],
|
|
5491
5494
|
conic: [
|
|
5492
|
-
|
|
5495
|
+
Fu,
|
|
5493
5496
|
Z,
|
|
5494
5497
|
X
|
|
5495
5498
|
]
|
|
5496
5499
|
},
|
|
5497
|
-
|
|
5498
|
-
|
|
5500
|
+
nd,
|
|
5501
|
+
Xu
|
|
5499
5502
|
] }],
|
|
5500
5503
|
"bg-color": [{ bg: I() }],
|
|
5501
5504
|
"gradient-from-pos": [{ from: ee() }],
|
|
@@ -5569,37 +5572,37 @@ var Ul = (e) => typeof e == "boolean" ? `${e}` : e === 0 ? "0" : e, Wl = Hl, Gl
|
|
|
5569
5572
|
"outline-w": [{ outline: [
|
|
5570
5573
|
"",
|
|
5571
5574
|
Y,
|
|
5572
|
-
|
|
5573
|
-
|
|
5575
|
+
Qu,
|
|
5576
|
+
Gu
|
|
5574
5577
|
] }],
|
|
5575
5578
|
"outline-color": [{ outline: I() }],
|
|
5576
5579
|
shadow: [{ shadow: [
|
|
5577
5580
|
"",
|
|
5578
5581
|
"none",
|
|
5579
5582
|
u,
|
|
5580
|
-
|
|
5581
|
-
|
|
5583
|
+
rd,
|
|
5584
|
+
Zu
|
|
5582
5585
|
] }],
|
|
5583
5586
|
"shadow-color": [{ shadow: I() }],
|
|
5584
5587
|
"inset-shadow": [{ "inset-shadow": [
|
|
5585
5588
|
"none",
|
|
5586
5589
|
d,
|
|
5587
|
-
|
|
5588
|
-
|
|
5590
|
+
rd,
|
|
5591
|
+
Zu
|
|
5589
5592
|
] }],
|
|
5590
5593
|
"inset-shadow-color": [{ "inset-shadow": I() }],
|
|
5591
5594
|
"ring-w": [{ ring: V() }],
|
|
5592
5595
|
"ring-w-inset": ["ring-inset"],
|
|
5593
5596
|
"ring-color": [{ ring: I() }],
|
|
5594
|
-
"ring-offset-w": [{ "ring-offset": [Y,
|
|
5597
|
+
"ring-offset-w": [{ "ring-offset": [Y, Gu] }],
|
|
5595
5598
|
"ring-offset-color": [{ "ring-offset": I() }],
|
|
5596
5599
|
"inset-ring-w": [{ "inset-ring": V() }],
|
|
5597
5600
|
"inset-ring-color": [{ "inset-ring": I() }],
|
|
5598
5601
|
"text-shadow": [{ "text-shadow": [
|
|
5599
5602
|
"none",
|
|
5600
5603
|
f,
|
|
5601
|
-
|
|
5602
|
-
|
|
5604
|
+
rd,
|
|
5605
|
+
Zu
|
|
5603
5606
|
] }],
|
|
5604
5607
|
"text-shadow-color": [{ "text-shadow": I() }],
|
|
5605
5608
|
opacity: [{ opacity: [
|
|
@@ -5715,8 +5718,8 @@ var Ul = (e) => typeof e == "boolean" ? `${e}` : e === 0 ? "0" : e, Wl = Hl, Gl
|
|
|
5715
5718
|
"",
|
|
5716
5719
|
"none",
|
|
5717
5720
|
p,
|
|
5718
|
-
|
|
5719
|
-
|
|
5721
|
+
rd,
|
|
5722
|
+
Zu
|
|
5720
5723
|
] }],
|
|
5721
5724
|
"drop-shadow-color": [{ "drop-shadow": I() }],
|
|
5722
5725
|
grayscale: [{ grayscale: [
|
|
@@ -6002,9 +6005,9 @@ var Ul = (e) => typeof e == "boolean" ? `${e}` : e === 0 ? "0" : e, Wl = Hl, Gl
|
|
|
6002
6005
|
fill: [{ fill: ["none", ...I()] }],
|
|
6003
6006
|
"stroke-w": [{ stroke: [
|
|
6004
6007
|
Y,
|
|
6005
|
-
|
|
6006
|
-
|
|
6007
|
-
|
|
6008
|
+
Qu,
|
|
6009
|
+
Gu,
|
|
6010
|
+
Ku
|
|
6008
6011
|
] }],
|
|
6009
6012
|
stroke: [{ stroke: ["none", ...I()] }],
|
|
6010
6013
|
"forced-color-adjust": [{ "forced-color-adjust": ["auto", "none"] }]
|
|
@@ -6194,11 +6197,11 @@ var Ul = (e) => typeof e == "boolean" ? `${e}` : e === 0 ? "0" : e, Wl = Hl, Gl
|
|
|
6194
6197
|
//#endregion
|
|
6195
6198
|
//#region src/lib/utils.ts
|
|
6196
6199
|
function Q(...e) {
|
|
6197
|
-
return
|
|
6200
|
+
return hd(Ul(e));
|
|
6198
6201
|
}
|
|
6199
6202
|
//#endregion
|
|
6200
6203
|
//#region src/components/ui/button.tsx
|
|
6201
|
-
var
|
|
6204
|
+
var gd = Kl("group/button inline-flex shrink-0 items-center justify-center rounded-lg border border-transparent bg-clip-padding text-sm font-medium whitespace-nowrap transition-all outline-none select-none focus-visible:border-ring focus-visible:ring-3 focus-visible:ring-ring/50 active:not-aria-[haspopup]:translate-y-px disabled:pointer-events-none disabled:opacity-50 aria-invalid:border-destructive aria-invalid:ring-3 aria-invalid:ring-destructive/20 dark:aria-invalid:border-destructive/50 dark:aria-invalid:ring-destructive/40 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4", {
|
|
6202
6205
|
variants: {
|
|
6203
6206
|
variant: {
|
|
6204
6207
|
default: "bg-primary text-primary-foreground [a]:hover:bg-primary/80",
|
|
@@ -6223,13 +6226,13 @@ var hd = Gl("group/button inline-flex shrink-0 items-center justify-center round
|
|
|
6223
6226
|
variant: "default",
|
|
6224
6227
|
size: "default"
|
|
6225
6228
|
}
|
|
6226
|
-
}),
|
|
6229
|
+
}), _d = e.forwardRef(function({ className: e, variant: t = "default", size: n = "default", asChild: r = !1, ...i }, a) {
|
|
6227
6230
|
return /* @__PURE__ */ h(r ? C : "button", {
|
|
6228
6231
|
ref: a,
|
|
6229
6232
|
"data-slot": "button",
|
|
6230
6233
|
"data-variant": t,
|
|
6231
6234
|
"data-size": n,
|
|
6232
|
-
className: Q(
|
|
6235
|
+
className: Q(gd({
|
|
6233
6236
|
variant: t,
|
|
6234
6237
|
size: n,
|
|
6235
6238
|
className: e
|
|
@@ -6239,7 +6242,7 @@ var hd = Gl("group/button inline-flex shrink-0 items-center justify-center round
|
|
|
6239
6242
|
});
|
|
6240
6243
|
//#endregion
|
|
6241
6244
|
//#region src/components/ui/sheet.tsx
|
|
6242
|
-
function
|
|
6245
|
+
function vd(...e) {
|
|
6243
6246
|
return (t) => {
|
|
6244
6247
|
e.forEach((e) => {
|
|
6245
6248
|
if (typeof e == "function") {
|
|
@@ -6250,7 +6253,7 @@ function _d(...e) {
|
|
|
6250
6253
|
});
|
|
6251
6254
|
};
|
|
6252
6255
|
}
|
|
6253
|
-
function
|
|
6256
|
+
function yd(e) {
|
|
6254
6257
|
if (!(e.getRootNode() instanceof ShadowRoot) || !e.id) return;
|
|
6255
6258
|
let t = e.ownerDocument.getElementById(e.id);
|
|
6256
6259
|
if (t && !t.hasAttribute("data-shadow-aria-mirror")) return;
|
|
@@ -6269,12 +6272,12 @@ function vd(e) {
|
|
|
6269
6272
|
n.hasAttribute("data-shadow-aria-mirror") && n.remove();
|
|
6270
6273
|
};
|
|
6271
6274
|
}
|
|
6272
|
-
function
|
|
6275
|
+
function bd(t, n) {
|
|
6273
6276
|
e.useLayoutEffect(() => {
|
|
6274
|
-
if (t.current) return
|
|
6277
|
+
if (t.current) return yd(t.current);
|
|
6275
6278
|
}, [n, t]);
|
|
6276
6279
|
}
|
|
6277
|
-
function
|
|
6280
|
+
function xd({ ...e }) {
|
|
6278
6281
|
return /* @__PURE__ */ h(Ln, {
|
|
6279
6282
|
"data-slot": "sheet",
|
|
6280
6283
|
...e
|
|
@@ -6293,13 +6296,13 @@ e.forwardRef(function(e, t) {
|
|
|
6293
6296
|
...e
|
|
6294
6297
|
});
|
|
6295
6298
|
});
|
|
6296
|
-
function
|
|
6299
|
+
function Sd({ ...e }) {
|
|
6297
6300
|
return /* @__PURE__ */ h(zn, {
|
|
6298
6301
|
"data-slot": "sheet-portal",
|
|
6299
6302
|
...e
|
|
6300
6303
|
});
|
|
6301
6304
|
}
|
|
6302
|
-
var
|
|
6305
|
+
var Cd = e.forwardRef(function({ className: e, style: t, ...n }, r) {
|
|
6303
6306
|
return /* @__PURE__ */ h("div", {
|
|
6304
6307
|
ref: r,
|
|
6305
6308
|
"data-slot": "sheet-overlay",
|
|
@@ -6319,10 +6322,10 @@ var Sd = e.forwardRef(function({ className: e, style: t, ...n }, r) {
|
|
|
6319
6322
|
},
|
|
6320
6323
|
...n
|
|
6321
6324
|
});
|
|
6322
|
-
}),
|
|
6323
|
-
return /* @__PURE__ */ g(
|
|
6325
|
+
}), wd = e.forwardRef(function({ className: e, children: t, side: n = "right", showCloseButton: r = !0, container: i, showOverlay: a = !0, overlayStyle: o, onOverlayClick: s, ...c }, l) {
|
|
6326
|
+
return /* @__PURE__ */ g(Sd, {
|
|
6324
6327
|
container: i ?? void 0,
|
|
6325
|
-
children: [a ? /* @__PURE__ */ h(
|
|
6328
|
+
children: [a ? /* @__PURE__ */ h(Cd, {
|
|
6326
6329
|
"data-state": "open",
|
|
6327
6330
|
style: o,
|
|
6328
6331
|
onClick: s
|
|
@@ -6335,7 +6338,7 @@ var Sd = e.forwardRef(function({ className: e, style: t, ...n }, r) {
|
|
|
6335
6338
|
children: [t, r && /* @__PURE__ */ h(Un, {
|
|
6336
6339
|
"data-slot": "sheet-close",
|
|
6337
6340
|
asChild: !0,
|
|
6338
|
-
children: /* @__PURE__ */ g(
|
|
6341
|
+
children: /* @__PURE__ */ g(_d, {
|
|
6339
6342
|
variant: "ghost",
|
|
6340
6343
|
className: "absolute top-3 right-3",
|
|
6341
6344
|
size: "icon-sm",
|
|
@@ -6348,32 +6351,32 @@ var Sd = e.forwardRef(function({ className: e, style: t, ...n }, r) {
|
|
|
6348
6351
|
})]
|
|
6349
6352
|
});
|
|
6350
6353
|
});
|
|
6351
|
-
function
|
|
6354
|
+
function Td({ className: e, ...t }) {
|
|
6352
6355
|
return /* @__PURE__ */ h("div", {
|
|
6353
6356
|
"data-slot": "sheet-header",
|
|
6354
6357
|
className: Q("flex flex-col gap-0.5 p-4", e),
|
|
6355
6358
|
...t
|
|
6356
6359
|
});
|
|
6357
6360
|
}
|
|
6358
|
-
var
|
|
6361
|
+
var Ed = e.forwardRef(function({ className: t, children: n, ...r }, i) {
|
|
6359
6362
|
let a = e.useRef(null);
|
|
6360
|
-
return
|
|
6361
|
-
ref:
|
|
6363
|
+
return bd(a, n), /* @__PURE__ */ h(Vn, {
|
|
6364
|
+
ref: vd(i, a),
|
|
6362
6365
|
"data-slot": "sheet-title",
|
|
6363
6366
|
className: Q("font-heading text-base font-medium text-foreground", t),
|
|
6364
6367
|
...r,
|
|
6365
6368
|
children: n
|
|
6366
6369
|
});
|
|
6367
|
-
}),
|
|
6370
|
+
}), Dd = e.forwardRef(function({ className: t, children: n, ...r }, i) {
|
|
6368
6371
|
let a = e.useRef(null);
|
|
6369
|
-
return
|
|
6370
|
-
ref:
|
|
6372
|
+
return bd(a, n), /* @__PURE__ */ h(Hn, {
|
|
6373
|
+
ref: vd(i, a),
|
|
6371
6374
|
"data-slot": "sheet-description",
|
|
6372
6375
|
className: Q("text-sm text-muted-foreground", t),
|
|
6373
6376
|
...r,
|
|
6374
6377
|
children: n
|
|
6375
6378
|
});
|
|
6376
|
-
}),
|
|
6379
|
+
}), Od = e.forwardRef(function({ className: e, orientation: t = "horizontal", ...n }, r) {
|
|
6377
6380
|
return /* @__PURE__ */ h(Ls, {
|
|
6378
6381
|
ref: r,
|
|
6379
6382
|
"data-slot": "tabs",
|
|
@@ -6383,28 +6386,28 @@ var Td = e.forwardRef(function({ className: t, children: n, ...r }, i) {
|
|
|
6383
6386
|
className: Q("group/tabs flex gap-2 data-horizontal:flex-col", e),
|
|
6384
6387
|
...n
|
|
6385
6388
|
});
|
|
6386
|
-
}),
|
|
6389
|
+
}), kd = Kl("group/tabs-list inline-flex w-fit items-center justify-center rounded-lg p-[3px] text-muted-foreground group-data-horizontal/tabs:min-h-[32px] group-data-vertical/tabs:h-fit group-data-vertical/tabs:flex-col data-[variant=line]:rounded-none", {
|
|
6387
6390
|
variants: { variant: {
|
|
6388
6391
|
default: "bg-muted",
|
|
6389
6392
|
line: "gap-1 bg-transparent"
|
|
6390
6393
|
} },
|
|
6391
6394
|
defaultVariants: { variant: "default" }
|
|
6392
|
-
}),
|
|
6395
|
+
}), Ad = e.forwardRef(function({ className: e, variant: t = "default", ...n }, r) {
|
|
6393
6396
|
return /* @__PURE__ */ h(Rs, {
|
|
6394
6397
|
ref: r,
|
|
6395
6398
|
"data-slot": "tabs-list",
|
|
6396
6399
|
"data-variant": t,
|
|
6397
|
-
className: Q(
|
|
6400
|
+
className: Q(kd({ variant: t }), e),
|
|
6398
6401
|
...n
|
|
6399
6402
|
});
|
|
6400
|
-
}),
|
|
6403
|
+
}), jd = e.forwardRef(function({ className: e, ...t }, n) {
|
|
6401
6404
|
return /* @__PURE__ */ h(zs, {
|
|
6402
6405
|
ref: n,
|
|
6403
6406
|
"data-slot": "tabs-trigger",
|
|
6404
6407
|
className: Q("relative inline-flex min-h-[calc(100%-1px)] flex-1 items-center justify-center gap-1.5 rounded-md border border-transparent px-1.5 py-0.5 text-sm font-medium whitespace-nowrap text-foreground/60 transition-all group-data-vertical/tabs:w-full group-data-vertical/tabs:justify-start hover:text-foreground focus-visible:border-ring focus-visible:ring-[3px] focus-visible:ring-ring/50 focus-visible:outline-1 focus-visible:outline-ring disabled:pointer-events-none disabled:opacity-50 has-data-[icon=inline-end]:pr-1 has-data-[icon=inline-start]:pl-1 dark:text-muted-foreground dark:hover:text-foreground [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4", "group-data-[variant=default]/tabs-list:data-[state=active]:shadow-sm group-data-[variant=line]/tabs-list:data-[state=active]:shadow-none", "group-data-[variant=line]/tabs-list:bg-transparent group-data-[variant=line]/tabs-list:data-[state=active]:bg-transparent dark:group-data-[variant=line]/tabs-list:data-[state=active]:border-transparent dark:group-data-[variant=line]/tabs-list:data-[state=active]:bg-transparent", "data-[state=active]:bg-background data-[state=active]:text-foreground dark:data-[state=active]:border-input dark:data-[state=active]:bg-input/30 dark:data-[state=active]:text-foreground", "after:absolute after:bg-foreground after:opacity-0 after:transition-opacity group-data-horizontal/tabs:after:inset-x-0 group-data-horizontal/tabs:after:bottom-[-5px] group-data-horizontal/tabs:after:h-0.5 group-data-vertical/tabs:after:inset-y-0 group-data-vertical/tabs:after:-right-1 group-data-vertical/tabs:after:w-0.5 group-data-[variant=line]/tabs-list:data-[state=active]:after:opacity-100", e),
|
|
6405
6408
|
...t
|
|
6406
6409
|
});
|
|
6407
|
-
}),
|
|
6410
|
+
}), Md = e.forwardRef(function({ className: e, ...t }, n) {
|
|
6408
6411
|
return /* @__PURE__ */ h(Bs, {
|
|
6409
6412
|
ref: n,
|
|
6410
6413
|
"data-slot": "tabs-content",
|
|
@@ -6414,7 +6417,7 @@ var Td = e.forwardRef(function({ className: t, children: n, ...r }, i) {
|
|
|
6414
6417
|
});
|
|
6415
6418
|
//#endregion
|
|
6416
6419
|
//#region src/components/ui/separator.tsx
|
|
6417
|
-
function
|
|
6420
|
+
function Nd({ className: e, orientation: t = "horizontal", decorative: n = !0, ...r }) {
|
|
6418
6421
|
return /* @__PURE__ */ h(xs, {
|
|
6419
6422
|
"data-slot": "separator",
|
|
6420
6423
|
decorative: n,
|
|
@@ -6425,96 +6428,96 @@ function Md({ className: e, orientation: t = "horizontal", decorative: n = !0, .
|
|
|
6425
6428
|
}
|
|
6426
6429
|
//#endregion
|
|
6427
6430
|
//#region node_modules/dompurify/dist/purify.es.mjs
|
|
6428
|
-
var { entries:
|
|
6429
|
-
|
|
6431
|
+
var { entries: Pd, setPrototypeOf: Fd, isFrozen: Id, getPrototypeOf: Ld, getOwnPropertyDescriptor: Rd } = Object, { freeze: zd, seal: Bd, create: Vd } = Object, { apply: Hd, construct: Ud } = typeof Reflect < "u" && Reflect;
|
|
6432
|
+
zd ||= function(e) {
|
|
6430
6433
|
return e;
|
|
6431
|
-
},
|
|
6434
|
+
}, Bd ||= function(e) {
|
|
6432
6435
|
return e;
|
|
6433
|
-
},
|
|
6436
|
+
}, Hd ||= function(e, t) {
|
|
6434
6437
|
var n = [...arguments].slice(2);
|
|
6435
6438
|
return e.apply(t, n);
|
|
6436
|
-
},
|
|
6439
|
+
}, Ud ||= function(e) {
|
|
6437
6440
|
return new e(...[...arguments].slice(1));
|
|
6438
6441
|
};
|
|
6439
|
-
var
|
|
6440
|
-
function
|
|
6442
|
+
var Wd = df(Array.prototype.forEach), Gd = df(Array.prototype.lastIndexOf), Kd = df(Array.prototype.pop), qd = df(Array.prototype.push), Jd = df(Array.prototype.splice), Yd = Array.isArray, Xd = df(String.prototype.toLowerCase), Zd = df(String.prototype.toString), Qd = df(String.prototype.match), $d = df(String.prototype.replace), ef = df(String.prototype.indexOf), tf = df(String.prototype.trim), nf = df(Number.prototype.toString), rf = df(Boolean.prototype.toString), af = typeof BigInt > "u" ? null : df(BigInt.prototype.toString), of = typeof Symbol > "u" ? null : df(Symbol.prototype.toString), sf = df(Object.prototype.hasOwnProperty), cf = df(Object.prototype.toString), lf = df(RegExp.prototype.test), uf = ff(TypeError);
|
|
6443
|
+
function df(e) {
|
|
6441
6444
|
return function(t) {
|
|
6442
6445
|
t instanceof RegExp && (t.lastIndex = 0);
|
|
6443
6446
|
var n = [...arguments].slice(1);
|
|
6444
|
-
return
|
|
6447
|
+
return Hd(e, t, n);
|
|
6445
6448
|
};
|
|
6446
6449
|
}
|
|
6447
|
-
function
|
|
6450
|
+
function ff(e) {
|
|
6448
6451
|
return function() {
|
|
6449
|
-
return
|
|
6452
|
+
return Ud(e, [...arguments]);
|
|
6450
6453
|
};
|
|
6451
6454
|
}
|
|
6452
6455
|
function $(e, t) {
|
|
6453
|
-
let n = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] :
|
|
6454
|
-
if (
|
|
6456
|
+
let n = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : Xd;
|
|
6457
|
+
if (Fd && Fd(e, null), !Yd(t)) return e;
|
|
6455
6458
|
let r = t.length;
|
|
6456
6459
|
for (; r--;) {
|
|
6457
6460
|
let i = t[r];
|
|
6458
6461
|
if (typeof i == "string") {
|
|
6459
6462
|
let e = n(i);
|
|
6460
|
-
e !== i && (
|
|
6463
|
+
e !== i && (Id(t) || (t[r] = e), i = e);
|
|
6461
6464
|
}
|
|
6462
6465
|
e[i] = !0;
|
|
6463
6466
|
}
|
|
6464
6467
|
return e;
|
|
6465
6468
|
}
|
|
6466
|
-
function
|
|
6467
|
-
for (let t = 0; t < e.length; t++)
|
|
6469
|
+
function pf(e) {
|
|
6470
|
+
for (let t = 0; t < e.length; t++) sf(e, t) || (e[t] = null);
|
|
6468
6471
|
return e;
|
|
6469
6472
|
}
|
|
6470
|
-
function
|
|
6471
|
-
let t =
|
|
6472
|
-
for (let [n, r] of
|
|
6473
|
+
function mf(e) {
|
|
6474
|
+
let t = Vd(null);
|
|
6475
|
+
for (let [n, r] of Pd(e)) sf(e, n) && (Yd(r) ? t[n] = pf(r) : r && typeof r == "object" && r.constructor === Object ? t[n] = mf(r) : t[n] = r);
|
|
6473
6476
|
return t;
|
|
6474
6477
|
}
|
|
6475
|
-
function
|
|
6478
|
+
function hf(e) {
|
|
6476
6479
|
switch (typeof e) {
|
|
6477
6480
|
case "string": return e;
|
|
6478
|
-
case "number": return
|
|
6479
|
-
case "boolean": return
|
|
6480
|
-
case "bigint": return
|
|
6481
|
-
case "symbol": return
|
|
6482
|
-
case "undefined": return
|
|
6481
|
+
case "number": return nf(e);
|
|
6482
|
+
case "boolean": return rf(e);
|
|
6483
|
+
case "bigint": return af ? af(e) : "0";
|
|
6484
|
+
case "symbol": return of ? of(e) : "Symbol()";
|
|
6485
|
+
case "undefined": return cf(e);
|
|
6483
6486
|
case "function":
|
|
6484
6487
|
case "object": {
|
|
6485
|
-
if (e === null) return
|
|
6486
|
-
let t = e, n =
|
|
6488
|
+
if (e === null) return cf(e);
|
|
6489
|
+
let t = e, n = gf(t, "toString");
|
|
6487
6490
|
if (typeof n == "function") {
|
|
6488
6491
|
let e = n(t);
|
|
6489
|
-
return typeof e == "string" ? e :
|
|
6492
|
+
return typeof e == "string" ? e : cf(e);
|
|
6490
6493
|
}
|
|
6491
|
-
return
|
|
6494
|
+
return cf(e);
|
|
6492
6495
|
}
|
|
6493
|
-
default: return
|
|
6496
|
+
default: return cf(e);
|
|
6494
6497
|
}
|
|
6495
6498
|
}
|
|
6496
|
-
function
|
|
6499
|
+
function gf(e, t) {
|
|
6497
6500
|
for (; e !== null;) {
|
|
6498
|
-
let n =
|
|
6501
|
+
let n = Rd(e, t);
|
|
6499
6502
|
if (n) {
|
|
6500
|
-
if (n.get) return
|
|
6501
|
-
if (typeof n.value == "function") return
|
|
6503
|
+
if (n.get) return df(n.get);
|
|
6504
|
+
if (typeof n.value == "function") return df(n.value);
|
|
6502
6505
|
}
|
|
6503
|
-
e =
|
|
6506
|
+
e = Ld(e);
|
|
6504
6507
|
}
|
|
6505
6508
|
function n() {
|
|
6506
6509
|
return null;
|
|
6507
6510
|
}
|
|
6508
6511
|
return n;
|
|
6509
6512
|
}
|
|
6510
|
-
function
|
|
6513
|
+
function _f(e) {
|
|
6511
6514
|
try {
|
|
6512
|
-
return
|
|
6515
|
+
return lf(e, ""), !0;
|
|
6513
6516
|
} catch {
|
|
6514
6517
|
return !1;
|
|
6515
6518
|
}
|
|
6516
6519
|
}
|
|
6517
|
-
var
|
|
6520
|
+
var vf = zd(/* @__PURE__ */ "a.abbr.acronym.address.area.article.aside.audio.b.bdi.bdo.big.blink.blockquote.body.br.button.canvas.caption.center.cite.code.col.colgroup.content.data.datalist.dd.decorator.del.details.dfn.dialog.dir.div.dl.dt.element.em.fieldset.figcaption.figure.font.footer.form.h1.h2.h3.h4.h5.h6.head.header.hgroup.hr.html.i.img.input.ins.kbd.label.legend.li.main.map.mark.marquee.menu.menuitem.meter.nav.nobr.ol.optgroup.option.output.p.picture.pre.progress.q.rp.rt.ruby.s.samp.search.section.select.shadow.slot.small.source.spacer.span.strike.strong.style.sub.summary.sup.table.tbody.td.template.textarea.tfoot.th.thead.time.tr.track.tt.u.ul.var.video.wbr".split(".")), yf = zd(/* @__PURE__ */ "svg.a.altglyph.altglyphdef.altglyphitem.animatecolor.animatemotion.animatetransform.circle.clippath.defs.desc.ellipse.enterkeyhint.exportparts.filter.font.g.glyph.glyphref.hkern.image.inputmode.line.lineargradient.marker.mask.metadata.mpath.part.path.pattern.polygon.polyline.radialgradient.rect.stop.style.switch.symbol.text.textpath.title.tref.tspan.view.vkern".split(".")), bf = zd([
|
|
6518
6521
|
"feBlend",
|
|
6519
6522
|
"feColorMatrix",
|
|
6520
6523
|
"feComponentTransfer",
|
|
@@ -6540,7 +6543,7 @@ var _f = Rd(/* @__PURE__ */ "a.abbr.acronym.address.area.article.aside.audio.b.b
|
|
|
6540
6543
|
"feSpotLight",
|
|
6541
6544
|
"feTile",
|
|
6542
6545
|
"feTurbulence"
|
|
6543
|
-
]),
|
|
6546
|
+
]), xf = zd([
|
|
6544
6547
|
"animate",
|
|
6545
6548
|
"color-profile",
|
|
6546
6549
|
"cursor",
|
|
@@ -6563,7 +6566,7 @@ var _f = Rd(/* @__PURE__ */ "a.abbr.acronym.address.area.article.aside.audio.b.b
|
|
|
6563
6566
|
"solidcolor",
|
|
6564
6567
|
"unknown",
|
|
6565
6568
|
"use"
|
|
6566
|
-
]),
|
|
6569
|
+
]), Sf = zd(/* @__PURE__ */ "math.menclose.merror.mfenced.mfrac.mglyph.mi.mlabeledtr.mmultiscripts.mn.mo.mover.mpadded.mphantom.mroot.mrow.ms.mspace.msqrt.mstyle.msub.msup.msubsup.mtable.mtd.mtext.mtr.munder.munderover.mprescripts".split(".")), Cf = zd([
|
|
6567
6570
|
"maction",
|
|
6568
6571
|
"maligngroup",
|
|
6569
6572
|
"malignmark",
|
|
@@ -6579,33 +6582,33 @@ var _f = Rd(/* @__PURE__ */ "a.abbr.acronym.address.area.article.aside.audio.b.b
|
|
|
6579
6582
|
"annotation-xml",
|
|
6580
6583
|
"mprescripts",
|
|
6581
6584
|
"none"
|
|
6582
|
-
]),
|
|
6585
|
+
]), wf = zd(["#text"]), Tf = zd(/* @__PURE__ */ "accept.action.align.alt.autocapitalize.autocomplete.autopictureinpicture.autoplay.background.bgcolor.border.capture.cellpadding.cellspacing.checked.cite.class.clear.color.cols.colspan.controls.controlslist.coords.crossorigin.datetime.decoding.default.dir.disabled.disablepictureinpicture.disableremoteplayback.download.draggable.enctype.enterkeyhint.exportparts.face.for.headers.height.hidden.high.href.hreflang.id.inert.inputmode.integrity.ismap.kind.label.lang.list.loading.loop.low.max.maxlength.media.method.min.minlength.multiple.muted.name.nonce.noshade.novalidate.nowrap.open.optimum.part.pattern.placeholder.playsinline.popover.popovertarget.popovertargetaction.poster.preload.pubdate.radiogroup.readonly.rel.required.rev.reversed.role.rows.rowspan.spellcheck.scope.selected.shape.size.sizes.slot.span.srclang.start.src.srcset.step.style.summary.tabindex.title.translate.type.usemap.valign.value.width.wrap.xmlns".split(".")), Ef = zd(/* @__PURE__ */ "accent-height.accumulate.additive.alignment-baseline.amplitude.ascent.attributename.attributetype.azimuth.basefrequency.baseline-shift.begin.bias.by.class.clip.clippathunits.clip-path.clip-rule.color.color-interpolation.color-interpolation-filters.color-profile.color-rendering.cx.cy.d.dx.dy.diffuseconstant.direction.display.divisor.dur.edgemode.elevation.end.exponent.fill.fill-opacity.fill-rule.filter.filterunits.flood-color.flood-opacity.font-family.font-size.font-size-adjust.font-stretch.font-style.font-variant.font-weight.fx.fy.g1.g2.glyph-name.glyphref.gradientunits.gradienttransform.height.href.id.image-rendering.in.in2.intercept.k.k1.k2.k3.k4.kerning.keypoints.keysplines.keytimes.lang.lengthadjust.letter-spacing.kernelmatrix.kernelunitlength.lighting-color.local.marker-end.marker-mid.marker-start.markerheight.markerunits.markerwidth.maskcontentunits.maskunits.max.mask.mask-type.media.method.mode.min.name.numoctaves.offset.operator.opacity.order.orient.orientation.origin.overflow.paint-order.path.pathlength.patterncontentunits.patterntransform.patternunits.points.preservealpha.preserveaspectratio.primitiveunits.r.rx.ry.radius.refx.refy.repeatcount.repeatdur.restart.result.rotate.scale.seed.shape-rendering.slope.specularconstant.specularexponent.spreadmethod.startoffset.stddeviation.stitchtiles.stop-color.stop-opacity.stroke-dasharray.stroke-dashoffset.stroke-linecap.stroke-linejoin.stroke-miterlimit.stroke-opacity.stroke.stroke-width.style.surfacescale.systemlanguage.tabindex.tablevalues.targetx.targety.transform.transform-origin.text-anchor.text-decoration.text-rendering.textlength.type.u1.u2.unicode.values.viewbox.visibility.version.vert-adv-y.vert-origin-x.vert-origin-y.width.word-spacing.wrap.writing-mode.xchannelselector.ychannelselector.x.x1.x2.xmlns.y.y1.y2.z.zoomandpan".split(".")), Df = zd(/* @__PURE__ */ "accent.accentunder.align.bevelled.close.columnalign.columnlines.columnspacing.columnspan.denomalign.depth.dir.display.displaystyle.encoding.fence.frame.height.href.id.largeop.length.linethickness.lquote.lspace.mathbackground.mathcolor.mathsize.mathvariant.maxsize.minsize.movablelimits.notation.numalign.open.rowalign.rowlines.rowspacing.rowspan.rspace.rquote.scriptlevel.scriptminsize.scriptsizemultiplier.selection.separator.separators.stretchy.subscriptshift.supscriptshift.symmetric.voffset.width.xmlns".split(".")), Of = zd([
|
|
6583
6586
|
"xlink:href",
|
|
6584
6587
|
"xml:id",
|
|
6585
6588
|
"xlink:title",
|
|
6586
6589
|
"xml:space",
|
|
6587
6590
|
"xmlns:xlink"
|
|
6588
|
-
]),
|
|
6591
|
+
]), kf = Bd(/\{\{[\w\W]*|[\w\W]*\}\}/gm), Af = Bd(/<%[\w\W]*|[\w\W]*%>/gm), jf = Bd(/\$\{[\w\W]*/gm), Mf = Bd(/^data-[\-\w.\u00B7-\uFFFF]+$/), Nf = Bd(/^aria-[\-\w]+$/), Pf = Bd(/^(?:(?:(?:f|ht)tps?|mailto|tel|callto|sms|cid|xmpp|matrix):|[^a-z]|[a-z+.\-]+(?:[^a-z+.\-:]|$))/i), Ff = Bd(/^(?:\w+script|data):/i), If = Bd(/[\u0000-\u0020\u00A0\u1680\u180E\u2000-\u2029\u205F\u3000]/g), Lf = Bd(/^html$/i), Rf = Bd(/^[a-z][.\w]*(-[.\w]+)+$/i), zf = /* @__PURE__ */ Object.freeze({
|
|
6589
6592
|
__proto__: null,
|
|
6590
|
-
ARIA_ATTR:
|
|
6591
|
-
ATTR_WHITESPACE:
|
|
6592
|
-
CUSTOM_ELEMENT:
|
|
6593
|
-
DATA_ATTR:
|
|
6594
|
-
DOCTYPE_NAME:
|
|
6595
|
-
ERB_EXPR:
|
|
6596
|
-
IS_ALLOWED_URI:
|
|
6597
|
-
IS_SCRIPT_OR_DATA:
|
|
6598
|
-
MUSTACHE_EXPR:
|
|
6599
|
-
TMPLIT_EXPR:
|
|
6600
|
-
}),
|
|
6593
|
+
ARIA_ATTR: Nf,
|
|
6594
|
+
ATTR_WHITESPACE: If,
|
|
6595
|
+
CUSTOM_ELEMENT: Rf,
|
|
6596
|
+
DATA_ATTR: Mf,
|
|
6597
|
+
DOCTYPE_NAME: Lf,
|
|
6598
|
+
ERB_EXPR: Af,
|
|
6599
|
+
IS_ALLOWED_URI: Pf,
|
|
6600
|
+
IS_SCRIPT_OR_DATA: Ff,
|
|
6601
|
+
MUSTACHE_EXPR: kf,
|
|
6602
|
+
TMPLIT_EXPR: jf
|
|
6603
|
+
}), Bf = {
|
|
6601
6604
|
element: 1,
|
|
6602
6605
|
text: 3,
|
|
6603
6606
|
progressingInstruction: 7,
|
|
6604
6607
|
comment: 8,
|
|
6605
6608
|
document: 9
|
|
6606
|
-
},
|
|
6609
|
+
}, Vf = function() {
|
|
6607
6610
|
return typeof window > "u" ? null : window;
|
|
6608
|
-
},
|
|
6611
|
+
}, Hf = function(e, t) {
|
|
6609
6612
|
if (typeof e != "object" || typeof e.createPolicy != "function") return null;
|
|
6610
6613
|
let n = null, r = "data-tt-policy-suffix";
|
|
6611
6614
|
t && t.hasAttribute(r) && (n = t.getAttribute(r));
|
|
@@ -6622,7 +6625,7 @@ var _f = Rd(/* @__PURE__ */ "a.abbr.acronym.address.area.article.aside.audio.b.b
|
|
|
6622
6625
|
} catch {
|
|
6623
6626
|
return console.warn("TrustedTypes policy " + i + " could not be created."), null;
|
|
6624
6627
|
}
|
|
6625
|
-
},
|
|
6628
|
+
}, Uf = function() {
|
|
6626
6629
|
return {
|
|
6627
6630
|
afterSanitizeAttributes: [],
|
|
6628
6631
|
afterSanitizeElements: [],
|
|
@@ -6635,28 +6638,28 @@ var _f = Rd(/* @__PURE__ */ "a.abbr.acronym.address.area.article.aside.audio.b.b
|
|
|
6635
6638
|
uponSanitizeShadowNode: []
|
|
6636
6639
|
};
|
|
6637
6640
|
};
|
|
6638
|
-
function
|
|
6639
|
-
let e = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] :
|
|
6640
|
-
if (t.version = "3.4.1", t.removed = [], !e || !e.document || e.document.nodeType !==
|
|
6641
|
-
let { document: n } = e, r = n, i = r.currentScript, { DocumentFragment: a, HTMLTemplateElement: o, Node: s, Element: c, NodeFilter: l, NamedNodeMap: u = e.NamedNodeMap || e.MozNamedAttrMap, HTMLFormElement: d, DOMParser: f, trustedTypes: p } = e, m = c.prototype, h =
|
|
6641
|
+
function Wf() {
|
|
6642
|
+
let e = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : Vf(), t = (e) => Wf(e);
|
|
6643
|
+
if (t.version = "3.4.1", t.removed = [], !e || !e.document || e.document.nodeType !== Bf.document || !e.Element) return t.isSupported = !1, t;
|
|
6644
|
+
let { document: n } = e, r = n, i = r.currentScript, { DocumentFragment: a, HTMLTemplateElement: o, Node: s, Element: c, NodeFilter: l, NamedNodeMap: u = e.NamedNodeMap || e.MozNamedAttrMap, HTMLFormElement: d, DOMParser: f, trustedTypes: p } = e, m = c.prototype, h = gf(m, "cloneNode"), g = gf(m, "remove"), _ = gf(m, "nextSibling"), v = gf(m, "childNodes"), y = gf(m, "parentNode");
|
|
6642
6645
|
if (typeof o == "function") {
|
|
6643
6646
|
let e = n.createElement("template");
|
|
6644
6647
|
e.content && e.content.ownerDocument && (n = e.content.ownerDocument);
|
|
6645
6648
|
}
|
|
6646
|
-
let b, x = "", { implementation: S, createNodeIterator: C, createDocumentFragment: w, getElementsByTagName: T } = n, { importNode: E } = r, D =
|
|
6647
|
-
t.isSupported = typeof
|
|
6648
|
-
let { MUSTACHE_EXPR: O, ERB_EXPR: k, TMPLIT_EXPR: A, DATA_ATTR: j, ARIA_ATTR: M, IS_SCRIPT_OR_DATA: N, ATTR_WHITESPACE: P, CUSTOM_ELEMENT: F } =
|
|
6649
|
-
..._f,
|
|
6649
|
+
let b, x = "", { implementation: S, createNodeIterator: C, createDocumentFragment: w, getElementsByTagName: T } = n, { importNode: E } = r, D = Uf();
|
|
6650
|
+
t.isSupported = typeof Pd == "function" && typeof y == "function" && S && S.createHTMLDocument !== void 0;
|
|
6651
|
+
let { MUSTACHE_EXPR: O, ERB_EXPR: k, TMPLIT_EXPR: A, DATA_ATTR: j, ARIA_ATTR: M, IS_SCRIPT_OR_DATA: N, ATTR_WHITESPACE: P, CUSTOM_ELEMENT: F } = zf, { IS_ALLOWED_URI: I } = zf, L = null, R = $({}, [
|
|
6650
6652
|
...vf,
|
|
6651
6653
|
...yf,
|
|
6652
|
-
...
|
|
6653
|
-
...
|
|
6654
|
+
...bf,
|
|
6655
|
+
...Sf,
|
|
6656
|
+
...wf
|
|
6654
6657
|
]), z = null, ee = $({}, [
|
|
6655
|
-
...wf,
|
|
6656
6658
|
...Tf,
|
|
6657
6659
|
...Ef,
|
|
6658
|
-
...Df
|
|
6659
|
-
|
|
6660
|
+
...Df,
|
|
6661
|
+
...Of
|
|
6662
|
+
]), B = Object.seal(Vd(null, {
|
|
6660
6663
|
tagNameCheck: {
|
|
6661
6664
|
writable: !0,
|
|
6662
6665
|
configurable: !1,
|
|
@@ -6675,7 +6678,7 @@ function Uf() {
|
|
|
6675
6678
|
enumerable: !0,
|
|
6676
6679
|
value: !1
|
|
6677
6680
|
}
|
|
6678
|
-
})), V = null, te = null, ne = Object.seal(
|
|
6681
|
+
})), V = null, te = null, ne = Object.seal(Vd(null, {
|
|
6679
6682
|
tagCheck: {
|
|
6680
6683
|
writable: !0,
|
|
6681
6684
|
configurable: !1,
|
|
@@ -6740,7 +6743,7 @@ function Uf() {
|
|
|
6740
6743
|
xe,
|
|
6741
6744
|
Se,
|
|
6742
6745
|
Ce
|
|
6743
|
-
],
|
|
6746
|
+
], Zd), De = $({}, [
|
|
6744
6747
|
"mi",
|
|
6745
6748
|
"mo",
|
|
6746
6749
|
"mn",
|
|
@@ -6757,38 +6760,38 @@ function Uf() {
|
|
|
6757
6760
|
}, Ie = function() {
|
|
6758
6761
|
let e = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : {};
|
|
6759
6762
|
if (Ne && Ne === e) return;
|
|
6760
|
-
(!e || typeof e != "object") && (e = {}), e =
|
|
6763
|
+
(!e || typeof e != "object") && (e = {}), e = mf(e), Ae = je.indexOf(e.PARSER_MEDIA_TYPE) === -1 ? "text/html" : e.PARSER_MEDIA_TYPE, Me = Ae === "application/xhtml+xml" ? Zd : Xd, L = sf(e, "ALLOWED_TAGS") && Yd(e.ALLOWED_TAGS) ? $({}, e.ALLOWED_TAGS, Me) : R, z = sf(e, "ALLOWED_ATTR") && Yd(e.ALLOWED_ATTR) ? $({}, e.ALLOWED_ATTR, Me) : ee, Te = sf(e, "ALLOWED_NAMESPACES") && Yd(e.ALLOWED_NAMESPACES) ? $({}, e.ALLOWED_NAMESPACES, Zd) : Ee, ye = sf(e, "ADD_URI_SAFE_ATTR") && Yd(e.ADD_URI_SAFE_ATTR) ? $(mf(be), e.ADD_URI_SAFE_ATTR, Me) : be, _e = sf(e, "ADD_DATA_URI_TAGS") && Yd(e.ADD_DATA_URI_TAGS) ? $(mf(ve), e.ADD_DATA_URI_TAGS, Me) : ve, ge = sf(e, "FORBID_CONTENTS") && Yd(e.FORBID_CONTENTS) ? $({}, e.FORBID_CONTENTS, Me) : q, V = sf(e, "FORBID_TAGS") && Yd(e.FORBID_TAGS) ? $({}, e.FORBID_TAGS, Me) : mf({}), te = sf(e, "FORBID_ATTR") && Yd(e.FORBID_ATTR) ? $({}, e.FORBID_ATTR, Me) : mf({}), he = sf(e, "USE_PROFILES") ? e.USE_PROFILES && typeof e.USE_PROFILES == "object" ? mf(e.USE_PROFILES) : e.USE_PROFILES : !1, H = e.ALLOW_ARIA_ATTR !== !1, re = e.ALLOW_DATA_ATTR !== !1, ie = e.ALLOW_UNKNOWN_PROTOCOLS || !1, ae = e.ALLOW_SELF_CLOSE_IN_ATTR !== !1, oe = e.SAFE_FOR_TEMPLATES || !1, U = e.SAFE_FOR_XML !== !1, W = e.WHOLE_DOCUMENT || !1, le = e.RETURN_DOM || !1, ue = e.RETURN_DOM_FRAGMENT || !1, G = e.RETURN_TRUSTED_TYPE || !1, ce = e.FORCE_BODY || !1, de = e.SANITIZE_DOM !== !1, fe = e.SANITIZE_NAMED_PROPS || !1, me = e.KEEP_CONTENT !== !1, K = e.IN_PLACE || !1, I = _f(e.ALLOWED_URI_REGEXP) ? e.ALLOWED_URI_REGEXP : Pf, J = typeof e.NAMESPACE == "string" ? e.NAMESPACE : Ce, De = sf(e, "MATHML_TEXT_INTEGRATION_POINTS") && e.MATHML_TEXT_INTEGRATION_POINTS && typeof e.MATHML_TEXT_INTEGRATION_POINTS == "object" ? mf(e.MATHML_TEXT_INTEGRATION_POINTS) : $({}, [
|
|
6761
6764
|
"mi",
|
|
6762
6765
|
"mo",
|
|
6763
6766
|
"mn",
|
|
6764
6767
|
"ms",
|
|
6765
6768
|
"mtext"
|
|
6766
|
-
]), Oe =
|
|
6767
|
-
let t =
|
|
6768
|
-
if (B =
|
|
6769
|
+
]), Oe = sf(e, "HTML_INTEGRATION_POINTS") && e.HTML_INTEGRATION_POINTS && typeof e.HTML_INTEGRATION_POINTS == "object" ? mf(e.HTML_INTEGRATION_POINTS) : $({}, ["annotation-xml"]);
|
|
6770
|
+
let t = sf(e, "CUSTOM_ELEMENT_HANDLING") && e.CUSTOM_ELEMENT_HANDLING && typeof e.CUSTOM_ELEMENT_HANDLING == "object" ? mf(e.CUSTOM_ELEMENT_HANDLING) : Vd(null);
|
|
6771
|
+
if (B = Vd(null), sf(t, "tagNameCheck") && Fe(t.tagNameCheck) && (B.tagNameCheck = t.tagNameCheck), sf(t, "attributeNameCheck") && Fe(t.attributeNameCheck) && (B.attributeNameCheck = t.attributeNameCheck), sf(t, "allowCustomizedBuiltInElements") && typeof t.allowCustomizedBuiltInElements == "boolean" && (B.allowCustomizedBuiltInElements = t.allowCustomizedBuiltInElements), oe && (re = !1), ue && (le = !0), he && (L = $({}, wf), z = Vd(null), he.html === !0 && ($(L, vf), $(z, Tf)), he.svg === !0 && ($(L, yf), $(z, Ef), $(z, Of)), he.svgFilters === !0 && ($(L, bf), $(z, Ef), $(z, Of)), he.mathMl === !0 && ($(L, Sf), $(z, Df), $(z, Of))), ne.tagCheck = null, ne.attributeCheck = null, sf(e, "ADD_TAGS") && (typeof e.ADD_TAGS == "function" ? ne.tagCheck = e.ADD_TAGS : Yd(e.ADD_TAGS) && (L === R && (L = mf(L)), $(L, e.ADD_TAGS, Me))), sf(e, "ADD_ATTR") && (typeof e.ADD_ATTR == "function" ? ne.attributeCheck = e.ADD_ATTR : Yd(e.ADD_ATTR) && (z === ee && (z = mf(z)), $(z, e.ADD_ATTR, Me))), sf(e, "ADD_URI_SAFE_ATTR") && Yd(e.ADD_URI_SAFE_ATTR) && $(ye, e.ADD_URI_SAFE_ATTR, Me), sf(e, "FORBID_CONTENTS") && Yd(e.FORBID_CONTENTS) && (ge === q && (ge = mf(ge)), $(ge, e.FORBID_CONTENTS, Me)), sf(e, "ADD_FORBID_CONTENTS") && Yd(e.ADD_FORBID_CONTENTS) && (ge === q && (ge = mf(ge)), $(ge, e.ADD_FORBID_CONTENTS, Me)), me && (L["#text"] = !0), W && $(L, [
|
|
6769
6772
|
"html",
|
|
6770
6773
|
"head",
|
|
6771
6774
|
"body"
|
|
6772
6775
|
]), L.table && ($(L, ["tbody"]), delete V.tbody), e.TRUSTED_TYPES_POLICY) {
|
|
6773
|
-
if (typeof e.TRUSTED_TYPES_POLICY.createHTML != "function") throw
|
|
6774
|
-
if (typeof e.TRUSTED_TYPES_POLICY.createScriptURL != "function") throw
|
|
6776
|
+
if (typeof e.TRUSTED_TYPES_POLICY.createHTML != "function") throw uf("TRUSTED_TYPES_POLICY configuration option must provide a \"createHTML\" hook.");
|
|
6777
|
+
if (typeof e.TRUSTED_TYPES_POLICY.createScriptURL != "function") throw uf("TRUSTED_TYPES_POLICY configuration option must provide a \"createScriptURL\" hook.");
|
|
6775
6778
|
b = e.TRUSTED_TYPES_POLICY, x = b.createHTML("");
|
|
6776
|
-
} else b === void 0 && (b =
|
|
6777
|
-
|
|
6779
|
+
} else b === void 0 && (b = Hf(p, i)), b !== null && typeof x == "string" && (x = b.createHTML(""));
|
|
6780
|
+
zd && zd(e), Ne = e;
|
|
6778
6781
|
}, Le = $({}, [
|
|
6779
|
-
...vf,
|
|
6780
6782
|
...yf,
|
|
6781
|
-
...bf
|
|
6782
|
-
|
|
6783
|
+
...bf,
|
|
6784
|
+
...xf
|
|
6785
|
+
]), Re = $({}, [...Sf, ...Cf]), ze = function(e) {
|
|
6783
6786
|
let t = y(e);
|
|
6784
6787
|
(!t || !t.tagName) && (t = {
|
|
6785
6788
|
namespaceURI: J,
|
|
6786
6789
|
tagName: "template"
|
|
6787
6790
|
});
|
|
6788
|
-
let n =
|
|
6791
|
+
let n = Xd(e.tagName), r = Xd(t.tagName);
|
|
6789
6792
|
return Te[e.namespaceURI] ? e.namespaceURI === Se ? t.namespaceURI === Ce ? n === "svg" : t.namespaceURI === xe ? n === "svg" && (r === "annotation-xml" || De[r]) : !!Le[n] : e.namespaceURI === xe ? t.namespaceURI === Ce ? n === "math" : t.namespaceURI === Se ? n === "math" && Oe[r] : !!Re[n] : e.namespaceURI === Ce ? t.namespaceURI === Se && !Oe[r] || t.namespaceURI === xe && !De[r] ? !1 : !Re[n] && (ke[n] || !Le[n]) : !!(Ae === "application/xhtml+xml" && Te[e.namespaceURI]) : !1;
|
|
6790
6793
|
}, Be = function(e) {
|
|
6791
|
-
|
|
6794
|
+
qd(t.removed, { element: e });
|
|
6792
6795
|
try {
|
|
6793
6796
|
y(e).removeChild(e);
|
|
6794
6797
|
} catch {
|
|
@@ -6796,12 +6799,12 @@ function Uf() {
|
|
|
6796
6799
|
}
|
|
6797
6800
|
}, Ve = function(e, n) {
|
|
6798
6801
|
try {
|
|
6799
|
-
|
|
6802
|
+
qd(t.removed, {
|
|
6800
6803
|
attribute: n.getAttributeNode(e),
|
|
6801
6804
|
from: n
|
|
6802
6805
|
});
|
|
6803
6806
|
} catch {
|
|
6804
|
-
|
|
6807
|
+
qd(t.removed, {
|
|
6805
6808
|
attribute: null,
|
|
6806
6809
|
from: n
|
|
6807
6810
|
});
|
|
@@ -6816,7 +6819,7 @@ function Uf() {
|
|
|
6816
6819
|
let t = null, r = null;
|
|
6817
6820
|
if (ce) e = "<remove></remove>" + e;
|
|
6818
6821
|
else {
|
|
6819
|
-
let t =
|
|
6822
|
+
let t = Qd(e, /^[\r\n\t ]+/);
|
|
6820
6823
|
r = t && t[0];
|
|
6821
6824
|
}
|
|
6822
6825
|
Ae === "application/xhtml+xml" && J === Ce && (e = "<html xmlns=\"http://www.w3.org/1999/xhtml\"><head></head><body>" + e + "</body></html>");
|
|
@@ -6840,7 +6843,7 @@ function Uf() {
|
|
|
6840
6843
|
return typeof s == "function" && e instanceof s;
|
|
6841
6844
|
};
|
|
6842
6845
|
function Ke(e, n, r) {
|
|
6843
|
-
|
|
6846
|
+
Wd(e, (e) => {
|
|
6844
6847
|
e.call(t, n, r, Ne);
|
|
6845
6848
|
});
|
|
6846
6849
|
}
|
|
@@ -6851,9 +6854,9 @@ function Uf() {
|
|
|
6851
6854
|
if (Ke(D.uponSanitizeElement, e, {
|
|
6852
6855
|
tagName: r,
|
|
6853
6856
|
allowedTags: L
|
|
6854
|
-
}), U && e.hasChildNodes() && !Ge(e.firstElementChild) &&
|
|
6857
|
+
}), U && e.hasChildNodes() && !Ge(e.firstElementChild) && lf(/<[/\w!]/g, e.innerHTML) && lf(/<[/\w!]/g, e.textContent) || U && e.namespaceURI === Ce && r === "style" && Ge(e.firstElementChild) || e.nodeType === Bf.progressingInstruction || U && e.nodeType === Bf.comment && lf(/<[/\w]/g, e.data)) return Be(e), !0;
|
|
6855
6858
|
if (V[r] || !(ne.tagCheck instanceof Function && ne.tagCheck(r)) && !L[r]) {
|
|
6856
|
-
if (!V[r] && Xe(r) && (B.tagNameCheck instanceof RegExp &&
|
|
6859
|
+
if (!V[r] && Xe(r) && (B.tagNameCheck instanceof RegExp && lf(B.tagNameCheck, r) || B.tagNameCheck instanceof Function && B.tagNameCheck(r))) return !1;
|
|
6857
6860
|
if (me && !ge[r]) {
|
|
6858
6861
|
let t = y(e) || e.parentNode, n = v(e) || e.childNodes;
|
|
6859
6862
|
if (n && t) {
|
|
@@ -6866,19 +6869,19 @@ function Uf() {
|
|
|
6866
6869
|
}
|
|
6867
6870
|
return Be(e), !0;
|
|
6868
6871
|
}
|
|
6869
|
-
return e instanceof c && !ze(e) || (r === "noscript" || r === "noembed" || r === "noframes") &&
|
|
6872
|
+
return e instanceof c && !ze(e) || (r === "noscript" || r === "noembed" || r === "noframes") && lf(/<\/no(script|embed|frames)/i, e.innerHTML) ? (Be(e), !0) : (oe && e.nodeType === Bf.text && (n = e.textContent, Wd([
|
|
6870
6873
|
O,
|
|
6871
6874
|
k,
|
|
6872
6875
|
A
|
|
6873
6876
|
], (e) => {
|
|
6874
|
-
n =
|
|
6875
|
-
}), e.textContent !== n && (
|
|
6877
|
+
n = $d(n, e, " ");
|
|
6878
|
+
}), e.textContent !== n && (qd(t.removed, { element: e.cloneNode() }), e.textContent = n)), Ke(D.afterSanitizeElements, e, null), !1);
|
|
6876
6879
|
}, Je = function(e, t, r) {
|
|
6877
6880
|
if (te[t] || de && (t === "id" || t === "name") && (r in n || r in Pe)) return !1;
|
|
6878
|
-
if (!(re && !te[t] &&
|
|
6881
|
+
if (!(re && !te[t] && lf(j, t)) && !(H && lf(M, t)) && !(ne.attributeCheck instanceof Function && ne.attributeCheck(t, e))) {
|
|
6879
6882
|
if (!z[t] || te[t]) {
|
|
6880
|
-
if (!(Xe(e) && (B.tagNameCheck instanceof RegExp &&
|
|
6881
|
-
} else if (!ye[t] && !
|
|
6883
|
+
if (!(Xe(e) && (B.tagNameCheck instanceof RegExp && lf(B.tagNameCheck, e) || B.tagNameCheck instanceof Function && B.tagNameCheck(e)) && (B.attributeNameCheck instanceof RegExp && lf(B.attributeNameCheck, t) || B.attributeNameCheck instanceof Function && B.attributeNameCheck(t, e)) || t === "is" && B.allowCustomizedBuiltInElements && (B.tagNameCheck instanceof RegExp && lf(B.tagNameCheck, r) || B.tagNameCheck instanceof Function && B.tagNameCheck(r)))) return !1;
|
|
6884
|
+
} else if (!ye[t] && !lf(I, $d(r, P, "")) && !((t === "src" || t === "xlink:href" || t === "href") && e !== "script" && ef(r, "data:") === 0 && _e[e]) && !(ie && !lf(N, $d(r, P, ""))) && r) return !1;
|
|
6882
6885
|
}
|
|
6883
6886
|
return !0;
|
|
6884
6887
|
}, Ye = $({}, [
|
|
@@ -6891,7 +6894,7 @@ function Uf() {
|
|
|
6891
6894
|
"font-face-uri",
|
|
6892
6895
|
"missing-glyph"
|
|
6893
6896
|
]), Xe = function(e) {
|
|
6894
|
-
return !Ye[
|
|
6897
|
+
return !Ye[Xd(e)] && lf(F, e);
|
|
6895
6898
|
}, Ze = function(e) {
|
|
6896
6899
|
Ke(D.beforeSanitizeAttributes, e, null);
|
|
6897
6900
|
let { attributes: n } = e;
|
|
@@ -6904,12 +6907,12 @@ function Uf() {
|
|
|
6904
6907
|
forceKeepAttr: void 0
|
|
6905
6908
|
}, i = n.length;
|
|
6906
6909
|
for (; i--;) {
|
|
6907
|
-
let { name: a, namespaceURI: o, value: s } = n[i], c = Me(a), l = s, u = a === "value" ? l :
|
|
6908
|
-
if (r.attrName = c, r.attrValue = u, r.keepAttr = !0, r.forceKeepAttr = void 0, Ke(D.uponSanitizeAttribute, e, r), u = r.attrValue, fe && (c === "id" || c === "name") &&
|
|
6910
|
+
let { name: a, namespaceURI: o, value: s } = n[i], c = Me(a), l = s, u = a === "value" ? l : tf(l);
|
|
6911
|
+
if (r.attrName = c, r.attrValue = u, r.keepAttr = !0, r.forceKeepAttr = void 0, Ke(D.uponSanitizeAttribute, e, r), u = r.attrValue, fe && (c === "id" || c === "name") && ef(u, pe) !== 0 && (Ve(a, e), u = pe + u), U && lf(/((--!?|])>)|<\/(style|script|title|xmp|textarea|noscript|iframe|noembed|noframes)/i, u)) {
|
|
6909
6912
|
Ve(a, e);
|
|
6910
6913
|
continue;
|
|
6911
6914
|
}
|
|
6912
|
-
if (c === "attributename" &&
|
|
6915
|
+
if (c === "attributename" && Qd(u, "href")) {
|
|
6913
6916
|
Ve(a, e);
|
|
6914
6917
|
continue;
|
|
6915
6918
|
}
|
|
@@ -6918,16 +6921,16 @@ function Uf() {
|
|
|
6918
6921
|
Ve(a, e);
|
|
6919
6922
|
continue;
|
|
6920
6923
|
}
|
|
6921
|
-
if (!ae &&
|
|
6924
|
+
if (!ae && lf(/\/>/i, u)) {
|
|
6922
6925
|
Ve(a, e);
|
|
6923
6926
|
continue;
|
|
6924
6927
|
}
|
|
6925
|
-
oe &&
|
|
6928
|
+
oe && Wd([
|
|
6926
6929
|
O,
|
|
6927
6930
|
k,
|
|
6928
6931
|
A
|
|
6929
6932
|
], (e) => {
|
|
6930
|
-
u =
|
|
6933
|
+
u = $d(u, e, " ");
|
|
6931
6934
|
});
|
|
6932
6935
|
let d = Me(e.nodeName);
|
|
6933
6936
|
if (!Je(d, c, u)) {
|
|
@@ -6943,7 +6946,7 @@ function Uf() {
|
|
|
6943
6946
|
break;
|
|
6944
6947
|
}
|
|
6945
6948
|
if (u !== l) try {
|
|
6946
|
-
o ? e.setAttributeNS(o, a, u) : e.setAttribute(a, u), We(e) ? Be(e) :
|
|
6949
|
+
o ? e.setAttributeNS(o, a, u) : e.setAttribute(a, u), We(e) ? Be(e) : Kd(t.removed);
|
|
6947
6950
|
} catch {
|
|
6948
6951
|
Ve(a, e);
|
|
6949
6952
|
}
|
|
@@ -6956,15 +6959,15 @@ function Uf() {
|
|
|
6956
6959
|
};
|
|
6957
6960
|
return t.sanitize = function(e) {
|
|
6958
6961
|
let n = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {}, i = null, o = null, c = null, l = null;
|
|
6959
|
-
if (we = !e, we && (e = "<!-->"), typeof e != "string" && !Ge(e) && (e =
|
|
6962
|
+
if (we = !e, we && (e = "<!-->"), typeof e != "string" && !Ge(e) && (e = hf(e), typeof e != "string")) throw uf("dirty is not a string, aborting");
|
|
6960
6963
|
if (!t.isSupported) return e;
|
|
6961
6964
|
if (se || Ie(n), t.removed = [], typeof e == "string" && (K = !1), K) {
|
|
6962
6965
|
let t = e.nodeName;
|
|
6963
6966
|
if (typeof t == "string") {
|
|
6964
6967
|
let e = Me(t);
|
|
6965
|
-
if (!L[e] || V[e]) throw
|
|
6968
|
+
if (!L[e] || V[e]) throw uf("root node is forbidden and cannot be sanitized in-place");
|
|
6966
6969
|
}
|
|
6967
|
-
} else if (e instanceof s) i = He("<!---->"), o = i.ownerDocument.importNode(e, !0), o.nodeType ===
|
|
6970
|
+
} else if (e instanceof s) i = He("<!---->"), o = i.ownerDocument.importNode(e, !0), o.nodeType === Bf.element && o.nodeName === "BODY" || o.nodeName === "HTML" ? i = o : i.appendChild(o);
|
|
6968
6971
|
else {
|
|
6969
6972
|
if (!le && !oe && !W && e.indexOf("<") === -1) return b && G ? b.createHTML(e) : e;
|
|
6970
6973
|
if (i = He(e), !i) return le ? null : G ? x : "";
|
|
@@ -6977,12 +6980,12 @@ function Uf() {
|
|
|
6977
6980
|
if (oe) {
|
|
6978
6981
|
i.normalize();
|
|
6979
6982
|
let e = i.innerHTML;
|
|
6980
|
-
|
|
6983
|
+
Wd([
|
|
6981
6984
|
O,
|
|
6982
6985
|
k,
|
|
6983
6986
|
A
|
|
6984
6987
|
], (t) => {
|
|
6985
|
-
e =
|
|
6988
|
+
e = $d(e, t, " ");
|
|
6986
6989
|
}), i.innerHTML = e;
|
|
6987
6990
|
}
|
|
6988
6991
|
if (ue) for (l = w.call(i.ownerDocument); i.firstChild;) l.appendChild(i.firstChild);
|
|
@@ -6990,12 +6993,12 @@ function Uf() {
|
|
|
6990
6993
|
return (z.shadowroot || z.shadowrootmode) && (l = E.call(r, l, !0)), l;
|
|
6991
6994
|
}
|
|
6992
6995
|
let d = W ? i.outerHTML : i.innerHTML;
|
|
6993
|
-
return W && L["!doctype"] && i.ownerDocument && i.ownerDocument.doctype && i.ownerDocument.doctype.name &&
|
|
6996
|
+
return W && L["!doctype"] && i.ownerDocument && i.ownerDocument.doctype && i.ownerDocument.doctype.name && lf(Lf, i.ownerDocument.doctype.name) && (d = "<!DOCTYPE " + i.ownerDocument.doctype.name + ">\n" + d), oe && Wd([
|
|
6994
6997
|
O,
|
|
6995
6998
|
k,
|
|
6996
6999
|
A
|
|
6997
7000
|
], (e) => {
|
|
6998
|
-
d =
|
|
7001
|
+
d = $d(d, e, " ");
|
|
6999
7002
|
}), b && G ? b.createHTML(d) : d;
|
|
7000
7003
|
}, t.setConfig = function() {
|
|
7001
7004
|
Ie(arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : {}), se = !0;
|
|
@@ -7004,60 +7007,60 @@ function Uf() {
|
|
|
7004
7007
|
}, t.isValidAttribute = function(e, t, n) {
|
|
7005
7008
|
return Ne || Ie({}), Je(Me(e), Me(t), n);
|
|
7006
7009
|
}, t.addHook = function(e, t) {
|
|
7007
|
-
typeof t == "function" &&
|
|
7010
|
+
typeof t == "function" && qd(D[e], t);
|
|
7008
7011
|
}, t.removeHook = function(e, t) {
|
|
7009
7012
|
if (t !== void 0) {
|
|
7010
|
-
let n =
|
|
7011
|
-
return n === -1 ? void 0 :
|
|
7013
|
+
let n = Gd(D[e], t);
|
|
7014
|
+
return n === -1 ? void 0 : Jd(D[e], n, 1)[0];
|
|
7012
7015
|
}
|
|
7013
|
-
return
|
|
7016
|
+
return Kd(D[e]);
|
|
7014
7017
|
}, t.removeHooks = function(e) {
|
|
7015
7018
|
D[e] = [];
|
|
7016
7019
|
}, t.removeAllHooks = function() {
|
|
7017
|
-
D =
|
|
7020
|
+
D = Uf();
|
|
7018
7021
|
}, t;
|
|
7019
7022
|
}
|
|
7020
|
-
var
|
|
7023
|
+
var Gf = Wf(), Kf = 60 * 1e3, qf = 10, Jf = 2, Yf = {
|
|
7021
7024
|
minuteLookups: {},
|
|
7022
7025
|
demoDay: "",
|
|
7023
7026
|
demoLookups: {}
|
|
7024
7027
|
};
|
|
7025
|
-
function
|
|
7028
|
+
function Xf(e) {
|
|
7026
7029
|
return typeof e == "object" && !!e && !Array.isArray(e);
|
|
7027
7030
|
}
|
|
7028
|
-
function
|
|
7029
|
-
if (typeof window > "u") return { ...
|
|
7031
|
+
function Zf() {
|
|
7032
|
+
if (typeof window > "u") return { ...Yf };
|
|
7030
7033
|
try {
|
|
7031
7034
|
let e = window.sessionStorage.getItem(Ic);
|
|
7032
|
-
if (!e) return { ...
|
|
7035
|
+
if (!e) return { ...Yf };
|
|
7033
7036
|
let t = JSON.parse(e);
|
|
7034
7037
|
return {
|
|
7035
|
-
minuteLookups:
|
|
7038
|
+
minuteLookups: Xf(t.minuteLookups) ? { ...t.minuteLookups } : {},
|
|
7036
7039
|
demoDay: typeof t.demoDay == "string" ? t.demoDay : "",
|
|
7037
|
-
demoLookups:
|
|
7040
|
+
demoLookups: Xf(t.demoLookups) ? { ...t.demoLookups } : {}
|
|
7038
7041
|
};
|
|
7039
7042
|
} catch {
|
|
7040
|
-
return { ...
|
|
7043
|
+
return { ...Yf };
|
|
7041
7044
|
}
|
|
7042
7045
|
}
|
|
7043
|
-
function
|
|
7044
|
-
if (
|
|
7046
|
+
function Qf(e) {
|
|
7047
|
+
if (Yf = e, !(typeof window > "u")) try {
|
|
7045
7048
|
window.sessionStorage.setItem(Ic, JSON.stringify(e));
|
|
7046
7049
|
} catch {}
|
|
7047
7050
|
}
|
|
7048
|
-
function
|
|
7051
|
+
function $f(e, t) {
|
|
7049
7052
|
let n = e.toUpperCase().trim(), r = t.toUpperCase().trim();
|
|
7050
7053
|
return !n || !r ? "" : `${n}|${r}`;
|
|
7051
7054
|
}
|
|
7052
|
-
function
|
|
7053
|
-
let r =
|
|
7055
|
+
function ep({ plate: e, vehicleState: t, demoMode: n }) {
|
|
7056
|
+
let r = $f(e, t);
|
|
7054
7057
|
if (!r) return { allowed: !0 };
|
|
7055
|
-
let i = Date.now(), a = i -
|
|
7058
|
+
let i = Date.now(), a = i - Kf, o = Zf();
|
|
7056
7059
|
Object.entries(o.minuteLookups).forEach(([e, t]) => {
|
|
7057
7060
|
(typeof t != "number" || t < a) && delete o.minuteLookups[e];
|
|
7058
7061
|
});
|
|
7059
7062
|
let s = Object.prototype.hasOwnProperty.call(o.minuteLookups, r);
|
|
7060
|
-
if (!s && Object.keys(o.minuteLookups).length >=
|
|
7063
|
+
if (!s && Object.keys(o.minuteLookups).length >= qf) return Qf(o), {
|
|
7061
7064
|
allowed: !1,
|
|
7062
7065
|
message: "Too many unique plate searches. Please wait a minute before trying new plates."
|
|
7063
7066
|
};
|
|
@@ -7065,17 +7068,17 @@ function $f({ plate: e, vehicleState: t, demoMode: n }) {
|
|
|
7065
7068
|
let e = (/* @__PURE__ */ new Date()).toISOString().slice(0, 10);
|
|
7066
7069
|
o.demoDay !== e && (o.demoDay = e, o.demoLookups = {});
|
|
7067
7070
|
let t = Object.prototype.hasOwnProperty.call(o.demoLookups, r);
|
|
7068
|
-
if (!t && Object.keys(o.demoLookups).length >=
|
|
7071
|
+
if (!t && Object.keys(o.demoLookups).length >= Jf) return Qf(o), {
|
|
7069
7072
|
allowed: !1,
|
|
7070
7073
|
message: "Demo mode allows up to 2 unique plate searches per day in this browser session."
|
|
7071
7074
|
};
|
|
7072
7075
|
t || (o.demoLookups[r] = i);
|
|
7073
7076
|
}
|
|
7074
|
-
return s || (o.minuteLookups[r] = i),
|
|
7077
|
+
return s || (o.minuteLookups[r] = i), Qf(o), { allowed: !0 };
|
|
7075
7078
|
}
|
|
7076
7079
|
//#endregion
|
|
7077
7080
|
//#region src/components/ui/input.tsx
|
|
7078
|
-
var
|
|
7081
|
+
var tp = e.forwardRef(function({ className: e, type: t, ...n }, r) {
|
|
7079
7082
|
return /* @__PURE__ */ h("input", {
|
|
7080
7083
|
ref: r,
|
|
7081
7084
|
type: t,
|
|
@@ -7083,29 +7086,29 @@ var ep = e.forwardRef(function({ className: e, type: t, ...n }, r) {
|
|
|
7083
7086
|
className: Q("h-8 w-full min-w-0 rounded-lg border border-input bg-transparent px-2.5 py-1 text-base transition-colors outline-none file:inline-flex file:h-6 file:border-0 file:bg-transparent file:text-sm file:font-medium file:text-foreground placeholder:text-muted-foreground focus-visible:border-ring focus-visible:ring-3 focus-visible:ring-ring/50 disabled:pointer-events-none disabled:cursor-not-allowed disabled:bg-input/50 disabled:opacity-50 aria-invalid:border-destructive aria-invalid:ring-3 aria-invalid:ring-destructive/20 md:text-sm dark:bg-input/30 dark:disabled:bg-input/80 dark:aria-invalid:border-destructive/50 dark:aria-invalid:ring-destructive/40", e),
|
|
7084
7087
|
...n
|
|
7085
7088
|
});
|
|
7086
|
-
}),
|
|
7089
|
+
}), np = Kl("group/alert relative grid w-full gap-0.5 rounded-lg border px-2.5 py-2 text-left text-sm has-data-[slot=alert-action]:relative has-data-[slot=alert-action]:pr-18 has-[>svg]:grid-cols-[auto_1fr] has-[>svg]:gap-x-2 *:[svg]:row-span-2 *:[svg]:translate-y-0.5 *:[svg]:text-current *:[svg:not([class*='size-'])]:size-4", {
|
|
7087
7090
|
variants: { variant: {
|
|
7088
7091
|
default: "bg-card text-card-foreground",
|
|
7089
7092
|
destructive: "bg-card text-destructive *:data-[slot=alert-description]:text-destructive/90 *:[svg]:text-current"
|
|
7090
7093
|
} },
|
|
7091
7094
|
defaultVariants: { variant: "default" }
|
|
7092
7095
|
});
|
|
7093
|
-
function
|
|
7096
|
+
function rp({ className: e, variant: t, ...n }) {
|
|
7094
7097
|
return /* @__PURE__ */ h("div", {
|
|
7095
7098
|
"data-slot": "alert",
|
|
7096
7099
|
role: "alert",
|
|
7097
|
-
className: Q(
|
|
7100
|
+
className: Q(np({ variant: t }), e),
|
|
7098
7101
|
...n
|
|
7099
7102
|
});
|
|
7100
7103
|
}
|
|
7101
|
-
function
|
|
7104
|
+
function ip({ className: e, ...t }) {
|
|
7102
7105
|
return /* @__PURE__ */ h("div", {
|
|
7103
7106
|
"data-slot": "alert-title",
|
|
7104
7107
|
className: Q("font-medium group-has-[>svg]/alert:col-start-2 [&_a]:underline [&_a]:underline-offset-3 [&_a]:hover:text-foreground", e),
|
|
7105
7108
|
...t
|
|
7106
7109
|
});
|
|
7107
7110
|
}
|
|
7108
|
-
function
|
|
7111
|
+
function ap({ className: e, ...t }) {
|
|
7109
7112
|
return /* @__PURE__ */ h("div", {
|
|
7110
7113
|
"data-slot": "alert-description",
|
|
7111
7114
|
className: Q("text-sm text-balance text-muted-foreground md:text-pretty [&_a]:underline [&_a]:underline-offset-3 [&_a]:hover:text-foreground [&_p:not(:last-child)]:mb-4", e),
|
|
@@ -7114,7 +7117,7 @@ function ip({ className: e, ...t }) {
|
|
|
7114
7117
|
}
|
|
7115
7118
|
//#endregion
|
|
7116
7119
|
//#region src/components/ui/scroll-area.tsx
|
|
7117
|
-
var
|
|
7120
|
+
var op = e.forwardRef(function({ className: e, children: t, ...n }, r) {
|
|
7118
7121
|
return /* @__PURE__ */ g(ps, {
|
|
7119
7122
|
ref: r,
|
|
7120
7123
|
"data-slot": "scroll-area",
|
|
@@ -7126,11 +7129,11 @@ var ap = e.forwardRef(function({ className: e, children: t, ...n }, r) {
|
|
|
7126
7129
|
className: "size-full rounded-[inherit] transition-[color,box-shadow] outline-none focus-visible:ring-[3px] focus-visible:ring-ring/50 focus-visible:outline-1",
|
|
7127
7130
|
children: t
|
|
7128
7131
|
}),
|
|
7129
|
-
/* @__PURE__ */ h(
|
|
7132
|
+
/* @__PURE__ */ h(sp, {}),
|
|
7130
7133
|
/* @__PURE__ */ h(hs, {})
|
|
7131
7134
|
]
|
|
7132
7135
|
});
|
|
7133
|
-
}),
|
|
7136
|
+
}), sp = e.forwardRef(function({ className: e, orientation: t = "vertical", ...n }, r) {
|
|
7134
7137
|
return /* @__PURE__ */ h(Vo, {
|
|
7135
7138
|
ref: r,
|
|
7136
7139
|
"data-slot": "scroll-area-scrollbar",
|
|
@@ -7146,7 +7149,7 @@ var ap = e.forwardRef(function({ className: e, children: t, ...n }, r) {
|
|
|
7146
7149
|
});
|
|
7147
7150
|
//#endregion
|
|
7148
7151
|
//#region src/components/ui/spinner.tsx
|
|
7149
|
-
function
|
|
7152
|
+
function cp({ className: e, ...t }) {
|
|
7150
7153
|
return /* @__PURE__ */ h(Ec, {
|
|
7151
7154
|
role: "status",
|
|
7152
7155
|
"aria-label": "Loading",
|
|
@@ -7156,7 +7159,7 @@ function sp({ className: e, ...t }) {
|
|
|
7156
7159
|
}
|
|
7157
7160
|
//#endregion
|
|
7158
7161
|
//#region src/components/ui/toggle-variants.ts
|
|
7159
|
-
var
|
|
7162
|
+
var lp = Kl("group/toggle inline-flex items-center justify-center gap-1 rounded-lg text-sm font-medium whitespace-nowrap transition-all outline-none hover:bg-muted hover:text-foreground focus-visible:border-ring focus-visible:ring-[3px] focus-visible:ring-ring/50 disabled:pointer-events-none disabled:opacity-50 aria-invalid:border-destructive aria-invalid:ring-destructive/20 aria-pressed:bg-muted data-[state=on]:bg-muted dark:aria-invalid:ring-destructive/40 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4", {
|
|
7160
7163
|
variants: {
|
|
7161
7164
|
variant: {
|
|
7162
7165
|
default: "bg-transparent",
|
|
@@ -7172,13 +7175,13 @@ var cp = Gl("group/toggle inline-flex items-center justify-center gap-1 rounded-
|
|
|
7172
7175
|
variant: "default",
|
|
7173
7176
|
size: "default"
|
|
7174
7177
|
}
|
|
7175
|
-
}),
|
|
7178
|
+
}), up = e.createContext({
|
|
7176
7179
|
size: "default",
|
|
7177
7180
|
variant: "default",
|
|
7178
7181
|
spacing: 0,
|
|
7179
7182
|
orientation: "horizontal"
|
|
7180
7183
|
});
|
|
7181
|
-
function
|
|
7184
|
+
function dp({ className: e, variant: t, size: n, spacing: r = 0, orientation: i = "horizontal", children: a, ...o }) {
|
|
7182
7185
|
return /* @__PURE__ */ h(ic, {
|
|
7183
7186
|
"data-slot": "toggle-group",
|
|
7184
7187
|
"data-variant": t,
|
|
@@ -7190,7 +7193,7 @@ function up({ className: e, variant: t, size: n, spacing: r = 0, orientation: i
|
|
|
7190
7193
|
style: { "--gap": r },
|
|
7191
7194
|
className: Q("group/toggle-group flex w-fit flex-row items-center gap-[--spacing(var(--gap))] rounded-lg data-[size=sm]:rounded-[min(var(--radius-md),10px)] data-vertical:flex-col data-vertical:items-stretch", e),
|
|
7192
7195
|
...o,
|
|
7193
|
-
children: /* @__PURE__ */ h(
|
|
7196
|
+
children: /* @__PURE__ */ h(up.Provider, {
|
|
7194
7197
|
value: {
|
|
7195
7198
|
variant: t,
|
|
7196
7199
|
size: n,
|
|
@@ -7201,14 +7204,14 @@ function up({ className: e, variant: t, size: n, spacing: r = 0, orientation: i
|
|
|
7201
7204
|
})
|
|
7202
7205
|
});
|
|
7203
7206
|
}
|
|
7204
|
-
function
|
|
7205
|
-
let o = e.useContext(
|
|
7207
|
+
function fp({ className: t, children: n, variant: r = "default", size: i = "default", ...a }) {
|
|
7208
|
+
let o = e.useContext(up);
|
|
7206
7209
|
return /* @__PURE__ */ h(ac, {
|
|
7207
7210
|
"data-slot": "toggle-group-item",
|
|
7208
7211
|
"data-variant": o.variant || r,
|
|
7209
7212
|
"data-size": o.size || i,
|
|
7210
7213
|
"data-spacing": o.spacing,
|
|
7211
|
-
className: Q("shrink-0 group-data-[spacing=0]/toggle-group:rounded-none group-data-[spacing=0]/toggle-group:px-2 focus:z-10 focus-visible:z-10 group-data-[spacing=0]/toggle-group:has-data-[icon=inline-end]:pr-1.5 group-data-[spacing=0]/toggle-group:has-data-[icon=inline-start]:pl-1.5 group-data-horizontal/toggle-group:data-[spacing=0]:first:rounded-l-lg group-data-vertical/toggle-group:data-[spacing=0]:first:rounded-t-lg group-data-horizontal/toggle-group:data-[spacing=0]:last:rounded-r-lg group-data-vertical/toggle-group:data-[spacing=0]:last:rounded-b-lg group-data-horizontal/toggle-group:data-[spacing=0]:data-[variant=outline]:border-l-0 group-data-vertical/toggle-group:data-[spacing=0]:data-[variant=outline]:border-t-0 group-data-horizontal/toggle-group:data-[spacing=0]:data-[variant=outline]:first:border-l group-data-vertical/toggle-group:data-[spacing=0]:data-[variant=outline]:first:border-t",
|
|
7214
|
+
className: Q("shrink-0 group-data-[spacing=0]/toggle-group:rounded-none group-data-[spacing=0]/toggle-group:px-2 focus:z-10 focus-visible:z-10 group-data-[spacing=0]/toggle-group:has-data-[icon=inline-end]:pr-1.5 group-data-[spacing=0]/toggle-group:has-data-[icon=inline-start]:pl-1.5 group-data-horizontal/toggle-group:data-[spacing=0]:first:rounded-l-lg group-data-vertical/toggle-group:data-[spacing=0]:first:rounded-t-lg group-data-horizontal/toggle-group:data-[spacing=0]:last:rounded-r-lg group-data-vertical/toggle-group:data-[spacing=0]:last:rounded-b-lg group-data-horizontal/toggle-group:data-[spacing=0]:data-[variant=outline]:border-l-0 group-data-vertical/toggle-group:data-[spacing=0]:data-[variant=outline]:border-t-0 group-data-horizontal/toggle-group:data-[spacing=0]:data-[variant=outline]:first:border-l group-data-vertical/toggle-group:data-[spacing=0]:data-[variant=outline]:first:border-t", lp({
|
|
7212
7215
|
variant: o.variant || r,
|
|
7213
7216
|
size: o.size || i
|
|
7214
7217
|
}), t),
|
|
@@ -7218,12 +7221,12 @@ function dp({ className: t, children: n, variant: r = "default", size: i = "defa
|
|
|
7218
7221
|
}
|
|
7219
7222
|
//#endregion
|
|
7220
7223
|
//#region src/components/vehicle-garage/PlateSearchTab.tsx
|
|
7221
|
-
var
|
|
7222
|
-
function
|
|
7224
|
+
var pp = 60, mp = 75, hp = 24, gp = 8;
|
|
7225
|
+
function _p(e) {
|
|
7223
7226
|
let t = Number.parseFloat(e);
|
|
7224
7227
|
return Number.isFinite(t) ? t : 0;
|
|
7225
7228
|
}
|
|
7226
|
-
function
|
|
7229
|
+
function vp(e, t, n) {
|
|
7227
7230
|
let r = t.trim(), i = e.ownerDocument, a = i.defaultView;
|
|
7228
7231
|
if (!r || !a || !i.body) return n;
|
|
7229
7232
|
if (r.endsWith("px")) {
|
|
@@ -7235,7 +7238,7 @@ function _p(e, t, n) {
|
|
|
7235
7238
|
let s = Number.parseFloat(a.getComputedStyle(o).fontSize);
|
|
7236
7239
|
return o.remove(), Number.isFinite(s) && s > 0 ? s : n;
|
|
7237
7240
|
}
|
|
7238
|
-
function
|
|
7241
|
+
function yp(e, t, n) {
|
|
7239
7242
|
let r = e.ownerDocument, i = r.defaultView;
|
|
7240
7243
|
if (!i || !r.body) return 0;
|
|
7241
7244
|
let a = i.getComputedStyle(e), o = a.getPropertyValue("--vehicle-garage-plate-input-letter-spacing").trim() || "1.5px", s = r.createElement("span");
|
|
@@ -7243,17 +7246,17 @@ function vp(e, t, n) {
|
|
|
7243
7246
|
let c = s.getBoundingClientRect().width;
|
|
7244
7247
|
return s.remove(), c;
|
|
7245
7248
|
}
|
|
7246
|
-
function yp(e, t) {
|
|
7247
|
-
let n = e.ownerDocument.defaultView, r = typeof n?.matchMedia == "function" && n.matchMedia("(min-width: 768px)").matches, i = r ? "--vehicle-garage-plate-input-font-size-md" : "--vehicle-garage-plate-input-font-size", a = r ? pp : fp;
|
|
7248
|
-
return _p(e, t.getPropertyValue(i), a);
|
|
7249
|
-
}
|
|
7250
7249
|
function bp(e, t) {
|
|
7250
|
+
let n = e.ownerDocument.defaultView, r = typeof n?.matchMedia == "function" && n.matchMedia("(min-width: 768px)").matches, i = r ? "--vehicle-garage-plate-input-font-size-md" : "--vehicle-garage-plate-input-font-size", a = r ? mp : pp;
|
|
7251
|
+
return vp(e, t.getPropertyValue(i), a);
|
|
7252
|
+
}
|
|
7253
|
+
function xp(e, t) {
|
|
7251
7254
|
let n = e.ownerDocument.defaultView;
|
|
7252
|
-
if (!n) return
|
|
7253
|
-
let r = n.getComputedStyle(e), i =
|
|
7255
|
+
if (!n) return pp;
|
|
7256
|
+
let r = n.getComputedStyle(e), i = bp(e, r), a = vp(e, r.getPropertyValue("--vehicle-garage-plate-input-min-font-size"), hp), o = Math.max(0, e.clientWidth - _p(r.paddingLeft) - _p(r.paddingRight) - gp), s = yp(e, t.toUpperCase(), i);
|
|
7254
7257
|
return o <= 0 || s <= o ? i : Math.max(a, Math.floor(o / s * i * 100) / 100);
|
|
7255
7258
|
}
|
|
7256
|
-
function
|
|
7259
|
+
function Sp(e) {
|
|
7257
7260
|
let t = [
|
|
7258
7261
|
"series",
|
|
7259
7262
|
"variant",
|
|
@@ -7266,7 +7269,7 @@ function xp(e) {
|
|
|
7266
7269
|
];
|
|
7267
7270
|
return Object.entries(e).filter(([e, n]) => n != null && n !== "" && t.includes(e) && typeof n != "object").map(([e, t]) => e === "cylinders" ? `${t}cyl` : String(t)).join(" ");
|
|
7268
7271
|
}
|
|
7269
|
-
function
|
|
7272
|
+
function Cp(e) {
|
|
7270
7273
|
if (typeof window > "u") return;
|
|
7271
7274
|
let t = !1, n = () => {
|
|
7272
7275
|
t || e();
|
|
@@ -7275,18 +7278,18 @@ function Sp(e) {
|
|
|
7275
7278
|
t = !0;
|
|
7276
7279
|
};
|
|
7277
7280
|
}
|
|
7278
|
-
function
|
|
7281
|
+
function wp(e) {
|
|
7279
7282
|
return e.replace(/_/g, " ").replace(/\b\w/g, (e) => e.toUpperCase());
|
|
7280
7283
|
}
|
|
7281
|
-
function
|
|
7284
|
+
function Tp(e) {
|
|
7282
7285
|
return e == null || e === "" || typeof e == "object" ? "Not specified" : String(e);
|
|
7283
7286
|
}
|
|
7284
|
-
function
|
|
7287
|
+
function Ep({ apiKey: e, geocodeApiKey: t, drawerOpen: n, placeholder: r = "PL8SRCH", intro: i = "Enter your Number Plate and select your State or Territory to find your vehicle.", supportMessage: o, useGeolocation: s, demoMode: d, productsUrl: f, actionButtonLabel: p = "Show Products", autoCloseOnSelect: m = !0, activeVehicle: _, onVehicleSelected: v }) {
|
|
7285
7288
|
let y = l(null), [b, x] = u(""), [S, C] = u(""), [w, T] = u(null), [E, D] = u(null), [O, k] = u(!1), [A, j] = u(Lc), [M, N] = u(!1), [P, F] = u(null);
|
|
7286
|
-
a(() =>
|
|
7289
|
+
a(() => Cp(() => {
|
|
7287
7290
|
let e = hl();
|
|
7288
7291
|
e && D(e);
|
|
7289
|
-
}), []), a(() =>
|
|
7292
|
+
}), []), a(() => Cp(() => {
|
|
7290
7293
|
let e = vl();
|
|
7291
7294
|
if (!e) return;
|
|
7292
7295
|
e.plate?.number ? x(String(e.plate.number).toUpperCase()) : bl();
|
|
@@ -7306,7 +7309,7 @@ function Tp({ apiKey: e, geocodeApiKey: t, drawerOpen: n, placeholder: r = "PL8S
|
|
|
7306
7309
|
return document.addEventListener("partbot-clear-vehicle", e), () => {
|
|
7307
7310
|
document.removeEventListener("partbot-clear-vehicle", e);
|
|
7308
7311
|
};
|
|
7309
|
-
}, []), a(() =>
|
|
7312
|
+
}, []), a(() => Cp(() => {
|
|
7310
7313
|
if (_?.source !== "plate" || !_.plate) {
|
|
7311
7314
|
_?.source === "mmy" && D(null);
|
|
7312
7315
|
return;
|
|
@@ -7327,7 +7330,7 @@ function Tp({ apiKey: e, geocodeApiKey: t, drawerOpen: n, placeholder: r = "PL8S
|
|
|
7327
7330
|
if (!e || !t) return;
|
|
7328
7331
|
let n = b || r, i = 0, a = 0, o = null, s = () => {
|
|
7329
7332
|
t.cancelAnimationFrame(i), i = t.requestAnimationFrame(() => {
|
|
7330
|
-
let t =
|
|
7333
|
+
let t = xp(e, n);
|
|
7331
7334
|
F((e) => e !== null && Math.abs(e - t) < .25 ? e : t);
|
|
7332
7335
|
});
|
|
7333
7336
|
};
|
|
@@ -7342,7 +7345,7 @@ function Tp({ apiKey: e, geocodeApiKey: t, drawerOpen: n, placeholder: r = "PL8S
|
|
|
7342
7345
|
]);
|
|
7343
7346
|
let I = c(() => P === null ? void 0 : { "--vehicle-garage-plate-input-fit-font-size": `${P}px` }, [P]);
|
|
7344
7347
|
a(() => {
|
|
7345
|
-
if (!(!n || !s || !t || M || S)) return
|
|
7348
|
+
if (!(!n || !s || !t || M || S)) return Cp(() => {
|
|
7346
7349
|
if (!("geolocation" in navigator)) {
|
|
7347
7350
|
N(!0);
|
|
7348
7351
|
return;
|
|
@@ -7369,7 +7372,7 @@ function Tp({ apiKey: e, geocodeApiKey: t, drawerOpen: n, placeholder: r = "PL8S
|
|
|
7369
7372
|
let L = c(() => _?.source !== "plate" || !_.plate ? null : `${_.plate.state} ${_.plate.number}`, [_]), R = w?.vehicles ?? [], z = w?.vehicle_breakdown ?? [], ee = w?.differing_attributes ?? [], B = ee.length > 0 && z.length > 0, V = R.length > 0 || B, te = w?.plate ? `${w.plate.state ?? S} ${w.plate.number}` : `${S} ${b}`, ne = !!(w?.plate && !w.error && !V), H = `${b} (${S})`;
|
|
7370
7373
|
async function re(t) {
|
|
7371
7374
|
if (!S || !b) return;
|
|
7372
|
-
let n =
|
|
7375
|
+
let n = ep({
|
|
7373
7376
|
plate: b,
|
|
7374
7377
|
vehicleState: S,
|
|
7375
7378
|
demoMode: d === !0 || d === "true"
|
|
@@ -7454,10 +7457,10 @@ function Tp({ apiKey: e, geocodeApiKey: t, drawerOpen: n, placeholder: r = "PL8S
|
|
|
7454
7457
|
window.open(`mailto:report@partbot.io?subject=Registration%20Search%20Issue&body=${encodeURIComponent(`Incorrect vehicles were shown for ${S} number plate: ${b}, vehicle: ${t}. Please provide details of the correct vehicle below:`)}`);
|
|
7455
7458
|
}
|
|
7456
7459
|
function U() {
|
|
7457
|
-
x(""), T(null), D(null), j(Lc), bl(), _l(),
|
|
7460
|
+
x(""), T(null), D(null), j(Lc), bl(), _l(), Ll();
|
|
7458
7461
|
}
|
|
7459
7462
|
function W() {
|
|
7460
|
-
f &&
|
|
7463
|
+
f && Vl(f);
|
|
7461
7464
|
}
|
|
7462
7465
|
function se(e) {
|
|
7463
7466
|
e.preventDefault(), re(Lc);
|
|
@@ -7473,7 +7476,7 @@ function Tp({ apiKey: e, geocodeApiKey: t, drawerOpen: n, placeholder: r = "PL8S
|
|
|
7473
7476
|
htmlFor: "garage-selected-plate-number",
|
|
7474
7477
|
className: "sr-only",
|
|
7475
7478
|
children: "Number plate"
|
|
7476
|
-
}), /* @__PURE__ */ h(
|
|
7479
|
+
}), /* @__PURE__ */ h(tp, {
|
|
7477
7480
|
id: "garage-selected-plate-number",
|
|
7478
7481
|
ref: y,
|
|
7479
7482
|
value: b,
|
|
@@ -7489,13 +7492,13 @@ function Tp({ apiKey: e, geocodeApiKey: t, drawerOpen: n, placeholder: r = "PL8S
|
|
|
7489
7492
|
})]
|
|
7490
7493
|
}), /* @__PURE__ */ g("div", {
|
|
7491
7494
|
className: "flex w-full flex-col gap-3",
|
|
7492
|
-
children: [/* @__PURE__ */ h(
|
|
7495
|
+
children: [/* @__PURE__ */ h(_d, {
|
|
7493
7496
|
type: "button",
|
|
7494
7497
|
variant: "outline",
|
|
7495
7498
|
className: "w-full",
|
|
7496
7499
|
onClick: U,
|
|
7497
7500
|
children: "Clear Vehicle"
|
|
7498
|
-
}), f ? /* @__PURE__ */ g(
|
|
7501
|
+
}), f ? /* @__PURE__ */ g(_d, {
|
|
7499
7502
|
type: "button",
|
|
7500
7503
|
variant: "outline",
|
|
7501
7504
|
className: "w-full",
|
|
@@ -7514,30 +7517,30 @@ function Tp({ apiKey: e, geocodeApiKey: t, drawerOpen: n, placeholder: r = "PL8S
|
|
|
7514
7517
|
children: ["Results for ", H]
|
|
7515
7518
|
})
|
|
7516
7519
|
}),
|
|
7517
|
-
w.error ? /* @__PURE__ */ g(
|
|
7520
|
+
w.error ? /* @__PURE__ */ g(rp, { children: [
|
|
7518
7521
|
/* @__PURE__ */ h(kc, {}),
|
|
7519
|
-
/* @__PURE__ */ h(
|
|
7520
|
-
/* @__PURE__ */ h(
|
|
7522
|
+
/* @__PURE__ */ h(ip, { children: "Plate lookup failed" }),
|
|
7523
|
+
/* @__PURE__ */ h(ap, { children: w.error })
|
|
7521
7524
|
] }) : null,
|
|
7522
7525
|
ne ? /* @__PURE__ */ g("div", {
|
|
7523
7526
|
className: "flex flex-col gap-3",
|
|
7524
|
-
children: [/* @__PURE__ */ g(
|
|
7527
|
+
children: [/* @__PURE__ */ g(rp, { children: [
|
|
7525
7528
|
/* @__PURE__ */ h(kc, {}),
|
|
7526
|
-
/* @__PURE__ */ h(
|
|
7527
|
-
/* @__PURE__ */ g(
|
|
7529
|
+
/* @__PURE__ */ h(ip, { children: "No matching vehicle found" }),
|
|
7530
|
+
/* @__PURE__ */ g(ap, { children: [
|
|
7528
7531
|
"We could not find any matching vehicles for",
|
|
7529
7532
|
" ",
|
|
7530
7533
|
te,
|
|
7531
7534
|
"."
|
|
7532
7535
|
] })
|
|
7533
|
-
] }), A === "https://api.cartbot.io/v1/vehicles/plate-search-retry" ? null : /* @__PURE__ */ g(
|
|
7536
|
+
] }), A === "https://api.cartbot.io/v1/vehicles/plate-search-retry" ? null : /* @__PURE__ */ g(_d, {
|
|
7534
7537
|
type: "button",
|
|
7535
7538
|
variant: "outline",
|
|
7536
7539
|
onClick: ae,
|
|
7537
7540
|
children: [/* @__PURE__ */ h(Sc, { "data-icon": "inline-start" }), "Retry lookup"]
|
|
7538
7541
|
})]
|
|
7539
7542
|
}) : null,
|
|
7540
|
-
V ? /* @__PURE__ */ h(
|
|
7543
|
+
V ? /* @__PURE__ */ h(op, {
|
|
7541
7544
|
className: "min-h-0 flex-1 rounded-lg border",
|
|
7542
7545
|
children: /* @__PURE__ */ g("div", {
|
|
7543
7546
|
className: "flex flex-col",
|
|
@@ -7548,16 +7551,16 @@ function Tp({ apiKey: e, geocodeApiKey: t, drawerOpen: n, placeholder: r = "PL8S
|
|
|
7548
7551
|
children: [/* @__PURE__ */ h("div", {
|
|
7549
7552
|
className: "text-sm leading-snug font-medium",
|
|
7550
7553
|
children: e.description
|
|
7551
|
-
}),
|
|
7554
|
+
}), Sp(e.vehicle) ? /* @__PURE__ */ h("div", {
|
|
7552
7555
|
className: "text-xs text-muted-foreground",
|
|
7553
|
-
children:
|
|
7556
|
+
children: Sp(e.vehicle)
|
|
7554
7557
|
}) : null]
|
|
7555
|
-
}), /* @__PURE__ */ g(
|
|
7558
|
+
}), /* @__PURE__ */ g(_d, {
|
|
7556
7559
|
size: "sm",
|
|
7557
7560
|
onClick: () => ie(e),
|
|
7558
7561
|
children: [/* @__PURE__ */ h(Cc, { "data-icon": "inline-start" }), "Use vehicle"]
|
|
7559
7562
|
})]
|
|
7560
|
-
}), t < R.length - 1 || B ? /* @__PURE__ */ h(
|
|
7563
|
+
}), t < R.length - 1 || B ? /* @__PURE__ */ h(Nd, {}) : null] }, `${e.description}-${t}`)), B ? /* @__PURE__ */ g("details", {
|
|
7561
7564
|
className: "group",
|
|
7562
7565
|
children: [
|
|
7563
7566
|
/* @__PURE__ */ g("summary", {
|
|
@@ -7567,7 +7570,7 @@ function Tp({ apiKey: e, geocodeApiKey: t, drawerOpen: n, placeholder: r = "PL8S
|
|
|
7567
7570
|
className: "transition-transform group-open:rotate-180"
|
|
7568
7571
|
})]
|
|
7569
7572
|
}),
|
|
7570
|
-
/* @__PURE__ */ h(
|
|
7573
|
+
/* @__PURE__ */ h(Nd, {}),
|
|
7571
7574
|
/* @__PURE__ */ h("div", {
|
|
7572
7575
|
className: "flex flex-col gap-3 p-4",
|
|
7573
7576
|
children: z.map((e, t) => /* @__PURE__ */ g("div", {
|
|
@@ -7579,13 +7582,13 @@ function Tp({ apiKey: e, geocodeApiKey: t, drawerOpen: n, placeholder: r = "PL8S
|
|
|
7579
7582
|
children: [
|
|
7580
7583
|
/* @__PURE__ */ g("span", {
|
|
7581
7584
|
className: "font-medium text-foreground",
|
|
7582
|
-
children: [
|
|
7585
|
+
children: [wp(t), ":"]
|
|
7583
7586
|
}),
|
|
7584
7587
|
" ",
|
|
7585
|
-
|
|
7588
|
+
Tp(e.vehicle[t])
|
|
7586
7589
|
]
|
|
7587
7590
|
}, t))
|
|
7588
|
-
}), /* @__PURE__ */ h(
|
|
7591
|
+
}), /* @__PURE__ */ h(_d, {
|
|
7589
7592
|
type: "button",
|
|
7590
7593
|
size: "sm",
|
|
7591
7594
|
onClick: () => ie(e),
|
|
@@ -7603,17 +7606,17 @@ function Tp({ apiKey: e, geocodeApiKey: t, drawerOpen: n, placeholder: r = "PL8S
|
|
|
7603
7606
|
}) : null,
|
|
7604
7607
|
o ? /* @__PURE__ */ h("div", {
|
|
7605
7608
|
className: "text-sm text-muted-foreground [&_a]:underline [&_a]:underline-offset-4",
|
|
7606
|
-
dangerouslySetInnerHTML: { __html:
|
|
7609
|
+
dangerouslySetInnerHTML: { __html: Gf.sanitize(o) }
|
|
7607
7610
|
}) : null,
|
|
7608
7611
|
/* @__PURE__ */ g("div", {
|
|
7609
7612
|
className: "flex items-center justify-between gap-3",
|
|
7610
|
-
children: [/* @__PURE__ */ h(
|
|
7613
|
+
children: [/* @__PURE__ */ h(_d, {
|
|
7611
7614
|
type: "button",
|
|
7612
7615
|
variant: "ghost",
|
|
7613
7616
|
size: "sm",
|
|
7614
7617
|
onClick: oe,
|
|
7615
7618
|
children: "Report incorrect search results"
|
|
7616
|
-
}), /* @__PURE__ */ g(
|
|
7619
|
+
}), /* @__PURE__ */ g(_d, {
|
|
7617
7620
|
type: "button",
|
|
7618
7621
|
variant: "ghost",
|
|
7619
7622
|
size: "sm",
|
|
@@ -7635,7 +7638,7 @@ function Tp({ apiKey: e, geocodeApiKey: t, drawerOpen: n, placeholder: r = "PL8S
|
|
|
7635
7638
|
className: "flex w-full flex-col gap-2",
|
|
7636
7639
|
children: i ? /* @__PURE__ */ h("div", {
|
|
7637
7640
|
className: "text-balance text-sm leading-relaxed text-muted-foreground [&_a]:underline [&_a]:underline-offset-4",
|
|
7638
|
-
dangerouslySetInnerHTML: { __html:
|
|
7641
|
+
dangerouslySetInnerHTML: { __html: Gf.sanitize(i) }
|
|
7639
7642
|
}) : null
|
|
7640
7643
|
}),
|
|
7641
7644
|
/* @__PURE__ */ g("div", {
|
|
@@ -7644,7 +7647,7 @@ function Tp({ apiKey: e, geocodeApiKey: t, drawerOpen: n, placeholder: r = "PL8S
|
|
|
7644
7647
|
htmlFor: "garage-plate-number",
|
|
7645
7648
|
className: "sr-only",
|
|
7646
7649
|
children: "Number plate"
|
|
7647
|
-
}), /* @__PURE__ */ h(
|
|
7650
|
+
}), /* @__PURE__ */ h(tp, {
|
|
7648
7651
|
id: "garage-plate-number",
|
|
7649
7652
|
ref: y,
|
|
7650
7653
|
value: b,
|
|
@@ -7665,7 +7668,7 @@ function Tp({ apiKey: e, geocodeApiKey: t, drawerOpen: n, placeholder: r = "PL8S
|
|
|
7665
7668
|
id: "garage-plate-state-label",
|
|
7666
7669
|
className: "sr-only",
|
|
7667
7670
|
children: "State"
|
|
7668
|
-
}), /* @__PURE__ */ h(
|
|
7671
|
+
}), /* @__PURE__ */ h(dp, {
|
|
7669
7672
|
type: "single",
|
|
7670
7673
|
variant: "outline",
|
|
7671
7674
|
size: "lg",
|
|
@@ -7676,7 +7679,7 @@ function Tp({ apiKey: e, geocodeApiKey: t, drawerOpen: n, placeholder: r = "PL8S
|
|
|
7676
7679
|
},
|
|
7677
7680
|
className: "w-full",
|
|
7678
7681
|
"aria-labelledby": "garage-plate-state-label",
|
|
7679
|
-
children: Bc.map((e) => /* @__PURE__ */ h(
|
|
7682
|
+
children: Bc.map((e) => /* @__PURE__ */ h(fp, {
|
|
7680
7683
|
value: e,
|
|
7681
7684
|
className: "h-11 flex-1 rounded-none border-border bg-background px-3 text-sm font-medium text-foreground/70 shadow-none transition-colors first:rounded-l-xl last:rounded-r-xl hover:bg-muted/50 hover:text-foreground data-[state=on]:bg-primary data-[state=on]:text-primary-foreground",
|
|
7682
7685
|
"aria-label": e,
|
|
@@ -7684,14 +7687,14 @@ function Tp({ apiKey: e, geocodeApiKey: t, drawerOpen: n, placeholder: r = "PL8S
|
|
|
7684
7687
|
}, e))
|
|
7685
7688
|
})]
|
|
7686
7689
|
}),
|
|
7687
|
-
/* @__PURE__ */ g(
|
|
7690
|
+
/* @__PURE__ */ g(_d, {
|
|
7688
7691
|
type: "submit",
|
|
7689
7692
|
className: "h-11 w-full",
|
|
7690
7693
|
disabled: !S || !b || O,
|
|
7691
7694
|
children: [
|
|
7692
7695
|
/* @__PURE__ */ h(Dc, { "data-icon": "inline-start" }),
|
|
7693
7696
|
"Find vehicle",
|
|
7694
|
-
O ? /* @__PURE__ */ h(
|
|
7697
|
+
O ? /* @__PURE__ */ h(cp, { className: "ml-2" }) : null
|
|
7695
7698
|
]
|
|
7696
7699
|
})
|
|
7697
7700
|
]
|
|
@@ -7701,7 +7704,7 @@ function Tp({ apiKey: e, geocodeApiKey: t, drawerOpen: n, placeholder: r = "PL8S
|
|
|
7701
7704
|
}
|
|
7702
7705
|
//#endregion
|
|
7703
7706
|
//#region node_modules/meilisearch/dist/esm/index.js
|
|
7704
|
-
var
|
|
7707
|
+
var Dp = {
|
|
7705
7708
|
INDEX_CREATION_FAILED: "index_creation_failed",
|
|
7706
7709
|
MISSING_INDEX_UID: "missing_index_uid",
|
|
7707
7710
|
INDEX_ALREADY_EXISTS: "index_already_exists",
|
|
@@ -7819,21 +7822,21 @@ var Ep = {
|
|
|
7819
7822
|
INVALID_FACET_SEARCH_FACET_QUERY: "invalid_facet_search_facet_query",
|
|
7820
7823
|
INVALID_SEARCH_RANKING_SCORE_THRESHOLD: "invalid_search_ranking_score_threshold",
|
|
7821
7824
|
INVALID_SIMILAR_RANKING_SCORE_THRESHOLD: "invalid_similar_ranking_score_threshold"
|
|
7822
|
-
},
|
|
7825
|
+
}, Op = class extends Error {
|
|
7823
7826
|
name = "MeiliSearchError";
|
|
7824
|
-
},
|
|
7827
|
+
}, kp = class extends Op {
|
|
7825
7828
|
name = "MeiliSearchApiError";
|
|
7826
7829
|
cause;
|
|
7827
7830
|
response;
|
|
7828
7831
|
constructor(e, t) {
|
|
7829
7832
|
super(t?.message ?? `${e.status}: ${e.statusText}`), this.response = e, t !== void 0 && (this.cause = t);
|
|
7830
7833
|
}
|
|
7831
|
-
},
|
|
7834
|
+
}, Ap = class extends Op {
|
|
7832
7835
|
name = "MeiliSearchRequestError";
|
|
7833
7836
|
constructor(e, t) {
|
|
7834
7837
|
super(`Request to ${e} has failed`, { cause: t });
|
|
7835
7838
|
}
|
|
7836
|
-
},
|
|
7839
|
+
}, jp = class extends Op {
|
|
7837
7840
|
name = "MeiliSearchRequestTimeOutError";
|
|
7838
7841
|
cause;
|
|
7839
7842
|
constructor(e, t) {
|
|
@@ -7842,7 +7845,7 @@ var Ep = {
|
|
|
7842
7845
|
requestInit: t
|
|
7843
7846
|
};
|
|
7844
7847
|
}
|
|
7845
|
-
},
|
|
7848
|
+
}, Mp = class extends Op {
|
|
7846
7849
|
name = "MeiliSearchTaskTimeOutError";
|
|
7847
7850
|
cause;
|
|
7848
7851
|
constructor(e, t) {
|
|
@@ -7851,26 +7854,26 @@ var Ep = {
|
|
|
7851
7854
|
timeout: t
|
|
7852
7855
|
};
|
|
7853
7856
|
}
|
|
7854
|
-
},
|
|
7855
|
-
function
|
|
7857
|
+
}, Np = { version: "0.53.0" };
|
|
7858
|
+
function Pp(e) {
|
|
7856
7859
|
return e.startsWith("https://") || e.startsWith("http://") ? e : `http://${e}`;
|
|
7857
7860
|
}
|
|
7858
|
-
function
|
|
7861
|
+
function Fp(e) {
|
|
7859
7862
|
return e.endsWith("/") || (e += "/"), e;
|
|
7860
7863
|
}
|
|
7861
|
-
function
|
|
7864
|
+
function Ip(e, t) {
|
|
7862
7865
|
for (let [n, r] of Object.entries(t)) r != null && e.set(n, Array.isArray(r) ? r.join() : r instanceof Date ? r.toISOString() : String(r));
|
|
7863
7866
|
}
|
|
7864
|
-
function
|
|
7865
|
-
let n = "X-Meilisearch-Client", r = `Meilisearch JavaScript (v${
|
|
7867
|
+
function Lp(e, t) {
|
|
7868
|
+
let n = "X-Meilisearch-Client", r = `Meilisearch JavaScript (v${Np.version})`, i = "Content-Type", a = "Authorization", o = new Headers(t);
|
|
7866
7869
|
if (e.apiKey && !o.has(a) && o.set(a, `Bearer ${e.apiKey}`), o.has(i) || o.set(i, "application/json"), e.clientAgents !== void 0) {
|
|
7867
7870
|
let t = e.clientAgents.concat(r);
|
|
7868
7871
|
o.set(n, t.join(" ; "));
|
|
7869
7872
|
} else o.set(n, r);
|
|
7870
7873
|
return o;
|
|
7871
7874
|
}
|
|
7872
|
-
var
|
|
7873
|
-
function
|
|
7875
|
+
var Rp = Symbol("<timeout>");
|
|
7876
|
+
function zp(e, t) {
|
|
7874
7877
|
let { signal: n } = e, r = new AbortController();
|
|
7875
7878
|
if (n != null) {
|
|
7876
7879
|
let e = null;
|
|
@@ -7881,7 +7884,7 @@ function Rp(e, t) {
|
|
|
7881
7884
|
}
|
|
7882
7885
|
return () => {
|
|
7883
7886
|
if (n.aborted) return;
|
|
7884
|
-
let i = setTimeout(() => r.abort(
|
|
7887
|
+
let i = setTimeout(() => r.abort(Rp), t), a = () => {
|
|
7885
7888
|
clearTimeout(i), e !== null && r.signal.removeEventListener("abort", e);
|
|
7886
7889
|
};
|
|
7887
7890
|
return n.addEventListener("abort", a, { once: !0 }), () => {
|
|
@@ -7890,25 +7893,25 @@ function Rp(e, t) {
|
|
|
7890
7893
|
};
|
|
7891
7894
|
}
|
|
7892
7895
|
return e.signal = r.signal, () => {
|
|
7893
|
-
let e = setTimeout(() => r.abort(
|
|
7896
|
+
let e = setTimeout(() => r.abort(Rp), t);
|
|
7894
7897
|
return () => clearTimeout(e);
|
|
7895
7898
|
};
|
|
7896
7899
|
}
|
|
7897
|
-
var
|
|
7900
|
+
var Bp = class {
|
|
7898
7901
|
#e;
|
|
7899
7902
|
#t;
|
|
7900
7903
|
#n;
|
|
7901
7904
|
#r;
|
|
7902
7905
|
constructor(e) {
|
|
7903
|
-
let t = Pp(
|
|
7906
|
+
let t = Fp(Pp(e.host));
|
|
7904
7907
|
try {
|
|
7905
7908
|
this.#e = new URL(t);
|
|
7906
7909
|
} catch (e) {
|
|
7907
|
-
throw new
|
|
7910
|
+
throw new Op("The provided host is not valid", { cause: e });
|
|
7908
7911
|
}
|
|
7909
7912
|
this.#t = {
|
|
7910
7913
|
...e.requestInit,
|
|
7911
|
-
headers:
|
|
7914
|
+
headers: Lp(e, e.requestInit?.headers)
|
|
7912
7915
|
}, this.#n = e.httpClient, this.#r = e.timeout;
|
|
7913
7916
|
}
|
|
7914
7917
|
#i(e, t) {
|
|
@@ -7920,7 +7923,7 @@ var zp = class {
|
|
|
7920
7923
|
}
|
|
7921
7924
|
#a({ path: e, method: t, params: n, contentType: r, body: i, extraRequestInit: a }) {
|
|
7922
7925
|
let o = new URL(e, this.#e);
|
|
7923
|
-
return n !== void 0 &&
|
|
7926
|
+
return n !== void 0 && Ip(o.searchParams, n), {
|
|
7924
7927
|
url: o,
|
|
7925
7928
|
init: {
|
|
7926
7929
|
method: t,
|
|
@@ -7932,17 +7935,17 @@ var zp = class {
|
|
|
7932
7935
|
};
|
|
7933
7936
|
}
|
|
7934
7937
|
async #o(e) {
|
|
7935
|
-
let { url: t, init: n } = this.#a(e), r = (this.#r === void 0 ? null :
|
|
7938
|
+
let { url: t, init: n } = this.#a(e), r = (this.#r === void 0 ? null : zp(n, this.#r))?.(), i, a;
|
|
7936
7939
|
try {
|
|
7937
7940
|
if (this.#n !== void 0) return await this.#n(t, n);
|
|
7938
7941
|
i = await fetch(t, n), a = await i.text();
|
|
7939
7942
|
} catch (e) {
|
|
7940
|
-
throw new
|
|
7943
|
+
throw new Ap(t.toString(), Object.is(e, Rp) ? new jp(this.#r, n) : e);
|
|
7941
7944
|
} finally {
|
|
7942
7945
|
r?.();
|
|
7943
7946
|
}
|
|
7944
7947
|
let o = a === "" ? void 0 : JSON.parse(a);
|
|
7945
|
-
if (!i.ok) throw new
|
|
7948
|
+
if (!i.ok) throw new kp(i, o);
|
|
7946
7949
|
return o;
|
|
7947
7950
|
}
|
|
7948
7951
|
get(e) {
|
|
@@ -7979,41 +7982,41 @@ var zp = class {
|
|
|
7979
7982
|
});
|
|
7980
7983
|
}
|
|
7981
7984
|
async #s(e) {
|
|
7982
|
-
let { url: t, init: n } = this.#a(e), r = (this.#r === void 0 ? null :
|
|
7985
|
+
let { url: t, init: n } = this.#a(e), r = (this.#r === void 0 ? null : zp(n, this.#r))?.(), i;
|
|
7983
7986
|
try {
|
|
7984
7987
|
if (this.#n !== void 0) {
|
|
7985
7988
|
let e = await this.#n(t, n);
|
|
7986
|
-
if (!(e instanceof ReadableStream)) throw new
|
|
7989
|
+
if (!(e instanceof ReadableStream)) throw new Op("Custom HTTP client must return a ReadableStream for streaming requests");
|
|
7987
7990
|
return e;
|
|
7988
7991
|
}
|
|
7989
7992
|
i = await fetch(t, n);
|
|
7990
7993
|
} catch (e) {
|
|
7991
|
-
throw new
|
|
7994
|
+
throw new Ap(t.toString(), Object.is(e, Rp) ? new jp(this.#r, n) : e);
|
|
7992
7995
|
} finally {
|
|
7993
7996
|
r?.();
|
|
7994
7997
|
}
|
|
7995
7998
|
if (!i.ok) {
|
|
7996
7999
|
let e = await i.text(), t = e === "" ? void 0 : JSON.parse(e);
|
|
7997
|
-
throw new
|
|
8000
|
+
throw new kp(i, t);
|
|
7998
8001
|
}
|
|
7999
|
-
if (!i.body) throw new
|
|
8002
|
+
if (!i.body) throw new Op("Response body is null - server did not return a readable stream");
|
|
8000
8003
|
return i.body;
|
|
8001
8004
|
}
|
|
8002
|
-
},
|
|
8003
|
-
function
|
|
8005
|
+
}, Vp = Symbol("<task timeout>");
|
|
8006
|
+
function Hp(e) {
|
|
8004
8007
|
return function(t) {
|
|
8005
8008
|
return Object.defineProperty(t, "waitTask", { async value(n) {
|
|
8006
8009
|
return await e.waitForTask(await t, n);
|
|
8007
8010
|
} });
|
|
8008
8011
|
};
|
|
8009
8012
|
}
|
|
8010
|
-
var
|
|
8013
|
+
var Up = (e) => typeof e == "number" ? e : e.taskUid, Wp = class {
|
|
8011
8014
|
#e;
|
|
8012
8015
|
#t;
|
|
8013
8016
|
#n;
|
|
8014
8017
|
#r;
|
|
8015
8018
|
constructor(e, t) {
|
|
8016
|
-
this.#e = e, this.#t = t?.timeout ?? 5e3, this.#n = t?.interval ?? 50, this.#r =
|
|
8019
|
+
this.#e = e, this.#t = t?.timeout ?? 5e3, this.#n = t?.interval ?? 50, this.#r = Hp(this);
|
|
8017
8020
|
}
|
|
8018
8021
|
async getTask(e, t) {
|
|
8019
8022
|
return await this.#e.get({
|
|
@@ -8028,7 +8031,7 @@ var Hp = (e) => typeof e == "number" ? e : e.taskUid, Up = class {
|
|
|
8028
8031
|
});
|
|
8029
8032
|
}
|
|
8030
8033
|
async waitForTask(e, t) {
|
|
8031
|
-
let n =
|
|
8034
|
+
let n = Up(e), r = t?.timeout ?? this.#t, i = t?.interval ?? this.#n, a = r > 0 ? new AbortController() : null, o = a === null ? void 0 : setTimeout(() => void a.abort(Vp), r);
|
|
8032
8035
|
try {
|
|
8033
8036
|
for (;;) {
|
|
8034
8037
|
let e = await this.getTask(n, { signal: a?.signal });
|
|
@@ -8036,7 +8039,7 @@ var Hp = (e) => typeof e == "number" ? e : e.taskUid, Up = class {
|
|
|
8036
8039
|
i > 0 && await new Promise((e) => setTimeout(e, i));
|
|
8037
8040
|
}
|
|
8038
8041
|
} catch (e) {
|
|
8039
|
-
throw Object.is(e.cause,
|
|
8042
|
+
throw Object.is(e.cause, Vp) ? new Mp(n, r) : e;
|
|
8040
8043
|
}
|
|
8041
8044
|
}
|
|
8042
8045
|
async *waitForTasksIter(e, t) {
|
|
@@ -8060,8 +8063,8 @@ var Hp = (e) => typeof e == "number" ? e : e.taskUid, Up = class {
|
|
|
8060
8063
|
}));
|
|
8061
8064
|
}
|
|
8062
8065
|
};
|
|
8063
|
-
function
|
|
8064
|
-
let n =
|
|
8066
|
+
function Gp(e, t) {
|
|
8067
|
+
let n = Hp(t);
|
|
8065
8068
|
return {
|
|
8066
8069
|
post: (...t) => n(e.post(...t)),
|
|
8067
8070
|
put: (...t) => n(e.put(...t)),
|
|
@@ -8069,7 +8072,7 @@ function Wp(e, t) {
|
|
|
8069
8072
|
delete: (...t) => n(e.delete(...t))
|
|
8070
8073
|
};
|
|
8071
8074
|
}
|
|
8072
|
-
var
|
|
8075
|
+
var Kp = class {
|
|
8073
8076
|
uid;
|
|
8074
8077
|
primaryKey;
|
|
8075
8078
|
createdAt;
|
|
@@ -8078,7 +8081,7 @@ var Gp = class {
|
|
|
8078
8081
|
tasks;
|
|
8079
8082
|
#e;
|
|
8080
8083
|
constructor(e, t, n) {
|
|
8081
|
-
this.uid = t, this.primaryKey = n, this.httpRequest = new
|
|
8084
|
+
this.uid = t, this.primaryKey = n, this.httpRequest = new Bp(e), this.tasks = new Wp(this.httpRequest, e.defaultWaitOptions), this.#e = Gp(this.httpRequest, this.tasks);
|
|
8082
8085
|
}
|
|
8083
8086
|
async search(e, t, n) {
|
|
8084
8087
|
return await this.httpRequest.post({
|
|
@@ -8093,7 +8096,7 @@ var Gp = class {
|
|
|
8093
8096
|
async searchGet(e, t, n) {
|
|
8094
8097
|
let r = (e) => {
|
|
8095
8098
|
if (typeof e == "string") return e;
|
|
8096
|
-
if (Array.isArray(e)) throw new
|
|
8099
|
+
if (Array.isArray(e)) throw new Op("The filter query parameter should be in string format when using searchGet");
|
|
8097
8100
|
}, i = {
|
|
8098
8101
|
q: e,
|
|
8099
8102
|
...t,
|
|
@@ -8136,8 +8139,8 @@ var Gp = class {
|
|
|
8136
8139
|
return this.primaryKey = (await this.getRawInfo()).primaryKey, this.primaryKey;
|
|
8137
8140
|
}
|
|
8138
8141
|
static create(e, t = {}, n) {
|
|
8139
|
-
let r = new
|
|
8140
|
-
return
|
|
8142
|
+
let r = new Bp(n);
|
|
8143
|
+
return Gp(r, new Wp(r)).post({
|
|
8141
8144
|
path: "indexes",
|
|
8142
8145
|
body: {
|
|
8143
8146
|
...t,
|
|
@@ -8497,7 +8500,7 @@ var Gp = class {
|
|
|
8497
8500
|
body: e
|
|
8498
8501
|
});
|
|
8499
8502
|
}
|
|
8500
|
-
},
|
|
8503
|
+
}, qp = class {
|
|
8501
8504
|
#e;
|
|
8502
8505
|
constructor(e) {
|
|
8503
8506
|
this.#e = e;
|
|
@@ -8511,7 +8514,7 @@ var Gp = class {
|
|
|
8511
8514
|
params: e
|
|
8512
8515
|
});
|
|
8513
8516
|
}
|
|
8514
|
-
},
|
|
8517
|
+
}, Jp = class {
|
|
8515
8518
|
#e;
|
|
8516
8519
|
#t;
|
|
8517
8520
|
constructor(e, t) {
|
|
@@ -8536,7 +8539,7 @@ var Gp = class {
|
|
|
8536
8539
|
body: e
|
|
8537
8540
|
});
|
|
8538
8541
|
}
|
|
8539
|
-
},
|
|
8542
|
+
}, Yp = class {
|
|
8540
8543
|
config;
|
|
8541
8544
|
httpRequest;
|
|
8542
8545
|
#e;
|
|
@@ -8549,19 +8552,19 @@ var Gp = class {
|
|
|
8549
8552
|
}
|
|
8550
8553
|
#n;
|
|
8551
8554
|
constructor(e) {
|
|
8552
|
-
this.config = e, this.httpRequest = new
|
|
8555
|
+
this.config = e, this.httpRequest = new Bp(e), this.#e = new Wp(this.httpRequest, e.defaultWaitOptions), this.#t = new qp(this.httpRequest), this.#n = Gp(this.httpRequest, this.tasks);
|
|
8553
8556
|
}
|
|
8554
8557
|
index(e) {
|
|
8555
|
-
return new
|
|
8558
|
+
return new Kp(this.config, e);
|
|
8556
8559
|
}
|
|
8557
8560
|
async getIndex(e) {
|
|
8558
|
-
return new
|
|
8561
|
+
return new Kp(this.config, e).fetchInfo();
|
|
8559
8562
|
}
|
|
8560
8563
|
async getRawIndex(e) {
|
|
8561
|
-
return new
|
|
8564
|
+
return new Kp(this.config, e).getRawInfo();
|
|
8562
8565
|
}
|
|
8563
8566
|
async getIndexes(e) {
|
|
8564
|
-
let t = await this.getRawIndexes(e), n = t.results.map((e) => new
|
|
8567
|
+
let t = await this.getRawIndexes(e), n = t.results.map((e) => new Kp(this.config, e.uid, e.primaryKey));
|
|
8565
8568
|
return {
|
|
8566
8569
|
...t,
|
|
8567
8570
|
results: n
|
|
@@ -8574,19 +8577,19 @@ var Gp = class {
|
|
|
8574
8577
|
});
|
|
8575
8578
|
}
|
|
8576
8579
|
createIndex(e, t) {
|
|
8577
|
-
return
|
|
8580
|
+
return Kp.create(e, t, this.config);
|
|
8578
8581
|
}
|
|
8579
8582
|
updateIndex(e, t) {
|
|
8580
|
-
return new
|
|
8583
|
+
return new Kp(this.config, e).update(t);
|
|
8581
8584
|
}
|
|
8582
8585
|
deleteIndex(e) {
|
|
8583
|
-
return new
|
|
8586
|
+
return new Kp(this.config, e).delete();
|
|
8584
8587
|
}
|
|
8585
8588
|
async deleteIndexIfExists(e) {
|
|
8586
8589
|
try {
|
|
8587
8590
|
return await this.deleteIndex(e), !0;
|
|
8588
8591
|
} catch (e) {
|
|
8589
|
-
if (e?.cause?.code ===
|
|
8592
|
+
if (e?.cause?.code === Dp.INDEX_NOT_FOUND) return !1;
|
|
8590
8593
|
throw e;
|
|
8591
8594
|
}
|
|
8592
8595
|
}
|
|
@@ -8604,7 +8607,7 @@ var Gp = class {
|
|
|
8604
8607
|
});
|
|
8605
8608
|
}
|
|
8606
8609
|
chat(e) {
|
|
8607
|
-
return new
|
|
8610
|
+
return new Jp(this.httpRequest, e);
|
|
8608
8611
|
}
|
|
8609
8612
|
async getChatWorkspaces() {
|
|
8610
8613
|
return await this.httpRequest.get({ path: "chats" });
|
|
@@ -8701,24 +8704,24 @@ var Gp = class {
|
|
|
8701
8704
|
});
|
|
8702
8705
|
}
|
|
8703
8706
|
};
|
|
8704
|
-
function
|
|
8707
|
+
function Xp(e) {
|
|
8705
8708
|
return (e?.trim() || "https://api.cartbot.io").replace(/\/+$/, "");
|
|
8706
8709
|
}
|
|
8707
|
-
function
|
|
8710
|
+
function Zp(e, t) {
|
|
8708
8711
|
let n = t.replace(/^\/+/, "");
|
|
8709
|
-
return `${
|
|
8712
|
+
return `${Xp(e)}/${n}`;
|
|
8710
8713
|
}
|
|
8711
8714
|
//#endregion
|
|
8712
8715
|
//#region src/lib/mmy.ts
|
|
8713
|
-
var
|
|
8714
|
-
function
|
|
8716
|
+
var Qp = /[-\u2010-\u2015]/, $p = /[-\u2010-\u2015]/g;
|
|
8717
|
+
function em(e) {
|
|
8715
8718
|
return e.replace(/\\/g, "\\\\").replace(/"/g, "\\\"");
|
|
8716
8719
|
}
|
|
8717
|
-
function
|
|
8720
|
+
function tm(e, t) {
|
|
8718
8721
|
if (!/^[A-Za-z_][A-Za-z0-9_]*$/.test(e)) throw Error(`Invalid Meilisearch filter field: ${e}`);
|
|
8719
|
-
return `${e} = "${
|
|
8722
|
+
return `${e} = "${em(String(t))}"`;
|
|
8720
8723
|
}
|
|
8721
|
-
function
|
|
8724
|
+
function nm(e) {
|
|
8722
8725
|
let [t, ...n] = e.split(":"), r = n.join(":");
|
|
8723
8726
|
if (r.includes(" > ")) {
|
|
8724
8727
|
let e = r.split(" > "), n = e[e.length - 1]?.trim();
|
|
@@ -8726,53 +8729,53 @@ function tm(e) {
|
|
|
8726
8729
|
let i = [];
|
|
8727
8730
|
if (t !== "make" && e.length >= 2) {
|
|
8728
8731
|
let t = e[0]?.trim();
|
|
8729
|
-
t && i.push(`make = "${
|
|
8732
|
+
t && i.push(`make = "${em(t)}"`);
|
|
8730
8733
|
}
|
|
8731
|
-
return i.push(`${t} = "${
|
|
8734
|
+
return i.push(`${t} = "${em(n)}"`), i.join(" AND ");
|
|
8732
8735
|
}
|
|
8733
|
-
return `${t} = "${
|
|
8736
|
+
return `${t} = "${em(r)}"`;
|
|
8734
8737
|
}
|
|
8735
|
-
function
|
|
8738
|
+
function rm(e = [], t = []) {
|
|
8736
8739
|
let n = [];
|
|
8737
8740
|
return e.forEach((e) => {
|
|
8738
|
-
let t = (Array.isArray(e) ? e : [e]).map(
|
|
8741
|
+
let t = (Array.isArray(e) ? e : [e]).map(nm).filter((e) => !!e);
|
|
8739
8742
|
t.length !== 0 && n.push(t.length === 1 ? t[0] : `(${t.map((e) => e.includes(" AND ") ? `(${e})` : e).join(" OR ")})`);
|
|
8740
8743
|
}), t.forEach((e) => {
|
|
8741
8744
|
n.push(e);
|
|
8742
8745
|
}), n.length > 0 ? n.join(" AND ") : null;
|
|
8743
8746
|
}
|
|
8744
|
-
function rm(e) {
|
|
8745
|
-
return String(e ?? "").normalize("NFKD").replace(/[\u0300-\u036f]/g, "").toUpperCase().trim().replace(/\s+/g, " ");
|
|
8746
|
-
}
|
|
8747
8747
|
function im(e) {
|
|
8748
|
-
return
|
|
8748
|
+
return String(e ?? "").normalize("NFKD").replace(/[\u0300-\u036f]/g, "").toUpperCase().trim().replace(/\s+/g, " ");
|
|
8749
8749
|
}
|
|
8750
8750
|
function am(e) {
|
|
8751
|
-
return
|
|
8751
|
+
return im(e).replace($p, "").replace(/\s+/g, "");
|
|
8752
8752
|
}
|
|
8753
8753
|
function om(e) {
|
|
8754
|
-
return String(e ?? "")
|
|
8754
|
+
return Qp.test(String(e ?? ""));
|
|
8755
8755
|
}
|
|
8756
8756
|
function sm(e) {
|
|
8757
|
-
return
|
|
8757
|
+
return String(e ?? "").match(/\s+/g)?.length ?? 0;
|
|
8758
8758
|
}
|
|
8759
8759
|
function cm(e) {
|
|
8760
|
-
return e.
|
|
8761
|
-
let n = om(e.value);
|
|
8762
|
-
return om(t.value) > n ? t : e;
|
|
8763
|
-
}, e[0]);
|
|
8760
|
+
return new Set(e.map((e) => sm(e.value))).size > 1;
|
|
8764
8761
|
}
|
|
8765
8762
|
function lm(e) {
|
|
8763
|
+
return e.find((e) => om(e.value)) || e.reduce((e, t) => {
|
|
8764
|
+
let n = sm(e.value);
|
|
8765
|
+
return sm(t.value) > n ? t : e;
|
|
8766
|
+
}, e[0]);
|
|
8767
|
+
}
|
|
8768
|
+
function um(e) {
|
|
8766
8769
|
let t = [e.refinement, ...e.refinements ?? []], n = /* @__PURE__ */ new Set();
|
|
8767
8770
|
return t.filter((e) => {
|
|
8768
8771
|
let t = String(e);
|
|
8769
8772
|
return n.has(t) ? !1 : (n.add(t), !0);
|
|
8770
8773
|
});
|
|
8771
8774
|
}
|
|
8772
|
-
function
|
|
8775
|
+
function dm(e) {
|
|
8773
8776
|
let t = /* @__PURE__ */ new Map(), n = [];
|
|
8774
8777
|
e.forEach((e) => {
|
|
8775
|
-
let r =
|
|
8778
|
+
let r = am(e.value);
|
|
8776
8779
|
if (!r) {
|
|
8777
8780
|
n.push(e);
|
|
8778
8781
|
return;
|
|
@@ -8781,8 +8784,8 @@ function um(e) {
|
|
|
8781
8784
|
i.push(e), t.set(r, i);
|
|
8782
8785
|
});
|
|
8783
8786
|
let r = Array.from(t.values()).flatMap((e) => {
|
|
8784
|
-
if (e.length < 2 || !e.some((e) =>
|
|
8785
|
-
let t =
|
|
8787
|
+
if (e.length < 2 || !e.some((e) => om(e.value)) && !cm(e)) return e;
|
|
8788
|
+
let t = lm(e), n = [...um(t), ...e.filter((e) => e !== t).flatMap(um)], r = Array.from(new Map(n.map((e) => [String(e), e])).values());
|
|
8786
8789
|
return [{
|
|
8787
8790
|
...t,
|
|
8788
8791
|
popularity: Math.max(...e.map((e) => Number(e.popularity ?? 0))),
|
|
@@ -8791,18 +8794,18 @@ function um(e) {
|
|
|
8791
8794
|
});
|
|
8792
8795
|
return [...n, ...r];
|
|
8793
8796
|
}
|
|
8794
|
-
function
|
|
8797
|
+
function fm(e, t, n = []) {
|
|
8795
8798
|
if (!t) return [];
|
|
8796
|
-
let r = n.map((e) => e == null ? [] : typeof e == "object" ?
|
|
8799
|
+
let r = n.map((e) => e == null ? [] : typeof e == "object" ? um(e) : [e]), i = um(t);
|
|
8797
8800
|
return [...r, i].reduce((e, t) => e.flatMap((e) => t.map((t) => [...e, t])), [[]]).map((t) => `${e}:${t.join(" > ")}`);
|
|
8798
8801
|
}
|
|
8799
|
-
function
|
|
8802
|
+
function pm(e) {
|
|
8800
8803
|
return String(e ?? "").split(/;|,(?![^(]*\))/).map((e) => e.trim()).filter(Boolean);
|
|
8801
8804
|
}
|
|
8802
|
-
function pm(e, t) {
|
|
8803
|
-
return !t || t.size === 0 || !e.some((e) => [e.value, ...lm(e)].some((e) => t.has(rm(e)))) ? e : e.filter((e) => [e.value, ...lm(e)].some((e) => t.has(rm(e))));
|
|
8804
|
-
}
|
|
8805
8805
|
function mm(e, t) {
|
|
8806
|
+
return !t || t.size === 0 || !e.some((e) => [e.value, ...um(e)].some((e) => t.has(im(e)))) ? e : e.filter((e) => [e.value, ...um(e)].some((e) => t.has(im(e))));
|
|
8807
|
+
}
|
|
8808
|
+
function hm(e, t) {
|
|
8806
8809
|
let n = String(e || t || "").trim();
|
|
8807
8810
|
return n ? (/^https?:\/\//i.test(n) ? n : `https://${n}`).replace(/\/+$/, "") : "";
|
|
8808
8811
|
}
|
|
@@ -8816,14 +8819,14 @@ e.forwardRef(function({ className: e, ...t }, n) {
|
|
|
8816
8819
|
});
|
|
8817
8820
|
//#endregion
|
|
8818
8821
|
//#region src/components/ui/field.tsx
|
|
8819
|
-
function
|
|
8822
|
+
function gm({ className: e, ...t }) {
|
|
8820
8823
|
return /* @__PURE__ */ h("div", {
|
|
8821
8824
|
"data-slot": "field-group",
|
|
8822
8825
|
className: Q("group/field-group @container/field-group flex w-full flex-col gap-5 data-[slot=checkbox-group]:gap-3 *:data-[slot=field-group]:gap-4", e),
|
|
8823
8826
|
...t
|
|
8824
8827
|
});
|
|
8825
8828
|
}
|
|
8826
|
-
var
|
|
8829
|
+
var _m = Kl("group/field flex w-full gap-2 data-[invalid=true]:text-destructive", {
|
|
8827
8830
|
variants: { orientation: {
|
|
8828
8831
|
vertical: "flex-col *:w-full [&>.sr-only]:w-auto",
|
|
8829
8832
|
horizontal: "flex-row items-center has-[>[data-slot=field-content]]:items-start *:data-[slot=field-label]:flex-auto has-[>[data-slot=field-content]]:[&>[role=checkbox],[role=radio]]:mt-px",
|
|
@@ -8831,38 +8834,38 @@ var gm = Gl("group/field flex w-full gap-2 data-[invalid=true]:text-destructive"
|
|
|
8831
8834
|
} },
|
|
8832
8835
|
defaultVariants: { orientation: "vertical" }
|
|
8833
8836
|
});
|
|
8834
|
-
function
|
|
8837
|
+
function vm({ className: e, orientation: t = "vertical", ...n }) {
|
|
8835
8838
|
return /* @__PURE__ */ h("div", {
|
|
8836
8839
|
role: "group",
|
|
8837
8840
|
"data-slot": "field",
|
|
8838
8841
|
"data-orientation": t,
|
|
8839
|
-
className: Q(
|
|
8842
|
+
className: Q(_m({ orientation: t }), e),
|
|
8840
8843
|
...n
|
|
8841
8844
|
});
|
|
8842
8845
|
}
|
|
8843
8846
|
//#endregion
|
|
8844
8847
|
//#region src/components/vehicle-garage/VehicleSelectField.tsx
|
|
8845
|
-
function
|
|
8848
|
+
function ym(e, t) {
|
|
8846
8849
|
let n = e.trim().toLowerCase(), r = t.toLowerCase();
|
|
8847
8850
|
if (!n) return !0;
|
|
8848
8851
|
let i = 0;
|
|
8849
8852
|
for (let e = 0; e < r.length; e += 1) if (r[e] === n[i] && (i += 1, i === n.length)) return !0;
|
|
8850
8853
|
return !1;
|
|
8851
8854
|
}
|
|
8852
|
-
function
|
|
8855
|
+
function bm(e, t) {
|
|
8853
8856
|
return {
|
|
8854
8857
|
...e,
|
|
8855
8858
|
value: t
|
|
8856
8859
|
};
|
|
8857
8860
|
}
|
|
8858
|
-
function
|
|
8861
|
+
function xm(e, t, n) {
|
|
8859
8862
|
if (e === "Year") {
|
|
8860
8863
|
let e = Number(t.value), r = Number(n.value);
|
|
8861
8864
|
if (Number.isFinite(e) && Number.isFinite(r)) return r - e;
|
|
8862
8865
|
}
|
|
8863
8866
|
return String(t.value).localeCompare(String(n.value), "en", { numeric: !0 });
|
|
8864
8867
|
}
|
|
8865
|
-
function
|
|
8868
|
+
function Sm({ label: e, value: t, options: n, onChange: r, placeholder: i, disabled: a = !1, loading: o = !1, clearable: s = !0, portalContainer: d }) {
|
|
8866
8869
|
let f = l(null), p = l(null), [m, _] = u(!1), [v, y] = u(""), [b, x] = u(!1), [S, C] = u(0), [w, T] = u(null), E = c(() => {
|
|
8867
8870
|
let e = /* @__PURE__ */ new Map();
|
|
8868
8871
|
if (n.forEach((t) => {
|
|
@@ -8876,12 +8879,12 @@ function xm({ label: e, value: t, options: n, onChange: r, placeholder: i, disab
|
|
|
8876
8879
|
}, [n, t]), D = c(() => {
|
|
8877
8880
|
let t = [], n = /* @__PURE__ */ new Set();
|
|
8878
8881
|
E.forEach((e) => {
|
|
8879
|
-
|
|
8880
|
-
let i =
|
|
8881
|
-
n.has(i) || !
|
|
8882
|
+
pm(e.value).forEach((r) => {
|
|
8883
|
+
let i = im(r);
|
|
8884
|
+
n.has(i) || !ym(v, r) || (n.add(i), t.push(bm(e, r)));
|
|
8882
8885
|
});
|
|
8883
8886
|
});
|
|
8884
|
-
let r = t.length > 0 ?
|
|
8887
|
+
let r = t.length > 0 ? dm(t) : E, i = r.filter((e) => Number(e.popularity ?? 0) > 0).slice(0, 11), a = new Set(i.map((e) => String(e.value).toLowerCase())), o = r.filter((e) => !a.has(String(e.value).toLowerCase())).sort((t, n) => xm(e, t, n));
|
|
8885
8888
|
return [...i, ...o];
|
|
8886
8889
|
}, [
|
|
8887
8890
|
e,
|
|
@@ -8901,7 +8904,7 @@ function xm({ label: e, value: t, options: n, onChange: r, placeholder: i, disab
|
|
|
8901
8904
|
let t = e.target;
|
|
8902
8905
|
t instanceof Node && f.current?.contains(t) && e.preventDefault();
|
|
8903
8906
|
}
|
|
8904
|
-
return /* @__PURE__ */ h(
|
|
8907
|
+
return /* @__PURE__ */ h(gm, { children: /* @__PURE__ */ h(vm, {
|
|
8905
8908
|
"data-disabled": A,
|
|
8906
8909
|
children: /* @__PURE__ */ g(Eo, {
|
|
8907
8910
|
open: m,
|
|
@@ -8911,7 +8914,7 @@ function xm({ label: e, value: t, options: n, onChange: r, placeholder: i, disab
|
|
|
8911
8914
|
children: /* @__PURE__ */ g("div", {
|
|
8912
8915
|
ref: f,
|
|
8913
8916
|
className: "relative",
|
|
8914
|
-
children: [/* @__PURE__ */ h(
|
|
8917
|
+
children: [/* @__PURE__ */ h(tp, {
|
|
8915
8918
|
ref: p,
|
|
8916
8919
|
value: k,
|
|
8917
8920
|
onFocus: () => {
|
|
@@ -8958,7 +8961,7 @@ function xm({ label: e, value: t, options: n, onChange: r, placeholder: i, disab
|
|
|
8958
8961
|
onClick: L,
|
|
8959
8962
|
"aria-label": `Clear ${e.toLowerCase()}`,
|
|
8960
8963
|
children: /* @__PURE__ */ h(jc, {})
|
|
8961
|
-
}) : j ? /* @__PURE__ */ h(
|
|
8964
|
+
}) : j ? /* @__PURE__ */ h(cp, { className: "size-3.5 text-muted-foreground" }) : null, /* @__PURE__ */ h(Oo, {
|
|
8962
8965
|
asChild: !0,
|
|
8963
8966
|
children: /* @__PURE__ */ h("button", {
|
|
8964
8967
|
type: "button",
|
|
@@ -9002,7 +9005,7 @@ function xm({ label: e, value: t, options: n, onChange: r, placeholder: i, disab
|
|
|
9002
9005
|
}
|
|
9003
9006
|
//#endregion
|
|
9004
9007
|
//#region src/components/vehicle-garage/MmySearchTab.tsx
|
|
9005
|
-
var
|
|
9008
|
+
var Cm = {
|
|
9006
9009
|
make: null,
|
|
9007
9010
|
model: null,
|
|
9008
9011
|
year: null,
|
|
@@ -9011,24 +9014,24 @@ var Sm = {
|
|
|
9011
9014
|
variant: null,
|
|
9012
9015
|
engine: null,
|
|
9013
9016
|
engine_capacity: null
|
|
9014
|
-
},
|
|
9017
|
+
}, wm = [
|
|
9015
9018
|
"body",
|
|
9016
9019
|
"series",
|
|
9017
9020
|
"variant",
|
|
9018
9021
|
"engine",
|
|
9019
9022
|
"engine_capacity"
|
|
9020
|
-
],
|
|
9021
|
-
function
|
|
9023
|
+
], Tm = "otto_v1_vehicles_production", Em = "otto_v1_vehicle_mmy_production";
|
|
9024
|
+
function Dm(e) {
|
|
9022
9025
|
return e == null || e === "" ? null : {
|
|
9023
9026
|
value: e,
|
|
9024
9027
|
refinement: e
|
|
9025
9028
|
};
|
|
9026
9029
|
}
|
|
9027
|
-
function
|
|
9030
|
+
function Om(e) {
|
|
9028
9031
|
return Object.entries(e).reduce((e, [t, n]) => (n && (e[t] = n.value), e), {});
|
|
9029
9032
|
}
|
|
9030
|
-
function
|
|
9031
|
-
let C = l([]), w = l([]), T = l(null), E = l(null), D = l(null), O = l(null), k = l(null), [A, j] = u(
|
|
9033
|
+
function km({ apiKey: e, apiBaseUrl: t, store: n, makes: r = "", models: o = "", fields: s, fieldPrefix: d = "", modifyQueryString: f = !0, useStoreVehicles: p = !0, fieldOrder: _ = "MMY", yearOptional: v = !1, enableFeatureFlags: y = !0, portalContainer: b, activeVehicle: x, onVehicleSelected: S }) {
|
|
9034
|
+
let C = l([]), w = l([]), T = l(null), E = l(null), D = l(null), O = l(null), k = l(null), [A, j] = u(Cm), [M, N] = u([]), [P, F] = u([]), [I, L] = u([]), [R, z] = u([]), [ee, B] = u([]), [V, te] = u([]), [ne, H] = u([]), [re, ie] = u([]), [ae, oe] = u([]), [U, W] = u(null), [se, ce] = u({}), [le, ue] = u(null), G = _ === "YMM", de = U?.searchKey ? `${U.host}|${U.indexName}|${U.searchKey}` : "", fe = U?.searchKey ? `${zc}|${U.mmyIndexName}|${U.searchKey}` : "", pe = c(() => s ? s.split(",").map((e) => e.trim()).filter((e) => wm.includes(e)) : [], [s]), me = c(() => new Set(r.split(",").map((e) => im(e)).filter(Boolean)), [r]), K = c(() => new Set(Object.keys(se).map((e) => im(e))), [se]), he = i((e) => d ? `${d}${e}` : e, [d]), ge = i((e) => d ? e.replace(RegExp(`^${d}`), "") : e, [d]), q = i(({ query: e, value: t, remove: n = [] }) => {
|
|
9032
9035
|
if (typeof window > "u" || !f) return;
|
|
9033
9036
|
let r = new URLSearchParams(window.location.search), i = he(e);
|
|
9034
9037
|
t != null && t !== "" ? r.set(i, String(t)) : r.delete(i), n.forEach((e) => {
|
|
@@ -9038,14 +9041,14 @@ function Om({ apiKey: e, apiBaseUrl: t, store: n, makes: r = "", models: o = "",
|
|
|
9038
9041
|
window.history.pushState(null, "", a);
|
|
9039
9042
|
}, [f, he]), _e = i((e) => {
|
|
9040
9043
|
j({
|
|
9041
|
-
make:
|
|
9042
|
-
model:
|
|
9043
|
-
year:
|
|
9044
|
-
body:
|
|
9045
|
-
series:
|
|
9046
|
-
variant:
|
|
9047
|
-
engine:
|
|
9048
|
-
engine_capacity:
|
|
9044
|
+
make: Dm(e.make),
|
|
9045
|
+
model: Dm(e.model),
|
|
9046
|
+
year: Dm(e.year),
|
|
9047
|
+
body: Dm(e.body),
|
|
9048
|
+
series: Dm(e.series),
|
|
9049
|
+
variant: Dm(e.variant),
|
|
9050
|
+
engine: Dm(e.engine),
|
|
9051
|
+
engine_capacity: Dm(e.engine_capacity)
|
|
9049
9052
|
});
|
|
9050
9053
|
}, []), ve = i(() => {
|
|
9051
9054
|
if (typeof window > "u" || x) return;
|
|
@@ -9090,7 +9093,7 @@ function Om({ apiKey: e, apiBaseUrl: t, store: n, makes: r = "", models: o = "",
|
|
|
9090
9093
|
if (!e || e === "demo") return;
|
|
9091
9094
|
async function r() {
|
|
9092
9095
|
try {
|
|
9093
|
-
let r = await fetch(
|
|
9096
|
+
let r = await fetch(Zp(t, "/v1/vehicles/auth"), {
|
|
9094
9097
|
method: "POST",
|
|
9095
9098
|
headers: {
|
|
9096
9099
|
"Content-Type": "application/json",
|
|
@@ -9107,10 +9110,10 @@ function Om({ apiKey: e, apiBaseUrl: t, store: n, makes: r = "", models: o = "",
|
|
|
9107
9110
|
...e,
|
|
9108
9111
|
refinement: e.value
|
|
9109
9112
|
})), p && i.vehicle_models ? typeof i.vehicle_models == "object" && !Array.isArray(i.vehicle_models) ? (w.current = i.vehicle_models, ce(i.vehicle_models)) : Array.isArray(i.vehicle_models) && (w.current = i.vehicle_models.map((e) => String(e?.value ?? "").trim()).filter(Boolean), ce({})) : (w.current = [], ce({})), T.current = Array.isArray(i.store_popular_makes) ? i.store_popular_makes.map((e) => String(e).trim().toUpperCase()) : null, E.current = i.store_popular_models ?? null, W({
|
|
9110
|
-
host:
|
|
9113
|
+
host: hm(i.host, "https://search.partbot.io"),
|
|
9111
9114
|
searchKey: i.search_key || i.meilisearch_search_key || i.algolia_search_key || "",
|
|
9112
|
-
indexName: i.vehicle_index_name || i.index_name || i.meilisearch_index_name || i.algolia_index_name ||
|
|
9113
|
-
mmyIndexName: i.vehicle_mmy_index_name || i.mmy_index_name || i.meilisearch_mmy_index_name ||
|
|
9115
|
+
indexName: i.vehicle_index_name || i.index_name || i.meilisearch_index_name || i.algolia_index_name || Tm,
|
|
9116
|
+
mmyIndexName: i.vehicle_mmy_index_name || i.mmy_index_name || i.meilisearch_mmy_index_name || Em
|
|
9114
9117
|
});
|
|
9115
9118
|
} catch (e) {
|
|
9116
9119
|
console.error("[VehicleGarage] MMY auth failed:", e), ue(e instanceof Error ? e.message : "Could not load vehicle search.");
|
|
@@ -9141,7 +9144,7 @@ function Om({ apiKey: e, apiBaseUrl: t, store: n, makes: r = "", models: o = "",
|
|
|
9141
9144
|
});
|
|
9142
9145
|
}), e = Array.from(n.values());
|
|
9143
9146
|
}
|
|
9144
|
-
if (me.size > 0 ? e = e.filter((e) => me.has(
|
|
9147
|
+
if (me.size > 0 ? e = e.filter((e) => me.has(im(e.value))) : K.size > 0 && (e = e.filter((e) => K.has(im(e.value)))), T.current?.length) {
|
|
9145
9148
|
let t = new Set(T.current);
|
|
9146
9149
|
e.sort((e, n) => {
|
|
9147
9150
|
let r = t.has(String(e.value)), i = t.has(String(n.value));
|
|
@@ -9153,10 +9156,10 @@ function Om({ apiKey: e, apiBaseUrl: t, store: n, makes: r = "", models: o = "",
|
|
|
9153
9156
|
a(() => {
|
|
9154
9157
|
if (!U?.searchKey) return;
|
|
9155
9158
|
let e = !0;
|
|
9156
|
-
return D.current = new
|
|
9159
|
+
return D.current = new Yp({
|
|
9157
9160
|
host: U.host || "https://search.partbot.io",
|
|
9158
9161
|
apiKey: U.searchKey
|
|
9159
|
-
}).index(U.indexName), O.current = new
|
|
9162
|
+
}).index(U.indexName), O.current = new Yp({
|
|
9160
9163
|
host: zc,
|
|
9161
9164
|
apiKey: U.searchKey
|
|
9162
9165
|
}).index(U.mmyIndexName), G || ye(), queueMicrotask(() => {
|
|
@@ -9186,7 +9189,7 @@ function Om({ apiKey: e, apiBaseUrl: t, store: n, makes: r = "", models: o = "",
|
|
|
9186
9189
|
});
|
|
9187
9190
|
});
|
|
9188
9191
|
let n = Array.from(t.values());
|
|
9189
|
-
me.size > 0 ? n = n.filter((e) => me.has(
|
|
9192
|
+
me.size > 0 ? n = n.filter((e) => me.has(im(e.value))) : K.size > 0 && (n = n.filter((e) => K.has(im(e.value)))), N(n);
|
|
9190
9193
|
}
|
|
9191
9194
|
e();
|
|
9192
9195
|
}, [
|
|
@@ -9218,7 +9221,7 @@ function Om({ apiKey: e, apiBaseUrl: t, store: n, makes: r = "", models: o = "",
|
|
|
9218
9221
|
]);
|
|
9219
9222
|
let be = i((e) => {
|
|
9220
9223
|
F([]), !G && !v && L([]), z([]), B([]), te([]), H([]), ie([]), j((t) => ({
|
|
9221
|
-
...
|
|
9224
|
+
...Cm,
|
|
9222
9225
|
make: e,
|
|
9223
9226
|
year: G || v ? t.year : null
|
|
9224
9227
|
})), q({
|
|
@@ -9279,7 +9282,7 @@ function Om({ apiKey: e, apiBaseUrl: t, store: n, makes: r = "", models: o = "",
|
|
|
9279
9282
|
v
|
|
9280
9283
|
]), Se = i((e) => {
|
|
9281
9284
|
G ? (N([]), F([]), j({
|
|
9282
|
-
...
|
|
9285
|
+
...Cm,
|
|
9283
9286
|
year: e
|
|
9284
9287
|
}), e || L([])) : j((t) => ({
|
|
9285
9288
|
...t,
|
|
@@ -9361,7 +9364,7 @@ function Om({ apiKey: e, apiBaseUrl: t, store: n, makes: r = "", models: o = "",
|
|
|
9361
9364
|
F([]);
|
|
9362
9365
|
return;
|
|
9363
9366
|
}
|
|
9364
|
-
let e = String(A.make.refinement), t =
|
|
9367
|
+
let e = String(A.make.refinement), t = im(e);
|
|
9365
9368
|
if (me.size > 0 && !me.has(t)) {
|
|
9366
9369
|
F([]);
|
|
9367
9370
|
return;
|
|
@@ -9370,16 +9373,16 @@ function Om({ apiKey: e, apiBaseUrl: t, store: n, makes: r = "", models: o = "",
|
|
|
9370
9373
|
F([]);
|
|
9371
9374
|
return;
|
|
9372
9375
|
}
|
|
9373
|
-
let n = new Set(o.split(",").map((e) =>
|
|
9374
|
-
typeof w.current == "object" && !Array.isArray(w.current) && (r = w.current[e] ?? w.current[Object.keys(w.current).find((e) =>
|
|
9375
|
-
let i = new Set(r.map((e) =>
|
|
9376
|
+
let n = new Set(o.split(",").map((e) => im(e)).filter(Boolean)), r = [];
|
|
9377
|
+
typeof w.current == "object" && !Array.isArray(w.current) && (r = w.current[e] ?? w.current[Object.keys(w.current).find((e) => im(e) === t) ?? ""] ?? []);
|
|
9378
|
+
let i = new Set(r.map((e) => im(e)));
|
|
9376
9379
|
if (p && r.length > 0) {
|
|
9377
|
-
let t =
|
|
9380
|
+
let t = dm(r.map((e) => ({
|
|
9378
9381
|
value: e,
|
|
9379
9382
|
refinement: e,
|
|
9380
9383
|
popularity: 0
|
|
9381
9384
|
})));
|
|
9382
|
-
t =
|
|
9385
|
+
t = mm(t, n), t = mm(t, i);
|
|
9383
9386
|
let a = E.current?.[e];
|
|
9384
9387
|
if (a?.length) {
|
|
9385
9388
|
let e = new Map(a.map((e, t) => [e.toUpperCase(), a.length - t]));
|
|
@@ -9395,7 +9398,7 @@ function Om({ apiKey: e, apiBaseUrl: t, store: n, makes: r = "", models: o = "",
|
|
|
9395
9398
|
let a;
|
|
9396
9399
|
try {
|
|
9397
9400
|
a = await O.current.search("", {
|
|
9398
|
-
filter:
|
|
9401
|
+
filter: tm("make", e),
|
|
9399
9402
|
limit: 1
|
|
9400
9403
|
});
|
|
9401
9404
|
} catch (e) {
|
|
@@ -9403,12 +9406,12 @@ function Om({ apiKey: e, apiBaseUrl: t, store: n, makes: r = "", models: o = "",
|
|
|
9403
9406
|
return;
|
|
9404
9407
|
}
|
|
9405
9408
|
ue(null);
|
|
9406
|
-
let s =
|
|
9409
|
+
let s = dm((a.hits[0]?.models ?? []).map((e) => ({
|
|
9407
9410
|
value: e.name,
|
|
9408
9411
|
refinement: e.name,
|
|
9409
9412
|
popularity: e.popularity ?? 0
|
|
9410
9413
|
})));
|
|
9411
|
-
s =
|
|
9414
|
+
s = mm(s, n), s = mm(s, i);
|
|
9412
9415
|
let c = E.current?.[e];
|
|
9413
9416
|
if (c?.length) {
|
|
9414
9417
|
let e = c.map((e) => e.toUpperCase());
|
|
@@ -9431,14 +9434,14 @@ function Om({ apiKey: e, apiBaseUrl: t, store: n, makes: r = "", models: o = "",
|
|
|
9431
9434
|
async function e() {
|
|
9432
9435
|
if (!D.current || !A.make || !A.model) return;
|
|
9433
9436
|
let e = [
|
|
9434
|
-
|
|
9435
|
-
...v && A.body ? [
|
|
9436
|
-
...v && A.series ? [
|
|
9437
|
-
...v && A.variant ? [
|
|
9438
|
-
...v && A.engine ? [
|
|
9439
|
-
...v && A.engine_capacity ? [
|
|
9437
|
+
fm("model", A.model, [A.make]),
|
|
9438
|
+
...v && A.body ? [fm("body", A.body, [A.make, A.model])] : [],
|
|
9439
|
+
...v && A.series ? [fm("series", A.series)] : [],
|
|
9440
|
+
...v && A.variant ? [fm("variant", A.variant)] : [],
|
|
9441
|
+
...v && A.engine ? [fm("engine", A.engine)] : [],
|
|
9442
|
+
...v && A.engine_capacity ? [fm("engine_capacity", A.engine_capacity)] : []
|
|
9440
9443
|
], t = await D.current.search("", {
|
|
9441
|
-
filter:
|
|
9444
|
+
filter: rm(e, []),
|
|
9442
9445
|
attributesToRetrieve: ["year_from", "year_to"],
|
|
9443
9446
|
limit: 200
|
|
9444
9447
|
}), n = t.hits.map((e) => Number(e.year_from)).filter(Boolean), r = t.hits.map((e) => Number(e.year_to)).filter(Boolean);
|
|
@@ -9471,11 +9474,11 @@ function Om({ apiKey: e, apiBaseUrl: t, store: n, makes: r = "", models: o = "",
|
|
|
9471
9474
|
return;
|
|
9472
9475
|
}
|
|
9473
9476
|
let t = A.year ? [`year_from <= ${A.year.value}`, `year_to >= ${A.year.value}`] : [], n = await D.current.search("", {
|
|
9474
|
-
filter:
|
|
9477
|
+
filter: rm([fm("model", A.model, [A.make])], t),
|
|
9475
9478
|
attributesToRetrieve: ["body"],
|
|
9476
9479
|
limit: 1e3
|
|
9477
9480
|
});
|
|
9478
|
-
z(
|
|
9481
|
+
z(dm([...new Map(n.hits.map((e) => [e.body, e])).values()].map((e) => {
|
|
9479
9482
|
let t = String(e.body ?? "").match(/[^>]*$/)?.[0]?.trim() ?? "";
|
|
9480
9483
|
return {
|
|
9481
9484
|
value: t,
|
|
@@ -9492,7 +9495,7 @@ function Om({ apiKey: e, apiBaseUrl: t, store: n, makes: r = "", models: o = "",
|
|
|
9492
9495
|
de
|
|
9493
9496
|
]);
|
|
9494
9497
|
let De = i(({ hits: e, attribute: t, stateCallback: n }) => {
|
|
9495
|
-
n(
|
|
9498
|
+
n(dm([...new Map(e.map((e) => [e[t], e])).values()].map((e) => {
|
|
9496
9499
|
let n = String(e[t] ?? "").match(/[^|]*$/)?.[0]?.trim() ?? "";
|
|
9497
9500
|
return {
|
|
9498
9501
|
value: n,
|
|
@@ -9508,15 +9511,15 @@ function Om({ apiKey: e, apiBaseUrl: t, store: n, makes: r = "", models: o = "",
|
|
|
9508
9511
|
return;
|
|
9509
9512
|
}
|
|
9510
9513
|
let t = [
|
|
9511
|
-
|
|
9512
|
-
|
|
9513
|
-
A.body ?
|
|
9514
|
-
A.series ?
|
|
9515
|
-
A.variant ?
|
|
9516
|
-
A.engine ?
|
|
9517
|
-
A.engine_capacity ?
|
|
9514
|
+
fm("make", A.make),
|
|
9515
|
+
fm("model", A.model, [A.make]),
|
|
9516
|
+
A.body ? fm("body", A.body, [A.make, A.model]) : [],
|
|
9517
|
+
A.series ? fm("series", A.series) : [],
|
|
9518
|
+
A.variant ? fm("variant", A.variant) : [],
|
|
9519
|
+
A.engine ? fm("engine", A.engine) : [],
|
|
9520
|
+
A.engine_capacity ? fm("engine_capacity", A.engine_capacity) : []
|
|
9518
9521
|
].filter((e) => e.length > 0), n = A.year ? [`year_from <= ${A.year.value}`, `year_to >= ${A.year.value}`] : [], r = (await D.current.search("", {
|
|
9519
|
-
filter:
|
|
9522
|
+
filter: rm(t, n),
|
|
9520
9523
|
attributesToRetrieve: [
|
|
9521
9524
|
"series",
|
|
9522
9525
|
"variant",
|
|
@@ -9563,16 +9566,16 @@ function Om({ apiKey: e, apiBaseUrl: t, store: n, makes: r = "", models: o = "",
|
|
|
9563
9566
|
return;
|
|
9564
9567
|
}
|
|
9565
9568
|
let e = [
|
|
9566
|
-
|
|
9567
|
-
A.model ?
|
|
9568
|
-
A.body ?
|
|
9569
|
-
A.series ?
|
|
9570
|
-
A.variant ?
|
|
9571
|
-
A.engine ?
|
|
9572
|
-
A.engine_capacity ?
|
|
9569
|
+
fm("make", A.make),
|
|
9570
|
+
A.model ? fm("model", A.model, [A.make]) : [],
|
|
9571
|
+
A.body ? fm("body", A.body, [A.make, A.model]) : [],
|
|
9572
|
+
A.series ? fm("series", A.series) : [],
|
|
9573
|
+
A.variant ? fm("variant", A.variant) : [],
|
|
9574
|
+
A.engine ? fm("engine", A.engine) : [],
|
|
9575
|
+
A.engine_capacity ? fm("engine_capacity", A.engine_capacity) : []
|
|
9573
9576
|
].filter((e) => e.length > 0), t = A.year ? [`year_from <= ${A.year.value}`, `year_to >= ${A.year.value}`] : [];
|
|
9574
9577
|
oe((await D.current.search("", {
|
|
9575
|
-
filter:
|
|
9578
|
+
filter: rm(e, t),
|
|
9576
9579
|
attributesToRetrieve: ["otto_id"],
|
|
9577
9580
|
limit: 500
|
|
9578
9581
|
})).hits.map((e) => Number(e.otto_id)).filter(Boolean));
|
|
@@ -9623,15 +9626,15 @@ function Om({ apiKey: e, apiBaseUrl: t, store: n, makes: r = "", models: o = "",
|
|
|
9623
9626
|
};
|
|
9624
9627
|
return /* @__PURE__ */ g("div", {
|
|
9625
9628
|
className: "flex flex-col gap-5",
|
|
9626
|
-
children: [le ? /* @__PURE__ */ g(
|
|
9629
|
+
children: [le ? /* @__PURE__ */ g(rp, { children: [
|
|
9627
9630
|
/* @__PURE__ */ h(kc, {}),
|
|
9628
|
-
/* @__PURE__ */ h(
|
|
9629
|
-
/* @__PURE__ */ h(
|
|
9631
|
+
/* @__PURE__ */ h(ip, { children: "Vehicle search unavailable" }),
|
|
9632
|
+
/* @__PURE__ */ h(ap, { children: le })
|
|
9630
9633
|
] }) : null, /* @__PURE__ */ g("div", {
|
|
9631
9634
|
className: "flex flex-col gap-4",
|
|
9632
9635
|
children: [
|
|
9633
9636
|
G ? /* @__PURE__ */ g(m, { children: [
|
|
9634
|
-
/* @__PURE__ */ h(
|
|
9637
|
+
/* @__PURE__ */ h(Sm, {
|
|
9635
9638
|
label: "Year",
|
|
9636
9639
|
value: A.year,
|
|
9637
9640
|
options: I,
|
|
@@ -9640,7 +9643,7 @@ function Om({ apiKey: e, apiBaseUrl: t, store: n, makes: r = "", models: o = "",
|
|
|
9640
9643
|
loading: !!U?.searchKey && !A.year && I.length === 0,
|
|
9641
9644
|
portalContainer: b
|
|
9642
9645
|
}),
|
|
9643
|
-
/* @__PURE__ */ h(
|
|
9646
|
+
/* @__PURE__ */ h(Sm, {
|
|
9644
9647
|
label: "Make",
|
|
9645
9648
|
value: A.make,
|
|
9646
9649
|
options: M,
|
|
@@ -9650,7 +9653,7 @@ function Om({ apiKey: e, apiBaseUrl: t, store: n, makes: r = "", models: o = "",
|
|
|
9650
9653
|
loading: !!A.year && !A.make && M.length === 0,
|
|
9651
9654
|
portalContainer: b
|
|
9652
9655
|
}),
|
|
9653
|
-
/* @__PURE__ */ h(
|
|
9656
|
+
/* @__PURE__ */ h(Sm, {
|
|
9654
9657
|
label: "Model",
|
|
9655
9658
|
value: A.model,
|
|
9656
9659
|
options: P,
|
|
@@ -9661,7 +9664,7 @@ function Om({ apiKey: e, apiBaseUrl: t, store: n, makes: r = "", models: o = "",
|
|
|
9661
9664
|
portalContainer: b
|
|
9662
9665
|
})
|
|
9663
9666
|
] }) : /* @__PURE__ */ g(m, { children: [
|
|
9664
|
-
/* @__PURE__ */ h(
|
|
9667
|
+
/* @__PURE__ */ h(Sm, {
|
|
9665
9668
|
label: "Make",
|
|
9666
9669
|
value: A.make,
|
|
9667
9670
|
options: M,
|
|
@@ -9670,7 +9673,7 @@ function Om({ apiKey: e, apiBaseUrl: t, store: n, makes: r = "", models: o = "",
|
|
|
9670
9673
|
loading: !!U?.searchKey && !A.make && M.length === 0,
|
|
9671
9674
|
portalContainer: b
|
|
9672
9675
|
}),
|
|
9673
|
-
/* @__PURE__ */ h(
|
|
9676
|
+
/* @__PURE__ */ h(Sm, {
|
|
9674
9677
|
label: "Model",
|
|
9675
9678
|
value: A.model,
|
|
9676
9679
|
options: P,
|
|
@@ -9680,7 +9683,7 @@ function Om({ apiKey: e, apiBaseUrl: t, store: n, makes: r = "", models: o = "",
|
|
|
9680
9683
|
loading: !!A.make && !A.model && P.length === 0,
|
|
9681
9684
|
portalContainer: b
|
|
9682
9685
|
}),
|
|
9683
|
-
/* @__PURE__ */ h(
|
|
9686
|
+
/* @__PURE__ */ h(Sm, {
|
|
9684
9687
|
label: "Year",
|
|
9685
9688
|
value: A.year,
|
|
9686
9689
|
options: I,
|
|
@@ -9693,7 +9696,7 @@ function Om({ apiKey: e, apiBaseUrl: t, store: n, makes: r = "", models: o = "",
|
|
|
9693
9696
|
] }),
|
|
9694
9697
|
pe.map((e) => {
|
|
9695
9698
|
let t = je[e];
|
|
9696
|
-
return /* @__PURE__ */ h(
|
|
9699
|
+
return /* @__PURE__ */ h(Sm, {
|
|
9697
9700
|
label: t.label,
|
|
9698
9701
|
value: t.value,
|
|
9699
9702
|
options: t.options,
|
|
@@ -9704,10 +9707,10 @@ function Om({ apiKey: e, apiBaseUrl: t, store: n, makes: r = "", models: o = "",
|
|
|
9704
9707
|
portalContainer: b
|
|
9705
9708
|
}, e);
|
|
9706
9709
|
}),
|
|
9707
|
-
/* @__PURE__ */ h(
|
|
9710
|
+
/* @__PURE__ */ h(_d, {
|
|
9708
9711
|
className: "w-full",
|
|
9709
9712
|
onClick: () => {
|
|
9710
|
-
let e =
|
|
9713
|
+
let e = Om(A);
|
|
9711
9714
|
S({ legacyVehicle: {
|
|
9712
9715
|
description: il(e),
|
|
9713
9716
|
vehicle_ids: ae,
|
|
@@ -9723,7 +9726,7 @@ function Om({ apiKey: e, apiBaseUrl: t, store: n, makes: r = "", models: o = "",
|
|
|
9723
9726
|
}
|
|
9724
9727
|
//#endregion
|
|
9725
9728
|
//#region src/components/vehicle-garage/WheelTyreTab.tsx
|
|
9726
|
-
var
|
|
9729
|
+
var Am = {
|
|
9727
9730
|
boltPattern: "",
|
|
9728
9731
|
centerBoreMm: "",
|
|
9729
9732
|
wheelDiameterIn: "",
|
|
@@ -9735,12 +9738,12 @@ var km = {
|
|
|
9735
9738
|
loadIndex: "",
|
|
9736
9739
|
speedRating: ""
|
|
9737
9740
|
};
|
|
9738
|
-
function
|
|
9741
|
+
function jm(e, t, n = 1) {
|
|
9739
9742
|
let r = n.toString().split(".")[1]?.length ?? 0, i = [];
|
|
9740
9743
|
for (let a = e; a <= t + 2 ** -52; a += n) i.push(Number(a.toFixed(r)).toString());
|
|
9741
9744
|
return i;
|
|
9742
9745
|
}
|
|
9743
|
-
var
|
|
9746
|
+
var Mm = /* @__PURE__ */ "3x112,4x98,4x100,4x108,4x110,4x114.3,5x100,5x105,5x108,5x110,5x112,5x114.3,5x115,5x118,5x120,5x120.65,5x127,5x130,5x139.7,5x150,6x114.3,6x120,6x127,6x130,6x135,6x139.7,6x205,8x165.1,8x170,8x180,8x200".split(","), Nm = [
|
|
9744
9747
|
"54.1",
|
|
9745
9748
|
"56.1",
|
|
9746
9749
|
"56.6",
|
|
@@ -9763,7 +9766,7 @@ var jm = /* @__PURE__ */ "3x112,4x98,4x100,4x108,4x110,4x114.3,5x100,5x105,5x108
|
|
|
9763
9766
|
"95.1",
|
|
9764
9767
|
"106.1",
|
|
9765
9768
|
"110.1"
|
|
9766
|
-
],
|
|
9769
|
+
], Pm = jm(10, 30), Fm = jm(3.5, 16, .5), Im = jm(-60, 70), Lm = [
|
|
9767
9770
|
"125",
|
|
9768
9771
|
"135",
|
|
9769
9772
|
"145",
|
|
@@ -9788,7 +9791,7 @@ var jm = /* @__PURE__ */ "3x112,4x98,4x100,4x108,4x110,4x114.3,5x100,5x105,5x108
|
|
|
9788
9791
|
"335",
|
|
9789
9792
|
"345",
|
|
9790
9793
|
"355"
|
|
9791
|
-
],
|
|
9794
|
+
], Rm = [
|
|
9792
9795
|
"25",
|
|
9793
9796
|
"30",
|
|
9794
9797
|
"35",
|
|
@@ -9802,7 +9805,7 @@ var jm = /* @__PURE__ */ "3x112,4x98,4x100,4x108,4x110,4x114.3,5x100,5x105,5x108
|
|
|
9802
9805
|
"75",
|
|
9803
9806
|
"80",
|
|
9804
9807
|
"85"
|
|
9805
|
-
],
|
|
9808
|
+
], zm = [
|
|
9806
9809
|
"10",
|
|
9807
9810
|
"12",
|
|
9808
9811
|
"13",
|
|
@@ -9824,7 +9827,7 @@ var jm = /* @__PURE__ */ "3x112,4x98,4x100,4x108,4x110,4x114.3,5x100,5x105,5x108
|
|
|
9824
9827
|
"26",
|
|
9825
9828
|
"28",
|
|
9826
9829
|
"30"
|
|
9827
|
-
],
|
|
9830
|
+
], Bm = {
|
|
9828
9831
|
0: 45,
|
|
9829
9832
|
1: 46.2,
|
|
9830
9833
|
2: 47.5,
|
|
@@ -10105,10 +10108,10 @@ var jm = /* @__PURE__ */ "3x112,4x98,4x100,4x108,4x110,4x114.3,5x100,5x105,5x108
|
|
|
10105
10108
|
277: 128500,
|
|
10106
10109
|
278: 132e3,
|
|
10107
10110
|
279: 136e3
|
|
10108
|
-
},
|
|
10109
|
-
let t =
|
|
10111
|
+
}, Vm = jm(0, 279).map((e) => {
|
|
10112
|
+
let t = Bm[e];
|
|
10110
10113
|
return [e, t ? e + " (" + t + " kg)" : e];
|
|
10111
|
-
}),
|
|
10114
|
+
}), Hm = [
|
|
10112
10115
|
["A1", "A1 - 5 km/h"],
|
|
10113
10116
|
["A2", "A2 - 10 km/h"],
|
|
10114
10117
|
["A3", "A3 - 15 km/h"],
|
|
@@ -10141,40 +10144,40 @@ var jm = /* @__PURE__ */ "3x112,4x98,4x100,4x108,4x110,4x114.3,5x100,5x105,5x108
|
|
|
10141
10144
|
["Y", "Y - 300 km/h"],
|
|
10142
10145
|
["(Y)", "(Y) - above 300 km/h"]
|
|
10143
10146
|
];
|
|
10144
|
-
function
|
|
10147
|
+
function Um({ apiBaseUrl: e, wheelTyreFitmentUrl: t, mode: n }) {
|
|
10145
10148
|
let r = t?.trim();
|
|
10146
|
-
return r ? `${r.replace(/\/+$/, "")}/${n}` :
|
|
10149
|
+
return r ? `${r.replace(/\/+$/, "")}/${n}` : Zp(e, `/api/v1/wheel-tyre-fitments/${n}`);
|
|
10147
10150
|
}
|
|
10148
|
-
function
|
|
10151
|
+
function Wm(e) {
|
|
10149
10152
|
return Object.fromEntries(Object.entries(e).map(([e, t]) => [e, t.trim()]).filter(([, e]) => e));
|
|
10150
10153
|
}
|
|
10151
|
-
function
|
|
10154
|
+
function Gm(e) {
|
|
10152
10155
|
if (!e.wheelDiameterIn || !e.wheelWidthIn) return "";
|
|
10153
10156
|
let t = e.offsetMm ? ` ET${e.offsetMm}` : "";
|
|
10154
10157
|
return `${e.wheelDiameterIn}x${e.wheelWidthIn}${t}`;
|
|
10155
10158
|
}
|
|
10156
|
-
function
|
|
10159
|
+
function Km(e) {
|
|
10157
10160
|
return !e.tyreWidthMm || !e.aspectRatio || !e.rimDiameterIn ? "" : `${e.tyreWidthMm}/${e.aspectRatio}R${e.rimDiameterIn}`;
|
|
10158
10161
|
}
|
|
10159
|
-
function
|
|
10162
|
+
function qm(e) {
|
|
10160
10163
|
let t = !!(e.wheelDiameterIn.trim() && e.wheelWidthIn.trim());
|
|
10161
10164
|
return !!(e.boltPattern.trim() || e.centerBoreMm.trim() || t);
|
|
10162
10165
|
}
|
|
10163
|
-
function
|
|
10166
|
+
function Jm(e) {
|
|
10164
10167
|
return !!(e.tyreWidthMm.trim() && e.aspectRatio.trim() && e.rimDiameterIn.trim() || e.loadIndex.trim() || e.speedRating.trim());
|
|
10165
10168
|
}
|
|
10166
|
-
function
|
|
10167
|
-
return e === "wheel" ? { wheel:
|
|
10169
|
+
function Ym(e, t) {
|
|
10170
|
+
return e === "wheel" ? { wheel: Wm({
|
|
10168
10171
|
bolt_pattern: t.boltPattern,
|
|
10169
|
-
wheel_size:
|
|
10172
|
+
wheel_size: Gm(t),
|
|
10170
10173
|
center_bore_mm: t.centerBoreMm
|
|
10171
|
-
}) } : { tyre:
|
|
10172
|
-
tyre_size:
|
|
10174
|
+
}) } : { tyre: Wm({
|
|
10175
|
+
tyre_size: Km(t),
|
|
10173
10176
|
load_index: t.loadIndex,
|
|
10174
10177
|
speed_rating: t.speedRating
|
|
10175
10178
|
}) };
|
|
10176
10179
|
}
|
|
10177
|
-
function
|
|
10180
|
+
function Xm({ active: e, children: t, onClick: n }) {
|
|
10178
10181
|
return /* @__PURE__ */ h("button", {
|
|
10179
10182
|
type: "button",
|
|
10180
10183
|
className: "garage-tab-trigger relative inline-flex min-h-[calc(100%-1px)] flex-1 items-center justify-center gap-1.5 border border-transparent px-1.5 py-0.5 text-sm font-medium whitespace-nowrap text-foreground/60 transition-all outline-none hover:text-foreground focus-visible:border-ring focus-visible:ring-3 focus-visible:ring-ring/50 focus-visible:outline-1 focus-visible:outline-ring",
|
|
@@ -10183,14 +10186,14 @@ function Ym({ active: e, children: t, onClick: n }) {
|
|
|
10183
10186
|
children: t
|
|
10184
10187
|
});
|
|
10185
10188
|
}
|
|
10186
|
-
function
|
|
10189
|
+
function Zm(e, t) {
|
|
10187
10190
|
let n = e.trim().toLowerCase(), r = t.toLowerCase();
|
|
10188
10191
|
if (!n) return !0;
|
|
10189
10192
|
let i = 0;
|
|
10190
10193
|
for (let e = 0; e < r.length; e += 1) if (r[e] === n[i] && (i += 1, i === n.length)) return !0;
|
|
10191
10194
|
return r.includes(n);
|
|
10192
10195
|
}
|
|
10193
|
-
function
|
|
10196
|
+
function Qm(e) {
|
|
10194
10197
|
return e.map((e) => {
|
|
10195
10198
|
let [t, n] = Array.isArray(e) ? e : [e, e];
|
|
10196
10199
|
return {
|
|
@@ -10199,8 +10202,8 @@ function Zm(e) {
|
|
|
10199
10202
|
};
|
|
10200
10203
|
});
|
|
10201
10204
|
}
|
|
10202
|
-
function
|
|
10203
|
-
let d = l(null), f = l(null), [p, m] = u(!1), [_, v] = u(""), [y, b] = u(!1), [x, S] = u(0), [C, w] = u(null), T = c(() =>
|
|
10205
|
+
function $m({ name: e, label: t, ariaLabel: n = t, placeholder: r, value: i, options: a, portalContainer: o, onChange: s }) {
|
|
10206
|
+
let d = l(null), f = l(null), [p, m] = u(!1), [_, v] = u(""), [y, b] = u(!1), [x, S] = u(0), [C, w] = u(null), T = c(() => Qm(a), [a]), E = T.find((e) => e.value === i) ?? null, D = y ? _ : E?.label ?? "", O = c(() => T.filter((e) => Zm(_, e.label) || Zm(_, e.value)), [T, _]), k = `vehicle-garage-${e.replace(/[^a-z0-9]+/gi, "-")}-options`;
|
|
10204
10207
|
function A(e) {
|
|
10205
10208
|
e && w(d.current?.getBoundingClientRect().width ?? null), m(e), v(""), b(!1), S(0);
|
|
10206
10209
|
}
|
|
@@ -10224,7 +10227,7 @@ function Qm({ name: e, label: t, ariaLabel: n = t, placeholder: r, value: i, opt
|
|
|
10224
10227
|
children: /* @__PURE__ */ g("div", {
|
|
10225
10228
|
ref: d,
|
|
10226
10229
|
className: "relative",
|
|
10227
|
-
children: [/* @__PURE__ */ h(
|
|
10230
|
+
children: [/* @__PURE__ */ h(tp, {
|
|
10228
10231
|
ref: f,
|
|
10229
10232
|
name: e,
|
|
10230
10233
|
value: D,
|
|
@@ -10330,8 +10333,8 @@ function Qm({ name: e, label: t, ariaLabel: n = t, placeholder: r, value: i, opt
|
|
|
10330
10333
|
})]
|
|
10331
10334
|
});
|
|
10332
10335
|
}
|
|
10333
|
-
function
|
|
10334
|
-
let [o, s] = u("wheel"), [l, d] = u(i ? "vehicle" : "specs"), [f, p] = u(
|
|
10336
|
+
function eh({ apiKey: e, apiBaseUrl: t, wheelTyreFitmentUrl: n, portalContainer: r, activeVehicle: i, onWheelTyreFitmentResult: a }) {
|
|
10337
|
+
let [o, s] = u("wheel"), [l, d] = u(i ? "vehicle" : "specs"), [f, p] = u(Am), [m, _] = u(null), [v, y] = u(!1), [b, x] = u(null), S = c(() => o === "wheel" ? qm(f) : Jm(f), [f, o]);
|
|
10335
10338
|
function C(e, t) {
|
|
10336
10339
|
p((n) => ({
|
|
10337
10340
|
...n,
|
|
@@ -10349,7 +10352,7 @@ function $m({ apiKey: e, apiBaseUrl: t, wheelTyreFitmentUrl: n, portalContainer:
|
|
|
10349
10352
|
}
|
|
10350
10353
|
y(!0);
|
|
10351
10354
|
try {
|
|
10352
|
-
let s = await fetch(
|
|
10355
|
+
let s = await fetch(Um({
|
|
10353
10356
|
apiBaseUrl: t,
|
|
10354
10357
|
wheelTyreFitmentUrl: n,
|
|
10355
10358
|
mode: r
|
|
@@ -10359,11 +10362,11 @@ function $m({ apiKey: e, apiBaseUrl: t, wheelTyreFitmentUrl: n, portalContainer:
|
|
|
10359
10362
|
"Content-Type": "application/json",
|
|
10360
10363
|
Authorization: `Bearer ${e}`
|
|
10361
10364
|
},
|
|
10362
|
-
body: JSON.stringify(r === "vehicle" ? { vehicle: i?.vehicle } :
|
|
10365
|
+
body: JSON.stringify(r === "vehicle" ? { vehicle: i?.vehicle } : Ym(o, f))
|
|
10363
10366
|
});
|
|
10364
10367
|
if (!s.ok) throw Error(`Error: ${s.status} ${s.statusText}`);
|
|
10365
10368
|
let c = await s.json();
|
|
10366
|
-
_(c),
|
|
10369
|
+
_(c), zl(c), a?.(c);
|
|
10367
10370
|
} catch (e) {
|
|
10368
10371
|
console.error("[VehicleGarage] Wheel/tyre lookup failed:", e), x(e instanceof Error ? e.message : "Could not resolve wheel/tyre filters.");
|
|
10369
10372
|
} finally {
|
|
@@ -10373,18 +10376,18 @@ function $m({ apiKey: e, apiBaseUrl: t, wheelTyreFitmentUrl: n, portalContainer:
|
|
|
10373
10376
|
return /* @__PURE__ */ g("div", {
|
|
10374
10377
|
className: "flex flex-col gap-5",
|
|
10375
10378
|
children: [
|
|
10376
|
-
b ? /* @__PURE__ */ g(
|
|
10379
|
+
b ? /* @__PURE__ */ g(rp, { children: [
|
|
10377
10380
|
/* @__PURE__ */ h(kc, {}),
|
|
10378
|
-
/* @__PURE__ */ h(
|
|
10379
|
-
/* @__PURE__ */ h(
|
|
10381
|
+
/* @__PURE__ */ h(ip, { children: "Wheel/tyre search unavailable" }),
|
|
10382
|
+
/* @__PURE__ */ h(ap, { children: b })
|
|
10380
10383
|
] }) : null,
|
|
10381
10384
|
/* @__PURE__ */ g("div", {
|
|
10382
10385
|
className: "garage-tab-list grid grid-cols-2 gap-2",
|
|
10383
|
-
children: [/* @__PURE__ */ h(
|
|
10386
|
+
children: [/* @__PURE__ */ h(Xm, {
|
|
10384
10387
|
active: o === "wheel",
|
|
10385
10388
|
onClick: () => s("wheel"),
|
|
10386
10389
|
children: "Wheels"
|
|
10387
|
-
}), /* @__PURE__ */ h(
|
|
10390
|
+
}), /* @__PURE__ */ h(Xm, {
|
|
10388
10391
|
active: o === "tyre",
|
|
10389
10392
|
onClick: () => s("tyre"),
|
|
10390
10393
|
children: "Tyres"
|
|
@@ -10392,11 +10395,11 @@ function $m({ apiKey: e, apiBaseUrl: t, wheelTyreFitmentUrl: n, portalContainer:
|
|
|
10392
10395
|
}),
|
|
10393
10396
|
/* @__PURE__ */ g("div", {
|
|
10394
10397
|
className: "garage-tab-list grid grid-cols-2 gap-2",
|
|
10395
|
-
children: [/* @__PURE__ */ h(
|
|
10398
|
+
children: [/* @__PURE__ */ h(Xm, {
|
|
10396
10399
|
active: l === "vehicle",
|
|
10397
10400
|
onClick: () => d("vehicle"),
|
|
10398
10401
|
children: "Use current vehicle"
|
|
10399
|
-
}), /* @__PURE__ */ h(
|
|
10402
|
+
}), /* @__PURE__ */ h(Xm, {
|
|
10400
10403
|
active: l === "specs",
|
|
10401
10404
|
onClick: () => d("specs"),
|
|
10402
10405
|
children: "Search by specs"
|
|
@@ -10410,7 +10413,7 @@ function $m({ apiKey: e, apiBaseUrl: t, wheelTyreFitmentUrl: n, portalContainer:
|
|
|
10410
10413
|
className: "text-base/6 font-medium text-foreground sm:text-sm/6",
|
|
10411
10414
|
children: i.description
|
|
10412
10415
|
})
|
|
10413
|
-
}) : null, /* @__PURE__ */ g(
|
|
10416
|
+
}) : null, /* @__PURE__ */ g(_d, {
|
|
10414
10417
|
type: "button",
|
|
10415
10418
|
className: "w-full",
|
|
10416
10419
|
onClick: () => w("vehicle"),
|
|
@@ -10422,31 +10425,31 @@ function $m({ apiKey: e, apiBaseUrl: t, wheelTyreFitmentUrl: n, portalContainer:
|
|
|
10422
10425
|
children: [o === "wheel" ? /* @__PURE__ */ g("div", {
|
|
10423
10426
|
className: "flex flex-col gap-2",
|
|
10424
10427
|
children: [
|
|
10425
|
-
/* @__PURE__ */ h(
|
|
10428
|
+
/* @__PURE__ */ h($m, {
|
|
10426
10429
|
name: "bolt_pattern",
|
|
10427
10430
|
label: "Bolt pattern",
|
|
10428
10431
|
placeholder: "Bolt pattern",
|
|
10429
|
-
options:
|
|
10432
|
+
options: Mm,
|
|
10430
10433
|
portalContainer: r,
|
|
10431
10434
|
value: f.boltPattern,
|
|
10432
10435
|
onChange: (e) => C("boltPattern", e)
|
|
10433
10436
|
}),
|
|
10434
10437
|
/* @__PURE__ */ g("div", {
|
|
10435
10438
|
className: "grid grid-cols-2 gap-2",
|
|
10436
|
-
children: [/* @__PURE__ */ h(
|
|
10439
|
+
children: [/* @__PURE__ */ h($m, {
|
|
10437
10440
|
name: "wheel_diameter_in",
|
|
10438
10441
|
label: "Diameter",
|
|
10439
10442
|
placeholder: "Diameter",
|
|
10440
|
-
options:
|
|
10443
|
+
options: Pm,
|
|
10441
10444
|
portalContainer: r,
|
|
10442
10445
|
value: f.wheelDiameterIn,
|
|
10443
10446
|
onChange: (e) => C("wheelDiameterIn", e)
|
|
10444
|
-
}), /* @__PURE__ */ h(
|
|
10447
|
+
}), /* @__PURE__ */ h($m, {
|
|
10445
10448
|
name: "wheel_width_in",
|
|
10446
10449
|
label: "Width",
|
|
10447
10450
|
ariaLabel: "Wheel width",
|
|
10448
10451
|
placeholder: "Width",
|
|
10449
|
-
options:
|
|
10452
|
+
options: Fm,
|
|
10450
10453
|
portalContainer: r,
|
|
10451
10454
|
value: f.wheelWidthIn,
|
|
10452
10455
|
onChange: (e) => C("wheelWidthIn", e)
|
|
@@ -10454,19 +10457,19 @@ function $m({ apiKey: e, apiBaseUrl: t, wheelTyreFitmentUrl: n, portalContainer:
|
|
|
10454
10457
|
}),
|
|
10455
10458
|
/* @__PURE__ */ g("div", {
|
|
10456
10459
|
className: "grid grid-cols-2 gap-2",
|
|
10457
|
-
children: [/* @__PURE__ */ h(
|
|
10460
|
+
children: [/* @__PURE__ */ h($m, {
|
|
10458
10461
|
name: "offset_mm",
|
|
10459
10462
|
label: "Offset",
|
|
10460
10463
|
placeholder: "Offset",
|
|
10461
|
-
options:
|
|
10464
|
+
options: Im,
|
|
10462
10465
|
portalContainer: r,
|
|
10463
10466
|
value: f.offsetMm,
|
|
10464
10467
|
onChange: (e) => C("offsetMm", e)
|
|
10465
|
-
}), /* @__PURE__ */ h(
|
|
10468
|
+
}), /* @__PURE__ */ h($m, {
|
|
10466
10469
|
name: "center_bore_mm",
|
|
10467
10470
|
label: "Centre bore",
|
|
10468
10471
|
placeholder: "Centre bore",
|
|
10469
|
-
options:
|
|
10472
|
+
options: Nm,
|
|
10470
10473
|
portalContainer: r,
|
|
10471
10474
|
value: f.centerBoreMm,
|
|
10472
10475
|
onChange: (e) => C("centerBoreMm", e)
|
|
@@ -10478,30 +10481,30 @@ function $m({ apiKey: e, apiBaseUrl: t, wheelTyreFitmentUrl: n, portalContainer:
|
|
|
10478
10481
|
children: [/* @__PURE__ */ g("div", {
|
|
10479
10482
|
className: "grid grid-cols-3 gap-2",
|
|
10480
10483
|
children: [
|
|
10481
|
-
/* @__PURE__ */ h(
|
|
10484
|
+
/* @__PURE__ */ h($m, {
|
|
10482
10485
|
name: "tyre_width_mm",
|
|
10483
10486
|
label: "Width",
|
|
10484
10487
|
ariaLabel: "Tyre width",
|
|
10485
10488
|
placeholder: "Width",
|
|
10486
|
-
options:
|
|
10489
|
+
options: Lm,
|
|
10487
10490
|
portalContainer: r,
|
|
10488
10491
|
value: f.tyreWidthMm,
|
|
10489
10492
|
onChange: (e) => C("tyreWidthMm", e)
|
|
10490
10493
|
}),
|
|
10491
|
-
/* @__PURE__ */ h(
|
|
10494
|
+
/* @__PURE__ */ h($m, {
|
|
10492
10495
|
name: "aspect_ratio",
|
|
10493
10496
|
label: "Aspect ratio",
|
|
10494
10497
|
placeholder: "Aspect ratio",
|
|
10495
|
-
options:
|
|
10498
|
+
options: Rm,
|
|
10496
10499
|
portalContainer: r,
|
|
10497
10500
|
value: f.aspectRatio,
|
|
10498
10501
|
onChange: (e) => C("aspectRatio", e)
|
|
10499
10502
|
}),
|
|
10500
|
-
/* @__PURE__ */ h(
|
|
10503
|
+
/* @__PURE__ */ h($m, {
|
|
10501
10504
|
name: "rim_diameter_in",
|
|
10502
10505
|
label: "Rim",
|
|
10503
10506
|
placeholder: "Rim",
|
|
10504
|
-
options:
|
|
10507
|
+
options: zm,
|
|
10505
10508
|
portalContainer: r,
|
|
10506
10509
|
value: f.rimDiameterIn,
|
|
10507
10510
|
onChange: (e) => C("rimDiameterIn", e)
|
|
@@ -10509,25 +10512,25 @@ function $m({ apiKey: e, apiBaseUrl: t, wheelTyreFitmentUrl: n, portalContainer:
|
|
|
10509
10512
|
]
|
|
10510
10513
|
}), /* @__PURE__ */ g("div", {
|
|
10511
10514
|
className: "grid grid-cols-2 gap-2",
|
|
10512
|
-
children: [/* @__PURE__ */ h(
|
|
10515
|
+
children: [/* @__PURE__ */ h($m, {
|
|
10513
10516
|
name: "load_index",
|
|
10514
10517
|
label: "Load index",
|
|
10515
10518
|
placeholder: "Load index",
|
|
10516
|
-
options:
|
|
10519
|
+
options: Vm,
|
|
10517
10520
|
portalContainer: r,
|
|
10518
10521
|
value: f.loadIndex,
|
|
10519
10522
|
onChange: (e) => C("loadIndex", e)
|
|
10520
|
-
}), /* @__PURE__ */ h(
|
|
10523
|
+
}), /* @__PURE__ */ h($m, {
|
|
10521
10524
|
name: "speed_rating",
|
|
10522
10525
|
label: "Speed rating",
|
|
10523
10526
|
placeholder: "Speed rating",
|
|
10524
|
-
options:
|
|
10527
|
+
options: Hm,
|
|
10525
10528
|
portalContainer: r,
|
|
10526
10529
|
value: f.speedRating,
|
|
10527
10530
|
onChange: (e) => C("speedRating", e)
|
|
10528
10531
|
})]
|
|
10529
10532
|
})]
|
|
10530
|
-
}), /* @__PURE__ */ g(
|
|
10533
|
+
}), /* @__PURE__ */ g(_d, {
|
|
10531
10534
|
type: "button",
|
|
10532
10535
|
className: "w-full",
|
|
10533
10536
|
onClick: () => w("specs"),
|
|
@@ -10550,7 +10553,7 @@ function $m({ apiKey: e, apiBaseUrl: t, wheelTyreFitmentUrl: n, portalContainer:
|
|
|
10550
10553
|
}
|
|
10551
10554
|
//#endregion
|
|
10552
10555
|
//#region src/components/vehicle-garage/GridCheckersIcon.tsx
|
|
10553
|
-
function
|
|
10556
|
+
function th({ title: e, ...t }) {
|
|
10554
10557
|
return /* @__PURE__ */ g("svg", {
|
|
10555
10558
|
xmlns: "http://www.w3.org/2000/svg",
|
|
10556
10559
|
width: "16",
|
|
@@ -10616,7 +10619,7 @@ function eh({ title: e, ...t }) {
|
|
|
10616
10619
|
}
|
|
10617
10620
|
//#endregion
|
|
10618
10621
|
//#region src/components/vehicle-garage/PartbotLogo.tsx
|
|
10619
|
-
function
|
|
10622
|
+
function nh({ className: e, label: t = "Partbot" }) {
|
|
10620
10623
|
return /* @__PURE__ */ h("span", {
|
|
10621
10624
|
className: e,
|
|
10622
10625
|
role: "img",
|
|
@@ -10683,11 +10686,11 @@ function th({ className: e, label: t = "Partbot" }) {
|
|
|
10683
10686
|
}
|
|
10684
10687
|
//#endregion
|
|
10685
10688
|
//#region src/components/vehicle-garage/VehicleGarage.tsx
|
|
10686
|
-
var
|
|
10689
|
+
var rh = "https://use.partbot.io/?utm_source=vehicle-garage&utm_medium=referral&utm_campaign=powered-by&utm_content=drawer-footer", ih = [
|
|
10687
10690
|
"make",
|
|
10688
10691
|
"model",
|
|
10689
10692
|
"year"
|
|
10690
|
-
],
|
|
10693
|
+
], ah = [
|
|
10691
10694
|
"body",
|
|
10692
10695
|
"series",
|
|
10693
10696
|
"variant",
|
|
@@ -10697,30 +10700,30 @@ var nh = "https://use.partbot.io/?utm_source=vehicle-garage&utm_medium=referral&
|
|
|
10697
10700
|
"drivetrain",
|
|
10698
10701
|
"cylinders"
|
|
10699
10702
|
];
|
|
10700
|
-
function
|
|
10701
|
-
if (typeof window > "u") return
|
|
10702
|
-
let e = new URL(
|
|
10703
|
+
function oh() {
|
|
10704
|
+
if (typeof window > "u") return rh;
|
|
10705
|
+
let e = new URL(rh);
|
|
10703
10706
|
return e.searchParams.set("ref", window.location.hostname || "unknown"), e.toString();
|
|
10704
10707
|
}
|
|
10705
|
-
function
|
|
10708
|
+
function sh(e) {
|
|
10706
10709
|
return e !== !1 && String(e).trim().toLowerCase() !== "false";
|
|
10707
10710
|
}
|
|
10708
|
-
function
|
|
10711
|
+
function ch(e, t) {
|
|
10709
10712
|
return e === t || String(e).trim().toLowerCase() === String(t);
|
|
10710
10713
|
}
|
|
10711
|
-
function
|
|
10712
|
-
return
|
|
10714
|
+
function lh({ showBranding: e, hideBranding: t }) {
|
|
10715
|
+
return ch(t, !0) ? !1 : !ch(e, !1);
|
|
10713
10716
|
}
|
|
10714
|
-
function
|
|
10715
|
-
return
|
|
10717
|
+
function uh({ showOverlay: e, hideOverlay: t }) {
|
|
10718
|
+
return ch(t, !0) ? !1 : !ch(e, !1);
|
|
10716
10719
|
}
|
|
10717
|
-
function
|
|
10720
|
+
function dh(e, t) {
|
|
10718
10721
|
return t === "wheels" ? !0 : e === !0 || String(e).trim().toLowerCase() === "true";
|
|
10719
10722
|
}
|
|
10720
|
-
function
|
|
10723
|
+
function fh(e, t) {
|
|
10721
10724
|
return e === "garage" || e === "wheels" && !t ? "plate" : e;
|
|
10722
10725
|
}
|
|
10723
|
-
function
|
|
10726
|
+
function ph({ dataIcon: e, iconUrl: t }) {
|
|
10724
10727
|
let n = t?.trim();
|
|
10725
10728
|
return n ? /* @__PURE__ */ h("img", {
|
|
10726
10729
|
src: n,
|
|
@@ -10732,47 +10735,47 @@ function fh({ dataIcon: e, iconUrl: t }) {
|
|
|
10732
10735
|
"data-vehicle-garage-icon": "",
|
|
10733
10736
|
className: "vehicle-garage-icon",
|
|
10734
10737
|
style: { aspectRatio: "1 / 1" }
|
|
10735
|
-
}) : /* @__PURE__ */ h(
|
|
10738
|
+
}) : /* @__PURE__ */ h(th, {
|
|
10736
10739
|
"data-icon": e,
|
|
10737
10740
|
"data-vehicle-garage-icon": "",
|
|
10738
10741
|
className: "vehicle-garage-icon",
|
|
10739
10742
|
style: { aspectRatio: "1 / 1" }
|
|
10740
10743
|
});
|
|
10741
10744
|
}
|
|
10742
|
-
function
|
|
10745
|
+
function mh(e, t) {
|
|
10743
10746
|
return t == null || t === "" || typeof t == "object" ? null : e === "cylinders" ? `${t}cyl` : String(t);
|
|
10744
10747
|
}
|
|
10745
|
-
function mh(e) {
|
|
10746
|
-
return rh.map((t) => ph(t, e.vehicle[t])).filter(Boolean).join(" ") || e.description;
|
|
10747
|
-
}
|
|
10748
10748
|
function hh(e) {
|
|
10749
|
-
return ih.map((t) =>
|
|
10749
|
+
return ih.map((t) => mh(t, e.vehicle[t])).filter(Boolean).join(" ") || e.description;
|
|
10750
10750
|
}
|
|
10751
10751
|
function gh(e) {
|
|
10752
|
-
return
|
|
10752
|
+
return ah.map((t) => mh(t, e[t])).filter(Boolean).join(" ");
|
|
10753
10753
|
}
|
|
10754
10754
|
function _h(e) {
|
|
10755
|
+
return [gh(e.vehicle), e.plate ? `${e.plate.state} ${e.plate.number}` : null].filter(Boolean).join(" · ");
|
|
10756
|
+
}
|
|
10757
|
+
function vh(e) {
|
|
10755
10758
|
return {
|
|
10756
10759
|
description: e.description || il(e.vehicle),
|
|
10757
10760
|
vehicle_ids: e.vehicle_ids,
|
|
10758
10761
|
vehicle: e.vehicle
|
|
10759
10762
|
};
|
|
10760
10763
|
}
|
|
10761
|
-
function
|
|
10764
|
+
function yh(e) {
|
|
10762
10765
|
return {
|
|
10763
10766
|
activeVehicle: e.vehicles.find((t) => t.key === e.activeKey) ?? null,
|
|
10764
10767
|
vehicles: e.vehicles,
|
|
10765
10768
|
source: e.vehicles.find((t) => t.key === e.activeKey)?.source ?? null
|
|
10766
10769
|
};
|
|
10767
10770
|
}
|
|
10768
|
-
function
|
|
10771
|
+
function bh(e) {
|
|
10769
10772
|
return e.source !== "plate" || !e.plate ? null : {
|
|
10770
10773
|
state: e.plate.state,
|
|
10771
10774
|
plate: { number: e.plate.number },
|
|
10772
10775
|
factory_vehicle: e.vehicle
|
|
10773
10776
|
};
|
|
10774
10777
|
}
|
|
10775
|
-
function
|
|
10778
|
+
function xh(e, t, n) {
|
|
10776
10779
|
let r = e.vehicles.find((e) => cl(e, t)), i = r ? e.vehicles.map((e) => e.key === r.key ? {
|
|
10777
10780
|
...e,
|
|
10778
10781
|
...t,
|
|
@@ -10789,8 +10792,8 @@ function bh(e, t, n) {
|
|
|
10789
10792
|
activeVehicle: a
|
|
10790
10793
|
};
|
|
10791
10794
|
}
|
|
10792
|
-
function
|
|
10793
|
-
let he =
|
|
10795
|
+
function Sh({ apiKey: e, callbackUrl: t, productsUrl: n, themeColor: r, buttonColor: o, buttonHoverColor: s, buttonLabelColor: l, buttonHoverLabelColor: d, themeTextColor: f, mobileBackgroundColor: p, borderColor: _, overlayColor: v, overlayOpacity: y, overlayBlur: b, radius: x, buttonBorderRadius: S, fontFamily: C, fontSize: w, padding: T, inputShadow: E, inputBorderColor: D, inputBorderWidth: O, buttonTheme: k = "light", useGeolocation: A, geocodeApiKey: j, placeholder: M, intro: N, supportMessage: P, actionButtonLabel: F = "Show Products", demoMode: I, modal: L = !0, showOverlay: R = !0, hideOverlay: z = !1, isOpen: ee, onOpenChange: B, hideDefaultButton: V = !1, onModalClose: te, autoCloseOnSelect: ne = !0, closeOnInteractOutside: H = !0, triggerLabel: re = "Garage", showGarageIcon: ie = !0, garageIconUrl: ae, showBranding: oe = !0, hideBranding: U = !1, drawerSide: W = "right", defaultTab: se = "plate", apiBaseUrl: ce, wheelTyreFitmentUrl: le, showWheelTyreTab: ue, onWheelTyreFitmentResult: G, garageLimit: de = 4, onVehicleActivate: fe, onGarageChange: pe, portalContainer: me, ...K }) {
|
|
10796
|
+
let he = dh(ue, se), ge = fh(se, he), [q, _e] = u(!1), [ve, ye] = u(ge), [be, xe] = u(null), [Se, Ce] = u(!1), [J, we] = u(() => xl()), Te = c(() => Yc({
|
|
10794
10797
|
themeColor: r,
|
|
10795
10798
|
buttonColor: o,
|
|
10796
10799
|
buttonHoverColor: s,
|
|
@@ -10830,19 +10833,19 @@ function xh({ apiKey: e, callbackUrl: t, productsUrl: n, themeColor: r, buttonCo
|
|
|
10830
10833
|
T,
|
|
10831
10834
|
x,
|
|
10832
10835
|
r
|
|
10833
|
-
]), Ee = c(() =>
|
|
10836
|
+
]), Ee = c(() => oh(), []), De = i((e) => {
|
|
10834
10837
|
xe(e);
|
|
10835
|
-
}, []), Oe = ee !== void 0, ke = Oe ? !!ee : q, Ae = W === "left" ? "left" : "right", je =
|
|
10838
|
+
}, []), Oe = ee !== void 0, ke = Oe ? !!ee : q, Ae = W === "left" ? "left" : "right", je = sh(ie), Me = lh({
|
|
10836
10839
|
showBranding: oe,
|
|
10837
10840
|
hideBranding: U
|
|
10838
|
-
}), Ne =
|
|
10841
|
+
}), Ne = uh({
|
|
10839
10842
|
showOverlay: R,
|
|
10840
10843
|
hideOverlay: z
|
|
10841
10844
|
}), Pe = J.vehicles.find((e) => e.key === J.activeKey) ?? null, Fe = i((e) => {
|
|
10842
|
-
let t =
|
|
10843
|
-
|
|
10845
|
+
let t = yh(e);
|
|
10846
|
+
Il(t), pe?.(t);
|
|
10844
10847
|
}, [pe]), Ie = i((e) => {
|
|
10845
|
-
Oe || _e(e), B?.(e), e || (
|
|
10848
|
+
Oe || _e(e), B?.(e), e || (Rl(), te?.());
|
|
10846
10849
|
}, [
|
|
10847
10850
|
Oe,
|
|
10848
10851
|
te,
|
|
@@ -10850,22 +10853,22 @@ function xh({ apiKey: e, callbackUrl: t, productsUrl: n, themeColor: r, buttonCo
|
|
|
10850
10853
|
]), Le = i((e) => {
|
|
10851
10854
|
H || e.preventDefault();
|
|
10852
10855
|
}, [H]), Re = i(({ source: e, nextState: n, vehicle: r, plateDetails: i, closeAfter: a = ne, emitLegacySelection: o = !0 }) => {
|
|
10853
|
-
if (ml(n), we(n), gl(
|
|
10856
|
+
if (ml(n), we(n), gl(vh(r)), e === "plate" ? yl(i ?? bh(r) ?? {}) : bl(), o && Fl(e, r), Fe(n), fe?.({
|
|
10854
10857
|
source: e,
|
|
10855
10858
|
vehicle: r,
|
|
10856
10859
|
vehicles: n.vehicles
|
|
10857
10860
|
}), t) {
|
|
10858
10861
|
Ie(!1);
|
|
10859
|
-
let e =
|
|
10862
|
+
let e = new URL(t, window.location.origin).pathname, n = Al(e) ? jl({
|
|
10860
10863
|
baseUrl: t,
|
|
10861
10864
|
selection: r.vehicle,
|
|
10862
10865
|
vehicleScopeTokens: K.vehicleScopeTokens,
|
|
10863
10866
|
yearTokens: K.yearTokens
|
|
10864
|
-
}) :
|
|
10865
|
-
window.location.href =
|
|
10867
|
+
}) : Bl(t);
|
|
10868
|
+
window.location.href = n;
|
|
10866
10869
|
return;
|
|
10867
10870
|
}
|
|
10868
|
-
|
|
10871
|
+
Ml({
|
|
10869
10872
|
selection: r.vehicle,
|
|
10870
10873
|
modifyQueryString: K.modifyQueryString,
|
|
10871
10874
|
vehicleScopeTokens: K.vehicleScopeTokens,
|
|
@@ -10883,7 +10886,7 @@ function xh({ apiKey: e, callbackUrl: t, productsUrl: n, themeColor: r, buttonCo
|
|
|
10883
10886
|
]), ze = i(({ source: e, legacyVehicle: t, plateDetails: n, closeAfter: r }) => {
|
|
10884
10887
|
let i = ll(t);
|
|
10885
10888
|
if (!i) return !1;
|
|
10886
|
-
let a =
|
|
10889
|
+
let a = xh(J, ul({
|
|
10887
10890
|
legacyVehicle: i,
|
|
10888
10891
|
source: e,
|
|
10889
10892
|
plateDetails: n
|
|
@@ -10902,7 +10905,7 @@ function xh({ apiKey: e, callbackUrl: t, productsUrl: n, themeColor: r, buttonCo
|
|
|
10902
10905
|
]), Be = i((e) => {
|
|
10903
10906
|
let t = hl();
|
|
10904
10907
|
if (!t) return;
|
|
10905
|
-
let n =
|
|
10908
|
+
let n = xh(J, ul({
|
|
10906
10909
|
legacyVehicle: t,
|
|
10907
10910
|
source: e,
|
|
10908
10911
|
plateDetails: e === "plate" ? vl() : null
|
|
@@ -10917,7 +10920,7 @@ function xh({ apiKey: e, callbackUrl: t, productsUrl: n, themeColor: r, buttonCo
|
|
|
10917
10920
|
activeKey: t.key
|
|
10918
10921
|
},
|
|
10919
10922
|
vehicle: t,
|
|
10920
|
-
plateDetails:
|
|
10923
|
+
plateDetails: bh(t)
|
|
10921
10924
|
});
|
|
10922
10925
|
}, [Re, J]), He = i((e) => {
|
|
10923
10926
|
if (!e) return;
|
|
@@ -10935,17 +10938,17 @@ function xh({ apiKey: e, callbackUrl: t, productsUrl: n, themeColor: r, buttonCo
|
|
|
10935
10938
|
source: r.source,
|
|
10936
10939
|
nextState: i,
|
|
10937
10940
|
vehicle: r,
|
|
10938
|
-
plateDetails:
|
|
10941
|
+
plateDetails: bh(r),
|
|
10939
10942
|
closeAfter: !1,
|
|
10940
10943
|
emitLegacySelection: !1
|
|
10941
10944
|
});
|
|
10942
10945
|
return;
|
|
10943
10946
|
}
|
|
10944
|
-
_l(), bl(), ml(i), we(i),
|
|
10947
|
+
_l(), bl(), ml(i), we(i), Nl({
|
|
10945
10948
|
modifyQueryString: K.modifyQueryString,
|
|
10946
10949
|
vehicleScopeTokens: K.vehicleScopeTokens,
|
|
10947
10950
|
yearTokens: K.yearTokens
|
|
10948
|
-
}),
|
|
10951
|
+
}), Ll(), Fe(i);
|
|
10949
10952
|
}, [
|
|
10950
10953
|
Re,
|
|
10951
10954
|
Fe,
|
|
@@ -10973,7 +10976,7 @@ function xh({ apiKey: e, callbackUrl: t, productsUrl: n, themeColor: r, buttonCo
|
|
|
10973
10976
|
activeKey: null
|
|
10974
10977
|
};
|
|
10975
10978
|
return ml(t), t;
|
|
10976
|
-
}), _l(), bl(),
|
|
10979
|
+
}), _l(), bl(), Nl({
|
|
10977
10980
|
modifyQueryString: K.modifyQueryString,
|
|
10978
10981
|
vehicleScopeTokens: K.vehicleScopeTokens,
|
|
10979
10982
|
yearTokens: K.yearTokens
|
|
@@ -10990,20 +10993,20 @@ function xh({ apiKey: e, callbackUrl: t, productsUrl: n, themeColor: r, buttonCo
|
|
|
10990
10993
|
]), /* @__PURE__ */ g("div", {
|
|
10991
10994
|
className: "vehicle-garage-theme",
|
|
10992
10995
|
style: Te,
|
|
10993
|
-
children: [V ? null : /* @__PURE__ */ g(
|
|
10996
|
+
children: [V ? null : /* @__PURE__ */ g(_d, {
|
|
10994
10997
|
type: "button",
|
|
10995
10998
|
variant: k === "dark" ? "default" : "outline",
|
|
10996
10999
|
size: "lg",
|
|
10997
11000
|
onClick: () => Ie(!ke),
|
|
10998
|
-
children: [je ? /* @__PURE__ */ h(
|
|
11001
|
+
children: [je ? /* @__PURE__ */ h(ph, {
|
|
10999
11002
|
dataIcon: "inline-start",
|
|
11000
11003
|
iconUrl: ae
|
|
11001
11004
|
}) : null, re]
|
|
11002
|
-
}), /* @__PURE__ */ h(
|
|
11005
|
+
}), /* @__PURE__ */ h(xd, {
|
|
11003
11006
|
open: ke,
|
|
11004
11007
|
onOpenChange: Ie,
|
|
11005
11008
|
modal: L,
|
|
11006
|
-
children: /* @__PURE__ */ h(
|
|
11009
|
+
children: /* @__PURE__ */ h(wd, {
|
|
11007
11010
|
ref: De,
|
|
11008
11011
|
side: Ae,
|
|
11009
11012
|
container: me,
|
|
@@ -11017,14 +11020,14 @@ function xh({ apiKey: e, callbackUrl: t, productsUrl: n, themeColor: r, buttonCo
|
|
|
11017
11020
|
onInteractOutside: Le,
|
|
11018
11021
|
children: /* @__PURE__ */ g("div", {
|
|
11019
11022
|
className: "flex h-full min-h-0 flex-col",
|
|
11020
|
-
children: [/* @__PURE__ */ g(
|
|
11023
|
+
children: [/* @__PURE__ */ g(Td, {
|
|
11021
11024
|
className: "gap-3 border-b px-5 py-4",
|
|
11022
11025
|
children: [/* @__PURE__ */ g("div", {
|
|
11023
11026
|
className: "flex min-w-0 flex-col gap-1",
|
|
11024
|
-
children: [/* @__PURE__ */ g(
|
|
11027
|
+
children: [/* @__PURE__ */ g(Ed, {
|
|
11025
11028
|
className: "flex items-center gap-2",
|
|
11026
|
-
children: [je ? /* @__PURE__ */ h(
|
|
11027
|
-
}), /* @__PURE__ */ h(
|
|
11029
|
+
children: [je ? /* @__PURE__ */ h(ph, { iconUrl: ae }) : null, /* @__PURE__ */ h("span", { children: "Garage" })]
|
|
11030
|
+
}), /* @__PURE__ */ h(Dd, {
|
|
11028
11031
|
className: "sr-only",
|
|
11029
11032
|
children: "Search by plate, browse vehicle details, or revisit saved vehicles."
|
|
11030
11033
|
})]
|
|
@@ -11046,10 +11049,10 @@ function xh({ apiKey: e, callbackUrl: t, productsUrl: n, themeColor: r, buttonCo
|
|
|
11046
11049
|
className: "flex min-w-0 flex-col gap-1",
|
|
11047
11050
|
children: [/* @__PURE__ */ h("span", {
|
|
11048
11051
|
className: "line-clamp-1 text-sm leading-snug font-medium text-foreground",
|
|
11049
|
-
children: Pe ?
|
|
11050
|
-
}), Pe &&
|
|
11052
|
+
children: Pe ? hh(Pe) : "Select vehicle"
|
|
11053
|
+
}), Pe && _h(Pe) ? /* @__PURE__ */ h("span", {
|
|
11051
11054
|
className: "line-clamp-2 text-xs leading-snug text-muted-foreground",
|
|
11052
|
-
children:
|
|
11055
|
+
children: _h(Pe)
|
|
11053
11056
|
}) : null]
|
|
11054
11057
|
}), /* @__PURE__ */ h(wc, { className: "shrink-0 text-muted-foreground" })]
|
|
11055
11058
|
})
|
|
@@ -11061,7 +11064,7 @@ function xh({ apiKey: e, callbackUrl: t, productsUrl: n, themeColor: r, buttonCo
|
|
|
11061
11064
|
sideOffset: 4,
|
|
11062
11065
|
onOpenAutoFocus: (e) => e.preventDefault(),
|
|
11063
11066
|
children: J.vehicles.map((e) => {
|
|
11064
|
-
let t = e.key === J.activeKey, n =
|
|
11067
|
+
let t = e.key === J.activeKey, n = hh(e), r = _h(e);
|
|
11065
11068
|
return /* @__PURE__ */ g("div", {
|
|
11066
11069
|
className: "flex min-w-0 items-stretch gap-1 rounded-md focus-within:bg-accent focus-within:text-accent-foreground hover:bg-accent hover:text-accent-foreground",
|
|
11067
11070
|
children: [/* @__PURE__ */ g("button", {
|
|
@@ -11102,35 +11105,35 @@ function xh({ apiKey: e, callbackUrl: t, productsUrl: n, themeColor: r, buttonCo
|
|
|
11102
11105
|
}), /* @__PURE__ */ g("div", {
|
|
11103
11106
|
className: "flex flex-1 flex-col gap-5 overflow-hidden px-5 py-4",
|
|
11104
11107
|
children: [
|
|
11105
|
-
/* @__PURE__ */ g(
|
|
11108
|
+
/* @__PURE__ */ g(Od, {
|
|
11106
11109
|
value: ve,
|
|
11107
11110
|
onValueChange: (e) => ye(e),
|
|
11108
11111
|
className: "flex min-h-0 flex-1 flex-col overflow-hidden",
|
|
11109
11112
|
children: [
|
|
11110
|
-
/* @__PURE__ */ g(
|
|
11113
|
+
/* @__PURE__ */ g(Ad, {
|
|
11111
11114
|
className: he ? "garage-tab-list grid w-full grid-cols-3" : "garage-tab-list grid w-full grid-cols-2",
|
|
11112
11115
|
children: [
|
|
11113
|
-
/* @__PURE__ */ h(
|
|
11116
|
+
/* @__PURE__ */ h(jd, {
|
|
11114
11117
|
className: "garage-tab-trigger",
|
|
11115
11118
|
value: "plate",
|
|
11116
11119
|
children: "Plate"
|
|
11117
11120
|
}),
|
|
11118
|
-
/* @__PURE__ */ h(
|
|
11121
|
+
/* @__PURE__ */ h(jd, {
|
|
11119
11122
|
className: "garage-tab-trigger",
|
|
11120
11123
|
value: "mmy",
|
|
11121
11124
|
children: "Vehicle"
|
|
11122
11125
|
}),
|
|
11123
|
-
he ? /* @__PURE__ */ h(
|
|
11126
|
+
he ? /* @__PURE__ */ h(jd, {
|
|
11124
11127
|
className: "garage-tab-trigger",
|
|
11125
11128
|
value: "wheels",
|
|
11126
11129
|
children: "Wheels & Tyres"
|
|
11127
11130
|
}) : null
|
|
11128
11131
|
]
|
|
11129
11132
|
}),
|
|
11130
|
-
/* @__PURE__ */ h(
|
|
11133
|
+
/* @__PURE__ */ h(Md, {
|
|
11131
11134
|
value: "plate",
|
|
11132
11135
|
className: "garage-tab-scroll min-h-0 flex-1 overflow-auto",
|
|
11133
|
-
children: /* @__PURE__ */ h(
|
|
11136
|
+
children: /* @__PURE__ */ h(Ep, {
|
|
11134
11137
|
apiKey: e,
|
|
11135
11138
|
geocodeApiKey: j,
|
|
11136
11139
|
drawerOpen: ke,
|
|
@@ -11151,10 +11154,10 @@ function xh({ apiKey: e, callbackUrl: t, productsUrl: n, themeColor: r, buttonCo
|
|
|
11151
11154
|
})
|
|
11152
11155
|
})
|
|
11153
11156
|
}),
|
|
11154
|
-
/* @__PURE__ */ h(
|
|
11157
|
+
/* @__PURE__ */ h(Md, {
|
|
11155
11158
|
value: "mmy",
|
|
11156
11159
|
className: "garage-tab-scroll min-h-0 flex-1 overflow-auto",
|
|
11157
|
-
children: /* @__PURE__ */ h(
|
|
11160
|
+
children: /* @__PURE__ */ h(km, {
|
|
11158
11161
|
apiKey: e,
|
|
11159
11162
|
apiBaseUrl: ce,
|
|
11160
11163
|
activeVehicle: Pe,
|
|
@@ -11167,10 +11170,10 @@ function xh({ apiKey: e, callbackUrl: t, productsUrl: n, themeColor: r, buttonCo
|
|
|
11167
11170
|
...K
|
|
11168
11171
|
})
|
|
11169
11172
|
}),
|
|
11170
|
-
he ? /* @__PURE__ */ h(
|
|
11173
|
+
he ? /* @__PURE__ */ h(Md, {
|
|
11171
11174
|
value: "wheels",
|
|
11172
11175
|
className: "garage-tab-scroll min-h-0 flex-1 overflow-auto",
|
|
11173
|
-
children: /* @__PURE__ */ h(
|
|
11176
|
+
children: /* @__PURE__ */ h(eh, {
|
|
11174
11177
|
apiKey: e,
|
|
11175
11178
|
apiBaseUrl: ce,
|
|
11176
11179
|
wheelTyreFitmentUrl: le,
|
|
@@ -11181,9 +11184,9 @@ function xh({ apiKey: e, callbackUrl: t, productsUrl: n, themeColor: r, buttonCo
|
|
|
11181
11184
|
}) : null
|
|
11182
11185
|
]
|
|
11183
11186
|
}),
|
|
11184
|
-
n && Pe && !(ve === "plate" && Pe.source === "plate") ? /* @__PURE__ */ g(m, { children: [/* @__PURE__ */ h(
|
|
11187
|
+
n && Pe && !(ve === "plate" && Pe.source === "plate") ? /* @__PURE__ */ g(m, { children: [/* @__PURE__ */ h(Nd, {}), /* @__PURE__ */ h(_d, {
|
|
11185
11188
|
className: "w-full",
|
|
11186
|
-
onClick: () =>
|
|
11189
|
+
onClick: () => Vl(n),
|
|
11187
11190
|
children: F
|
|
11188
11191
|
})] }) : null,
|
|
11189
11192
|
Me ? /* @__PURE__ */ h("div", {
|
|
@@ -11194,7 +11197,7 @@ function xh({ apiKey: e, callbackUrl: t, productsUrl: n, themeColor: r, buttonCo
|
|
|
11194
11197
|
rel: "noreferrer",
|
|
11195
11198
|
"aria-label": "Powered by Partbot",
|
|
11196
11199
|
className: "mx-auto inline-flex items-center justify-center gap-1.5 text-[10px] leading-none font-medium text-muted-foreground no-underline opacity-65 transition-opacity hover:opacity-100 focus-visible:opacity-100 focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 focus-visible:outline-none",
|
|
11197
|
-
children: [/* @__PURE__ */ h("span", { children: "Powered by" }), /* @__PURE__ */ h(
|
|
11200
|
+
children: [/* @__PURE__ */ h("span", { children: "Powered by" }), /* @__PURE__ */ h(nh, { className: "inline-flex h-3.5 text-current" })]
|
|
11198
11201
|
})
|
|
11199
11202
|
}) : null
|
|
11200
11203
|
]
|
|
@@ -11206,24 +11209,24 @@ function xh({ apiKey: e, callbackUrl: t, productsUrl: n, themeColor: r, buttonCo
|
|
|
11206
11209
|
}
|
|
11207
11210
|
//#endregion
|
|
11208
11211
|
//#region src/index.css?inline
|
|
11209
|
-
var Sh = "/*! tailwindcss v4.3.0 | MIT License | https://tailwindcss.com */\n@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-animation-delay:0s;--tw-animation-direction:normal;--tw-animation-duration:initial;--tw-animation-fill-mode:none;--tw-animation-iteration-count:1;--tw-enter-blur:0;--tw-enter-opacity:1;--tw-enter-rotate:0;--tw-enter-scale:1;--tw-enter-translate-x:0;--tw-enter-translate-y:0;--tw-exit-blur:0;--tw-exit-opacity:1;--tw-exit-rotate:0;--tw-exit-scale:1;--tw-exit-translate-x:0;--tw-exit-translate-y:0;--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid;--tw-leading:initial;--tw-font-weight:initial;--tw-tracking:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-duration:initial;--tw-content:\"\";--tw-translate-x:0;--tw-translate-y:0;--tw-translate-z:0}}}@layer theme{:root,:host{--font-sans:\"Segoe UI\", ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, sans-serif;--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, \"Liberation Mono\", \"Courier New\", monospace;--color-white:#fff;--spacing:4px;--font-weight-normal:400;--font-weight-medium:500;--font-weight-semibold:600;--leading-tight:1.25;--leading-snug:1.375;--leading-normal:1.5;--leading-relaxed:1.625;--radius-md:calc(var(--radius) * .8);--animate-spin:spin 1s linear infinite;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--font-license:\"License Plate\", var(--font-sans)}}@layer base{.vehicle-garage-theme,.vehicle-garage-theme *,.vehicle-garage-theme :before,.vehicle-garage-theme :after,.vehicle-garage-theme ::backdrop{box-sizing:border-box;border:0 solid}.vehicle-garage-theme *,.vehicle-garage-theme :before,.vehicle-garage-theme :after,.vehicle-garage-theme ::backdrop{border-color:var(--border);outline-color:var(--ring)}@supports (color:color-mix(in lab, red, red)){.vehicle-garage-theme *,.vehicle-garage-theme :before,.vehicle-garage-theme :after,.vehicle-garage-theme ::backdrop{outline-color:color-mix(in oklab, var(--ring) 50%, transparent)}}.vehicle-garage-theme button,.vehicle-garage-theme input,.vehicle-garage-theme select,.vehicle-garage-theme optgroup,.vehicle-garage-theme textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}.vehicle-garage-theme button,.vehicle-garage-theme input:where([type=button],[type=reset],[type=submit]){appearance:button}.vehicle-garage-theme img,.vehicle-garage-theme svg,.vehicle-garage-theme video,.vehicle-garage-theme canvas,.vehicle-garage-theme audio,.vehicle-garage-theme iframe,.vehicle-garage-theme embed,.vehicle-garage-theme object{vertical-align:middle;display:block}.vehicle-garage-theme img,.vehicle-garage-theme video{max-width:100%;height:auto}.vehicle-garage-theme [hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components{.vehicle-garage-theme{--background:var(--vehicle-garage-background,oklch(98.5% .003 85));--foreground:var(--vehicle-garage-foreground,oklch(22% .004 85));--card:var(--vehicle-garage-card,oklch(99% .002 85));--card-foreground:var(--vehicle-garage-card-foreground,var(--foreground));--popover:var(--vehicle-garage-popover,oklch(99.2% .002 85));--popover-foreground:var(--vehicle-garage-popover-foreground,var(--foreground));--primary:var(--vehicle-garage-button-color,var(--vehicle-garage-primary,oklch(23% .004 85)));--primary-foreground:var(--vehicle-garage-button-label-color,var(--vehicle-garage-primary-foreground,oklch(98.5% .003 85)));--secondary:var(--vehicle-garage-secondary,oklch(95% .003 85));--secondary-foreground:var(--vehicle-garage-secondary-foreground,oklch(28% .004 85));--muted:var(--vehicle-garage-muted,oklch(96.4% .002 85));--muted-foreground:var(--vehicle-garage-muted-foreground,oklch(49% .006 85));--accent:var(--vehicle-garage-accent,oklch(93% .003 85));--accent-foreground:var(--vehicle-garage-accent-foreground,oklch(24% .004 85));--border:var(--vehicle-garage-border,oklch(88% .003 85));--input:var(--vehicle-garage-input-border-color,var(--vehicle-garage-input,var(--border)));--ring:var(--vehicle-garage-ring,oklch(55% .006 85));--radius:var(--vehicle-garage-radius,12px);--spacing:4px;--container-sm:384px;--container-md:448px;--container-xl:576px;--container-7xl:1280px;--vehicle-garage-button-hover-background:var(--vehicle-garage-button-hover-color,var(--primary))}@supports (color:color-mix(in lab, red, red)){.vehicle-garage-theme{--vehicle-garage-button-hover-background:var(--vehicle-garage-button-hover-color,color-mix(in oklab, var(--primary) 88%, var(--foreground)))}}.vehicle-garage-theme{--vehicle-garage-button-hover-foreground:var(--vehicle-garage-button-hover-label-color,var(--primary-foreground));--text-xs:calc(var(--vehicle-garage-font-size,14px) * .857143);--text-xs--line-height:calc(var(--vehicle-garage-font-size,14px) * 1.14286);--text-sm:var(--vehicle-garage-font-size,14px);--text-sm--line-height:calc(var(--vehicle-garage-font-size,14px) * 1.42857);--text-base:calc(var(--vehicle-garage-font-size,14px) * 1.14286);--text-base--line-height:calc(var(--vehicle-garage-font-size,14px) * 1.71429);--text-lg:calc(var(--vehicle-garage-font-size,14px) * 1.28571);--text-lg--line-height:calc(var(--vehicle-garage-font-size,14px) * 2);--tracking-tight:-.4px;font-family:var(--vehicle-garage-font-family,var(--font-sans));font-size:var(--vehicle-garage-font-size,14px);line-height:calc(var(--vehicle-garage-font-size,14px) * 1.42857);color:var(--foreground)}.vehicle-garage-theme [data-slot=button][data-variant=default]:hover{background-color:var(--vehicle-garage-button-hover-background);color:var(--vehicle-garage-button-hover-foreground)}.vehicle-garage-theme [data-slot=button]:not([data-size^=icon]){padding-inline:calc(var(--vehicle-garage-padding,8px) * 1.5)}.vehicle-garage-theme [data-slot=input]{border-width:var(--vehicle-garage-input-border-width,1px);box-shadow:var(--vehicle-garage-input-shadow,none);padding-inline:calc(var(--vehicle-garage-padding,8px) * 1.25)}.garage-sheet-overlay{background-color:rgb(0 0 0/var(--vehicle-garage-overlay-opacity,.1));background-color:var(--vehicle-garage-overlay-background,var(--vehicle-garage-overlay-color,#000))}@supports (color:color-mix(in lab, red, red)){.garage-sheet-overlay{background-color:var(--vehicle-garage-overlay-background,color-mix(in srgb, var(--vehicle-garage-overlay-color,#000) calc(var(--vehicle-garage-overlay-opacity,.1) * 100%), transparent))}}.garage-sheet-overlay{opacity:1;-webkit-backdrop-filter:blur(var(--vehicle-garage-overlay-blur,4px));backdrop-filter:blur(var(--vehicle-garage-overlay-blur,4px))}.garage-sheet-overlay[data-state=open]{animation:.3s ease-out garage-sheet-overlay-in}.garage-sheet-overlay[data-state=closed]{animation:.26s ease-in garage-sheet-overlay-out}.garage-sheet-content{will-change:transform}.garage-sheet-content[data-side=right][data-state=open]{animation:.36s cubic-bezier(.16,1,.3,1) garage-sheet-in-right}.garage-sheet-content[data-side=right][data-state=closed]{animation:.3s cubic-bezier(.7,0,.84,0) garage-sheet-out-right}.garage-sheet-content[data-side=left][data-state=open]{animation:.36s cubic-bezier(.16,1,.3,1) garage-sheet-in-left}.garage-sheet-content[data-side=left][data-state=closed]{animation:.3s cubic-bezier(.7,0,.84,0) garage-sheet-out-left}.garage-sheet-content[data-side=top][data-state=open]{animation:.36s cubic-bezier(.16,1,.3,1) garage-sheet-in-top}.garage-sheet-content[data-side=top][data-state=closed]{animation:.3s cubic-bezier(.7,0,.84,0) garage-sheet-out-top}.garage-sheet-content[data-side=bottom][data-state=open]{animation:.36s cubic-bezier(.16,1,.3,1) garage-sheet-in-bottom}.garage-sheet-content[data-side=bottom][data-state=closed]{animation:.3s cubic-bezier(.7,0,.84,0) garage-sheet-out-bottom}@media (prefers-reduced-motion:reduce){.garage-sheet-overlay[data-state]{animation:none}.garage-sheet-content[data-state]{animation:none;transform:translate(0)}}}@layer utilities{.\\@container\\/field-group{container:field-group/inline-size}.pointer-events-auto{pointer-events:auto}.pointer-events-none{pointer-events:none}.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.inset-0{inset:0}.inset-x-3{inset-inline:12px}.inset-y-0{inset-block:0}.top-1\\/2{top:50%}.top-2{top:8px}.top-3{top:12px}.right-0{right:0}.right-2{right:8px}.right-3{right:12px}.bottom-3{bottom:12px}.z-10{z-index:10}.z-40{z-index:40}.z-50{z-index:50}.z-\\[60\\]{z-index:60}.z-\\[2147483646\\]{z-index:2147483646}.z-\\[2147483647\\]{z-index:2147483647}.container{width:100%}@media (width>=640px){.container{max-width:640px}}@media (width>=768px){.container{max-width:768px}}@media (width>=1024px){.container{max-width:1024px}}@media (width>=1280px){.container{max-width:1280px}}@media (width>=1536px){.container{max-width:1536px}}.-mx-1{margin-inline:-4px}.mx-3{margin-inline:12px}.mx-auto{margin-inline:auto}.-my-2{margin-block:-8px}.my-1{margin-block:4px}.mt-0{margin-top:0}.mt-0\\.5{margin-top:2px}.mt-1{margin-top:4px}.mt-auto{margin-top:auto}.mb-0{margin-bottom:0}.mb-1\\.5{margin-bottom:6px}.mb-2{margin-bottom:8px}.mb-3{margin-bottom:12px}.ml-2{margin-left:8px}.ml-4{margin-left:16px}.line-clamp-1{-webkit-line-clamp:1;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.line-clamp-2{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.block{display:block}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline-flex{display:inline-flex}.aspect-\\[4\\/5\\]{aspect-ratio:4/5}.size-3\\.5{width:14px;height:14px}.size-4{width:16px;height:16px}.size-6{width:24px;height:24px}.size-7{width:28px;height:28px}.size-8{width:32px;height:32px}.size-9{width:36px;height:36px}.size-\\[10px\\]{width:10px;height:10px}.size-full{width:100%;height:100%}.h-\\(--radix-accordion-content-height\\){height:var(--radix-accordion-content-height)}.h-3{height:12px}.h-3\\.5{height:14px}.h-4{height:16px}.h-5{height:20px}.h-7{height:28px}.h-8{height:32px}.h-9{height:36px}.h-10{height:40px}.h-11{height:44px}.h-\\[8px\\]{height:8px}.h-auto{height:auto}.h-full{height:100%}.h-px{height:1px}.max-h-\\(--radix-select-content-available-height\\){max-height:var(--radix-select-content-available-height)}.max-h-60{max-height:240px}.max-h-\\[70svh\\]{max-height:70svh}.min-h-0{min-height:0}.min-h-14{min-height:56px}.min-h-60{min-height:240px}.min-h-\\[calc\\(100\\%-1px\\)\\]{min-height:calc(100% - 1px)}.min-h-svh{min-height:100svh}.w-\\(--radix-popover-trigger-width\\){width:var(--radix-popover-trigger-width)}.w-9{width:36px}.w-14{width:56px}.w-20{width:80px}.w-24{width:96px}.w-28{width:112px}.w-\\[calc\\(100\\%-24px\\)\\]{width:calc(100% - 24px)}.w-auto{width:auto}.w-fit{width:fit-content}.w-full{width:100%}.max-w-7xl{max-width:1280px}.max-w-36{max-width:144px}.max-w-\\[48ch\\]{max-width:48ch}.max-w-sm{max-width:384px}.max-w-xl{max-width:576px}.min-w-0{min-width:0}.min-w-7{min-width:28px}.min-w-8{min-width:32px}.min-w-9{min-width:36px}.min-w-36{min-width:144px}.flex-1{flex:1}.shrink-0{flex-shrink:0}.grow{flex-grow:1}.origin-\\(--radix-select-content-transform-origin\\){transform-origin:var(--radix-select-content-transform-origin)}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.animate-spin{animation:var(--animate-spin)}.cursor-default{cursor:default}.cursor-pointer{cursor:pointer}.touch-none{touch-action:none}.resize{resize:both}.resize-none{resize:none}.scroll-my-1{scroll-margin-block:4px}.list-disc{list-style-type:disc}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.flex-col{flex-direction:column}.flex-row{flex-direction:row}.items-center{align-items:center}.items-start{align-items:flex-start}.items-stretch{align-items:stretch}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.justify-end{justify-content:flex-end}.gap-0{gap:0}.gap-0\\.5{gap:2px}.gap-1{gap:4px}.gap-1\\.5{gap:6px}.gap-2{gap:8px}.gap-2\\.5{gap:10px}.gap-3{gap:12px}.gap-4{gap:16px}.gap-5{gap:20px}.gap-8{gap:32px}.gap-\\[--spacing\\(var\\(--gap\\)\\)\\]{gap:calc(4px * var(--gap))}.overflow-auto{overflow:auto}.overflow-hidden{overflow:hidden}.overflow-x-hidden{overflow-x:hidden}.overflow-y-auto{overflow-y:auto}.rounded-4xl{border-radius:calc(var(--radius) * 2.6)}.rounded-\\[inherit\\]{border-radius:inherit}.rounded-\\[min\\(var\\(--radius-md\\)\\,10px\\)\\]{border-radius:min(var(--radius-md), 10px)}.rounded-\\[min\\(var\\(--radius-md\\)\\,12px\\)\\]{border-radius:min(var(--radius-md), 12px)}.rounded-full{border-radius:3.40282e38px}.rounded-lg{border-radius:var(--radius)}.rounded-md{border-radius:calc(var(--radius) * .8)}.rounded-none{border-radius:0}.rounded-xl{border-radius:calc(var(--radius) * 1.4)}.border{border-style:var(--tw-border-style);border-width:1px}.border-0{border-style:var(--tw-border-style);border-width:0}.border-t{border-top-style:var(--tw-border-style);border-top-width:1px}.border-b{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.border-b-0{border-bottom-style:var(--tw-border-style);border-bottom-width:0}.border-dashed{--tw-border-style:dashed;border-style:dashed}.border-border{border-color:var(--border)}.border-input{border-color:var(--input)}.border-primary{border-color:var(--primary)}.border-ring{border-color:var(--ring)}.border-transparent{border-color:#0000}.bg-accent{background-color:var(--accent)}.bg-background{background-color:var(--background)}.bg-border{background-color:var(--border)}.bg-card{background-color:var(--card)}.bg-destructive\\/10{background-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.bg-destructive\\/10{background-color:color-mix(in oklab, var(--destructive) 10%, transparent)}}.bg-muted,.bg-muted\\/20{background-color:var(--muted)}@supports (color:color-mix(in lab, red, red)){.bg-muted\\/20{background-color:color-mix(in oklab, var(--muted) 20%, transparent)}}.bg-muted\\/60{background-color:var(--muted)}@supports (color:color-mix(in lab, red, red)){.bg-muted\\/60{background-color:color-mix(in oklab, var(--muted) 60%, transparent)}}.bg-popover{background-color:var(--popover)}.bg-primary{background-color:var(--primary)}.bg-secondary{background-color:var(--secondary)}.bg-transparent{background-color:#0000}.bg-white{background-color:var(--color-white)}.bg-clip-padding{background-clip:padding-box}.object-contain{object-fit:contain}.p-0{padding:0}.p-1{padding:4px}.p-3{padding:12px}.p-4{padding:16px}.p-6{padding:24px}.p-\\[3px\\]{padding:3px}.p-px{padding:1px}.px-1\\.5{padding-inline:6px}.px-2{padding-inline:8px}.px-2\\.5{padding-inline:10px}.px-3{padding-inline:12px}.px-4{padding-inline:16px}.px-5{padding-inline:20px}.px-\\[8px\\]{padding-inline:8px}.py-0\\.5{padding-block:2px}.py-1{padding-block:4px}.py-1\\.5{padding-block:6px}.py-2{padding-block:8px}.py-2\\.5{padding-block:10px}.py-3{padding-block:12px}.py-4{padding-block:16px}.py-6{padding-block:24px}.py-\\[4px\\]{padding-block:4px}.pt-0{padding-top:0}.pt-1{padding-top:4px}.pt-4{padding-top:16px}.pr-1{padding-right:4px}.pr-1\\.5{padding-right:6px}.pr-2{padding-right:8px}.pr-8{padding-right:32px}.pr-16{padding-right:64px}.pb-2{padding-bottom:8px}.pb-2\\.5{padding-bottom:10px}.pb-4{padding-bottom:16px}.pl-1\\.5{padding-left:6px}.pl-2\\.5{padding-left:10px}.pl-3{padding-left:12px}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.font-heading{font-family:var(--font-sans)}.font-mono{font-family:var(--font-mono)}.text-base{font-size:16px;line-height:var(--tw-leading,24px)}.text-base\\/6{font-size:16px;line-height:24px}.text-lg{font-size:18px;line-height:var(--tw-leading,28px)}.text-sm{font-size:14px;line-height:var(--tw-leading,20px)}.text-sm\\/relaxed{font-size:14px;line-height:var(--leading-relaxed)}.text-xs{font-size:12px;line-height:var(--tw-leading,16px)}.text-\\[10px\\]{font-size:10px}.text-\\[13px\\]{font-size:13px}.leading-none{--tw-leading:1;line-height:1}.leading-normal{--tw-leading:var(--leading-normal);line-height:var(--leading-normal)}.leading-relaxed{--tw-leading:var(--leading-relaxed);line-height:var(--leading-relaxed)}.leading-snug{--tw-leading:var(--leading-snug);line-height:var(--leading-snug)}.leading-tight{--tw-leading:var(--leading-tight);line-height:var(--leading-tight)}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.font-normal{--tw-font-weight:var(--font-weight-normal);font-weight:var(--font-weight-normal)}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.tracking-\\[2\\.2px\\]{--tw-tracking:2.2px;letter-spacing:2.2px}.tracking-tight{--tw-tracking:-.4px;letter-spacing:-.4px}.text-balance{text-wrap:balance}.break-words{overflow-wrap:break-word}.whitespace-normal{white-space:normal}.whitespace-nowrap{white-space:nowrap}.text-accent-foreground{color:var(--accent-foreground)}.text-card-foreground{color:var(--card-foreground)}.text-current{color:currentColor}.text-destructive{color:var(--destructive)}.text-foreground,.text-foreground\\/60{color:var(--foreground)}@supports (color:color-mix(in lab, red, red)){.text-foreground\\/60{color:color-mix(in oklab, var(--foreground) 60%, transparent)}}.text-foreground\\/70{color:var(--foreground)}@supports (color:color-mix(in lab, red, red)){.text-foreground\\/70{color:color-mix(in oklab, var(--foreground) 70%, transparent)}}.text-muted-foreground{color:var(--muted-foreground)}.text-popover-foreground{color:var(--popover-foreground)}.text-primary{color:var(--primary)}.text-primary-foreground{color:var(--primary-foreground)}.text-secondary-foreground{color:var(--secondary-foreground)}.uppercase{text-transform:uppercase}.no-underline{text-decoration-line:none}.underline-offset-4{text-underline-offset:4px}.opacity-65{opacity:.65}.opacity-100{opacity:1}.shadow{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-lg{--tw-shadow:0 10px 15px -3px var(--tw-shadow-color,#0000001a), 0 4px 6px -4px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-md{--tw-shadow:0 4px 6px -1px var(--tw-shadow-color,#0000001a), 0 2px 4px -2px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-none{--tw-shadow:0 0 #0000;box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.ring-0{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(0px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.ring-1{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.ring-foreground\\/10{--tw-ring-color:var(--foreground)}@supports (color:color-mix(in lab, red, red)){.ring-foreground\\/10{--tw-ring-color:color-mix(in oklab, var(--foreground) 10%, transparent)}}.ring-ring\\/50{--tw-ring-color:var(--ring)}@supports (color:color-mix(in lab, red, red)){.ring-ring\\/50{--tw-ring-color:color-mix(in oklab, var(--ring) 50%, transparent)}}.outline-hidden{--tw-outline-style:none;outline-style:none}@media (forced-colors:active){.outline-hidden{outline-offset:2px;outline:2px solid #0000}}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.blur{--tw-blur:blur(8px);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.transition-\\[color\\,box-shadow\\]{transition-property:color,box-shadow;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-all{transition-property:all;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-colors{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-opacity{transition-property:opacity;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-transform{transition-property:transform,translate,scale,rotate;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.duration-100{--tw-duration:.1s;transition-duration:.1s}.outline-none{--tw-outline-style:none;outline-style:none}.select-none{-webkit-user-select:none;user-select:none}:is(.\\*\\:w-full>*){width:100%}.not-last\\:border-b:not(:last-child){border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.group-open\\:rotate-180:is(:where(.group):is([open],:popover-open,:open) *){rotate:180deg}.group-has-data-horizontal\\/field\\:text-balance:is(:where(.group\\/field):has([data-horizontal]) *){text-wrap:balance}.group-has-\\[\\>svg\\]\\/alert\\:col-start-2:is(:where(.group\\/alert):has(>svg) *){grid-column-start:2}.group-aria-expanded\\/accordion-trigger\\:hidden:is(:where(.group\\/accordion-trigger)[aria-expanded=true] *){display:none}.group-aria-expanded\\/accordion-trigger\\:inline:is(:where(.group\\/accordion-trigger)[aria-expanded=true] *){display:inline}.group-data-horizontal\\/tabs\\:min-h-\\[32px\\]:is(:where(.group\\/tabs)[data-horizontal] *){min-height:32px}.group-data-vertical\\/tabs\\:h-fit:is(:where(.group\\/tabs)[data-vertical] *){height:fit-content}.group-data-vertical\\/tabs\\:w-full:is(:where(.group\\/tabs)[data-vertical] *){width:100%}.group-data-vertical\\/tabs\\:flex-col:is(:where(.group\\/tabs)[data-vertical] *){flex-direction:column}.group-data-vertical\\/tabs\\:justify-start:is(:where(.group\\/tabs)[data-vertical] *){justify-content:flex-start}.group-data-\\[disabled\\=true\\]\\:pointer-events-none:is(:where(.group)[data-disabled=true] *){pointer-events:none}.group-data-\\[disabled\\=true\\]\\:opacity-50:is(:where(.group)[data-disabled=true] *),.group-data-\\[disabled\\=true\\]\\/field\\:opacity-50:is(:where(.group\\/field)[data-disabled=true] *){opacity:.5}.group-data-\\[size\\=default\\]\\/switch\\:size-\\[16px\\]:is(:where(.group\\/switch)[data-size=default] *){width:16px;height:16px}.group-data-\\[size\\=lg\\]\\/switch\\:size-\\[20px\\]:is(:where(.group\\/switch)[data-size=lg] *){width:20px;height:20px}.group-data-\\[size\\=sm\\]\\/switch\\:size-\\[12px\\]:is(:where(.group\\/switch)[data-size=sm] *){width:12px;height:12px}.group-data-\\[spacing\\=0\\]\\/toggle-group\\:rounded-none:is(:where(.group\\/toggle-group)[data-spacing=\"0\"] *){border-radius:0}.group-data-\\[spacing\\=0\\]\\/toggle-group\\:px-2:is(:where(.group\\/toggle-group)[data-spacing=\"0\"] *){padding-inline:8px}.group-data-\\[variant\\=line\\]\\/tabs-list\\:bg-transparent:is(:where(.group\\/tabs-list)[data-variant=line] *){background-color:#0000}.group-data-\\[variant\\=outline\\]\\/field-group\\:-mb-2:is(:where(.group\\/field-group)[data-variant=outline] *){margin-bottom:-8px}.peer-disabled\\:cursor-not-allowed:is(:where(.peer):disabled~*){cursor:not-allowed}.peer-disabled\\:opacity-50:is(:where(.peer):disabled~*){opacity:.5}.file\\:inline-flex::file-selector-button{display:inline-flex}.file\\:h-6::file-selector-button{height:24px}.file\\:border-0::file-selector-button{border-style:var(--tw-border-style);border-width:0}.file\\:bg-transparent::file-selector-button{background-color:#0000}.file\\:text-sm::file-selector-button{font-size:14px;line-height:var(--tw-leading,20px)}.file\\:font-medium::file-selector-button{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.file\\:text-foreground::file-selector-button{color:var(--foreground)}.placeholder\\:text-muted-foreground::placeholder,.placeholder\\:text-muted-foreground\\/70::placeholder{color:var(--muted-foreground)}@supports (color:color-mix(in lab, red, red)){.placeholder\\:text-muted-foreground\\/70::placeholder{color:color-mix(in oklab, var(--muted-foreground) 70%, transparent)}}.after\\:absolute:after{content:var(--tw-content);position:absolute}.after\\:-inset-\\[10px\\]:after{content:var(--tw-content);inset:-10px}.after\\:-inset-x-\\[12px\\]:after{content:var(--tw-content);inset-inline:-12px}.after\\:-inset-y-\\[8px\\]:after{content:var(--tw-content);inset-block:-8px}.after\\:bg-foreground:after{content:var(--tw-content);background-color:var(--foreground)}.after\\:opacity-0:after{content:var(--tw-content);opacity:0}.after\\:transition-opacity:after{content:var(--tw-content);transition-property:opacity;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.group-data-horizontal\\/tabs\\:after\\:inset-x-0:is(:where(.group\\/tabs)[data-horizontal] *):after{content:var(--tw-content);inset-inline:0}.group-data-horizontal\\/tabs\\:after\\:bottom-\\[-5px\\]:is(:where(.group\\/tabs)[data-horizontal] *):after{content:var(--tw-content);bottom:-5px}.group-data-horizontal\\/tabs\\:after\\:h-0\\.5:is(:where(.group\\/tabs)[data-horizontal] *):after{content:var(--tw-content);height:2px}.group-data-vertical\\/tabs\\:after\\:inset-y-0:is(:where(.group\\/tabs)[data-vertical] *):after{content:var(--tw-content);inset-block:0}.group-data-vertical\\/tabs\\:after\\:-right-1:is(:where(.group\\/tabs)[data-vertical] *):after{content:var(--tw-content);right:-4px}.group-data-vertical\\/tabs\\:after\\:w-0\\.5:is(:where(.group\\/tabs)[data-vertical] *):after{content:var(--tw-content);width:2px}.first\\:rounded-l-xl:first-child{border-top-left-radius:calc(var(--radius) * 1.4);border-bottom-left-radius:calc(var(--radius) * 1.4)}.first\\:border-t-0:first-child{border-top-style:var(--tw-border-style);border-top-width:0}.first\\:pt-0:first-child{padding-top:0}.last\\:mt-0:last-child{margin-top:0}.last\\:rounded-r-xl:last-child{border-top-right-radius:calc(var(--radius) * 1.4);border-bottom-right-radius:calc(var(--radius) * 1.4)}.focus-within\\:bg-accent:focus-within{background-color:var(--accent)}.focus-within\\:text-accent-foreground:focus-within{color:var(--accent-foreground)}@media (hover:hover){.hover\\:bg-accent:hover{background-color:var(--accent)}.hover\\:bg-destructive\\/10:hover{background-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.hover\\:bg-destructive\\/10:hover{background-color:color-mix(in oklab, var(--destructive) 10%, transparent)}}.hover\\:bg-destructive\\/20:hover{background-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.hover\\:bg-destructive\\/20:hover{background-color:color-mix(in oklab, var(--destructive) 20%, transparent)}}.hover\\:bg-muted:hover,.hover\\:bg-muted\\/50:hover{background-color:var(--muted)}@supports (color:color-mix(in lab, red, red)){.hover\\:bg-muted\\/50:hover{background-color:color-mix(in oklab, var(--muted) 50%, transparent)}}.hover\\:bg-secondary\\/80:hover{background-color:var(--secondary)}@supports (color:color-mix(in lab, red, red)){.hover\\:bg-secondary\\/80:hover{background-color:color-mix(in oklab, var(--secondary) 80%, transparent)}}.hover\\:text-accent-foreground:hover{color:var(--accent-foreground)}.hover\\:text-destructive:hover{color:var(--destructive)}.hover\\:text-foreground:hover{color:var(--foreground)}.hover\\:text-muted-foreground:hover{color:var(--muted-foreground)}.hover\\:no-underline:hover{text-decoration-line:none}.hover\\:underline:hover{text-decoration-line:underline}.hover\\:opacity-100:hover{opacity:1}.hover\\:ring-3:hover{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}}.focus\\:z-10:focus{z-index:10}.focus\\:bg-accent:focus{background-color:var(--accent)}.focus\\:text-accent-foreground:focus,:is(.not-data-\\[variant\\=destructive\\]\\:focus\\:\\*\\*\\:text-accent-foreground:not([data-variant=destructive]):focus *){color:var(--accent-foreground)}.focus-visible\\:z-10:focus-visible{z-index:10}.focus-visible\\:border-destructive\\/40:focus-visible{border-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.focus-visible\\:border-destructive\\/40:focus-visible{border-color:color-mix(in oklab, var(--destructive) 40%, transparent)}}.focus-visible\\:border-input:focus-visible{border-color:var(--input)}.focus-visible\\:border-ring:focus-visible{border-color:var(--ring)}.focus-visible\\:opacity-100:focus-visible{opacity:1}.focus-visible\\:ring-0:focus-visible{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(0px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.focus-visible\\:ring-2:focus-visible{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.focus-visible\\:ring-3:focus-visible,.focus-visible\\:ring-\\[3px\\]:focus-visible{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.focus-visible\\:ring-destructive\\/20:focus-visible{--tw-ring-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.focus-visible\\:ring-destructive\\/20:focus-visible{--tw-ring-color:color-mix(in oklab, var(--destructive) 20%, transparent)}}.focus-visible\\:ring-ring:focus-visible,.focus-visible\\:ring-ring\\/50:focus-visible{--tw-ring-color:var(--ring)}@supports (color:color-mix(in lab, red, red)){.focus-visible\\:ring-ring\\/50:focus-visible{--tw-ring-color:color-mix(in oklab, var(--ring) 50%, transparent)}}.focus-visible\\:ring-offset-0:focus-visible{--tw-ring-offset-width:0px;--tw-ring-offset-shadow:var(--tw-ring-inset,) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color)}.focus-visible\\:ring-offset-2:focus-visible{--tw-ring-offset-width:2px;--tw-ring-offset-shadow:var(--tw-ring-inset,) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color)}.focus-visible\\:outline-hidden:focus-visible{--tw-outline-style:none;outline-style:none}@media (forced-colors:active){.focus-visible\\:outline-hidden:focus-visible{outline-offset:2px;outline:2px solid #0000}}.focus-visible\\:outline-1:focus-visible{outline-style:var(--tw-outline-style);outline-width:1px}.focus-visible\\:outline-ring:focus-visible{outline-color:var(--ring)}.focus-visible\\:outline-none:focus-visible{--tw-outline-style:none;outline-style:none}.focus-visible\\:after\\:border-ring:focus-visible:after{content:var(--tw-content);border-color:var(--ring)}.active\\:ring-3:active{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.active\\:not-aria-\\[haspopup\\]\\:translate-y-px:active:not([aria-haspopup]){--tw-translate-y:1px;translate:var(--tw-translate-x) var(--tw-translate-y)}.disabled\\:pointer-events-none:disabled{pointer-events:none}.disabled\\:cursor-default:disabled{cursor:default}.disabled\\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\\:bg-input\\/50:disabled{background-color:var(--input)}@supports (color:color-mix(in lab, red, red)){.disabled\\:bg-input\\/50:disabled{background-color:color-mix(in oklab, var(--input) 50%, transparent)}}.disabled\\:opacity-50:disabled{opacity:.5}.disabled\\:opacity-100:disabled{opacity:1}:where([data-slot=button-group]) .in-data-\\[slot\\=button-group\\]\\:rounded-lg{border-radius:var(--radius)}.has-data-checked\\:border-primary\\/30:has([data-checked]){border-color:var(--primary)}@supports (color:color-mix(in lab, red, red)){.has-data-checked\\:border-primary\\/30:has([data-checked]){border-color:color-mix(in oklab, var(--primary) 30%, transparent)}}.has-data-checked\\:bg-primary\\/5:has([data-checked]){background-color:var(--primary)}@supports (color:color-mix(in lab, red, red)){.has-data-checked\\:bg-primary\\/5:has([data-checked]){background-color:color-mix(in oklab, var(--primary) 5%, transparent)}}.has-data-\\[icon\\=inline-end\\]\\:pr-1:has([data-icon=inline-end]){padding-right:4px}.has-data-\\[icon\\=inline-end\\]\\:pr-1\\.5:has([data-icon=inline-end]){padding-right:6px}.has-data-\\[icon\\=inline-end\\]\\:pr-2:has([data-icon=inline-end]){padding-right:8px}.has-data-\\[icon\\=inline-end\\]\\:pr-2\\.5:has([data-icon=inline-end]){padding-right:10px}.group-data-\\[spacing\\=0\\]\\/toggle-group\\:has-data-\\[icon\\=inline-end\\]\\:pr-1\\.5:is(:where(.group\\/toggle-group)[data-spacing=\"0\"] *):has([data-icon=inline-end]){padding-right:6px}.has-data-\\[icon\\=inline-start\\]\\:pl-1:has([data-icon=inline-start]){padding-left:4px}.has-data-\\[icon\\=inline-start\\]\\:pl-1\\.5:has([data-icon=inline-start]){padding-left:6px}.has-data-\\[icon\\=inline-start\\]\\:pl-2:has([data-icon=inline-start]){padding-left:8px}.has-data-\\[icon\\=inline-start\\]\\:pl-2\\.5:has([data-icon=inline-start]){padding-left:10px}.group-data-\\[spacing\\=0\\]\\/toggle-group\\:has-data-\\[icon\\=inline-start\\]\\:pl-1\\.5:is(:where(.group\\/toggle-group)[data-spacing=\"0\"] *):has([data-icon=inline-start]){padding-left:6px}.has-data-\\[slot\\=alert-action\\]\\:relative:has([data-slot=alert-action]){position:relative}.has-data-\\[slot\\=alert-action\\]\\:pr-18:has([data-slot=alert-action]){padding-right:72px}.has-\\[\\>\\[data-slot\\=checkbox-group\\]\\]\\:gap-3:has(>[data-slot=checkbox-group]){gap:12px}.has-\\[\\>\\[data-slot\\=field-content\\]\\]\\:items-start:has(>[data-slot=field-content]){align-items:flex-start}.has-\\[\\>\\[data-slot\\=field\\]\\]\\:w-full:has(>[data-slot=field]){width:100%}.has-\\[\\>\\[data-slot\\=field\\]\\]\\:flex-col:has(>[data-slot=field]){flex-direction:column}.has-\\[\\>\\[data-slot\\=field\\]\\]\\:rounded-lg:has(>[data-slot=field]){border-radius:var(--radius)}.has-\\[\\>\\[data-slot\\=field\\]\\]\\:border:has(>[data-slot=field]){border-style:var(--tw-border-style);border-width:1px}.has-\\[\\>\\[data-slot\\=radio-group\\]\\]\\:gap-3:has(>[data-slot=radio-group]){gap:12px}.has-\\[\\>svg\\]\\:grid-cols-\\[auto_1fr\\]:has(>svg){grid-template-columns:auto 1fr}.has-\\[\\>svg\\]\\:gap-x-2:has(>svg){column-gap:8px}.aria-expanded\\:bg-muted[aria-expanded=true]{background-color:var(--muted)}.aria-expanded\\:bg-secondary[aria-expanded=true]{background-color:var(--secondary)}.aria-expanded\\:text-foreground[aria-expanded=true]{color:var(--foreground)}.aria-expanded\\:text-secondary-foreground[aria-expanded=true]{color:var(--secondary-foreground)}.aria-invalid\\:border-destructive[aria-invalid=true]{border-color:var(--destructive)}.aria-invalid\\:ring-3[aria-invalid=true]{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.aria-invalid\\:ring-destructive\\/20[aria-invalid=true]{--tw-ring-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.aria-invalid\\:ring-destructive\\/20[aria-invalid=true]{--tw-ring-color:color-mix(in oklab, var(--destructive) 20%, transparent)}}.aria-pressed\\:bg-muted[aria-pressed=true]{background-color:var(--muted)}.data-closed\\:animate-accordion-up[data-closed]{animation:accordion-up var(--tw-animation-duration,var(--tw-duration,.2s))var(--tw-ease,ease-out)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,none)}.data-disabled\\:pointer-events-none[data-disabled]{pointer-events:none}.data-disabled\\:cursor-not-allowed[data-disabled]{cursor:not-allowed}.data-disabled\\:opacity-50[data-disabled]{opacity:.5}.data-horizontal\\:h-2\\.5[data-horizontal]{height:10px}.data-horizontal\\:h-px[data-horizontal]{height:1px}.data-horizontal\\:w-full[data-horizontal]{width:100%}.data-horizontal\\:flex-col[data-horizontal]{flex-direction:column}.data-horizontal\\:border-t[data-horizontal]{border-top-style:var(--tw-border-style);border-top-width:1px}.data-horizontal\\:border-t-transparent[data-horizontal]{border-top-color:#0000}.data-open\\:animate-accordion-down[data-open]{animation:accordion-down var(--tw-animation-duration,var(--tw-duration,.2s))var(--tw-ease,ease-out)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,none)}.data-placeholder\\:text-muted-foreground[data-placeholder]{color:var(--muted-foreground)}.data-vertical\\:h-full[data-vertical]{height:100%}.data-vertical\\:w-2\\.5[data-vertical]{width:10px}.data-vertical\\:w-px[data-vertical]{width:1px}.data-vertical\\:flex-col[data-vertical]{flex-direction:column}.data-vertical\\:items-stretch[data-vertical]{align-items:stretch}.data-vertical\\:self-stretch[data-vertical]{align-self:stretch}.data-vertical\\:border-l[data-vertical]{border-left-style:var(--tw-border-style);border-left-width:1px}.data-vertical\\:border-l-transparent[data-vertical]{border-left-color:#0000}.data-\\[align-trigger\\=true\\]\\:animate-none[data-align-trigger=true]{animation:none}.data-\\[invalid\\=true\\]\\:text-destructive[data-invalid=true]{color:var(--destructive)}.data-\\[orientation\\=vertical\\]\\:h-auto[data-orientation=vertical]{height:auto}.data-\\[orientation\\=vertical\\]\\:h-full[data-orientation=vertical]{height:100%}.data-\\[orientation\\=vertical\\]\\:min-h-\\[160px\\][data-orientation=vertical]{min-height:160px}.data-\\[orientation\\=vertical\\]\\:w-\\[8px\\][data-orientation=vertical]{width:8px}.data-\\[orientation\\=vertical\\]\\:w-auto[data-orientation=vertical]{width:auto}.data-\\[orientation\\=vertical\\]\\:w-full[data-orientation=vertical]{width:100%}.data-\\[orientation\\=vertical\\]\\:flex-col[data-orientation=vertical]{flex-direction:column}.data-\\[orientation\\=vertical\\]\\:px-\\[4px\\][data-orientation=vertical]{padding-inline:4px}.data-\\[orientation\\=vertical\\]\\:py-\\[8px\\][data-orientation=vertical]{padding-block:8px}.data-\\[position\\=popper\\]\\:h-\\(--radix-select-trigger-height\\)[data-position=popper]{height:var(--radix-select-trigger-height)}.data-\\[position\\=popper\\]\\:w-full[data-position=popper]{width:100%}.data-\\[position\\=popper\\]\\:min-w-\\(--radix-select-trigger-width\\)[data-position=popper]{min-width:var(--radix-select-trigger-width)}.data-\\[side\\=bottom\\]\\:inset-x-0[data-side=bottom]{inset-inline:0}.data-\\[side\\=bottom\\]\\:bottom-0[data-side=bottom]{bottom:0}.data-\\[side\\=bottom\\]\\:h-auto[data-side=bottom]{height:auto}.data-\\[side\\=bottom\\]\\:translate-y-1[data-side=bottom]{--tw-translate-y:calc(4px * 1);translate:var(--tw-translate-x) var(--tw-translate-y)}.data-\\[side\\=bottom\\]\\:slide-in-from-top-2[data-side=bottom]{--tw-enter-translate-y:calc(2*var(--spacing)*-1)}.data-\\[side\\=left\\]\\:inset-y-0[data-side=left]{inset-block:0}.data-\\[side\\=left\\]\\:left-0[data-side=left]{left:0}.data-\\[side\\=left\\]\\:h-full[data-side=left]{height:100%}.data-\\[side\\=left\\]\\:w-full[data-side=left]{width:100%}.data-\\[side\\=left\\]\\:-translate-x-1[data-side=left]{--tw-translate-x:calc(4px * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}.data-\\[side\\=left\\]\\:slide-in-from-right-2[data-side=left]{--tw-enter-translate-x:calc(2*var(--spacing))}.data-\\[side\\=right\\]\\:inset-y-0[data-side=right]{inset-block:0}.data-\\[side\\=right\\]\\:right-0[data-side=right]{right:0}.data-\\[side\\=right\\]\\:h-full[data-side=right]{height:100%}.data-\\[side\\=right\\]\\:w-full[data-side=right]{width:100%}.data-\\[side\\=right\\]\\:translate-x-1[data-side=right]{--tw-translate-x:calc(4px * 1);translate:var(--tw-translate-x) var(--tw-translate-y)}.data-\\[side\\=right\\]\\:slide-in-from-left-2[data-side=right]{--tw-enter-translate-x:calc(2*var(--spacing)*-1)}.data-\\[side\\=top\\]\\:inset-x-0[data-side=top]{inset-inline:0}.data-\\[side\\=top\\]\\:top-0[data-side=top]{top:0}.data-\\[side\\=top\\]\\:h-auto[data-side=top]{height:auto}.data-\\[side\\=top\\]\\:-translate-y-1[data-side=top]{--tw-translate-y:calc(4px * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}.data-\\[side\\=top\\]\\:slide-in-from-bottom-2[data-side=top]{--tw-enter-translate-y:calc(2*var(--spacing))}.data-\\[size\\=default\\]\\:h-8[data-size=default]{height:32px}.data-\\[size\\=default\\]\\:h-\\[18\\.4px\\][data-size=default]{height:18.4px}.data-\\[size\\=default\\]\\:w-\\[32px\\][data-size=default]{width:32px}.data-\\[size\\=lg\\]\\:h-\\[24px\\][data-size=lg]{height:24px}.data-\\[size\\=lg\\]\\:w-\\[40px\\][data-size=lg]{width:40px}.data-\\[size\\=sm\\]\\:h-7[data-size=sm]{height:28px}.data-\\[size\\=sm\\]\\:h-\\[14px\\][data-size=sm]{height:14px}.data-\\[size\\=sm\\]\\:w-\\[24px\\][data-size=sm]{width:24px}.data-\\[size\\=sm\\]\\:rounded-\\[min\\(var\\(--radius-md\\)\\,10px\\)\\][data-size=sm]{border-radius:min(var(--radius-md), 10px)}:is(.\\*\\*\\:data-\\[slot\\=accordion-trigger-icon\\]\\:ml-auto *)[data-slot=accordion-trigger-icon]{margin-left:auto}:is(.\\*\\*\\:data-\\[slot\\=accordion-trigger-icon\\]\\:size-4 *)[data-slot=accordion-trigger-icon]{width:16px;height:16px}:is(.\\*\\*\\:data-\\[slot\\=accordion-trigger-icon\\]\\:text-muted-foreground *)[data-slot=accordion-trigger-icon]{color:var(--muted-foreground)}:is(.\\*\\:data-\\[slot\\=alert-description\\]\\:text-destructive\\/90>*)[data-slot=alert-description]{color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){:is(.\\*\\:data-\\[slot\\=alert-description\\]\\:text-destructive\\/90>*)[data-slot=alert-description]{color:color-mix(in oklab, var(--destructive) 90%, transparent)}}.data-\\[slot\\=checkbox-group\\]\\:gap-3[data-slot=checkbox-group]{gap:12px}:is(.\\*\\:data-\\[slot\\=field\\]\\:p-2\\.5>*)[data-slot=field]{padding:10px}:is(.\\*\\:data-\\[slot\\=field-group\\]\\:gap-4>*)[data-slot=field-group]{gap:16px}:is(.\\*\\:data-\\[slot\\=field-label\\]\\:flex-auto>*)[data-slot=field-label]{flex:auto}:is(.\\*\\:data-\\[slot\\=select-value\\]\\:line-clamp-1>*)[data-slot=select-value]{-webkit-line-clamp:1;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}:is(.\\*\\:data-\\[slot\\=select-value\\]\\:flex>*)[data-slot=select-value]{display:flex}:is(.\\*\\:data-\\[slot\\=select-value\\]\\:items-center>*)[data-slot=select-value]{align-items:center}:is(.\\*\\:data-\\[slot\\=select-value\\]\\:gap-1\\.5>*)[data-slot=select-value]{gap:6px}.group-data-horizontal\\/toggle-group\\:data-\\[spacing\\=0\\]\\:first\\:rounded-l-lg:is(:where(.group\\/toggle-group)[data-horizontal] *)[data-spacing=\"0\"]:first-child{border-top-left-radius:var(--radius);border-bottom-left-radius:var(--radius)}.group-data-vertical\\/toggle-group\\:data-\\[spacing\\=0\\]\\:first\\:rounded-t-lg:is(:where(.group\\/toggle-group)[data-vertical] *)[data-spacing=\"0\"]:first-child{border-top-left-radius:var(--radius);border-top-right-radius:var(--radius)}.group-data-horizontal\\/toggle-group\\:data-\\[spacing\\=0\\]\\:last\\:rounded-r-lg:is(:where(.group\\/toggle-group)[data-horizontal] *)[data-spacing=\"0\"]:last-child{border-top-right-radius:var(--radius);border-bottom-right-radius:var(--radius)}.group-data-vertical\\/toggle-group\\:data-\\[spacing\\=0\\]\\:last\\:rounded-b-lg:is(:where(.group\\/toggle-group)[data-vertical] *)[data-spacing=\"0\"]:last-child{border-bottom-right-radius:var(--radius);border-bottom-left-radius:var(--radius)}.data-\\[state\\=active\\]\\:bg-background[data-state=active]{background-color:var(--background)}.data-\\[state\\=active\\]\\:text-foreground[data-state=active]{color:var(--foreground)}.group-data-\\[variant\\=default\\]\\/tabs-list\\:data-\\[state\\=active\\]\\:shadow-sm:is(:where(.group\\/tabs-list)[data-variant=default] *)[data-state=active]{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.group-data-\\[variant\\=line\\]\\/tabs-list\\:data-\\[state\\=active\\]\\:bg-transparent:is(:where(.group\\/tabs-list)[data-variant=line] *)[data-state=active]{background-color:#0000}.group-data-\\[variant\\=line\\]\\/tabs-list\\:data-\\[state\\=active\\]\\:shadow-none:is(:where(.group\\/tabs-list)[data-variant=line] *)[data-state=active]{--tw-shadow:0 0 #0000;box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.group-data-\\[variant\\=line\\]\\/tabs-list\\:data-\\[state\\=active\\]\\:after\\:opacity-100:is(:where(.group\\/tabs-list)[data-variant=line] *)[data-state=active]:after{content:var(--tw-content);opacity:1}.data-\\[state\\=checked\\]\\:translate-x-\\[calc\\(100\\%-2px\\)\\][data-state=checked]{--tw-translate-x:calc(100% - 2px);translate:var(--tw-translate-x) var(--tw-translate-y)}.data-\\[state\\=checked\\]\\:border-primary[data-state=checked]{border-color:var(--primary)}.data-\\[state\\=checked\\]\\:bg-primary[data-state=checked]{background-color:var(--primary)}.data-\\[state\\=closed\\]\\:animate-out[data-state=closed]{animation:exit var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,none)}.data-\\[state\\=closed\\]\\:fade-out-0[data-state=closed]{--tw-exit-opacity:0}.data-\\[state\\=closed\\]\\:zoom-out-95[data-state=closed]{--tw-exit-scale:.95}.data-\\[state\\=on\\]\\:bg-muted[data-state=on]{background-color:var(--muted)}.data-\\[state\\=on\\]\\:bg-primary[data-state=on]{background-color:var(--primary)}.data-\\[state\\=on\\]\\:text-primary-foreground[data-state=on]{color:var(--primary-foreground)}.data-\\[state\\=open\\]\\:animate-in[data-state=open]{animation:enter var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,none)}.data-\\[state\\=open\\]\\:fade-in-0[data-state=open]{--tw-enter-opacity:0}.data-\\[state\\=open\\]\\:zoom-in-95[data-state=open]{--tw-enter-scale:.95}.data-\\[state\\=unchecked\\]\\:translate-x-0[data-state=unchecked]{--tw-translate-x:calc(4px * 0);translate:var(--tw-translate-x) var(--tw-translate-y)}.data-\\[state\\=unchecked\\]\\:bg-input[data-state=unchecked]{background-color:var(--input)}.data-\\[state\\=unchecked\\]\\:bg-muted[data-state=unchecked]{background-color:var(--muted)}.data-\\[variant\\=label\\]\\:text-sm[data-variant=label]{font-size:14px;line-height:var(--tw-leading,20px)}.data-\\[variant\\=legend\\]\\:text-base[data-variant=legend]{font-size:16px;line-height:var(--tw-leading,24px)}.data-\\[variant\\=line\\]\\:rounded-none[data-variant=line]{border-radius:0}.group-data-horizontal\\/toggle-group\\:data-\\[spacing\\=0\\]\\:data-\\[variant\\=outline\\]\\:border-l-0:is(:where(.group\\/toggle-group)[data-horizontal] *)[data-spacing=\"0\"][data-variant=outline]{border-left-style:var(--tw-border-style);border-left-width:0}.group-data-vertical\\/toggle-group\\:data-\\[spacing\\=0\\]\\:data-\\[variant\\=outline\\]\\:border-t-0:is(:where(.group\\/toggle-group)[data-vertical] *)[data-spacing=\"0\"][data-variant=outline]{border-top-style:var(--tw-border-style);border-top-width:0}.group-data-horizontal\\/toggle-group\\:data-\\[spacing\\=0\\]\\:data-\\[variant\\=outline\\]\\:first\\:border-l:is(:where(.group\\/toggle-group)[data-horizontal] *)[data-spacing=\"0\"][data-variant=outline]:first-child{border-left-style:var(--tw-border-style);border-left-width:1px}.group-data-vertical\\/toggle-group\\:data-\\[spacing\\=0\\]\\:data-\\[variant\\=outline\\]\\:first\\:border-t:is(:where(.group\\/toggle-group)[data-vertical] *)[data-spacing=\"0\"][data-variant=outline]:first-child{border-top-style:var(--tw-border-style);border-top-width:1px}.nth-last-2\\:-mt-1:nth-last-child(2){margin-top:-4px}@media (width>=640px){.sm\\:block{display:block}.sm\\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.sm\\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.sm\\:flex-row{flex-direction:row}.sm\\:items-center{align-items:center}.sm\\:justify-between{justify-content:space-between}.sm\\:px-6{padding-inline:24px}.sm\\:text-sm\\/6{font-size:14px;line-height:24px}.data-\\[side\\=left\\]\\:sm\\:max-w-md[data-side=left],.data-\\[side\\=right\\]\\:sm\\:max-w-md[data-side=right]{max-width:448px}}@media (width>=768px){.md\\:text-sm{font-size:14px;line-height:var(--tw-leading,20px)}.md\\:text-pretty{text-wrap:pretty}}@media (width>=1024px){.lg\\:inset-x-auto{inset-inline:auto}.lg\\:top-4{top:16px}.lg\\:right-\\[calc\\(448px\\+16px\\)\\]{right:464px}.lg\\:bottom-auto{bottom:auto}.lg\\:max-h-\\[calc\\(100svh-32px\\)\\]{max-height:calc(100svh - 32px)}.lg\\:w-\\[480px\\]{width:480px}.lg\\:px-8{padding-inline:32px}}@media (width>=1280px){.xl\\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}}@container field-group (width>=448px){.\\@md\\/field-group\\:flex-row{flex-direction:row}.\\@md\\/field-group\\:items-center{align-items:center}:is(.\\@md\\/field-group\\:\\*\\:w-auto>*){width:auto}.\\@md\\/field-group\\:has-\\[\\>\\[data-slot\\=field-content\\]\\]\\:items-start:has(>[data-slot=field-content]){align-items:flex-start}:is(.\\@md\\/field-group\\:\\*\\:data-\\[slot\\=field-label\\]\\:flex-auto>*)[data-slot=field-label]{flex:auto}}.dark\\:border-input:is(.dark *){border-color:var(--input)}.dark\\:bg-destructive\\/20:is(.dark *){background-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.dark\\:bg-destructive\\/20:is(.dark *){background-color:color-mix(in oklab, var(--destructive) 20%, transparent)}}.dark\\:bg-input\\/30:is(.dark *){background-color:var(--input)}@supports (color:color-mix(in lab, red, red)){.dark\\:bg-input\\/30:is(.dark *){background-color:color-mix(in oklab, var(--input) 30%, transparent)}}.dark\\:text-muted-foreground:is(.dark *){color:var(--muted-foreground)}@media (hover:hover){.dark\\:hover\\:bg-destructive\\/30:is(.dark *):hover{background-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.dark\\:hover\\:bg-destructive\\/30:is(.dark *):hover{background-color:color-mix(in oklab, var(--destructive) 30%, transparent)}}.dark\\:hover\\:bg-input\\/50:is(.dark *):hover{background-color:var(--input)}@supports (color:color-mix(in lab, red, red)){.dark\\:hover\\:bg-input\\/50:is(.dark *):hover{background-color:color-mix(in oklab, var(--input) 50%, transparent)}}.dark\\:hover\\:bg-muted\\/50:is(.dark *):hover{background-color:var(--muted)}@supports (color:color-mix(in lab, red, red)){.dark\\:hover\\:bg-muted\\/50:is(.dark *):hover{background-color:color-mix(in oklab, var(--muted) 50%, transparent)}}.dark\\:hover\\:text-foreground:is(.dark *):hover{color:var(--foreground)}}.dark\\:focus-visible\\:ring-destructive\\/40:is(.dark *):focus-visible{--tw-ring-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.dark\\:focus-visible\\:ring-destructive\\/40:is(.dark *):focus-visible{--tw-ring-color:color-mix(in oklab, var(--destructive) 40%, transparent)}}.dark\\:disabled\\:bg-input\\/80:is(.dark *):disabled{background-color:var(--input)}@supports (color:color-mix(in lab, red, red)){.dark\\:disabled\\:bg-input\\/80:is(.dark *):disabled{background-color:color-mix(in oklab, var(--input) 80%, transparent)}}.dark\\:has-data-checked\\:border-primary\\/20:is(.dark *):has([data-checked]){border-color:var(--primary)}@supports (color:color-mix(in lab, red, red)){.dark\\:has-data-checked\\:border-primary\\/20:is(.dark *):has([data-checked]){border-color:color-mix(in oklab, var(--primary) 20%, transparent)}}.dark\\:has-data-checked\\:bg-primary\\/10:is(.dark *):has([data-checked]){background-color:var(--primary)}@supports (color:color-mix(in lab, red, red)){.dark\\:has-data-checked\\:bg-primary\\/10:is(.dark *):has([data-checked]){background-color:color-mix(in oklab, var(--primary) 10%, transparent)}}.dark\\:aria-invalid\\:border-destructive\\/50:is(.dark *)[aria-invalid=true]{border-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.dark\\:aria-invalid\\:border-destructive\\/50:is(.dark *)[aria-invalid=true]{border-color:color-mix(in oklab, var(--destructive) 50%, transparent)}}.dark\\:aria-invalid\\:ring-destructive\\/40:is(.dark *)[aria-invalid=true]{--tw-ring-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.dark\\:aria-invalid\\:ring-destructive\\/40:is(.dark *)[aria-invalid=true]{--tw-ring-color:color-mix(in oklab, var(--destructive) 40%, transparent)}}.dark\\:data-\\[state\\=active\\]\\:border-input:is(.dark *)[data-state=active]{border-color:var(--input)}.dark\\:data-\\[state\\=active\\]\\:bg-input\\/30:is(.dark *)[data-state=active]{background-color:var(--input)}@supports (color:color-mix(in lab, red, red)){.dark\\:data-\\[state\\=active\\]\\:bg-input\\/30:is(.dark *)[data-state=active]{background-color:color-mix(in oklab, var(--input) 30%, transparent)}}.dark\\:data-\\[state\\=active\\]\\:text-foreground:is(.dark *)[data-state=active]{color:var(--foreground)}.dark\\:group-data-\\[variant\\=line\\]\\/tabs-list\\:data-\\[state\\=active\\]\\:border-transparent:is(.dark *):is(:where(.group\\/tabs-list)[data-variant=line] *)[data-state=active]{border-color:#0000}.dark\\:group-data-\\[variant\\=line\\]\\/tabs-list\\:data-\\[state\\=active\\]\\:bg-transparent:is(.dark *):is(:where(.group\\/tabs-list)[data-variant=line] *)[data-state=active]{background-color:#0000}.dark\\:data-\\[state\\=checked\\]\\:bg-primary-foreground:is(.dark *)[data-state=checked]{background-color:var(--primary-foreground)}.dark\\:data-\\[state\\=unchecked\\]\\:bg-foreground:is(.dark *)[data-state=unchecked]{background-color:var(--foreground)}.dark\\:data-\\[state\\=unchecked\\]\\:bg-input\\/80:is(.dark *)[data-state=unchecked]{background-color:var(--input)}@supports (color:color-mix(in lab, red, red)){.dark\\:data-\\[state\\=unchecked\\]\\:bg-input\\/80:is(.dark *)[data-state=unchecked]{background-color:color-mix(in oklab, var(--input) 80%, transparent)}}.\\[\\&_a\\]\\:underline a{text-decoration-line:underline}.\\[\\&_a\\]\\:underline-offset-3 a{text-underline-offset:3px}.\\[\\&_a\\]\\:underline-offset-4 a{text-underline-offset:4px}@media (hover:hover){.\\[\\&_a\\]\\:hover\\:text-foreground a:hover{color:var(--foreground)}}.\\[\\&_p\\:not\\(\\:last-child\\)\\]\\:mb-4 p:not(:last-child){margin-bottom:16px}.\\[\\&_svg\\]\\:pointer-events-none svg{pointer-events:none}.\\[\\&_svg\\]\\:shrink-0 svg{flex-shrink:0}.\\[\\&_svg\\:not\\(\\[class\\*\\=\\'size-\\'\\]\\)\\]\\:size-3 svg:not([class*=size-]){width:12px;height:12px}.\\[\\&_svg\\:not\\(\\[class\\*\\=\\'size-\\'\\]\\)\\]\\:size-3\\.5 svg:not([class*=size-]){width:14px;height:14px}.\\[\\&_svg\\:not\\(\\[class\\*\\=\\'size-\\'\\]\\)\\]\\:size-4 svg:not([class*=size-]){width:16px;height:16px}@media (hover:hover){.\\[a\\]\\:hover\\:bg-destructive\\/20:is(a):hover{background-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.\\[a\\]\\:hover\\:bg-destructive\\/20:is(a):hover{background-color:color-mix(in oklab, var(--destructive) 20%, transparent)}}.\\[a\\]\\:hover\\:bg-muted:is(a):hover{background-color:var(--muted)}.\\[a\\]\\:hover\\:bg-primary\\/80:is(a):hover{background-color:var(--primary)}@supports (color:color-mix(in lab, red, red)){.\\[a\\]\\:hover\\:bg-primary\\/80:is(a):hover{background-color:color-mix(in oklab, var(--primary) 80%, transparent)}}.\\[a\\]\\:hover\\:bg-secondary\\/80:is(a):hover{background-color:var(--secondary)}@supports (color:color-mix(in lab, red, red)){.\\[a\\]\\:hover\\:bg-secondary\\/80:is(a):hover{background-color:color-mix(in oklab, var(--secondary) 80%, transparent)}}.\\[a\\]\\:hover\\:text-muted-foreground:is(a):hover{color:var(--muted-foreground)}}:is(.\\*\\:\\[span\\]\\:last\\:flex>*):is(span):last-child{display:flex}:is(.\\*\\:\\[span\\]\\:last\\:items-center>*):is(span):last-child{align-items:center}:is(.\\*\\:\\[span\\]\\:last\\:gap-2>*):is(span):last-child{gap:8px}:is(.\\*\\:\\[svg\\]\\:row-span-2>*):is(svg){grid-row:span 2/span 2}:is(.\\*\\:\\[svg\\]\\:translate-y-0\\.5>*):is(svg){--tw-translate-y:calc(4px * .5);translate:var(--tw-translate-x) var(--tw-translate-y)}:is(.\\*\\:\\[svg\\]\\:text-current>*):is(svg){color:currentColor}:is(.\\*\\:\\[svg\\:not\\(\\[class\\*\\=\\'size-\\'\\]\\)\\]\\:size-4>*):is(svg:not([class*=size-])){width:16px;height:16px}.\\[\\&\\>\\.sr-only\\]\\:w-auto>.sr-only{width:auto}:is(.has-\\[\\>\\[data-slot\\=field-content\\]\\]\\:\\[\\&\\>\\[role\\=checkbox\\]\\,\\[role\\=radio\\]\\]\\:mt-px:has(>[data-slot=field-content])>[role=checkbox],.has-\\[\\>\\[data-slot\\=field-content\\]\\]\\:\\[\\&\\>\\[role\\=checkbox\\]\\,\\[role\\=radio\\]\\]\\:mt-px:has(>[data-slot=field-content]) [role=radio]){margin-top:1px}@container field-group (width>=448px){:is(.\\@md\\/field-group\\:has-\\[\\>\\[data-slot\\=field-content\\]\\]\\:\\[\\&\\>\\[role\\=checkbox\\]\\,\\[role\\=radio\\]\\]\\:mt-px:has(>[data-slot=field-content])>[role=checkbox],.\\@md\\/field-group\\:has-\\[\\>\\[data-slot\\=field-content\\]\\]\\:\\[\\&\\>\\[role\\=checkbox\\]\\,\\[role\\=radio\\]\\]\\:mt-px:has(>[data-slot=field-content]) [role=radio]){margin-top:1px}}.\\[\\&\\>a\\]\\:underline>a{text-decoration-line:underline}.\\[\\&\\>a\\]\\:underline-offset-4>a{text-underline-offset:4px}.\\[\\&\\>a\\:hover\\]\\:text-primary>a:hover{color:var(--primary)}.\\[\\&\\>svg\\]\\:pointer-events-none>svg{pointer-events:none}.\\[\\&\\>svg\\]\\:size-3\\!>svg{width:12px!important;height:12px!important}[data-variant=legend]+.\\[\\[data-variant\\=legend\\]\\+\\&\\]\\:-mt-1\\.5{margin-top:-6px}.vehicle-garage-theme .garage-tab-list,.demo-theme-editor .garage-tab-list{height:auto;min-height:calc((var(--vehicle-garage-font-size,14px) * 1.35) + (var(--vehicle-garage-padding,8px) * 1.5));padding:max(3px, calc(var(--vehicle-garage-padding,8px) * .35));border:1px solid var(--border);border-color:var(--border)}@supports (color:color-mix(in lab, red, red)){.vehicle-garage-theme .garage-tab-list,.demo-theme-editor .garage-tab-list{border-color:color-mix(in oklab, var(--border) 55%, transparent)}}.vehicle-garage-theme .garage-tab-list,.demo-theme-editor .garage-tab-list{background-color:var(--muted);background-color:var(--foreground)}@supports (color:color-mix(in lab, red, red)){.vehicle-garage-theme .garage-tab-list,.demo-theme-editor .garage-tab-list{background-color:color-mix(in oklab, var(--foreground) 9%, transparent)}}.vehicle-garage-theme .garage-tab-trigger,.demo-theme-editor .garage-tab-trigger{height:auto;min-height:calc((var(--vehicle-garage-font-size,14px) * 1.25) + (var(--vehicle-garage-padding,8px) * 1.1));padding-block:calc(var(--vehicle-garage-padding,8px) * .55);padding-inline:calc(var(--vehicle-garage-padding,8px) * .9);line-height:1.15}.vehicle-garage-theme .garage-tab-trigger[data-state=active],.demo-theme-editor .garage-tab-trigger[data-state=active]{border-color:var(--primary);background-color:var(--primary);color:var(--primary-foreground)}.vehicle-garage-theme .garage-tab-scroll{margin-inline:-20px;padding:22px 20px 20px;scroll-padding:22px 20px 20px}.vehicle-garage-theme .vehicle-garage-icon{aspect-ratio:1;object-fit:contain;flex-shrink:0;width:16px;height:16px}.vehicle-garage-theme [data-slot=input],.vehicle-garage-theme [data-slot=select-trigger]{box-shadow:var(--vehicle-garage-input-shadow,none)}.vehicle-garage-theme .vehicle-garage-combobox-input{appearance:none;outline-offset:0!important;box-shadow:var(--vehicle-garage-input-shadow,none)!important;outline:0!important}.vehicle-garage-theme .vehicle-garage-combobox-input:focus,.vehicle-garage-theme .vehicle-garage-combobox-input:focus-visible{border-color:var(--ring)!important;outline-offset:0!important;box-shadow:inset 0 0 0 max(1px, var(--vehicle-garage-input-border-width,1px)) var(--ring)!important;outline:0!important}.vehicle-garage-theme .vehicle-garage-combobox-content{outline-offset:0!important;outline:0!important;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -2px #0000001a!important}.vehicle-garage-theme .vehicle-garage-plate-input{appearance:none;border-color:var(--input);border-color:var(--input)}@supports (color:color-mix(in lab, red, red)){.vehicle-garage-theme .vehicle-garage-plate-input{border-color:color-mix(in oklab, var(--input) 68%, transparent)}}.vehicle-garage-theme .vehicle-garage-plate-input{outline-offset:0!important;box-shadow:none!important;outline:0!important}.vehicle-garage-theme .vehicle-garage-plate-input:focus,.vehicle-garage-theme .vehicle-garage-plate-input:focus-visible{border-color:var(--input);border-color:var(--input)}@supports (color:color-mix(in lab, red, red)){.vehicle-garage-theme .vehicle-garage-plate-input:focus,.vehicle-garage-theme .vehicle-garage-plate-input:focus-visible{border-color:color-mix(in oklab, var(--input) 100%, transparent)}}.vehicle-garage-theme .vehicle-garage-plate-input:focus,.vehicle-garage-theme .vehicle-garage-plate-input:focus-visible{outline-offset:0!important;box-shadow:inset 0 0 0 max(1px, var(--vehicle-garage-plate-input-border-width,6px)) var(--input)!important;outline:0!important}.vehicle-garage-theme .vehicle-garage-plate-input:disabled{box-shadow:none!important}.vehicle-garage-plate-input{height:var(--vehicle-garage-plate-input-height,130px);min-height:var(--vehicle-garage-plate-input-height,130px);box-sizing:border-box;border-width:var(--vehicle-garage-plate-input-border-width,6px);border-radius:var(--vehicle-garage-plate-input-radius,calc(var(--radius) + 6px));font-family:var(--vehicle-garage-plate-font,var(--font-license));font-size:var(--vehicle-garage-plate-input-fit-font-size,var(--vehicle-garage-plate-input-font-size,60px));line-height:var(--vehicle-garage-plate-input-line-height,1.12);letter-spacing:var(--vehicle-garage-plate-input-letter-spacing,1.5px);text-transform:uppercase;caret-color:currentColor;padding:20px 24px 8px}.vehicle-garage-plate-input::placeholder{letter-spacing:var(--vehicle-garage-plate-placeholder-letter-spacing,var(--vehicle-garage-plate-input-letter-spacing,1.5px))}@media (width>=768px){.vehicle-garage-plate-input{height:var(--vehicle-garage-plate-input-height-md,150px);min-height:var(--vehicle-garage-plate-input-height-md,150px);border-width:var(--vehicle-garage-plate-input-border-width-md,8px);font-size:var(--vehicle-garage-plate-input-fit-font-size,var(--vehicle-garage-plate-input-font-size-md,75px));padding-top:20px}}}@property --tw-animation-delay{syntax:\"*\";inherits:false;initial-value:0s}@property --tw-animation-direction{syntax:\"*\";inherits:false;initial-value:normal}@property --tw-animation-duration{syntax:\"*\";inherits:false}@property --tw-animation-fill-mode{syntax:\"*\";inherits:false;initial-value:none}@property --tw-animation-iteration-count{syntax:\"*\";inherits:false;initial-value:1}@property --tw-enter-blur{syntax:\"*\";inherits:false;initial-value:0}@property --tw-enter-opacity{syntax:\"*\";inherits:false;initial-value:1}@property --tw-enter-rotate{syntax:\"*\";inherits:false;initial-value:0}@property --tw-enter-scale{syntax:\"*\";inherits:false;initial-value:1}@property --tw-enter-translate-x{syntax:\"*\";inherits:false;initial-value:0}@property --tw-enter-translate-y{syntax:\"*\";inherits:false;initial-value:0}@property --tw-exit-blur{syntax:\"*\";inherits:false;initial-value:0}@property --tw-exit-opacity{syntax:\"*\";inherits:false;initial-value:1}@property --tw-exit-rotate{syntax:\"*\";inherits:false;initial-value:0}@property --tw-exit-scale{syntax:\"*\";inherits:false;initial-value:1}@property --tw-exit-translate-x{syntax:\"*\";inherits:false;initial-value:0}@property --tw-exit-translate-y{syntax:\"*\";inherits:false;initial-value:0}@font-face{font-family:License Plate;src:url(https://res.cloudinary.com/proex/raw/upload/v1730709140/partbot/PartbotPlate.woff2)format(\"woff2\");font-weight:400;font-style:normal;font-display:swap}:root{--background:oklch(98.5% .004 95);--foreground:oklch(20% .012 85);--card:oklch(99% .003 95);--card-foreground:oklch(20% .012 85);--popover:oklch(99% .003 95);--popover-foreground:oklch(20% .012 85);--primary:oklch(49% .12 242);--primary-foreground:oklch(98.5% .004 95);--secondary:oklch(95% .01 95);--secondary-foreground:oklch(27% .02 85);--muted:oklch(95% .01 95);--muted-foreground:oklch(53% .016 85);--accent:oklch(93% .018 230);--accent-foreground:oklch(25% .025 242);--destructive:oklch(57.7% .245 27.325);--border:oklch(89% .012 85);--input:oklch(89% .012 85);--ring:oklch(67% .1 242);--chart-1:oklch(78% .13 242);--chart-2:oklch(66% .12 204);--chart-3:oklch(56% .08 170);--chart-4:oklch(66% .15 60);--chart-5:oklch(62% .18 30);--radius:10px;--sidebar:oklch(98.5% .004 95);--sidebar-foreground:oklch(20% .012 85);--sidebar-primary:oklch(49% .12 242);--sidebar-primary-foreground:oklch(98.5% .004 95);--sidebar-accent:oklch(93% .018 230);--sidebar-accent-foreground:oklch(25% .025 242);--sidebar-border:oklch(89% .012 85);--sidebar-ring:oklch(67% .1 242)}.dark{--background:oklch(20% .012 255);--foreground:oklch(97.5% .004 95);--card:oklch(24% .013 255);--card-foreground:oklch(97.5% .004 95);--popover:oklch(24% .013 255);--popover-foreground:oklch(97.5% .004 95);--primary:oklch(72% .11 220);--primary-foreground:oklch(18% .01 255);--secondary:oklch(30% .01 255);--secondary-foreground:oklch(97.5% .004 95);--muted:oklch(30% .01 255);--muted-foreground:oklch(75% .012 95);--accent:oklch(35% .03 220);--accent-foreground:oklch(98% .004 95);--destructive:oklch(70.4% .191 22.216);--border:oklch(100% 0 0/.11);--input:oklch(100% 0 0/.14);--ring:oklch(72% .11 220);--chart-1:oklch(72% .11 220);--chart-2:oklch(66% .1 185);--chart-3:oklch(68% .11 145);--chart-4:oklch(78% .12 82);--chart-5:oklch(72% .15 35);--sidebar:oklch(24% .013 255);--sidebar-foreground:oklch(97.5% .004 95);--sidebar-primary:oklch(72% .11 220);--sidebar-primary-foreground:oklch(18% .01 255);--sidebar-accent:oklch(35% .03 220);--sidebar-accent-foreground:oklch(98% .004 95);--sidebar-border:oklch(100% 0 0/.11);--sidebar-ring:oklch(72% .11 220)}@keyframes garage-sheet-in-right{0%{transform:translate(100%)}to{transform:translate(0)}}@keyframes garage-sheet-out-right{0%{transform:translate(0)}to{transform:translate(100%)}}@keyframes garage-sheet-in-left{0%{transform:translate(-100%)}to{transform:translate(0)}}@keyframes garage-sheet-out-left{0%{transform:translate(0)}to{transform:translate(-100%)}}@keyframes garage-sheet-in-top{0%{transform:translateY(-100%)}to{transform:translate(0)}}@keyframes garage-sheet-out-top{0%{transform:translate(0)}to{transform:translateY(-100%)}}@keyframes garage-sheet-in-bottom{0%{transform:translateY(100%)}to{transform:translate(0)}}@keyframes garage-sheet-out-bottom{0%{transform:translate(0)}to{transform:translateY(100%)}}@keyframes garage-sheet-overlay-in{0%{opacity:0}to{opacity:1}}@keyframes garage-sheet-overlay-out{0%{opacity:1}to{opacity:0}}.vehicle-garage-theme,.vehicle-garage-theme *{letter-spacing:inherit;text-transform:none;font-style:normal}.vehicle-garage-theme{letter-spacing:0}.vehicle-garage-theme [data-slot=sheet-title]{font-family:var(--vehicle-garage-font-family,var(--font-sans));letter-spacing:0;text-transform:none;margin:0;font-size:16px;font-style:normal;font-weight:500;line-height:24px}.vehicle-garage-theme .vehicle-garage-plate-input{letter-spacing:var(--vehicle-garage-plate-input-letter-spacing,1.5px);text-transform:uppercase}.vehicle-garage-theme .vehicle-garage-plate-input::placeholder{letter-spacing:var(--vehicle-garage-plate-placeholder-letter-spacing,var(--vehicle-garage-plate-input-letter-spacing,1.5px))}@property --tw-rotate-x{syntax:\"*\";inherits:false}@property --tw-rotate-y{syntax:\"*\";inherits:false}@property --tw-rotate-z{syntax:\"*\";inherits:false}@property --tw-skew-x{syntax:\"*\";inherits:false}@property --tw-skew-y{syntax:\"*\";inherits:false}@property --tw-border-style{syntax:\"*\";inherits:false;initial-value:solid}@property --tw-leading{syntax:\"*\";inherits:false}@property --tw-font-weight{syntax:\"*\";inherits:false}@property --tw-tracking{syntax:\"*\";inherits:false}@property --tw-shadow{syntax:\"*\";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:\"*\";inherits:false}@property --tw-shadow-alpha{syntax:\"<percentage>\";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:\"*\";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:\"*\";inherits:false}@property --tw-inset-shadow-alpha{syntax:\"<percentage>\";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:\"*\";inherits:false}@property --tw-ring-shadow{syntax:\"*\";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:\"*\";inherits:false}@property --tw-inset-ring-shadow{syntax:\"*\";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:\"*\";inherits:false}@property --tw-ring-offset-width{syntax:\"<length>\";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:\"*\";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:\"*\";inherits:false;initial-value:0 0 #0000}@property --tw-outline-style{syntax:\"*\";inherits:false;initial-value:solid}@property --tw-blur{syntax:\"*\";inherits:false}@property --tw-brightness{syntax:\"*\";inherits:false}@property --tw-contrast{syntax:\"*\";inherits:false}@property --tw-grayscale{syntax:\"*\";inherits:false}@property --tw-hue-rotate{syntax:\"*\";inherits:false}@property --tw-invert{syntax:\"*\";inherits:false}@property --tw-opacity{syntax:\"*\";inherits:false}@property --tw-saturate{syntax:\"*\";inherits:false}@property --tw-sepia{syntax:\"*\";inherits:false}@property --tw-drop-shadow{syntax:\"*\";inherits:false}@property --tw-drop-shadow-color{syntax:\"*\";inherits:false}@property --tw-drop-shadow-alpha{syntax:\"<percentage>\";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:\"*\";inherits:false}@property --tw-duration{syntax:\"*\";inherits:false}@property --tw-content{syntax:\"*\";inherits:false;initial-value:\"\"}@property --tw-translate-x{syntax:\"*\";inherits:false;initial-value:0}@property --tw-translate-y{syntax:\"*\";inherits:false;initial-value:0}@property --tw-translate-z{syntax:\"*\";inherits:false;initial-value:0}@keyframes spin{to{transform:rotate(360deg)}}@keyframes enter{0%{opacity:var(--tw-enter-opacity,1);transform:translate3d(var(--tw-enter-translate-x,0),var(--tw-enter-translate-y,0),0)scale3d(var(--tw-enter-scale,1),var(--tw-enter-scale,1),var(--tw-enter-scale,1))rotate(var(--tw-enter-rotate,0));filter:blur(var(--tw-enter-blur,0))}}@keyframes exit{to{opacity:var(--tw-exit-opacity,1);transform:translate3d(var(--tw-exit-translate-x,0),var(--tw-exit-translate-y,0),0)scale3d(var(--tw-exit-scale,1),var(--tw-exit-scale,1),var(--tw-exit-scale,1))rotate(var(--tw-exit-rotate,0));filter:blur(var(--tw-exit-blur,0))}}@keyframes accordion-down{0%{height:0}to{height:var(--radix-accordion-content-height,var(--bits-accordion-content-height,var(--reka-accordion-content-height,var(--kb-accordion-content-height,var(--ngp-accordion-content-height,auto)))))}}@keyframes accordion-up{0%{height:var(--radix-accordion-content-height,var(--bits-accordion-content-height,var(--reka-accordion-content-height,var(--kb-accordion-content-height,var(--ngp-accordion-content-height,auto)))))}to{height:0}}";
|
|
11212
|
+
var Ch = "/*! tailwindcss v4.3.0 | MIT License | https://tailwindcss.com */\n@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-animation-delay:0s;--tw-animation-direction:normal;--tw-animation-duration:initial;--tw-animation-fill-mode:none;--tw-animation-iteration-count:1;--tw-enter-blur:0;--tw-enter-opacity:1;--tw-enter-rotate:0;--tw-enter-scale:1;--tw-enter-translate-x:0;--tw-enter-translate-y:0;--tw-exit-blur:0;--tw-exit-opacity:1;--tw-exit-rotate:0;--tw-exit-scale:1;--tw-exit-translate-x:0;--tw-exit-translate-y:0;--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid;--tw-leading:initial;--tw-font-weight:initial;--tw-tracking:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-duration:initial;--tw-content:\"\";--tw-translate-x:0;--tw-translate-y:0;--tw-translate-z:0}}}@layer theme{:root,:host{--font-sans:\"Segoe UI\", ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, sans-serif;--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, \"Liberation Mono\", \"Courier New\", monospace;--color-white:#fff;--spacing:4px;--font-weight-normal:400;--font-weight-medium:500;--font-weight-semibold:600;--leading-tight:1.25;--leading-snug:1.375;--leading-normal:1.5;--leading-relaxed:1.625;--radius-md:calc(var(--radius) * .8);--animate-spin:spin 1s linear infinite;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--font-license:\"License Plate\", var(--font-sans)}}@layer base{.vehicle-garage-theme,.vehicle-garage-theme *,.vehicle-garage-theme :before,.vehicle-garage-theme :after,.vehicle-garage-theme ::backdrop{box-sizing:border-box;border:0 solid}.vehicle-garage-theme *,.vehicle-garage-theme :before,.vehicle-garage-theme :after,.vehicle-garage-theme ::backdrop{border-color:var(--border);outline-color:var(--ring)}@supports (color:color-mix(in lab, red, red)){.vehicle-garage-theme *,.vehicle-garage-theme :before,.vehicle-garage-theme :after,.vehicle-garage-theme ::backdrop{outline-color:color-mix(in oklab, var(--ring) 50%, transparent)}}.vehicle-garage-theme button,.vehicle-garage-theme input,.vehicle-garage-theme select,.vehicle-garage-theme optgroup,.vehicle-garage-theme textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}.vehicle-garage-theme button,.vehicle-garage-theme input:where([type=button],[type=reset],[type=submit]){appearance:button}.vehicle-garage-theme img,.vehicle-garage-theme svg,.vehicle-garage-theme video,.vehicle-garage-theme canvas,.vehicle-garage-theme audio,.vehicle-garage-theme iframe,.vehicle-garage-theme embed,.vehicle-garage-theme object{vertical-align:middle;display:block}.vehicle-garage-theme img,.vehicle-garage-theme video{max-width:100%;height:auto}.vehicle-garage-theme [hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components{.vehicle-garage-theme{--background:var(--vehicle-garage-background,oklch(98.5% .003 85));--foreground:var(--vehicle-garage-foreground,oklch(22% .004 85));--card:var(--vehicle-garage-card,oklch(99% .002 85));--card-foreground:var(--vehicle-garage-card-foreground,var(--foreground));--popover:var(--vehicle-garage-popover,oklch(99.2% .002 85));--popover-foreground:var(--vehicle-garage-popover-foreground,var(--foreground));--primary:var(--vehicle-garage-button-color,var(--vehicle-garage-primary,oklch(23% .004 85)));--primary-foreground:var(--vehicle-garage-button-label-color,var(--vehicle-garage-primary-foreground,oklch(98.5% .003 85)));--secondary:var(--vehicle-garage-secondary,oklch(95% .003 85));--secondary-foreground:var(--vehicle-garage-secondary-foreground,oklch(28% .004 85));--muted:var(--vehicle-garage-muted,oklch(96.4% .002 85));--muted-foreground:var(--vehicle-garage-muted-foreground,oklch(49% .006 85));--accent:var(--vehicle-garage-accent,oklch(93% .003 85));--accent-foreground:var(--vehicle-garage-accent-foreground,oklch(24% .004 85));--border:var(--vehicle-garage-border,oklch(88% .003 85));--input:var(--vehicle-garage-input-border-color,var(--vehicle-garage-input,var(--border)));--ring:var(--vehicle-garage-ring,oklch(55% .006 85));--radius:var(--vehicle-garage-radius,12px);--spacing:4px;--container-sm:384px;--container-md:448px;--container-xl:576px;--container-7xl:1280px;--vehicle-garage-button-hover-background:var(--vehicle-garage-button-hover-color,var(--primary))}@supports (color:color-mix(in lab, red, red)){.vehicle-garage-theme{--vehicle-garage-button-hover-background:var(--vehicle-garage-button-hover-color,color-mix(in oklab, var(--primary) 88%, var(--foreground)))}}.vehicle-garage-theme{--vehicle-garage-button-hover-foreground:var(--vehicle-garage-button-hover-label-color,var(--primary-foreground));--text-xs:calc(var(--vehicle-garage-font-size,14px) * .857143);--text-xs--line-height:calc(var(--vehicle-garage-font-size,14px) * 1.14286);--text-sm:var(--vehicle-garage-font-size,14px);--text-sm--line-height:calc(var(--vehicle-garage-font-size,14px) * 1.42857);--text-base:calc(var(--vehicle-garage-font-size,14px) * 1.14286);--text-base--line-height:calc(var(--vehicle-garage-font-size,14px) * 1.71429);--text-lg:calc(var(--vehicle-garage-font-size,14px) * 1.28571);--text-lg--line-height:calc(var(--vehicle-garage-font-size,14px) * 2);--tracking-tight:-.4px;font-family:var(--vehicle-garage-font-family,var(--font-sans));font-size:var(--vehicle-garage-font-size,14px);line-height:calc(var(--vehicle-garage-font-size,14px) * 1.42857);color:var(--foreground)}.vehicle-garage-theme [data-slot=button][data-variant=default]:hover{background-color:var(--vehicle-garage-button-hover-background);color:var(--vehicle-garage-button-hover-foreground)}.vehicle-garage-theme [data-slot=button]:not([data-size^=icon]){padding-inline:calc(var(--vehicle-garage-padding,8px) * 1.5)}.vehicle-garage-theme [data-slot=input]{border-width:var(--vehicle-garage-input-border-width,1px);box-shadow:var(--vehicle-garage-input-shadow,none);padding-inline:calc(var(--vehicle-garage-padding,8px) * 1.25)}.garage-sheet-overlay{background-color:rgb(0 0 0/var(--vehicle-garage-overlay-opacity,.1));background-color:var(--vehicle-garage-overlay-background,var(--vehicle-garage-overlay-color,#000))}@supports (color:color-mix(in lab, red, red)){.garage-sheet-overlay{background-color:var(--vehicle-garage-overlay-background,color-mix(in srgb, var(--vehicle-garage-overlay-color,#000) calc(var(--vehicle-garage-overlay-opacity,.1) * 100%), transparent))}}.garage-sheet-overlay{opacity:1;-webkit-backdrop-filter:blur(var(--vehicle-garage-overlay-blur,4px));backdrop-filter:blur(var(--vehicle-garage-overlay-blur,4px))}.garage-sheet-overlay[data-state=open]{animation:.3s ease-out garage-sheet-overlay-in}.garage-sheet-overlay[data-state=closed]{animation:.26s ease-in garage-sheet-overlay-out}.garage-sheet-content{will-change:transform}.garage-sheet-content[data-side=right][data-state=open]{animation:.36s cubic-bezier(.16,1,.3,1) garage-sheet-in-right}.garage-sheet-content[data-side=right][data-state=closed]{animation:.3s cubic-bezier(.7,0,.84,0) garage-sheet-out-right}.garage-sheet-content[data-side=left][data-state=open]{animation:.36s cubic-bezier(.16,1,.3,1) garage-sheet-in-left}.garage-sheet-content[data-side=left][data-state=closed]{animation:.3s cubic-bezier(.7,0,.84,0) garage-sheet-out-left}.garage-sheet-content[data-side=top][data-state=open]{animation:.36s cubic-bezier(.16,1,.3,1) garage-sheet-in-top}.garage-sheet-content[data-side=top][data-state=closed]{animation:.3s cubic-bezier(.7,0,.84,0) garage-sheet-out-top}.garage-sheet-content[data-side=bottom][data-state=open]{animation:.36s cubic-bezier(.16,1,.3,1) garage-sheet-in-bottom}.garage-sheet-content[data-side=bottom][data-state=closed]{animation:.3s cubic-bezier(.7,0,.84,0) garage-sheet-out-bottom}@media (prefers-reduced-motion:reduce){.garage-sheet-overlay[data-state]{animation:none}.garage-sheet-content[data-state]{animation:none;transform:translate(0)}}}@layer utilities{.\\@container\\/field-group{container:field-group/inline-size}.pointer-events-auto{pointer-events:auto}.pointer-events-none{pointer-events:none}.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.inset-0{inset:0}.inset-x-3{inset-inline:12px}.inset-y-0{inset-block:0}.top-1\\/2{top:50%}.top-2{top:8px}.top-3{top:12px}.right-0{right:0}.right-2{right:8px}.right-3{right:12px}.bottom-3{bottom:12px}.z-10{z-index:10}.z-40{z-index:40}.z-50{z-index:50}.z-\\[60\\]{z-index:60}.z-\\[2147483646\\]{z-index:2147483646}.z-\\[2147483647\\]{z-index:2147483647}.container{width:100%}@media (width>=640px){.container{max-width:640px}}@media (width>=768px){.container{max-width:768px}}@media (width>=1024px){.container{max-width:1024px}}@media (width>=1280px){.container{max-width:1280px}}@media (width>=1536px){.container{max-width:1536px}}.-mx-1{margin-inline:-4px}.mx-3{margin-inline:12px}.mx-auto{margin-inline:auto}.-my-2{margin-block:-8px}.my-1{margin-block:4px}.mt-0{margin-top:0}.mt-0\\.5{margin-top:2px}.mt-1{margin-top:4px}.mt-auto{margin-top:auto}.mb-0{margin-bottom:0}.mb-1\\.5{margin-bottom:6px}.mb-2{margin-bottom:8px}.mb-3{margin-bottom:12px}.ml-2{margin-left:8px}.ml-4{margin-left:16px}.line-clamp-1{-webkit-line-clamp:1;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.line-clamp-2{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.block{display:block}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline-flex{display:inline-flex}.aspect-\\[4\\/5\\]{aspect-ratio:4/5}.size-3\\.5{width:14px;height:14px}.size-4{width:16px;height:16px}.size-6{width:24px;height:24px}.size-7{width:28px;height:28px}.size-8{width:32px;height:32px}.size-9{width:36px;height:36px}.size-\\[10px\\]{width:10px;height:10px}.size-full{width:100%;height:100%}.h-\\(--radix-accordion-content-height\\){height:var(--radix-accordion-content-height)}.h-3{height:12px}.h-3\\.5{height:14px}.h-4{height:16px}.h-5{height:20px}.h-7{height:28px}.h-8{height:32px}.h-9{height:36px}.h-10{height:40px}.h-11{height:44px}.h-\\[8px\\]{height:8px}.h-auto{height:auto}.h-full{height:100%}.h-px{height:1px}.max-h-\\(--radix-select-content-available-height\\){max-height:var(--radix-select-content-available-height)}.max-h-60{max-height:240px}.max-h-\\[70svh\\]{max-height:70svh}.min-h-0{min-height:0}.min-h-14{min-height:56px}.min-h-60{min-height:240px}.min-h-\\[calc\\(100\\%-1px\\)\\]{min-height:calc(100% - 1px)}.min-h-svh{min-height:100svh}.w-\\(--radix-popover-trigger-width\\){width:var(--radix-popover-trigger-width)}.w-9{width:36px}.w-14{width:56px}.w-20{width:80px}.w-24{width:96px}.w-28{width:112px}.w-\\[calc\\(100\\%-24px\\)\\]{width:calc(100% - 24px)}.w-auto{width:auto}.w-fit{width:fit-content}.w-full{width:100%}.max-w-7xl{max-width:1280px}.max-w-36{max-width:144px}.max-w-\\[48ch\\]{max-width:48ch}.max-w-sm{max-width:384px}.max-w-xl{max-width:576px}.min-w-0{min-width:0}.min-w-7{min-width:28px}.min-w-8{min-width:32px}.min-w-9{min-width:36px}.min-w-36{min-width:144px}.flex-1{flex:1}.shrink-0{flex-shrink:0}.grow{flex-grow:1}.origin-\\(--radix-select-content-transform-origin\\){transform-origin:var(--radix-select-content-transform-origin)}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.animate-spin{animation:var(--animate-spin)}.cursor-default{cursor:default}.cursor-pointer{cursor:pointer}.touch-none{touch-action:none}.resize{resize:both}.resize-none{resize:none}.scroll-my-1{scroll-margin-block:4px}.list-disc{list-style-type:disc}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.flex-col{flex-direction:column}.flex-row{flex-direction:row}.items-center{align-items:center}.items-start{align-items:flex-start}.items-stretch{align-items:stretch}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.justify-end{justify-content:flex-end}.gap-0{gap:0}.gap-0\\.5{gap:2px}.gap-1{gap:4px}.gap-1\\.5{gap:6px}.gap-2{gap:8px}.gap-2\\.5{gap:10px}.gap-3{gap:12px}.gap-4{gap:16px}.gap-5{gap:20px}.gap-8{gap:32px}.gap-\\[--spacing\\(var\\(--gap\\)\\)\\]{gap:calc(4px * var(--gap))}.overflow-auto{overflow:auto}.overflow-hidden{overflow:hidden}.overflow-x-hidden{overflow-x:hidden}.overflow-y-auto{overflow-y:auto}.rounded-4xl{border-radius:calc(var(--radius) * 2.6)}.rounded-\\[inherit\\]{border-radius:inherit}.rounded-\\[min\\(var\\(--radius-md\\)\\,10px\\)\\]{border-radius:min(var(--radius-md), 10px)}.rounded-\\[min\\(var\\(--radius-md\\)\\,12px\\)\\]{border-radius:min(var(--radius-md), 12px)}.rounded-full{border-radius:3.40282e38px}.rounded-lg{border-radius:var(--radius)}.rounded-md{border-radius:calc(var(--radius) * .8)}.rounded-none{border-radius:0}.rounded-xl{border-radius:calc(var(--radius) * 1.4)}.border{border-style:var(--tw-border-style);border-width:1px}.border-0{border-style:var(--tw-border-style);border-width:0}.border-t{border-top-style:var(--tw-border-style);border-top-width:1px}.border-b{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.border-b-0{border-bottom-style:var(--tw-border-style);border-bottom-width:0}.border-dashed{--tw-border-style:dashed;border-style:dashed}.border-border{border-color:var(--border)}.border-input{border-color:var(--input)}.border-primary{border-color:var(--primary)}.border-ring{border-color:var(--ring)}.border-transparent{border-color:#0000}.bg-accent{background-color:var(--accent)}.bg-background{background-color:var(--background)}.bg-border{background-color:var(--border)}.bg-card{background-color:var(--card)}.bg-destructive\\/10{background-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.bg-destructive\\/10{background-color:color-mix(in oklab, var(--destructive) 10%, transparent)}}.bg-muted,.bg-muted\\/20{background-color:var(--muted)}@supports (color:color-mix(in lab, red, red)){.bg-muted\\/20{background-color:color-mix(in oklab, var(--muted) 20%, transparent)}}.bg-muted\\/60{background-color:var(--muted)}@supports (color:color-mix(in lab, red, red)){.bg-muted\\/60{background-color:color-mix(in oklab, var(--muted) 60%, transparent)}}.bg-popover{background-color:var(--popover)}.bg-primary{background-color:var(--primary)}.bg-secondary{background-color:var(--secondary)}.bg-transparent{background-color:#0000}.bg-white{background-color:var(--color-white)}.bg-clip-padding{background-clip:padding-box}.object-contain{object-fit:contain}.p-0{padding:0}.p-1{padding:4px}.p-3{padding:12px}.p-4{padding:16px}.p-6{padding:24px}.p-\\[3px\\]{padding:3px}.p-px{padding:1px}.px-1\\.5{padding-inline:6px}.px-2{padding-inline:8px}.px-2\\.5{padding-inline:10px}.px-3{padding-inline:12px}.px-4{padding-inline:16px}.px-5{padding-inline:20px}.px-\\[8px\\]{padding-inline:8px}.py-0\\.5{padding-block:2px}.py-1{padding-block:4px}.py-1\\.5{padding-block:6px}.py-2{padding-block:8px}.py-2\\.5{padding-block:10px}.py-3{padding-block:12px}.py-4{padding-block:16px}.py-6{padding-block:24px}.py-\\[4px\\]{padding-block:4px}.pt-0{padding-top:0}.pt-1{padding-top:4px}.pt-4{padding-top:16px}.pr-1{padding-right:4px}.pr-1\\.5{padding-right:6px}.pr-2{padding-right:8px}.pr-8{padding-right:32px}.pr-16{padding-right:64px}.pb-2{padding-bottom:8px}.pb-2\\.5{padding-bottom:10px}.pb-4{padding-bottom:16px}.pl-1\\.5{padding-left:6px}.pl-2\\.5{padding-left:10px}.pl-3{padding-left:12px}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.font-heading{font-family:var(--font-sans)}.font-mono{font-family:var(--font-mono)}.text-base{font-size:16px;line-height:var(--tw-leading,24px)}.text-base\\/6{font-size:16px;line-height:24px}.text-lg{font-size:18px;line-height:var(--tw-leading,28px)}.text-sm{font-size:14px;line-height:var(--tw-leading,20px)}.text-sm\\/relaxed{font-size:14px;line-height:var(--leading-relaxed)}.text-xs{font-size:12px;line-height:var(--tw-leading,16px)}.text-\\[10px\\]{font-size:10px}.text-\\[13px\\]{font-size:13px}.leading-none{--tw-leading:1;line-height:1}.leading-normal{--tw-leading:var(--leading-normal);line-height:var(--leading-normal)}.leading-relaxed{--tw-leading:var(--leading-relaxed);line-height:var(--leading-relaxed)}.leading-snug{--tw-leading:var(--leading-snug);line-height:var(--leading-snug)}.leading-tight{--tw-leading:var(--leading-tight);line-height:var(--leading-tight)}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.font-normal{--tw-font-weight:var(--font-weight-normal);font-weight:var(--font-weight-normal)}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.tracking-\\[2\\.2px\\]{--tw-tracking:2.2px;letter-spacing:2.2px}.tracking-tight{--tw-tracking:-.4px;letter-spacing:-.4px}.text-balance{text-wrap:balance}.break-words{overflow-wrap:break-word}.whitespace-normal{white-space:normal}.whitespace-nowrap{white-space:nowrap}.text-accent-foreground{color:var(--accent-foreground)}.text-card-foreground{color:var(--card-foreground)}.text-current{color:currentColor}.text-destructive{color:var(--destructive)}.text-foreground,.text-foreground\\/60{color:var(--foreground)}@supports (color:color-mix(in lab, red, red)){.text-foreground\\/60{color:color-mix(in oklab, var(--foreground) 60%, transparent)}}.text-foreground\\/70{color:var(--foreground)}@supports (color:color-mix(in lab, red, red)){.text-foreground\\/70{color:color-mix(in oklab, var(--foreground) 70%, transparent)}}.text-muted-foreground{color:var(--muted-foreground)}.text-popover-foreground{color:var(--popover-foreground)}.text-primary{color:var(--primary)}.text-primary-foreground{color:var(--primary-foreground)}.text-secondary-foreground{color:var(--secondary-foreground)}.uppercase{text-transform:uppercase}.no-underline{text-decoration-line:none}.underline-offset-4{text-underline-offset:4px}.opacity-65{opacity:.65}.opacity-100{opacity:1}.shadow{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-lg{--tw-shadow:0 10px 15px -3px var(--tw-shadow-color,#0000001a), 0 4px 6px -4px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-md{--tw-shadow:0 4px 6px -1px var(--tw-shadow-color,#0000001a), 0 2px 4px -2px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-none{--tw-shadow:0 0 #0000;box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.ring-0{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(0px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.ring-1{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.ring-foreground\\/10{--tw-ring-color:var(--foreground)}@supports (color:color-mix(in lab, red, red)){.ring-foreground\\/10{--tw-ring-color:color-mix(in oklab, var(--foreground) 10%, transparent)}}.ring-ring\\/50{--tw-ring-color:var(--ring)}@supports (color:color-mix(in lab, red, red)){.ring-ring\\/50{--tw-ring-color:color-mix(in oklab, var(--ring) 50%, transparent)}}.outline-hidden{--tw-outline-style:none;outline-style:none}@media (forced-colors:active){.outline-hidden{outline-offset:2px;outline:2px solid #0000}}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.blur{--tw-blur:blur(8px);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.transition-\\[color\\,box-shadow\\]{transition-property:color,box-shadow;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-all{transition-property:all;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-colors{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-opacity{transition-property:opacity;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-transform{transition-property:transform,translate,scale,rotate;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.duration-100{--tw-duration:.1s;transition-duration:.1s}.outline-none{--tw-outline-style:none;outline-style:none}.select-none{-webkit-user-select:none;user-select:none}:is(.\\*\\:w-full>*){width:100%}.not-last\\:border-b:not(:last-child){border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.group-open\\:rotate-180:is(:where(.group):is([open],:popover-open,:open) *){rotate:180deg}.group-has-data-horizontal\\/field\\:text-balance:is(:where(.group\\/field):has([data-horizontal]) *){text-wrap:balance}.group-has-\\[\\>svg\\]\\/alert\\:col-start-2:is(:where(.group\\/alert):has(>svg) *){grid-column-start:2}.group-aria-expanded\\/accordion-trigger\\:hidden:is(:where(.group\\/accordion-trigger)[aria-expanded=true] *){display:none}.group-aria-expanded\\/accordion-trigger\\:inline:is(:where(.group\\/accordion-trigger)[aria-expanded=true] *){display:inline}.group-data-horizontal\\/tabs\\:min-h-\\[32px\\]:is(:where(.group\\/tabs)[data-horizontal] *){min-height:32px}.group-data-vertical\\/tabs\\:h-fit:is(:where(.group\\/tabs)[data-vertical] *){height:fit-content}.group-data-vertical\\/tabs\\:w-full:is(:where(.group\\/tabs)[data-vertical] *){width:100%}.group-data-vertical\\/tabs\\:flex-col:is(:where(.group\\/tabs)[data-vertical] *){flex-direction:column}.group-data-vertical\\/tabs\\:justify-start:is(:where(.group\\/tabs)[data-vertical] *){justify-content:flex-start}.group-data-\\[disabled\\=true\\]\\:pointer-events-none:is(:where(.group)[data-disabled=true] *){pointer-events:none}.group-data-\\[disabled\\=true\\]\\:opacity-50:is(:where(.group)[data-disabled=true] *),.group-data-\\[disabled\\=true\\]\\/field\\:opacity-50:is(:where(.group\\/field)[data-disabled=true] *){opacity:.5}.group-data-\\[size\\=default\\]\\/switch\\:size-\\[16px\\]:is(:where(.group\\/switch)[data-size=default] *){width:16px;height:16px}.group-data-\\[size\\=lg\\]\\/switch\\:size-\\[20px\\]:is(:where(.group\\/switch)[data-size=lg] *){width:20px;height:20px}.group-data-\\[size\\=sm\\]\\/switch\\:size-\\[12px\\]:is(:where(.group\\/switch)[data-size=sm] *){width:12px;height:12px}.group-data-\\[spacing\\=0\\]\\/toggle-group\\:rounded-none:is(:where(.group\\/toggle-group)[data-spacing=\"0\"] *){border-radius:0}.group-data-\\[spacing\\=0\\]\\/toggle-group\\:px-2:is(:where(.group\\/toggle-group)[data-spacing=\"0\"] *){padding-inline:8px}.group-data-\\[variant\\=line\\]\\/tabs-list\\:bg-transparent:is(:where(.group\\/tabs-list)[data-variant=line] *){background-color:#0000}.group-data-\\[variant\\=outline\\]\\/field-group\\:-mb-2:is(:where(.group\\/field-group)[data-variant=outline] *){margin-bottom:-8px}.peer-disabled\\:cursor-not-allowed:is(:where(.peer):disabled~*){cursor:not-allowed}.peer-disabled\\:opacity-50:is(:where(.peer):disabled~*){opacity:.5}.file\\:inline-flex::file-selector-button{display:inline-flex}.file\\:h-6::file-selector-button{height:24px}.file\\:border-0::file-selector-button{border-style:var(--tw-border-style);border-width:0}.file\\:bg-transparent::file-selector-button{background-color:#0000}.file\\:text-sm::file-selector-button{font-size:14px;line-height:var(--tw-leading,20px)}.file\\:font-medium::file-selector-button{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.file\\:text-foreground::file-selector-button{color:var(--foreground)}.placeholder\\:text-muted-foreground::placeholder,.placeholder\\:text-muted-foreground\\/70::placeholder{color:var(--muted-foreground)}@supports (color:color-mix(in lab, red, red)){.placeholder\\:text-muted-foreground\\/70::placeholder{color:color-mix(in oklab, var(--muted-foreground) 70%, transparent)}}.after\\:absolute:after{content:var(--tw-content);position:absolute}.after\\:-inset-\\[10px\\]:after{content:var(--tw-content);inset:-10px}.after\\:-inset-x-\\[12px\\]:after{content:var(--tw-content);inset-inline:-12px}.after\\:-inset-y-\\[8px\\]:after{content:var(--tw-content);inset-block:-8px}.after\\:bg-foreground:after{content:var(--tw-content);background-color:var(--foreground)}.after\\:opacity-0:after{content:var(--tw-content);opacity:0}.after\\:transition-opacity:after{content:var(--tw-content);transition-property:opacity;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.group-data-horizontal\\/tabs\\:after\\:inset-x-0:is(:where(.group\\/tabs)[data-horizontal] *):after{content:var(--tw-content);inset-inline:0}.group-data-horizontal\\/tabs\\:after\\:bottom-\\[-5px\\]:is(:where(.group\\/tabs)[data-horizontal] *):after{content:var(--tw-content);bottom:-5px}.group-data-horizontal\\/tabs\\:after\\:h-0\\.5:is(:where(.group\\/tabs)[data-horizontal] *):after{content:var(--tw-content);height:2px}.group-data-vertical\\/tabs\\:after\\:inset-y-0:is(:where(.group\\/tabs)[data-vertical] *):after{content:var(--tw-content);inset-block:0}.group-data-vertical\\/tabs\\:after\\:-right-1:is(:where(.group\\/tabs)[data-vertical] *):after{content:var(--tw-content);right:-4px}.group-data-vertical\\/tabs\\:after\\:w-0\\.5:is(:where(.group\\/tabs)[data-vertical] *):after{content:var(--tw-content);width:2px}.first\\:rounded-l-xl:first-child{border-top-left-radius:calc(var(--radius) * 1.4);border-bottom-left-radius:calc(var(--radius) * 1.4)}.first\\:border-t-0:first-child{border-top-style:var(--tw-border-style);border-top-width:0}.first\\:pt-0:first-child{padding-top:0}.last\\:mt-0:last-child{margin-top:0}.last\\:rounded-r-xl:last-child{border-top-right-radius:calc(var(--radius) * 1.4);border-bottom-right-radius:calc(var(--radius) * 1.4)}.focus-within\\:bg-accent:focus-within{background-color:var(--accent)}.focus-within\\:text-accent-foreground:focus-within{color:var(--accent-foreground)}@media (hover:hover){.hover\\:bg-accent:hover{background-color:var(--accent)}.hover\\:bg-destructive\\/10:hover{background-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.hover\\:bg-destructive\\/10:hover{background-color:color-mix(in oklab, var(--destructive) 10%, transparent)}}.hover\\:bg-destructive\\/20:hover{background-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.hover\\:bg-destructive\\/20:hover{background-color:color-mix(in oklab, var(--destructive) 20%, transparent)}}.hover\\:bg-muted:hover,.hover\\:bg-muted\\/50:hover{background-color:var(--muted)}@supports (color:color-mix(in lab, red, red)){.hover\\:bg-muted\\/50:hover{background-color:color-mix(in oklab, var(--muted) 50%, transparent)}}.hover\\:bg-secondary\\/80:hover{background-color:var(--secondary)}@supports (color:color-mix(in lab, red, red)){.hover\\:bg-secondary\\/80:hover{background-color:color-mix(in oklab, var(--secondary) 80%, transparent)}}.hover\\:text-accent-foreground:hover{color:var(--accent-foreground)}.hover\\:text-destructive:hover{color:var(--destructive)}.hover\\:text-foreground:hover{color:var(--foreground)}.hover\\:text-muted-foreground:hover{color:var(--muted-foreground)}.hover\\:no-underline:hover{text-decoration-line:none}.hover\\:underline:hover{text-decoration-line:underline}.hover\\:opacity-100:hover{opacity:1}.hover\\:ring-3:hover{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}}.focus\\:z-10:focus{z-index:10}.focus\\:bg-accent:focus{background-color:var(--accent)}.focus\\:text-accent-foreground:focus,:is(.not-data-\\[variant\\=destructive\\]\\:focus\\:\\*\\*\\:text-accent-foreground:not([data-variant=destructive]):focus *){color:var(--accent-foreground)}.focus-visible\\:z-10:focus-visible{z-index:10}.focus-visible\\:border-destructive\\/40:focus-visible{border-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.focus-visible\\:border-destructive\\/40:focus-visible{border-color:color-mix(in oklab, var(--destructive) 40%, transparent)}}.focus-visible\\:border-input:focus-visible{border-color:var(--input)}.focus-visible\\:border-ring:focus-visible{border-color:var(--ring)}.focus-visible\\:opacity-100:focus-visible{opacity:1}.focus-visible\\:ring-0:focus-visible{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(0px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.focus-visible\\:ring-2:focus-visible{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.focus-visible\\:ring-3:focus-visible,.focus-visible\\:ring-\\[3px\\]:focus-visible{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.focus-visible\\:ring-destructive\\/20:focus-visible{--tw-ring-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.focus-visible\\:ring-destructive\\/20:focus-visible{--tw-ring-color:color-mix(in oklab, var(--destructive) 20%, transparent)}}.focus-visible\\:ring-ring:focus-visible,.focus-visible\\:ring-ring\\/50:focus-visible{--tw-ring-color:var(--ring)}@supports (color:color-mix(in lab, red, red)){.focus-visible\\:ring-ring\\/50:focus-visible{--tw-ring-color:color-mix(in oklab, var(--ring) 50%, transparent)}}.focus-visible\\:ring-offset-0:focus-visible{--tw-ring-offset-width:0px;--tw-ring-offset-shadow:var(--tw-ring-inset,) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color)}.focus-visible\\:ring-offset-2:focus-visible{--tw-ring-offset-width:2px;--tw-ring-offset-shadow:var(--tw-ring-inset,) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color)}.focus-visible\\:outline-hidden:focus-visible{--tw-outline-style:none;outline-style:none}@media (forced-colors:active){.focus-visible\\:outline-hidden:focus-visible{outline-offset:2px;outline:2px solid #0000}}.focus-visible\\:outline-1:focus-visible{outline-style:var(--tw-outline-style);outline-width:1px}.focus-visible\\:outline-ring:focus-visible{outline-color:var(--ring)}.focus-visible\\:outline-none:focus-visible{--tw-outline-style:none;outline-style:none}.focus-visible\\:after\\:border-ring:focus-visible:after{content:var(--tw-content);border-color:var(--ring)}.active\\:ring-3:active{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.active\\:not-aria-\\[haspopup\\]\\:translate-y-px:active:not([aria-haspopup]){--tw-translate-y:1px;translate:var(--tw-translate-x) var(--tw-translate-y)}.disabled\\:pointer-events-none:disabled{pointer-events:none}.disabled\\:cursor-default:disabled{cursor:default}.disabled\\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\\:bg-input\\/50:disabled{background-color:var(--input)}@supports (color:color-mix(in lab, red, red)){.disabled\\:bg-input\\/50:disabled{background-color:color-mix(in oklab, var(--input) 50%, transparent)}}.disabled\\:opacity-50:disabled{opacity:.5}.disabled\\:opacity-100:disabled{opacity:1}:where([data-slot=button-group]) .in-data-\\[slot\\=button-group\\]\\:rounded-lg{border-radius:var(--radius)}.has-data-checked\\:border-primary\\/30:has([data-checked]){border-color:var(--primary)}@supports (color:color-mix(in lab, red, red)){.has-data-checked\\:border-primary\\/30:has([data-checked]){border-color:color-mix(in oklab, var(--primary) 30%, transparent)}}.has-data-checked\\:bg-primary\\/5:has([data-checked]){background-color:var(--primary)}@supports (color:color-mix(in lab, red, red)){.has-data-checked\\:bg-primary\\/5:has([data-checked]){background-color:color-mix(in oklab, var(--primary) 5%, transparent)}}.has-data-\\[icon\\=inline-end\\]\\:pr-1:has([data-icon=inline-end]){padding-right:4px}.has-data-\\[icon\\=inline-end\\]\\:pr-1\\.5:has([data-icon=inline-end]){padding-right:6px}.has-data-\\[icon\\=inline-end\\]\\:pr-2:has([data-icon=inline-end]){padding-right:8px}.has-data-\\[icon\\=inline-end\\]\\:pr-2\\.5:has([data-icon=inline-end]){padding-right:10px}.group-data-\\[spacing\\=0\\]\\/toggle-group\\:has-data-\\[icon\\=inline-end\\]\\:pr-1\\.5:is(:where(.group\\/toggle-group)[data-spacing=\"0\"] *):has([data-icon=inline-end]){padding-right:6px}.has-data-\\[icon\\=inline-start\\]\\:pl-1:has([data-icon=inline-start]){padding-left:4px}.has-data-\\[icon\\=inline-start\\]\\:pl-1\\.5:has([data-icon=inline-start]){padding-left:6px}.has-data-\\[icon\\=inline-start\\]\\:pl-2:has([data-icon=inline-start]){padding-left:8px}.has-data-\\[icon\\=inline-start\\]\\:pl-2\\.5:has([data-icon=inline-start]){padding-left:10px}.group-data-\\[spacing\\=0\\]\\/toggle-group\\:has-data-\\[icon\\=inline-start\\]\\:pl-1\\.5:is(:where(.group\\/toggle-group)[data-spacing=\"0\"] *):has([data-icon=inline-start]){padding-left:6px}.has-data-\\[slot\\=alert-action\\]\\:relative:has([data-slot=alert-action]){position:relative}.has-data-\\[slot\\=alert-action\\]\\:pr-18:has([data-slot=alert-action]){padding-right:72px}.has-\\[\\>\\[data-slot\\=checkbox-group\\]\\]\\:gap-3:has(>[data-slot=checkbox-group]){gap:12px}.has-\\[\\>\\[data-slot\\=field-content\\]\\]\\:items-start:has(>[data-slot=field-content]){align-items:flex-start}.has-\\[\\>\\[data-slot\\=field\\]\\]\\:w-full:has(>[data-slot=field]){width:100%}.has-\\[\\>\\[data-slot\\=field\\]\\]\\:flex-col:has(>[data-slot=field]){flex-direction:column}.has-\\[\\>\\[data-slot\\=field\\]\\]\\:rounded-lg:has(>[data-slot=field]){border-radius:var(--radius)}.has-\\[\\>\\[data-slot\\=field\\]\\]\\:border:has(>[data-slot=field]){border-style:var(--tw-border-style);border-width:1px}.has-\\[\\>\\[data-slot\\=radio-group\\]\\]\\:gap-3:has(>[data-slot=radio-group]){gap:12px}.has-\\[\\>svg\\]\\:grid-cols-\\[auto_1fr\\]:has(>svg){grid-template-columns:auto 1fr}.has-\\[\\>svg\\]\\:gap-x-2:has(>svg){column-gap:8px}.aria-expanded\\:bg-muted[aria-expanded=true]{background-color:var(--muted)}.aria-expanded\\:bg-secondary[aria-expanded=true]{background-color:var(--secondary)}.aria-expanded\\:text-foreground[aria-expanded=true]{color:var(--foreground)}.aria-expanded\\:text-secondary-foreground[aria-expanded=true]{color:var(--secondary-foreground)}.aria-invalid\\:border-destructive[aria-invalid=true]{border-color:var(--destructive)}.aria-invalid\\:ring-3[aria-invalid=true]{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.aria-invalid\\:ring-destructive\\/20[aria-invalid=true]{--tw-ring-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.aria-invalid\\:ring-destructive\\/20[aria-invalid=true]{--tw-ring-color:color-mix(in oklab, var(--destructive) 20%, transparent)}}.aria-pressed\\:bg-muted[aria-pressed=true]{background-color:var(--muted)}.data-closed\\:animate-accordion-up[data-closed]{animation:accordion-up var(--tw-animation-duration,var(--tw-duration,.2s))var(--tw-ease,ease-out)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,none)}.data-disabled\\:pointer-events-none[data-disabled]{pointer-events:none}.data-disabled\\:cursor-not-allowed[data-disabled]{cursor:not-allowed}.data-disabled\\:opacity-50[data-disabled]{opacity:.5}.data-horizontal\\:h-2\\.5[data-horizontal]{height:10px}.data-horizontal\\:h-px[data-horizontal]{height:1px}.data-horizontal\\:w-full[data-horizontal]{width:100%}.data-horizontal\\:flex-col[data-horizontal]{flex-direction:column}.data-horizontal\\:border-t[data-horizontal]{border-top-style:var(--tw-border-style);border-top-width:1px}.data-horizontal\\:border-t-transparent[data-horizontal]{border-top-color:#0000}.data-open\\:animate-accordion-down[data-open]{animation:accordion-down var(--tw-animation-duration,var(--tw-duration,.2s))var(--tw-ease,ease-out)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,none)}.data-placeholder\\:text-muted-foreground[data-placeholder]{color:var(--muted-foreground)}.data-vertical\\:h-full[data-vertical]{height:100%}.data-vertical\\:w-2\\.5[data-vertical]{width:10px}.data-vertical\\:w-px[data-vertical]{width:1px}.data-vertical\\:flex-col[data-vertical]{flex-direction:column}.data-vertical\\:items-stretch[data-vertical]{align-items:stretch}.data-vertical\\:self-stretch[data-vertical]{align-self:stretch}.data-vertical\\:border-l[data-vertical]{border-left-style:var(--tw-border-style);border-left-width:1px}.data-vertical\\:border-l-transparent[data-vertical]{border-left-color:#0000}.data-\\[align-trigger\\=true\\]\\:animate-none[data-align-trigger=true]{animation:none}.data-\\[invalid\\=true\\]\\:text-destructive[data-invalid=true]{color:var(--destructive)}.data-\\[orientation\\=vertical\\]\\:h-auto[data-orientation=vertical]{height:auto}.data-\\[orientation\\=vertical\\]\\:h-full[data-orientation=vertical]{height:100%}.data-\\[orientation\\=vertical\\]\\:min-h-\\[160px\\][data-orientation=vertical]{min-height:160px}.data-\\[orientation\\=vertical\\]\\:w-\\[8px\\][data-orientation=vertical]{width:8px}.data-\\[orientation\\=vertical\\]\\:w-auto[data-orientation=vertical]{width:auto}.data-\\[orientation\\=vertical\\]\\:w-full[data-orientation=vertical]{width:100%}.data-\\[orientation\\=vertical\\]\\:flex-col[data-orientation=vertical]{flex-direction:column}.data-\\[orientation\\=vertical\\]\\:px-\\[4px\\][data-orientation=vertical]{padding-inline:4px}.data-\\[orientation\\=vertical\\]\\:py-\\[8px\\][data-orientation=vertical]{padding-block:8px}.data-\\[position\\=popper\\]\\:h-\\(--radix-select-trigger-height\\)[data-position=popper]{height:var(--radix-select-trigger-height)}.data-\\[position\\=popper\\]\\:w-full[data-position=popper]{width:100%}.data-\\[position\\=popper\\]\\:min-w-\\(--radix-select-trigger-width\\)[data-position=popper]{min-width:var(--radix-select-trigger-width)}.data-\\[side\\=bottom\\]\\:inset-x-0[data-side=bottom]{inset-inline:0}.data-\\[side\\=bottom\\]\\:bottom-0[data-side=bottom]{bottom:0}.data-\\[side\\=bottom\\]\\:h-auto[data-side=bottom]{height:auto}.data-\\[side\\=bottom\\]\\:translate-y-1[data-side=bottom]{--tw-translate-y:calc(4px * 1);translate:var(--tw-translate-x) var(--tw-translate-y)}.data-\\[side\\=bottom\\]\\:slide-in-from-top-2[data-side=bottom]{--tw-enter-translate-y:calc(2*var(--spacing)*-1)}.data-\\[side\\=left\\]\\:inset-y-0[data-side=left]{inset-block:0}.data-\\[side\\=left\\]\\:left-0[data-side=left]{left:0}.data-\\[side\\=left\\]\\:h-full[data-side=left]{height:100%}.data-\\[side\\=left\\]\\:w-full[data-side=left]{width:100%}.data-\\[side\\=left\\]\\:-translate-x-1[data-side=left]{--tw-translate-x:calc(4px * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}.data-\\[side\\=left\\]\\:slide-in-from-right-2[data-side=left]{--tw-enter-translate-x:calc(2*var(--spacing))}.data-\\[side\\=right\\]\\:inset-y-0[data-side=right]{inset-block:0}.data-\\[side\\=right\\]\\:right-0[data-side=right]{right:0}.data-\\[side\\=right\\]\\:h-full[data-side=right]{height:100%}.data-\\[side\\=right\\]\\:w-full[data-side=right]{width:100%}.data-\\[side\\=right\\]\\:translate-x-1[data-side=right]{--tw-translate-x:calc(4px * 1);translate:var(--tw-translate-x) var(--tw-translate-y)}.data-\\[side\\=right\\]\\:slide-in-from-left-2[data-side=right]{--tw-enter-translate-x:calc(2*var(--spacing)*-1)}.data-\\[side\\=top\\]\\:inset-x-0[data-side=top]{inset-inline:0}.data-\\[side\\=top\\]\\:top-0[data-side=top]{top:0}.data-\\[side\\=top\\]\\:h-auto[data-side=top]{height:auto}.data-\\[side\\=top\\]\\:-translate-y-1[data-side=top]{--tw-translate-y:calc(4px * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}.data-\\[side\\=top\\]\\:slide-in-from-bottom-2[data-side=top]{--tw-enter-translate-y:calc(2*var(--spacing))}.data-\\[size\\=default\\]\\:h-8[data-size=default]{height:32px}.data-\\[size\\=default\\]\\:h-\\[18\\.4px\\][data-size=default]{height:18.4px}.data-\\[size\\=default\\]\\:w-\\[32px\\][data-size=default]{width:32px}.data-\\[size\\=lg\\]\\:h-\\[24px\\][data-size=lg]{height:24px}.data-\\[size\\=lg\\]\\:w-\\[40px\\][data-size=lg]{width:40px}.data-\\[size\\=sm\\]\\:h-7[data-size=sm]{height:28px}.data-\\[size\\=sm\\]\\:h-\\[14px\\][data-size=sm]{height:14px}.data-\\[size\\=sm\\]\\:w-\\[24px\\][data-size=sm]{width:24px}.data-\\[size\\=sm\\]\\:rounded-\\[min\\(var\\(--radius-md\\)\\,10px\\)\\][data-size=sm]{border-radius:min(var(--radius-md), 10px)}:is(.\\*\\*\\:data-\\[slot\\=accordion-trigger-icon\\]\\:ml-auto *)[data-slot=accordion-trigger-icon]{margin-left:auto}:is(.\\*\\*\\:data-\\[slot\\=accordion-trigger-icon\\]\\:size-4 *)[data-slot=accordion-trigger-icon]{width:16px;height:16px}:is(.\\*\\*\\:data-\\[slot\\=accordion-trigger-icon\\]\\:text-muted-foreground *)[data-slot=accordion-trigger-icon]{color:var(--muted-foreground)}:is(.\\*\\:data-\\[slot\\=alert-description\\]\\:text-destructive\\/90>*)[data-slot=alert-description]{color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){:is(.\\*\\:data-\\[slot\\=alert-description\\]\\:text-destructive\\/90>*)[data-slot=alert-description]{color:color-mix(in oklab, var(--destructive) 90%, transparent)}}.data-\\[slot\\=checkbox-group\\]\\:gap-3[data-slot=checkbox-group]{gap:12px}:is(.\\*\\:data-\\[slot\\=field\\]\\:p-2\\.5>*)[data-slot=field]{padding:10px}:is(.\\*\\:data-\\[slot\\=field-group\\]\\:gap-4>*)[data-slot=field-group]{gap:16px}:is(.\\*\\:data-\\[slot\\=field-label\\]\\:flex-auto>*)[data-slot=field-label]{flex:auto}:is(.\\*\\:data-\\[slot\\=select-value\\]\\:line-clamp-1>*)[data-slot=select-value]{-webkit-line-clamp:1;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}:is(.\\*\\:data-\\[slot\\=select-value\\]\\:flex>*)[data-slot=select-value]{display:flex}:is(.\\*\\:data-\\[slot\\=select-value\\]\\:items-center>*)[data-slot=select-value]{align-items:center}:is(.\\*\\:data-\\[slot\\=select-value\\]\\:gap-1\\.5>*)[data-slot=select-value]{gap:6px}.group-data-horizontal\\/toggle-group\\:data-\\[spacing\\=0\\]\\:first\\:rounded-l-lg:is(:where(.group\\/toggle-group)[data-horizontal] *)[data-spacing=\"0\"]:first-child{border-top-left-radius:var(--radius);border-bottom-left-radius:var(--radius)}.group-data-vertical\\/toggle-group\\:data-\\[spacing\\=0\\]\\:first\\:rounded-t-lg:is(:where(.group\\/toggle-group)[data-vertical] *)[data-spacing=\"0\"]:first-child{border-top-left-radius:var(--radius);border-top-right-radius:var(--radius)}.group-data-horizontal\\/toggle-group\\:data-\\[spacing\\=0\\]\\:last\\:rounded-r-lg:is(:where(.group\\/toggle-group)[data-horizontal] *)[data-spacing=\"0\"]:last-child{border-top-right-radius:var(--radius);border-bottom-right-radius:var(--radius)}.group-data-vertical\\/toggle-group\\:data-\\[spacing\\=0\\]\\:last\\:rounded-b-lg:is(:where(.group\\/toggle-group)[data-vertical] *)[data-spacing=\"0\"]:last-child{border-bottom-right-radius:var(--radius);border-bottom-left-radius:var(--radius)}.data-\\[state\\=active\\]\\:bg-background[data-state=active]{background-color:var(--background)}.data-\\[state\\=active\\]\\:text-foreground[data-state=active]{color:var(--foreground)}.group-data-\\[variant\\=default\\]\\/tabs-list\\:data-\\[state\\=active\\]\\:shadow-sm:is(:where(.group\\/tabs-list)[data-variant=default] *)[data-state=active]{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.group-data-\\[variant\\=line\\]\\/tabs-list\\:data-\\[state\\=active\\]\\:bg-transparent:is(:where(.group\\/tabs-list)[data-variant=line] *)[data-state=active]{background-color:#0000}.group-data-\\[variant\\=line\\]\\/tabs-list\\:data-\\[state\\=active\\]\\:shadow-none:is(:where(.group\\/tabs-list)[data-variant=line] *)[data-state=active]{--tw-shadow:0 0 #0000;box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.group-data-\\[variant\\=line\\]\\/tabs-list\\:data-\\[state\\=active\\]\\:after\\:opacity-100:is(:where(.group\\/tabs-list)[data-variant=line] *)[data-state=active]:after{content:var(--tw-content);opacity:1}.data-\\[state\\=checked\\]\\:translate-x-\\[calc\\(100\\%-2px\\)\\][data-state=checked]{--tw-translate-x:calc(100% - 2px);translate:var(--tw-translate-x) var(--tw-translate-y)}.data-\\[state\\=checked\\]\\:border-primary[data-state=checked]{border-color:var(--primary)}.data-\\[state\\=checked\\]\\:bg-primary[data-state=checked]{background-color:var(--primary)}.data-\\[state\\=closed\\]\\:animate-out[data-state=closed]{animation:exit var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,none)}.data-\\[state\\=closed\\]\\:fade-out-0[data-state=closed]{--tw-exit-opacity:0}.data-\\[state\\=closed\\]\\:zoom-out-95[data-state=closed]{--tw-exit-scale:.95}.data-\\[state\\=on\\]\\:bg-muted[data-state=on]{background-color:var(--muted)}.data-\\[state\\=on\\]\\:bg-primary[data-state=on]{background-color:var(--primary)}.data-\\[state\\=on\\]\\:text-primary-foreground[data-state=on]{color:var(--primary-foreground)}.data-\\[state\\=open\\]\\:animate-in[data-state=open]{animation:enter var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,none)}.data-\\[state\\=open\\]\\:fade-in-0[data-state=open]{--tw-enter-opacity:0}.data-\\[state\\=open\\]\\:zoom-in-95[data-state=open]{--tw-enter-scale:.95}.data-\\[state\\=unchecked\\]\\:translate-x-0[data-state=unchecked]{--tw-translate-x:calc(4px * 0);translate:var(--tw-translate-x) var(--tw-translate-y)}.data-\\[state\\=unchecked\\]\\:bg-input[data-state=unchecked]{background-color:var(--input)}.data-\\[state\\=unchecked\\]\\:bg-muted[data-state=unchecked]{background-color:var(--muted)}.data-\\[variant\\=label\\]\\:text-sm[data-variant=label]{font-size:14px;line-height:var(--tw-leading,20px)}.data-\\[variant\\=legend\\]\\:text-base[data-variant=legend]{font-size:16px;line-height:var(--tw-leading,24px)}.data-\\[variant\\=line\\]\\:rounded-none[data-variant=line]{border-radius:0}.group-data-horizontal\\/toggle-group\\:data-\\[spacing\\=0\\]\\:data-\\[variant\\=outline\\]\\:border-l-0:is(:where(.group\\/toggle-group)[data-horizontal] *)[data-spacing=\"0\"][data-variant=outline]{border-left-style:var(--tw-border-style);border-left-width:0}.group-data-vertical\\/toggle-group\\:data-\\[spacing\\=0\\]\\:data-\\[variant\\=outline\\]\\:border-t-0:is(:where(.group\\/toggle-group)[data-vertical] *)[data-spacing=\"0\"][data-variant=outline]{border-top-style:var(--tw-border-style);border-top-width:0}.group-data-horizontal\\/toggle-group\\:data-\\[spacing\\=0\\]\\:data-\\[variant\\=outline\\]\\:first\\:border-l:is(:where(.group\\/toggle-group)[data-horizontal] *)[data-spacing=\"0\"][data-variant=outline]:first-child{border-left-style:var(--tw-border-style);border-left-width:1px}.group-data-vertical\\/toggle-group\\:data-\\[spacing\\=0\\]\\:data-\\[variant\\=outline\\]\\:first\\:border-t:is(:where(.group\\/toggle-group)[data-vertical] *)[data-spacing=\"0\"][data-variant=outline]:first-child{border-top-style:var(--tw-border-style);border-top-width:1px}.nth-last-2\\:-mt-1:nth-last-child(2){margin-top:-4px}@media (width>=640px){.sm\\:block{display:block}.sm\\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.sm\\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.sm\\:flex-row{flex-direction:row}.sm\\:items-center{align-items:center}.sm\\:justify-between{justify-content:space-between}.sm\\:px-6{padding-inline:24px}.sm\\:text-sm\\/6{font-size:14px;line-height:24px}.data-\\[side\\=left\\]\\:sm\\:max-w-md[data-side=left],.data-\\[side\\=right\\]\\:sm\\:max-w-md[data-side=right]{max-width:448px}}@media (width>=768px){.md\\:text-sm{font-size:14px;line-height:var(--tw-leading,20px)}.md\\:text-pretty{text-wrap:pretty}}@media (width>=1024px){.lg\\:inset-x-auto{inset-inline:auto}.lg\\:top-4{top:16px}.lg\\:right-\\[calc\\(448px\\+16px\\)\\]{right:464px}.lg\\:bottom-auto{bottom:auto}.lg\\:max-h-\\[calc\\(100svh-32px\\)\\]{max-height:calc(100svh - 32px)}.lg\\:w-\\[480px\\]{width:480px}.lg\\:px-8{padding-inline:32px}}@media (width>=1280px){.xl\\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}}@container field-group (width>=448px){.\\@md\\/field-group\\:flex-row{flex-direction:row}.\\@md\\/field-group\\:items-center{align-items:center}:is(.\\@md\\/field-group\\:\\*\\:w-auto>*){width:auto}.\\@md\\/field-group\\:has-\\[\\>\\[data-slot\\=field-content\\]\\]\\:items-start:has(>[data-slot=field-content]){align-items:flex-start}:is(.\\@md\\/field-group\\:\\*\\:data-\\[slot\\=field-label\\]\\:flex-auto>*)[data-slot=field-label]{flex:auto}}.dark\\:border-input:is(.dark *){border-color:var(--input)}.dark\\:bg-destructive\\/20:is(.dark *){background-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.dark\\:bg-destructive\\/20:is(.dark *){background-color:color-mix(in oklab, var(--destructive) 20%, transparent)}}.dark\\:bg-input\\/30:is(.dark *){background-color:var(--input)}@supports (color:color-mix(in lab, red, red)){.dark\\:bg-input\\/30:is(.dark *){background-color:color-mix(in oklab, var(--input) 30%, transparent)}}.dark\\:text-muted-foreground:is(.dark *){color:var(--muted-foreground)}@media (hover:hover){.dark\\:hover\\:bg-destructive\\/30:is(.dark *):hover{background-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.dark\\:hover\\:bg-destructive\\/30:is(.dark *):hover{background-color:color-mix(in oklab, var(--destructive) 30%, transparent)}}.dark\\:hover\\:bg-input\\/50:is(.dark *):hover{background-color:var(--input)}@supports (color:color-mix(in lab, red, red)){.dark\\:hover\\:bg-input\\/50:is(.dark *):hover{background-color:color-mix(in oklab, var(--input) 50%, transparent)}}.dark\\:hover\\:bg-muted\\/50:is(.dark *):hover{background-color:var(--muted)}@supports (color:color-mix(in lab, red, red)){.dark\\:hover\\:bg-muted\\/50:is(.dark *):hover{background-color:color-mix(in oklab, var(--muted) 50%, transparent)}}.dark\\:hover\\:text-foreground:is(.dark *):hover{color:var(--foreground)}}.dark\\:focus-visible\\:ring-destructive\\/40:is(.dark *):focus-visible{--tw-ring-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.dark\\:focus-visible\\:ring-destructive\\/40:is(.dark *):focus-visible{--tw-ring-color:color-mix(in oklab, var(--destructive) 40%, transparent)}}.dark\\:disabled\\:bg-input\\/80:is(.dark *):disabled{background-color:var(--input)}@supports (color:color-mix(in lab, red, red)){.dark\\:disabled\\:bg-input\\/80:is(.dark *):disabled{background-color:color-mix(in oklab, var(--input) 80%, transparent)}}.dark\\:has-data-checked\\:border-primary\\/20:is(.dark *):has([data-checked]){border-color:var(--primary)}@supports (color:color-mix(in lab, red, red)){.dark\\:has-data-checked\\:border-primary\\/20:is(.dark *):has([data-checked]){border-color:color-mix(in oklab, var(--primary) 20%, transparent)}}.dark\\:has-data-checked\\:bg-primary\\/10:is(.dark *):has([data-checked]){background-color:var(--primary)}@supports (color:color-mix(in lab, red, red)){.dark\\:has-data-checked\\:bg-primary\\/10:is(.dark *):has([data-checked]){background-color:color-mix(in oklab, var(--primary) 10%, transparent)}}.dark\\:aria-invalid\\:border-destructive\\/50:is(.dark *)[aria-invalid=true]{border-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.dark\\:aria-invalid\\:border-destructive\\/50:is(.dark *)[aria-invalid=true]{border-color:color-mix(in oklab, var(--destructive) 50%, transparent)}}.dark\\:aria-invalid\\:ring-destructive\\/40:is(.dark *)[aria-invalid=true]{--tw-ring-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.dark\\:aria-invalid\\:ring-destructive\\/40:is(.dark *)[aria-invalid=true]{--tw-ring-color:color-mix(in oklab, var(--destructive) 40%, transparent)}}.dark\\:data-\\[state\\=active\\]\\:border-input:is(.dark *)[data-state=active]{border-color:var(--input)}.dark\\:data-\\[state\\=active\\]\\:bg-input\\/30:is(.dark *)[data-state=active]{background-color:var(--input)}@supports (color:color-mix(in lab, red, red)){.dark\\:data-\\[state\\=active\\]\\:bg-input\\/30:is(.dark *)[data-state=active]{background-color:color-mix(in oklab, var(--input) 30%, transparent)}}.dark\\:data-\\[state\\=active\\]\\:text-foreground:is(.dark *)[data-state=active]{color:var(--foreground)}.dark\\:group-data-\\[variant\\=line\\]\\/tabs-list\\:data-\\[state\\=active\\]\\:border-transparent:is(.dark *):is(:where(.group\\/tabs-list)[data-variant=line] *)[data-state=active]{border-color:#0000}.dark\\:group-data-\\[variant\\=line\\]\\/tabs-list\\:data-\\[state\\=active\\]\\:bg-transparent:is(.dark *):is(:where(.group\\/tabs-list)[data-variant=line] *)[data-state=active]{background-color:#0000}.dark\\:data-\\[state\\=checked\\]\\:bg-primary-foreground:is(.dark *)[data-state=checked]{background-color:var(--primary-foreground)}.dark\\:data-\\[state\\=unchecked\\]\\:bg-foreground:is(.dark *)[data-state=unchecked]{background-color:var(--foreground)}.dark\\:data-\\[state\\=unchecked\\]\\:bg-input\\/80:is(.dark *)[data-state=unchecked]{background-color:var(--input)}@supports (color:color-mix(in lab, red, red)){.dark\\:data-\\[state\\=unchecked\\]\\:bg-input\\/80:is(.dark *)[data-state=unchecked]{background-color:color-mix(in oklab, var(--input) 80%, transparent)}}.\\[\\&_a\\]\\:underline a{text-decoration-line:underline}.\\[\\&_a\\]\\:underline-offset-3 a{text-underline-offset:3px}.\\[\\&_a\\]\\:underline-offset-4 a{text-underline-offset:4px}@media (hover:hover){.\\[\\&_a\\]\\:hover\\:text-foreground a:hover{color:var(--foreground)}}.\\[\\&_p\\:not\\(\\:last-child\\)\\]\\:mb-4 p:not(:last-child){margin-bottom:16px}.\\[\\&_svg\\]\\:pointer-events-none svg{pointer-events:none}.\\[\\&_svg\\]\\:shrink-0 svg{flex-shrink:0}.\\[\\&_svg\\:not\\(\\[class\\*\\=\\'size-\\'\\]\\)\\]\\:size-3 svg:not([class*=size-]){width:12px;height:12px}.\\[\\&_svg\\:not\\(\\[class\\*\\=\\'size-\\'\\]\\)\\]\\:size-3\\.5 svg:not([class*=size-]){width:14px;height:14px}.\\[\\&_svg\\:not\\(\\[class\\*\\=\\'size-\\'\\]\\)\\]\\:size-4 svg:not([class*=size-]){width:16px;height:16px}@media (hover:hover){.\\[a\\]\\:hover\\:bg-destructive\\/20:is(a):hover{background-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.\\[a\\]\\:hover\\:bg-destructive\\/20:is(a):hover{background-color:color-mix(in oklab, var(--destructive) 20%, transparent)}}.\\[a\\]\\:hover\\:bg-muted:is(a):hover{background-color:var(--muted)}.\\[a\\]\\:hover\\:bg-primary\\/80:is(a):hover{background-color:var(--primary)}@supports (color:color-mix(in lab, red, red)){.\\[a\\]\\:hover\\:bg-primary\\/80:is(a):hover{background-color:color-mix(in oklab, var(--primary) 80%, transparent)}}.\\[a\\]\\:hover\\:bg-secondary\\/80:is(a):hover{background-color:var(--secondary)}@supports (color:color-mix(in lab, red, red)){.\\[a\\]\\:hover\\:bg-secondary\\/80:is(a):hover{background-color:color-mix(in oklab, var(--secondary) 80%, transparent)}}.\\[a\\]\\:hover\\:text-muted-foreground:is(a):hover{color:var(--muted-foreground)}}:is(.\\*\\:\\[span\\]\\:last\\:flex>*):is(span):last-child{display:flex}:is(.\\*\\:\\[span\\]\\:last\\:items-center>*):is(span):last-child{align-items:center}:is(.\\*\\:\\[span\\]\\:last\\:gap-2>*):is(span):last-child{gap:8px}:is(.\\*\\:\\[svg\\]\\:row-span-2>*):is(svg){grid-row:span 2/span 2}:is(.\\*\\:\\[svg\\]\\:translate-y-0\\.5>*):is(svg){--tw-translate-y:calc(4px * .5);translate:var(--tw-translate-x) var(--tw-translate-y)}:is(.\\*\\:\\[svg\\]\\:text-current>*):is(svg){color:currentColor}:is(.\\*\\:\\[svg\\:not\\(\\[class\\*\\=\\'size-\\'\\]\\)\\]\\:size-4>*):is(svg:not([class*=size-])){width:16px;height:16px}.\\[\\&\\>\\.sr-only\\]\\:w-auto>.sr-only{width:auto}:is(.has-\\[\\>\\[data-slot\\=field-content\\]\\]\\:\\[\\&\\>\\[role\\=checkbox\\]\\,\\[role\\=radio\\]\\]\\:mt-px:has(>[data-slot=field-content])>[role=checkbox],.has-\\[\\>\\[data-slot\\=field-content\\]\\]\\:\\[\\&\\>\\[role\\=checkbox\\]\\,\\[role\\=radio\\]\\]\\:mt-px:has(>[data-slot=field-content]) [role=radio]){margin-top:1px}@container field-group (width>=448px){:is(.\\@md\\/field-group\\:has-\\[\\>\\[data-slot\\=field-content\\]\\]\\:\\[\\&\\>\\[role\\=checkbox\\]\\,\\[role\\=radio\\]\\]\\:mt-px:has(>[data-slot=field-content])>[role=checkbox],.\\@md\\/field-group\\:has-\\[\\>\\[data-slot\\=field-content\\]\\]\\:\\[\\&\\>\\[role\\=checkbox\\]\\,\\[role\\=radio\\]\\]\\:mt-px:has(>[data-slot=field-content]) [role=radio]){margin-top:1px}}.\\[\\&\\>a\\]\\:underline>a{text-decoration-line:underline}.\\[\\&\\>a\\]\\:underline-offset-4>a{text-underline-offset:4px}.\\[\\&\\>a\\:hover\\]\\:text-primary>a:hover{color:var(--primary)}.\\[\\&\\>svg\\]\\:pointer-events-none>svg{pointer-events:none}.\\[\\&\\>svg\\]\\:size-3\\!>svg{width:12px!important;height:12px!important}[data-variant=legend]+.\\[\\[data-variant\\=legend\\]\\+\\&\\]\\:-mt-1\\.5{margin-top:-6px}.vehicle-garage-theme .garage-tab-list,.demo-theme-editor .garage-tab-list{height:auto;min-height:calc((var(--vehicle-garage-font-size,14px) * 1.35) + (var(--vehicle-garage-padding,8px) * 1.5));padding:max(3px, calc(var(--vehicle-garage-padding,8px) * .35));border:1px solid var(--border);border-color:var(--border)}@supports (color:color-mix(in lab, red, red)){.vehicle-garage-theme .garage-tab-list,.demo-theme-editor .garage-tab-list{border-color:color-mix(in oklab, var(--border) 55%, transparent)}}.vehicle-garage-theme .garage-tab-list,.demo-theme-editor .garage-tab-list{background-color:var(--muted);background-color:var(--foreground)}@supports (color:color-mix(in lab, red, red)){.vehicle-garage-theme .garage-tab-list,.demo-theme-editor .garage-tab-list{background-color:color-mix(in oklab, var(--foreground) 9%, transparent)}}.vehicle-garage-theme .garage-tab-trigger,.demo-theme-editor .garage-tab-trigger{height:auto;min-height:calc((var(--vehicle-garage-font-size,14px) * 1.25) + (var(--vehicle-garage-padding,8px) * 1.1));padding-block:calc(var(--vehicle-garage-padding,8px) * .55);padding-inline:calc(var(--vehicle-garage-padding,8px) * .9);line-height:1.15}.vehicle-garage-theme .garage-tab-trigger[data-state=active],.demo-theme-editor .garage-tab-trigger[data-state=active]{border-color:var(--primary);background-color:var(--primary);color:var(--primary-foreground)}.vehicle-garage-theme .garage-tab-scroll{margin-inline:-20px;padding:22px 20px 20px;scroll-padding:22px 20px 20px}.vehicle-garage-theme .vehicle-garage-icon{aspect-ratio:1;object-fit:contain;flex-shrink:0;width:16px;height:16px}.vehicle-garage-theme [data-slot=input],.vehicle-garage-theme [data-slot=select-trigger]{box-shadow:var(--vehicle-garage-input-shadow,none)}.vehicle-garage-theme .vehicle-garage-combobox-input{appearance:none;outline-offset:0!important;box-shadow:var(--vehicle-garage-input-shadow,none)!important;outline:0!important}.vehicle-garage-theme .vehicle-garage-combobox-input:focus,.vehicle-garage-theme .vehicle-garage-combobox-input:focus-visible{border-color:var(--ring)!important;outline-offset:0!important;box-shadow:inset 0 0 0 max(1px, var(--vehicle-garage-input-border-width,1px)) var(--ring)!important;outline:0!important}.vehicle-garage-theme .vehicle-garage-combobox-content{outline-offset:0!important;outline:0!important;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -2px #0000001a!important}.vehicle-garage-theme .vehicle-garage-plate-input{appearance:none;border-color:var(--input);border-color:var(--input)}@supports (color:color-mix(in lab, red, red)){.vehicle-garage-theme .vehicle-garage-plate-input{border-color:color-mix(in oklab, var(--input) 68%, transparent)}}.vehicle-garage-theme .vehicle-garage-plate-input{outline-offset:0!important;box-shadow:none!important;outline:0!important}.vehicle-garage-theme .vehicle-garage-plate-input:focus,.vehicle-garage-theme .vehicle-garage-plate-input:focus-visible{border-color:var(--input);border-color:var(--input)}@supports (color:color-mix(in lab, red, red)){.vehicle-garage-theme .vehicle-garage-plate-input:focus,.vehicle-garage-theme .vehicle-garage-plate-input:focus-visible{border-color:color-mix(in oklab, var(--input) 100%, transparent)}}.vehicle-garage-theme .vehicle-garage-plate-input:focus,.vehicle-garage-theme .vehicle-garage-plate-input:focus-visible{outline-offset:0!important;box-shadow:inset 0 0 0 max(1px, var(--vehicle-garage-plate-input-border-width,6px)) var(--input)!important;outline:0!important}.vehicle-garage-theme .vehicle-garage-plate-input:disabled{box-shadow:none!important}.vehicle-garage-plate-input{height:var(--vehicle-garage-plate-input-height,130px);min-height:var(--vehicle-garage-plate-input-height,130px);box-sizing:border-box;border-width:var(--vehicle-garage-plate-input-border-width,6px);border-radius:var(--vehicle-garage-plate-input-radius,calc(var(--radius) + 6px));font-family:var(--vehicle-garage-plate-font,var(--font-license));font-size:var(--vehicle-garage-plate-input-fit-font-size,var(--vehicle-garage-plate-input-font-size,60px));line-height:var(--vehicle-garage-plate-input-line-height,1.12);letter-spacing:var(--vehicle-garage-plate-input-letter-spacing,1.5px);text-transform:uppercase;caret-color:currentColor;padding:20px 24px 8px}.vehicle-garage-plate-input::placeholder{letter-spacing:var(--vehicle-garage-plate-placeholder-letter-spacing,var(--vehicle-garage-plate-input-letter-spacing,1.5px))}@media (width>=768px){.vehicle-garage-plate-input{height:var(--vehicle-garage-plate-input-height-md,150px);min-height:var(--vehicle-garage-plate-input-height-md,150px);border-width:var(--vehicle-garage-plate-input-border-width-md,8px);font-size:var(--vehicle-garage-plate-input-fit-font-size,var(--vehicle-garage-plate-input-font-size-md,75px));padding-top:20px}}}@property --tw-animation-delay{syntax:\"*\";inherits:false;initial-value:0s}@property --tw-animation-direction{syntax:\"*\";inherits:false;initial-value:normal}@property --tw-animation-duration{syntax:\"*\";inherits:false}@property --tw-animation-fill-mode{syntax:\"*\";inherits:false;initial-value:none}@property --tw-animation-iteration-count{syntax:\"*\";inherits:false;initial-value:1}@property --tw-enter-blur{syntax:\"*\";inherits:false;initial-value:0}@property --tw-enter-opacity{syntax:\"*\";inherits:false;initial-value:1}@property --tw-enter-rotate{syntax:\"*\";inherits:false;initial-value:0}@property --tw-enter-scale{syntax:\"*\";inherits:false;initial-value:1}@property --tw-enter-translate-x{syntax:\"*\";inherits:false;initial-value:0}@property --tw-enter-translate-y{syntax:\"*\";inherits:false;initial-value:0}@property --tw-exit-blur{syntax:\"*\";inherits:false;initial-value:0}@property --tw-exit-opacity{syntax:\"*\";inherits:false;initial-value:1}@property --tw-exit-rotate{syntax:\"*\";inherits:false;initial-value:0}@property --tw-exit-scale{syntax:\"*\";inherits:false;initial-value:1}@property --tw-exit-translate-x{syntax:\"*\";inherits:false;initial-value:0}@property --tw-exit-translate-y{syntax:\"*\";inherits:false;initial-value:0}@font-face{font-family:License Plate;src:url(https://res.cloudinary.com/proex/raw/upload/v1730709140/partbot/PartbotPlate.woff2)format(\"woff2\");font-weight:400;font-style:normal;font-display:swap}:root{--background:oklch(98.5% .004 95);--foreground:oklch(20% .012 85);--card:oklch(99% .003 95);--card-foreground:oklch(20% .012 85);--popover:oklch(99% .003 95);--popover-foreground:oklch(20% .012 85);--primary:oklch(49% .12 242);--primary-foreground:oklch(98.5% .004 95);--secondary:oklch(95% .01 95);--secondary-foreground:oklch(27% .02 85);--muted:oklch(95% .01 95);--muted-foreground:oklch(53% .016 85);--accent:oklch(93% .018 230);--accent-foreground:oklch(25% .025 242);--destructive:oklch(57.7% .245 27.325);--border:oklch(89% .012 85);--input:oklch(89% .012 85);--ring:oklch(67% .1 242);--chart-1:oklch(78% .13 242);--chart-2:oklch(66% .12 204);--chart-3:oklch(56% .08 170);--chart-4:oklch(66% .15 60);--chart-5:oklch(62% .18 30);--radius:10px;--sidebar:oklch(98.5% .004 95);--sidebar-foreground:oklch(20% .012 85);--sidebar-primary:oklch(49% .12 242);--sidebar-primary-foreground:oklch(98.5% .004 95);--sidebar-accent:oklch(93% .018 230);--sidebar-accent-foreground:oklch(25% .025 242);--sidebar-border:oklch(89% .012 85);--sidebar-ring:oklch(67% .1 242)}.dark{--background:oklch(20% .012 255);--foreground:oklch(97.5% .004 95);--card:oklch(24% .013 255);--card-foreground:oklch(97.5% .004 95);--popover:oklch(24% .013 255);--popover-foreground:oklch(97.5% .004 95);--primary:oklch(72% .11 220);--primary-foreground:oklch(18% .01 255);--secondary:oklch(30% .01 255);--secondary-foreground:oklch(97.5% .004 95);--muted:oklch(30% .01 255);--muted-foreground:oklch(75% .012 95);--accent:oklch(35% .03 220);--accent-foreground:oklch(98% .004 95);--destructive:oklch(70.4% .191 22.216);--border:oklch(100% 0 0/.11);--input:oklch(100% 0 0/.14);--ring:oklch(72% .11 220);--chart-1:oklch(72% .11 220);--chart-2:oklch(66% .1 185);--chart-3:oklch(68% .11 145);--chart-4:oklch(78% .12 82);--chart-5:oklch(72% .15 35);--sidebar:oklch(24% .013 255);--sidebar-foreground:oklch(97.5% .004 95);--sidebar-primary:oklch(72% .11 220);--sidebar-primary-foreground:oklch(18% .01 255);--sidebar-accent:oklch(35% .03 220);--sidebar-accent-foreground:oklch(98% .004 95);--sidebar-border:oklch(100% 0 0/.11);--sidebar-ring:oklch(72% .11 220)}@keyframes garage-sheet-in-right{0%{transform:translate(100%)}to{transform:translate(0)}}@keyframes garage-sheet-out-right{0%{transform:translate(0)}to{transform:translate(100%)}}@keyframes garage-sheet-in-left{0%{transform:translate(-100%)}to{transform:translate(0)}}@keyframes garage-sheet-out-left{0%{transform:translate(0)}to{transform:translate(-100%)}}@keyframes garage-sheet-in-top{0%{transform:translateY(-100%)}to{transform:translate(0)}}@keyframes garage-sheet-out-top{0%{transform:translate(0)}to{transform:translateY(-100%)}}@keyframes garage-sheet-in-bottom{0%{transform:translateY(100%)}to{transform:translate(0)}}@keyframes garage-sheet-out-bottom{0%{transform:translate(0)}to{transform:translateY(100%)}}@keyframes garage-sheet-overlay-in{0%{opacity:0}to{opacity:1}}@keyframes garage-sheet-overlay-out{0%{opacity:1}to{opacity:0}}.vehicle-garage-theme,.vehicle-garage-theme *{letter-spacing:inherit;text-transform:none;font-style:normal}.vehicle-garage-theme{letter-spacing:0}.vehicle-garage-theme [data-slot=sheet-title]{font-family:var(--vehicle-garage-font-family,var(--font-sans));letter-spacing:0;text-transform:none;margin:0;font-size:16px;font-style:normal;font-weight:500;line-height:24px}.vehicle-garage-theme .vehicle-garage-plate-input{letter-spacing:var(--vehicle-garage-plate-input-letter-spacing,1.5px);text-transform:uppercase}.vehicle-garage-theme .vehicle-garage-plate-input::placeholder{letter-spacing:var(--vehicle-garage-plate-placeholder-letter-spacing,var(--vehicle-garage-plate-input-letter-spacing,1.5px))}@property --tw-rotate-x{syntax:\"*\";inherits:false}@property --tw-rotate-y{syntax:\"*\";inherits:false}@property --tw-rotate-z{syntax:\"*\";inherits:false}@property --tw-skew-x{syntax:\"*\";inherits:false}@property --tw-skew-y{syntax:\"*\";inherits:false}@property --tw-border-style{syntax:\"*\";inherits:false;initial-value:solid}@property --tw-leading{syntax:\"*\";inherits:false}@property --tw-font-weight{syntax:\"*\";inherits:false}@property --tw-tracking{syntax:\"*\";inherits:false}@property --tw-shadow{syntax:\"*\";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:\"*\";inherits:false}@property --tw-shadow-alpha{syntax:\"<percentage>\";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:\"*\";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:\"*\";inherits:false}@property --tw-inset-shadow-alpha{syntax:\"<percentage>\";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:\"*\";inherits:false}@property --tw-ring-shadow{syntax:\"*\";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:\"*\";inherits:false}@property --tw-inset-ring-shadow{syntax:\"*\";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:\"*\";inherits:false}@property --tw-ring-offset-width{syntax:\"<length>\";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:\"*\";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:\"*\";inherits:false;initial-value:0 0 #0000}@property --tw-outline-style{syntax:\"*\";inherits:false;initial-value:solid}@property --tw-blur{syntax:\"*\";inherits:false}@property --tw-brightness{syntax:\"*\";inherits:false}@property --tw-contrast{syntax:\"*\";inherits:false}@property --tw-grayscale{syntax:\"*\";inherits:false}@property --tw-hue-rotate{syntax:\"*\";inherits:false}@property --tw-invert{syntax:\"*\";inherits:false}@property --tw-opacity{syntax:\"*\";inherits:false}@property --tw-saturate{syntax:\"*\";inherits:false}@property --tw-sepia{syntax:\"*\";inherits:false}@property --tw-drop-shadow{syntax:\"*\";inherits:false}@property --tw-drop-shadow-color{syntax:\"*\";inherits:false}@property --tw-drop-shadow-alpha{syntax:\"<percentage>\";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:\"*\";inherits:false}@property --tw-duration{syntax:\"*\";inherits:false}@property --tw-content{syntax:\"*\";inherits:false;initial-value:\"\"}@property --tw-translate-x{syntax:\"*\";inherits:false;initial-value:0}@property --tw-translate-y{syntax:\"*\";inherits:false;initial-value:0}@property --tw-translate-z{syntax:\"*\";inherits:false;initial-value:0}@keyframes spin{to{transform:rotate(360deg)}}@keyframes enter{0%{opacity:var(--tw-enter-opacity,1);transform:translate3d(var(--tw-enter-translate-x,0),var(--tw-enter-translate-y,0),0)scale3d(var(--tw-enter-scale,1),var(--tw-enter-scale,1),var(--tw-enter-scale,1))rotate(var(--tw-enter-rotate,0));filter:blur(var(--tw-enter-blur,0))}}@keyframes exit{to{opacity:var(--tw-exit-opacity,1);transform:translate3d(var(--tw-exit-translate-x,0),var(--tw-exit-translate-y,0),0)scale3d(var(--tw-exit-scale,1),var(--tw-exit-scale,1),var(--tw-exit-scale,1))rotate(var(--tw-exit-rotate,0));filter:blur(var(--tw-exit-blur,0))}}@keyframes accordion-down{0%{height:0}to{height:var(--radix-accordion-content-height,var(--bits-accordion-content-height,var(--reka-accordion-content-height,var(--kb-accordion-content-height,var(--ngp-accordion-content-height,auto)))))}}@keyframes accordion-up{0%{height:var(--radix-accordion-content-height,var(--bits-accordion-content-height,var(--reka-accordion-content-height,var(--kb-accordion-content-height,var(--ngp-accordion-content-height,auto)))))}to{height:0}}";
|
|
11210
11213
|
//#endregion
|
|
11211
11214
|
//#region src/components/vehicle-garage/portal-styles.ts
|
|
11212
|
-
function
|
|
11215
|
+
function wh(e, t, n) {
|
|
11213
11216
|
let r = t.querySelector(`style[${n}=""]`);
|
|
11214
|
-
return r || (r = e.createElement("style"), r.setAttribute(n, ""), t.append(r)), r.textContent =
|
|
11215
|
-
}
|
|
11216
|
-
function wh(e) {
|
|
11217
|
-
Ch(e, e.head ?? e.documentElement, "data-vehicle-garage-global-style");
|
|
11217
|
+
return r || (r = e.createElement("style"), r.setAttribute(n, ""), t.append(r)), r.textContent = Ch, r;
|
|
11218
11218
|
}
|
|
11219
11219
|
function Th(e) {
|
|
11220
|
-
|
|
11220
|
+
wh(e, e.head ?? e.documentElement, "data-vehicle-garage-global-style");
|
|
11221
11221
|
}
|
|
11222
|
-
function Eh(e
|
|
11223
|
-
|
|
11224
|
-
return n.setAttribute("data-vehicle-garage-portal-root", ""), n.classList.add("vehicle-garage-theme"), n.style.setProperty("display", "block", "important"), n.style.setProperty("visibility", "visible", "important"), n.style.setProperty("pointer-events", "auto", "important"), Dh(n, t), e.body.append(n), n;
|
|
11222
|
+
function Eh(e) {
|
|
11223
|
+
wh(e.ownerDocument, e, "data-vehicle-garage-style");
|
|
11225
11224
|
}
|
|
11226
11225
|
function Dh(e, t) {
|
|
11226
|
+
let n = e.createElement("div");
|
|
11227
|
+
return n.setAttribute("data-vehicle-garage-portal-root", ""), n.classList.add("vehicle-garage-theme"), n.style.setProperty("display", "block", "important"), n.style.setProperty("visibility", "visible", "important"), n.style.setProperty("pointer-events", "auto", "important"), Oh(n, t), e.body.append(n), n;
|
|
11228
|
+
}
|
|
11229
|
+
function Oh(e, t) {
|
|
11227
11230
|
e.classList.add("vehicle-garage-theme"), e.removeAttribute("style"), e.style.setProperty("display", "block", "important"), e.style.setProperty("visibility", "visible", "important"), e.style.setProperty("pointer-events", "auto", "important");
|
|
11228
11231
|
let n = Yc(t);
|
|
11229
11232
|
n && Object.entries(n).forEach(([t, n]) => {
|
|
@@ -11232,7 +11235,7 @@ function Dh(e, t) {
|
|
|
11232
11235
|
}
|
|
11233
11236
|
//#endregion
|
|
11234
11237
|
//#region src/components/vehicle-garage/VehicleGarageShadowWrapper.tsx
|
|
11235
|
-
var
|
|
11238
|
+
var kh = r(function(e, t) {
|
|
11236
11239
|
let n = l(null), r = l(null), i = l(null), [s, d] = u(null), [f, m] = u(null), g = c(() => ({
|
|
11237
11240
|
buttonBorderRadius: e.buttonBorderRadius,
|
|
11238
11241
|
buttonColor: e.buttonColor,
|
|
@@ -11281,23 +11284,23 @@ var Oh = r(function(e, t) {
|
|
|
11281
11284
|
}), [e]), a(() => {
|
|
11282
11285
|
if (!n.current) return;
|
|
11283
11286
|
let e = n.current, t = e.shadowRoot ?? e.attachShadow({ mode: "open" });
|
|
11284
|
-
|
|
11287
|
+
Th(document), Eh(t);
|
|
11285
11288
|
let a = t.querySelector("[data-vehicle-garage-mount=\"\"]");
|
|
11286
11289
|
a || (a = document.createElement("div"), a.setAttribute("data-vehicle-garage-mount", ""), t.append(a));
|
|
11287
11290
|
let o = r.current;
|
|
11288
|
-
return o || (o =
|
|
11291
|
+
return o || (o = Dh(document, i.current), r.current = o), d(a), m(o), () => {
|
|
11289
11292
|
r.current?.remove(), r.current = null, d(null), m(null);
|
|
11290
11293
|
};
|
|
11291
11294
|
}, []), a(() => {
|
|
11292
|
-
r.current &&
|
|
11295
|
+
r.current && Oh(r.current, g);
|
|
11293
11296
|
}, [g]), /* @__PURE__ */ h("div", {
|
|
11294
11297
|
ref: n,
|
|
11295
|
-
children: s ? p(/* @__PURE__ */ h(
|
|
11298
|
+
children: s ? p(/* @__PURE__ */ h(Sh, {
|
|
11296
11299
|
...e,
|
|
11297
11300
|
portalContainer: f
|
|
11298
11301
|
}), s) : null
|
|
11299
11302
|
});
|
|
11300
|
-
}),
|
|
11303
|
+
}), Ah = "0.1.15", jh = new Map([
|
|
11301
11304
|
["show-garage-icon", "showGarageIcon"],
|
|
11302
11305
|
["garage-icon-url", "garageIconUrl"],
|
|
11303
11306
|
["show-branding", "showBranding"],
|
|
@@ -11305,21 +11308,21 @@ var Oh = r(function(e, t) {
|
|
|
11305
11308
|
["show-overlay", "showOverlay"],
|
|
11306
11309
|
["hide-overlay", "hideOverlay"]
|
|
11307
11310
|
]);
|
|
11308
|
-
function jh(e) {
|
|
11309
|
-
return Ah.get(e) || e.replace(/^data-/, "").replace(/-([a-z])/g, (e, t) => t.toUpperCase());
|
|
11310
|
-
}
|
|
11311
11311
|
function Mh(e) {
|
|
11312
|
-
return e
|
|
11312
|
+
return jh.get(e) || e.replace(/^data-/, "").replace(/-([a-z])/g, (e, t) => t.toUpperCase());
|
|
11313
11313
|
}
|
|
11314
11314
|
function Nh(e) {
|
|
11315
|
+
return e === "true" ? !0 : e === "false" ? !1 : e;
|
|
11316
|
+
}
|
|
11317
|
+
function Ph(e) {
|
|
11315
11318
|
let t = {};
|
|
11316
11319
|
return Array.from(e.attributes).forEach(({ name: e, value: n }) => {
|
|
11317
|
-
!e.startsWith("data-") && !
|
|
11320
|
+
!e.startsWith("data-") && !jh.has(e) || (t[Mh(e)] = Nh(n));
|
|
11318
11321
|
}), t;
|
|
11319
11322
|
}
|
|
11320
|
-
function
|
|
11323
|
+
function Fh() {
|
|
11321
11324
|
if (typeof window > "u" || customElements.get("vehicle-garage") !== void 0) return;
|
|
11322
|
-
console.log(`GRID Vehicle Fitment v ${
|
|
11325
|
+
console.log(`GRID Vehicle Fitment v ${Ah}`);
|
|
11323
11326
|
class e extends HTMLElement {
|
|
11324
11327
|
root = null;
|
|
11325
11328
|
controls = null;
|
|
@@ -11328,9 +11331,9 @@ function Ph() {
|
|
|
11328
11331
|
connectedCallback() {
|
|
11329
11332
|
if (this.root) return;
|
|
11330
11333
|
let e = this.attachShadow({ mode: "open" }), t = document.createElement("div");
|
|
11331
|
-
|
|
11332
|
-
let { triggerSelector: n, ...r } =
|
|
11333
|
-
this.externalTriggerCleanup = this.connectExternalTriggers(n), this.portalRoot =
|
|
11334
|
+
Th(document), Eh(e), e.append(t);
|
|
11335
|
+
let { triggerSelector: n, ...r } = Ph(this);
|
|
11336
|
+
this.externalTriggerCleanup = this.connectExternalTriggers(n), this.portalRoot = Dh(document, r);
|
|
11334
11337
|
let i = () => {
|
|
11335
11338
|
let [e, t] = u(!1);
|
|
11336
11339
|
return a(() => {
|
|
@@ -11339,7 +11342,7 @@ function Ph() {
|
|
|
11339
11342
|
close: () => t(!1),
|
|
11340
11343
|
toggle: () => t((e) => !e)
|
|
11341
11344
|
};
|
|
11342
|
-
}, []), /* @__PURE__ */ h(
|
|
11345
|
+
}, []), /* @__PURE__ */ h(Sh, {
|
|
11343
11346
|
...r,
|
|
11344
11347
|
isOpen: e,
|
|
11345
11348
|
onOpenChange: t,
|
|
@@ -11381,8 +11384,8 @@ function Ph() {
|
|
|
11381
11384
|
}
|
|
11382
11385
|
//#endregion
|
|
11383
11386
|
//#region src/index.ts
|
|
11384
|
-
var
|
|
11385
|
-
|
|
11386
|
-
var
|
|
11387
|
+
var Ih = v;
|
|
11388
|
+
Fh();
|
|
11389
|
+
var Lh = kh;
|
|
11387
11390
|
//#endregion
|
|
11388
|
-
export {
|
|
11391
|
+
export { kh as VehicleGarage, Sh as VehicleGarageRaw, Lh as default, Ih as vehicleGarageCssUrl };
|