@tailor-platform/app-shell 1.19.0 → 1.20.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (46) hide show
  1. package/dist/app-shell-core.css +2 -2
  2. package/dist/app-shell.d.ts +807 -130
  3. package/dist/app-shell.js +12419 -10930
  4. package/dist/{appshell-DQTz-QwK.js → appshell-B4QkQvXF.js} +377 -360
  5. package/dist/fonts/inter.css +7 -7
  6. package/dist/fonts/noto-sans-jp.css +116 -116
  7. package/dist/testing.d.ts +119 -89
  8. package/dist/testing.js +1 -1
  9. package/dist/vite-plugin.d.ts +119 -89
  10. package/package.json +10 -8
  11. package/skills/app-shell-patterns/SKILL.md +4 -3
  12. package/skills/app-shell-patterns/references/api/create-ai-gateway-client.md +32 -2
  13. package/skills/app-shell-patterns/references/api/define-module.md +5 -5
  14. package/skills/app-shell-patterns/references/api/router/use-params.md +2 -2
  15. package/skills/app-shell-patterns/references/api/use-ai-chat.md +46 -8
  16. package/skills/app-shell-patterns/references/api/use-app-shell-config.md +4 -4
  17. package/skills/app-shell-patterns/references/api/use-app-shell-data.md +5 -5
  18. package/skills/app-shell-patterns/references/api/use-app-shell.md +2 -2
  19. package/skills/app-shell-patterns/references/api/use-auth.md +3 -3
  20. package/skills/app-shell-patterns/references/api/use-route-error.md +12 -12
  21. package/skills/app-shell-patterns/references/components/action-panel.md +4 -2
  22. package/skills/app-shell-patterns/references/components/activity-card.md +3 -3
  23. package/skills/app-shell-patterns/references/components/ai-chat.md +37 -3
  24. package/skills/app-shell-patterns/references/components/app-shell.md +6 -5
  25. package/skills/app-shell-patterns/references/components/card.md +2 -2
  26. package/skills/app-shell-patterns/references/components/data-table.md +87 -31
  27. package/skills/app-shell-patterns/references/components/date-picker.md +2 -2
  28. package/skills/app-shell-patterns/references/components/default-sidebar.md +2 -2
  29. package/skills/app-shell-patterns/references/components/dialog.md +8 -0
  30. package/skills/app-shell-patterns/references/components/filter-rail.md +10 -3
  31. package/skills/app-shell-patterns/references/components/form.md +5 -5
  32. package/skills/app-shell-patterns/references/components/global-header-layout.md +31 -8
  33. package/skills/app-shell-patterns/references/components/layout.md +24 -17
  34. package/skills/app-shell-patterns/references/components/select.md +8 -0
  35. package/skills/app-shell-patterns/references/components/sidebar-group.md +9 -7
  36. package/skills/app-shell-patterns/references/components/sidebar-layout.md +74 -11
  37. package/skills/app-shell-patterns/references/components/sidebar-section.md +8 -8
  38. package/skills/app-shell-patterns/references/components/tabs.md +32 -2
  39. package/skills/app-shell-patterns/references/components/tree.md +342 -0
  40. package/skills/app-shell-patterns/references/components/with-guard.md +5 -5
  41. package/skills/app-shell-patterns/references/concepts/authentication.md +1 -1
  42. package/skills/app-shell-patterns/references/concepts/routing-navigation.md +3 -3
  43. package/skills/app-shell-patterns/references/concepts/styling-theming.md +13 -13
  44. package/skills/app-shell-patterns/references/migrations.md +20 -0
  45. package/skills/app-shell-patterns/references/pages/document-detail.md +8 -12
  46. package/skills/app-shell-patterns/references/patterns/interaction-multi-select.md +1 -1
@@ -10,11 +10,12 @@ import { Fragment as M, jsx as N, jsxs as P } from "react/jsx-runtime";
10
10
  import { AlertCircle as ee, ChevronRight as te, HouseIcon as ne, SearchIcon as re, Table as ie, XIcon as ae } from "lucide-react";
11
11
  import { getLocalTimeZone as oe, now as se, today as ce } from "@internationalized/date";
12
12
  import { RouterProvider as le } from "react-router/dom";
13
- import { Toaster as ue } from "sonner";
13
+ import { createPortal as ue } from "react-dom";
14
+ import { Toaster as de } from "sonner";
14
15
  import { Dialog as F } from "@base-ui/react/dialog";
15
- import { parsePath as de } from "@tailor-platform/vite-plugin-app-shell/parser";
16
+ import { parsePath as fe } from "@tailor-platform/vite-plugin-app-shell/parser";
16
17
  //#region src/lib/utils.ts
