@tailor-platform/app-shell 1.18.0 → 1.19.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.
@@ -44,12 +44,12 @@ function pe({ className: e, orientation: t = "horizontal", decorative: n = !0, .
44
44
  //#endregion
45
45
  //#region src/components/toolbar/toolbar.tsx
46
46
  var me = g.createContext(null), he = typeof document > "u" ? g.useEffect : g.useLayoutEffect;
47
- function L(...e) {
47
+ function ge(...e) {
48
48
  return (t) => {
49
49
  for (let n of e) typeof n == "function" ? n(t) : n && (n.current = t);
50
50
  };
51
51
  }
52
- function ge(e, t = {}) {
52
+ function _e(e, t = {}) {
53
53
  let n = g.useContext(me), { handlesDirectionalKeys: r = !1 } = t;
54
54
  he(() => {
55
55
  let t = e.current;
@@ -63,18 +63,18 @@ function ge(e, t = {}) {
63
63
  r
64
64
  ]);
65
65
  }
66
- function _e(e) {
66
+ function ve(e) {
67
67
  return e.isConnected && e.tabIndex >= 0 && !e.matches(":disabled") && e.getAttribute("aria-disabled") !== "true";
68
68
  }
69
- function ve({ className: e, ...t }) {
69
+ function ye({ className: e, ...t }) {
70
70
  return /* @__PURE__ */ N("div", {
71
71
  "data-slot": "toolbar",
72
72
  className: I("astw:flex astw:w-full astw:flex-col astw:gap-2 astw:rounded-md astw:border astw:border-border astw:bg-card astw:p-2", e),
73
73
  ...t
74
74
  });
75
75
  }
76
- ve.displayName = "Toolbar.Root";
77
- function ye({ className: e, justify: t = "start", onKeyDown: n, ref: r, ...i }) {
76
+ ye.displayName = "Toolbar.Root";
77
+ function be({ className: e, justify: t = "start", onKeyDown: n, ref: r, ...i }) {
78
78
  let a = g.useRef(null), o = g.useRef(/* @__PURE__ */ new Map()), s = g.useCallback((e, t) => {
79
79
  o.current.set(e, t);
80
80
  }, []), c = g.useCallback((e) => {
@@ -93,7 +93,7 @@ function ye({ className: e, justify: t = "start", onKeyDown: n, ref: r, ...i })
93
93
  return /* @__PURE__ */ N(me.Provider, {
94
94
  value: u,
95
95
  children: /* @__PURE__ */ N("div", {
96
- ref: L(a, r),
96
+ ref: ge(a, r),
97
97
  "data-slot": "toolbar-row",
98
98
  role: "toolbar",
99
99
  tabIndex: -1,
@@ -106,7 +106,7 @@ function ye({ className: e, justify: t = "start", onKeyDown: n, ref: r, ...i })
106
106
  "Home",
107
107
  "End"
108
108
  ].includes(e.key)) return;
109
- let t = Array.from(o.current).filter(([e]) => a.current?.contains(e) && _e(e)).toSorted(([e], [t]) => e.compareDocumentPosition(t) & Node.DOCUMENT_POSITION_FOLLOWING ? -1 : 1), r = t.findIndex(([e]) => e === document.activeElement);
109
+ let t = Array.from(o.current).filter(([e]) => a.current?.contains(e) && ve(e)).toSorted(([e], [t]) => e.compareDocumentPosition(t) & Node.DOCUMENT_POSITION_FOLLOWING ? -1 : 1), r = t.findIndex(([e]) => e === document.activeElement);
110
110
  if (r === -1 || t[r][1].handlesDirectionalKeys) return;
111
111
  let i = r;
112
112
  e.key === "Home" && (i = 0), e.key === "End" && (i = t.length - 1), e.key === "ArrowLeft" && (i = (r - 1 + t.length) % t.length), e.key === "ArrowRight" && (i = (r + 1) % t.length), e.preventDefault(), t[i]?.[0].focus();
@@ -115,16 +115,16 @@ function ye({ className: e, justify: t = "start", onKeyDown: n, ref: r, ...i })
115
115
  })
116
116
  });
117
117
  }
118
- ye.displayName = "Toolbar.Row";
119
- function be({ className: e, ...t }) {
118
+ be.displayName = "Toolbar.Row";
119
+ function xe({ className: e, ...t }) {
120
120
  return /* @__PURE__ */ N("div", {
121
121
  "data-slot": "toolbar-group",
122
122
  className: I("astw:flex astw:min-w-0 astw:flex-wrap astw:items-center astw:gap-1.5", e),
123
123
  ...t
124
124
  });
125
125
  }
126
- be.displayName = "Toolbar.Group";
127
- function xe({ className: e, ...t }) {
126
+ xe.displayName = "Toolbar.Group";
127
+ function Se({ className: e, ...t }) {
128
128
  return /* @__PURE__ */ N(pe, {
129
129
  "data-slot": "toolbar-separator",
130
130
  decorative: !1,
@@ -133,13 +133,13 @@ function xe({ className: e, ...t }) {
133
133
  ...t
134
134
  });
135
135
  }
136
- xe.displayName = "Toolbar.Separator";
137
- var Se = {
138
- Root: ve,
139
- Row: ye,
140
- Group: be,
141
- Separator: xe
142
- }, Ce = O("astw:inline-flex astw:cursor-pointer astw:items-center astw:justify-center astw:gap-2 astw:whitespace-nowrap astw:rounded-md astw:text-sm astw:font-medium astw:transition-all astw:disabled:pointer-events-none astw:disabled:opacity-50 astw:[&_svg]:pointer-events-none astw:[&_svg:not([class*='size-'])]:size-4 astw:shrink-0 astw:[&_svg]:shrink-0 astw:outline-none astw:focus-visible:border-ring astw:focus-visible:ring-ring/50 astw:focus-visible:ring-[3px] astw:aria-invalid:ring-danger-solid/20 astw:dark:aria-invalid:ring-danger-solid/40 astw:aria-invalid:border-danger-solid", {
136
+ Se.displayName = "Toolbar.Separator";
137
+ var Ce = {
138
+ Root: ye,
139
+ Row: be,
140
+ Group: xe,
141
+ Separator: Se
142
+ }, we = O("astw:inline-flex astw:cursor-pointer astw:items-center astw:justify-center astw:gap-2 astw:whitespace-nowrap astw:rounded-md astw:text-label-md astw:transition-all astw:disabled:pointer-events-none astw:disabled:opacity-50 astw:[&_svg]:pointer-events-none astw:[&_svg:not([class*='size-'])]:size-4 astw:shrink-0 astw:[&_svg]:shrink-0 astw:outline-none astw:focus-visible:border-ring astw:focus-visible:ring-ring/50 astw:focus-visible:ring-[3px] astw:aria-invalid:ring-danger-solid/20 astw:dark:aria-invalid:ring-danger-solid/40 astw:aria-invalid:border-danger-solid", {
143
143
  variants: {
144
144
  variant: {
145
145
  default: "astw:bg-primary astw:text-primary-foreground astw:shadow-xs astw:hover:bg-primary/90",
@@ -151,7 +151,7 @@ var Se = {
151
151
  },
152
152
  size: {
153
153
  default: "astw:h-9 astw:px-4 astw:py-2 astw:has-[>svg]:px-3",
154
- xs: "astw:h-7 astw:rounded-md astw:gap-1 astw:px-2.5 astw:text-xs astw:has-[>svg]:px-1.5",
154
+ xs: "astw:h-7 astw:rounded-md astw:gap-1 astw:px-2.5 astw:text-label-sm astw:has-[>svg]:px-1.5",
155
155
  sm: "astw:h-8 astw:rounded-md astw:gap-1.5 astw:px-3 astw:has-[>svg]:px-2.5",
156
156
  lg: "astw:h-10 astw:rounded-md astw:px-6 astw:has-[>svg]:px-4",
157
157
  icon: "astw:size-9"
@@ -162,15 +162,15 @@ var Se = {
162
162
  size: "default"
163
163
  }
164
164
  });
165
- function R({ className: e, variant: t, size: n, render: r, children: i, ref: a, ...o }) {
165
+ function L({ className: e, variant: t, size: n, render: r, children: i, ref: a, ...o }) {
166
166
  let s = g.useRef(null);
167
- return ge(s), k({
167
+ return _e(s), k({
168
168
  defaultTagName: "button",
169
169
  render: r,
170
- ref: L(s, a),
170
+ ref: ge(s, a),
171
171
  props: {
172
172
  "data-slot": "button",
173
- className: I(Ce({
173
+ className: I(we({
174
174
  variant: t,
175
175
  size: n,
176
176
  className: e
@@ -182,7 +182,7 @@ function R({ className: e, variant: t, size: n, render: r, children: i, ref: a,
182
182
  }
183
183
  //#endregion
184
184
  //#region src/lib/i18n.ts
185
- var we = Symbol("localized-label"), Te = () => {
185
+ var Te = Symbol("localized-label"), Ee = () => {
186
186
  try {
187
187
  if (typeof navigator > "u") return "en";
188
188
  let e = navigator.languages?.[0] ?? navigator.language;
@@ -190,61 +190,61 @@ var we = Symbol("localized-label"), Te = () => {
190
190
  } catch {
191
191
  return "en";
192
192
  }
193
- }, Ee = () => {
193
+ }, De = () => {
194
194
  try {
195
195
  return typeof navigator > "u" ? "en" : navigator.languages?.[0] ?? navigator.language ?? "en";
196
196
  } catch {
197
197
  return "en";
198
198
  }
199
- }, De = (e) => {
199
+ }, Oe = (e) => {
200
200
  try {
201
201
  return new Intl.Locale(e).language;
202
202
  } catch {
203
203
  return e;
204
204
  }
205
- }, z = (e) => (t, n) => t ? typeof t == "string" ? t : t(e) ?? n : n, Oe = (t) => {
206
- let n = z(t);
205
+ }, R = (e) => (t, n) => t ? typeof t == "string" ? t : t(e) ?? n : n, ke = (t) => {
206
+ let n = R(t);
207
207
  return (t, r) => n(t, typeof t == "string" ? t : e(r));
208
- }, ke = (e) => ({
208
+ }, Ae = (e) => ({
209
209
  modules: e.modules,
210
210
  settingsResources: e.settingsResources ?? [],
211
- errorBoundary: e.errorBoundary ?? /* @__PURE__ */ N(U, {}),
211
+ errorBoundary: e.errorBoundary ?? /* @__PURE__ */ N(W, {}),
212
212
  basePath: e.basePath,
213
- locale: e.locale ? De(e.locale) : Te(),
214
- resolvedLocale: e.locale ?? Ee(),
213
+ locale: e.locale ? Oe(e.locale) : Ee(),
214
+ resolvedLocale: e.locale ?? De(),
215
215
  timeZone: e.timeZone
216
- }), B = v({ configurations: {
216
+ }), z = v({ configurations: {
217
217
  modules: [],
218
218
  settingsResources: [],
219
219
  locale: "en",
220
220
  errorBoundary: null
221
- } }), Ae = v({ contextData: {} }), V = () => b(B), je = () => b(Ae), Me = () => {
222
- let e = b(B), t = b(Ae);
221
+ } }), je = v({ contextData: {} }), B = () => b(z), Me = () => b(je), Ne = () => {
222
+ let e = b(z), t = b(je);
223
223
  return {
224
224
  ...e,
225
225
  ...t
226
226
  };
227
- }, Ne = () => {
228
- let { configurations: e } = b(B);
227
+ }, Pe = () => {
228
+ let { configurations: e } = b(z);
229
229
  return {
230
230
  locale: e.resolvedLocale ?? e.locale,
231
231
  language: e.locale
232
232
  };
233
- }, Pe = () => {
234
- let { configurations: e } = b(B), t = e.timeZone ?? oe();
233
+ }, Fe = () => {
234
+ let { configurations: e } = b(z), t = e.timeZone ?? oe();
235
235
  return {
236
236
  value: t,
237
237
  today: () => ce(t),
238
238
  now: () => se(t)
239
239
  };
240
- }, Fe = () => {
241
- let { configurations: e } = V(), t = z(e.locale);
240
+ }, Ie = () => {
241
+ let { configurations: e } = B(), t = R(e.locale);
242
242
  return (e, n) => t(e, n);
243
- }, Ie = (e) => {
243
+ }, Le = (e) => {
244
244
  let t = (t) => (n) => e[t]?.[n] ?? e.en[n];
245
245
  return {
246
246
  useT: () => {
247
- let { configurations: n } = V(), r = t(n.locale), i = ((e, ...t) => {
247
+ let { configurations: n } = B(), r = t(n.locale), i = ((e, ...t) => {
248
248
  let n = r(e);
249
249
  return typeof n == "function" ? n(t[0]) : n;
250
250
  });
@@ -256,9 +256,9 @@ var we = Symbol("localized-label"), Te = () => {
256
256
  t: (e, ...n) => Object.assign((r) => {
257
257
  let i = t(r)(e);
258
258
  return typeof i == "function" ? i(n[0]) : i;
259
- }, { [we]: !0 })
259
+ }, { [Te]: !0 })
260
260
  };
261
- }, Le = Ie({
261
+ }, Re = Le({
262
262
  en: {
263
263
  home: "Home",
264
264
  error404Title: "404 Not Found",
@@ -279,6 +279,7 @@ var we = Symbol("localized-label"), Te = () => {
279
279
  search: "Search",
280
280
  commandPaletteSearch: "Search pages...",
281
281
  commandPaletteNoResults: "No results found",
282
+ actionPanelNoActions: "No actions available",
282
283
  commandPaletteActions: "Actions",
283
284
  commandPalettePages: "Pages",
284
285
  commandPaletteSearchModes: "Search Modes",
@@ -328,6 +329,7 @@ var we = Symbol("localized-label"), Te = () => {
328
329
  search: "検索",
329
330
  commandPaletteSearch: "ページを検索...",
330
331
  commandPaletteNoResults: "結果が見つかりません",
332
+ actionPanelNoActions: "利用可能なアクションはありません",
331
333
  commandPaletteActions: "アクション",
332
334
  commandPalettePages: "ページ",
333
335
  commandPaletteSearchModes: "検索モード",
@@ -357,8 +359,87 @@ var we = Symbol("localized-label"), Te = () => {
357
359
  aiChatToolResult: "結果",
358
360
  aiChatSourcesUsed: (e) => `${e.count} 件の出典を使用`
359
361
  }
360
- }), H = Le.useT, U = () => {
361
- let e = m(), t = H(), n = {
362
+ }), V = Re.useT, ze = O("", {
363
+ variants: { variant: {
364
+ "heading-lg": "astw:text-heading-lg",
365
+ "heading-md": "astw:text-heading-md",
366
+ "heading-sm": "astw:text-heading-sm",
367
+ "body-md": "astw:text-body-md",
368
+ "body-sm": "astw:text-body-sm",
369
+ "label-md": "astw:text-label-md",
370
+ "label-sm": "astw:text-label-sm",
371
+ "code-sm": "astw:font-mono astw:text-code-sm",
372
+ "body-md-relaxed": "astw:text-body-md-relaxed",
373
+ "body-sm-relaxed": "astw:text-body-sm-relaxed"
374
+ } },
375
+ defaultVariants: { variant: "body-md" }
376
+ }), Be = {
377
+ "heading-lg": "h2",
378
+ "heading-md": "h2",
379
+ "heading-sm": "h2",
380
+ "body-md": "p",
381
+ "body-sm": "p",
382
+ "label-md": "span",
383
+ "label-sm": "span",
384
+ "code-sm": "span",
385
+ "body-md-relaxed": "p",
386
+ "body-sm-relaxed": "p"
387
+ };
388
+ function Ve({ className: e, variant: t, render: n, children: r, ref: i, ...a }) {
389
+ let o = t ?? "body-md";
390
+ return k({
391
+ defaultTagName: Be[o],
392
+ render: n,
393
+ ref: i,
394
+ props: {
395
+ "data-slot": "text",
396
+ className: I(ze({
397
+ variant: o,
398
+ className: e
399
+ })),
400
+ ...r !== void 0 && { children: r },
401
+ ...a
402
+ }
403
+ });
404
+ }
405
+ Ve.displayName = "Text";
406
+ var He = {
407
+ h1: "heading-lg",
408
+ h2: "heading-md",
409
+ h3: "heading-sm",
410
+ h4: "heading-sm",
411
+ h5: "heading-sm",
412
+ h6: "heading-sm",
413
+ p: "body-md",
414
+ span: "label-md",
415
+ div: "body-md"
416
+ };
417
+ function H(e) {
418
+ let t = He[e], n = e;
419
+ function r({ className: e, variant: r, ...i }) {
420
+ return /* @__PURE__ */ N(n, {
421
+ "data-slot": "text",
422
+ className: I(ze({
423
+ variant: r ?? t,
424
+ className: e
425
+ })),
426
+ ...i
427
+ });
428
+ }
429
+ return r.displayName = `Text.${e}`, r;
430
+ }
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 = {
362
443
  role: "alert",
363
444
  "aria-label": "default-error-boundary"
364
445
  };
@@ -368,15 +449,17 @@ var we = Symbol("localized-label"), Te = () => {
368
449
  children: /* @__PURE__ */ P("div", {
369
450
  className: "astw:flex astw:items-start astw:gap-4",
370
451
  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: [
371
- /* @__PURE__ */ N("h1", {
372
- className: "astw:font-semibold astw:text-lg",
452
+ /* @__PURE__ */ N(U, {
453
+ variant: "heading-md",
454
+ render: /* @__PURE__ */ N("h1", {}),
373
455
  children: t("error404Title")
374
456
  }),
375
- /* @__PURE__ */ N("p", {
376
- className: "astw:text-sm astw:text-muted-foreground astw:mt-1",
457
+ /* @__PURE__ */ N(U, {
458
+ variant: "body-md",
459
+ className: "astw:text-muted-foreground astw:mt-1",
377
460
  children: t("error404Body")
378
461
  }),
379
- /* @__PURE__ */ N(R, {
462
+ /* @__PURE__ */ N(L, {
380
463
  variant: "outline",
381
464
  size: "sm",
382
465
  className: "astw:mt-4",
@@ -393,15 +476,17 @@ var we = Symbol("localized-label"), Te = () => {
393
476
  children: /* @__PURE__ */ P("div", {
394
477
  className: "astw:flex astw:items-start astw:gap-4",
395
478
  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: [
396
- /* @__PURE__ */ N("h1", {
397
- className: "astw:font-semibold astw:text-lg",
479
+ /* @__PURE__ */ N(U, {
480
+ variant: "heading-md",
481
+ render: /* @__PURE__ */ N("h1", {}),
398
482
  children: t("errorTitle")
399
483
  }),
400
- /* @__PURE__ */ N("p", {
401
- className: "astw:text-sm astw:text-muted-foreground astw:mt-1",
484
+ /* @__PURE__ */ N(U, {
485
+ variant: "body-md",
486
+ className: "astw:text-muted-foreground astw:mt-1",
402
487
  children: r
403
488
  }),
404
- /* @__PURE__ */ N(R, {
489
+ /* @__PURE__ */ N(L, {
405
490
  variant: "outline",
406
491
  size: "sm",
407
492
  className: "astw:mt-4",
@@ -411,37 +496,37 @@ var we = Symbol("localized-label"), Te = () => {
411
496
  ] })]
412
497
  })
413
498
  });
414
- }, Re = {}, ze = (e) => {
415
- Re = e;
416
- }, Be = () => ({ type: "pass" }), Ve = () => ({ type: "hidden" }), He = (e) => ({
499
+ }, Ue = {}, We = (e) => {
500
+ Ue = e;
501
+ }, Ge = () => ({ type: "pass" }), Ke = () => ({ type: "hidden" }), qe = (e) => ({
417
502
  type: "redirect",
418
503
  to: e
419
- }), W = () => new Response("Not Found", { status: 404 }), G = async (e) => {
504
+ }), G = () => new Response("Not Found", { status: 404 }), K = async (e) => {
420
505
  if (!e || e.length === 0) return { type: "pass" };
421
- let t = { context: Re };
506
+ let t = { context: Ue };
422
507
  for (let n of e) {
423
508
  let e = await n(t);
424
509
  if (e.type !== "pass") return e;
425
510
  }
426
511
  return { type: "pass" };
427
- }, K = (e, t) => async (n) => {
428
- let r = await G(e);
512
+ }, Je = (e, t) => async (n) => {
513
+ let r = await K(e);
429
514
  switch (r.type) {
430
- case "hidden": throw W();
515
+ case "hidden": throw G();
431
516
  case "redirect": return u(r.to);
432
517
  case "pass": return t ? t(n) : null;
433
518
  }
434
- }, Ue = (t) => t === "" || t === "/" ? Le.t("home") : e(t), We = (e, t) => () => {
435
- let { configurations: n } = V(), { metaTitle: r, fallbackTitle: i } = e;
436
- return t(z(n.locale)(r, typeof i == "function" ? i(n.locale) : i));
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));
437
522
  };
438
- function Ge(e) {
439
- let { path: t, meta: n, component: r, resources: i, errorBoundary: a, guards: o } = e, s = n?.title ?? Ue(t), c = Ue(t), l = o && o.length > 0 ? K(o) : void 0;
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;
440
525
  return {
441
526
  path: t,
442
527
  type: "component",
443
528
  _type: "module",
444
- component: r ? We({
529
+ component: r ? Xe({
445
530
  metaTitle: s,
446
531
  fallbackTitle: c
447
532
  }, (e) => r({
@@ -457,12 +542,12 @@ function Ge(e) {
457
542
  icon: e.meta?.icon
458
543
  },
459
544
  resources: i,
460
- errorBoundary: a || /* @__PURE__ */ N(U, {}),
545
+ errorBoundary: a || /* @__PURE__ */ N(W, {}),
461
546
  guards: o
462
547
  };
463
548
  }
464
- function Ke(t) {
465
- 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 ? K(s) : void 0, d = r ? We({
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({
466
551
  metaTitle: c,
467
552
  fallbackTitle: l
468
553
  }, (e) => r({
@@ -480,14 +565,14 @@ function Ke(t) {
480
565
  },
481
566
  component: d,
482
567
  subResources: i,
483
- errorBoundary: o ?? /* @__PURE__ */ N(U, {}),
568
+ errorBoundary: o ?? /* @__PURE__ */ N(W, {}),
484
569
  guards: s,
485
570
  loader: u
486
571
  };
487
572
  }
488
- var qe = {
573
+ var $e = {
489
574
  name: "@tailor-platform/app-shell",
490
- version: "1.18.0",
575
+ version: "1.19.0",
491
576
  description: "An opinionated React application framework for building ERP applications on Tailor Platform",
492
577
  keywords: [
493
578
  "app-shell",
@@ -533,6 +618,7 @@ var qe = {
533
618
  "vendor:fonts": "node scripts/sync-noto-fonts.mjs",
534
619
  lint: "oxlint -c .oxlintrc.jsonc",
535
620
  test: "vitest run",
621
+ "test:browser": "pnpm build && vitest run --config vitest.browser.config.ts",
536
622
  "type-check": "tsc --incremental"
537
623
  },
538
624
  dependencies: {
@@ -557,16 +643,18 @@ var qe = {
557
643
  "@microsoft/api-extractor": "7.58.12",
558
644
  "@tailwindcss/postcss": "catalog:",
559
645
  "@testing-library/react": "16.3.3",
560
- "@testing-library/user-event": "14.6.7",
646
+ "@testing-library/user-event": "14.6.8",
561
647
  "@types/encoding-japanese": "2.2.1",
562
648
  "@types/node": "catalog:",
563
649
  "@types/papaparse": "5.5.2",
564
650
  "@types/react": "catalog:",
565
651
  "@types/react-dom": "catalog:",
566
652
  "@vitejs/plugin-react": "catalog:",
653
+ "@vitest/browser-playwright": "4.1.11",
567
654
  "@vitest/coverage-v8": "4.1.11",
568
- "happy-dom": "20.14.5",
569
- postcss: "8.5.30",
655
+ "happy-dom": "21.0.4",
656
+ playwright: "1.63.0",
657
+ postcss: "8.5.31",
570
658
  react: "catalog:",
571
659
  "react-dom": "catalog:",
572
660
  "react-hook-form": "7.71.2",
@@ -574,7 +662,7 @@ var qe = {
574
662
  "tw-animate-css": "1.4.0",
575
663
  typescript: "5.9.3",
576
664
  vite: "catalog:",
577
- "vite-plugin-dts": "5.0.3",
665
+ "vite-plugin-dts": "5.1.2",
578
666
  vitest: "catalog:"
579
667
  },
580
668
  peerDependencies: {
@@ -584,50 +672,52 @@ var qe = {
584
672
  };
585
673
  //#endregion
586
674
  //#region src/components/card/card.tsx
587
- function Je({ className: e, ...t }) {
675
+ function et({ className: e, ...t }) {
588
676
  return /* @__PURE__ */ N("div", {
589
677
  "data-slot": "card",
590
678
  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),
591
679
  ...t
592
680
  });
593
681
  }
594
- Je.displayName = "Card.Root";
595
- function Ye({ className: e, title: t, description: n, children: r, ...i }) {
682
+ et.displayName = "Card.Root";
683
+ function tt({ className: e, title: t, description: n, children: r, ...i }) {
596
684
  return /* @__PURE__ */ P("div", {
597
685
  "data-slot": "card-header",
598
686
  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),
599
687
  ...i,
600
688
  children: [
601
- t && /* @__PURE__ */ N("h3", {
602
- "data-slot": "card-title",
603
- className: "astw:text-lg astw:font-semibold astw:leading-none astw:text-card-foreground",
689
+ t && /* @__PURE__ */ N(U, {
690
+ variant: "heading-md",
691
+ className: "astw:leading-none astw:text-card-foreground",
692
+ render: /* @__PURE__ */ N("h3", { "data-slot": "card-title" }),
604
693
  children: t
605
694
  }),
606
- n && /* @__PURE__ */ N("div", {
607
- "data-slot": "card-description",
608
- className: "astw:text-muted-foreground astw:text-sm",
695
+ n && /* @__PURE__ */ N(U, {
696
+ variant: "body-md",
697
+ className: "astw:text-muted-foreground",
698
+ render: /* @__PURE__ */ N("div", { "data-slot": "card-description" }),
609
699
  children: n
610
700
  }),
611
701
  r
612
702
  ]
613
703
  });
614
704
  }
615
- Ye.displayName = "Card.Header";
616
- var Xe = 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");
617
- function Ze({ className: e, padding: t = "default", ...n }) {
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 }) {
618
708
  return /* @__PURE__ */ N("div", {
619
709
  "data-slot": "card-content",
620
710
  "data-padding": t,
621
- className: I(t === "none" ? Xe : "astw:px-6 astw:pb-6 astw:first:pt-6", e),
711
+ className: I(t === "none" ? nt : "astw:px-6 astw:pb-6 astw:first:pt-6", e),
622
712
  ...n
623
713
  });
624
714
  }
625
- Ze.displayName = "Card.Content";
626
- var Qe = {
627
- Root: Je,
628
- Header: Ye,
629
- Content: Ze
630
- }, $e = v(null), et = ({ children: e }) => {
715
+ rt.displayName = "Card.Content";
716
+ var it = {
717
+ Root: et,
718
+ Header: tt,
719
+ Content: rt
720
+ }, at = v(null), ot = ({ children: e }) => {
631
721
  let [t, n] = E(() => /* @__PURE__ */ new Map()), r = y((e, t) => {
632
722
  n((n) => {
633
723
  let r = new Map(n);
@@ -640,7 +730,7 @@ var Qe = {
640
730
  return n.delete(e), n;
641
731
  });
642
732
  }, []);
643
- return /* @__PURE__ */ N($e.Provider, {
733
+ return /* @__PURE__ */ N(at.Provider, {
644
734
  value: {
645
735
  overrides: t,
646
736
  register: r,
@@ -648,15 +738,15 @@ var Qe = {
648
738
  },
649
739
  children: e
650
740
  });
651
- }, tt = () => {
652
- let e = b($e);
741
+ }, st = () => {
742
+ let e = b(at);
653
743
  if (!e) throw Error("useBreadcrumbOverride must be used within BreadcrumbOverrideProvider");
654
744
  return e;
655
- }, nt = () => b($e);
745
+ }, ct = () => b(at);
656
746
  //#endregion
657
747
  //#region src/hooks/use-override-breadcrumb.ts
658
- function rt(e) {
659
- let t = d(), { register: n, unregister: r } = tt(), i = t.pathname;
748
+ function lt(e) {
749
+ let t = d(), { register: n, unregister: r } = st(), i = t.pathname;
660
750
  x(() => (e ? n(i, e) : r(i), () => r(i)), [
661
751
  i,
662
752
  e,
@@ -666,25 +756,29 @@ function rt(e) {
666
756
  }
667
757
  //#endregion
668
758
  //#region src/components/internals/app-info/app-info.tsx
669
- var it = "__appinfo", at = `/${it}`, ot = qe.version, st = (e) => e == null ? "-" : String(e), ct = (e) => e.map((e) => `${e.label}: ${st(e.value)}`).join("\n"), lt = ({ label: e, value: t }) => /* @__PURE__ */ P("div", {
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", {
670
760
  className: "astw:grid astw:gap-1 astw:py-3 astw:sm:grid-cols-[12rem_minmax(0,1fr)] astw:sm:gap-4",
671
- children: [/* @__PURE__ */ N("dt", {
672
- className: "astw:text-sm astw:text-muted-foreground",
761
+ children: [/* @__PURE__ */ N(U, {
762
+ variant: "label-md",
763
+ className: "astw:text-muted-foreground",
764
+ render: /* @__PURE__ */ N("dt", {}),
673
765
  children: e
674
- }), /* @__PURE__ */ N("dd", {
675
- className: "astw:min-w-0 astw:text-sm astw:break-all",
676
- children: st(t)
766
+ }), /* @__PURE__ */ N(U, {
767
+ variant: "body-md",
768
+ className: "astw:min-w-0 astw:break-all",
769
+ render: /* @__PURE__ */ N("dd", {}),
770
+ children: pt(t)
677
771
  })]
678
- }), ut = () => {
679
- let e = H();
772
+ }), gt = () => {
773
+ let e = V();
680
774
  return {
681
- path: at,
775
+ path: dt,
682
776
  title: e("appInfoTitle"),
683
777
  breadcrumb: [e("appInfoTitle")]
684
778
  };
685
- }, dt = () => {
686
- let e = H(), { title: t, appInfo: n } = V();
687
- rt(e("appInfoTitle"));
779
+ }, _t = () => {
780
+ let e = V(), { title: t, appInfo: n } = B();
781
+ lt(e("appInfoTitle"));
688
782
  let r = [
689
783
  ...t ? [{
690
784
  label: e("appInfoAppName"),
@@ -692,37 +786,39 @@ var it = "__appinfo", at = `/${it}`, ot = qe.version, st = (e) => e == null ? "-
692
786
  }] : [],
693
787
  {
694
788
  label: e("appInfoAppShellVersion"),
695
- value: ot
789
+ value: ft
696
790
  },
697
791
  ...n?.metadata ?? []
698
792
  ];
699
793
  return /* @__PURE__ */ N("div", {
700
794
  className: "astw:w-full astw:max-w-xl",
701
- children: /* @__PURE__ */ P(Qe.Root, { children: [/* @__PURE__ */ P("div", {
795
+ children: /* @__PURE__ */ P(it.Root, { children: [/* @__PURE__ */ P("div", {
702
796
  className: "astw:flex astw:items-center astw:justify-between astw:px-6 astw:pt-6 astw:pb-4",
703
- children: [/* @__PURE__ */ N("h1", {
704
- className: "astw:text-lg astw:font-semibold astw:leading-none",
797
+ children: [/* @__PURE__ */ N(U, {
798
+ variant: "heading-md",
799
+ className: "astw:leading-none",
800
+ render: /* @__PURE__ */ N("h1", {}),
705
801
  children: e("appInfoTitle")
706
- }), /* @__PURE__ */ N(R, {
802
+ }), /* @__PURE__ */ N(L, {
707
803
  variant: "outline",
708
804
  size: "sm",
709
805
  onClick: async () => {
710
806
  try {
711
- await navigator.clipboard.writeText(ct(r));
807
+ await navigator.clipboard.writeText(mt(r));
712
808
  } catch {}
713
809
  },
714
810
  children: e("appInfoCopy")
715
811
  })]
716
- }), /* @__PURE__ */ N(Qe.Content, { children: /* @__PURE__ */ N("dl", { children: r.map((e, t) => /* @__PURE__ */ N("div", {
812
+ }), /* @__PURE__ */ N(it.Content, { children: /* @__PURE__ */ N("dl", { children: r.map((e, t) => /* @__PURE__ */ N("div", {
717
813
  className: t > 0 ? "astw:border-t astw:border-border" : void 0,
718
- children: /* @__PURE__ */ N(lt, { ...e })
814
+ children: /* @__PURE__ */ N(ht, { ...e })
719
815
  }, `${e.label}-${t}`)) }) })] })
720
816
  });
721
- }, ft = [
817
+ }, vt = [
722
818
  "light",
723
819
  "dark",
724
820
  "system"
725
- ], pt = [
821
+ ], yt = [
726
822
  {
727
823
  value: "light",
728
824
  label: "Light"
@@ -735,8 +831,8 @@ var it = "__appinfo", at = `/${it}`, ot = qe.version, st = (e) => e == null ? "-
735
831
  value: "system",
736
832
  label: "System"
737
833
  }
738
- ], mt = "appshell-ui-theme";
739
- function ht(e, t, n) {
834
+ ], bt = "appshell-ui-theme";
835
+ function xt(e, t, n) {
740
836
  if (typeof window > "u") return n;
741
837
  try {
742
838
  let r = localStorage.getItem(e);
@@ -745,22 +841,22 @@ function ht(e, t, n) {
745
841
  return n;
746
842
  }
747
843
  }
748
- function gt(e, t) {
844
+ function St(e, t) {
749
845
  return e === "system" ? t ? "dark" : "light" : e;
750
846
  }
751
- function _t() {
847
+ function Ct() {
752
848
  return typeof window < "u" && window.matchMedia("(prefers-color-scheme: dark)").matches;
753
849
  }
754
- var vt = v(void 0);
755
- function yt({ children: e, defaultColorTheme: t = "system" }) {
756
- let [n, r] = E(() => ht(mt, ft, t)), [i, a] = E(() => gt(ht(mt, ft, t), _t())), o = y((e) => {
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) => {
757
853
  let t = window.document.documentElement;
758
854
  t.classList.remove("light", "dark"), t.classList.add(e);
759
855
  }, []);
760
856
  x(() => {
761
857
  o(i);
762
858
  let e = window.matchMedia("(prefers-color-scheme: dark)"), t = (e) => {
763
- let t = gt(n, e.matches);
859
+ let t = St(n, e.matches);
764
860
  a(t);
765
861
  };
766
862
  return e.addEventListener("change", t), () => e.removeEventListener("change", t);
@@ -771,10 +867,10 @@ function yt({ children: e, defaultColorTheme: t = "system" }) {
771
867
  ]);
772
868
  let s = y((e) => {
773
869
  try {
774
- localStorage.setItem(mt, e);
870
+ localStorage.setItem(bt, e);
775
871
  } catch {}
776
872
  r(e);
777
- let t = gt(e, _t());
873
+ let t = St(e, Ct());
778
874
  a(t), o(t);
779
875
  }, [o]), c = C(() => ({
780
876
  colorTheme: n,
@@ -785,13 +881,13 @@ function yt({ children: e, defaultColorTheme: t = "system" }) {
785
881
  i,
786
882
  s
787
883
  ]);
788
- return /* @__PURE__ */ N(vt.Provider, {
884
+ return /* @__PURE__ */ N(wt.Provider, {
789
885
  value: c,
790
886
  children: e
791
887
  });
792
888
  }
793
- var bt = () => {
794
- let e = b(vt);
889
+ var Et = () => {
890
+ let e = b(wt);
795
891
  if (e === void 0) throw Error("useTheme must be used within a ThemeProvider");
796
892
  let { colorTheme: t, resolvedColorTheme: n, setColorTheme: r } = e;
797
893
  return C(() => ({
@@ -803,8 +899,8 @@ var bt = () => {
803
899
  n,
804
900
  r
805
901
  ]);
806
- }, xt = ({ ...e }) => {
807
- let { resolvedTheme: t } = bt();
902
+ }, Dt = ({ ...e }) => {
903
+ let { resolvedTheme: t } = Et();
808
904
  return /* @__PURE__ */ N(ue, {
809
905
  theme: t,
810
906
  className: "astw:toaster astw:group",
@@ -815,8 +911,8 @@ var bt = () => {
815
911
  },
816
912
  ...e
817
913
  });
818
- }, St = () => {
819
- let e = H();
914
+ }, Ot = () => {
915
+ let e = V();
820
916
  return /* @__PURE__ */ P(M, { children: [/* @__PURE__ */ N("p", {
821
917
  className: "astw:font-semibold astw:leading-none astw:tracking-tight",
822
918
  children: e("welcomeTitle")
@@ -824,8 +920,8 @@ var bt = () => {
824
920
  className: "pt-4",
825
921
  children: e("welcomeBody")
826
922
  })] });
827
- }, Ct = () => /* @__PURE__ */ P(M, { children: [/* @__PURE__ */ N(a, {}), /* @__PURE__ */ N(xt, {})] }), wt = () => {
828
- let { configurations: e } = Me(), t = H(), n = Fe();
923
+ }, kt = () => /* @__PURE__ */ P(M, { children: [/* @__PURE__ */ N(a, {}), /* @__PURE__ */ N(Dt, {})] }), At = () => {
924
+ let { configurations: e } = Ne(), t = V(), n = Ie();
829
925
  return /* @__PURE__ */ P("div", {
830
926
  className: "astw:mx-auto astw:flex-col astw:flex astw:md:flex-row astw:max-w-5xl astw:gap-[10px] astw:w-full",
831
927
  children: [/* @__PURE__ */ N("div", { children: /* @__PURE__ */ P("nav", {
@@ -837,7 +933,7 @@ var bt = () => {
837
933
  className: "astw:flex astw:flex-col astw:gap-1",
838
934
  children: e.settingsResources.map((e) => /* @__PURE__ */ N("li", { children: /* @__PURE__ */ N(r, {
839
935
  to: `./${e.path}`,
840
- children: ({ isActive: t }) => /* @__PURE__ */ P(R, {
936
+ children: ({ isActive: t }) => /* @__PURE__ */ P(L, {
841
937
  variant: t ? "secondary" : "ghost",
842
938
  className: "astw:w-full astw:justify-start",
843
939
  children: [e.meta.icon, n(e.meta.title, e.path)]
@@ -849,7 +945,7 @@ var bt = () => {
849
945
  children: /* @__PURE__ */ N(a, {})
850
946
  })]
851
947
  });
852
- }, Tt = (e) => () => /* @__PURE__ */ N(M, { children: e }), Et = (e) => e.component ? {
948
+ }, jt = (e) => () => /* @__PURE__ */ N(M, { children: e }), Mt = (e) => e.component ? {
853
949
  index: !0,
854
950
  Component: e.component,
855
951
  ...e.loader && { loader: e.loader }
@@ -859,26 +955,26 @@ var bt = () => {
859
955
  loader: async (t) => {
860
956
  let n = await e.loader(t);
861
957
  if (n instanceof Response) return n;
862
- throw W();
958
+ throw G();
863
959
  }
864
960
  } : {
865
961
  index: !0,
866
962
  Component: () => null,
867
963
  loader: () => {
868
- throw W();
964
+ throw G();
869
965
  }
870
- }, Dt = (e, t, n) => {
871
- let r = e.errorBoundary || n, i = (t ?? []).map((e) => Dt(e, e.subResources, r)), a = [Et(e), ...i];
966
+ }, Nt = (e, t, n) => {
967
+ let r = e.errorBoundary || n, i = (t ?? []).map((e) => Nt(e, e.subResources, r)), a = [Mt(e), ...i];
872
968
  return {
873
969
  path: e.path,
874
970
  handle: { node: e },
875
- ...e.errorBoundary && { ErrorBoundary: Tt(e.errorBoundary) },
971
+ ...e.errorBoundary && { ErrorBoundary: jt(e.errorBoundary) },
876
972
  ...a.length > 0 ? { children: a } : {}
877
973
  };
878
- }, Ot = (e) => e.map((e) => Dt(e, e.resources, e.errorBoundary)), kt = ({ modules: e, settingsResources: t }) => {
879
- let n = e.some((e) => e.path === "") ? null : Et({
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({
880
976
  path: "",
881
- component: St
977
+ component: Ot
882
978
  }), r = t.length > 0 ? [{
883
979
  path: "settings",
884
980
  index: !0,
@@ -889,44 +985,44 @@ var bt = () => {
889
985
  })
890
986
  }, {
891
987
  path: "settings",
892
- Component: wt,
988
+ Component: At,
893
989
  children: t.map((e) => {
894
990
  if (!e.component) throw Error(`Settings resource "${e.path}" must have a component.`);
895
991
  return {
896
992
  path: e.path,
897
993
  Component: e.component,
898
- ...e.errorBoundary && { ErrorBoundary: Tt(e.errorBoundary) }
994
+ ...e.errorBoundary && { ErrorBoundary: jt(e.errorBoundary) }
899
995
  };
900
996
  })
901
997
  }] : [];
902
998
  return [
903
999
  ...n ? [n] : [],
904
- { children: Ot(e) },
1000
+ { children: Pt(e) },
905
1001
  {
906
- path: it,
907
- Component: dt
1002
+ path: ut,
1003
+ Component: _t
908
1004
  },
909
1005
  ...r,
910
1006
  {
911
1007
  path: "*",
912
1008
  loader: () => {
913
- throw W();
1009
+ throw G();
914
1010
  },
915
1011
  Component: () => null,
916
- ErrorBoundary: U
1012
+ ErrorBoundary: W
917
1013
  }
918
1014
  ];
919
- }, q = (e) => e.startsWith(":") ? e.slice(1) : null, At = (e) => e.split("/").some((e) => q(e) !== null);
920
- function jt(e, t) {
1015
+ }, q = (e) => e.startsWith(":") ? e.slice(1) : null, It = (e) => e.split("/").some((e) => q(e) !== null);
1016
+ function Lt(e, t) {
921
1017
  if (!t.trim()) return e;
922
1018
  let n = t.toLowerCase();
923
1019
  return e.filter((e) => e.title.toLowerCase().includes(n) || e.path.toLowerCase().includes(n));
924
1020
  }
925
- var Mt = (e, t, n) => {
926
- let r = typeof e.breadcrumbTitle == "function" ? e.breadcrumbTitle(we in e.breadcrumbTitle ? n : t) : e.breadcrumbTitle;
927
- return typeof r == "function" ? z(n)(r, e.title) : r ?? e.title;
928
- }, Nt = (e, t) => {
929
- let n = Oe(t);
1021
+ var Rt = (e, t, n) => {
1022
+ 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
+ let n = ke(t);
930
1026
  return e.reduce((e, t) => {
931
1027
  let r = n(t.meta.title, t.path);
932
1028
  e[t.path] = {
@@ -947,8 +1043,8 @@ var Mt = (e, t, n) => {
947
1043
  return t.resources && t.resources.length > 0 && i(t.resources, t.path), e;
948
1044
  }, {});
949
1045
  };
950
- function Pt(e, t, n, r) {
951
- let i = e.split("/").filter((e) => e !== ""), a = t && i[0] === t ? i.slice(1) : i, o = Nt(n, r);
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);
952
1048
  if (a.length === 0) {
953
1049
  let e = o[""];
954
1050
  if (e) return {
@@ -956,7 +1052,7 @@ function Pt(e, t, n, r) {
956
1052
  segments: [{
957
1053
  segment: "",
958
1054
  path: "",
959
- title: Mt(e, "", r),
1055
+ title: Rt(e, "", r),
960
1056
  clickable: e.clickable
961
1057
  }]
962
1058
  };
@@ -971,7 +1067,7 @@ function Pt(e, t, n, r) {
971
1067
  e && (i = e);
972
1068
  }
973
1069
  let s;
974
- return s = i ? Mt(i, e, r) : decodeURIComponent(e), {
1070
+ return s = i ? Rt(i, e, r) : decodeURIComponent(e), {
975
1071
  segment: e,
976
1072
  path: n,
977
1073
  title: s,
@@ -985,14 +1081,14 @@ function Pt(e, t, n, r) {
985
1081
  }
986
1082
  //#endregion
987
1083
  //#region src/routing/navigation.tsx
988
- var Ft = "appshell-root-nav", It = (e) => ({
989
- loaderID: Ft,
990
- loader: async () => ({ navItems: Rt(e) })
991
- }), Lt = () => h(Ft)?.navItems, Rt = async (e) => {
992
- let t = Oe(e.locale);
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) => {
1088
+ let t = ke(e.locale);
993
1089
  return (await Promise.all(e.modules.map(async (e) => {
994
- if (q(e.path) !== null || (await G(e.guards)).type !== "pass") return null;
995
- let n = await zt(e.resources, e.path, t);
1090
+ if (q(e.path) !== null || (await K(e.guards)).type !== "pass") return null;
1091
+ let n = await Gt(e.resources, e.path, t);
996
1092
  return n.length === 0 && !e.meta.menuItemClickable ? null : {
997
1093
  module: e,
998
1094
  resources: n
@@ -1003,70 +1099,70 @@ var Ft = "appshell-root-nav", It = (e) => ({
1003
1099
  icon: e.meta.icon || /* @__PURE__ */ N(ie, {}),
1004
1100
  items: n
1005
1101
  }));
1006
- }, zt = async (e, t, n) => (await Promise.all(e.map(async (e) => {
1007
- if (q(e.path) !== null || (await G(e.guards)).type !== "pass") return null;
1008
- let r = `${t}/${e.path}`, i = n(e.meta.title, e.path), a = e.component !== void 0, o = e.subResources ? await zt(e.subResources, r, n) : void 0, s = o && o.length > 0;
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;
1009
1105
  return !a && !s ? null : {
1010
1106
  title: i,
1011
1107
  url: a ? r : void 0,
1012
1108
  items: s ? o : void 0
1013
1109
  };
1014
- }))).filter((e) => e !== null), J = (e) => e.split("/").filter((e) => e !== ""), Bt = (e, t) => {
1110
+ }))).filter((e) => e !== null), J = (e) => e.split("/").filter((e) => e !== ""), Kt = (e, t) => {
1015
1111
  let n = J(e), r = t && n[0] === t ? n.slice(1) : n;
1016
1112
  return r.length > 0 ? `/${r.join("/")}` : "/";
1017
- }, Vt = (e) => e.join("/") || "/", Ht = 8, Ut = (e, t) => J(e).map((e) => {
1113
+ }, qt = (e) => e.join("/") || "/", Jt = 8, Yt = (e, t) => J(e).map((e) => {
1018
1114
  let n = q(e);
1019
1115
  if (n === null) return e;
1020
1116
  let r = t[n] ?? "";
1021
- return r.length > Ht ? `${r.slice(0, Ht)}...` : r;
1022
- }), Wt = async ({ modules: e, locale: t, basePath: n, pathname: r }) => {
1023
- let i = Oe(t), a = l(kt({
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({
1024
1120
  modules: e,
1025
1121
  settingsResources: []
1026
- }), Bt(r, n));
1122
+ }), Kt(r, n));
1027
1123
  if (!a) return [];
1028
1124
  let o = /* @__PURE__ */ new Map(), s = a.map((e) => {
1029
1125
  let t = e.route.handle;
1030
1126
  return t?.node ? {
1031
1127
  node: t.node,
1032
1128
  params: e.params,
1033
- pathnameBase: Vt(J(e.pathnameBase))
1129
+ pathnameBase: qt(J(e.pathnameBase))
1034
1130
  } : null;
1035
1131
  }).filter((e) => e !== null);
1036
1132
  for (let [e, t] of s.entries()) {
1037
- if (!At(t.node.path)) continue;
1133
+ if (!It(t.node.path)) continue;
1038
1134
  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, {});
1039
- await Gt({
1135
+ await Zt({
1040
1136
  node: t.node,
1041
1137
  params: t.params,
1042
1138
  icon: a,
1043
1139
  baseSegments: J(t.pathnameBase),
1044
- baseDisplaySegments: s.slice(0, e + 1).flatMap(({ node: e, params: t }) => Ut(e.path, t)),
1140
+ baseDisplaySegments: s.slice(0, e + 1).flatMap(({ node: e, params: t }) => Yt(e.path, t)),
1045
1141
  breadcrumb: n,
1046
1142
  resolveTitle: i,
1047
1143
  routeMap: o
1048
1144
  });
1049
1145
  }
1050
1146
  return [...o.values()];
1051
- }, Gt = async ({ node: e, params: t, icon: n, baseSegments: r, baseDisplaySegments: i, breadcrumb: a, resolveTitle: o, routeMap: s }) => {
1052
- if ((await G(e.guards)).type !== "pass") return;
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;
1053
1149
  if ("resources" in e ? e.meta.menuItemClickable : e.component !== void 0) {
1054
- let t = Vt(r);
1150
+ let t = qt(r);
1055
1151
  s.set(t, {
1056
1152
  path: t,
1057
- displayPath: Vt(i),
1153
+ displayPath: qt(i),
1058
1154
  title: o(e.meta.title, e.path),
1059
1155
  icon: n,
1060
1156
  breadcrumb: a
1061
1157
  });
1062
1158
  }
1063
1159
  let c = "resources" in e ? e.resources : e.subResources;
1064
- if (!(!c || c.length === 0)) for (let e of c) At(e.path) || await Gt({
1160
+ if (!(!c || c.length === 0)) for (let e of c) It(e.path) || await Zt({
1065
1161
  node: e,
1066
1162
  params: t,
1067
1163
  icon: n,
1068
1164
  baseSegments: [...r, ...J(e.path)],
1069
- baseDisplaySegments: [...i, ...Ut(e.path, t)],
1165
+ baseDisplaySegments: [...i, ...Yt(e.path, t)],
1070
1166
  breadcrumb: [...a, o(e.meta.title, e.path)],
1071
1167
  resolveTitle: o,
1072
1168
  routeMap: s
@@ -1074,28 +1170,28 @@ var Ft = "appshell-root-nav", It = (e) => ({
1074
1170
  };
1075
1171
  //#endregion
1076
1172
  //#region src/components/internals/breadcrumb/breadcrumb.tsx
1077
- function Kt({ ...e }) {
1173
+ function Qt({ ...e }) {
1078
1174
  return /* @__PURE__ */ N("nav", {
1079
1175
  "aria-label": "breadcrumb",
1080
1176
  "data-slot": "breadcrumb",
1081
1177
  ...e
1082
1178
  });
1083
1179
  }
1084
- function qt({ className: e, ...t }) {
1180
+ function $t({ className: e, ...t }) {
1085
1181
  return /* @__PURE__ */ N("ol", {
1086
1182
  "data-slot": "breadcrumb-list",
1087
- className: I("astw:text-muted-foreground astw:flex astw:flex-wrap astw:items-center astw:gap-1.5 astw:text-sm astw:break-words astw:sm:gap-2.5", e),
1183
+ 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),
1088
1184
  ...t
1089
1185
  });
1090
1186
  }
1091
- function Jt({ className: e, ...t }) {
1187
+ function en({ className: e, ...t }) {
1092
1188
  return /* @__PURE__ */ N("li", {
1093
1189
  "data-slot": "breadcrumb-item",
1094
1190
  className: I("astw:inline-flex astw:items-center astw:gap-1.5", e),
1095
1191
  ...t
1096
1192
  });
1097
1193
  }
1098
- function Yt({ render: e, className: t, children: r, to: i, ...a }) {
1194
+ function tn({ render: e, className: t, children: r, to: i, ...a }) {
1099
1195
  let o = I("astw:hover:text-foreground astw:transition-colors", t);
1100
1196
  return k({
1101
1197
  defaultTagName: "a",
@@ -1111,7 +1207,7 @@ function Yt({ render: e, className: t, children: r, to: i, ...a }) {
1111
1207
  }
1112
1208
  });
1113
1209
  }
1114
- function Xt({ className: e, ariaCurrent: t = "location", ...n }) {
1210
+ function nn({ className: e, ariaCurrent: t = "location", ...n }) {
1115
1211
  return /* @__PURE__ */ N("span", {
1116
1212
  "data-slot": "breadcrumb-page",
1117
1213
  "aria-disabled": "true",
@@ -1120,7 +1216,7 @@ function Xt({ className: e, ariaCurrent: t = "location", ...n }) {
1120
1216
  ...n
1121
1217
  });
1122
1218
  }
1123
- function Zt({ children: e, className: t, ...n }) {
1219
+ function rn({ children: e, className: t, ...n }) {
1124
1220
  return /* @__PURE__ */ N("li", {
1125
1221
  "data-slot": "breadcrumb-separator",
1126
1222
  role: "presentation",
@@ -1132,31 +1228,31 @@ function Zt({ children: e, className: t, ...n }) {
1132
1228
  }
1133
1229
  //#endregion
1134
1230
  //#region src/components/sidebar/dynamic-breadcrumb.tsx
1135
- var Qt = () => {
1136
- let { configurations: e } = V();
1137
- return Pt(d().pathname, e.basePath, e.modules, e.locale);
1138
- }, $t = () => {
1139
- let { basePath: e, segments: t } = Qt(), { overrides: n } = tt(), r = f("/:prefix/settings/:suffix"), i = H();
1140
- return r ? /* @__PURE__ */ N(Kt, { children: /* @__PURE__ */ N(qt, { children: /* @__PURE__ */ N("div", {
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", {
1141
1237
  className: "astw:inline-flex astw:items-center astw:gap-3 astw:last:text-foreground",
1142
- children: /* @__PURE__ */ N(Jt, { children: /* @__PURE__ */ N(Yt, {
1238
+ children: /* @__PURE__ */ N(en, { children: /* @__PURE__ */ N(tn, {
1143
1239
  to: `/${r.params.prefix}/settings`,
1144
1240
  children: i("settings")
1145
1241
  }) })
1146
- }) }) }) : /* @__PURE__ */ N(Kt, { children: /* @__PURE__ */ N(qt, { children: t.map((r, i) => {
1242
+ }) }) }) : /* @__PURE__ */ N(Qt, { children: /* @__PURE__ */ N($t, { children: t.map((r, i) => {
1147
1243
  let a = e ? `/${e}/${r.path}` : `/${r.path}`, o = n.get(a) ?? r.title;
1148
1244
  return /* @__PURE__ */ P("div", {
1149
1245
  className: "astw:inline-flex astw:items-center astw:gap-3 astw:last:text-foreground",
1150
- children: [/* @__PURE__ */ N(Jt, { children: r.clickable ? /* @__PURE__ */ N(Yt, {
1246
+ children: [/* @__PURE__ */ N(en, { children: r.clickable ? /* @__PURE__ */ N(tn, {
1151
1247
  to: r.path,
1152
1248
  children: o
1153
- }) : /* @__PURE__ */ N(Xt, {
1249
+ }) : /* @__PURE__ */ N(nn, {
1154
1250
  ariaCurrent: i === t.length - 1 && "location",
1155
1251
  children: o
1156
- }) }), i < t.length - 1 && /* @__PURE__ */ N(Zt, {})]
1252
+ }) }), i < t.length - 1 && /* @__PURE__ */ N(rn, {})]
1157
1253
  }, i);
1158
1254
  }) }) });
1159
- }, en = [
1255
+ }, sn = [
1160
1256
  {
1161
1257
  rel: "icon",
1162
1258
  type: "image/png",
@@ -1174,54 +1270,54 @@ var Qt = () => {
1174
1270
  sizes: "180x180",
1175
1271
  href: "data:image/png;base64,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"
1176
1272
  }
1177
- ], tn = " · ", nn = "data-app-shell-favicon", rn = (e) => {
1273
+ ], cn = " · ", ln = "data-app-shell-favicon", un = (e) => {
1178
1274
  if (e.startsWith("data:")) return e.match(/^data:([^;,]+)/)?.[1];
1179
1275
  if (e.endsWith(".svg")) return "image/svg+xml";
1180
1276
  if (e.endsWith(".png")) return "image/png";
1181
1277
  if (e.endsWith(".ico")) return "image/x-icon";
1182
- }, an = () => {
1183
- let { title: e, favicon: t } = V(), { basePath: n, segments: r } = Qt(), i = nt()?.overrides, a = r.at(-1), o;
1278
+ }, dn = () => {
1279
+ let { title: e, favicon: t } = B(), { basePath: n, segments: r } = an(), i = ct()?.overrides, a = r.at(-1), o;
1184
1280
  if (a) {
1185
1281
  let e = n ? `/${n}/${a.path}` : `/${a.path}`;
1186
1282
  o = i?.get(e) ?? a.title;
1187
1283
  }
1188
- let s = [o, e].filter(Boolean).join(tn), c = typeof document < "u" && document.head.querySelector(`link[rel~="icon"]:not([${nn}])`), l;
1284
+ let s = [o, e].filter(Boolean).join(cn), c = typeof document < "u" && document.head.querySelector(`link[rel~="icon"]:not([${ln}])`), l;
1189
1285
  return l = t ? [{
1190
1286
  rel: "icon",
1191
1287
  href: t,
1192
- type: rn(t)
1193
- }] : c ? [] : en, /* @__PURE__ */ P(M, { children: [s ? /* @__PURE__ */ N("title", { children: s }) : null, l.map(({ rel: e, href: t, type: n, sizes: r }) => /* @__PURE__ */ N("link", {
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", {
1194
1290
  rel: e,
1195
1291
  href: t,
1196
1292
  "data-app-shell-favicon": "",
1197
1293
  ...n ? { type: n } : {},
1198
1294
  ...r ? { sizes: r } : {}
1199
1295
  }, `${e}-${r ?? "any"}`))] });
1200
- }, on = (e) => {
1201
- let { configurations: t, contentRoutes: n, children: r } = e, { loaderID: i, loader: o } = It({
1296
+ }, fn = (e) => {
1297
+ let { configurations: t, contentRoutes: n, children: r } = e, { loaderID: i, loader: o } = Ht({
1202
1298
  modules: t.modules,
1203
1299
  locale: t.locale,
1204
1300
  basePath: t.basePath
1205
1301
  }), s = t.errorBoundary, c = s ? [{
1206
1302
  element: /* @__PURE__ */ N(a, {}),
1207
- ErrorBoundary: Tt(s),
1303
+ ErrorBoundary: jt(s),
1208
1304
  children: n
1209
1305
  }] : n;
1210
1306
  return {
1211
1307
  id: i,
1212
1308
  loader: o,
1213
- element: /* @__PURE__ */ P(M, { children: [/* @__PURE__ */ N(an, {}), r] }),
1309
+ element: /* @__PURE__ */ P(M, { children: [/* @__PURE__ */ N(dn, {}), r] }),
1214
1310
  children: c,
1215
1311
  HydrateFallback: () => null
1216
1312
  };
1217
- }, sn = {
1313
+ }, pn = {
1218
1314
  createBrowserRouter: o,
1219
1315
  createMemoryRouter: s
1220
- }, cn = (e) => {
1221
- let { children: t } = e, { configurations: n } = V(), r = C(() => kt({
1316
+ }, mn = (e) => {
1317
+ let { children: t } = e, { configurations: n } = B(), r = C(() => Ft({
1222
1318
  modules: n.modules,
1223
1319
  settingsResources: n.settingsResources
1224
- }), [n.modules, n.settingsResources]), i = C(() => [on({
1320
+ }), [n.modules, n.settingsResources]), i = C(() => [fn({
1225
1321
  configurations: n,
1226
1322
  contentRoutes: r,
1227
1323
  children: t
@@ -1229,19 +1325,19 @@ var Qt = () => {
1229
1325
  n,
1230
1326
  r,
1231
1327
  t
1232
- ]), a = n.basePath ? "/" + n.basePath : void 0, o = e.memory ? e.initialEntries : void 0, s = C(() => e.memory ? sn.createMemoryRouter(i, {
1328
+ ]), a = n.basePath ? "/" + n.basePath : void 0, o = e.memory ? e.initialEntries : void 0, s = C(() => e.memory ? pn.createMemoryRouter(i, {
1233
1329
  basename: a,
1234
1330
  ...o ? { initialEntries: o } : {}
1235
- }) : sn.createBrowserRouter(i, { basename: a }), [
1331
+ }) : pn.createBrowserRouter(i, { basename: a }), [
1236
1332
  a,
1237
1333
  o,
1238
1334
  e.memory,
1239
1335
  i
1240
1336
  ]);
1241
1337
  return /* @__PURE__ */ N(le, { router: s });
1242
- }, ln = v(null), Y = v(null);
1243
- function un({ children: e, searchSources: t = [] }) {
1244
- 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(() => {
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(() => {
1245
1341
  c(Array.from(i.current.values()).flat());
1246
1342
  }, []), w = y((e, t) => (i.current.set(e, t), S(), () => {
1247
1343
  i.current.delete(e), S();
@@ -1251,7 +1347,7 @@ function un({ children: e, searchSources: t = [] }) {
1251
1347
  a.current += 1, u(!1), h([]), _(null), b(!1);
1252
1348
  }, []), k = y(() => {
1253
1349
  let e = a.current + 1;
1254
- a.current = e, h([]), _(n), b(!0), Wt({
1350
+ a.current = e, h([]), _(n), b(!0), Xt({
1255
1351
  modules: r.modules,
1256
1352
  locale: r.locale,
1257
1353
  basePath: r.basePath,
@@ -1311,7 +1407,7 @@ function un({ children: e, searchSources: t = [] }) {
1311
1407
  n,
1312
1408
  j
1313
1409
  ]);
1314
- return /* @__PURE__ */ N(ln.Provider, {
1410
+ return /* @__PURE__ */ N(hn.Provider, {
1315
1411
  value: M,
1316
1412
  children: /* @__PURE__ */ N(Y.Provider, {
1317
1413
  value: P,
@@ -1319,13 +1415,13 @@ function un({ children: e, searchSources: t = [] }) {
1319
1415
  })
1320
1416
  });
1321
1417
  }
1322
- function dn() {
1323
- let e = b(ln);
1418
+ function _n() {
1419
+ let e = b(hn);
1324
1420
  if (!e) throw Error("useCommandPaletteDispatch must be used within CommandPaletteProvider");
1325
1421
  return e;
1326
1422
  }
1327
- function fn(e, t) {
1328
- let n = S(), { register: r } = dn(), i = T(t);
1423
+ function vn(e, t) {
1424
+ let n = S(), { register: r } = _n(), i = T(t);
1329
1425
  i.current = t;
1330
1426
  let a = t.map((e) => `${e.key}\0${e.label}`).join("\n");
1331
1427
  x(() => r(n, i.current.map((t) => ({
@@ -1339,63 +1435,63 @@ function fn(e, t) {
1339
1435
  e
1340
1436
  ]);
1341
1437
  }
1342
- function pn() {
1438
+ function yn() {
1343
1439
  let e = b(Y);
1344
1440
  if (!e) throw Error("useCommandPaletteState must be used within CommandPaletteProvider");
1345
1441
  return e;
1346
1442
  }
1347
- function mn() {
1443
+ function bn() {
1348
1444
  let e = b(Y);
1349
1445
  if (!e) throw Error("useOpenCommandPalette must be used within CommandPaletteProvider");
1350
1446
  return e.openCommandPalette;
1351
1447
  }
1352
- function hn() {
1448
+ function xn() {
1353
1449
  let e = b(Y);
1354
1450
  if (!e) throw Error("useCommandPaletteActions must be used within CommandPaletteProvider");
1355
1451
  return e.actions;
1356
1452
  }
1357
1453
  //#endregion
1358
1454
  //#region src/components/dialog/dialog.tsx
1359
- function gn({ ...e }) {
1455
+ function Sn({ ...e }) {
1360
1456
  return /* @__PURE__ */ N(F.Root, {
1361
1457
  "data-slot": "dialog",
1362
1458
  ...e
1363
1459
  });
1364
1460
  }
1365
- gn.displayName = "Dialog.Root";
1366
- function _n({ ...e }) {
1461
+ Sn.displayName = "Dialog.Root";
1462
+ function Cn({ ...e }) {
1367
1463
  return /* @__PURE__ */ N(F.Trigger, {
1368
1464
  "data-slot": "dialog-trigger",
1369
1465
  ...e
1370
1466
  });
1371
1467
  }
1372
- _n.displayName = "Dialog.Trigger";
1373
- function vn({ ...e }) {
1468
+ Cn.displayName = "Dialog.Trigger";
1469
+ function wn({ ...e }) {
1374
1470
  return /* @__PURE__ */ N(F.Portal, {
1375
1471
  "data-slot": "dialog-portal",
1376
1472
  ...e
1377
1473
  });
1378
1474
  }
1379
- vn.displayName = "Dialog.Portal";
1380
- function yn({ ...e }) {
1475
+ wn.displayName = "Dialog.Portal";
1476
+ function Tn({ ...e }) {
1381
1477
  return /* @__PURE__ */ N(F.Close, {
1382
1478
  "data-slot": "dialog-close",
1383
1479
  ...e
1384
1480
  });
1385
1481
  }
1386
- yn.displayName = "Dialog.Close";
1387
- function bn({ className: e, ...t }) {
1482
+ Tn.displayName = "Dialog.Close";
1483
+ function En({ className: e, ...t }) {
1388
1484
  return /* @__PURE__ */ N(F.Backdrop, {
1389
1485
  "data-slot": "dialog-overlay",
1390
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),
1391
1487
  ...t
1392
1488
  });
1393
1489
  }
1394
- bn.displayName = "Dialog.Overlay";
1395
- function xn({ className: e, children: t, ...n }) {
1396
- return /* @__PURE__ */ P(vn, {
1490
+ En.displayName = "Dialog.Overlay";
1491
+ function Dn({ className: e, children: t, ...n }) {
1492
+ return /* @__PURE__ */ P(wn, {
1397
1493
  "data-slot": "dialog-portal",
1398
- children: [/* @__PURE__ */ N(bn, {}), /* @__PURE__ */ P(F.Popup, {
1494
+ children: [/* @__PURE__ */ N(En, {}), /* @__PURE__ */ P(F.Popup, {
1399
1495
  "data-slot": "dialog-content",
1400
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),
1401
1497
  ...n,
@@ -1409,78 +1505,84 @@ function xn({ className: e, children: t, ...n }) {
1409
1505
  })]
1410
1506
  });
1411
1507
  }
1412
- xn.displayName = "Dialog.Content";
1413
- function Sn({ className: e, ...t }) {
1508
+ Dn.displayName = "Dialog.Content";
1509
+ function On({ className: e, ...t }) {
1414
1510
  return /* @__PURE__ */ N("div", {
1415
1511
  "data-slot": "dialog-header",
1416
1512
  className: I("astw:flex astw:flex-col astw:gap-2 astw:text-center astw:sm:text-left", e),
1417
1513
  ...t
1418
1514
  });
1419
1515
  }
1420
- Sn.displayName = "Dialog.Header";
1421
- function Cn({ className: e, ...t }) {
1516
+ On.displayName = "Dialog.Header";
1517
+ function kn({ className: e, ...t }) {
1422
1518
  return /* @__PURE__ */ N("div", {
1423
1519
  "data-slot": "dialog-footer",
1424
1520
  className: I("astw:flex astw:flex-col-reverse astw:gap-2 astw:sm:flex-row astw:sm:justify-end", e),
1425
1521
  ...t
1426
1522
  });
1427
1523
  }
1428
- Cn.displayName = "Dialog.Footer";
1429
- function wn({ className: e, ...t }) {
1430
- return /* @__PURE__ */ N(F.Title, {
1431
- "data-slot": "dialog-title",
1432
- className: I("astw:text-lg astw:leading-none astw:font-semibold", e),
1433
- ...t
1524
+ kn.displayName = "Dialog.Footer";
1525
+ function An({ className: e, ...t }) {
1526
+ return /* @__PURE__ */ N(U, {
1527
+ variant: "heading-md",
1528
+ className: I("astw:leading-none", e),
1529
+ render: /* @__PURE__ */ N(F.Title, {
1530
+ "data-slot": "dialog-title",
1531
+ ...t
1532
+ })
1434
1533
  });
1435
1534
  }
1436
- wn.displayName = "Dialog.Title";
1437
- function Tn({ className: e, ...t }) {
1438
- return /* @__PURE__ */ N(F.Description, {
1439
- "data-slot": "dialog-description",
1440
- className: I("astw:text-muted-foreground astw:text-sm", e),
1441
- ...t
1535
+ An.displayName = "Dialog.Title";
1536
+ function jn({ className: e, ...t }) {
1537
+ return /* @__PURE__ */ N(U, {
1538
+ variant: "body-md",
1539
+ className: I("astw:text-muted-foreground", e),
1540
+ render: /* @__PURE__ */ N(F.Description, {
1541
+ "data-slot": "dialog-description",
1542
+ ...t
1543
+ })
1442
1544
  });
1443
1545
  }
1444
- Tn.displayName = "Dialog.Description";
1546
+ jn.displayName = "Dialog.Description";
1445
1547
  var X = {
1446
- Root: gn,
1447
- Close: yn,
1448
- Content: xn,
1449
- Description: Tn,
1450
- Footer: Cn,
1451
- Header: Sn,
1452
- Title: wn,
1453
- Trigger: _n
1454
- }, En = [
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 = [
1455
1557
  "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",
1456
1558
  "astw:dark:bg-input/30 astw:transition-[color,box-shadow]",
1457
1559
  "astw:selection:bg-primary astw:selection:text-primary-foreground",
1458
1560
  "astw:placeholder:text-muted-foreground",
1459
1561
  "astw:focus-visible:border-ring astw:focus-visible:ring-ring/50 astw:focus-visible:ring-[3px]",
1460
1562
  "astw:disabled:pointer-events-none astw:disabled:cursor-not-allowed astw:disabled:opacity-50"
1461
- ], Dn = [...En, "astw:h-9 astw:py-1"], On = [...En, "astw:min-h-16 astw:py-2 astw:resize-y"];
1563
+ ], Nn = [...Mn, "astw:h-9 astw:py-1"], Pn = [...Mn, "astw:min-h-16 astw:py-2 astw:resize-y"];
1462
1564
  //#endregion
1463
1565
  //#region src/components/input/input.tsx
1464
- function kn({ className: e, type: t, ref: n, ...r }) {
1566
+ function Fn({ className: e, type: t, ref: n, ...r }) {
1465
1567
  let i = g.useRef(null);
1466
- return ge(i, { handlesDirectionalKeys: !0 }), /* @__PURE__ */ N("input", {
1467
- ref: L(i, n),
1568
+ return _e(i, { handlesDirectionalKeys: !0 }), /* @__PURE__ */ N("input", {
1569
+ ref: ge(i, n),
1468
1570
  type: t,
1469
1571
  "data-slot": "input",
1470
- className: I(Dn, "astw:file:text-foreground astw:file:inline-flex astw:file:h-7 astw:file:border-0 astw:file:bg-transparent astw:file:text-sm astw:file:font-medium", "astw:aria-invalid:ring-danger-solid/20 astw:dark:aria-invalid:ring-danger-solid/40 astw:aria-invalid:border-danger-solid", e),
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),
1471
1573
  ...r
1472
1574
  });
1473
1575
  }
1474
1576
  //#endregion
1475
1577
  //#region src/components/spinner/spinner.tsx
1476
- var An = {
1578
+ var In = {
1477
1579
  xs: 12,
1478
1580
  sm: 14,
1479
1581
  default: 16,
1480
1582
  lg: 20
1481
1583
  };
1482
- function jn({ className: e, size: t = "default", width: n, height: r, ...i }) {
1483
- let a = i["aria-label"] != null || i["aria-labelledby"] != null, o = i["aria-hidden"] === !0 || i["aria-hidden"] == null && i.role == null && !a, s = An[t];
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];
1484
1586
  return /* @__PURE__ */ N("svg", {
1485
1587
  "data-slot": "spinner",
1486
1588
  viewBox: "0 0 16 16",
@@ -1505,9 +1607,14 @@ function jn({ className: e, size: t = "default", width: n, height: r, ...i }) {
1505
1607
  });
1506
1608
  }
1507
1609
  //#endregion
1610
+ //#region src/lib/is-composing.ts
1611
+ function Rn(e, t = !1) {
1612
+ return e.isComposing || t || e.keyCode === 229;
1613
+ }
1614
+ //#endregion
1508
1615
  //#region src/components/command-palette/command-palette.tsx
1509
- 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-sm 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";
1510
- function Mn(e) {
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) {
1511
1618
  let t = [], n = (e, r, i) => {
1512
1619
  e.forEach((e) => {
1513
1620
  let a = [...i, e.title];
@@ -1528,17 +1635,17 @@ function Mn(e) {
1528
1635
  }), n(e.items, e.icon, [e.title]);
1529
1636
  }), t;
1530
1637
  }
1531
- function Nn(e, t) {
1638
+ function Bn(e, t) {
1532
1639
  if (!t.trim()) return e;
1533
1640
  let n = t.toLowerCase();
1534
1641
  return e.filter((e) => e.label.toLowerCase().includes(n));
1535
1642
  }
1536
- var Pn = 300, Fn = (e) => e === "/" || e.startsWith("/_"), In = {
1643
+ var Vn = 300, Hn = (e) => e === "/" || e.startsWith("/_"), Un = {
1537
1644
  mode: "browse",
1538
1645
  search: "",
1539
1646
  selectedIndex: 0
1540
- }, Ln = [];
1541
- function Rn(e, t) {
1647
+ }, Wn = [];
1648
+ function Gn(e, t) {
1542
1649
  switch (t.type) {
1543
1650
  case "SET_SEARCH": return e.mode === "search" ? {
1544
1651
  ...e,
@@ -1576,7 +1683,7 @@ function Rn(e, t) {
1576
1683
  results: [],
1577
1684
  isSearching: !1
1578
1685
  };
1579
- case "EXIT_SEARCH_MODE": return In;
1686
+ case "EXIT_SEARCH_MODE": return Un;
1580
1687
  case "SEARCH_START": return e.mode === "search" ? {
1581
1688
  ...e,
1582
1689
  isSearching: !0,
@@ -1600,10 +1707,10 @@ function Rn(e, t) {
1600
1707
  ...e,
1601
1708
  selectedIndex: Math.max(e.selectedIndex - 1, 0)
1602
1709
  };
1603
- case "RESET": return In;
1710
+ case "RESET": return Un;
1604
1711
  }
1605
1712
  }
1606
- function zn(e, t) {
1713
+ function Kn(e, t) {
1607
1714
  let n = e.indexOf(":");
1608
1715
  if (n < 1) return {
1609
1716
  activeSource: null,
@@ -1618,13 +1725,13 @@ function zn(e, t) {
1618
1725
  searchQuery: e
1619
1726
  };
1620
1727
  }
1621
- function Bn({ routes: e, contextualActions: t = [], searchSources: n = [], open: r, setOpen: i }) {
1622
- let a = p(), o = T(null), [s, c] = w(Rn, In), 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 : Ln, h = s.mode === "search" && s.isSearching, g = C(() => f ? [] : Nn(t, u), [
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), [
1623
1730
  t,
1624
1731
  u,
1625
1732
  f
1626
- ]), _ = C(() => f ? [] : jt(e, u).toSorted((e, t) => {
1627
- let n = Fn(e.path), r = Fn(t.path);
1733
+ ]), _ = C(() => f ? [] : Lt(e, u).toSorted((e, t) => {
1734
+ let n = Hn(e.path), r = Hn(t.path);
1628
1735
  return Number(n) - Number(r) || e.path.localeCompare(t.path);
1629
1736
  }), [
1630
1737
  e,
@@ -1647,7 +1754,7 @@ function Bn({ routes: e, contextualActions: t = [], searchSources: n = [], open:
1647
1754
  }).catch(() => {
1648
1755
  e.signal.aborted || c({ type: "SEARCH_FAIL" });
1649
1756
  });
1650
- }, Pn);
1757
+ }, Vn);
1651
1758
  return () => {
1652
1759
  clearTimeout(e), l.current?.abort(), l.current = null;
1653
1760
  };
@@ -1688,7 +1795,7 @@ function Bn({ routes: e, contextualActions: t = [], searchSources: n = [], open:
1688
1795
  });
1689
1796
  return;
1690
1797
  }
1691
- let t = zn(e, n);
1798
+ let t = Kn(e, n);
1692
1799
  c({
1693
1800
  type: "SET_SEARCH",
1694
1801
  value: e,
@@ -1696,7 +1803,7 @@ function Bn({ routes: e, contextualActions: t = [], searchSources: n = [], open:
1696
1803
  detectedQuery: t.activeSource ? t.searchQuery : void 0
1697
1804
  });
1698
1805
  }, [s.mode, n]), S = y((e) => {
1699
- let t = zn(e, n);
1806
+ let t = Kn(e, n);
1700
1807
  c({
1701
1808
  type: "INITIALIZE_SEARCH",
1702
1809
  value: e,
@@ -1740,7 +1847,7 @@ function Bn({ routes: e, contextualActions: t = [], searchSources: n = [], open:
1740
1847
  selectableItems: v,
1741
1848
  handleSelectItem: D,
1742
1849
  handleKeyDown: y((e) => {
1743
- if (!e.nativeEvent.isComposing) switch (e.key) {
1850
+ if (!Rn(e.nativeEvent)) switch (e.key) {
1744
1851
  case "ArrowDown":
1745
1852
  e.preventDefault(), c({
1746
1853
  type: "ARROW_DOWN",
@@ -1765,10 +1872,10 @@ function Bn({ routes: e, contextualActions: t = [], searchSources: n = [], open:
1765
1872
  listRef: o
1766
1873
  };
1767
1874
  }
1768
- function Vn({ navItems: e, extraRoutes: t = [] }) {
1769
- let n = H(), r = hn(), { searchSources: i, open: a, setOpen: o, openRequest: s, clearOpenRequest: c, dynamicRoutes: l, isLoadingDynamicRoutes: u } = pn(), { 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 } = Bn({
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({
1770
1877
  routes: C(() => [
1771
- ...Mn(e),
1878
+ ...zn(e),
1772
1879
  ...t,
1773
1880
  ...l
1774
1881
  ], [
@@ -1806,14 +1913,14 @@ function Vn({ navItems: e, extraRoutes: t = [] }) {
1806
1913
  children: [
1807
1914
  /* @__PURE__ */ N(re, { className: "astw:mr-2 astw:h-4 astw:w-4 astw:shrink-0 astw:opacity-50" }),
1808
1915
  b && /* @__PURE__ */ N("span", {
1809
- 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-xs astw:font-medium astw:text-muted-foreground",
1916
+ 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",
1810
1917
  children: b.prefix
1811
1918
  }),
1812
- /* @__PURE__ */ N(kn, {
1919
+ /* @__PURE__ */ N(Fn, {
1813
1920
  value: p,
1814
1921
  onChange: (e) => m(e.target.value),
1815
1922
  placeholder: n("commandPaletteSearch"),
1816
- className: "astw:flex astw:h-10 astw:w-full astw:rounded-md astw:bg-transparent astw:py-3 astw:text-sm astw:outline-none astw:border-0 astw:shadow-none astw:focus-visible:ring-0 astw:placeholder:text-muted-foreground astw:disabled:cursor-not-allowed astw:disabled:opacity-50",
1923
+ className: "astw:flex astw:h-10 astw:w-full astw:rounded-md astw:bg-transparent astw:py-3 astw:text-body-md astw:outline-none astw:border-0 astw:shadow-none astw:focus-visible:ring-0 astw:placeholder:text-muted-foreground astw:disabled:cursor-not-allowed astw:disabled:opacity-50",
1817
1924
  autoFocus: !0
1818
1925
  })
1819
1926
  ]
@@ -1822,17 +1929,17 @@ function Vn({ navItems: e, extraRoutes: t = [] }) {
1822
1929
  ref: D,
1823
1930
  className: "astw:max-h-[50vh] astw:overflow-y-auto astw:overflow-x-hidden",
1824
1931
  children: [w.length === 0 && !S && !u ? /* @__PURE__ */ N("div", {
1825
- className: "astw:py-6 astw:text-center astw:text-sm astw:text-muted-foreground",
1932
+ className: "astw:py-6 astw:text-center astw:text-body-md astw:text-muted-foreground",
1826
1933
  children: n("commandPaletteNoResults")
1827
1934
  }) : /* @__PURE__ */ P("div", {
1828
1935
  className: "astw:p-1",
1829
1936
  children: [
1830
1937
  u && /* @__PURE__ */ P("output", {
1831
- className: "astw:flex astw:items-center astw:justify-center astw:gap-2 astw:py-4 astw:text-sm astw:text-muted-foreground",
1832
- children: [/* @__PURE__ */ N(jn, { "aria-label": n("commandPaletteLoadingRoutes") }), n("commandPaletteLoadingRoutes")]
1938
+ 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")]
1833
1940
  }),
1834
1941
  k > 0 && /* @__PURE__ */ P(M, { children: [/* @__PURE__ */ N("div", {
1835
- className: "astw:px-2 astw:py-1.5 astw:text-xs astw:font-medium astw:text-muted-foreground",
1942
+ className: "astw:px-2 astw:py-1.5 astw:text-label-sm astw:text-muted-foreground",
1836
1943
  children: n("commandPaletteSearchModes")
1837
1944
  }), O.map((e, t) => {
1838
1945
  let n = e.type === "search-mode" ? e.source : null;
@@ -1849,7 +1956,7 @@ function Vn({ navItems: e, extraRoutes: t = [] }) {
1849
1956
  children: n.icon
1850
1957
  }),
1851
1958
  /* @__PURE__ */ P("span", {
1852
- className: "astw:font-mono astw:text-xs astw:text-muted-foreground astw:shrink-0",
1959
+ className: "astw:font-mono astw:text-code-sm astw:text-muted-foreground astw:shrink-0",
1853
1960
  children: [n.prefix, ":"]
1854
1961
  }),
1855
1962
  /* @__PURE__ */ N("span", {
@@ -1860,7 +1967,7 @@ function Vn({ navItems: e, extraRoutes: t = [] }) {
1860
1967
  }, `search-mode-${n.prefix}`) : null;
1861
1968
  })] }),
1862
1969
  _.length > 0 && /* @__PURE__ */ P(M, { children: [/* @__PURE__ */ N("div", {
1863
- className: "astw:px-2 astw:py-1.5 astw:text-xs astw:font-medium astw:text-muted-foreground",
1970
+ className: "astw:px-2 astw:py-1.5 astw:text-label-sm astw:text-muted-foreground",
1864
1971
  children: n("commandPaletteActions")
1865
1972
  }), _.map((e, t) => {
1866
1973
  let n = A + t;
@@ -1881,14 +1988,14 @@ function Vn({ navItems: e, extraRoutes: t = [] }) {
1881
1988
  children: e.label
1882
1989
  }),
1883
1990
  e.group && /* @__PURE__ */ N("span", {
1884
- className: "astw:ml-auto astw:text-xs astw:text-muted-foreground astw:shrink-0",
1991
+ className: "astw:ml-auto astw:text-body-sm astw:text-muted-foreground astw:shrink-0",
1885
1992
  children: e.group
1886
1993
  })
1887
1994
  ]
1888
1995
  }, `action-${e.key}`);
1889
1996
  })] }),
1890
1997
  v.length > 0 && /* @__PURE__ */ P(M, { children: [/* @__PURE__ */ N("div", {
1891
- className: "astw:px-2 astw:py-1.5 astw:text-xs astw:font-medium astw:text-muted-foreground",
1998
+ className: "astw:px-2 astw:py-1.5 astw:text-label-sm astw:text-muted-foreground",
1892
1999
  children: n("commandPalettePages")
1893
2000
  }), v.map((e, t) => {
1894
2001
  let n = j + t, r = e.displayPath ?? e.path;
@@ -1903,13 +2010,13 @@ function Vn({ navItems: e, extraRoutes: t = [] }) {
1903
2010
  className: "astw:truncate astw:w-full astw:text-left",
1904
2011
  children: e.breadcrumb.join(" > ")
1905
2012
  }), /* @__PURE__ */ N("span", {
1906
- className: "astw:text-[11px] astw:text-muted-foreground astw:truncate astw:w-full astw:text-left",
2013
+ className: "astw:text-body-sm astw:text-muted-foreground astw:truncate astw:w-full astw:text-left",
1907
2014
  children: r.startsWith("/") ? r : `/${r}`
1908
2015
  })]
1909
2016
  }, e.path);
1910
2017
  })] }),
1911
2018
  b && y.length > 0 && /* @__PURE__ */ P(M, { children: [/* @__PURE__ */ N("div", {
1912
- className: "astw:px-2 astw:py-1.5 astw:text-xs astw:font-medium astw:text-muted-foreground",
2019
+ className: "astw:px-2 astw:py-1.5 astw:text-label-sm astw:text-muted-foreground",
1913
2020
  children: b.title
1914
2021
  }), y.map((e, t) => /* @__PURE__ */ P("button", {
1915
2022
  "data-index": t,
@@ -1929,30 +2036,30 @@ function Vn({ navItems: e, extraRoutes: t = [] }) {
1929
2036
  children: e.label
1930
2037
  })]
1931
2038
  }), e.description && /* @__PURE__ */ N("span", {
1932
- className: "astw:text-[11px] astw:text-muted-foreground astw:truncate astw:w-full astw:text-left",
2039
+ className: "astw:text-body-sm astw:text-muted-foreground astw:truncate astw:w-full astw:text-left",
1933
2040
  children: e.description
1934
2041
  })]
1935
2042
  }, `search-result-${e.key}`))] })
1936
2043
  ]
1937
2044
  }), S && /* @__PURE__ */ P("div", {
1938
- className: "astw:flex astw:items-center astw:justify-center astw:gap-2 astw:py-4 astw:text-sm astw:text-muted-foreground",
1939
- children: [/* @__PURE__ */ N(jn, {}), n("commandPaletteSearching")]
2045
+ 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")]
1940
2047
  })]
1941
2048
  })
1942
2049
  ]
1943
2050
  })
1944
2051
  });
1945
2052
  }
1946
- function Hn() {
2053
+ function Yn() {
1947
2054
  return null;
1948
2055
  }
1949
- function Un() {
1950
- let e = Lt(), n = ut();
2056
+ function Xn() {
2057
+ let e = Ut(), n = gt();
1951
2058
  return /* @__PURE__ */ N(_, {
1952
2059
  fallback: null,
1953
2060
  children: /* @__PURE__ */ N(t, {
1954
2061
  resolve: e,
1955
- children: (e) => /* @__PURE__ */ N(Vn, {
2062
+ children: (e) => /* @__PURE__ */ N(Jn, {
1956
2063
  navItems: e ?? [],
1957
2064
  extraRoutes: [n]
1958
2065
  })
@@ -1961,13 +2068,13 @@ function Un() {
1961
2068
  }
1962
2069
  //#endregion
1963
2070
  //#region src/hooks/use-is-client.ts
1964
- var Wn = () => () => {}, Gn = () => !0, Kn = () => !1;
1965
- function qn() {
1966
- return D(Wn, Gn, Kn);
2071
+ var Zn = () => () => {}, Qn = () => !0, $n = () => !1;
2072
+ function er() {
2073
+ return D(Zn, Qn, $n);
1967
2074
  }
1968
2075
  //#endregion
1969
2076
  //#region src/fs-routes/converter.tsx
1970
- function Jn(e) {
2077
+ function tr(e) {
1971
2078
  let t = {
1972
2079
  path: "",
1973
2080
  fullPath: "",
@@ -1986,12 +2093,12 @@ function Jn(e) {
1986
2093
  }
1987
2094
  return t;
1988
2095
  }
1989
- function Yn(e, t) {
1990
- return e?.appShellPageProps?.meta?.title ?? Ue(t);
2096
+ function nr(e, t) {
2097
+ return e?.appShellPageProps?.meta?.title ?? Ye(t);
1991
2098
  }
1992
- function Xn(e) {
1993
- let t = e.component, n = Yn(t, e.path), r = t?.appShellPageProps?.meta?.icon, i = t?.appShellPageProps?.meta?.breadcrumbTitle, a = e.guards && e.guards.length > 0 ? K(e.guards) : void 0, o = [];
1994
- for (let t of e.children.values()) o.push(Xn(t));
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));
1995
2102
  return {
1996
2103
  _type: "resource",
1997
2104
  type: "component",
@@ -2003,14 +2110,14 @@ function Xn(e) {
2003
2110
  },
2004
2111
  component: t ? () => /* @__PURE__ */ N(t, {}) : void 0,
2005
2112
  subResources: o.length > 0 ? o : void 0,
2006
- errorBoundary: /* @__PURE__ */ N(U, {}),
2113
+ errorBoundary: /* @__PURE__ */ N(W, {}),
2007
2114
  guards: e.guards,
2008
2115
  loader: a
2009
2116
  };
2010
2117
  }
2011
- function Zn(e) {
2012
- let t = e.component, n = Yn(t, e.path), r = t?.appShellPageProps?.meta?.icon, i = t?.appShellPageProps?.meta?.breadcrumbTitle, a = e.guards && e.guards.length > 0 ? K(e.guards) : void 0, o = [];
2013
- for (let t of e.children.values()) o.push(Xn(t));
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));
2014
2121
  return {
2015
2122
  _type: "module",
2016
2123
  type: "component",
@@ -2023,38 +2130,38 @@ function Zn(e) {
2023
2130
  },
2024
2131
  component: t ? () => /* @__PURE__ */ N(t, {}) : void 0,
2025
2132
  resources: o,
2026
- errorBoundary: /* @__PURE__ */ N(U, {}),
2133
+ errorBoundary: /* @__PURE__ */ N(W, {}),
2027
2134
  guards: e.guards,
2028
2135
  loader: a
2029
2136
  };
2030
2137
  }
2031
- function Qn(e) {
2138
+ function ar(e) {
2032
2139
  if (e.length === 0) return [];
2033
- let t = Jn(e), n = [];
2140
+ let t = tr(e), n = [];
2034
2141
  if (t.component) {
2035
- let e = Zn({
2142
+ let e = ir({
2036
2143
  ...t,
2037
2144
  path: "",
2038
2145
  children: /* @__PURE__ */ new Map()
2039
2146
  });
2040
2147
  n.push(e);
2041
2148
  }
2042
- for (let e of t.children.values()) n.push(Zn(e));
2149
+ for (let e of t.children.values()) n.push(ir(e));
2043
2150
  return n;
2044
2151
  }
2045
2152
  //#endregion
2046
2153
  //#region src/components/appshell/appshell.tsx
2047
2154
  var $ = (e) => {
2048
- let t = qn();
2049
- ze(e.contextData ?? {});
2155
+ let t = er();
2156
+ We(e.contextData ?? {});
2050
2157
  let { modules: n, rootComponent: r, rootGuards: i } = e, a = e.memory ? {
2051
2158
  memory: !0,
2052
2159
  initialEntries: e.initialEntries
2053
- } : { 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 ? [Ge({
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({
2054
2161
  path: "",
2055
2162
  ...r ? {
2056
2163
  meta: {
2057
- title: Le.t("home"),
2164
+ title: Re.t("home"),
2058
2165
  icon: /* @__PURE__ */ N(ne, {})
2059
2166
  },
2060
2167
  component: () => r()
@@ -2065,7 +2172,7 @@ var $ = (e) => {
2065
2172
  n,
2066
2173
  r,
2067
2174
  i
2068
- ]), s = C(() => o ? ke({
2175
+ ]), s = C(() => o ? Ae({
2069
2176
  modules: o,
2070
2177
  settingsResources: e.settingsResources,
2071
2178
  basePath: e.basePath,
@@ -2098,27 +2205,30 @@ var $ = (e) => {
2098
2205
  className: "astw:flex astw:min-h-screen astw:items-center astw:justify-center astw:bg-background astw:p-4",
2099
2206
  children: /* @__PURE__ */ P("div", {
2100
2207
  className: "astw:max-w-md astw:rounded-lg astw:border astw:border-danger-border astw:bg-danger-surface astw:p-6 astw:text-center",
2101
- children: [/* @__PURE__ */ N("h1", {
2102
- className: "astw:mb-2 astw:text-lg astw:font-semibold astw:text-danger-text",
2208
+ children: [/* @__PURE__ */ N(U, {
2209
+ variant: "heading-md",
2210
+ className: "astw:mb-2 astw:text-danger-text",
2211
+ render: /* @__PURE__ */ N("h1", {}),
2103
2212
  children: "Configuration Error"
2104
- }), /* @__PURE__ */ N("p", {
2105
- className: "astw:text-sm astw:text-muted-foreground",
2213
+ }), /* @__PURE__ */ N(U, {
2214
+ variant: "body-md",
2215
+ className: "astw:text-muted-foreground",
2106
2216
  children: e
2107
2217
  })]
2108
2218
  })
2109
2219
  });
2110
2220
  }
2111
- return t ? /* @__PURE__ */ N(B.Provider, {
2221
+ return t ? /* @__PURE__ */ N(z.Provider, {
2112
2222
  value: c,
2113
- children: /* @__PURE__ */ N(Ae.Provider, {
2223
+ children: /* @__PURE__ */ N(je.Provider, {
2114
2224
  value: l,
2115
- children: /* @__PURE__ */ N(et, { children: /* @__PURE__ */ N(yt, {
2225
+ children: /* @__PURE__ */ N(ot, { children: /* @__PURE__ */ N(Tt, {
2116
2226
  defaultColorTheme: e.defaultColorTheme,
2117
- children: /* @__PURE__ */ N(cn, {
2227
+ children: /* @__PURE__ */ N(mn, {
2118
2228
  ...a,
2119
- children: /* @__PURE__ */ P(un, {
2229
+ children: /* @__PURE__ */ P(gn, {
2120
2230
  searchSources: e.searchSources,
2121
- children: [e.children, /* @__PURE__ */ N(Un, {})]
2231
+ children: [e.children, /* @__PURE__ */ N(Xn, {})]
2122
2232
  })
2123
2233
  })
2124
2234
  }) })
@@ -2126,18 +2236,18 @@ var $ = (e) => {
2126
2236
  }) : null;
2127
2237
  };
2128
2238
  $.WithPages = (e) => {
2129
- let t = Qn(e);
2239
+ let t = ar(e);
2130
2240
  return (e) => /* @__PURE__ */ N($, {
2131
2241
  ...e,
2132
2242
  modules: t,
2133
2243
  memory: !1
2134
2244
  });
2135
2245
  };
2136
- var $n = (e) => /* @__PURE__ */ N($, {
2246
+ var or = (e) => /* @__PURE__ */ N($, {
2137
2247
  ...e,
2138
2248
  memory: !1
2139
2249
  });
2140
- $n.WithPages = $.WithPages;
2141
- var er = $n;
2250
+ or.WithPages = $.WithPages;
2251
+ var sr = or;
2142
2252
  //#endregion
2143
- export { je as A, I as B, Ve as C, Ie as D, H as E, Ce as F, Se as I, L, Pe as M, z as N, Me as O, R as P, ge as R, Ke as S, He as T, pt as _, kn as a, Qe as b, X as c, fn as d, $t as f, Ct as g, q as h, jn as i, Ne as j, V as k, pn as l, Lt as m, $ as n, Dn as o, Qt as p, Hn as r, On as s, er as t, mn as u, bt as v, Be as w, Ge as x, rt as y, pe as z };
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 };