@kywi-software/core 0.6.7 → 0.7.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/AGENT-PATTERNS.md +58 -2
- package/dist/admin/registry.d.ts +2 -2
- package/dist/admin/registry.d.ts.map +1 -1
- package/dist/admin/registry.js +41 -19
- package/dist/admin/registry.js.map +1 -1
- package/dist/admin/styles/admin.css +130 -0
- package/dist/admin/surfaces/menus/menu-editor.d.ts +3 -0
- package/dist/admin/surfaces/menus/menu-editor.d.ts.map +1 -0
- package/dist/admin/surfaces/menus/menu-editor.js +260 -0
- package/dist/admin/surfaces/menus/menu-editor.js.map +1 -0
- package/dist/admin/surfaces/menus/menu-tree.d.ts +123 -0
- package/dist/admin/surfaces/menus/menu-tree.d.ts.map +1 -0
- package/dist/admin/surfaces/menus/menu-tree.js +292 -0
- package/dist/admin/surfaces/menus/menu-tree.js.map +1 -0
- package/dist/admin/surfaces/menus/menus-data.d.ts +101 -0
- package/dist/admin/surfaces/menus/menus-data.d.ts.map +1 -0
- package/dist/admin/surfaces/menus/menus-data.js +98 -0
- package/dist/admin/surfaces/menus/menus-data.js.map +1 -0
- package/dist/admin/surfaces/menus/menus-list.d.ts +3 -0
- package/dist/admin/surfaces/menus/menus-list.d.ts.map +1 -0
- package/dist/admin/surfaces/menus/menus-list.js +105 -0
- package/dist/admin/surfaces/menus/menus-list.js.map +1 -0
- package/dist/admin/surfaces/menus/page-picker.d.ts +10 -0
- package/dist/admin/surfaces/menus/page-picker.d.ts.map +1 -0
- package/dist/admin/surfaces/menus/page-picker.js +38 -0
- package/dist/admin/surfaces/menus/page-picker.js.map +1 -0
- package/dist/admin/surfaces/settings/admin-features.d.ts.map +1 -1
- package/dist/admin/surfaces/settings/admin-features.js +1 -0
- package/dist/admin/surfaces/settings/admin-features.js.map +1 -1
- package/dist/api/feed-routes.d.ts +2 -2
- package/dist/api/index.d.ts +1 -0
- package/dist/api/index.d.ts.map +1 -1
- package/dist/api/index.js +5 -0
- package/dist/api/index.js.map +1 -1
- package/dist/api/menu-routes.d.ts +46 -0
- package/dist/api/menu-routes.d.ts.map +1 -0
- package/dist/api/menu-routes.js +247 -0
- package/dist/api/menu-routes.js.map +1 -0
- package/dist/api/openapi.d.ts.map +1 -1
- package/dist/api/openapi.js +105 -0
- package/dist/api/openapi.js.map +1 -1
- package/dist/cache/cached-queries.d.ts +22 -0
- package/dist/cache/cached-queries.d.ts.map +1 -1
- package/dist/cache/cached-queries.js +31 -1
- package/dist/cache/cached-queries.js.map +1 -1
- package/dist/cache/keys.d.ts +2 -0
- package/dist/cache/keys.d.ts.map +1 -1
- package/dist/cache/keys.js +4 -0
- package/dist/cache/keys.js.map +1 -1
- package/dist/db/index.d.ts +1 -0
- package/dist/db/index.d.ts.map +1 -1
- package/dist/db/index.js +1 -0
- package/dist/db/index.js.map +1 -1
- package/dist/db/menu-queries.d.ts +182 -0
- package/dist/db/menu-queries.d.ts.map +1 -0
- package/dist/db/menu-queries.js +326 -0
- package/dist/db/menu-queries.js.map +1 -0
- package/dist/layout/index.d.ts +1 -0
- package/dist/layout/index.d.ts.map +1 -1
- package/dist/layout/index.js +1 -0
- package/dist/layout/index.js.map +1 -1
- package/dist/layout/modules-extended.d.ts +32 -2
- package/dist/layout/modules-extended.d.ts.map +1 -1
- package/dist/layout/modules-extended.js +159 -39
- package/dist/layout/modules-extended.js.map +1 -1
- package/dist/layout/nav-hydration.d.ts +62 -0
- package/dist/layout/nav-hydration.d.ts.map +1 -0
- package/dist/layout/nav-hydration.js +149 -0
- package/dist/layout/nav-hydration.js.map +1 -0
- package/dist/layout/registry.d.ts +0 -26
- package/dist/layout/registry.d.ts.map +1 -1
- package/dist/layout/registry.js +22 -8
- package/dist/layout/registry.js.map +1 -1
- package/dist/nav/builder.d.ts +16 -0
- package/dist/nav/builder.d.ts.map +1 -1
- package/dist/nav/builder.js +21 -2
- package/dist/nav/builder.js.map +1 -1
- package/dist/nav/index.d.ts +1 -0
- package/dist/nav/index.d.ts.map +1 -1
- package/dist/nav/index.js +1 -0
- package/dist/nav/index.js.map +1 -1
- package/dist/nav/menu-resolver.d.ts +52 -0
- package/dist/nav/menu-resolver.d.ts.map +1 -0
- package/dist/nav/menu-resolver.js +113 -0
- package/dist/nav/menu-resolver.js.map +1 -0
- package/dist/nav/types.d.ts +30 -0
- package/dist/nav/types.d.ts.map +1 -1
- package/dist/schema/base.d.ts +331 -0
- package/dist/schema/base.d.ts.map +1 -1
- package/dist/schema/base.js +45 -0
- package/dist/schema/base.js.map +1 -1
- package/dist/schema/mysql-tables.d.ts +303 -0
- package/dist/schema/mysql-tables.d.ts.map +1 -1
- package/dist/schema/mysql-tables.js +25 -0
- package/dist/schema/mysql-tables.js.map +1 -1
- package/dist/scope/create-scope.d.ts.map +1 -1
- package/dist/scope/create-scope.js +27 -1
- package/dist/scope/create-scope.js.map +1 -1
- package/dist/scope/types.d.ts +28 -1
- package/dist/scope/types.d.ts.map +1 -1
- package/dist/site/styles.css +380 -0
- package/package.json +1 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"nav-hydration.js","sourceRoot":"","sources":["../../src/layout/nav-hydration.ts"],"names":[],"mappings":"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"}
|
|
@@ -2,32 +2,6 @@ import type { ModuleConfig } from '../config/types.js';
|
|
|
2
2
|
export interface ModuleRegistryEntry extends ModuleConfig {
|
|
3
3
|
isBuiltIn: boolean;
|
|
4
4
|
}
|
|
5
|
-
/**
|
|
6
|
-
* Module palette categories (spec):
|
|
7
|
-
* Layout — section, container, columns, spacer, divider
|
|
8
|
-
* Elements — richText, heading, text, image, button, html, blockquote, badge, icon, video, embed
|
|
9
|
-
* Objects — card, accordion, tabs, carousel, testimonial, hero, cta, pricing, faq, alert,
|
|
10
|
-
* countdown, feedDisplay, tagCloud, relatedContent, categorySummary, categoryList,
|
|
11
|
-
* comments
|
|
12
|
-
* Navigation — breadcrumbs, navMenu, navigation, siteMap, searchBox, search
|
|
13
|
-
* Personalization — variantContainer, personalizationBadge, socialShare, map
|
|
14
|
-
* Compliance — cookieConsent
|
|
15
|
-
* Saved — component, form, formEmbed
|
|
16
|
-
*
|
|
17
|
-
* BUILT_IN_MODULES below is the authority; the agent-guidance module catalog
|
|
18
|
-
* (docs/agents/AGENT-PATTERNS.md §5) and the MCP list_module_types tool are
|
|
19
|
-
* both derived from it, and a coverage test fails if the guidance doc omits a
|
|
20
|
-
* module added here.
|
|
21
|
-
*
|
|
22
|
-
* `select` props carry `options` only where the renderer closes the set —
|
|
23
|
-
* heading.level, columns.preset, search.method, variantContainer.mode, and the
|
|
24
|
-
* two button-variant props (whose classes the shipped site stylesheet defines).
|
|
25
|
-
* alert.type, badge.variant, navigation.variant and the three `layout` props
|
|
26
|
-
* (feedDisplay, relatedContent, categoryList) are deliberately option-less:
|
|
27
|
-
* each is interpolated straight into a class name (`kywi-alert-${type}`) that
|
|
28
|
-
* only the active theme's CSS gives meaning, so there is no closed set to
|
|
29
|
-
* publish. Give them options once a theme-variant contract exists.
|
|
30
|
-
*/
|
|
31
5
|
export declare const BUILT_IN_MODULES: ModuleConfig[];
|
|
32
6
|
export interface ModuleRegistry {
|
|
33
7
|
get(name: string): ModuleRegistryEntry | null;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"registry.d.ts","sourceRoot":"","sources":["../../src/layout/registry.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAA;AAItD,MAAM,WAAW,mBAAoB,SAAQ,YAAY;IACvD,SAAS,EAAE,OAAO,CAAA;CACnB;
|
|
1
|
+
{"version":3,"file":"registry.d.ts","sourceRoot":"","sources":["../../src/layout/registry.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAA;AAItD,MAAM,WAAW,mBAAoB,SAAQ,YAAY;IACvD,SAAS,EAAE,OAAO,CAAA;CACnB;AA6CD,eAAO,MAAM,gBAAgB,EAAE,YAAY,EA4lB1C,CAAA;AAID,MAAM,WAAW,cAAc;IAC7B,GAAG,CAAC,IAAI,EAAE,MAAM,GAAG,mBAAmB,GAAG,IAAI,CAAA;IAC7C,IAAI,IAAI,mBAAmB,EAAE,CAAA;IAC7B,cAAc,IAAI,GAAG,CAAC,MAAM,EAAE,mBAAmB,EAAE,CAAC,CAAA;CACrD;AAED;;;GAGG;AACH,wBAAgB,oBAAoB,CAAC,WAAW,EAAE,YAAY,EAAE,GAAG,cAAc,CA6BhF"}
|
package/dist/layout/registry.js
CHANGED
|
@@ -17,14 +17,27 @@
|
|
|
17
17
|
* module added here.
|
|
18
18
|
*
|
|
19
19
|
* `select` props carry `options` only where the renderer closes the set —
|
|
20
|
-
* heading.level, columns.preset, search.method, variantContainer.mode,
|
|
21
|
-
* two button-variant props (whose classes the shipped
|
|
22
|
-
* alert.type, badge.variant
|
|
23
|
-
* (feedDisplay, relatedContent, categoryList) are deliberately
|
|
24
|
-
* each is interpolated straight into a class name
|
|
25
|
-
* only the active theme's CSS gives meaning, so
|
|
26
|
-
* publish. Give them options once a theme-variant
|
|
20
|
+
* heading.level, columns.preset, search.method, variantContainer.mode, the nav
|
|
21
|
+
* variants (below), and the two button-variant props (whose classes the shipped
|
|
22
|
+
* site stylesheet defines). alert.type, badge.variant and the three `layout`
|
|
23
|
+
* props (feedDisplay, relatedContent, categoryList) are deliberately
|
|
24
|
+
* option-less: each is interpolated straight into a class name
|
|
25
|
+
* (`kywi-alert-${type}`) that only the active theme's CSS gives meaning, so
|
|
26
|
+
* there is no closed set to publish. Give them options once a theme-variant
|
|
27
|
+
* contract exists.
|
|
27
28
|
*/
|
|
29
|
+
/**
|
|
30
|
+
* navMenu / navigation presentation variants. Closed set: each one selects a
|
|
31
|
+
* different renderer branch (`renderNavRoot` in modules-extended) and the
|
|
32
|
+
* shipped site stylesheet styles all four. `navigation`'s pre-#111 values
|
|
33
|
+
* (`primary`, `sub`) still render — they alias to horizontal / vertical.
|
|
34
|
+
*/
|
|
35
|
+
const NAV_VARIANT_OPTIONS = [
|
|
36
|
+
{ value: 'horizontal', label: 'Horizontal bar (dropdowns)' },
|
|
37
|
+
{ value: 'mega', label: 'Mega menu (full-width columns)' },
|
|
38
|
+
{ value: 'vertical', label: 'Vertical side nav (fly-outs)' },
|
|
39
|
+
{ value: 'footer', label: 'Footer columns' },
|
|
40
|
+
];
|
|
28
41
|
export const BUILT_IN_MODULES = [
|
|
29
42
|
// ── Layout ──────────────────────────────────────────────────────────────────
|
|
30
43
|
{
|
|
@@ -467,6 +480,7 @@ export const BUILT_IN_MODULES = [
|
|
|
467
480
|
category: 'Navigation',
|
|
468
481
|
props: {
|
|
469
482
|
menuSlug: { type: 'slug', label: 'Menu Slug' },
|
|
483
|
+
variant: { type: 'select', label: 'Variant', defaultValue: 'horizontal', options: NAV_VARIANT_OPTIONS },
|
|
470
484
|
depth: { type: 'number', label: 'Max Depth', defaultValue: 2 },
|
|
471
485
|
items: { type: 'textarea', label: 'Items (JSON array)' },
|
|
472
486
|
},
|
|
@@ -477,7 +491,7 @@ export const BUILT_IN_MODULES = [
|
|
|
477
491
|
component: '@kywi-software/modules/Navigation',
|
|
478
492
|
category: 'Navigation',
|
|
479
493
|
props: {
|
|
480
|
-
variant: { type: 'select', label: 'Variant', defaultValue: '
|
|
494
|
+
variant: { type: 'select', label: 'Variant', defaultValue: 'horizontal', options: NAV_VARIANT_OPTIONS },
|
|
481
495
|
ariaLabel: { type: 'text', label: 'Aria Label', defaultValue: 'Navigation' },
|
|
482
496
|
depth: { type: 'number', label: 'Max Depth', defaultValue: 3 },
|
|
483
497
|
items: { type: 'textarea', label: 'Items (JSON array)' },
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"registry.js","sourceRoot":"","sources":["../../src/layout/registry.ts"],"names":[],"mappings":"AAQA,iFAAiF;AAEjF;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AAEH,MAAM,CAAC,MAAM,gBAAgB,GAAmB;IAC9C,+EAA+E;IAC/E;QACE,IAAI,EAAE,SAAS;QACf,KAAK,EAAE,SAAS;QAChB,SAAS,EAAE,gCAAgC;QAC3C,QAAQ,EAAE,QAAQ;QAClB,KAAK,EAAE;YACL,eAAe,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,kBAAkB,EAAE;YAC7D,UAAU,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,aAAa,EAAE;YAClD,aAAa,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,gBAAgB,EAAE;SACzD;KACF;IACD;QACE,IAAI,EAAE,WAAW;QACjB,KAAK,EAAE,WAAW;QAClB,SAAS,EAAE,kCAAkC;QAC7C,QAAQ,EAAE,QAAQ;QAClB,KAAK,EAAE;YACL,QAAQ,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,WAAW,EAAE,YAAY,EAAE,QAAQ,EAAE;YACtE,OAAO,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,SAAS,EAAE,YAAY,EAAE,QAAQ,EAAE;SACpE;KACF;IACD;QACE,IAAI,EAAE,SAAS;QACf,KAAK,EAAE,SAAS;QAChB,SAAS,EAAE,gCAAgC;QAC3C,QAAQ,EAAE,QAAQ;QAClB,KAAK,EAAE;YACL,wEAAwE;YACxE,2EAA2E;YAC3E,6DAA6D;YAC7D,MAAM,EAAE;gBACN,IAAI,EAAE,QAAQ;gBACd,KAAK,EAAE,QAAQ;gBACf,YAAY,EAAE,GAAG;gBACjB,OAAO,EAAE;oBACP,EAAE,KAAK,EAAE,GAAG,EAAE,KAAK,EAAE,iBAAiB,EAAE;oBACxC,EAAE,KAAK,EAAE,GAAG,EAAE,KAAK,EAAE,qBAAqB,EAAE;oBAC5C,EAAE,KAAK,EAAE,GAAG,EAAE,KAAK,EAAE,sBAAsB,EAAE;oBAC7C,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,qBAAqB,EAAE;oBAC9C,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,qBAAqB,EAAE;oBAC9C,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,qBAAqB,EAAE;oBAC9C,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,qBAAqB,EAAE;iBAC/C;aACF;YACD,GAAG,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,YAAY,EAAE,MAAM,EAAE;SAC1D;KACF;IACD;QACE,IAAI,EAAE,QAAQ;QACd,KAAK,EAAE,QAAQ;QACf,SAAS,EAAE,+BAA+B;QAC1C,QAAQ,EAAE,QAAQ;QAClB,KAAK,EAAE;YACL,MAAM,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,QAAQ,EAAE,YAAY,EAAE,MAAM,EAAE;SAChE;KACF;IACD;QACE,IAAI,EAAE,SAAS;QACf,KAAK,EAAE,SAAS;QAChB,SAAS,EAAE,gCAAgC;QAC3C,QAAQ,EAAE,QAAQ;QAClB,KAAK,EAAE;YACL,KAAK,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE;YACxC,SAAS,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,WAAW,EAAE,YAAY,EAAE,KAAK,EAAE;SACrE;KACF;IAED,+EAA+E;IAC/E;QACE,IAAI,EAAE,UAAU;QAChB,KAAK,EAAE,WAAW;QAClB,SAAS,EAAE,iCAAiC;QAC5C,QAAQ,EAAE,UAAU;QACpB,KAAK,EAAE;YACL,OAAO,EAAE,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,SAAS,EAAE;SAChD;KACF;IACD;QACE,IAAI,EAAE,SAAS;QACf,KAAK,EAAE,SAAS;QAChB,SAAS,EAAE,gCAAgC;QAC3C,QAAQ,EAAE,UAAU;QACpB,KAAK,EAAE;YACL,IAAI,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE;YACrC,yEAAyE;YACzE,KAAK,EAAE;gBACL,IAAI,EAAE,QAAQ;gBACd,KAAK,EAAE,OAAO;gBACd,YAAY,EAAE,IAAI;gBAClB,OAAO,EAAE;oBACP,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,WAAW,EAAE;oBACnC,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,WAAW,EAAE;oBACnC,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,WAAW,EAAE;oBACnC,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,WAAW,EAAE;oBACnC,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,WAAW,EAAE;oBACnC,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,WAAW,EAAE;iBACpC;aACF;SACF;KACF;IACD;QACE,IAAI,EAAE,MAAM;QACZ,KAAK,EAAE,MAAM;QACb,SAAS,EAAE,6BAA6B;QACxC,QAAQ,EAAE,UAAU;QACpB,KAAK,EAAE;YACL,OAAO,EAAE,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,SAAS,EAAE;SAChD;KACF;IACD;QACE,IAAI,EAAE,OAAO;QACb,KAAK,EAAE,OAAO;QACd,SAAS,EAAE,8BAA8B;QACzC,QAAQ,EAAE,UAAU;QACpB,KAAK,EAAE;YACL,GAAG,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE;YACtC,GAAG,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,UAAU,EAAE;YACxC,OAAO,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,SAAS,EAAE;SAC5C;KACF;IACD;QACE,IAAI,EAAE,QAAQ;QACd,KAAK,EAAE,QAAQ;QACf,SAAS,EAAE,+BAA+B;QAC1C,QAAQ,EAAE,UAAU;QACpB,KAAK,EAAE;YACL,KAAK,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE;YACvC,IAAI,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE;YACpC,sEAAsE;YACtE,2EAA2E;YAC3E,sEAAsE;YACtE,uDAAuD;YACvD,OAAO,EAAE;gBACP,IAAI,EAAE,QAAQ;gBACd,KAAK,EAAE,SAAS;gBAChB,YAAY,EAAE,SAAS;gBACvB,OAAO,EAAE;oBACP,EAAE,KAAK,EAAE,SAAS,EAAE,KAAK,EAAE,SAAS,EAAE;oBACtC,EAAE,KAAK,EAAE,WAAW,EAAE,KAAK,EAAE,WAAW,EAAE;iBAC3C;aACF;SACF;KACF;IACD;QACE,IAAI,EAAE,MAAM;QACZ,KAAK,EAAE,UAAU;QACjB,SAAS,EAAE,6BAA6B;QACxC,QAAQ,EAAE,UAAU;QACpB,KAAK,EAAE;YACL,IAAI,EAAE,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,WAAW,EAAE;SAC/C;KACF;IACD;QACE,IAAI,EAAE,YAAY;QAClB,KAAK,EAAE,YAAY;QACnB,SAAS,EAAE,mCAAmC;QAC9C,QAAQ,EAAE,UAAU;QACpB,KAAK,EAAE;YACL,OAAO,EAAE,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,YAAY,EAAE;YAClD,MAAM,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,QAAQ,EAAE;YACzC,IAAI,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,cAAc,EAAE;SAC9C;KACF;IACD;QACE,IAAI,EAAE,OAAO;QACb,KAAK,EAAE,OAAO;QACd,SAAS,EAAE,8BAA8B;QACzC,QAAQ,EAAE,UAAU;QACpB,KAAK,EAAE;YACL,KAAK,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE;YACvC,OAAO,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,SAAS,EAAE,YAAY,EAAE,SAAS,EAAE;YACtE,IAAI,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,UAAU,EAAE;SAC1C;KACF;IACD;QACE,IAAI,EAAE,MAAM;QACZ,KAAK,EAAE,MAAM;QACb,SAAS,EAAE,6BAA6B;QACxC,QAAQ,EAAE,UAAU;QACpB,KAAK,EAAE;YACL,IAAI,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,WAAW,EAAE;YAC1C,IAAI,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,YAAY,EAAE,KAAK,EAAE;YAC1D,KAAK,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE;YACxC,KAAK,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,kBAAkB,EAAE;SACnD;KACF;IACD;QACE,IAAI,EAAE,OAAO;QACb,KAAK,EAAE,OAAO;QACd,SAAS,EAAE,8BAA8B;QACzC,QAAQ,EAAE,UAAU;QACpB,KAAK,EAAE;YACL,GAAG,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,YAAY,EAAE;YAC1C,MAAM,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,cAAc,EAAE;YAChD,QAAQ,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,UAAU,EAAE,YAAY,EAAE,KAAK,EAAE;YACrE,IAAI,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,EAAE,YAAY,EAAE,KAAK,EAAE;YAC7D,KAAK,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,OAAO,EAAE,YAAY,EAAE,KAAK,EAAE;SAChE;KACF;IACD;QACE,IAAI,EAAE,OAAO;QACb,KAAK,EAAE,OAAO;QACd,SAAS,EAAE,8BAA8B;QACzC,QAAQ,EAAE,UAAU;QACpB,KAAK,EAAE;YACL,IAAI,EAAE,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,YAAY,EAAE;SAChD;KACF;IAED,+EAA+E;IAC/E;QACE,IAAI,EAAE,MAAM;QACZ,KAAK,EAAE,MAAM;QACb,SAAS,EAAE,6BAA6B;QACxC,QAAQ,EAAE,SAAS;QACnB,KAAK,EAAE;YACL,KAAK,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE;YACvC,IAAI,EAAE,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,MAAM,EAAE;YACzC,KAAK,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE;YACxC,QAAQ,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,gBAAgB,EAAE;YACnD,IAAI,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,UAAU,EAAE;YACzC,MAAM,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,QAAQ,EAAE;SAC1C;KACF;IACD;QACE,IAAI,EAAE,WAAW;QACjB,KAAK,EAAE,WAAW;QAClB,SAAS,EAAE,kCAAkC;QAC7C,QAAQ,EAAE,SAAS;QACnB,KAAK,EAAE;YACL,KAAK,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE;YACvC,OAAO,EAAE,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,SAAS,EAAE;YAC/C,IAAI,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,iBAAiB,EAAE,YAAY,EAAE,KAAK,EAAE;SACzE;KACF;IACD;QACE,IAAI,EAAE,MAAM;QACZ,KAAK,EAAE,MAAM;QACb,SAAS,EAAE,6BAA6B;QACxC,QAAQ,EAAE,SAAS;QACnB,KAAK,EAAE;YACL,IAAI,EAAE,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,aAAa,EAAE;YAChD,SAAS,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,YAAY,EAAE,YAAY,EAAE,CAAC,EAAE;SACpE;KACF;IACD;QACE,IAAI,EAAE,UAAU;QAChB,KAAK,EAAE,UAAU;QACjB,SAAS,EAAE,iCAAiC;QAC5C,QAAQ,EAAE,SAAS;QACnB,KAAK,EAAE;YACL,KAAK,EAAE,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,cAAc,EAAE;YAClD,QAAQ,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,UAAU,EAAE,YAAY,EAAE,KAAK,EAAE;YACrE,QAAQ,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,eAAe,EAAE,YAAY,EAAE,IAAI,EAAE;SACzE;KACF;IACD;QACE,IAAI,EAAE,aAAa;QACnB,KAAK,EAAE,aAAa;QACpB,SAAS,EAAE,oCAAoC;QAC/C,QAAQ,EAAE,SAAS;QACnB,KAAK,EAAE;YACL,KAAK,EAAE,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,OAAO,EAAE;YAC3C,MAAM,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,QAAQ,EAAE;YACzC,IAAI,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,gBAAgB,EAAE;YAC/C,MAAM,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE;SAC3C;KACF;IACD;QACE,IAAI,EAAE,MAAM;QACZ,KAAK,EAAE,MAAM;QACb,SAAS,EAAE,6BAA6B;QACxC,QAAQ,EAAE,SAAS;QACnB,KAAK,EAAE;YACL,QAAQ,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,UAAU,EAAE;YAC7C,OAAO,EAAE,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,SAAS,EAAE;YAC/C,eAAe,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,kBAAkB,EAAE;YAC7D,WAAW,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,cAAc,EAAE;YACpD,UAAU,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,YAAY,EAAE,YAAY,EAAE,GAAG,EAAE;SACrE;KACF;IACD;QACE,IAAI,EAAE,KAAK;QACX,KAAK,EAAE,gBAAgB;QACvB,SAAS,EAAE,4BAA4B;QACvC,QAAQ,EAAE,SAAS;QACnB,KAAK,EAAE;YACL,QAAQ,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,UAAU,EAAE;YAC7C,OAAO,EAAE,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,SAAS,EAAE;YAC/C,WAAW,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,cAAc,EAAE,YAAY,EAAE,aAAa,EAAE;YACjF,UAAU,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,YAAY,EAAE,YAAY,EAAE,GAAG,EAAE;YACpE,kEAAkE;YAClE,aAAa,EAAE;gBACb,IAAI,EAAE,QAAQ;gBACd,KAAK,EAAE,gBAAgB;gBACvB,YAAY,EAAE,SAAS;gBACvB,OAAO,EAAE;oBACP,EAAE,KAAK,EAAE,SAAS,EAAE,KAAK,EAAE,SAAS,EAAE;oBACtC,EAAE,KAAK,EAAE,WAAW,EAAE,KAAK,EAAE,WAAW,EAAE;iBAC3C;aACF;SACF;KACF;IACD;QACE,IAAI,EAAE,SAAS;QACf,KAAK,EAAE,SAAS;QAChB,SAAS,EAAE,gCAAgC;QAC3C,QAAQ,EAAE,SAAS;QACnB,KAAK,EAAE;YACL,QAAQ,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,WAAW,EAAE;YAC9C,KAAK,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE;YACvC,MAAM,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,QAAQ,EAAE,YAAY,EAAE,OAAO,EAAE;YAChE,QAAQ,EAAE,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,uBAAuB,EAAE;YAC9D,WAAW,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,cAAc,EAAE,YAAY,EAAE,aAAa,EAAE;YACjF,UAAU,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,YAAY,EAAE,YAAY,EAAE,GAAG,EAAE;YACpE,WAAW,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,aAAa,EAAE,YAAY,EAAE,KAAK,EAAE;SAC5E;KACF;IACD;QACE,IAAI,EAAE,KAAK;QACX,KAAK,EAAE,KAAK;QACZ,SAAS,EAAE,4BAA4B;QACvC,QAAQ,EAAE,SAAS;QACnB,KAAK,EAAE;YACL,QAAQ,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,UAAU,EAAE;YAC7C,MAAM,EAAE,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,QAAQ,EAAE;YAC7C,IAAI,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,iBAAiB,EAAE,YAAY,EAAE,KAAK,EAAE;SACzE;KACF;IACD;QACE,IAAI,EAAE,OAAO;QACb,KAAK,EAAE,OAAO;QACd,SAAS,EAAE,8BAA8B;QACzC,QAAQ,EAAE,SAAS;QACnB,KAAK,EAAE;YACL,OAAO,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,SAAS,EAAE;YAC3C,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE;YAC7D,WAAW,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,aAAa,EAAE,YAAY,EAAE,KAAK,EAAE;SAC5E;KACF;IACD;QACE,IAAI,EAAE,WAAW;QACjB,KAAK,EAAE,WAAW;QAClB,SAAS,EAAE,kCAAkC;QAC7C,QAAQ,EAAE,SAAS;QACnB,KAAK,EAAE;YACL,UAAU,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,aAAa,EAAE;YAClD,KAAK,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE;SACxC;KACF;IACD;QACE,IAAI,EAAE,aAAa;QACnB,KAAK,EAAE,cAAc;QACrB,SAAS,EAAE,oCAAoC;QAC/C,QAAQ,EAAE,SAAS;QACnB,KAAK,EAAE;YACL,QAAQ,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,WAAW,EAAE;YAC9C,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,QAAQ,EAAE,YAAY,EAAE,MAAM,EAAE;YACjE,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,OAAO,EAAE,YAAY,EAAE,EAAE,EAAE;YAC3D,SAAS,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,YAAY,EAAE,YAAY,EAAE,IAAI,EAAE;YACvE,WAAW,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,cAAc,EAAE,YAAY,EAAE,IAAI,EAAE;YAC3E,QAAQ,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,WAAW,EAAE,YAAY,EAAE,IAAI,EAAE;SACtE;KACF;IACD;QACE,IAAI,EAAE,UAAU;QAChB,KAAK,EAAE,WAAW;QAClB,SAAS,EAAE,iCAAiC;QAC5C,QAAQ,EAAE,SAAS;QACnB,KAAK,EAAE;YACL,IAAI,EAAE,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,mBAAmB,EAAE;YACtD,WAAW,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,oBAAoB,EAAE,YAAY,EAAE,CAAC,EAAE;YAC7E,WAAW,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,oBAAoB,EAAE,YAAY,EAAE,IAAI,EAAE;SACjF;KACF;IACD;QACE,IAAI,EAAE,gBAAgB;QACtB,KAAK,EAAE,iBAAiB;QACxB,SAAS,EAAE,uCAAuC;QAClD,QAAQ,EAAE,SAAS;QACnB,KAAK,EAAE;YACL,OAAO,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,SAAS,EAAE,YAAY,EAAE,iBAAiB,EAAE;YAC5E,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,QAAQ,EAAE,YAAY,EAAE,MAAM,EAAE;YACjE,KAAK,EAAE,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,oBAAoB,EAAE;SACzD;KACF;IACD;QACE,IAAI,EAAE,iBAAiB;QACvB,KAAK,EAAE,kBAAkB;QACzB,SAAS,EAAE,wCAAwC;QACnD,QAAQ,EAAE,SAAS;QACnB,KAAK,EAAE;YACL,IAAI,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,eAAe,EAAE;YAC9C,WAAW,EAAE,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,aAAa,EAAE;YACvD,KAAK,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE;YACxC,IAAI,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,UAAU,EAAE;YACzC,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,YAAY,EAAE;SAC/C;KACF;IACD;QACE,IAAI,EAAE,cAAc;QACpB,KAAK,EAAE,eAAe;QACtB,SAAS,EAAE,qCAAqC;QAChD,QAAQ,EAAE,SAAS;QACnB,KAAK,EAAE;YACL,MAAM,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,SAAS,EAAE;YAC1C,UAAU,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,aAAa,EAAE;YAClD,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,OAAO,EAAE,YAAY,EAAE,EAAE,EAAE;YAC3D,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,QAAQ,EAAE,YAAY,EAAE,MAAM,EAAE;SAClE;KACF;IACD;QACE,IAAI,EAAE,UAAU;QAChB,KAAK,EAAE,UAAU;QACjB,SAAS,EAAE,iCAAiC;QAC5C,QAAQ,EAAE,SAAS;QACnB,KAAK,EAAE;YACL,KAAK,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,SAAS,EAAE,YAAY,EAAE,UAAU,EAAE;YACnE,WAAW,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,cAAc,EAAE,YAAY,EAAE,cAAc,EAAE;YAClF,cAAc,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,yBAAyB,EAAE,YAAY,EAAE,IAAI,EAAE;YACzF,2EAA2E;YAC3E,6EAA6E;YAC7E,SAAS,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,uBAAuB,EAAE;SAC5D;KACF;IAED,+EAA+E;IAC/E;QACE,IAAI,EAAE,aAAa;QACnB,KAAK,EAAE,aAAa;QACpB,SAAS,EAAE,oCAAoC;QAC/C,QAAQ,EAAE,YAAY;QACtB,KAAK,EAAE;YACL,KAAK,EAAE,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,oBAAoB,EAAE;SACzD;KACF;IACD;QACE,IAAI,EAAE,SAAS;QACf,KAAK,EAAE,UAAU;QACjB,SAAS,EAAE,gCAAgC;QAC3C,QAAQ,EAAE,YAAY;QACtB,KAAK,EAAE;YACL,QAAQ,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,WAAW,EAAE;YAC9C,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,WAAW,EAAE,YAAY,EAAE,CAAC,EAAE;YAC9D,KAAK,EAAE,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,oBAAoB,EAAE;SACzD;KACF;IACD;QACE,IAAI,EAAE,YAAY;QAClB,KAAK,EAAE,YAAY;QACnB,SAAS,EAAE,mCAAmC;QAC9C,QAAQ,EAAE,YAAY;QACtB,KAAK,EAAE;YACL,OAAO,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,SAAS,EAAE,YAAY,EAAE,SAAS,EAAE;YACtE,SAAS,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,YAAY,EAAE,YAAY,EAAE,YAAY,EAAE;YAC5E,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,WAAW,EAAE,YAAY,EAAE,CAAC,EAAE;YAC9D,KAAK,EAAE,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,oBAAoB,EAAE;SACzD;KACF;IACD;QACE,IAAI,EAAE,SAAS;QACf,KAAK,EAAE,UAAU;QACjB,SAAS,EAAE,gCAAgC;QAC3C,QAAQ,EAAE,YAAY;QACtB,KAAK,EAAE;YACL,KAAK,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,YAAY,EAAE,UAAU,EAAE;YACjE,KAAK,EAAE,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,oBAAoB,EAAE;SACzD;KACF;IACD;QACE,IAAI,EAAE,WAAW;QACjB,KAAK,EAAE,YAAY;QACnB,SAAS,EAAE,kCAAkC;QAC7C,QAAQ,EAAE,YAAY;QACtB,KAAK,EAAE;YACL,WAAW,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,aAAa,EAAE,YAAY,EAAE,cAAc,EAAE;YACjF,MAAM,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,aAAa,EAAE,YAAY,EAAE,SAAS,EAAE;SACxE;KACF;IACD;QACE,IAAI,EAAE,QAAQ;QACd,KAAK,EAAE,QAAQ;QACf,SAAS,EAAE,+BAA+B;QAC1C,QAAQ,EAAE,YAAY;QACtB,KAAK,EAAE;YACL,WAAW,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,aAAa,EAAE,YAAY,EAAE,WAAW,EAAE;YAC9E,MAAM,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,aAAa,EAAE,YAAY,EAAE,SAAS,EAAE;YACvE,uEAAuE;YACvE,MAAM,EAAE;gBACN,IAAI,EAAE,QAAQ;gBACd,KAAK,EAAE,QAAQ;gBACf,YAAY,EAAE,KAAK;gBACnB,OAAO,EAAE;oBACP,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,oBAAoB,EAAE;oBAC7C,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE;iBACjC;aACF;YACD,KAAK,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE;YACvC,UAAU,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,aAAa,EAAE;SACnD;KACF;IAED,+EAA+E;IAC/E;QACE,IAAI,EAAE,kBAAkB;QACxB,KAAK,EAAE,mBAAmB;QAC1B,SAAS,EAAE,yCAAyC;QACpD,QAAQ,EAAE,iBAAiB;QAC3B,KAAK,EAAE;YACL,mEAAmE;YACnE,IAAI,EAAE;gBACJ,IAAI,EAAE,QAAQ;gBACd,KAAK,EAAE,MAAM;gBACb,YAAY,EAAE,iBAAiB;gBAC/B,OAAO,EAAE;oBACP,EAAE,KAAK,EAAE,iBAAiB,EAAE,KAAK,EAAE,4BAA4B,EAAE;oBACjE,EAAE,KAAK,EAAE,SAAS,EAAE,KAAK,EAAE,uBAAuB,EAAE;iBACrD;aACF;SACF;KACF;IACD;QACE,IAAI,EAAE,sBAAsB;QAC5B,KAAK,EAAE,uBAAuB;QAC9B,SAAS,EAAE,6CAA6C;QACxD,QAAQ,EAAE,iBAAiB;KAC5B;IACD;QACE,IAAI,EAAE,aAAa;QACnB,KAAK,EAAE,cAAc;QACrB,SAAS,EAAE,oCAAoC;QAC/C,QAAQ,EAAE,iBAAiB;QAC3B,KAAK,EAAE;YACL,GAAG,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,WAAW,EAAE;YACzC,KAAK,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,aAAa,EAAE;YAC7C,QAAQ,EAAE,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,uBAAuB,EAAE;SAC/D;KACF;IACD;QACE,IAAI,EAAE,KAAK;QACX,KAAK,EAAE,KAAK;QACZ,SAAS,EAAE,4BAA4B;QACvC,QAAQ,EAAE,iBAAiB;QAC3B,KAAK,EAAE;YACL,GAAG,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,UAAU,EAAE;YACxC,GAAG,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,WAAW,EAAE;YACzC,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,EAAE,YAAY,EAAE,EAAE,EAAE;YACzD,MAAM,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,QAAQ,EAAE,YAAY,EAAE,OAAO,EAAE;YAChE,OAAO,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,SAAS,EAAE;SAC5C;KACF;IAED,+EAA+E;IAC/E;QACE,IAAI,EAAE,eAAe;QACrB,KAAK,EAAE,gBAAgB;QACvB,SAAS,EAAE,sCAAsC;QACjD,QAAQ,EAAE,YAAY;QACtB,KAAK,EAAE;YACL,OAAO,EAAE,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,iBAAiB,EAAE;YACvD,gBAAgB,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,oBAAoB,EAAE;SAChE;KACF;IAED,+EAA+E;IAC/E;QACE,IAAI,EAAE,WAAW;QACjB,KAAK,EAAE,WAAW;QAClB,SAAS,EAAE,kCAAkC;QAC7C,QAAQ,EAAE,OAAO;QACjB,KAAK,EAAE;YACL,IAAI,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,gBAAgB,EAAE;YAC/C,WAAW,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,cAAc,EAAE;SACrD;KACF;IACD;QACE,IAAI,EAAE,MAAM;QACZ,KAAK,EAAE,MAAM;QACb,SAAS,EAAE,6BAA6B;QACxC,QAAQ,EAAE,OAAO;QACjB,KAAK,EAAE;YACL,2EAA2E;YAC3E,0EAA0E;YAC1E,IAAI,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE;YACrC,WAAW,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,cAAc,EAAE,YAAY,EAAE,QAAQ,EAAE;YAC5E,uEAAuE;YACvE,MAAM,EAAE,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,mCAAmC,EAAE;SACzE;KACF;IACD;QACE,IAAI,EAAE,WAAW;QACjB,KAAK,EAAE,YAAY;QACnB,SAAS,EAAE,kCAAkC;QAC7C,QAAQ,EAAE,OAAO;QACjB,KAAK,EAAE;YACL,QAAQ,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE;YACzC,WAAW,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,cAAc,EAAE,YAAY,EAAE,QAAQ,EAAE;YAC5E,uEAAuE;YACvE,MAAM,EAAE,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,mCAAmC,EAAE;SACzE;KACF;CACF,CAAA;AAUD;;;GAGG;AACH,MAAM,UAAU,oBAAoB,CAAC,WAA2B;IAC9D,MAAM,GAAG,GAAG,IAAI,GAAG,EAA+B,CAAA;IAElD,KAAK,MAAM,GAAG,IAAI,gBAAgB,EAAE,CAAC;QACnC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,EAAE,EAAE,GAAG,GAAG,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAA;IAChD,CAAC;IAED,KAAK,MAAM,GAAG,IAAI,WAAW,EAAE,CAAC;QAC9B,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,EAAE,EAAE,GAAG,GAAG,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC,CAAA;IACjD,CAAC;IAED,OAAO;QACL,GAAG,CAAC,IAAY;YACd,OAAO,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,IAAI,CAAA;QAC9B,CAAC;QACD,IAAI;YACF,OAAO,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,CAAC,CAAA;QACjC,CAAC;QACD,cAAc;YACZ,MAAM,MAAM,GAAG,IAAI,GAAG,EAAiC,CAAA;YACvD,KAAK,MAAM,KAAK,IAAI,GAAG,CAAC,MAAM,EAAE,EAAE,CAAC;gBACjC,MAAM,GAAG,GAAG,KAAK,CAAC,QAAQ,IAAI,OAAO,CAAA;gBACrC,MAAM,IAAI,GAAG,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;gBAC5B,IAAI,IAAI;oBAAE,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;;oBACrB,MAAM,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,KAAK,CAAC,CAAC,CAAA;YAC/B,CAAC;YACD,OAAO,MAAM,CAAA;QACf,CAAC;KACF,CAAA;AACH,CAAC"}
|
|
1
|
+
{"version":3,"file":"registry.js","sourceRoot":"","sources":["../../src/layout/registry.ts"],"names":[],"mappings":"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"}
|
package/dist/nav/builder.d.ts
CHANGED
|
@@ -38,6 +38,16 @@ export declare function prefixHrefWithLocale(path: string, locale: string): stri
|
|
|
38
38
|
* English (untranslated) parent still nests correctly.
|
|
39
39
|
*/
|
|
40
40
|
export declare function selectLocaleNavRows<T extends NavRow>(rows: T[], locale: string, defaultLocale: string): T[];
|
|
41
|
+
/**
|
|
42
|
+
* The label a nav entry renders under: the editor's `menuTitle` when they set
|
|
43
|
+
* one, otherwise the page title. A blank `menuTitle` (an emptied admin input
|
|
44
|
+
* saved as `''`) counts as unset — otherwise the entry renders as a nameless
|
|
45
|
+
* link.
|
|
46
|
+
*
|
|
47
|
+
* Shared by {@link buildNavTree} and {@link buildBreadcrumbs} so the same page
|
|
48
|
+
* can never appear under two different names in the same navigation (#110).
|
|
49
|
+
*/
|
|
50
|
+
export declare function navLabel(row: Pick<NavRow, 'title' | 'menuTitle'>): string;
|
|
41
51
|
export interface BuildNavTreeOptions {
|
|
42
52
|
/** Only include rows with these statuses. Defaults to ['published']. Pass null to disable. */
|
|
43
53
|
statuses?: string[] | null;
|
|
@@ -57,6 +67,12 @@ export declare function buildNavTree(rows: NavRow[], currentPath: string, opts?:
|
|
|
57
67
|
/**
|
|
58
68
|
* Build breadcrumbs for a given nodeId by walking up the parentId chain.
|
|
59
69
|
* Returns ordered root→target. Returns empty array for unknown nodeId.
|
|
70
|
+
*
|
|
71
|
+
* Labels come from {@link navLabel} — same rule as {@link buildNavTree}. This
|
|
72
|
+
* used to read `row.title` directly (#110), so a page whose editor had set a
|
|
73
|
+
* short `menuTitle` ("Pricing") showed the long page title ("Plans and Pricing
|
|
74
|
+
* for Teams") in the breadcrumb while the nav menu right above it showed the
|
|
75
|
+
* short one.
|
|
60
76
|
*/
|
|
61
77
|
export declare function buildBreadcrumbs(rows: NavRow[], nodeId: string): KywiNavNode[];
|
|
62
78
|
//# sourceMappingURL=builder.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"builder.d.ts","sourceRoot":"","sources":["../../src/nav/builder.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,YAAY,CAAA;AAE7C,MAAM,WAAW,MAAM;IACrB,EAAE,EAAE,MAAM,CAAA;IACV,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAA;IACvB,KAAK,EAAE,MAAM,CAAA;IACb,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IACzB,IAAI,EAAE,MAAM,CAAA;IACZ,IAAI,EAAE,MAAM,CAAA;IACZ,KAAK,EAAE,MAAM,CAAA;IACb,SAAS,EAAE,MAAM,CAAA;IACjB,KAAK,EAAE,OAAO,CAAA;IACd,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAA;IACnB,iFAAiF;IACjF,MAAM,CAAC,EAAE,MAAM,CAAA;CAChB;AAED;;GAEG;AACH,wBAAgB,WAAW,CAAC,UAAU,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,CAGpE;AAED;;;;GAIG;AACH,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,MAAM,CAKzE;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,mBAAmB,CAAC,CAAC,SAAS,MAAM,EAClD,IAAI,EAAE,CAAC,EAAE,EACT,MAAM,EAAE,MAAM,EACd,aAAa,EAAE,MAAM,GACpB,CAAC,EAAE,CAwBL;AAED,MAAM,WAAW,mBAAmB;IAClC,8FAA8F;IAC9F,QAAQ,CAAC,EAAE,MAAM,EAAE,GAAG,IAAI,CAAA;IAC1B,yGAAyG;IACzG,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,gFAAgF;IAChF,YAAY,CAAC,EAAE,MAAM,EAAE,CAAA;CACxB;AAED;;;;;;GAMG;AACH,wBAAgB,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,WAAW,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,mBAAmB,GAAG,WAAW,EAAE,CAmE3G;AAED
|
|
1
|
+
{"version":3,"file":"builder.d.ts","sourceRoot":"","sources":["../../src/nav/builder.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,YAAY,CAAA;AAE7C,MAAM,WAAW,MAAM;IACrB,EAAE,EAAE,MAAM,CAAA;IACV,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAA;IACvB,KAAK,EAAE,MAAM,CAAA;IACb,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IACzB,IAAI,EAAE,MAAM,CAAA;IACZ,IAAI,EAAE,MAAM,CAAA;IACZ,KAAK,EAAE,MAAM,CAAA;IACb,SAAS,EAAE,MAAM,CAAA;IACjB,KAAK,EAAE,OAAO,CAAA;IACd,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAA;IACnB,iFAAiF;IACjF,MAAM,CAAC,EAAE,MAAM,CAAA;CAChB;AAED;;GAEG;AACH,wBAAgB,WAAW,CAAC,UAAU,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,CAGpE;AAED;;;;GAIG;AACH,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,MAAM,CAKzE;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,mBAAmB,CAAC,CAAC,SAAS,MAAM,EAClD,IAAI,EAAE,CAAC,EAAE,EACT,MAAM,EAAE,MAAM,EACd,aAAa,EAAE,MAAM,GACpB,CAAC,EAAE,CAwBL;AAED;;;;;;;;GAQG;AACH,wBAAgB,QAAQ,CAAC,GAAG,EAAE,IAAI,CAAC,MAAM,EAAE,OAAO,GAAG,WAAW,CAAC,GAAG,MAAM,CAGzE;AAED,MAAM,WAAW,mBAAmB;IAClC,8FAA8F;IAC9F,QAAQ,CAAC,EAAE,MAAM,EAAE,GAAG,IAAI,CAAA;IAC1B,yGAAyG;IACzG,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,gFAAgF;IAChF,YAAY,CAAC,EAAE,MAAM,EAAE,CAAA;CACxB;AAED;;;;;;GAMG;AACH,wBAAgB,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,WAAW,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,mBAAmB,GAAG,WAAW,EAAE,CAmE3G;AAED;;;;;;;;;GASG;AACH,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,MAAM,EAAE,MAAM,GAAG,WAAW,EAAE,CA4B9E"}
|
package/dist/nav/builder.js
CHANGED
|
@@ -58,6 +58,19 @@ export function selectLocaleNavRows(rows, locale, defaultLocale) {
|
|
|
58
58
|
}
|
|
59
59
|
return picked;
|
|
60
60
|
}
|
|
61
|
+
/**
|
|
62
|
+
* The label a nav entry renders under: the editor's `menuTitle` when they set
|
|
63
|
+
* one, otherwise the page title. A blank `menuTitle` (an emptied admin input
|
|
64
|
+
* saved as `''`) counts as unset — otherwise the entry renders as a nameless
|
|
65
|
+
* link.
|
|
66
|
+
*
|
|
67
|
+
* Shared by {@link buildNavTree} and {@link buildBreadcrumbs} so the same page
|
|
68
|
+
* can never appear under two different names in the same navigation (#110).
|
|
69
|
+
*/
|
|
70
|
+
export function navLabel(row) {
|
|
71
|
+
const menuTitle = row.menuTitle;
|
|
72
|
+
return typeof menuTitle === 'string' && menuTitle.trim() !== '' ? menuTitle : row.title;
|
|
73
|
+
}
|
|
61
74
|
/**
|
|
62
75
|
* Build a nav tree from flat rows, filtering out isNav=false,
|
|
63
76
|
* and marking isActive/isAncestor based on currentPath.
|
|
@@ -110,7 +123,7 @@ export function buildNavTree(rows, currentPath, opts) {
|
|
|
110
123
|
const isAncestor = !isActive && currentPath.startsWith(row.path);
|
|
111
124
|
return {
|
|
112
125
|
id: row.id,
|
|
113
|
-
title: row
|
|
126
|
+
title: navLabel(row),
|
|
114
127
|
href: row.path,
|
|
115
128
|
slug: row.slug,
|
|
116
129
|
depth: row.depth,
|
|
@@ -128,6 +141,12 @@ export function buildNavTree(rows, currentPath, opts) {
|
|
|
128
141
|
/**
|
|
129
142
|
* Build breadcrumbs for a given nodeId by walking up the parentId chain.
|
|
130
143
|
* Returns ordered root→target. Returns empty array for unknown nodeId.
|
|
144
|
+
*
|
|
145
|
+
* Labels come from {@link navLabel} — same rule as {@link buildNavTree}. This
|
|
146
|
+
* used to read `row.title` directly (#110), so a page whose editor had set a
|
|
147
|
+
* short `menuTitle` ("Pricing") showed the long page title ("Plans and Pricing
|
|
148
|
+
* for Teams") in the breadcrumb while the nav menu right above it showed the
|
|
149
|
+
* short one.
|
|
131
150
|
*/
|
|
132
151
|
export function buildBreadcrumbs(rows, nodeId) {
|
|
133
152
|
const rowMap = new Map();
|
|
@@ -147,7 +166,7 @@ export function buildBreadcrumbs(rows, nodeId) {
|
|
|
147
166
|
}
|
|
148
167
|
return chain.map(row => ({
|
|
149
168
|
id: row.id,
|
|
150
|
-
title: row
|
|
169
|
+
title: navLabel(row),
|
|
151
170
|
href: row.path,
|
|
152
171
|
slug: row.slug,
|
|
153
172
|
depth: row.depth,
|
package/dist/nav/builder.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"builder.js","sourceRoot":"","sources":["../../src/nav/builder.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"builder.js","sourceRoot":"","sources":["../../src/nav/builder.ts"],"names":[],"mappings":"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"}
|
package/dist/nav/index.d.ts
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
export * from './types.js';
|
|
2
2
|
export * from './builder.js';
|
|
3
|
+
export * from './menu-resolver.js';
|
|
3
4
|
export { resolveContentByPath, resolveContentBySegments, normalizePath, pathToSegments, pageFirstOrdering, PAGE_LIKE_BASE_TYPES, type ResolvedContent, } from './url-resolver.js';
|
|
4
5
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/nav/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/nav/index.ts"],"names":[],"mappings":"AAAA,cAAc,YAAY,CAAA;AAC1B,cAAc,cAAc,CAAA;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/nav/index.ts"],"names":[],"mappings":"AAAA,cAAc,YAAY,CAAA;AAC1B,cAAc,cAAc,CAAA;AAC5B,cAAc,oBAAoB,CAAA;AAOlC,OAAO,EACL,oBAAoB,EACpB,wBAAwB,EACxB,aAAa,EACb,cAAc,EACd,iBAAiB,EACjB,oBAAoB,EACpB,KAAK,eAAe,GACrB,MAAM,mBAAmB,CAAA"}
|
package/dist/nav/index.js
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
export * from './types.js';
|
|
2
2
|
export * from './builder.js';
|
|
3
|
+
export * from './menu-resolver.js';
|
|
3
4
|
// Public path-based content resolution (kywi-cms#30): resolve a content node by
|
|
4
5
|
// its full materialized path (honouring the Site Tree hierarchy) instead of by a
|
|
5
6
|
// bare last-segment slug, so `/a/b/<slug>` cannot serve a top-level `<slug>`.
|
package/dist/nav/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/nav/index.ts"],"names":[],"mappings":"AAAA,cAAc,YAAY,CAAA;AAC1B,cAAc,cAAc,CAAA;AAC5B,gFAAgF;AAChF,iFAAiF;AACjF,8EAA8E;AAC9E,gFAAgF;AAChF,2EAA2E;AAC3E,kBAAkB;AAClB,OAAO,EACL,oBAAoB,EACpB,wBAAwB,EACxB,aAAa,EACb,cAAc,EACd,iBAAiB,EACjB,oBAAoB,GAErB,MAAM,mBAAmB,CAAA"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/nav/index.ts"],"names":[],"mappings":"AAAA,cAAc,YAAY,CAAA;AAC1B,cAAc,cAAc,CAAA;AAC5B,cAAc,oBAAoB,CAAA;AAClC,gFAAgF;AAChF,iFAAiF;AACjF,8EAA8E;AAC9E,gFAAgF;AAChF,2EAA2E;AAC3E,kBAAkB;AAClB,OAAO,EACL,oBAAoB,EACpB,wBAAwB,EACxB,aAAa,EACb,cAAc,EACd,iBAAiB,EACjB,oBAAoB,GAErB,MAAM,mBAAmB,CAAA"}
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* menu-resolver.ts
|
|
3
|
+
*
|
|
4
|
+
* Turns stored navigation into the render-ready {@link NavMenuItem} tree the
|
|
5
|
+
* nav modules consume (#110).
|
|
6
|
+
*
|
|
7
|
+
* Two sources feed the same shape:
|
|
8
|
+
* - {@link resolveMenu} — a named menu from `kywi_menus`/`kywi_menu_items`.
|
|
9
|
+
* - {@link navTreeToMenuItems} — the site content tree from `nav/builder.ts`.
|
|
10
|
+
*
|
|
11
|
+
* Keeping one output shape is the whole point: a renderer never needs to know
|
|
12
|
+
* whether the owner hand-built a menu or the tree produced it.
|
|
13
|
+
*/
|
|
14
|
+
import type { KywiDb } from '../db/client.js';
|
|
15
|
+
import type { MenuItemAdminNode } from '../db/menu-queries.js';
|
|
16
|
+
import type { KywiNavNode, NavMenuItem } from './types.js';
|
|
17
|
+
export interface ResolveMenuOptions {
|
|
18
|
+
/** Locale to render hrefs for. Non-default locales get a `/xx` href prefix. */
|
|
19
|
+
locale?: string | undefined;
|
|
20
|
+
/** The site's default locale, which is served un-prefixed. Defaults to `'en'`. */
|
|
21
|
+
defaultLocale?: string | undefined;
|
|
22
|
+
}
|
|
23
|
+
/**
|
|
24
|
+
* Map admin item nodes to public {@link NavMenuItem}s.
|
|
25
|
+
*
|
|
26
|
+
* Items that cannot resolve — their linked page is unpublished, soft-deleted or
|
|
27
|
+
* gone — are dropped **with their children**. Promoting an orphaned subtree
|
|
28
|
+
* would silently restructure the owner's navigation; hiding the branch is the
|
|
29
|
+
* predictable choice, and the admin read still shows the branch flagged so the
|
|
30
|
+
* breakage is visible where it can be fixed.
|
|
31
|
+
*/
|
|
32
|
+
export declare function menuItemsToNavItems(nodes: MenuItemAdminNode[], currentPath: string, opts?: ResolveMenuOptions): NavMenuItem[];
|
|
33
|
+
/**
|
|
34
|
+
* Resolve a named menu to its public item tree. Returns `null` when the site
|
|
35
|
+
* has no menu with that slug — the caller distinguishes "no such menu"
|
|
36
|
+
* (a layout referencing a menu that was never created) from "menu is empty".
|
|
37
|
+
*/
|
|
38
|
+
export declare function resolveMenu(db: KywiDb, siteId: string, slug: string, currentPath: string, opts?: ResolveMenuOptions): Promise<NavMenuItem[] | null>;
|
|
39
|
+
/**
|
|
40
|
+
* Trim a nav tree to at most `depth` levels (1 = roots only). A non-positive or
|
|
41
|
+
* non-finite depth returns the tree untouched, so a module that omits its
|
|
42
|
+
* `depth` prop renders everything.
|
|
43
|
+
*/
|
|
44
|
+
export declare function limitNavItemDepth(items: NavMenuItem[], depth?: number): NavMenuItem[];
|
|
45
|
+
/**
|
|
46
|
+
* Adapt a site-tree nav (`buildNavTree`) to the shared {@link NavMenuItem}
|
|
47
|
+
* shape, so `navigation`/`siteMap` modules render from the same contract as a
|
|
48
|
+
* named menu. `isActive`/`isAncestor` are already computed by the builder and
|
|
49
|
+
* pass straight through.
|
|
50
|
+
*/
|
|
51
|
+
export declare function navTreeToMenuItems(nodes: KywiNavNode[]): NavMenuItem[];
|
|
52
|
+
//# sourceMappingURL=menu-resolver.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"menu-resolver.d.ts","sourceRoot":"","sources":["../../src/nav/menu-resolver.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAA;AAE7C,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAA;AAE9D,OAAO,KAAK,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,YAAY,CAAA;AAE1D,MAAM,WAAW,kBAAkB;IACjC,+EAA+E;IAC/E,MAAM,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;IAC3B,kFAAkF;IAClF,aAAa,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;CACnC;AAiBD;;;;;;;;GAQG;AACH,wBAAgB,mBAAmB,CACjC,KAAK,EAAE,iBAAiB,EAAE,EAC1B,WAAW,EAAE,MAAM,EACnB,IAAI,CAAC,EAAE,kBAAkB,GACxB,WAAW,EAAE,CA4Bf;AAED;;;;GAIG;AACH,wBAAsB,WAAW,CAC/B,EAAE,EAAE,MAAM,EACV,MAAM,EAAE,MAAM,EACd,IAAI,EAAE,MAAM,EACZ,WAAW,EAAE,MAAM,EACnB,IAAI,CAAC,EAAE,kBAAkB,GACxB,OAAO,CAAC,WAAW,EAAE,GAAG,IAAI,CAAC,CAK/B;AAED;;;;GAIG;AACH,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,WAAW,EAAE,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,WAAW,EAAE,CAIrF;AAED;;;;;GAKG;AACH,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,WAAW,EAAE,GAAG,WAAW,EAAE,CActE"}
|
|
@@ -0,0 +1,113 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* menu-resolver.ts
|
|
3
|
+
*
|
|
4
|
+
* Turns stored navigation into the render-ready {@link NavMenuItem} tree the
|
|
5
|
+
* nav modules consume (#110).
|
|
6
|
+
*
|
|
7
|
+
* Two sources feed the same shape:
|
|
8
|
+
* - {@link resolveMenu} — a named menu from `kywi_menus`/`kywi_menu_items`.
|
|
9
|
+
* - {@link navTreeToMenuItems} — the site content tree from `nav/builder.ts`.
|
|
10
|
+
*
|
|
11
|
+
* Keeping one output shape is the whole point: a renderer never needs to know
|
|
12
|
+
* whether the owner hand-built a menu or the tree produced it.
|
|
13
|
+
*/
|
|
14
|
+
import { getMenuBySlug, getMenuItemRows, assembleMenuItemTree } from '../db/menu-queries.js';
|
|
15
|
+
import { prefixHrefWithLocale } from './builder.js';
|
|
16
|
+
/** Root-relative hrefs participate in active/ancestor matching; absolute URLs do not. */
|
|
17
|
+
function isInternalHref(href) {
|
|
18
|
+
return href.startsWith('/');
|
|
19
|
+
}
|
|
20
|
+
/**
|
|
21
|
+
* Compute `isActive`/`isAncestor` exactly the way `buildNavTree` does, so a
|
|
22
|
+
* named menu and the site tree highlight the same item on the same page.
|
|
23
|
+
*/
|
|
24
|
+
function matchState(href, currentPath) {
|
|
25
|
+
if (!isInternalHref(href))
|
|
26
|
+
return { isActive: false, isAncestor: false };
|
|
27
|
+
const isActive = href === currentPath;
|
|
28
|
+
return { isActive, isAncestor: !isActive && currentPath.startsWith(href) };
|
|
29
|
+
}
|
|
30
|
+
/**
|
|
31
|
+
* Map admin item nodes to public {@link NavMenuItem}s.
|
|
32
|
+
*
|
|
33
|
+
* Items that cannot resolve — their linked page is unpublished, soft-deleted or
|
|
34
|
+
* gone — are dropped **with their children**. Promoting an orphaned subtree
|
|
35
|
+
* would silently restructure the owner's navigation; hiding the branch is the
|
|
36
|
+
* predictable choice, and the admin read still shows the branch flagged so the
|
|
37
|
+
* breakage is visible where it can be fixed.
|
|
38
|
+
*/
|
|
39
|
+
export function menuItemsToNavItems(nodes, currentPath, opts) {
|
|
40
|
+
const defaultLocale = opts?.defaultLocale ?? 'en';
|
|
41
|
+
const locale = opts?.locale ?? defaultLocale;
|
|
42
|
+
const out = [];
|
|
43
|
+
for (const node of nodes) {
|
|
44
|
+
if (!node.resolvable || node.href === null)
|
|
45
|
+
continue;
|
|
46
|
+
// Only internal (content-linked) hrefs get a locale prefix; an external URL
|
|
47
|
+
// is whatever the owner typed.
|
|
48
|
+
const href = isInternalHref(node.href) && locale !== defaultLocale
|
|
49
|
+
? prefixHrefWithLocale(node.href, locale)
|
|
50
|
+
: node.href;
|
|
51
|
+
const item = {
|
|
52
|
+
id: node.id,
|
|
53
|
+
label: node.label,
|
|
54
|
+
href,
|
|
55
|
+
...matchState(href, currentPath),
|
|
56
|
+
children: menuItemsToNavItems(node.children, currentPath, opts),
|
|
57
|
+
};
|
|
58
|
+
if (node.openInNewWindow)
|
|
59
|
+
item.target = '_blank';
|
|
60
|
+
if (node.description != null && node.description !== '')
|
|
61
|
+
item.description = node.description;
|
|
62
|
+
out.push(item);
|
|
63
|
+
}
|
|
64
|
+
return out;
|
|
65
|
+
}
|
|
66
|
+
/**
|
|
67
|
+
* Resolve a named menu to its public item tree. Returns `null` when the site
|
|
68
|
+
* has no menu with that slug — the caller distinguishes "no such menu"
|
|
69
|
+
* (a layout referencing a menu that was never created) from "menu is empty".
|
|
70
|
+
*/
|
|
71
|
+
export async function resolveMenu(db, siteId, slug, currentPath, opts) {
|
|
72
|
+
const menu = await getMenuBySlug(db, siteId, slug);
|
|
73
|
+
if (!menu)
|
|
74
|
+
return null;
|
|
75
|
+
const rows = await getMenuItemRows(db, menu.id);
|
|
76
|
+
return menuItemsToNavItems(assembleMenuItemTree(rows), currentPath, opts);
|
|
77
|
+
}
|
|
78
|
+
/**
|
|
79
|
+
* Trim a nav tree to at most `depth` levels (1 = roots only). A non-positive or
|
|
80
|
+
* non-finite depth returns the tree untouched, so a module that omits its
|
|
81
|
+
* `depth` prop renders everything.
|
|
82
|
+
*/
|
|
83
|
+
export function limitNavItemDepth(items, depth) {
|
|
84
|
+
if (depth === undefined || !Number.isFinite(depth) || depth <= 0)
|
|
85
|
+
return items;
|
|
86
|
+
if (depth === 1)
|
|
87
|
+
return items.map(item => ({ ...item, children: [] }));
|
|
88
|
+
return items.map(item => ({ ...item, children: limitNavItemDepth(item.children, depth - 1) }));
|
|
89
|
+
}
|
|
90
|
+
/**
|
|
91
|
+
* Adapt a site-tree nav (`buildNavTree`) to the shared {@link NavMenuItem}
|
|
92
|
+
* shape, so `navigation`/`siteMap` modules render from the same contract as a
|
|
93
|
+
* named menu. `isActive`/`isAncestor` are already computed by the builder and
|
|
94
|
+
* pass straight through.
|
|
95
|
+
*/
|
|
96
|
+
export function navTreeToMenuItems(nodes) {
|
|
97
|
+
return nodes.map(node => {
|
|
98
|
+
const item = {
|
|
99
|
+
id: node.id,
|
|
100
|
+
label: node.title,
|
|
101
|
+
href: node.href,
|
|
102
|
+
isActive: node.isActive,
|
|
103
|
+
isAncestor: node.isAncestor,
|
|
104
|
+
children: navTreeToMenuItems(node.children),
|
|
105
|
+
};
|
|
106
|
+
if (node.target)
|
|
107
|
+
item.target = node.target;
|
|
108
|
+
if (node.description != null && node.description !== '')
|
|
109
|
+
item.description = node.description;
|
|
110
|
+
return item;
|
|
111
|
+
});
|
|
112
|
+
}
|
|
113
|
+
//# sourceMappingURL=menu-resolver.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"menu-resolver.js","sourceRoot":"","sources":["../../src/nav/menu-resolver.ts"],"names":[],"mappings":"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"}
|
package/dist/nav/types.d.ts
CHANGED
|
@@ -8,5 +8,35 @@ export interface KywiNavNode {
|
|
|
8
8
|
isActive: boolean;
|
|
9
9
|
isAncestor: boolean;
|
|
10
10
|
children: KywiNavNode[];
|
|
11
|
+
/**
|
|
12
|
+
* `'_blank'` when this entry opens in a new window (#110). Additive and
|
|
13
|
+
* optional — nav trees built from the site tree omit it entirely.
|
|
14
|
+
*/
|
|
15
|
+
target?: '_blank';
|
|
16
|
+
/** Optional supporting copy, rendered by mega-menu panels (#110). */
|
|
17
|
+
description?: string;
|
|
18
|
+
}
|
|
19
|
+
/**
|
|
20
|
+
* The render-ready navigation item shared by every nav module (#110).
|
|
21
|
+
*
|
|
22
|
+
* This is the single shape the `navMenu`, `navigation` and `siteMap` renderers
|
|
23
|
+
* consume, whichever source produced it: a named menu (`kywi_menus`, via
|
|
24
|
+
* `nav/menu-resolver.ts`) or the site content tree (via `nav/builder.ts`).
|
|
25
|
+
* Every field is a plain serializable value, so a hydrated layout document can
|
|
26
|
+
* cross the server → client boundary as props.
|
|
27
|
+
*/
|
|
28
|
+
export interface NavMenuItem {
|
|
29
|
+
id: string;
|
|
30
|
+
label: string;
|
|
31
|
+
href: string;
|
|
32
|
+
/** Present only when the link should open in a new window. */
|
|
33
|
+
target?: '_blank';
|
|
34
|
+
/** Optional supporting copy for mega-menu panels. */
|
|
35
|
+
description?: string;
|
|
36
|
+
/** True when this item's href is the page currently being rendered. */
|
|
37
|
+
isActive: boolean;
|
|
38
|
+
/** True when the current page lives underneath this item. */
|
|
39
|
+
isAncestor: boolean;
|
|
40
|
+
children: NavMenuItem[];
|
|
11
41
|
}
|
|
12
42
|
//# sourceMappingURL=types.d.ts.map
|
package/dist/nav/types.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/nav/types.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,WAAW;IAC1B,EAAE,EAAE,MAAM,CAAA;IACV,KAAK,EAAE,MAAM,CAAA;IACb,IAAI,EAAE,MAAM,CAAA;IACZ,IAAI,EAAE,MAAM,CAAA;IACZ,KAAK,EAAE,MAAM,CAAA;IACb,WAAW,EAAE,OAAO,CAAA;IACpB,QAAQ,EAAE,OAAO,CAAA;IACjB,UAAU,EAAE,OAAO,CAAA;IACnB,QAAQ,EAAE,WAAW,EAAE,CAAA;CACxB"}
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/nav/types.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,WAAW;IAC1B,EAAE,EAAE,MAAM,CAAA;IACV,KAAK,EAAE,MAAM,CAAA;IACb,IAAI,EAAE,MAAM,CAAA;IACZ,IAAI,EAAE,MAAM,CAAA;IACZ,KAAK,EAAE,MAAM,CAAA;IACb,WAAW,EAAE,OAAO,CAAA;IACpB,QAAQ,EAAE,OAAO,CAAA;IACjB,UAAU,EAAE,OAAO,CAAA;IACnB,QAAQ,EAAE,WAAW,EAAE,CAAA;IACvB;;;OAGG;IACH,MAAM,CAAC,EAAE,QAAQ,CAAA;IACjB,qEAAqE;IACrE,WAAW,CAAC,EAAE,MAAM,CAAA;CACrB;AAED;;;;;;;;GAQG;AACH,MAAM,WAAW,WAAW;IAC1B,EAAE,EAAE,MAAM,CAAA;IACV,KAAK,EAAE,MAAM,CAAA;IACb,IAAI,EAAE,MAAM,CAAA;IACZ,8DAA8D;IAC9D,MAAM,CAAC,EAAE,QAAQ,CAAA;IACjB,qDAAqD;IACrD,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,uEAAuE;IACvE,QAAQ,EAAE,OAAO,CAAA;IACjB,6DAA6D;IAC7D,UAAU,EAAE,OAAO,CAAA;IACnB,QAAQ,EAAE,WAAW,EAAE,CAAA;CACxB"}
|