17
- var fe = j({ extend: { classGroups: { "font-size": [{ text: [
18
+ var pe = j({ extend: { classGroups: { "font-size": [{ text: [
18
19
  "heading-lg",
19
20
  "heading-md",
20
21
  "heading-sm",
@@ -27,11 +28,11 @@ var fe = j({ extend: { classGroups: { "font-size": [{ text: [
27
28
  "body-sm-relaxed"
28
29
  ] }] } } });
29
30
  function I(...e) {
30
- return fe(A(e));
31
+ return pe(A(e));
31
32
  }
32
33
  //#endregion
33
34
  //#region src/components/internals/separator/separator.tsx
34
- function pe({ className: e, orientation: t = "horizontal", decorative: n = !0, ...r }) {
35
+ function me({ className: e, orientation: t = "horizontal", decorative: n = !0, ...r }) {
35
36
  return /* @__PURE__ */ N("div", {
36
37
  "data-slot": "separator-root",
37
38
  role: n ? "none" : "separator",
@@ -43,18 +44,18 @@ function pe({ className: e, orientation: t = "horizontal", decorative: n = !0, .
43
44
  }
44
45
  //#endregion
45
46
  //#region src/components/toolbar/toolbar.tsx
46
- var me = g.createContext(null), he = typeof document > "u" ? g.useEffect : g.useLayoutEffect;
47
- function ge(...e) {
47
+ var he = g.createContext(null), ge = typeof document > "u" ? g.useEffect : g.useLayoutEffect;
48
+ function L(...e) {
48
49
  return (t) => {
49
50
  for (let n of e) typeof n == "function" ? n(t) : n && (n.current = t);
50
51
  };
51
52
  }
52
53
  function _e(e, t = {}) {
53
- let n = g.useContext(me), { handlesDirectionalKeys: r = !1 } = t;
54
- he(() => {
54
+ let n = g.useContext(he), { handlesDirectionalKeys: r = !1 } = t;
55
+ ge(() => {
55
56
  let t = e.current;
56
57
  if (!(!n || !t)) return n.registerItem(t, { handlesDirectionalKeys: r }), () => n.unregisterItem(t);
57
- }, [n, e]), he(() => {
58
+ }, [n, e]), ge(() => {
58
59
  let t = e.current;
59
60
  n && t && n.updateItem(t, { handlesDirectionalKeys: r });
60
61
  }, [
@@ -90,10 +91,10 @@ function be({ className: e, justify: t = "start", onKeyDown: n, ref: r, ...i })
90
91
  c,
91
92
  l
92
93
  ]);
93
- return /* @__PURE__ */ N(me.Provider, {
94
+ return /* @__PURE__ */ N(he.Provider, {
94
95
  value: u,
95
96
  children: /* @__PURE__ */ N("div", {
96
- ref: ge(a, r),
97
+ ref: L(a, r),
97
98
  "data-slot": "toolbar-row",
98
99
  role: "toolbar",
99
100
  tabIndex: -1,
@@ -125,7 +126,7 @@ function xe({ className: e, ...t }) {
125
126
  }
126
127
  xe.displayName = "Toolbar.Group";
127
128
  function Se({ className: e, ...t }) {
128
- return /* @__PURE__ */ N(pe, {
129
+ return /* @__PURE__ */ N(me, {
129
130
  "data-slot": "toolbar-separator",
130
131
  decorative: !1,
131
132
  orientation: "vertical",
@@ -162,12 +163,12 @@ var Ce = {
162
163
  size: "default"
163
164
  }
164
165
  });
165
- function L({ className: e, variant: t, size: n, render: r, children: i, ref: a, ...o }) {
166
+ function R({ className: e, variant: t, size: n, render: r, children: i, ref: a, ...o }) {
166
167
  let s = g.useRef(null);
167
168
  return _e(s), k({
168
169
  defaultTagName: "button",
169
170
  render: r,
170
- ref: ge(s, a),
171
+ ref: L(s, a),
171
172
  props: {
172
173
  "data-slot": "button",
173
174
  className: I(we({
@@ -202,49 +203,49 @@ var Te = Symbol("localized-label"), Ee = () => {
202
203
  } catch {
203
204
  return e;
204
205
  }
205
- }, R = (e) => (t, n) => t ? typeof t == "string" ? t : t(e) ?? n : n, ke = (t) => {
206
- let n = R(t);
206
+ }, z = (e) => (t, n) => t ? typeof t == "string" ? t : t(e) ?? n : n, ke = (t) => {
207
+ let n = z(t);
207
208
  return (t, r) => n(t, typeof t == "string" ? t : e(r));
208
209
  }, Ae = (e) => ({
209
210
  modules: e.modules,
210
211
  settingsResources: e.settingsResources ?? [],
211
- errorBoundary: e.errorBoundary ?? /* @__PURE__ */ N(W, {}),
212
+ errorBoundary: e.errorBoundary ?? /* @__PURE__ */ N(G, {}),
212
213
  basePath: e.basePath,
213
214
  locale: e.locale ? Oe(e.locale) : Ee(),
214
215
  resolvedLocale: e.locale ?? De(),
215
216
  timeZone: e.timeZone
216
- }), z = v({ configurations: {
217
+ }), B = v({ configurations: {
217
218
  modules: [],
218
219
  settingsResources: [],
219
220
  locale: "en",
220
221
  errorBoundary: null
221
- } }), je = v({ contextData: {} }), B = () => b(z), Me = () => b(je), Ne = () => {
222
- let e = b(z), t = b(je);
222
+ } }), je = v({ contextData: {} }), V = () => b(B), Me = () => b(je), Ne = () => {
223
+ let e = b(B), t = b(je);
223
224
  return {
224
225
  ...e,
225
226
  ...t
226
227
  };
227
228
  }, Pe = () => {
228
- let { configurations: e } = b(z);
229
+ let { configurations: e } = b(B);
229
230
  return {
230
231
  locale: e.resolvedLocale ?? e.locale,
231
232
  language: e.locale
232
233
  };
233
234
  }, Fe = () => {
234
- let { configurations: e } = b(z), t = e.timeZone ?? oe();
235
+ let { configurations: e } = b(B), t = e.timeZone ?? oe();
235
236
  return {
236
237
  value: t,
237
238
  today: () => ce(t),
238
239
  now: () => se(t)
239
240
  };
240
241
  }, Ie = () => {
241
- let { configurations: e } = B(), t = R(e.locale);
242
+ let { configurations: e } = V(), t = z(e.locale);
242
243
  return (e, n) => t(e, n);
243
244
  }, Le = (e) => {
244
245
  let t = (t) => (n) => e[t]?.[n] ?? e.en[n];
245
246
  return {
246
247
  useT: () => {
247
- let { configurations: n } = B(), r = t(n.locale), i = ((e, ...t) => {
248
+ let { configurations: n } = V(), r = t(n.locale), i = ((e, ...t) => {
248
249
  let n = r(e);
249
250
  return typeof n == "function" ? n(t[0]) : n;
250
251
  });
@@ -301,6 +302,7 @@ var Te = Symbol("localized-label"), Ee = () => {
301
302
  aiChatThoughtFor: (e) => `Thought for ${e.seconds}s`,
302
303
  aiChatReasoning: "Reasoning",
303
304
  aiChatChainOfThought: "Chain of thought",
305
+ aiChatToolCall: (e) => `Tool call: ${e.name}`,
304
306
  aiChatToolPreparing: "Preparing",
305
307
  aiChatToolRunning: "Running",
306
308
  aiChatToolDone: "Done",
@@ -351,6 +353,7 @@ var Te = Symbol("localized-label"), Ee = () => {
351
353
  aiChatThoughtFor: (e) => `${e.seconds}秒 思考しました`,
352
354
  aiChatReasoning: "思考",
353
355
  aiChatChainOfThought: "思考の流れ",
356
+ aiChatToolCall: (e) => `ツール呼び出し: ${e.name}`,
354
357
  aiChatToolPreparing: "準備中",
355
358
  aiChatToolRunning: "実行中",
356
359
  aiChatToolDone: "完了",
@@ -359,7 +362,7 @@ var Te = Symbol("localized-label"), Ee = () => {
359
362
  aiChatToolResult: "結果",
360
363
  aiChatSourcesUsed: (e) => `${e.count} 件の出典を使用`
361
364
  }
362
- }), V = Re.useT, ze = O("", {
365
+ }), H = Re.useT, ze = O("", {
363
366
  variants: { variant: {
364
367
  "heading-lg": "astw:text-heading-lg",
365
368
  "heading-md": "astw:text-heading-md",
@@ -414,7 +417,7 @@ var He = {
414
417
  span: "label-md",
415
418
  div: "body-md"
416
419
  };
417
- function H(e) {
420
+ function U(e) {
418
421
  let t = He[e], n = e;
419
422
  function r({ className: e, variant: r, ...i }) {
420
423
  return /* @__PURE__ */ N(n, {
@@ -428,18 +431,18 @@ function H(e) {
428
431
  }
429
432
  return r.displayName = `Text.${e}`, r;
430
433
  }
431
- var U = Object.assign(Ve, {
432
- h1: H("h1"),
433
- h2: H("h2"),
434
- h3: H("h3"),
435
- h4: H("h4"),
436
- h5: H("h5"),
437
- h6: H("h6"),
438
- p: H("p"),
439
- span: H("span"),
440
- div: H("div")
441
- }), W = () => {
442
- let e = m(), t = V(), n = {
434
+ var W = Object.assign(Ve, {
435
+ h1: U("h1"),
436
+ h2: U("h2"),
437
+ h3: U("h3"),
438
+ h4: U("h4"),
439
+ h5: U("h5"),
440
+ h6: U("h6"),
441
+ p: U("p"),
442
+ span: U("span"),
443
+ div: U("div")
444
+ }), G = () => {
445
+ let e = m(), t = H(), n = {
443
446
  role: "alert",
444
447
  "aria-label": "default-error-boundary"
445
448
  };
@@ -449,17 +452,16 @@ var U = Object.assign(Ve, {
449
452
  children: /* @__PURE__ */ P("div", {
450
453
  className: "astw:flex astw:items-start astw:gap-4",
451
454
  children: [/* @__PURE__ */ N(ee, { className: "astw:h-5 astw:w-5 astw:text-danger-text astw:flex-shrink-0 astw:mt-0.5" }), /* @__PURE__ */ P("div", { children: [
452
- /* @__PURE__ */ N(U, {
455
+ /* @__PURE__ */ N(W.h1, {
453
456
  variant: "heading-md",
454
- render: /* @__PURE__ */ N("h1", {}),
455
457
  children: t("error404Title")
456
458
  }),
457
- /* @__PURE__ */ N(U, {
459
+ /* @__PURE__ */ N(W, {
458
460
  variant: "body-md",
459
461
  className: "astw:text-muted-foreground astw:mt-1",
460
462
  children: t("error404Body")
461
463
  }),
462
- /* @__PURE__ */ N(L, {
464
+ /* @__PURE__ */ N(R, {
463
465
  variant: "outline",
464
466
  size: "sm",
465
467
  className: "astw:mt-4",
@@ -476,17 +478,16 @@ var U = Object.assign(Ve, {
476
478
  children: /* @__PURE__ */ P("div", {
477
479
  className: "astw:flex astw:items-start astw:gap-4",
478
480
  children: [/* @__PURE__ */ N(ee, { className: "astw:h-5 astw:w-5 astw:text-danger-text astw:flex-shrink-0 astw:mt-0.5" }), /* @__PURE__ */ P("div", { children: [
479
- /* @__PURE__ */ N(U, {
481
+ /* @__PURE__ */ N(W.h1, {
480
482
  variant: "heading-md",
481
- render: /* @__PURE__ */ N("h1", {}),
482
483
  children: t("errorTitle")
483
484
  }),
484
- /* @__PURE__ */ N(U, {
485
+ /* @__PURE__ */ N(W, {
485
486
  variant: "body-md",
486
487
  className: "astw:text-muted-foreground astw:mt-1",
487
488
  children: r
488
489
  }),
489
- /* @__PURE__ */ N(L, {
490
+ /* @__PURE__ */ N(R, {
490
491
  variant: "outline",
491
492
  size: "sm",
492
493
  className: "astw:mt-4",
@@ -501,7 +502,7 @@ var U = Object.assign(Ve, {
501
502
  }, Ge = () => ({ type: "pass" }), Ke = () => ({ type: "hidden" }), qe = (e) => ({
502
503
  type: "redirect",
503
504
  to: e
504
- }), G = () => new Response("Not Found", { status: 404 }), K = async (e) => {
505
+ }), K = () => new Response("Not Found", { status: 404 }), q = async (e) => {
505
506
  if (!e || e.length === 0) return { type: "pass" };
506
507
  let t = { context: Ue };
507
508
  for (let n of e) {
@@ -509,24 +510,24 @@ var U = Object.assign(Ve, {
509
510
  if (e.type !== "pass") return e;
510
511
  }
511
512
  return { type: "pass" };
512
- }, Je = (e, t) => async (n) => {
513
- let r = await K(e);
513
+ }, J = (e, t) => async (n) => {
514
+ let r = await q(e);
514
515
  switch (r.type) {
515
- case "hidden": throw G();
516
+ case "hidden": throw K();
516
517
  case "redirect": return u(r.to);
517
518
  case "pass": return t ? t(n) : null;
518
519
  }
519
- }, Ye = (t) => t === "" || t === "/" ? Re.t("home") : e(t), Xe = (e, t) => () => {
520
- let { configurations: n } = B(), { metaTitle: r, fallbackTitle: i } = e;
521
- return t(R(n.locale)(r, typeof i == "function" ? i(n.locale) : i));
520
+ }, Je = (t) => t === "" || t === "/" ? Re.t("home") : e(t), Ye = (e, t) => () => {
521
+ let { configurations: n } = V(), { metaTitle: r, fallbackTitle: i } = e;
522
+ return t(z(n.locale)(r, typeof i == "function" ? i(n.locale) : i));
522
523
  };
523
- function Ze(e) {
524
- let { path: t, meta: n, component: r, resources: i, errorBoundary: a, guards: o } = e, s = n?.title ?? Ye(t), c = Ye(t), l = o && o.length > 0 ? Je(o) : void 0;
524
+ function Xe(e) {
525
+ let { path: t, meta: n, component: r, resources: i, errorBoundary: a, guards: o } = e, s = n?.title ?? Je(t), c = Je(t), l = o && o.length > 0 ? J(o) : void 0;
525
526
  return {
526
527
  path: t,
527
528
  type: "component",
528
529
  _type: "module",
529
- component: r ? Xe({
530
+ component: r ? Ye({
530
531
  metaTitle: s,
531
532
  fallbackTitle: c
532
533
  }, (e) => r({
@@ -542,12 +543,12 @@ function Ze(e) {
542
543
  icon: e.meta?.icon
543
544
  },
544
545
  resources: i,
545
- errorBoundary: a || /* @__PURE__ */ N(W, {}),
546
+ errorBoundary: a || /* @__PURE__ */ N(G, {}),
546
547
  guards: o
547
548
  };
548
549
  }
549
- function Qe(t) {
550
- let { path: n, component: r, subResources: i, meta: a, errorBoundary: o, guards: s } = t, c = a?.title ?? e(n), l = e(n), u = s && s.length > 0 ? Je(s) : void 0, d = r ? Xe({
550
+ function Ze(t) {
551
+ let { path: n, component: r, subResources: i, meta: a, errorBoundary: o, guards: s } = t, c = a?.title ?? e(n), l = e(n), u = s && s.length > 0 ? J(s) : void 0, d = r ? Ye({
551
552
  metaTitle: c,
552
553
  fallbackTitle: l
553
554
  }, (e) => r({
@@ -565,14 +566,14 @@ function Qe(t) {
565
566
  },
566
567
  component: d,
567
568
  subResources: i,
568
- errorBoundary: o ?? /* @__PURE__ */ N(W, {}),
569
+ errorBoundary: o ?? /* @__PURE__ */ N(G, {}),
569
570
  guards: s,
570
571
  loader: u
571
572
  };
572
573
  }
573
- var $e = {
574
+ var Qe = {
574
575
  name: "@tailor-platform/app-shell",
575
- version: "1.19.0",
576
+ version: "1.20.0",
576
577
  description: "An opinionated React application framework for building ERP applications on Tailor Platform",
577
578
  keywords: [
578
579
  "app-shell",
@@ -640,7 +641,8 @@ var $e = {
640
641
  },
641
642
  devDependencies: {
642
643
  "@fontsource-variable/noto-sans-jp": "5.3.0",
643
- "@microsoft/api-extractor": "7.58.12",
644
+ "@microsoft/api-extractor": "7.60.1",
645
+ "@tailor-platform/eslint-plugin-app-shell": "workspace:*",
644
646
  "@tailwindcss/postcss": "catalog:",
645
647
  "@testing-library/react": "16.3.3",
646
648
  "@testing-library/user-event": "14.6.8",
@@ -650,11 +652,11 @@ var $e = {
650
652
  "@types/react": "catalog:",
651
653
  "@types/react-dom": "catalog:",
652
654
  "@vitejs/plugin-react": "catalog:",
653
- "@vitest/browser-playwright": "4.1.11",
654
- "@vitest/coverage-v8": "4.1.11",
655
+ "@vitest/browser-playwright": "4.1.12",
656
+ "@vitest/coverage-v8": "4.1.12",
655
657
  "happy-dom": "21.0.4",
656
658
  playwright: "1.63.0",
657
- postcss: "8.5.31",
659
+ postcss: "8.5.32",
658
660
  react: "catalog:",
659
661
  "react-dom": "catalog:",
660
662
  "react-hook-form": "7.71.2",
@@ -663,7 +665,8 @@ var $e = {
663
665
  typescript: "5.9.3",
664
666
  vite: "catalog:",
665
667
  "vite-plugin-dts": "5.1.2",
666
- vitest: "catalog:"
668
+ vitest: "catalog:",
669
+ zod: "4.6.7"
667
670
  },
668
671
  peerDependencies: {
669
672
  react: ">=19.2.7",
@@ -672,52 +675,51 @@ var $e = {
672
675
  };
673
676
  //#endregion
674
677
  //#region src/components/card/card.tsx
675
- function et({ className: e, ...t }) {
678
+ function $e({ className: e, ...t }) {
676
679
  return /* @__PURE__ */ N("div", {
677
680
  "data-slot": "card",
678
681
  className: I("astw:bg-card astw:text-card-foreground astw:flex astw:flex-col astw:rounded-xl astw:border astw:border-border astw:shadow-xs", e),
679
682
  ...t
680
683
  });
681
684
  }
682
- et.displayName = "Card.Root";
683
- function tt({ className: e, title: t, description: n, children: r, ...i }) {
685
+ $e.displayName = "Card.Root";
686
+ function et({ className: e, title: t, description: n, children: r, ...i }) {
684
687
  return /* @__PURE__ */ P("div", {
685
688
  "data-slot": "card-header",
686
689
  className: I("astw:@container/card-header astw:grid astw:auto-rows-min astw:grid-rows-[auto_auto] astw:items-start astw:gap-2 astw:px-6 astw:pt-6 astw:pb-4 astw:[.border-b]:pb-6", e),
687
690
  ...i,
688
691
  children: [
689
- t && /* @__PURE__ */ N(U, {
692
+ t && /* @__PURE__ */ N(W.h3, {
690
693
  variant: "heading-md",
691
694
  className: "astw:leading-none astw:text-card-foreground",
692
- render: /* @__PURE__ */ N("h3", { "data-slot": "card-title" }),
695
+ "data-slot": "card-title",
693
696
  children: t
694
697
  }),
695
- n && /* @__PURE__ */ N(U, {
696
- variant: "body-md",
698
+ n && /* @__PURE__ */ N(W.div, {
697
699
  className: "astw:text-muted-foreground",
698
- render: /* @__PURE__ */ N("div", { "data-slot": "card-description" }),
700
+ "data-slot": "card-description",
699
701
  children: n
700
702
  }),
701
703
  r
702
704
  ]
703
705
  });
704
706
  }
705
- tt.displayName = "Card.Header";
706
- var nt = I("astw:first:rounded-t-[inherit] astw:last:rounded-b-[inherit]", "astw:[&>[data-slot=table-container]]:rounded-[inherit]", "astw:[&>[data-slot=data-table]]:rounded-[inherit] astw:[&>[data-slot=data-table]]:border-0");
707
- function rt({ className: e, padding: t = "default", ...n }) {
707
+ et.displayName = "Card.Header";
708
+ var tt = I("astw:first:rounded-t-[inherit] astw:last:rounded-b-[inherit]", "astw:[&>[data-slot=table-container]]:rounded-[inherit]", "astw:[&>[data-slot=data-table]]:rounded-[inherit] astw:[&>[data-slot=data-table]]:border-0");
709
+ function nt({ className: e, padding: t = "default", ...n }) {
708
710
  return /* @__PURE__ */ N("div", {
709
711
  "data-slot": "card-content",
710
712
  "data-padding": t,
711
- className: I(t === "none" ? nt : "astw:px-6 astw:pb-6 astw:first:pt-6", e),
713
+ className: I(t === "none" ? tt : "astw:px-6 astw:pb-6 astw:first:pt-6", e),
712
714
  ...n
713
715
  });
714
716
  }
715
- rt.displayName = "Card.Content";
716
- var it = {
717
- Root: et,
718
- Header: tt,
719
- Content: rt
720
- }, at = v(null), ot = ({ children: e }) => {
717
+ nt.displayName = "Card.Content";
718
+ var rt = {
719
+ Root: $e,
720
+ Header: et,
721
+ Content: nt
722
+ }, it = v(null), at = ({ children: e }) => {
721
723
  let [t, n] = E(() => /* @__PURE__ */ new Map()), r = y((e, t) => {
722
724
  n((n) => {
723
725
  let r = new Map(n);
@@ -730,7 +732,7 @@ var it = {
730
732
  return n.delete(e), n;
731
733
  });
732
734
  }, []);
733
- return /* @__PURE__ */ N(at.Provider, {
735
+ return /* @__PURE__ */ N(it.Provider, {
734
736
  value: {
735
737
  overrides: t,
736
738
  register: r,
@@ -738,15 +740,15 @@ var it = {
738
740
  },
739
741
  children: e
740
742
  });
741
- }, st = () => {
742
- let e = b(at);
743
+ }, ot = () => {
744
+ let e = b(it);
743
745
  if (!e) throw Error("useBreadcrumbOverride must be used within BreadcrumbOverrideProvider");
744
746
  return e;
745
- }, ct = () => b(at);
747
+ }, st = () => b(it);
746
748
  //#endregion
747
749
  //#region src/hooks/use-override-breadcrumb.ts
748
- function lt(e) {
749
- let t = d(), { register: n, unregister: r } = st(), i = t.pathname;
750
+ function ct(e) {
751
+ let t = d(), { register: n, unregister: r } = ot(), i = t.pathname;
750
752
  x(() => (e ? n(i, e) : r(i), () => r(i)), [
751
753
  i,
752
754
  e,
@@ -756,29 +758,29 @@ function lt(e) {
756
758
  }
757
759
  //#endregion
758
760
  //#region src/components/internals/app-info/app-info.tsx
759
- var ut = "__appinfo", dt = `/${ut}`, ft = $e.version, pt = (e) => e == null ? "-" : String(e), mt = (e) => e.map((e) => `${e.label}: ${pt(e.value)}`).join("\n"), ht = ({ label: e, value: t }) => /* @__PURE__ */ P("div", {
761
+ var lt = "__appinfo", ut = `/${lt}`, dt = Qe.version, ft = (e) => e == null ? "-" : String(e), pt = (e) => e.map((e) => `${e.label}: ${ft(e.value)}`).join("\n"), mt = ({ label: e, value: t }) => /* @__PURE__ */ P("div", {
760
762
  className: "astw:grid astw:gap-1 astw:py-3 astw:sm:grid-cols-[12rem_minmax(0,1fr)] astw:sm:gap-4",
761
- children: [/* @__PURE__ */ N(U, {
763
+ children: [/* @__PURE__ */ N(W, {
762
764
  variant: "label-md",
763
765
  className: "astw:text-muted-foreground",
764
766
  render: /* @__PURE__ */ N("dt", {}),
765
767
  children: e
766
- }), /* @__PURE__ */ N(U, {
768
+ }), /* @__PURE__ */ N(W, {
767
769
  variant: "body-md",
768
770
  className: "astw:min-w-0 astw:break-all",
769
771
  render: /* @__PURE__ */ N("dd", {}),
770
- children: pt(t)
772
+ children: ft(t)
771
773
  })]
772
- }), gt = () => {
773
- let e = V();
774
+ }), ht = () => {
775
+ let e = H();
774
776
  return {
775
- path: dt,
777
+ path: ut,
776
778
  title: e("appInfoTitle"),
777
779
  breadcrumb: [e("appInfoTitle")]
778
780
  };
779
- }, _t = () => {
780
- let e = V(), { title: t, appInfo: n } = B();
781
- lt(e("appInfoTitle"));
781
+ }, gt = () => {
782
+ let e = H(), { title: t, appInfo: n } = V();
783
+ ct(e("appInfoTitle"));
782
784
  let r = [
783
785
  ...t ? [{
784
786
  label: e("appInfoAppName"),
@@ -786,39 +788,38 @@ var ut = "__appinfo", dt = `/${ut}`, ft = $e.version, pt = (e) => e == null ? "-
786
788
  }] : [],
787
789
  {
788
790
  label: e("appInfoAppShellVersion"),
789
- value: ft
791
+ value: dt
790
792
  },
791
793
  ...n?.metadata ?? []
792
794
  ];
793
795
  return /* @__PURE__ */ N("div", {
794
796
  className: "astw:w-full astw:max-w-xl",
795
- children: /* @__PURE__ */ P(it.Root, { children: [/* @__PURE__ */ P("div", {
797
+ children: /* @__PURE__ */ P(rt.Root, { children: [/* @__PURE__ */ P("div", {
796
798
  className: "astw:flex astw:items-center astw:justify-between astw:px-6 astw:pt-6 astw:pb-4",
797
- children: [/* @__PURE__ */ N(U, {
799
+ children: [/* @__PURE__ */ N(W.h1, {
798
800
  variant: "heading-md",
799
801
  className: "astw:leading-none",
800
- render: /* @__PURE__ */ N("h1", {}),
801
802
  children: e("appInfoTitle")
802
- }), /* @__PURE__ */ N(L, {
803
+ }), /* @__PURE__ */ N(R, {
803
804
  variant: "outline",
804
805
  size: "sm",
805
806
  onClick: async () => {
806
807
  try {
807
- await navigator.clipboard.writeText(mt(r));
808
+ await navigator.clipboard.writeText(pt(r));
808
809
  } catch {}
809
810
  },
810
811
  children: e("appInfoCopy")
811
812
  })]
812
- }), /* @__PURE__ */ N(it.Content, { children: /* @__PURE__ */ N("dl", { children: r.map((e, t) => /* @__PURE__ */ N("div", {
813
+ }), /* @__PURE__ */ N(rt.Content, { children: /* @__PURE__ */ N("dl", { children: r.map((e, t) => /* @__PURE__ */ N("div", {
813
814
  className: t > 0 ? "astw:border-t astw:border-border" : void 0,
814
- children: /* @__PURE__ */ N(ht, { ...e })
815
+ children: /* @__PURE__ */ N(mt, { ...e })
815
816
  }, `${e.label}-${t}`)) }) })] })
816
817
  });
817
- }, vt = [
818
+ }, _t = [
818
819
  "light",
819
820
  "dark",
820
821
  "system"
821
- ], yt = [
822
+ ], vt = [
822
823
  {
823
824
  value: "light",
824
825
  label: "Light"
@@ -831,8 +832,8 @@ var ut = "__appinfo", dt = `/${ut}`, ft = $e.version, pt = (e) => e == null ? "-
831
832
  value: "system",
832
833
  label: "System"
833
834
  }
834
- ], bt = "appshell-ui-theme";
835
- function xt(e, t, n) {
835
+ ], yt = "appshell-ui-theme";
836
+ function bt(e, t, n) {
836
837
  if (typeof window > "u") return n;
837
838
  try {
838
839
  let r = localStorage.getItem(e);
@@ -841,22 +842,22 @@ function xt(e, t, n) {
841
842
  return n;
842
843
  }
843
844
  }
844
- function St(e, t) {
845
+ function xt(e, t) {
845
846
  return e === "system" ? t ? "dark" : "light" : e;
846
847
  }
847
- function Ct() {
848
+ function St() {
848
849
  return typeof window < "u" && window.matchMedia("(prefers-color-scheme: dark)").matches;
849
850
  }
850
- var wt = v(void 0);
851
- function Tt({ children: e, defaultColorTheme: t = "system" }) {
852
- let [n, r] = E(() => xt(bt, vt, t)), [i, a] = E(() => St(xt(bt, vt, t), Ct())), o = y((e) => {
851
+ var Ct = v(void 0);
852
+ function wt({ children: e, defaultColorTheme: t = "system" }) {
853
+ let [n, r] = E(() => bt(yt, _t, t)), [i, a] = E(() => xt(bt(yt, _t, t), St())), o = y((e) => {
853
854
  let t = window.document.documentElement;
854
855
  t.classList.remove("light", "dark"), t.classList.add(e);
855
856
  }, []);
856
857
  x(() => {
857
858
  o(i);
858
859
  let e = window.matchMedia("(prefers-color-scheme: dark)"), t = (e) => {
859
- let t = St(n, e.matches);
860
+ let t = xt(n, e.matches);
860
861
  a(t);
861
862
  };
862
863
  return e.addEventListener("change", t), () => e.removeEventListener("change", t);
@@ -867,10 +868,10 @@ function Tt({ children: e, defaultColorTheme: t = "system" }) {
867
868
  ]);
868
869
  let s = y((e) => {
869
870
  try {
870
- localStorage.setItem(bt, e);
871
+ localStorage.setItem(yt, e);
871
872
  } catch {}
872
873
  r(e);
873
- let t = St(e, Ct());
874
+ let t = xt(e, St());
874
875
  a(t), o(t);
875
876
  }, [o]), c = C(() => ({
876
877
  colorTheme: n,
@@ -881,13 +882,13 @@ function Tt({ children: e, defaultColorTheme: t = "system" }) {
881
882
  i,
882
883
  s
883
884
  ]);
884
- return /* @__PURE__ */ N(wt.Provider, {
885
+ return /* @__PURE__ */ N(Ct.Provider, {
885
886
  value: c,
886
887
  children: e
887
888
  });
888
889
  }
889
- var Et = () => {
890
- let e = b(wt);
890
+ var Tt = () => {
891
+ let e = b(Ct);
891
892
  if (e === void 0) throw Error("useTheme must be used within a ThemeProvider");
892
893
  let { colorTheme: t, resolvedColorTheme: n, setColorTheme: r } = e;
893
894
  return C(() => ({
@@ -899,29 +900,30 @@ var Et = () => {
899
900
  n,
900
901
  r
901
902
  ]);
902
- }, Dt = ({ ...e }) => {
903
- let { resolvedTheme: t } = Et();
904
- return /* @__PURE__ */ N(ue, {
905
- theme: t,
903
+ }, Et = ({ style: e, ...t }) => {
904
+ let { resolvedTheme: n } = Tt(), [r, i] = E(null);
905
+ return x(() => {
906
+ i(document.body);
907
+ }, []), r ? ue(/* @__PURE__ */ N(de, {
908
+ theme: n,
906
909
  className: "astw:toaster astw:group",
907
910
  style: {
908
911
  "--normal-bg": "var(--popover)",
909
912
  "--normal-text": "var(--popover-foreground)",
910
- "--normal-border": "var(--border)"
913
+ "--normal-border": "var(--border)",
914
+ zIndex: "var(--z-toast)",
915
+ ...e
911
916
  },
912
- ...e
913
- });
914
- }, Ot = () => {
915
- let e = V();
917
+ ...t
918
+ }), r) : null;
919
+ }, Dt = () => {
920
+ let e = H();
916
921
  return /* @__PURE__ */ P(M, { children: [/* @__PURE__ */ N("p", {
917
922
  className: "astw:font-semibold astw:leading-none astw:tracking-tight",
918
923
  children: e("welcomeTitle")
919
- }), /* @__PURE__ */ N("p", {
920
- className: "pt-4",
921
- children: e("welcomeBody")
922
- })] });
923
- }, kt = () => /* @__PURE__ */ P(M, { children: [/* @__PURE__ */ N(a, {}), /* @__PURE__ */ N(Dt, {})] }), At = () => {
924
- let { configurations: e } = Ne(), t = V(), n = Ie();
924
+ }), /* @__PURE__ */ N("p", { children: e("welcomeBody") })] });
925
+ }, Ot = () => /* @__PURE__ */ P(M, { children: [/* @__PURE__ */ N(a, {}), /* @__PURE__ */ N(Et, {})] }), kt = () => {
926
+ let { configurations: e } = Ne(), t = H(), n = Ie();
925
927
  return /* @__PURE__ */ P("div", {
926
928
  className: "astw:mx-auto astw:flex-col astw:flex astw:md:flex-row astw:max-w-5xl astw:gap-[10px] astw:w-full",
927
929
  children: [/* @__PURE__ */ N("div", { children: /* @__PURE__ */ P("nav", {
@@ -933,7 +935,7 @@ var Et = () => {
933
935
  className: "astw:flex astw:flex-col astw:gap-1",
934
936
  children: e.settingsResources.map((e) => /* @__PURE__ */ N("li", { children: /* @__PURE__ */ N(r, {
935
937
  to: `./${e.path}`,
936
- children: ({ isActive: t }) => /* @__PURE__ */ P(L, {
938
+ children: ({ isActive: t }) => /* @__PURE__ */ P(R, {
937
939
  variant: t ? "secondary" : "ghost",
938
940
  className: "astw:w-full astw:justify-start",
939
941
  children: [e.meta.icon, n(e.meta.title, e.path)]
@@ -945,7 +947,7 @@ var Et = () => {
945
947
  children: /* @__PURE__ */ N(a, {})
946
948
  })]
947
949
  });
948
- }, jt = (e) => () => /* @__PURE__ */ N(M, { children: e }), Mt = (e) => e.component ? {
950
+ }, At = (e) => () => /* @__PURE__ */ N(M, { children: e }), jt = (e) => e.component ? {
949
951
  index: !0,
950
952
  Component: e.component,
951
953
  ...e.loader && { loader: e.loader }
@@ -955,26 +957,26 @@ var Et = () => {
955
957
  loader: async (t) => {
956
958
  let n = await e.loader(t);
957
959
  if (n instanceof Response) return n;
958
- throw G();
960
+ throw K();
959
961
  }
960
962
  } : {
961
963
  index: !0,
962
964
  Component: () => null,
963
965
  loader: () => {
964
- throw G();
966
+ throw K();
965
967
  }
966
- }, Nt = (e, t, n) => {
967
- let r = e.errorBoundary || n, i = (t ?? []).map((e) => Nt(e, e.subResources, r)), a = [Mt(e), ...i];
968
+ }, Mt = (e, t, n) => {
969
+ let r = e.errorBoundary || n, i = (t ?? []).map((e) => Mt(e, e.subResources, r)), a = [jt(e), ...i];
968
970
  return {
969
971
  path: e.path,
970
972
  handle: { node: e },
971
- ...e.errorBoundary && { ErrorBoundary: jt(e.errorBoundary) },
973
+ ...e.errorBoundary && { ErrorBoundary: At(e.errorBoundary) },
972
974
  ...a.length > 0 ? { children: a } : {}
973
975
  };
974
- }, Pt = (e) => e.map((e) => Nt(e, e.resources, e.errorBoundary)), Ft = ({ modules: e, settingsResources: t }) => {
975
- let n = e.some((e) => e.path === "") ? null : Mt({
976
+ }, Nt = (e) => e.map((e) => Mt(e, e.resources, e.errorBoundary)), Pt = ({ modules: e, settingsResources: t }) => {
977
+ let n = e.some((e) => e.path === "") ? null : jt({
976
978
  path: "",
977
- component: Ot
979
+ component: Dt
978
980
  }), r = t.length > 0 ? [{
979
981
  path: "settings",
980
982
  index: !0,
@@ -985,43 +987,43 @@ var Et = () => {
985
987
  })
986
988
  }, {
987
989
  path: "settings",
988
- Component: At,
990
+ Component: kt,
989
991
  children: t.map((e) => {
990
992
  if (!e.component) throw Error(`Settings resource "${e.path}" must have a component.`);
991
993
  return {
992
994
  path: e.path,
993
995
  Component: e.component,
994
- ...e.errorBoundary && { ErrorBoundary: jt(e.errorBoundary) }
996
+ ...e.errorBoundary && { ErrorBoundary: At(e.errorBoundary) }
995
997
  };
996
998
  })
997
999
  }] : [];
998
1000
  return [
999
1001
  ...n ? [n] : [],
1000
- { children: Pt(e) },
1002
+ { children: Nt(e) },
1001
1003
  {
1002
- path: ut,
1003
- Component: _t
1004
+ path: lt,
1005
+ Component: gt
1004
1006
  },
1005
1007
  ...r,
1006
1008
  {
1007
1009
  path: "*",
1008
1010
  loader: () => {
1009
- throw G();
1011
+ throw K();
1010
1012
  },
1011
1013
  Component: () => null,
1012
- ErrorBoundary: W
1014
+ ErrorBoundary: G
1013
1015
  }
1014
1016
  ];
1015
- }, q = (e) => e.startsWith(":") ? e.slice(1) : null, It = (e) => e.split("/").some((e) => q(e) !== null);
1016
- function Lt(e, t) {
1017
+ }, Y = (e) => e.startsWith(":") ? e.slice(1) : null, Ft = (e) => e.split("/").some((e) => Y(e) !== null);
1018
+ function It(e, t) {
1017
1019
  if (!t.trim()) return e;
1018
1020
  let n = t.toLowerCase();
1019
1021
  return e.filter((e) => e.title.toLowerCase().includes(n) || e.path.toLowerCase().includes(n));
1020
1022
  }
1021
- var Rt = (e, t, n) => {
1023
+ var Lt = (e, t, n) => {
1022
1024
  let r = typeof e.breadcrumbTitle == "function" ? e.breadcrumbTitle(Te in e.breadcrumbTitle ? n : t) : e.breadcrumbTitle;
1023
- return typeof r == "function" ? R(n)(r, e.title) : r ?? e.title;
1024
- }, zt = (e, t) => {
1025
+ return typeof r == "function" ? z(n)(r, e.title) : r ?? e.title;
1026
+ }, Rt = (e, t) => {
1025
1027
  let n = ke(t);
1026
1028
  return e.reduce((e, t) => {
1027
1029
  let r = n(t.meta.title, t.path);
@@ -1043,8 +1045,8 @@ var Rt = (e, t, n) => {
1043
1045
  return t.resources && t.resources.length > 0 && i(t.resources, t.path), e;
1044
1046
  }, {});
1045
1047
  };
1046
- function Bt(e, t, n, r) {
1047
- let i = e.split("/").filter((e) => e !== ""), a = t && i[0] === t ? i.slice(1) : i, o = zt(n, r);
1048
+ function zt(e, t, n, r) {
1049
+ let i = e.split("/").filter((e) => e !== ""), a = t && i[0] === t ? i.slice(1) : i, o = Rt(n, r);
1048
1050
  if (a.length === 0) {
1049
1051
  let e = o[""];
1050
1052
  if (e) return {
@@ -1052,7 +1054,7 @@ function Bt(e, t, n, r) {
1052
1054
  segments: [{
1053
1055
  segment: "",
1054
1056
  path: "",
1055
- title: Rt(e, "", r),
1057
+ title: Lt(e, "", r),
1056
1058
  clickable: e.clickable
1057
1059
  }]
1058
1060
  };
@@ -1061,13 +1063,13 @@ function Bt(e, t, n, r) {
1061
1063
  let n = a.slice(0, t + 1).join("/"), i = o[n];
1062
1064
  if (!i) {
1063
1065
  let e = Object.entries(o).find(([e]) => {
1064
- let t = e.split("/").map((e) => q(e) === null ? e : "[^/]+").join("/");
1066
+ let t = e.split("/").map((e) => Y(e) === null ? e : "[^/]+").join("/");
1065
1067
  return RegExp(`^${t}$`).test(n);
1066
1068
  })?.[1];
1067
1069
  e && (i = e);
1068
1070
  }
1069
1071
  let s;
1070
- return s = i ? Rt(i, e, r) : decodeURIComponent(e), {
1072
+ return s = i ? Lt(i, e, r) : decodeURIComponent(e), {
1071
1073
  segment: e,
1072
1074
  path: n,
1073
1075
  title: s,
@@ -1081,14 +1083,14 @@ function Bt(e, t, n, r) {
1081
1083
  }
1082
1084
  //#endregion
1083
1085
  //#region src/routing/navigation.tsx
1084
- var Vt = "appshell-root-nav", Ht = (e) => ({
1085
- loaderID: Vt,
1086
- loader: async () => ({ navItems: Wt(e) })
1087
- }), Ut = () => h(Vt)?.navItems, Wt = async (e) => {
1086
+ var Bt = "appshell-root-nav", Vt = (e) => ({
1087
+ loaderID: Bt,
1088
+ loader: async () => ({ navItems: Ut(e) })
1089
+ }), Ht = () => h(Bt)?.navItems, Ut = async (e) => {
1088
1090
  let t = ke(e.locale);
1089
1091
  return (await Promise.all(e.modules.map(async (e) => {
1090
- if (q(e.path) !== null || (await K(e.guards)).type !== "pass") return null;
1091
- let n = await Gt(e.resources, e.path, t);
1092
+ if (Y(e.path) !== null || (await q(e.guards)).type !== "pass") return null;
1093
+ let n = await Wt(e.resources, e.path, t);
1092
1094
  return n.length === 0 && !e.meta.menuItemClickable ? null : {
1093
1095
  module: e,
1094
1096
  resources: n
@@ -1099,70 +1101,70 @@ var Vt = "appshell-root-nav", Ht = (e) => ({
1099
1101
  icon: e.meta.icon || /* @__PURE__ */ N(ie, {}),
1100
1102
  items: n
1101
1103
  }));
1102
- }, Gt = async (e, t, n) => (await Promise.all(e.map(async (e) => {
1103
- if (q(e.path) !== null || (await K(e.guards)).type !== "pass") return null;
1104
- let r = `${t}/${e.path}`, i = n(e.meta.title, e.path), a = e.component !== void 0, o = e.subResources ? await Gt(e.subResources, r, n) : void 0, s = o && o.length > 0;
1104
+ }, Wt = async (e, t, n) => (await Promise.all(e.map(async (e) => {
1105
+ if (Y(e.path) !== null || (await q(e.guards)).type !== "pass") return null;
1106
+ let r = `${t}/${e.path}`, i = n(e.meta.title, e.path), a = e.component !== void 0, o = e.subResources ? await Wt(e.subResources, r, n) : void 0, s = o && o.length > 0;
1105
1107
  return !a && !s ? null : {
1106
1108
  title: i,
1107
1109
  url: a ? r : void 0,
1108
1110
  items: s ? o : void 0
1109
1111
  };
1110
- }))).filter((e) => e !== null), J = (e) => e.split("/").filter((e) => e !== ""), Kt = (e, t) => {
1111
- let n = J(e), r = t && n[0] === t ? n.slice(1) : n;
1112
+ }))).filter((e) => e !== null), X = (e) => e.split("/").filter((e) => e !== ""), Gt = (e, t) => {
1113
+ let n = X(e), r = t && n[0] === t ? n.slice(1) : n;
1112
1114
  return r.length > 0 ? `/${r.join("/")}` : "/";
1113
- }, qt = (e) => e.join("/") || "/", Jt = 8, Yt = (e, t) => J(e).map((e) => {
1114
- let n = q(e);
1115
+ }, Kt = (e) => e.join("/") || "/", qt = 8, Jt = (e, t) => X(e).map((e) => {
1116
+ let n = Y(e);
1115
1117
  if (n === null) return e;
1116
1118
  let r = t[n] ?? "";
1117
- return r.length > Jt ? `${r.slice(0, Jt)}...` : r;
1118
- }), Xt = async ({ modules: e, locale: t, basePath: n, pathname: r }) => {
1119
- let i = ke(t), a = l(Ft({
1119
+ return r.length > qt ? `${r.slice(0, qt)}...` : r;
1120
+ }), Yt = async ({ modules: e, locale: t, basePath: n, pathname: r }) => {
1121
+ let i = ke(t), a = l(Pt({
1120
1122
  modules: e,
1121
1123
  settingsResources: []
1122
- }), Kt(r, n));
1124
+ }), Gt(r, n));
1123
1125
  if (!a) return [];
1124
1126
  let o = /* @__PURE__ */ new Map(), s = a.map((e) => {
1125
1127
  let t = e.route.handle;
1126
1128
  return t?.node ? {
1127
1129
  node: t.node,
1128
1130
  params: e.params,
1129
- pathnameBase: qt(J(e.pathnameBase))
1131
+ pathnameBase: Kt(X(e.pathnameBase))
1130
1132
  } : null;
1131
1133
  }).filter((e) => e !== null);
1132
1134
  for (let [e, t] of s.entries()) {
1133
- if (!It(t.node.path)) continue;
1135
+ if (!Ft(t.node.path)) continue;
1134
1136
  let n = s.slice(0, e + 1).map(({ node: e }) => i(e.meta.title, e.path)), r = s.slice(0, e + 1).toReversed().find(({ node: e }) => "resources" in e), a = r && "resources" in r.node && r.node.meta.icon || /* @__PURE__ */ N(ie, {});
1135
- await Zt({
1137
+ await Xt({
1136
1138
  node: t.node,
1137
1139
  params: t.params,
1138
1140
  icon: a,
1139
- baseSegments: J(t.pathnameBase),
1140
- baseDisplaySegments: s.slice(0, e + 1).flatMap(({ node: e, params: t }) => Yt(e.path, t)),
1141
+ baseSegments: X(t.pathnameBase),
1142
+ baseDisplaySegments: s.slice(0, e + 1).flatMap(({ node: e, params: t }) => Jt(e.path, t)),
1141
1143
  breadcrumb: n,
1142
1144
  resolveTitle: i,
1143
1145
  routeMap: o
1144
1146
  });
1145
1147
  }
1146
1148
  return [...o.values()];
1147
- }, Zt = async ({ node: e, params: t, icon: n, baseSegments: r, baseDisplaySegments: i, breadcrumb: a, resolveTitle: o, routeMap: s }) => {
1148
- if ((await K(e.guards)).type !== "pass") return;
1149
+ }, Xt = async ({ node: e, params: t, icon: n, baseSegments: r, baseDisplaySegments: i, breadcrumb: a, resolveTitle: o, routeMap: s }) => {
1150
+ if ((await q(e.guards)).type !== "pass") return;
1149
1151
  if ("resources" in e ? e.meta.menuItemClickable : e.component !== void 0) {
1150
- let t = qt(r);
1152
+ let t = Kt(r);
1151
1153
  s.set(t, {
1152
1154
  path: t,
1153
- displayPath: qt(i),
1155
+ displayPath: Kt(i),
1154
1156
  title: o(e.meta.title, e.path),
1155
1157
  icon: n,
1156
1158
  breadcrumb: a
1157
1159
  });
1158
1160
  }
1159
1161
  let c = "resources" in e ? e.resources : e.subResources;
1160
- if (!(!c || c.length === 0)) for (let e of c) It(e.path) || await Zt({
1162
+ if (!(!c || c.length === 0)) for (let e of c) Ft(e.path) || await Xt({
1161
1163
  node: e,
1162
1164
  params: t,
1163
1165
  icon: n,
1164
- baseSegments: [...r, ...J(e.path)],
1165
- baseDisplaySegments: [...i, ...Yt(e.path, t)],
1166
+ baseSegments: [...r, ...X(e.path)],
1167
+ baseDisplaySegments: [...i, ...Jt(e.path, t)],
1166
1168
  breadcrumb: [...a, o(e.meta.title, e.path)],
1167
1169
  resolveTitle: o,
1168
1170
  routeMap: s
@@ -1170,28 +1172,28 @@ var Vt = "appshell-root-nav", Ht = (e) => ({
1170
1172
  };
1171
1173
  //#endregion
1172
1174
  //#region src/components/internals/breadcrumb/breadcrumb.tsx
1173
- function Qt({ ...e }) {
1175
+ function Zt({ ...e }) {
1174
1176
  return /* @__PURE__ */ N("nav", {
1175
1177
  "aria-label": "breadcrumb",
1176
1178
  "data-slot": "breadcrumb",
1177
1179
  ...e
1178
1180
  });
1179
1181
  }
1180
- function $t({ className: e, ...t }) {
1182
+ function Qt({ className: e, ...t }) {
1181
1183
  return /* @__PURE__ */ N("ol", {
1182
1184
  "data-slot": "breadcrumb-list",
1183
1185
  className: I("astw:text-muted-foreground astw:flex astw:flex-wrap astw:items-center astw:gap-1.5 astw:text-body-md astw:break-words astw:sm:gap-2.5", e),
1184
1186
  ...t
1185
1187
  });
1186
1188
  }
1187
- function en({ className: e, ...t }) {
1189
+ function $t({ className: e, ...t }) {
1188
1190
  return /* @__PURE__ */ N("li", {
1189
1191
  "data-slot": "breadcrumb-item",
1190
1192
  className: I("astw:inline-flex astw:items-center astw:gap-1.5", e),
1191
1193
  ...t
1192
1194
  });
1193
1195
  }
1194
- function tn({ render: e, className: t, children: r, to: i, ...a }) {
1196
+ function en({ render: e, className: t, children: r, to: i, ...a }) {
1195
1197
  let o = I("astw:hover:text-foreground astw:transition-colors", t);
1196
1198
  return k({
1197
1199
  defaultTagName: "a",
@@ -1207,7 +1209,7 @@ function tn({ render: e, className: t, children: r, to: i, ...a }) {
1207
1209
  }
1208
1210
  });
1209
1211
  }
1210
- function nn({ className: e, ariaCurrent: t = "location", ...n }) {
1212
+ function tn({ className: e, ariaCurrent: t = "location", ...n }) {
1211
1213
  return /* @__PURE__ */ N("span", {
1212
1214
  "data-slot": "breadcrumb-page",
1213
1215
  "aria-disabled": "true",
@@ -1216,7 +1218,7 @@ function nn({ className: e, ariaCurrent: t = "location", ...n }) {
1216
1218
  ...n
1217
1219
  });
1218
1220
  }
1219
- function rn({ children: e, className: t, ...n }) {
1221
+ function nn({ children: e, className: t, ...n }) {
1220
1222
  return /* @__PURE__ */ N("li", {
1221
1223
  "data-slot": "breadcrumb-separator",
1222
1224
  role: "presentation",
@@ -1228,31 +1230,31 @@ function rn({ children: e, className: t, ...n }) {
1228
1230
  }
1229
1231
  //#endregion
1230
1232
  //#region src/components/sidebar/dynamic-breadcrumb.tsx
1231
- var an = () => {
1232
- let { configurations: e } = B();
1233
- return Bt(d().pathname, e.basePath, e.modules, e.locale);
1234
- }, on = () => {
1235
- let { basePath: e, segments: t } = an(), { overrides: n } = st(), r = f("/:prefix/settings/:suffix"), i = V();
1236
- return r ? /* @__PURE__ */ N(Qt, { children: /* @__PURE__ */ N($t, { children: /* @__PURE__ */ N("div", {
1233
+ var rn = () => {
1234
+ let { configurations: e } = V();
1235
+ return zt(d().pathname, e.basePath, e.modules, e.locale);
1236
+ }, an = () => {
1237
+ let { basePath: e, segments: t } = rn(), { overrides: n } = ot(), r = f("/:prefix/settings/:suffix"), i = H();
1238
+ return r ? /* @__PURE__ */ N(Zt, { children: /* @__PURE__ */ N(Qt, { children: /* @__PURE__ */ N("div", {
1237
1239
  className: "astw:inline-flex astw:items-center astw:gap-3 astw:last:text-foreground",
1238
- children: /* @__PURE__ */ N(en, { children: /* @__PURE__ */ N(tn, {
1240
+ children: /* @__PURE__ */ N($t, { children: /* @__PURE__ */ N(en, {
1239
1241
  to: `/${r.params.prefix}/settings`,
1240
1242
  children: i("settings")
1241
1243
  }) })
1242
- }) }) }) : /* @__PURE__ */ N(Qt, { children: /* @__PURE__ */ N($t, { children: t.map((r, i) => {
1244
+ }) }) }) : /* @__PURE__ */ N(Zt, { children: /* @__PURE__ */ N(Qt, { children: t.map((r, i) => {
1243
1245
  let a = e ? `/${e}/${r.path}` : `/${r.path}`, o = n.get(a) ?? r.title;
1244
1246
  return /* @__PURE__ */ P("div", {
1245
1247
  className: "astw:inline-flex astw:items-center astw:gap-3 astw:last:text-foreground",
1246
- children: [/* @__PURE__ */ N(en, { children: r.clickable ? /* @__PURE__ */ N(tn, {
1248
+ children: [/* @__PURE__ */ N($t, { children: r.clickable ? /* @__PURE__ */ N(en, {
1247
1249
  to: r.path,
1248
1250
  children: o
1249
- }) : /* @__PURE__ */ N(nn, {
1251
+ }) : /* @__PURE__ */ N(tn, {
1250
1252
  ariaCurrent: i === t.length - 1 && "location",
1251
1253
  children: o
1252
- }) }), i < t.length - 1 && /* @__PURE__ */ N(rn, {})]
1254
+ }) }), i < t.length - 1 && /* @__PURE__ */ N(nn, {})]
1253
1255
  }, i);
1254
1256
  }) }) });
1255
- }, sn = [
1257
+ }, on = [
1256
1258
  {
1257
1259
  rel: "icon",
1258
1260
  type: "image/png",
@@ -1270,54 +1272,54 @@ var an = () => {
1270
1272
  sizes: "180x180",
1271
1273
  href: "data:image/png;base64,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"
1272
1274
  }
1273
- ], cn = " · ", ln = "data-app-shell-favicon", un = (e) => {
1275
+ ], sn = " · ", cn = "data-app-shell-favicon", ln = (e) => {
1274
1276
  if (e.startsWith("data:")) return e.match(/^data:([^;,]+)/)?.[1];
1275
1277
  if (e.endsWith(".svg")) return "image/svg+xml";
1276
1278
  if (e.endsWith(".png")) return "image/png";
1277
1279
  if (e.endsWith(".ico")) return "image/x-icon";
1278
- }, dn = () => {
1279
- let { title: e, favicon: t } = B(), { basePath: n, segments: r } = an(), i = ct()?.overrides, a = r.at(-1), o;
1280
+ }, un = () => {
1281
+ let { title: e, favicon: t } = V(), { basePath: n, segments: r } = rn(), i = st()?.overrides, a = r.at(-1), o;
1280
1282
  if (a) {
1281
1283
  let e = n ? `/${n}/${a.path}` : `/${a.path}`;
1282
1284
  o = i?.get(e) ?? a.title;
1283
1285
  }
1284
- let s = [o, e].filter(Boolean).join(cn), c = typeof document < "u" && document.head.querySelector(`link[rel~="icon"]:not([${ln}])`), l;
1286
+ let s = [o, e].filter(Boolean).join(sn), c = typeof document < "u" && document.head.querySelector(`link[rel~="icon"]:not([${cn}])`), l;
1285
1287
  return l = t ? [{
1286
1288
  rel: "icon",
1287
1289
  href: t,
1288
- type: un(t)
1289
- }] : c ? [] : sn, /* @__PURE__ */ P(M, { children: [s ? /* @__PURE__ */ N("title", { children: s }) : null, l.map(({ rel: e, href: t, type: n, sizes: r }) => /* @__PURE__ */ N("link", {
1290
+ type: ln(t)
1291
+ }] : c ? [] : on, /* @__PURE__ */ P(M, { children: [s ? /* @__PURE__ */ N("title", { children: s }) : null, l.map(({ rel: e, href: t, type: n, sizes: r }) => /* @__PURE__ */ N("link", {
1290
1292
  rel: e,
1291
1293
  href: t,
1292
1294
  "data-app-shell-favicon": "",
1293
1295
  ...n ? { type: n } : {},
1294
1296
  ...r ? { sizes: r } : {}
1295
1297
  }, `${e}-${r ?? "any"}`))] });
1296
- }, fn = (e) => {
1297
- let { configurations: t, contentRoutes: n, children: r } = e, { loaderID: i, loader: o } = Ht({
1298
+ }, dn = (e) => {
1299
+ let { configurations: t, contentRoutes: n, children: r } = e, { loaderID: i, loader: o } = Vt({
1298
1300
  modules: t.modules,
1299
1301
  locale: t.locale,
1300
1302
  basePath: t.basePath
1301
1303
  }), s = t.errorBoundary, c = s ? [{
1302
1304
  element: /* @__PURE__ */ N(a, {}),
1303
- ErrorBoundary: jt(s),
1305
+ ErrorBoundary: At(s),
1304
1306
  children: n
1305
1307
  }] : n;
1306
1308
  return {
1307
1309
  id: i,
1308
1310
  loader: o,
1309
- element: /* @__PURE__ */ P(M, { children: [/* @__PURE__ */ N(dn, {}), r] }),
1311
+ element: /* @__PURE__ */ P(M, { children: [/* @__PURE__ */ N(un, {}), r] }),
1310
1312
  children: c,
1311
1313
  HydrateFallback: () => null
1312
1314
  };
1313
- }, pn = {
1315
+ }, fn = {
1314
1316
  createBrowserRouter: o,
1315
1317
  createMemoryRouter: s
1316
- }, mn = (e) => {
1317
- let { children: t } = e, { configurations: n } = B(), r = C(() => Ft({
1318
+ }, pn = (e) => {
1319
+ let { children: t } = e, { configurations: n } = V(), r = C(() => Pt({
1318
1320
  modules: n.modules,
1319
1321
  settingsResources: n.settingsResources
1320
- }), [n.modules, n.settingsResources]), i = C(() => [fn({
1322
+ }), [n.modules, n.settingsResources]), i = C(() => [dn({
1321
1323
  configurations: n,
1322
1324
  contentRoutes: r,
1323
1325
  children: t
@@ -1325,19 +1327,19 @@ var an = () => {
1325
1327
  n,
1326
1328
  r,
1327
1329
  t
1328
- ]), a = n.basePath ? "/" + n.basePath : void 0, o = e.memory ? e.initialEntries : void 0, s = C(() => e.memory ? pn.createMemoryRouter(i, {
1330
+ ]), a = n.basePath ? "/" + n.basePath : void 0, o = e.memory ? e.initialEntries : void 0, s = C(() => e.memory ? fn.createMemoryRouter(i, {
1329
1331
  basename: a,
1330
1332
  ...o ? { initialEntries: o } : {}
1331
- }) : pn.createBrowserRouter(i, { basename: a }), [
1333
+ }) : fn.createBrowserRouter(i, { basename: a }), [
1332
1334
  a,
1333
1335
  o,
1334
1336
  e.memory,
1335
1337
  i
1336
1338
  ]);
1337
1339
  return /* @__PURE__ */ N(le, { router: s });
1338
- }, hn = v(null), Y = v(null);
1339
- function gn({ children: e, searchSources: t = [] }) {
1340
- let { pathname: n } = d(), { configurations: r } = B(), i = T(/* @__PURE__ */ new Map()), a = T(0), o = T(n), [s, c] = E([]), [l, u] = E(!1), [f, p] = E(null), [m, h] = E([]), [g, _] = E(null), [v, b] = E(!1), S = y(() => {
1340
+ }, mn = v(null), Z = v(null);
1341
+ function hn({ children: e, searchSources: t = [] }) {
1342
+ let { pathname: n } = d(), { configurations: r } = V(), i = T(/* @__PURE__ */ new Map()), a = T(0), o = T(n), [s, c] = E([]), [l, u] = E(!1), [f, p] = E(null), [m, h] = E([]), [g, _] = E(null), [v, b] = E(!1), S = y(() => {
1341
1343
  c(Array.from(i.current.values()).flat());
1342
1344
  }, []), w = y((e, t) => (i.current.set(e, t), S(), () => {
1343
1345
  i.current.delete(e), S();
@@ -1347,7 +1349,7 @@ function gn({ children: e, searchSources: t = [] }) {
1347
1349
  a.current += 1, u(!1), h([]), _(null), b(!1);
1348
1350
  }, []), k = y(() => {
1349
1351
  let e = a.current + 1;
1350
- a.current = e, h([]), _(n), b(!0), Xt({
1352
+ a.current = e, h([]), _(n), b(!0), Yt({
1351
1353
  modules: r.modules,
1352
1354
  locale: r.locale,
1353
1355
  basePath: r.basePath,
@@ -1407,21 +1409,21 @@ function gn({ children: e, searchSources: t = [] }) {
1407
1409
  n,
1408
1410
  j
1409
1411
  ]);
1410
- return /* @__PURE__ */ N(hn.Provider, {
1412
+ return /* @__PURE__ */ N(mn.Provider, {
1411
1413
  value: M,
1412
- children: /* @__PURE__ */ N(Y.Provider, {
1414
+ children: /* @__PURE__ */ N(Z.Provider, {
1413
1415
  value: P,
1414
1416
  children: e
1415
1417
  })
1416
1418
  });
1417
1419
  }
1418
- function _n() {
1419
- let e = b(hn);
1420
+ function gn() {
1421
+ let e = b(mn);
1420
1422
  if (!e) throw Error("useCommandPaletteDispatch must be used within CommandPaletteProvider");
1421
1423
  return e;
1422
1424
  }
1423
- function vn(e, t) {
1424
- let n = S(), { register: r } = _n(), i = T(t);
1425
+ function _n(e, t) {
1426
+ let n = S(), { register: r } = gn(), i = T(t);
1425
1427
  i.current = t;
1426
1428
  let a = t.map((e) => `${e.key}\0${e.label}`).join("\n");
1427
1429
  x(() => r(n, i.current.map((t) => ({
@@ -1435,68 +1437,84 @@ function vn(e, t) {
1435
1437
  e
1436
1438
  ]);
1437
1439
  }
1438
- function yn() {
1439
- let e = b(Y);
1440
+ function vn() {
1441
+ let e = b(Z);
1440
1442
  if (!e) throw Error("useCommandPaletteState must be used within CommandPaletteProvider");
1441
1443
  return e;
1442
1444
  }
1443
- function bn() {
1444
- let e = b(Y);
1445
+ function yn() {
1446
+ let e = b(Z);
1445
1447
  if (!e) throw Error("useOpenCommandPalette must be used within CommandPaletteProvider");
1446
1448
  return e.openCommandPalette;
1447
1449
  }
1448
- function xn() {
1449
- let e = b(Y);
1450
+ function bn() {
1451
+ let e = b(Z);
1450
1452
  if (!e) throw Error("useCommandPaletteActions must be used within CommandPaletteProvider");
1451
1453
  return e.actions;
1452
1454
  }
1453
1455
  //#endregion
1454
1456
  //#region src/components/dialog/dialog.tsx
1455
- function Sn({ ...e }) {
1457
+ function xn({ ...e }) {
1456
1458
  return /* @__PURE__ */ N(F.Root, {
1457
1459
  "data-slot": "dialog",
1458
1460
  ...e
1459
1461
  });
1460
1462
  }
1461
- Sn.displayName = "Dialog.Root";
1462
- function Cn({ ...e }) {
1463
+ xn.displayName = "Dialog.Root";
1464
+ function Sn({ ...e }) {
1463
1465
  return /* @__PURE__ */ N(F.Trigger, {
1464
1466
  "data-slot": "dialog-trigger",
1465
1467
  ...e
1466
1468
  });
1467
1469
  }
1468
- Cn.displayName = "Dialog.Trigger";
1469
- function wn({ ...e }) {
1470
+ Sn.displayName = "Dialog.Trigger";
1471
+ function Cn({ ...e }) {
1470
1472
  return /* @__PURE__ */ N(F.Portal, {
1471
1473
  "data-slot": "dialog-portal",
1472
1474
  ...e
1473
1475
  });
1474
1476
  }
1475
- wn.displayName = "Dialog.Portal";
1476
- function Tn({ ...e }) {
1477
+ Cn.displayName = "Dialog.Portal";
1478
+ function wn({ ...e }) {
1477
1479
  return /* @__PURE__ */ N(F.Close, {
1478
1480
  "data-slot": "dialog-close",
1479
1481
  ...e
1480
1482
  });
1481
1483
  }
1482
- Tn.displayName = "Dialog.Close";
1483
- function En({ className: e, ...t }) {
1484
+ wn.displayName = "Dialog.Close";
1485
+ function Tn({ className: e, ...t }) {
1484
1486
  return /* @__PURE__ */ N(F.Backdrop, {
1485
1487
  "data-slot": "dialog-overlay",
1486
- className: I("astw:data-open:animate-in astw:data-ending-style:animate-out astw:data-ending-style:fade-out-0 astw:data-open:fade-in-0 astw:fill-mode-forwards astw:fixed astw:inset-0 astw:z-(--z-overlay) astw:bg-backdrop", e),
1488
+ className: I("astw:data-open:animate-in astw:data-ending-style:animate-out astw:data-ending-style:fade-out-0 astw:data-open:fade-in-0 astw:fill-mode-forwards astw:fixed astw:inset-0 astw:z-(--z-portal) astw:bg-backdrop", e),
1487
1489
  ...t
1488
1490
  });
1489
1491
  }
1490
- En.displayName = "Dialog.Overlay";
1491
- function Dn({ className: e, children: t, ...n }) {
1492
- return /* @__PURE__ */ P(wn, {
1492
+ Tn.displayName = "Dialog.Overlay";
1493
+ var En = "a[href], button, input, select, textarea, [tabindex]:not([tabindex=\"-1\"]), [contenteditable=\"\"], [contenteditable=\"true\"]";
1494
+ function Dn(e) {
1495
+ return Array.from(e.querySelectorAll(En)).find((e) => e.tabIndex >= 0 && !e.disabled && e.getClientRects().length > 0) ?? null;
1496
+ }
1497
+ function On({ className: e, children: t, ref: n, initialFocus: r, ...i }) {
1498
+ let a = g.useRef(null);
1499
+ return /* @__PURE__ */ P(Cn, {
1493
1500
  "data-slot": "dialog-portal",
1494
- children: [/* @__PURE__ */ N(En, {}), /* @__PURE__ */ P(F.Popup, {
1501
+ children: [/* @__PURE__ */ N(Tn, {}), /* @__PURE__ */ P(F.Popup, {
1495
1502
  "data-slot": "dialog-content",
1496
- className: I("astw:bg-card astw:data-open:animate-in astw:data-ending-style:animate-out astw:data-ending-style:fade-out-0 astw:data-open:fade-in-0 astw:data-ending-style:zoom-out-95 astw:data-open:zoom-in-95 astw:fill-mode-forwards astw:fixed astw:top-[50%] astw:left-[50%] astw:z-(--z-overlay) astw:grid astw:w-full astw:max-w-[calc(100%-2rem)] astw:translate-x-[-50%] astw:translate-y-[-50%] astw:gap-4 astw:rounded-lg astw:border astw:border-border astw:p-6 astw:shadow-lg astw:duration-200 astw:sm:max-w-lg", e),
1497
- ...n,
1503
+ ref: L(a, n),
1504
+ initialFocus: r ?? ((e) => {
1505
+ let t = a.current;
1506
+ if (!t) return !0;
1507
+ if (e === "touch") return t;
1508
+ if (t.scrollHeight <= t.clientHeight) return !0;
1509
+ let n = Dn(t);
1510
+ if (!n) return t;
1511
+ let r = t.getBoundingClientRect(), i = n.getBoundingClientRect();
1512
+ return i.top >= r.top && i.bottom <= r.bottom ? n : t;
1513
+ }),
1514
+ className: I("astw:bg-card astw:data-open:animate-in astw:data-ending-style:animate-out astw:data-ending-style:fade-out-0 astw:data-open:fade-in-0 astw:data-ending-style:zoom-out-95 astw:data-open:zoom-in-95 astw:fill-mode-forwards astw:fixed astw:top-[50%] astw:left-[50%] astw:z-(--z-portal) astw:grid astw:w-full astw:max-w-[calc(100%-2rem)] astw:max-h-[calc(100dvh-2rem)] astw:overflow-y-auto astw:translate-x-[-50%] astw:translate-y-[-50%] astw:gap-4 astw:rounded-lg astw:border astw:border-border astw:p-6 astw:shadow-lg astw:duration-200 astw:sm:max-w-lg", e),
1515
+ ...i,
1498
1516
  children: [t, /* @__PURE__ */ P(F.Close, {
1499
- className: "astw:ring-offset-bg astw:focus:ring-ring astw:data-open:bg-accent astw:data-open:text-muted-foreground astw:absolute astw:top-4 astw:right-4 astw:rounded-xs astw:opacity-70 astw:transition-opacity astw:hover:opacity-100 astw:focus:ring-2 astw:focus:ring-offset-2 astw:focus:outline-hidden astw:disabled:pointer-events-none astw:[&_svg]:pointer-events-none astw:[&_svg]:shrink-0 astw:[&_svg:not([class*='size-'])]:size-4",
1517
+ className: "astw:ring-offset-card astw:focus:ring-ring astw:data-open:bg-accent astw:data-open:text-muted-foreground astw:absolute astw:top-4 astw:right-4 astw:rounded-xs astw:opacity-70 astw:transition-opacity astw:hover:opacity-100 astw:focus:ring-2 astw:focus:ring-offset-2 astw:focus:outline-hidden astw:disabled:pointer-events-none astw:[&_svg]:pointer-events-none astw:[&_svg]:shrink-0 astw:[&_svg:not([class*='size-'])]:size-4",
1500
1518
  children: [/* @__PURE__ */ N(ae, {}), /* @__PURE__ */ N("span", {
1501
1519
  className: "astw:sr-only",
1502
1520
  children: "Close"
@@ -1505,25 +1523,25 @@ function Dn({ className: e, children: t, ...n }) {
1505
1523
  })]
1506
1524
  });
1507
1525
  }
1508
- Dn.displayName = "Dialog.Content";
1509
- function On({ className: e, ...t }) {
1526
+ On.displayName = "Dialog.Content";
1527
+ function kn({ className: e, ...t }) {
1510
1528
  return /* @__PURE__ */ N("div", {
1511
1529
  "data-slot": "dialog-header",
1512
1530
  className: I("astw:flex astw:flex-col astw:gap-2 astw:text-center astw:sm:text-left", e),
1513
1531
  ...t
1514
1532
  });
1515
1533
  }
1516
- On.displayName = "Dialog.Header";
1517
- function kn({ className: e, ...t }) {
1534
+ kn.displayName = "Dialog.Header";
1535
+ function An({ className: e, ...t }) {
1518
1536
  return /* @__PURE__ */ N("div", {
1519
1537
  "data-slot": "dialog-footer",
1520
1538
  className: I("astw:flex astw:flex-col-reverse astw:gap-2 astw:sm:flex-row astw:sm:justify-end", e),
1521
1539
  ...t
1522
1540
  });
1523
1541
  }
1524
- kn.displayName = "Dialog.Footer";
1525
- function An({ className: e, ...t }) {
1526
- return /* @__PURE__ */ N(U, {
1542
+ An.displayName = "Dialog.Footer";
1543
+ function jn({ className: e, ...t }) {
1544
+ return /* @__PURE__ */ N(W, {
1527
1545
  variant: "heading-md",
1528
1546
  className: I("astw:leading-none", e),
1529
1547
  render: /* @__PURE__ */ N(F.Title, {
@@ -1532,9 +1550,9 @@ function An({ className: e, ...t }) {
1532
1550
  })
1533
1551
  });
1534
1552
  }
1535
- An.displayName = "Dialog.Title";
1536
- function jn({ className: e, ...t }) {
1537
- return /* @__PURE__ */ N(U, {
1553
+ jn.displayName = "Dialog.Title";
1554
+ function Mn({ className: e, ...t }) {
1555
+ return /* @__PURE__ */ N(W, {
1538
1556
  variant: "body-md",
1539
1557
  className: I("astw:text-muted-foreground", e),
1540
1558
  render: /* @__PURE__ */ N(F.Description, {
@@ -1543,46 +1561,46 @@ function jn({ className: e, ...t }) {
1543
1561
  })
1544
1562
  });
1545
1563
  }
1546
- jn.displayName = "Dialog.Description";
1547
- var X = {
1548
- Root: Sn,
1549
- Close: Tn,
1550
- Content: Dn,
1551
- Description: jn,
1552
- Footer: kn,
1553
- Header: On,
1554
- Title: An,
1555
- Trigger: Cn
1556
- }, Mn = [
1564
+ Mn.displayName = "Dialog.Description";
1565
+ var Q = {
1566
+ Root: xn,
1567
+ Close: wn,
1568
+ Content: On,
1569
+ Description: Mn,
1570
+ Footer: An,
1571
+ Header: kn,
1572
+ Title: jn,
1573
+ Trigger: Sn
1574
+ }, Nn = [
1557
1575
  "astw:border-input astw:flex astw:w-full astw:min-w-0 astw:rounded-md astw:border astw:bg-transparent astw:px-3 astw:text-base astw:outline-none astw:md:text-sm",
1558
1576
  "astw:dark:bg-input/30 astw:transition-[color,box-shadow]",
1559
1577
  "astw:selection:bg-primary astw:selection:text-primary-foreground",
1560
1578
  "astw:placeholder:text-muted-foreground",
1561
1579
  "astw:focus-visible:border-ring astw:focus-visible:ring-ring/50 astw:focus-visible:ring-[3px]",
1562
1580
  "astw:disabled:pointer-events-none astw:disabled:cursor-not-allowed astw:disabled:opacity-50"
1563
- ], Nn = [...Mn, "astw:h-9 astw:py-1"], Pn = [...Mn, "astw:min-h-16 astw:py-2 astw:resize-y"];
1581
+ ], Pn = [...Nn, "astw:h-9 astw:py-1"], Fn = [...Nn, "astw:min-h-16 astw:py-2 astw:resize-y"];
1564
1582
  //#endregion
1565
1583
  //#region src/components/input/input.tsx
1566
- function Fn({ className: e, type: t, ref: n, ...r }) {
1584
+ function In({ className: e, type: t, ref: n, ...r }) {
1567
1585
  let i = g.useRef(null);
1568
1586
  return _e(i, { handlesDirectionalKeys: !0 }), /* @__PURE__ */ N("input", {
1569
- ref: ge(i, n),
1587
+ ref: L(i, n),
1570
1588
  type: t,
1571
1589
  "data-slot": "input",
1572
- className: I(Nn, "astw:file:text-foreground astw:file:inline-flex astw:file:h-7 astw:file:border-0 astw:file:bg-transparent astw:file:text-label-md", "astw:aria-invalid:ring-danger-solid/20 astw:dark:aria-invalid:ring-danger-solid/40 astw:aria-invalid:border-danger-solid", e),
1590
+ className: I(Pn, "astw:file:text-foreground astw:file:inline-flex astw:file:h-7 astw:file:border-0 astw:file:bg-transparent astw:file:text-label-md", "astw:aria-invalid:ring-danger-solid/20 astw:dark:aria-invalid:ring-danger-solid/40 astw:aria-invalid:border-danger-solid", e),
1573
1591
  ...r
1574
1592
  });
1575
1593
  }
1576
1594
  //#endregion
1577
1595
  //#region src/components/spinner/spinner.tsx
1578
- var In = {
1596
+ var Ln = {
1579
1597
  xs: 12,
1580
1598
  sm: 14,
1581
1599
  default: 16,
1582
1600
  lg: 20
1583
1601
  };
1584
- function Ln({ className: e, size: t = "default", width: n, height: r, ...i }) {
1585
- let a = i["aria-label"] != null || i["aria-labelledby"] != null, o = i["aria-hidden"] === !0 || i["aria-hidden"] == null && i.role == null && !a, s = In[t];
1602
+ function Rn({ className: e, size: t = "default", width: n, height: r, ...i }) {
1603
+ let a = i["aria-label"] != null || i["aria-labelledby"] != null, o = i["aria-hidden"] === !0 || i["aria-hidden"] == null && i.role == null && !a, s = Ln[t];
1586
1604
  return /* @__PURE__ */ N("svg", {
1587
1605
  "data-slot": "spinner",
1588
1606
  viewBox: "0 0 16 16",
@@ -1608,13 +1626,13 @@ function Ln({ className: e, size: t = "default", width: n, height: r, ...i }) {
1608
1626
  }
1609
1627
  //#endregion
1610
1628
  //#region src/lib/is-composing.ts
1611
- function Rn(e, t = !1) {
1629
+ function zn(e, t = !1) {
1612
1630
  return e.isComposing || t || e.keyCode === 229;
1613
1631
  }
1614
1632
  //#endregion
1615
1633
  //#region src/components/command-palette/command-palette.tsx
1616
- var Z = "astw:relative astw:flex astw:w-full astw:cursor-pointer astw:select-none astw:rounded-sm astw:px-2 astw:py-2 astw:text-body-md astw:outline-none astw:text-left", Q = (e) => e ? "astw:bg-accent astw:text-accent-foreground" : "astw:hover:bg-accent astw:hover:text-accent-foreground";
1617
- function zn(e) {
1634
+ var Bn = "astw:relative astw:flex astw:w-full astw:cursor-pointer astw:select-none astw:rounded-sm astw:px-2 astw:py-2 astw:text-body-md astw:outline-none astw:text-left", Vn = (e) => e ? "astw:bg-accent astw:text-accent-foreground" : "astw:hover:bg-accent astw:hover:text-accent-foreground";
1635
+ function Hn(e) {
1618
1636
  let t = [], n = (e, r, i) => {
1619
1637
  e.forEach((e) => {
1620
1638
  let a = [...i, e.title];
@@ -1635,17 +1653,17 @@ function zn(e) {
1635
1653
  }), n(e.items, e.icon, [e.title]);
1636
1654
  }), t;
1637
1655
  }
1638
- function Bn(e, t) {
1656
+ function Un(e, t) {
1639
1657
  if (!t.trim()) return e;
1640
1658
  let n = t.toLowerCase();
1641
1659
  return e.filter((e) => e.label.toLowerCase().includes(n));
1642
1660
  }
1643
- var Vn = 300, Hn = (e) => e === "/" || e.startsWith("/_"), Un = {
1661
+ var Wn = 300, Gn = (e) => e === "/" || e.startsWith("/_"), Kn = {
1644
1662
  mode: "browse",
1645
1663
  search: "",
1646
1664
  selectedIndex: 0
1647
- }, Wn = [];
1648
- function Gn(e, t) {
1665
+ }, qn = [];
1666
+ function Jn(e, t) {
1649
1667
  switch (t.type) {
1650
1668
  case "SET_SEARCH": return e.mode === "search" ? {
1651
1669
  ...e,
@@ -1683,7 +1701,7 @@ function Gn(e, t) {
1683
1701
  results: [],
1684
1702
  isSearching: !1
1685
1703
  };
1686
- case "EXIT_SEARCH_MODE": return Un;
1704
+ case "EXIT_SEARCH_MODE": return Kn;
1687
1705
  case "SEARCH_START": return e.mode === "search" ? {
1688
1706
  ...e,
1689
1707
  isSearching: !0,
@@ -1707,10 +1725,10 @@ function Gn(e, t) {
1707
1725
  ...e,
1708
1726
  selectedIndex: Math.max(e.selectedIndex - 1, 0)
1709
1727
  };
1710
- case "RESET": return Un;
1728
+ case "RESET": return Kn;
1711
1729
  }
1712
1730
  }
1713
- function Kn(e, t) {
1731
+ function Yn(e, t) {
1714
1732
  let n = e.indexOf(":");
1715
1733
  if (n < 1) return {
1716
1734
  activeSource: null,
@@ -1725,13 +1743,13 @@ function Kn(e, t) {
1725
1743
  searchQuery: e
1726
1744
  };
1727
1745
  }
1728
- function qn({ routes: e, contextualActions: t = [], searchSources: n = [], open: r, setOpen: i }) {
1729
- let a = p(), o = T(null), [s, c] = w(Gn, Un), l = T(null), u = s.mode === "search" ? s.query : s.search, d = s.selectedIndex, f = s.mode === "search" ? s.source : null, m = s.mode === "search" ? s.results : Wn, h = s.mode === "search" && s.isSearching, g = C(() => f ? [] : Bn(t, u), [
1746
+ function Xn({ routes: e, contextualActions: t = [], searchSources: n = [], open: r, setOpen: i }) {
1747
+ let a = p(), o = T(null), [s, c] = w(Jn, Kn), l = T(null), u = s.mode === "search" ? s.query : s.search, d = s.selectedIndex, f = s.mode === "search" ? s.source : null, m = s.mode === "search" ? s.results : qn, h = s.mode === "search" && s.isSearching, g = C(() => f ? [] : Un(t, u), [
1730
1748
  t,
1731
1749
  u,
1732
1750
  f
1733
- ]), _ = C(() => f ? [] : Lt(e, u).toSorted((e, t) => {
1734
- let n = Hn(e.path), r = Hn(t.path);
1751
+ ]), _ = C(() => f ? [] : It(e, u).toSorted((e, t) => {
1752
+ let n = Gn(e.path), r = Gn(t.path);
1735
1753
  return Number(n) - Number(r) || e.path.localeCompare(t.path);
1736
1754
  }), [
1737
1755
  e,
@@ -1754,7 +1772,7 @@ function qn({ routes: e, contextualActions: t = [], searchSources: n = [], open:
1754
1772
  }).catch(() => {
1755
1773
  e.signal.aborted || c({ type: "SEARCH_FAIL" });
1756
1774
  });
1757
- }, Vn);
1775
+ }, Wn);
1758
1776
  return () => {
1759
1777
  clearTimeout(e), l.current?.abort(), l.current = null;
1760
1778
  };
@@ -1795,7 +1813,7 @@ function qn({ routes: e, contextualActions: t = [], searchSources: n = [], open:
1795
1813
  });
1796
1814
  return;
1797
1815
  }
1798
- let t = Kn(e, n);
1816
+ let t = Yn(e, n);
1799
1817
  c({
1800
1818
  type: "SET_SEARCH",
1801
1819
  value: e,
@@ -1803,7 +1821,7 @@ function qn({ routes: e, contextualActions: t = [], searchSources: n = [], open:
1803
1821
  detectedQuery: t.activeSource ? t.searchQuery : void 0
1804
1822
  });
1805
1823
  }, [s.mode, n]), S = y((e) => {
1806
- let t = Kn(e, n);
1824
+ let t = Yn(e, n);
1807
1825
  c({
1808
1826
  type: "INITIALIZE_SEARCH",
1809
1827
  value: e,
@@ -1847,7 +1865,7 @@ function qn({ routes: e, contextualActions: t = [], searchSources: n = [], open:
1847
1865
  selectableItems: v,
1848
1866
  handleSelectItem: D,
1849
1867
  handleKeyDown: y((e) => {
1850
- if (!Rn(e.nativeEvent)) switch (e.key) {
1868
+ if (!zn(e.nativeEvent)) switch (e.key) {
1851
1869
  case "ArrowDown":
1852
1870
  e.preventDefault(), c({
1853
1871
  type: "ARROW_DOWN",
@@ -1872,10 +1890,10 @@ function qn({ routes: e, contextualActions: t = [], searchSources: n = [], open:
1872
1890
  listRef: o
1873
1891
  };
1874
1892
  }
1875
- function Jn({ navItems: e, extraRoutes: t = [] }) {
1876
- let n = V(), r = xn(), { searchSources: i, open: a, setOpen: o, openRequest: s, clearOpenRequest: c, dynamicRoutes: l, isLoadingDynamicRoutes: u } = yn(), { open: d, handleOpenChange: f, search: p, setSearch: m, initializeSearch: h, selectedIndex: g, filteredActions: _, filteredRoutes: v, searchResults: y, activeSearchSource: b, isSearching: S, selectableItems: w, handleSelectItem: T, handleKeyDown: E, listRef: D } = qn({
1893
+ function Zn({ navItems: e, extraRoutes: t = [] }) {
1894
+ let n = H(), r = bn(), { searchSources: i, open: a, setOpen: o, openRequest: s, clearOpenRequest: c, dynamicRoutes: l, isLoadingDynamicRoutes: u } = vn(), { open: d, handleOpenChange: f, search: p, setSearch: m, initializeSearch: h, selectedIndex: g, filteredActions: _, filteredRoutes: v, searchResults: y, activeSearchSource: b, isSearching: S, selectableItems: w, handleSelectItem: T, handleKeyDown: E, listRef: D } = Xn({
1877
1895
  routes: C(() => [
1878
- ...zn(e),
1896
+ ...Hn(e),
1879
1897
  ...t,
1880
1898
  ...l
1881
1899
  ], [
@@ -1896,15 +1914,15 @@ function Jn({ navItems: e, extraRoutes: t = [] }) {
1896
1914
  c
1897
1915
  ]);
1898
1916
  let O = b ? [] : w.filter((e) => e.type === "search-mode"), k = O.length, A = k, j = A + _.length;
1899
- return /* @__PURE__ */ N(X.Root, {
1917
+ return /* @__PURE__ */ N(Q.Root, {
1900
1918
  open: d,
1901
1919
  onOpenChange: f,
1902
- children: /* @__PURE__ */ P(X.Content, {
1920
+ children: /* @__PURE__ */ P(Q.Content, {
1903
1921
  className: "astw:p-0 astw:gap-0 astw:sm:max-w-2xl astw:lg:max-w-4xl astw:overflow-hidden astw:top-[30%] astw:translate-y-[-30%]",
1904
1922
  onKeyDown: E,
1905
1923
  "aria-describedby": void 0,
1906
1924
  children: [
1907
- /* @__PURE__ */ N(X.Title, {
1925
+ /* @__PURE__ */ N(Q.Title, {
1908
1926
  className: "astw:sr-only",
1909
1927
  children: n("commandPaletteSearch")
1910
1928
  }),
@@ -1916,7 +1934,7 @@ function Jn({ navItems: e, extraRoutes: t = [] }) {
1916
1934
  className: "astw:inline-flex astw:items-center astw:shrink-0 astw:rounded astw:bg-muted astw:px-1.5 astw:py-0.5 astw:mr-1.5 astw:text-label-sm astw:text-muted-foreground",
1917
1935
  children: b.prefix
1918
1936
  }),
1919
- /* @__PURE__ */ N(Fn, {
1937
+ /* @__PURE__ */ N(In, {
1920
1938
  value: p,
1921
1939
  onChange: (e) => m(e.target.value),
1922
1940
  placeholder: n("commandPaletteSearch"),
@@ -1936,7 +1954,7 @@ function Jn({ navItems: e, extraRoutes: t = [] }) {
1936
1954
  children: [
1937
1955
  u && /* @__PURE__ */ P("output", {
1938
1956
  className: "astw:flex astw:items-center astw:justify-center astw:gap-2 astw:py-4 astw:text-body-md astw:text-muted-foreground",
1939
- children: [/* @__PURE__ */ N(Ln, { "aria-label": n("commandPaletteLoadingRoutes") }), n("commandPaletteLoadingRoutes")]
1957
+ children: [/* @__PURE__ */ N(Rn, { "aria-label": n("commandPaletteLoadingRoutes") }), n("commandPaletteLoadingRoutes")]
1940
1958
  }),
1941
1959
  k > 0 && /* @__PURE__ */ P(M, { children: [/* @__PURE__ */ N("div", {
1942
1960
  className: "astw:px-2 astw:py-1.5 astw:text-label-sm astw:text-muted-foreground",
@@ -1949,7 +1967,7 @@ function Jn({ navItems: e, extraRoutes: t = [] }) {
1949
1967
  type: "search-mode",
1950
1968
  source: n
1951
1969
  }),
1952
- className: I(Z, "astw:items-center astw:gap-2", Q(t === g)),
1970
+ className: I(Bn, "astw:items-center astw:gap-2", Vn(t === g)),
1953
1971
  children: [
1954
1972
  n.icon && /* @__PURE__ */ N("span", {
1955
1973
  className: "astw:flex astw:size-4 astw:items-center astw:justify-center astw:shrink-0",
@@ -1977,7 +1995,7 @@ function Jn({ navItems: e, extraRoutes: t = [] }) {
1977
1995
  type: "action",
1978
1996
  action: e
1979
1997
  }),
1980
- className: I(Z, "astw:items-center astw:gap-2", Q(n === g)),
1998
+ className: I(Bn, "astw:items-center astw:gap-2", Vn(n === g)),
1981
1999
  children: [
1982
2000
  e.icon && /* @__PURE__ */ N("span", {
1983
2001
  className: "astw:flex astw:size-4 astw:items-center astw:justify-center astw:shrink-0",
@@ -2005,7 +2023,7 @@ function Jn({ navItems: e, extraRoutes: t = [] }) {
2005
2023
  type: "route",
2006
2024
  route: e
2007
2025
  }),
2008
- className: I(Z, "astw:flex-col astw:items-start", Q(n === g)),
2026
+ className: I(Bn, "astw:flex-col astw:items-start", Vn(n === g)),
2009
2027
  children: [/* @__PURE__ */ N("span", {
2010
2028
  className: "astw:truncate astw:w-full astw:text-left",
2011
2029
  children: e.breadcrumb.join(" > ")
@@ -2025,7 +2043,7 @@ function Jn({ navItems: e, extraRoutes: t = [] }) {
2025
2043
  result: e,
2026
2044
  source: b
2027
2045
  }),
2028
- className: I(Z, "astw:flex-col astw:items-start", Q(t === g)),
2046
+ className: I(Bn, "astw:flex-col astw:items-start", Vn(t === g)),
2029
2047
  children: [/* @__PURE__ */ P("span", {
2030
2048
  className: "astw:flex astw:items-center astw:gap-2 astw:w-full",
2031
2049
  children: [(e.icon || b.icon) && /* @__PURE__ */ N("span", {
@@ -2043,23 +2061,23 @@ function Jn({ navItems: e, extraRoutes: t = [] }) {
2043
2061
  ]
2044
2062
  }), S && /* @__PURE__ */ P("div", {
2045
2063
  className: "astw:flex astw:items-center astw:justify-center astw:gap-2 astw:py-4 astw:text-body-md astw:text-muted-foreground",
2046
- children: [/* @__PURE__ */ N(Ln, {}), n("commandPaletteSearching")]
2064
+ children: [/* @__PURE__ */ N(Rn, {}), n("commandPaletteSearching")]
2047
2065
  })]
2048
2066
  })
2049
2067
  ]
2050
2068
  })
2051
2069
  });
2052
2070
  }
2053
- function Yn() {
2071
+ function Qn() {
2054
2072
  return null;
2055
2073
  }
2056
- function Xn() {
2057
- let e = Ut(), n = gt();
2074
+ function $n() {
2075
+ let e = Ht(), n = ht();
2058
2076
  return /* @__PURE__ */ N(_, {
2059
2077
  fallback: null,
2060
2078
  children: /* @__PURE__ */ N(t, {
2061
2079
  resolve: e,
2062
- children: (e) => /* @__PURE__ */ N(Jn, {
2080
+ children: (e) => /* @__PURE__ */ N(Zn, {
2063
2081
  navItems: e ?? [],
2064
2082
  extraRoutes: [n]
2065
2083
  })
@@ -2068,13 +2086,13 @@ function Xn() {
2068
2086
  }
2069
2087
  //#endregion
2070
2088
  //#region src/hooks/use-is-client.ts
2071
- var Zn = () => () => {}, Qn = () => !0, $n = () => !1;
2072
- function er() {
2073
- return D(Zn, Qn, $n);
2089
+ var er = () => () => {}, tr = () => !0, nr = () => !1;
2090
+ function rr() {
2091
+ return D(er, tr, nr);
2074
2092
  }
2075
2093
  //#endregion
2076
2094
  //#region src/fs-routes/converter.tsx
2077
- function tr(e) {
2095
+ function ir(e) {
2078
2096
  let t = {
2079
2097
  path: "",
2080
2098
  fullPath: "",
@@ -2082,7 +2100,7 @@ function tr(e) {
2082
2100
  children: /* @__PURE__ */ new Map()
2083
2101
  };
2084
2102
  for (let n of e) {
2085
- let e = de(n.path), r = t, i = "";
2103
+ let e = fe(n.path), r = t, i = "";
2086
2104
  for (let t of e) t.type !== "group" && (i = i ? `${i}/${t.converted}` : t.converted, r.children.has(t.converted) || r.children.set(t.converted, {
2087
2105
  path: t.converted,
2088
2106
  fullPath: i,
@@ -2093,12 +2111,12 @@ function tr(e) {
2093
2111
  }
2094
2112
  return t;
2095
2113
  }
2096
- function nr(e, t) {
2097
- return e?.appShellPageProps?.meta?.title ?? Ye(t);
2114
+ function ar(e, t) {
2115
+ return e?.appShellPageProps?.meta?.title ?? Je(t);
2098
2116
  }
2099
- function rr(e) {
2100
- let t = e.component, n = nr(t, e.path), r = t?.appShellPageProps?.meta?.icon, i = t?.appShellPageProps?.meta?.breadcrumbTitle, a = e.guards && e.guards.length > 0 ? Je(e.guards) : void 0, o = [];
2101
- for (let t of e.children.values()) o.push(rr(t));
2117
+ function or(e) {
2118
+ let t = e.component, n = ar(t, e.path), r = t?.appShellPageProps?.meta?.icon, i = t?.appShellPageProps?.meta?.breadcrumbTitle, a = e.guards && e.guards.length > 0 ? J(e.guards) : void 0, o = [];
2119
+ for (let t of e.children.values()) o.push(or(t));
2102
2120
  return {
2103
2121
  _type: "resource",
2104
2122
  type: "component",
@@ -2110,14 +2128,14 @@ function rr(e) {
2110
2128
  },
2111
2129
  component: t ? () => /* @__PURE__ */ N(t, {}) : void 0,
2112
2130
  subResources: o.length > 0 ? o : void 0,
2113
- errorBoundary: /* @__PURE__ */ N(W, {}),
2131
+ errorBoundary: /* @__PURE__ */ N(G, {}),
2114
2132
  guards: e.guards,
2115
2133
  loader: a
2116
2134
  };
2117
2135
  }
2118
- function ir(e) {
2119
- let t = e.component, n = nr(t, e.path), r = t?.appShellPageProps?.meta?.icon, i = t?.appShellPageProps?.meta?.breadcrumbTitle, a = e.guards && e.guards.length > 0 ? Je(e.guards) : void 0, o = [];
2120
- for (let t of e.children.values()) o.push(rr(t));
2136
+ function sr(e) {
2137
+ let t = e.component, n = ar(t, e.path), r = t?.appShellPageProps?.meta?.icon, i = t?.appShellPageProps?.meta?.breadcrumbTitle, a = e.guards && e.guards.length > 0 ? J(e.guards) : void 0, o = [];
2138
+ for (let t of e.children.values()) o.push(or(t));
2121
2139
  return {
2122
2140
  _type: "module",
2123
2141
  type: "component",
@@ -2130,34 +2148,34 @@ function ir(e) {
2130
2148
  },
2131
2149
  component: t ? () => /* @__PURE__ */ N(t, {}) : void 0,
2132
2150
  resources: o,
2133
- errorBoundary: /* @__PURE__ */ N(W, {}),
2151
+ errorBoundary: /* @__PURE__ */ N(G, {}),
2134
2152
  guards: e.guards,
2135
2153
  loader: a
2136
2154
  };
2137
2155
  }
2138
- function ar(e) {
2156
+ function cr(e) {
2139
2157
  if (e.length === 0) return [];
2140
- let t = tr(e), n = [];
2158
+ let t = ir(e), n = [];
2141
2159
  if (t.component) {
2142
- let e = ir({
2160
+ let e = sr({
2143
2161
  ...t,
2144
2162
  path: "",
2145
2163
  children: /* @__PURE__ */ new Map()
2146
2164
  });
2147
2165
  n.push(e);
2148
2166
  }
2149
- for (let e of t.children.values()) n.push(ir(e));
2167
+ for (let e of t.children.values()) n.push(sr(e));
2150
2168
  return n;
2151
2169
  }
2152
2170
  //#endregion
2153
2171
  //#region src/components/appshell/appshell.tsx
2154
2172
  var $ = (e) => {
2155
- let t = er();
2173
+ let t = rr();
2156
2174
  We(e.contextData ?? {});
2157
2175
  let { modules: n, rootComponent: r, rootGuards: i } = e, a = e.memory ? {
2158
2176
  memory: !0,
2159
2177
  initialEntries: e.initialEntries
2160
- } : { memory: !1 }, o = C(() => n && (n.some((e) => e.path === "") ? ((r || i?.length) && console.warn("[AppShell] Both a root module (path=\"\") and rootComponent/rootGuards are provided. The root module takes precedence; rootComponent and rootGuards will be ignored. Define guards directly on the root module instead."), n) : r || i?.length ? [Ze({
2178
+ } : { memory: !1 }, o = C(() => n && (n.some((e) => e.path === "") ? ((r || i?.length) && console.warn("[AppShell] Both a root module (path=\"\") and rootComponent/rootGuards are provided. The root module takes precedence; rootComponent and rootGuards will be ignored. Define guards directly on the root module instead."), n) : r || i?.length ? [Xe({
2161
2179
  path: "",
2162
2180
  ...r ? {
2163
2181
  meta: {
@@ -2205,12 +2223,11 @@ var $ = (e) => {
2205
2223
  className: "astw:flex astw:min-h-screen astw:items-center astw:justify-center astw:bg-background astw:p-4",
2206
2224
  children: /* @__PURE__ */ P("div", {
2207
2225
  className: "astw:max-w-md astw:rounded-lg astw:border astw:border-danger-border astw:bg-danger-surface astw:p-6 astw:text-center",
2208
- children: [/* @__PURE__ */ N(U, {
2226
+ children: [/* @__PURE__ */ N(W.h1, {
2209
2227
  variant: "heading-md",
2210
2228
  className: "astw:mb-2 astw:text-danger-text",
2211
- render: /* @__PURE__ */ N("h1", {}),
2212
2229
  children: "Configuration Error"
2213
- }), /* @__PURE__ */ N(U, {
2230
+ }), /* @__PURE__ */ N(W, {
2214
2231
  variant: "body-md",
2215
2232
  className: "astw:text-muted-foreground",
2216
2233
  children: e
@@ -2218,17 +2235,17 @@ var $ = (e) => {
2218
2235
  })
2219
2236
  });
2220
2237
  }
2221
- return t ? /* @__PURE__ */ N(z.Provider, {
2238
+ return t ? /* @__PURE__ */ N(B.Provider, {
2222
2239
  value: c,
2223
2240
  children: /* @__PURE__ */ N(je.Provider, {
2224
2241
  value: l,
2225
- children: /* @__PURE__ */ N(ot, { children: /* @__PURE__ */ N(Tt, {
2242
+ children: /* @__PURE__ */ N(at, { children: /* @__PURE__ */ N(wt, {
2226
2243
  defaultColorTheme: e.defaultColorTheme,
2227
- children: /* @__PURE__ */ N(mn, {
2244
+ children: /* @__PURE__ */ N(pn, {
2228
2245
  ...a,
2229
- children: /* @__PURE__ */ P(gn, {
2246
+ children: /* @__PURE__ */ P(hn, {
2230
2247
  searchSources: e.searchSources,
2231
- children: [e.children, /* @__PURE__ */ N(Xn, {})]
2248
+ children: [e.children, /* @__PURE__ */ N($n, {})]
2232
2249
  })
2233
2250
  })
2234
2251
  }) })
@@ -2236,18 +2253,18 @@ var $ = (e) => {
2236
2253
  }) : null;
2237
2254
  };
2238
2255
  $.WithPages = (e) => {
2239
- let t = ar(e);
2256
+ let t = cr(e);
2240
2257
  return (e) => /* @__PURE__ */ N($, {
2241
2258
  ...e,
2242
2259
  modules: t,
2243
2260
  memory: !1
2244
2261
  });
2245
2262
  };
2246
- var or = (e) => /* @__PURE__ */ N($, {
2263
+ var lr = (e) => /* @__PURE__ */ N($, {
2247
2264
  ...e,
2248
2265
  memory: !1
2249
2266
  });
2250
- or.WithPages = $.WithPages;
2251
- var sr = or;
2267
+ lr.WithPages = $.WithPages;
2268
+ var ur = lr;
2252
2269
  //#endregion
2253
- export { Ne as A, _e as B, Qe as C, U as D, qe as E, R as F, I as H, L as I, we as L, Me as M, Pe as N, V as O, Fe as P, Ce as R, Ze as S, Ge as T, pe as V, kt as _, Ln as a, lt as b, Pn as c, bn as d, vn as f, q as g, Ut as h, Rn as i, B as j, Le as k, X as l, an as m, $ as n, Fn as o, on as p, Yn as r, Nn as s, sr as t, yn as u, yt as v, Ke as w, it as x, Et as y, ge as z };
2270
+ export { Ne as A, _e as B, Ze as C, W as D, qe as E, z as F, I as H, R as I, we as L, Me as M, Pe as N, H as O, Fe as P, Ce as R, Xe as S, Ge as T, me as V, Ot as _, Rn as a, ct as b, Fn as c, yn as d, _n as f, Y as g, Ht as h, zn as i, V as j, Le as k, Q as l, rn as m, $ as n, In as o, an as p, Qn as r, Pn as s, ur as t, vn as u, vt as v, Ke as w, rt as x, Tt as y, L as z };