@wildo-ai/presets-components 1.1.1 → 1.1.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (100) hide show
  1. package/dist/esm/components/actions/action-button.d.ts +1 -4
  2. package/dist/esm/components/actions/action-button.d.ts.map +1 -1
  3. package/dist/esm/components/actions/action-button.js +21 -5
  4. package/dist/esm/components/actions/action-button.js.map +1 -1
  5. package/dist/esm/components/ai-elements/artifacts/artifact-browser.d.ts.map +1 -1
  6. package/dist/esm/components/ai-elements/artifacts/artifact-browser.js +7 -3
  7. package/dist/esm/components/ai-elements/artifacts/artifact-browser.js.map +1 -1
  8. package/dist/esm/components/ai-elements/execution/task.d.ts.map +1 -1
  9. package/dist/esm/components/ai-elements/execution/task.js +10 -2
  10. package/dist/esm/components/ai-elements/execution/task.js.map +1 -1
  11. package/dist/esm/components/app/app-layout-main-container.labels.d.ts.map +1 -1
  12. package/dist/esm/components/app/app-layout-main-container.labels.js +10 -2
  13. package/dist/esm/components/app/app-layout-main-container.labels.js.map +1 -1
  14. package/dist/esm/components/app/public-layout-main-container.d.ts.map +1 -1
  15. package/dist/esm/components/app/public-layout-main-container.js +52 -5
  16. package/dist/esm/components/app/public-layout-main-container.js.map +1 -1
  17. package/dist/esm/components/data-display/description-list.d.ts.map +1 -1
  18. package/dist/esm/components/data-display/description-list.js +10 -7
  19. package/dist/esm/components/data-display/description-list.js.map +1 -1
  20. package/dist/esm/components/data-display/formatters/display-field-string.d.ts.map +1 -1
  21. package/dist/esm/components/data-display/formatters/display-field-string.js +3 -0
  22. package/dist/esm/components/data-display/formatters/display-field-string.js.map +1 -1
  23. package/dist/esm/components/form/chromes/form-primitive.labels.js +2 -2
  24. package/dist/esm/components/form/chromes/form-primitive.labels.js.map +1 -1
  25. package/dist/esm/components/navigation/app-level/menu-user-org.d.ts.map +1 -1
  26. package/dist/esm/components/navigation/app-level/menu-user-org.js +8 -2
  27. package/dist/esm/components/navigation/app-level/menu-user-org.js.map +1 -1
  28. package/dist/esm/components/navigation/app-level/sidebar.d.ts.map +1 -1
  29. package/dist/esm/components/navigation/app-level/sidebar.js +32 -15
  30. package/dist/esm/components/navigation/app-level/sidebar.js.map +1 -1
  31. package/dist/esm/components/overlays/containers/sheet.d.ts.map +1 -1
  32. package/dist/esm/components/overlays/containers/sheet.js +2 -2
  33. package/dist/esm/components/overlays/containers/sheet.js.map +1 -1
  34. package/dist/esm/components/sections/accordion.d.ts.map +1 -1
  35. package/dist/esm/components/sections/accordion.js +43 -13
  36. package/dist/esm/components/sections/accordion.js.map +1 -1
  37. package/dist/esm/components/sections/collapsible.d.ts.map +1 -1
  38. package/dist/esm/components/sections/collapsible.js +17 -3
  39. package/dist/esm/components/sections/collapsible.js.map +1 -1
  40. package/dist/esm/components/sections/content-section.d.ts.map +1 -1
  41. package/dist/esm/components/sections/content-section.js +11 -7
  42. package/dist/esm/components/sections/content-section.js.map +1 -1
  43. package/dist/esm/components/sections/disclosure-nesting.d.ts +20 -0
  44. package/dist/esm/components/sections/disclosure-nesting.d.ts.map +1 -0
  45. package/dist/esm/components/sections/disclosure-nesting.js +20 -0
  46. package/dist/esm/components/sections/disclosure-nesting.js.map +1 -0
  47. package/dist/esm/components/sections/tabs.d.ts.map +1 -1
  48. package/dist/esm/components/sections/tabs.js +141 -10
  49. package/dist/esm/components/sections/tabs.js.map +1 -1
  50. package/dist/esm/config/preset-kits.d.ts.map +1 -1
  51. package/dist/esm/config/preset-kits.js +0 -4
  52. package/dist/esm/config/preset-kits.js.map +1 -1
  53. package/dist/esm/config/preset-shell.d.ts.map +1 -1
  54. package/dist/esm/config/preset-shell.js +0 -4
  55. package/dist/esm/config/preset-shell.js.map +1 -1
  56. package/dist/esm/config/presets.d.ts.map +1 -1
  57. package/dist/esm/config/presets.js +0 -1
  58. package/dist/esm/config/presets.js.map +1 -1
  59. package/dist/esm/config/resources/application.resource-presets.d.ts.map +1 -1
  60. package/dist/esm/config/resources/application.resource-presets.js +6 -6
  61. package/dist/esm/config/resources/application.resource-presets.js.map +1 -1
  62. package/dist/esm/config/resources/billing.resource-presets.d.ts.map +1 -1
  63. package/dist/esm/config/resources/billing.resource-presets.js +8 -8
  64. package/dist/esm/config/resources/billing.resource-presets.js.map +1 -1
  65. package/dist/esm/config/resources/guidance.resource-presets.d.ts.map +1 -1
  66. package/dist/esm/config/resources/guidance.resource-presets.js +7 -7
  67. package/dist/esm/config/resources/guidance.resource-presets.js.map +1 -1
  68. package/dist/esm/config/resources/identity.resource-presets.d.ts.map +1 -1
  69. package/dist/esm/config/resources/identity.resource-presets.js +7 -7
  70. package/dist/esm/config/resources/identity.resource-presets.js.map +1 -1
  71. package/dist/esm/config/resources/organizations.resource-presets.d.ts.map +1 -1
  72. package/dist/esm/config/resources/organizations.resource-presets.js +8 -8
  73. package/dist/esm/config/resources/organizations.resource-presets.js.map +1 -1
  74. package/dist/esm/config/resources/security.resource-presets.d.ts.map +1 -1
  75. package/dist/esm/config/resources/security.resource-presets.js +9 -9
  76. package/dist/esm/config/resources/security.resource-presets.js.map +1 -1
  77. package/dist/esm/themes/cozy.theme.d.ts.map +1 -1
  78. package/dist/esm/themes/cozy.theme.js +8 -3
  79. package/dist/esm/themes/cozy.theme.js.map +1 -1
  80. package/dist/esm/themes/dense.theme.d.ts.map +1 -1
  81. package/dist/esm/themes/dense.theme.js +8 -5
  82. package/dist/esm/themes/dense.theme.js.map +1 -1
  83. package/dist/esm/themes/editorial.theme.d.ts.map +1 -1
  84. package/dist/esm/themes/editorial.theme.js +8 -3
  85. package/dist/esm/themes/editorial.theme.js.map +1 -1
  86. package/dist/esm/themes/glass.theme.d.ts.map +1 -1
  87. package/dist/esm/themes/glass.theme.js +10 -4
  88. package/dist/esm/themes/glass.theme.js.map +1 -1
  89. package/dist/esm/themes/neo-brutalist.theme.d.ts.map +1 -1
  90. package/dist/esm/themes/neo-brutalist.theme.js +8 -3
  91. package/dist/esm/themes/neo-brutalist.theme.js.map +1 -1
  92. package/dist/esm/themes/terminal.theme.d.ts.map +1 -1
  93. package/dist/esm/themes/terminal.theme.js +8 -3
  94. package/dist/esm/themes/terminal.theme.js.map +1 -1
  95. package/dist/esm/themes/trading.theme.d.ts.map +1 -1
  96. package/dist/esm/themes/trading.theme.js +8 -3
  97. package/dist/esm/themes/trading.theme.js.map +1 -1
  98. package/dist/tsconfig.build.tsbuildinfo +1 -1
  99. package/package.json +7 -7
  100. package/dist/esm/.builder.pid +0 -9
@@ -1 +1 @@
1
- {"version":3,"file":"preset-kits.js","sourceRoot":"","sources":["../../../../src/config/preset-kits.ts"],"names":[],"mappings":"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","sourcesContent":["/**\n * Preset Kits — `KIT_*`\n *\n * Composable behavior bundles. Each kit is `Partial<AppConfiguration_Frontend>`\n * — override only what it touches. Compose via spreading:\n *\n * ```\n * const config = { ...APP_STANDARD, ...KIT_DENSE, ...KIT_MOBILE };\n * ```\n */\n\nimport type { AppConfiguration_Frontend } from '@wildo-ai/saas-frontend-lib';\nimport {\n ApplicationLevelComponentType,\n CommandBarPolicy,\n SidebarSectionBehavior,\n SidebarResponsivePolicy,\n} from '@wildo-ai/saas-frontend-lib';\nimport { mergeAppShellWithBilling } from './billing-shell.presets';\nimport { HorizontalPlacement } from '@wildo-ai/presets-components-models';\nimport { ViewportBreakpoint } from '@wildo-ai/zod-decorators';\n\nimport {\n APP_SHELL_DENSE,\n APP_SHELL_MOBILE,\n APP_SHELL_RAIL,\n APP_SHELL_MINIMAL,\n APP_SHELL_SIDEBAR,\n APP_SHELL_CENTERED,\n APP_SHELL_COCKPIT,\n navSection,\n} from './preset-shell';\nimport {\n NAVIGATION_LAYOUT_INLINE,\n NAVIGATION_LAYOUT_WIZARD,\n NAVIGATION_LAYOUT_TABS,\n NAVIGATION_LAYOUT_COMPANION,\n NAVIGATION_LAYOUT_TRIPLE,\n} from './preset-navigation';\n\n\n/**\n * Dense kit — nav rail + drawer sidebar, status bar.\n *\n * Overrides shell only. Pair with a compact design system (e.g.\n * `UI_DESIGN_SYSTEM_CORPORATE`) in the APP preset for full density.\n *\n * Best for: data tables, trading, admin panels.\n */\nexport const KIT_DENSE: Partial<AppConfiguration_Frontend> = {\n appComponentsConfiguration: mergeAppShellWithBilling(APP_SHELL_DENSE),\n};\n\n\n/**\n * Mobile kit — bottom nav + FAB, no sidebar.\n *\n * Overrides shell only. Pair with a relaxed design system (e.g.\n * `UI_DESIGN_SYSTEM_WARM`) in the APP preset for consumer mobile feel.\n *\n * Best for: PWAs, consumer mobile, field tools.\n */\nexport const KIT_MOBILE: Partial<AppConfiguration_Frontend> = {\n appComponentsConfiguration: mergeAppShellWithBilling(APP_SHELL_MOBILE),\n};\n\n\n/**\n * Inline-edit kit — create/update as INPLACE within lists.\n *\n * Shell-agnostic: only changes navigation transitions. The consuming\n * APP preset controls the shell. With INPLACE transitions, the FAB\n * is typically unnecessary — disable it in your shell if desired.\n *\n * Best for: Kanban, lightweight CRMs, inline editing.\n */\nexport const KIT_INLINE_EDIT: Partial<AppConfiguration_Frontend> = {\n navigationLayout: NAVIGATION_LAYOUT_INLINE,\n};\n\n\n/**\n * Wizard kit — create/update as full-page PUSH, minimal shell during flow.\n *\n * Overrides layout + shell. Pair with a consumer design system (e.g.\n * `UI_DESIGN_SYSTEM_WARM`) in the APP preset for onboarding feel.\n *\n * Best for: step-by-step flows (insurance, onboarding, surveys).\n */\nexport const KIT_WIZARD: Partial<AppConfiguration_Frontend> = {\n navigationLayout: NAVIGATION_LAYOUT_WIZARD,\n appComponentsConfiguration: mergeAppShellWithBilling(APP_SHELL_MINIMAL),\n};\n\n\n/**\n * Bulk-ops kit — toolbar bulk actions, OMNIBOX command menu.\n *\n * Best for: batch processing, admin moderation.\n */\nexport const KIT_BULK_OPS: Partial<AppConfiguration_Frontend> = {\n appComponentsConfiguration: mergeAppShellWithBilling({\n ...APP_SHELL_DENSE,\n [ApplicationLevelComponentType.TOOLBAR]: true,\n [ApplicationLevelComponentType.COMMAND_MENU]: {\n policy: CommandBarPolicy.OMNIBOX,\n showRecent: true,\n maxRecentItems: 5,\n showShortcuts: true,\n openShortcut: 'Cmd+K',\n },\n }),\n};\n\n\n/**\n * Drag-drop kit — thin sidebar, max content area.\n *\n * Best for: Kanban boards, pipeline views, visual builders.\n */\nexport const KIT_DRAG_DROP: Partial<AppConfiguration_Frontend> = {\n appComponentsConfiguration: mergeAppShellWithBilling({\n ...APP_SHELL_SIDEBAR,\n [ApplicationLevelComponentType.SIDEBAR]: {\n placement: HorizontalPlacement.START,\n collapsible: true,\n responsiveBreakpoint: ViewportBreakpoint.VERT_TABLET,\n responsivePolicy: SidebarResponsivePolicy.DRAWER,\n contentSections: [\n navSection('main', { showLabel: false, collapsible: false, nested: true, maxNestingDepth: 2 }),\n ],\n defaultSection: \"main\",\n showUncategorized: true,\n },\n }),\n};\n\n\n// ═══════════════════════════════════════════════════════════════════════════════\n// Density & Responsiveness Kits\n// ═══════════════════════════════════════════════════════════════════════════════\n\n/**\n * Tablet kit — sidebar drawer at tablet breakpoint, split at landscape.\n *\n * Best for: tablet-first apps, warehouse, field workers.\n */\nexport const KIT_TABLET: Partial<AppConfiguration_Frontend> = {\n appComponentsConfiguration: mergeAppShellWithBilling({\n ...APP_SHELL_SIDEBAR,\n [ApplicationLevelComponentType.SIDEBAR]: {\n placement: HorizontalPlacement.START,\n collapsible: true,\n responsiveBreakpoint: ViewportBreakpoint.VERT_TABLET,\n responsivePolicy: SidebarResponsivePolicy.DRAWER,\n contentSections: [\n navSection('favorites', { behavior: SidebarSectionBehavior.FAVORITES }),\n navSection('main', { showLabel: false, collapsible: false, nested: true, maxNestingDepth: 2 }),\n navSection('tools'),\n ],\n defaultSection: \"main\",\n showUncategorized: true,\n },\n }),\n};\n\n\n/**\n * Widescreen kit — dual sidebar + companion zone, triple layout.\n *\n * Best for: multi-monitor setups, desktop-class enterprise.\n */\nexport const KIT_WIDESCREEN: Partial<AppConfiguration_Frontend> = {\n navigationLayout: NAVIGATION_LAYOUT_TRIPLE,\n appComponentsConfiguration: mergeAppShellWithBilling({\n ...APP_SHELL_COCKPIT,\n [ApplicationLevelComponentType.CONTROL_PANEL]: true,\n }),\n};\n\n\n// ═══════════════════════════════════════════════════════════════════════════════\n// Domain Kits\n// ═══════════════════════════════════════════════════════════════════════════════\n\n/**\n * Collaboration kit — status bar with connection state, prominent notification\n * center, team sidebar section.\n *\n * Best for: team tools, Slack-like apps, project management.\n */\nexport const KIT_COLLAB: Partial<AppConfiguration_Frontend> = {\n appComponentsConfiguration: mergeAppShellWithBilling({\n ...APP_SHELL_SIDEBAR,\n [ApplicationLevelComponentType.SIDEBAR]: {\n placement: HorizontalPlacement.START,\n collapsible: true,\n responsiveBreakpoint: ViewportBreakpoint.MOBILE,\n responsivePolicy: SidebarResponsivePolicy.BURGER,\n contentSections: [\n navSection('favorites', { behavior: SidebarSectionBehavior.FAVORITES }),\n navSection('main', { showLabel: false, collapsible: false, nested: true, maxNestingDepth: 2 }),\n navSection('team'),\n navSection('tools'),\n navSection('settings', { defaultCollapsed: true }),\n ],\n defaultSection: \"main\",\n showUncategorized: true,\n },\n [ApplicationLevelComponentType.STATUS_BAR]: {\n showMemoryUsage: false,\n showNotificationCount: true,\n showConnectionStatus: true,\n },\n [ApplicationLevelComponentType.NOTIFICATION_CENTER]: true,\n }),\n};\n\n\n/**\n * CMS kit — tabbed multi-document layout, centered shell.\n *\n * Overrides layout + shell. Pair with an editorial design system (e.g.\n * `UI_DESIGN_SYSTEM_EDITORIAL`) in the APP preset for content-first feel.\n *\n * Best for: CMS, blog platforms, documentation sites.\n */\nexport const KIT_CMS: Partial<AppConfiguration_Frontend> = {\n navigationLayout: NAVIGATION_LAYOUT_TABS,\n appComponentsConfiguration: mergeAppShellWithBilling(APP_SHELL_CENTERED),\n};\n\n\n/**\n * Analytics kit — rail shell with toolbar + control panel.\n *\n * Overrides shell only. Pair with a corporate design system (e.g.\n * `UI_DESIGN_SYSTEM_CORPORATE`) in the APP preset for enterprise feel.\n *\n * Best for: BI dashboards, monitoring, reporting.\n */\nexport const KIT_ANALYTICS: Partial<AppConfiguration_Frontend> = {\n appComponentsConfiguration: mergeAppShellWithBilling({\n ...APP_SHELL_RAIL,\n [ApplicationLevelComponentType.TOOLBAR]: true,\n [ApplicationLevelComponentType.CONTROL_PANEL]: true,\n }),\n};\n\n\n/**\n * Marketplace kit — OMNIBOX search, prominent command menu.\n *\n * Best for: marketplaces, directories, catalogs.\n */\nexport const KIT_MARKETPLACE: Partial<AppConfiguration_Frontend> = {\n appComponentsConfiguration: mergeAppShellWithBilling({\n ...APP_SHELL_SIDEBAR,\n [ApplicationLevelComponentType.MENUBAR]: {\n displayPolicy: \"FIXED\",\n hostedComponents: [\n { componentType: ApplicationLevelComponentType.NAVIGATION_CONTROL, placement: HorizontalPlacement.START },\n { componentType: ApplicationLevelComponentType.COMMAND_MENU, placement: HorizontalPlacement.MIDDLE },\n { componentType: ApplicationLevelComponentType.QUICK_ACTION_BUTTON, placement: HorizontalPlacement.END, breakpoint: ViewportBreakpoint.DESKTOP },\n { componentType: ApplicationLevelComponentType.NOTIFICATION_CENTER, placement: HorizontalPlacement.END },\n { componentType: ApplicationLevelComponentType.USER_DROPDOWN, placement: HorizontalPlacement.END },\n ],\n },\n [ApplicationLevelComponentType.COMMAND_MENU]: {\n policy: CommandBarPolicy.OMNIBOX,\n showRecent: true,\n maxRecentItems: 10,\n showShortcuts: true,\n openShortcut: 'Cmd+K',\n },\n }),\n};\n\n\n/**\n * Dev portal kit — status bar with memory display + control panel.\n *\n * Overrides shell only. Pair with a hacker design system (e.g.\n * `UI_DESIGN_SYSTEM_HACKER`) in the APP preset for dev-native feel.\n *\n * Best for: API docs, developer portals, internal tools.\n */\nexport const KIT_DEV_PORTAL: Partial<AppConfiguration_Frontend> = {\n appComponentsConfiguration: mergeAppShellWithBilling({\n ...APP_SHELL_SIDEBAR,\n [ApplicationLevelComponentType.STATUS_BAR]: {\n showMemoryUsage: true,\n showNotificationCount: true,\n showConnectionStatus: true,\n },\n [ApplicationLevelComponentType.CONTROL_PANEL]: true,\n }),\n};\n\n\n/**\n * Onboarding kit — wizard layout for creation, progress in menubar.\n *\n * Best for: complex first-run setup, B2B SaaS onboarding.\n */\nexport const KIT_ONBOARDING: Partial<AppConfiguration_Frontend> = {\n navigationLayout: NAVIGATION_LAYOUT_WIZARD,\n appComponentsConfiguration: mergeAppShellWithBilling({\n ...APP_SHELL_MINIMAL,\n [ApplicationLevelComponentType.TOOLBAR]: true,\n }),\n};\n\n\n/**\n * AI copilot kit — companion layout for persistent AI chat panel,\n * sidebar with assistant entry point.\n *\n * Overrides layout + shell. Pair with an AI-native design system (e.g.\n * `UI_DESIGN_SYSTEM_NEON`) in the APP preset for futuristic feel.\n *\n * Best for: AI-native apps, co-pilot interfaces.\n */\nexport const KIT_AI_COPILOT: Partial<AppConfiguration_Frontend> = {\n navigationLayout: NAVIGATION_LAYOUT_COMPANION,\n appComponentsConfiguration: mergeAppShellWithBilling({\n ...APP_SHELL_SIDEBAR,\n [ApplicationLevelComponentType.SIDEBAR]: {\n placement: HorizontalPlacement.START,\n collapsible: true,\n responsiveBreakpoint: ViewportBreakpoint.MOBILE,\n responsivePolicy: SidebarResponsivePolicy.BURGER,\n contentSections: [\n navSection('favorites', { behavior: SidebarSectionBehavior.FAVORITES }),\n navSection('main', { showLabel: false, collapsible: false, nested: true, maxNestingDepth: 2 }),\n navSection('tools'),\n navSection('assistant', { collapsible: false }),\n navSection('settings', { defaultCollapsed: true }),\n ],\n defaultSection: \"main\",\n showUncategorized: true,\n },\n }),\n};\n"]}
1
+ {"version":3,"file":"preset-kits.js","sourceRoot":"","sources":["../../../../src/config/preset-kits.ts"],"names":[],"mappings":"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","sourcesContent":["/**\n * Preset Kits — `KIT_*`\n *\n * Composable behavior bundles. Each kit is `Partial<AppConfiguration_Frontend>`\n * — override only what it touches. Compose via spreading:\n *\n * ```\n * const config = { ...APP_STANDARD, ...KIT_DENSE, ...KIT_MOBILE };\n * ```\n */\n\nimport type { AppConfiguration_Frontend } from '@wildo-ai/saas-frontend-lib';\nimport {\n ApplicationLevelComponentType,\n CommandBarPolicy,\n SidebarSectionBehavior,\n SidebarResponsivePolicy,\n} from '@wildo-ai/saas-frontend-lib';\nimport { mergeAppShellWithBilling } from './billing-shell.presets';\nimport { HorizontalPlacement } from '@wildo-ai/presets-components-models';\nimport { ViewportBreakpoint } from '@wildo-ai/zod-decorators';\n\nimport {\n APP_SHELL_DENSE,\n APP_SHELL_MOBILE,\n APP_SHELL_RAIL,\n APP_SHELL_MINIMAL,\n APP_SHELL_SIDEBAR,\n APP_SHELL_CENTERED,\n APP_SHELL_COCKPIT,\n navSection,\n} from './preset-shell';\nimport {\n NAVIGATION_LAYOUT_INLINE,\n NAVIGATION_LAYOUT_WIZARD,\n NAVIGATION_LAYOUT_TABS,\n NAVIGATION_LAYOUT_COMPANION,\n NAVIGATION_LAYOUT_TRIPLE,\n} from './preset-navigation';\n\n\n/**\n * Dense kit — nav rail + drawer sidebar, status bar.\n *\n * Overrides shell only. Pair with a compact design system (e.g.\n * `UI_DESIGN_SYSTEM_CORPORATE`) in the APP preset for full density.\n *\n * Best for: data tables, trading, admin panels.\n */\nexport const KIT_DENSE: Partial<AppConfiguration_Frontend> = {\n appComponentsConfiguration: mergeAppShellWithBilling(APP_SHELL_DENSE),\n};\n\n\n/**\n * Mobile kit — bottom nav + FAB, no sidebar.\n *\n * Overrides shell only. Pair with a relaxed design system (e.g.\n * `UI_DESIGN_SYSTEM_WARM`) in the APP preset for consumer mobile feel.\n *\n * Best for: PWAs, consumer mobile, field tools.\n */\nexport const KIT_MOBILE: Partial<AppConfiguration_Frontend> = {\n appComponentsConfiguration: mergeAppShellWithBilling(APP_SHELL_MOBILE),\n};\n\n\n/**\n * Inline-edit kit — create/update as INPLACE within lists.\n *\n * Shell-agnostic: only changes navigation transitions. The consuming\n * APP preset controls the shell. With INPLACE transitions, the FAB\n * is typically unnecessary — disable it in your shell if desired.\n *\n * Best for: Kanban, lightweight CRMs, inline editing.\n */\nexport const KIT_INLINE_EDIT: Partial<AppConfiguration_Frontend> = {\n navigationLayout: NAVIGATION_LAYOUT_INLINE,\n};\n\n\n/**\n * Wizard kit — create/update as full-page PUSH, minimal shell during flow.\n *\n * Overrides layout + shell. Pair with a consumer design system (e.g.\n * `UI_DESIGN_SYSTEM_WARM`) in the APP preset for onboarding feel.\n *\n * Best for: step-by-step flows (insurance, onboarding, surveys).\n */\nexport const KIT_WIZARD: Partial<AppConfiguration_Frontend> = {\n navigationLayout: NAVIGATION_LAYOUT_WIZARD,\n appComponentsConfiguration: mergeAppShellWithBilling(APP_SHELL_MINIMAL),\n};\n\n\n/**\n * Bulk-ops kit — toolbar bulk actions, OMNIBOX command menu.\n *\n * Best for: batch processing, admin moderation.\n */\nexport const KIT_BULK_OPS: Partial<AppConfiguration_Frontend> = {\n appComponentsConfiguration: mergeAppShellWithBilling({\n ...APP_SHELL_DENSE,\n [ApplicationLevelComponentType.TOOLBAR]: true,\n [ApplicationLevelComponentType.COMMAND_MENU]: {\n policy: CommandBarPolicy.OMNIBOX,\n showRecent: true,\n maxRecentItems: 5,\n showShortcuts: true,\n openShortcut: 'Cmd+K',\n },\n }),\n};\n\n\n/**\n * Drag-drop kit — thin sidebar, max content area.\n *\n * Best for: Kanban boards, pipeline views, visual builders.\n */\nexport const KIT_DRAG_DROP: Partial<AppConfiguration_Frontend> = {\n appComponentsConfiguration: mergeAppShellWithBilling({\n ...APP_SHELL_SIDEBAR,\n [ApplicationLevelComponentType.SIDEBAR]: {\n placement: HorizontalPlacement.START,\n collapsible: true,\n responsiveBreakpoint: ViewportBreakpoint.VERT_TABLET,\n responsivePolicy: SidebarResponsivePolicy.DRAWER,\n contentSections: [\n navSection('main', { showLabel: false, collapsible: false, nested: true, maxNestingDepth: 2 }),\n ],\n defaultSection: \"main\",\n },\n }),\n};\n\n\n// ═══════════════════════════════════════════════════════════════════════════════\n// Density & Responsiveness Kits\n// ═══════════════════════════════════════════════════════════════════════════════\n\n/**\n * Tablet kit — sidebar drawer at tablet breakpoint, split at landscape.\n *\n * Best for: tablet-first apps, warehouse, field workers.\n */\nexport const KIT_TABLET: Partial<AppConfiguration_Frontend> = {\n appComponentsConfiguration: mergeAppShellWithBilling({\n ...APP_SHELL_SIDEBAR,\n [ApplicationLevelComponentType.SIDEBAR]: {\n placement: HorizontalPlacement.START,\n collapsible: true,\n responsiveBreakpoint: ViewportBreakpoint.VERT_TABLET,\n responsivePolicy: SidebarResponsivePolicy.DRAWER,\n contentSections: [\n navSection('favorites', { behavior: SidebarSectionBehavior.FAVORITES }),\n navSection('main', { showLabel: false, collapsible: false, nested: true, maxNestingDepth: 2 }),\n navSection('tools'),\n ],\n defaultSection: \"main\",\n },\n }),\n};\n\n\n/**\n * Widescreen kit — dual sidebar + companion zone, triple layout.\n *\n * Best for: multi-monitor setups, desktop-class enterprise.\n */\nexport const KIT_WIDESCREEN: Partial<AppConfiguration_Frontend> = {\n navigationLayout: NAVIGATION_LAYOUT_TRIPLE,\n appComponentsConfiguration: mergeAppShellWithBilling({\n ...APP_SHELL_COCKPIT,\n [ApplicationLevelComponentType.CONTROL_PANEL]: true,\n }),\n};\n\n\n// ═══════════════════════════════════════════════════════════════════════════════\n// Domain Kits\n// ═══════════════════════════════════════════════════════════════════════════════\n\n/**\n * Collaboration kit — status bar with connection state, prominent notification\n * center, team sidebar section.\n *\n * Best for: team tools, Slack-like apps, project management.\n */\nexport const KIT_COLLAB: Partial<AppConfiguration_Frontend> = {\n appComponentsConfiguration: mergeAppShellWithBilling({\n ...APP_SHELL_SIDEBAR,\n [ApplicationLevelComponentType.SIDEBAR]: {\n placement: HorizontalPlacement.START,\n collapsible: true,\n responsiveBreakpoint: ViewportBreakpoint.MOBILE,\n responsivePolicy: SidebarResponsivePolicy.BURGER,\n contentSections: [\n navSection('favorites', { behavior: SidebarSectionBehavior.FAVORITES }),\n navSection('main', { showLabel: false, collapsible: false, nested: true, maxNestingDepth: 2 }),\n navSection('team'),\n navSection('tools'),\n navSection('settings', { defaultCollapsed: true }),\n ],\n defaultSection: \"main\",\n },\n [ApplicationLevelComponentType.STATUS_BAR]: {\n showMemoryUsage: false,\n showNotificationCount: true,\n showConnectionStatus: true,\n },\n [ApplicationLevelComponentType.NOTIFICATION_CENTER]: true,\n }),\n};\n\n\n/**\n * CMS kit — tabbed multi-document layout, centered shell.\n *\n * Overrides layout + shell. Pair with an editorial design system (e.g.\n * `UI_DESIGN_SYSTEM_EDITORIAL`) in the APP preset for content-first feel.\n *\n * Best for: CMS, blog platforms, documentation sites.\n */\nexport const KIT_CMS: Partial<AppConfiguration_Frontend> = {\n navigationLayout: NAVIGATION_LAYOUT_TABS,\n appComponentsConfiguration: mergeAppShellWithBilling(APP_SHELL_CENTERED),\n};\n\n\n/**\n * Analytics kit — rail shell with toolbar + control panel.\n *\n * Overrides shell only. Pair with a corporate design system (e.g.\n * `UI_DESIGN_SYSTEM_CORPORATE`) in the APP preset for enterprise feel.\n *\n * Best for: BI dashboards, monitoring, reporting.\n */\nexport const KIT_ANALYTICS: Partial<AppConfiguration_Frontend> = {\n appComponentsConfiguration: mergeAppShellWithBilling({\n ...APP_SHELL_RAIL,\n [ApplicationLevelComponentType.TOOLBAR]: true,\n [ApplicationLevelComponentType.CONTROL_PANEL]: true,\n }),\n};\n\n\n/**\n * Marketplace kit — OMNIBOX search, prominent command menu.\n *\n * Best for: marketplaces, directories, catalogs.\n */\nexport const KIT_MARKETPLACE: Partial<AppConfiguration_Frontend> = {\n appComponentsConfiguration: mergeAppShellWithBilling({\n ...APP_SHELL_SIDEBAR,\n [ApplicationLevelComponentType.MENUBAR]: {\n displayPolicy: \"FIXED\",\n hostedComponents: [\n { componentType: ApplicationLevelComponentType.NAVIGATION_CONTROL, placement: HorizontalPlacement.START },\n { componentType: ApplicationLevelComponentType.COMMAND_MENU, placement: HorizontalPlacement.MIDDLE },\n { componentType: ApplicationLevelComponentType.QUICK_ACTION_BUTTON, placement: HorizontalPlacement.END, breakpoint: ViewportBreakpoint.DESKTOP },\n { componentType: ApplicationLevelComponentType.NOTIFICATION_CENTER, placement: HorizontalPlacement.END },\n { componentType: ApplicationLevelComponentType.USER_DROPDOWN, placement: HorizontalPlacement.END },\n ],\n },\n [ApplicationLevelComponentType.COMMAND_MENU]: {\n policy: CommandBarPolicy.OMNIBOX,\n showRecent: true,\n maxRecentItems: 10,\n showShortcuts: true,\n openShortcut: 'Cmd+K',\n },\n }),\n};\n\n\n/**\n * Dev portal kit — status bar with memory display + control panel.\n *\n * Overrides shell only. Pair with a hacker design system (e.g.\n * `UI_DESIGN_SYSTEM_HACKER`) in the APP preset for dev-native feel.\n *\n * Best for: API docs, developer portals, internal tools.\n */\nexport const KIT_DEV_PORTAL: Partial<AppConfiguration_Frontend> = {\n appComponentsConfiguration: mergeAppShellWithBilling({\n ...APP_SHELL_SIDEBAR,\n [ApplicationLevelComponentType.STATUS_BAR]: {\n showMemoryUsage: true,\n showNotificationCount: true,\n showConnectionStatus: true,\n },\n [ApplicationLevelComponentType.CONTROL_PANEL]: true,\n }),\n};\n\n\n/**\n * Onboarding kit — wizard layout for creation, progress in menubar.\n *\n * Best for: complex first-run setup, B2B SaaS onboarding.\n */\nexport const KIT_ONBOARDING: Partial<AppConfiguration_Frontend> = {\n navigationLayout: NAVIGATION_LAYOUT_WIZARD,\n appComponentsConfiguration: mergeAppShellWithBilling({\n ...APP_SHELL_MINIMAL,\n [ApplicationLevelComponentType.TOOLBAR]: true,\n }),\n};\n\n\n/**\n * AI copilot kit — companion layout for persistent AI chat panel,\n * sidebar with assistant entry point.\n *\n * Overrides layout + shell. Pair with an AI-native design system (e.g.\n * `UI_DESIGN_SYSTEM_NEON`) in the APP preset for futuristic feel.\n *\n * Best for: AI-native apps, co-pilot interfaces.\n */\nexport const KIT_AI_COPILOT: Partial<AppConfiguration_Frontend> = {\n navigationLayout: NAVIGATION_LAYOUT_COMPANION,\n appComponentsConfiguration: mergeAppShellWithBilling({\n ...APP_SHELL_SIDEBAR,\n [ApplicationLevelComponentType.SIDEBAR]: {\n placement: HorizontalPlacement.START,\n collapsible: true,\n responsiveBreakpoint: ViewportBreakpoint.MOBILE,\n responsivePolicy: SidebarResponsivePolicy.BURGER,\n contentSections: [\n navSection('favorites', { behavior: SidebarSectionBehavior.FAVORITES }),\n navSection('main', { showLabel: false, collapsible: false, nested: true, maxNestingDepth: 2 }),\n navSection('tools'),\n navSection('assistant', { collapsible: false }),\n navSection('settings', { defaultCollapsed: true }),\n ],\n defaultSection: \"main\",\n },\n }),\n};\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"preset-shell.d.ts","sourceRoot":"","sources":["../../../../src/config/preset-shell.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAIL,oCAAoC,EAEpC,KAAK,6BAA6B,EAInC,MAAM,6BAA6B,CAAC;AAGrC,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,KAAK,+BAA+B,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oCAAoC,CAAC,CAAC;AAO5F,wEAAwE;AACxE,wBAAgB,UAAU,CACxB,GAAG,EAAE,MAAM,EACX,SAAS,CAAC,EAAE,OAAO,CAAC,IAAI,CAAC,6BAA6B,EAAE,aAAa,GAAG,KAAK,GAAG,UAAU,CAAC,CAAC,GAC3F,6BAA6B,CAU/B;AAQD;;;;;GAKG;AACH,eAAO,MAAM,iBAAiB,EAAE,+BAyD/B,CAAC;AAGF;;;;;GAKG;AACH,eAAO,MAAM,eAAe,EAAE,+BAqB7B,CAAC;AAGF;;;;;GAKG;AACH,eAAO,MAAM,iBAAiB,EAAE,+BAO/B,CAAC;AAGF;;;;GAIG;AACH,eAAO,MAAM,gBAAgB,EAAE,+BAM9B,CAAC;AAGF;;;;GAIG;AACH,eAAO,MAAM,kBAAkB,EAAE,+BAMhC,CAAC;AAGF;;;;GAIG;AACH,eAAO,MAAM,cAAc,EAAE,+BAK5B,CAAC;AAGF;;;;GAIG;AACH,eAAO,MAAM,gBAAgB,EAAE,+BAiB9B,CAAC;AAGF;;;;GAIG;AACH,eAAO,MAAM,eAAe,EAAE,+BAa7B,CAAC;AAGF;;;;GAIG;AACH,eAAO,MAAM,iBAAiB,EAAE,+BAsB/B,CAAC"}
1
+ {"version":3,"file":"preset-shell.d.ts","sourceRoot":"","sources":["../../../../src/config/preset-shell.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAIL,oCAAoC,EAEpC,KAAK,6BAA6B,EAInC,MAAM,6BAA6B,CAAC;AAGrC,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,KAAK,+BAA+B,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oCAAoC,CAAC,CAAC;AAO5F,wEAAwE;AACxE,wBAAgB,UAAU,CACxB,GAAG,EAAE,MAAM,EACX,SAAS,CAAC,EAAE,OAAO,CAAC,IAAI,CAAC,6BAA6B,EAAE,aAAa,GAAG,KAAK,GAAG,UAAU,CAAC,CAAC,GAC3F,6BAA6B,CAU/B;AAQD;;;;;GAKG;AACH,eAAO,MAAM,iBAAiB,EAAE,+BAwD/B,CAAC;AAGF;;;;;GAKG;AACH,eAAO,MAAM,eAAe,EAAE,+BAoB7B,CAAC;AAGF;;;;;GAKG;AACH,eAAO,MAAM,iBAAiB,EAAE,+BAO/B,CAAC;AAGF;;;;GAIG;AACH,eAAO,MAAM,gBAAgB,EAAE,+BAM9B,CAAC;AAGF;;;;GAIG;AACH,eAAO,MAAM,kBAAkB,EAAE,+BAMhC,CAAC;AAGF;;;;GAIG;AACH,eAAO,MAAM,cAAc,EAAE,+BAK5B,CAAC;AAGF;;;;GAIG;AACH,eAAO,MAAM,gBAAgB,EAAE,+BAgB9B,CAAC;AAGF;;;;GAIG;AACH,eAAO,MAAM,eAAe,EAAE,+BAa7B,CAAC;AAGF;;;;GAIG;AACH,eAAO,MAAM,iBAAiB,EAAE,+BAqB/B,CAAC"}
@@ -56,7 +56,6 @@ export const APP_SHELL_SIDEBAR = {
56
56
  navSection('settings', { defaultCollapsed: true }),
57
57
  ],
58
58
  defaultSection: "main",
59
- showUncategorized: true,
60
59
  },
61
60
  [ApplicationLevelComponentType.COMMAND_MENU]: {
62
61
  policy: CommandBarPolicy.COMMAND_ONLY,
@@ -107,7 +106,6 @@ export const APP_SHELL_DENSE = {
107
106
  navSection('settings', { defaultCollapsed: true }),
108
107
  ],
109
108
  defaultSection: "main",
110
- showUncategorized: true,
111
109
  },
112
110
  [ApplicationLevelComponentType.ACTIVITY_BAR]: true,
113
111
  [ApplicationLevelComponentType.STATUS_BAR]: {
@@ -183,7 +181,6 @@ export const APP_SHELL_STUDIO = {
183
181
  navSection('settings', { defaultCollapsed: true }),
184
182
  ],
185
183
  defaultSection: "main",
186
- showUncategorized: true,
187
184
  },
188
185
  [ApplicationLevelComponentType.CONTROL_PANEL]: true,
189
186
  [ApplicationLevelComponentType.TOOLBAR]: true,
@@ -226,7 +223,6 @@ export const APP_SHELL_COCKPIT = {
226
223
  navSection('settings', { defaultCollapsed: true }),
227
224
  ],
228
225
  defaultSection: "main",
229
- showUncategorized: true,
230
226
  },
231
227
  [ApplicationLevelComponentType.QUICK_SWITCHER]: true,
232
228
  [ApplicationLevelComponentType.STATUS_BAR]: {
@@ -1 +1 @@
1
- {"version":3,"file":"preset-shell.js","sourceRoot":"","sources":["../../../../src/config/preset-shell.ts"],"names":[],"mappings":"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","sourcesContent":["/**\n * App Shell Presets — `APP_SHELL_*`\n *\n * App chrome configuration constants. Ready-to-spread into `appComponentsConfiguration`.\n */\n\nimport {\n ApplicationLevelComponentType,\n SidebarSectionBehavior,\n SidebarSectionContentKind,\n AppLevelComponentConfigurationSchema,\n CommandBarPolicy,\n type SidebarSection_NavigationList,\n UserDropdownAvatarDisplay,\n UserDropdownSection,\n SidebarResponsivePolicy,\n} from '@wildo-ai/saas-frontend-lib';\nimport { HorizontalPlacement } from '@wildo-ai/presets-components-models';\nimport { ViewportBreakpoint } from '@wildo-ai/zod-decorators';\nimport { z } from 'zod';\n\ntype AppLevelComponentsConfiguration = z.infer<typeof AppLevelComponentConfigurationSchema>;\n\n\n// ═══════════════════════════════════════════════════════════════════════════════\n// Sidebar Section Helpers\n// ═══════════════════════════════════════════════════════════════════════════════\n\n/** Helper to build a NAVIGATION_LIST section with sensible defaults. */\nexport function navSection(\n ref: string,\n overrides?: Partial<Omit<SidebarSection_NavigationList, 'contentKind' | 'ref' | 'children'>>,\n): SidebarSection_NavigationList {\n return {\n contentKind: SidebarSectionContentKind.NAVIGATION_LIST,\n ref,\n behavior: SidebarSectionBehavior.STATIC,\n collapsible: true,\n defaultCollapsed: false,\n children: [],\n ...overrides,\n };\n}\n\n\n\n// ═══════════════════════════════════════════════════════════════════════════════\n// Shell Presets — APP_SHELL_*\n// ═══════════════════════════════════════════════════════════════════════════════\n\n/**\n * Sidebar shell — full sidebar + fixed menubar, toolbar, command menu, user dropdown.\n *\n * Best for: typical SaaS apps with sidebar navigation.\n * Includes favorites section in the sidebar.\n */\nexport const APP_SHELL_SIDEBAR: AppLevelComponentsConfiguration = {\n [ApplicationLevelComponentType.MENUBAR]: {\n displayPolicy: \"FIXED\",\n hostedComponents: [\n { componentType: ApplicationLevelComponentType.NAVIGATION_CONTROL, placement: HorizontalPlacement.START },\n { componentType: ApplicationLevelComponentType.COMMAND_MENU, placement: HorizontalPlacement.START },\n { componentType: ApplicationLevelComponentType.QUICK_ACTION_BUTTON, placement: HorizontalPlacement.END, breakpoint: ViewportBreakpoint.DESKTOP },\n { componentType: ApplicationLevelComponentType.NOTIFICATION_CENTER, placement: HorizontalPlacement.END },\n { componentType: ApplicationLevelComponentType.USER_DROPDOWN, placement: HorizontalPlacement.END },\n ],\n },\n [ApplicationLevelComponentType.TOOLBAR]: true,\n [ApplicationLevelComponentType.HOTKEY]: true,\n [ApplicationLevelComponentType.NOTIFICATION_CENTER]: true,\n [ApplicationLevelComponentType.SIDEBAR]: {\n placement: HorizontalPlacement.START,\n collapsible: true,\n responsiveBreakpoint: ViewportBreakpoint.MOBILE,\n responsivePolicy: SidebarResponsivePolicy.BURGER,\n contentSections: [\n navSection('favorites', { behavior: SidebarSectionBehavior.FAVORITES }),\n navSection('main', { showLabel: false, collapsible: false, nested: true, maxNestingDepth: 2 }),\n navSection('tools'),\n navSection('settings', { defaultCollapsed: true }),\n ],\n defaultSection: \"main\",\n showUncategorized: true,\n },\n [ApplicationLevelComponentType.COMMAND_MENU]: {\n policy: CommandBarPolicy.COMMAND_ONLY,\n showRecent: true,\n maxRecentItems: 5,\n showShortcuts: true,\n openShortcut: 'Cmd+K',\n },\n [ApplicationLevelComponentType.QUICK_ACTION_BUTTON]: true,\n [ApplicationLevelComponentType.QUICK_SWITCHER]: true,\n [ApplicationLevelComponentType.CONTROL_PANEL]: false,\n [ApplicationLevelComponentType.STATUS_BAR]: {\n showMemoryUsage: false,\n showNotificationCount: true,\n showConnectionStatus: true,\n },\n [ApplicationLevelComponentType.USER_DROPDOWN]: {\n avatarDisplay: UserDropdownAvatarDisplay.AVATAR_ONLY,\n sections: [\n UserDropdownSection.USER_INFO,\n UserDropdownSection.ORG_SWITCHER,\n UserDropdownSection.SETTINGS,\n UserDropdownSection.LOGOUT,\n ],\n showOrgSwitcher: true,\n showLogout: true,\n },\n [ApplicationLevelComponentType.NAVIGATION_CONTROL]: true,\n [ApplicationLevelComponentType.ACTIVITY_BAR]: false,\n [ApplicationLevelComponentType.UTILITY_PANEL]: false,\n};\n\n\n/**\n * Dense shell — nav rail + sidebar with drawer policy, vertical tablet breakpoint.\n *\n * Best for: data-heavy admin panels, list-detail layouts, CRM tools.\n * No favorites section — admin UIs typically don't use favorites.\n */\nexport const APP_SHELL_DENSE: AppLevelComponentsConfiguration = {\n ...APP_SHELL_SIDEBAR,\n [ApplicationLevelComponentType.SIDEBAR]: {\n placement: HorizontalPlacement.START,\n collapsible: true,\n responsiveBreakpoint: ViewportBreakpoint.VERT_TABLET,\n responsivePolicy: SidebarResponsivePolicy.DRAWER,\n contentSections: [\n navSection('main', { showLabel: false, collapsible: false, nested: true, maxNestingDepth: 2 }),\n navSection('tools'),\n navSection('settings', { defaultCollapsed: true }),\n ],\n defaultSection: \"main\",\n showUncategorized: true,\n },\n [ApplicationLevelComponentType.ACTIVITY_BAR]: true,\n [ApplicationLevelComponentType.STATUS_BAR]: {\n showMemoryUsage: false,\n showNotificationCount: true,\n showConnectionStatus: true,\n },\n};\n\n\n/**\n * Minimal shell — no sidebar, just a menubar with essential controls.\n *\n * Best for: landing pages, single-purpose tools, wizard-style flows,\n * public-facing apps with minimal navigation.\n */\nexport const APP_SHELL_MINIMAL: AppLevelComponentsConfiguration = {\n ...APP_SHELL_SIDEBAR,\n [ApplicationLevelComponentType.SIDEBAR]: false,\n [ApplicationLevelComponentType.TOOLBAR]: false,\n [ApplicationLevelComponentType.QUICK_ACTION_BUTTON]: false,\n [ApplicationLevelComponentType.QUICK_SWITCHER]: false,\n [ApplicationLevelComponentType.STATUS_BAR]: false,\n};\n\n\n/**\n * Mobile shell — FAB, no sidebar.\n *\n * Best for: PWAs, mobile-first apps, bottom tabs.\n */\nexport const APP_SHELL_MOBILE: AppLevelComponentsConfiguration = {\n ...APP_SHELL_SIDEBAR,\n [ApplicationLevelComponentType.SIDEBAR]: false,\n [ApplicationLevelComponentType.TOOLBAR]: false,\n [ApplicationLevelComponentType.QUICK_ACTION_BUTTON]: \"FLOATING\",\n [ApplicationLevelComponentType.STATUS_BAR]: false,\n};\n\n\n/**\n * Centered shell — command menu only, no sidebar.\n *\n * Best for: CMS editors, docs platforms, content-first apps.\n */\nexport const APP_SHELL_CENTERED: AppLevelComponentsConfiguration = {\n ...APP_SHELL_SIDEBAR,\n [ApplicationLevelComponentType.SIDEBAR]: false,\n [ApplicationLevelComponentType.TOOLBAR]: false,\n [ApplicationLevelComponentType.QUICK_ACTION_BUTTON]: false,\n [ApplicationLevelComponentType.QUICK_SWITCHER]: true,\n};\n\n\n/**\n * Rail shell — activity bar only, no sidebar.\n *\n * Best for: monitoring tools, dense apps with many top-level sections.\n */\nexport const APP_SHELL_RAIL: AppLevelComponentsConfiguration = {\n ...APP_SHELL_SIDEBAR,\n [ApplicationLevelComponentType.SIDEBAR]: false,\n [ApplicationLevelComponentType.ACTIVITY_BAR]: true,\n [ApplicationLevelComponentType.TOOLBAR]: true,\n};\n\n\n/**\n * Studio shell — sidebar + inspector (control panel) as secondary panel.\n *\n * Best for: IDE-like tools, design tools, CRM with property panels.\n */\nexport const APP_SHELL_STUDIO: AppLevelComponentsConfiguration = {\n ...APP_SHELL_SIDEBAR,\n [ApplicationLevelComponentType.SIDEBAR]: {\n placement: HorizontalPlacement.START,\n collapsible: true,\n responsiveBreakpoint: ViewportBreakpoint.VERT_TABLET,\n responsivePolicy: SidebarResponsivePolicy.DRAWER,\n contentSections: [\n navSection('main', { showLabel: false, collapsible: false, nested: true, maxNestingDepth: 2 }),\n navSection('tools'),\n navSection('settings', { defaultCollapsed: true }),\n ],\n defaultSection: \"main\",\n showUncategorized: true,\n },\n [ApplicationLevelComponentType.CONTROL_PANEL]: true,\n [ApplicationLevelComponentType.TOOLBAR]: true,\n};\n\n\n/**\n * Kiosk shell — no chrome. Content only.\n *\n * Best for: POS, public displays, embedded widgets.\n */\nexport const APP_SHELL_KIOSK: AppLevelComponentsConfiguration = {\n ...APP_SHELL_SIDEBAR,\n [ApplicationLevelComponentType.MENUBAR]: false,\n [ApplicationLevelComponentType.TOOLBAR]: false,\n [ApplicationLevelComponentType.SIDEBAR]: false,\n [ApplicationLevelComponentType.COMMAND_MENU]: false,\n [ApplicationLevelComponentType.QUICK_ACTION_BUTTON]: false,\n [ApplicationLevelComponentType.QUICK_SWITCHER]: false,\n [ApplicationLevelComponentType.CONTROL_PANEL]: false,\n [ApplicationLevelComponentType.STATUS_BAR]: false,\n [ApplicationLevelComponentType.USER_DROPDOWN]: false,\n [ApplicationLevelComponentType.NAVIGATION_CONTROL]: false,\n [ApplicationLevelComponentType.NOTIFICATION_CENTER]: false,\n};\n\n\n/**\n * Cockpit shell — rail + sidebar, workspace switcher prominent.\n *\n * Best for: multi-workspace apps (Slack, project mgmt with many projects).\n */\nexport const APP_SHELL_COCKPIT: AppLevelComponentsConfiguration = {\n ...APP_SHELL_DENSE,\n [ApplicationLevelComponentType.SIDEBAR]: {\n placement: HorizontalPlacement.START,\n collapsible: true,\n responsiveBreakpoint: ViewportBreakpoint.VERT_TABLET,\n responsivePolicy: SidebarResponsivePolicy.DRAWER,\n contentSections: [\n navSection('projects', { behavior: SidebarSectionBehavior.DYNAMIC, nested: true, maxNestingDepth: 2 }),\n navSection('main', { showLabel: false, collapsible: false, nested: true, maxNestingDepth: 2 }),\n navSection('tools'),\n navSection('settings', { defaultCollapsed: true }),\n ],\n defaultSection: \"main\",\n showUncategorized: true,\n },\n [ApplicationLevelComponentType.QUICK_SWITCHER]: true,\n [ApplicationLevelComponentType.STATUS_BAR]: {\n showMemoryUsage: false,\n showNotificationCount: true,\n showConnectionStatus: true,\n },\n};\n"]}
1
+ {"version":3,"file":"preset-shell.js","sourceRoot":"","sources":["../../../../src/config/preset-shell.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EACL,6BAA6B,EAC7B,sBAAsB,EACtB,yBAAyB,EAEzB,gBAAgB,EAEhB,yBAAyB,EACzB,mBAAmB,EACnB,uBAAuB,GACxB,MAAM,6BAA6B,CAAC;AACrC,OAAO,EAAE,mBAAmB,EAAE,MAAM,qCAAqC,CAAC;AAC1E,OAAO,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AAM9D,kFAAkF;AAClF,0BAA0B;AAC1B,kFAAkF;AAElF,wEAAwE;AACxE,MAAM,UAAU,UAAU,CACxB,GAAW,EACX,SAA4F;IAE5F,OAAO;QACL,WAAW,EAAE,yBAAyB,CAAC,eAAe;QACtD,GAAG;QACH,QAAQ,EAAE,sBAAsB,CAAC,MAAM;QACvC,WAAW,EAAE,IAAI;QACjB,gBAAgB,EAAE,KAAK;QACvB,QAAQ,EAAE,EAAE;QACZ,GAAG,SAAS;KACb,CAAC;AACJ,CAAC;AAID,kFAAkF;AAClF,8BAA8B;AAC9B,kFAAkF;AAElF;;;;;GAKG;AACH,MAAM,CAAC,MAAM,iBAAiB,GAAoC;IAChE,CAAC,6BAA6B,CAAC,OAAO,CAAC,EAAE;QACvC,aAAa,EAAE,OAAO;QACtB,gBAAgB,EAAE;YAChB,EAAE,aAAa,EAAE,6BAA6B,CAAC,kBAAkB,EAAE,SAAS,EAAE,mBAAmB,CAAC,KAAK,EAAE;YACzG,EAAE,aAAa,EAAE,6BAA6B,CAAC,YAAY,EAAE,SAAS,EAAE,mBAAmB,CAAC,KAAK,EAAE;YACnG,EAAE,aAAa,EAAE,6BAA6B,CAAC,mBAAmB,EAAE,SAAS,EAAE,mBAAmB,CAAC,GAAG,EAAE,UAAU,EAAE,kBAAkB,CAAC,OAAO,EAAE;YAChJ,EAAE,aAAa,EAAE,6BAA6B,CAAC,mBAAmB,EAAE,SAAS,EAAE,mBAAmB,CAAC,GAAG,EAAE;YACxG,EAAE,aAAa,EAAE,6BAA6B,CAAC,aAAa,EAAE,SAAS,EAAE,mBAAmB,CAAC,GAAG,EAAE;SACnG;KACF;IACD,CAAC,6BAA6B,CAAC,OAAO,CAAC,EAAE,IAAI;IAC7C,CAAC,6BAA6B,CAAC,MAAM,CAAC,EAAE,IAAI;IAC5C,CAAC,6BAA6B,CAAC,mBAAmB,CAAC,EAAE,IAAI;IACzD,CAAC,6BAA6B,CAAC,OAAO,CAAC,EAAE;QACvC,SAAS,EAAE,mBAAmB,CAAC,KAAK;QACpC,WAAW,EAAE,IAAI;QACjB,oBAAoB,EAAE,kBAAkB,CAAC,MAAM;QAC/C,gBAAgB,EAAE,uBAAuB,CAAC,MAAM;QAChD,eAAe,EAAE;YACf,UAAU,CAAC,WAAW,EAAE,EAAE,QAAQ,EAAE,sBAAsB,CAAC,SAAS,EAAE,CAAC;YACvE,UAAU,CAAC,MAAM,EAAE,EAAE,SAAS,EAAE,KAAK,EAAE,WAAW,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,eAAe,EAAE,CAAC,EAAE,CAAC;YAC9F,UAAU,CAAC,OAAO,CAAC;YACnB,UAAU,CAAC,UAAU,EAAE,EAAE,gBAAgB,EAAE,IAAI,EAAE,CAAC;SACnD;QACD,cAAc,EAAE,MAAM;KACvB;IACD,CAAC,6BAA6B,CAAC,YAAY,CAAC,EAAE;QAC5C,MAAM,EAAE,gBAAgB,CAAC,YAAY;QACrC,UAAU,EAAE,IAAI;QAChB,cAAc,EAAE,CAAC;QACjB,aAAa,EAAE,IAAI;QACnB,YAAY,EAAE,OAAO;KACtB;IACD,CAAC,6BAA6B,CAAC,mBAAmB,CAAC,EAAE,IAAI;IACzD,CAAC,6BAA6B,CAAC,cAAc,CAAC,EAAE,IAAI;IACpD,CAAC,6BAA6B,CAAC,aAAa,CAAC,EAAE,KAAK;IACpD,CAAC,6BAA6B,CAAC,UAAU,CAAC,EAAE;QAC1C,eAAe,EAAE,KAAK;QACtB,qBAAqB,EAAE,IAAI;QAC3B,oBAAoB,EAAE,IAAI;KAC3B;IACD,CAAC,6BAA6B,CAAC,aAAa,CAAC,EAAE;QAC7C,aAAa,EAAE,yBAAyB,CAAC,WAAW;QACpD,QAAQ,EAAE;YACR,mBAAmB,CAAC,SAAS;YAC7B,mBAAmB,CAAC,YAAY;YAChC,mBAAmB,CAAC,QAAQ;YAC5B,mBAAmB,CAAC,MAAM;SAC3B;QACD,eAAe,EAAE,IAAI;QACrB,UAAU,EAAE,IAAI;KACjB;IACD,CAAC,6BAA6B,CAAC,kBAAkB,CAAC,EAAE,IAAI;IACxD,CAAC,6BAA6B,CAAC,YAAY,CAAC,EAAE,KAAK;IACnD,CAAC,6BAA6B,CAAC,aAAa,CAAC,EAAE,KAAK;CACrD,CAAC;AAGF;;;;;GAKG;AACH,MAAM,CAAC,MAAM,eAAe,GAAoC;IAC9D,GAAG,iBAAiB;IACpB,CAAC,6BAA6B,CAAC,OAAO,CAAC,EAAE;QACvC,SAAS,EAAE,mBAAmB,CAAC,KAAK;QACpC,WAAW,EAAE,IAAI;QACjB,oBAAoB,EAAE,kBAAkB,CAAC,WAAW;QACpD,gBAAgB,EAAE,uBAAuB,CAAC,MAAM;QAChD,eAAe,EAAE;YACf,UAAU,CAAC,MAAM,EAAE,EAAE,SAAS,EAAE,KAAK,EAAE,WAAW,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,eAAe,EAAE,CAAC,EAAE,CAAC;YAC9F,UAAU,CAAC,OAAO,CAAC;YACnB,UAAU,CAAC,UAAU,EAAE,EAAE,gBAAgB,EAAE,IAAI,EAAE,CAAC;SACnD;QACD,cAAc,EAAE,MAAM;KACvB;IACD,CAAC,6BAA6B,CAAC,YAAY,CAAC,EAAE,IAAI;IAClD,CAAC,6BAA6B,CAAC,UAAU,CAAC,EAAE;QAC1C,eAAe,EAAE,KAAK;QACtB,qBAAqB,EAAE,IAAI;QAC3B,oBAAoB,EAAE,IAAI;KAC3B;CACF,CAAC;AAGF;;;;;GAKG;AACH,MAAM,CAAC,MAAM,iBAAiB,GAAoC;IAChE,GAAG,iBAAiB;IACpB,CAAC,6BAA6B,CAAC,OAAO,CAAC,EAAE,KAAK;IAC9C,CAAC,6BAA6B,CAAC,OAAO,CAAC,EAAE,KAAK;IAC9C,CAAC,6BAA6B,CAAC,mBAAmB,CAAC,EAAE,KAAK;IAC1D,CAAC,6BAA6B,CAAC,cAAc,CAAC,EAAE,KAAK;IACrD,CAAC,6BAA6B,CAAC,UAAU,CAAC,EAAE,KAAK;CAClD,CAAC;AAGF;;;;GAIG;AACH,MAAM,CAAC,MAAM,gBAAgB,GAAoC;IAC/D,GAAG,iBAAiB;IACpB,CAAC,6BAA6B,CAAC,OAAO,CAAC,EAAE,KAAK;IAC9C,CAAC,6BAA6B,CAAC,OAAO,CAAC,EAAE,KAAK;IAC9C,CAAC,6BAA6B,CAAC,mBAAmB,CAAC,EAAE,UAAU;IAC/D,CAAC,6BAA6B,CAAC,UAAU,CAAC,EAAE,KAAK;CAClD,CAAC;AAGF;;;;GAIG;AACH,MAAM,CAAC,MAAM,kBAAkB,GAAoC;IACjE,GAAG,iBAAiB;IACpB,CAAC,6BAA6B,CAAC,OAAO,CAAC,EAAE,KAAK;IAC9C,CAAC,6BAA6B,CAAC,OAAO,CAAC,EAAE,KAAK;IAC9C,CAAC,6BAA6B,CAAC,mBAAmB,CAAC,EAAE,KAAK;IAC1D,CAAC,6BAA6B,CAAC,cAAc,CAAC,EAAE,IAAI;CACrD,CAAC;AAGF;;;;GAIG;AACH,MAAM,CAAC,MAAM,cAAc,GAAoC;IAC7D,GAAG,iBAAiB;IACpB,CAAC,6BAA6B,CAAC,OAAO,CAAC,EAAE,KAAK;IAC9C,CAAC,6BAA6B,CAAC,YAAY,CAAC,EAAE,IAAI;IAClD,CAAC,6BAA6B,CAAC,OAAO,CAAC,EAAE,IAAI;CAC9C,CAAC;AAGF;;;;GAIG;AACH,MAAM,CAAC,MAAM,gBAAgB,GAAoC;IAC/D,GAAG,iBAAiB;IACpB,CAAC,6BAA6B,CAAC,OAAO,CAAC,EAAE;QACvC,SAAS,EAAE,mBAAmB,CAAC,KAAK;QACpC,WAAW,EAAE,IAAI;QACjB,oBAAoB,EAAE,kBAAkB,CAAC,WAAW;QACpD,gBAAgB,EAAE,uBAAuB,CAAC,MAAM;QAChD,eAAe,EAAE;YACf,UAAU,CAAC,MAAM,EAAE,EAAE,SAAS,EAAE,KAAK,EAAE,WAAW,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,eAAe,EAAE,CAAC,EAAE,CAAC;YAC9F,UAAU,CAAC,OAAO,CAAC;YACnB,UAAU,CAAC,UAAU,EAAE,EAAE,gBAAgB,EAAE,IAAI,EAAE,CAAC;SACnD;QACD,cAAc,EAAE,MAAM;KACvB;IACD,CAAC,6BAA6B,CAAC,aAAa,CAAC,EAAE,IAAI;IACnD,CAAC,6BAA6B,CAAC,OAAO,CAAC,EAAE,IAAI;CAC9C,CAAC;AAGF;;;;GAIG;AACH,MAAM,CAAC,MAAM,eAAe,GAAoC;IAC9D,GAAG,iBAAiB;IACpB,CAAC,6BAA6B,CAAC,OAAO,CAAC,EAAE,KAAK;IAC9C,CAAC,6BAA6B,CAAC,OAAO,CAAC,EAAE,KAAK;IAC9C,CAAC,6BAA6B,CAAC,OAAO,CAAC,EAAE,KAAK;IAC9C,CAAC,6BAA6B,CAAC,YAAY,CAAC,EAAE,KAAK;IACnD,CAAC,6BAA6B,CAAC,mBAAmB,CAAC,EAAE,KAAK;IAC1D,CAAC,6BAA6B,CAAC,cAAc,CAAC,EAAE,KAAK;IACrD,CAAC,6BAA6B,CAAC,aAAa,CAAC,EAAE,KAAK;IACpD,CAAC,6BAA6B,CAAC,UAAU,CAAC,EAAE,KAAK;IACjD,CAAC,6BAA6B,CAAC,aAAa,CAAC,EAAE,KAAK;IACpD,CAAC,6BAA6B,CAAC,kBAAkB,CAAC,EAAE,KAAK;IACzD,CAAC,6BAA6B,CAAC,mBAAmB,CAAC,EAAE,KAAK;CAC3D,CAAC;AAGF;;;;GAIG;AACH,MAAM,CAAC,MAAM,iBAAiB,GAAoC;IAChE,GAAG,eAAe;IAClB,CAAC,6BAA6B,CAAC,OAAO,CAAC,EAAE;QACvC,SAAS,EAAE,mBAAmB,CAAC,KAAK;QACpC,WAAW,EAAE,IAAI;QACjB,oBAAoB,EAAE,kBAAkB,CAAC,WAAW;QACpD,gBAAgB,EAAE,uBAAuB,CAAC,MAAM;QAChD,eAAe,EAAE;YACf,UAAU,CAAC,UAAU,EAAE,EAAE,QAAQ,EAAE,sBAAsB,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,eAAe,EAAE,CAAC,EAAE,CAAC;YACtG,UAAU,CAAC,MAAM,EAAE,EAAE,SAAS,EAAE,KAAK,EAAE,WAAW,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,eAAe,EAAE,CAAC,EAAE,CAAC;YAC9F,UAAU,CAAC,OAAO,CAAC;YACnB,UAAU,CAAC,UAAU,EAAE,EAAE,gBAAgB,EAAE,IAAI,EAAE,CAAC;SACnD;QACD,cAAc,EAAE,MAAM;KACvB;IACD,CAAC,6BAA6B,CAAC,cAAc,CAAC,EAAE,IAAI;IACpD,CAAC,6BAA6B,CAAC,UAAU,CAAC,EAAE;QAC1C,eAAe,EAAE,KAAK;QACtB,qBAAqB,EAAE,IAAI;QAC3B,oBAAoB,EAAE,IAAI;KAC3B;CACF,CAAC","sourcesContent":["/**\n * App Shell Presets — `APP_SHELL_*`\n *\n * App chrome configuration constants. Ready-to-spread into `appComponentsConfiguration`.\n */\n\nimport {\n ApplicationLevelComponentType,\n SidebarSectionBehavior,\n SidebarSectionContentKind,\n AppLevelComponentConfigurationSchema,\n CommandBarPolicy,\n type SidebarSection_NavigationList,\n UserDropdownAvatarDisplay,\n UserDropdownSection,\n SidebarResponsivePolicy,\n} from '@wildo-ai/saas-frontend-lib';\nimport { HorizontalPlacement } from '@wildo-ai/presets-components-models';\nimport { ViewportBreakpoint } from '@wildo-ai/zod-decorators';\nimport { z } from 'zod';\n\ntype AppLevelComponentsConfiguration = z.infer<typeof AppLevelComponentConfigurationSchema>;\n\n\n// ═══════════════════════════════════════════════════════════════════════════════\n// Sidebar Section Helpers\n// ═══════════════════════════════════════════════════════════════════════════════\n\n/** Helper to build a NAVIGATION_LIST section with sensible defaults. */\nexport function navSection(\n ref: string,\n overrides?: Partial<Omit<SidebarSection_NavigationList, 'contentKind' | 'ref' | 'children'>>,\n): SidebarSection_NavigationList {\n return {\n contentKind: SidebarSectionContentKind.NAVIGATION_LIST,\n ref,\n behavior: SidebarSectionBehavior.STATIC,\n collapsible: true,\n defaultCollapsed: false,\n children: [],\n ...overrides,\n };\n}\n\n\n\n// ═══════════════════════════════════════════════════════════════════════════════\n// Shell Presets — APP_SHELL_*\n// ═══════════════════════════════════════════════════════════════════════════════\n\n/**\n * Sidebar shell — full sidebar + fixed menubar, toolbar, command menu, user dropdown.\n *\n * Best for: typical SaaS apps with sidebar navigation.\n * Includes favorites section in the sidebar.\n */\nexport const APP_SHELL_SIDEBAR: AppLevelComponentsConfiguration = {\n [ApplicationLevelComponentType.MENUBAR]: {\n displayPolicy: \"FIXED\",\n hostedComponents: [\n { componentType: ApplicationLevelComponentType.NAVIGATION_CONTROL, placement: HorizontalPlacement.START },\n { componentType: ApplicationLevelComponentType.COMMAND_MENU, placement: HorizontalPlacement.START },\n { componentType: ApplicationLevelComponentType.QUICK_ACTION_BUTTON, placement: HorizontalPlacement.END, breakpoint: ViewportBreakpoint.DESKTOP },\n { componentType: ApplicationLevelComponentType.NOTIFICATION_CENTER, placement: HorizontalPlacement.END },\n { componentType: ApplicationLevelComponentType.USER_DROPDOWN, placement: HorizontalPlacement.END },\n ],\n },\n [ApplicationLevelComponentType.TOOLBAR]: true,\n [ApplicationLevelComponentType.HOTKEY]: true,\n [ApplicationLevelComponentType.NOTIFICATION_CENTER]: true,\n [ApplicationLevelComponentType.SIDEBAR]: {\n placement: HorizontalPlacement.START,\n collapsible: true,\n responsiveBreakpoint: ViewportBreakpoint.MOBILE,\n responsivePolicy: SidebarResponsivePolicy.BURGER,\n contentSections: [\n navSection('favorites', { behavior: SidebarSectionBehavior.FAVORITES }),\n navSection('main', { showLabel: false, collapsible: false, nested: true, maxNestingDepth: 2 }),\n navSection('tools'),\n navSection('settings', { defaultCollapsed: true }),\n ],\n defaultSection: \"main\",\n },\n [ApplicationLevelComponentType.COMMAND_MENU]: {\n policy: CommandBarPolicy.COMMAND_ONLY,\n showRecent: true,\n maxRecentItems: 5,\n showShortcuts: true,\n openShortcut: 'Cmd+K',\n },\n [ApplicationLevelComponentType.QUICK_ACTION_BUTTON]: true,\n [ApplicationLevelComponentType.QUICK_SWITCHER]: true,\n [ApplicationLevelComponentType.CONTROL_PANEL]: false,\n [ApplicationLevelComponentType.STATUS_BAR]: {\n showMemoryUsage: false,\n showNotificationCount: true,\n showConnectionStatus: true,\n },\n [ApplicationLevelComponentType.USER_DROPDOWN]: {\n avatarDisplay: UserDropdownAvatarDisplay.AVATAR_ONLY,\n sections: [\n UserDropdownSection.USER_INFO,\n UserDropdownSection.ORG_SWITCHER,\n UserDropdownSection.SETTINGS,\n UserDropdownSection.LOGOUT,\n ],\n showOrgSwitcher: true,\n showLogout: true,\n },\n [ApplicationLevelComponentType.NAVIGATION_CONTROL]: true,\n [ApplicationLevelComponentType.ACTIVITY_BAR]: false,\n [ApplicationLevelComponentType.UTILITY_PANEL]: false,\n};\n\n\n/**\n * Dense shell — nav rail + sidebar with drawer policy, vertical tablet breakpoint.\n *\n * Best for: data-heavy admin panels, list-detail layouts, CRM tools.\n * No favorites section — admin UIs typically don't use favorites.\n */\nexport const APP_SHELL_DENSE: AppLevelComponentsConfiguration = {\n ...APP_SHELL_SIDEBAR,\n [ApplicationLevelComponentType.SIDEBAR]: {\n placement: HorizontalPlacement.START,\n collapsible: true,\n responsiveBreakpoint: ViewportBreakpoint.VERT_TABLET,\n responsivePolicy: SidebarResponsivePolicy.DRAWER,\n contentSections: [\n navSection('main', { showLabel: false, collapsible: false, nested: true, maxNestingDepth: 2 }),\n navSection('tools'),\n navSection('settings', { defaultCollapsed: true }),\n ],\n defaultSection: \"main\",\n },\n [ApplicationLevelComponentType.ACTIVITY_BAR]: true,\n [ApplicationLevelComponentType.STATUS_BAR]: {\n showMemoryUsage: false,\n showNotificationCount: true,\n showConnectionStatus: true,\n },\n};\n\n\n/**\n * Minimal shell — no sidebar, just a menubar with essential controls.\n *\n * Best for: landing pages, single-purpose tools, wizard-style flows,\n * public-facing apps with minimal navigation.\n */\nexport const APP_SHELL_MINIMAL: AppLevelComponentsConfiguration = {\n ...APP_SHELL_SIDEBAR,\n [ApplicationLevelComponentType.SIDEBAR]: false,\n [ApplicationLevelComponentType.TOOLBAR]: false,\n [ApplicationLevelComponentType.QUICK_ACTION_BUTTON]: false,\n [ApplicationLevelComponentType.QUICK_SWITCHER]: false,\n [ApplicationLevelComponentType.STATUS_BAR]: false,\n};\n\n\n/**\n * Mobile shell — FAB, no sidebar.\n *\n * Best for: PWAs, mobile-first apps, bottom tabs.\n */\nexport const APP_SHELL_MOBILE: AppLevelComponentsConfiguration = {\n ...APP_SHELL_SIDEBAR,\n [ApplicationLevelComponentType.SIDEBAR]: false,\n [ApplicationLevelComponentType.TOOLBAR]: false,\n [ApplicationLevelComponentType.QUICK_ACTION_BUTTON]: \"FLOATING\",\n [ApplicationLevelComponentType.STATUS_BAR]: false,\n};\n\n\n/**\n * Centered shell — command menu only, no sidebar.\n *\n * Best for: CMS editors, docs platforms, content-first apps.\n */\nexport const APP_SHELL_CENTERED: AppLevelComponentsConfiguration = {\n ...APP_SHELL_SIDEBAR,\n [ApplicationLevelComponentType.SIDEBAR]: false,\n [ApplicationLevelComponentType.TOOLBAR]: false,\n [ApplicationLevelComponentType.QUICK_ACTION_BUTTON]: false,\n [ApplicationLevelComponentType.QUICK_SWITCHER]: true,\n};\n\n\n/**\n * Rail shell — activity bar only, no sidebar.\n *\n * Best for: monitoring tools, dense apps with many top-level sections.\n */\nexport const APP_SHELL_RAIL: AppLevelComponentsConfiguration = {\n ...APP_SHELL_SIDEBAR,\n [ApplicationLevelComponentType.SIDEBAR]: false,\n [ApplicationLevelComponentType.ACTIVITY_BAR]: true,\n [ApplicationLevelComponentType.TOOLBAR]: true,\n};\n\n\n/**\n * Studio shell — sidebar + inspector (control panel) as secondary panel.\n *\n * Best for: IDE-like tools, design tools, CRM with property panels.\n */\nexport const APP_SHELL_STUDIO: AppLevelComponentsConfiguration = {\n ...APP_SHELL_SIDEBAR,\n [ApplicationLevelComponentType.SIDEBAR]: {\n placement: HorizontalPlacement.START,\n collapsible: true,\n responsiveBreakpoint: ViewportBreakpoint.VERT_TABLET,\n responsivePolicy: SidebarResponsivePolicy.DRAWER,\n contentSections: [\n navSection('main', { showLabel: false, collapsible: false, nested: true, maxNestingDepth: 2 }),\n navSection('tools'),\n navSection('settings', { defaultCollapsed: true }),\n ],\n defaultSection: \"main\",\n },\n [ApplicationLevelComponentType.CONTROL_PANEL]: true,\n [ApplicationLevelComponentType.TOOLBAR]: true,\n};\n\n\n/**\n * Kiosk shell — no chrome. Content only.\n *\n * Best for: POS, public displays, embedded widgets.\n */\nexport const APP_SHELL_KIOSK: AppLevelComponentsConfiguration = {\n ...APP_SHELL_SIDEBAR,\n [ApplicationLevelComponentType.MENUBAR]: false,\n [ApplicationLevelComponentType.TOOLBAR]: false,\n [ApplicationLevelComponentType.SIDEBAR]: false,\n [ApplicationLevelComponentType.COMMAND_MENU]: false,\n [ApplicationLevelComponentType.QUICK_ACTION_BUTTON]: false,\n [ApplicationLevelComponentType.QUICK_SWITCHER]: false,\n [ApplicationLevelComponentType.CONTROL_PANEL]: false,\n [ApplicationLevelComponentType.STATUS_BAR]: false,\n [ApplicationLevelComponentType.USER_DROPDOWN]: false,\n [ApplicationLevelComponentType.NAVIGATION_CONTROL]: false,\n [ApplicationLevelComponentType.NOTIFICATION_CENTER]: false,\n};\n\n\n/**\n * Cockpit shell — rail + sidebar, workspace switcher prominent.\n *\n * Best for: multi-workspace apps (Slack, project mgmt with many projects).\n */\nexport const APP_SHELL_COCKPIT: AppLevelComponentsConfiguration = {\n ...APP_SHELL_DENSE,\n [ApplicationLevelComponentType.SIDEBAR]: {\n placement: HorizontalPlacement.START,\n collapsible: true,\n responsiveBreakpoint: ViewportBreakpoint.VERT_TABLET,\n responsivePolicy: SidebarResponsivePolicy.DRAWER,\n contentSections: [\n navSection('projects', { behavior: SidebarSectionBehavior.DYNAMIC, nested: true, maxNestingDepth: 2 }),\n navSection('main', { showLabel: false, collapsible: false, nested: true, maxNestingDepth: 2 }),\n navSection('tools'),\n navSection('settings', { defaultCollapsed: true }),\n ],\n defaultSection: \"main\",\n },\n [ApplicationLevelComponentType.QUICK_SWITCHER]: true,\n [ApplicationLevelComponentType.STATUS_BAR]: {\n showMemoryUsage: false,\n showNotificationCount: true,\n showConnectionStatus: true,\n },\n};\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"presets.d.ts","sourceRoot":"","sources":["../../../../src/config/presets.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,6BAA6B,CAAC;AAkD7E;;;;GAIG;AACH,eAAO,MAAM,YAAY,EAAE,yBAW1B,CAAC;AAGF;;;;GAIG;AACH,eAAO,MAAM,eAAe,EAAE,yBAmB7B,CAAC;AAGF;;;;GAIG;AACH,eAAO,MAAM,aAAa,EAAE,yBAW3B,CAAC;AAGF;;;;GAIG;AACH,eAAO,MAAM,OAAO,EAAE,yBAKrB,CAAC;AAGF;;;;GAIG;AACH,eAAO,MAAM,UAAU,EAAE,yBAKxB,CAAC;AAGF;;;;;GAKG;AACH,eAAO,MAAM,WAAW,EAAE,yBAoCzB,CAAC;AAGF;;;;GAIG;AACH,eAAO,MAAM,UAAU,EAAE,yBAKxB,CAAC;AAGF;;;;GAIG;AACH,eAAO,MAAM,SAAS,EAAE,yBAWvB,CAAC;AAGF;;;;;GAKG;AACH,eAAO,MAAM,cAAc,EAAE,yBAI5B,CAAC;AAGF;;;;GAIG;AACH,eAAO,MAAM,YAAY,EAAE,yBAK1B,CAAC;AAGF;;;;;GAKG;AACH,eAAO,MAAM,YAAY,EAAE,yBAmB1B,CAAC;AAGF;;;;GAIG;AACH,eAAO,MAAM,OAAO,EAAE,yBAIrB,CAAC;AAGF;;;;GAIG;AACH,eAAO,MAAM,aAAa,EAAE,yBAI3B,CAAC;AAGF;;;;GAIG;AACH,eAAO,MAAM,eAAe,EAAE,yBAI7B,CAAC;AAGF;;;;GAIG;AACH,eAAO,MAAM,SAAS,EAAE,yBAIvB,CAAC;AAGF;;;;GAIG;AACH,eAAO,MAAM,OAAO,EAAE,yBAmBrB,CAAC"}
1
+ {"version":3,"file":"presets.d.ts","sourceRoot":"","sources":["../../../../src/config/presets.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,6BAA6B,CAAC;AAkD7E;;;;GAIG;AACH,eAAO,MAAM,YAAY,EAAE,yBAW1B,CAAC;AAGF;;;;GAIG;AACH,eAAO,MAAM,eAAe,EAAE,yBAmB7B,CAAC;AAGF;;;;GAIG;AACH,eAAO,MAAM,aAAa,EAAE,yBAW3B,CAAC;AAGF;;;;GAIG;AACH,eAAO,MAAM,OAAO,EAAE,yBAKrB,CAAC;AAGF;;;;GAIG;AACH,eAAO,MAAM,UAAU,EAAE,yBAKxB,CAAC;AAGF;;;;;GAKG;AACH,eAAO,MAAM,WAAW,EAAE,yBAmCzB,CAAC;AAGF;;;;GAIG;AACH,eAAO,MAAM,UAAU,EAAE,yBAKxB,CAAC;AAGF;;;;GAIG;AACH,eAAO,MAAM,SAAS,EAAE,yBAWvB,CAAC;AAGF;;;;;GAKG;AACH,eAAO,MAAM,cAAc,EAAE,yBAI5B,CAAC;AAGF;;;;GAIG;AACH,eAAO,MAAM,YAAY,EAAE,yBAK1B,CAAC;AAGF;;;;;GAKG;AACH,eAAO,MAAM,YAAY,EAAE,yBAmB1B,CAAC;AAGF;;;;GAIG;AACH,eAAO,MAAM,OAAO,EAAE,yBAIrB,CAAC;AAGF;;;;GAIG;AACH,eAAO,MAAM,aAAa,EAAE,yBAI3B,CAAC;AAGF;;;;GAIG;AACH,eAAO,MAAM,eAAe,EAAE,yBAI7B,CAAC;AAGF;;;;GAIG;AACH,eAAO,MAAM,SAAS,EAAE,yBAIvB,CAAC;AAGF;;;;GAIG;AACH,eAAO,MAAM,OAAO,EAAE,yBAmBrB,CAAC"}
@@ -123,7 +123,6 @@ export const APP_PROJECT = {
123
123
  navSection('settings', { defaultCollapsed: true }),
124
124
  ],
125
125
  defaultSection: "main",
126
- showUncategorized: true,
127
126
  },
128
127
  [ApplicationLevelComponentType.NOTIFICATION_CENTER]: true,
129
128
  [ApplicationLevelComponentType.STATUS_BAR]: {
@@ -1 +1 @@
1
- {"version":3,"file":"presets.js","sourceRoot":"","sources":["../../../../src/config/presets.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAGH,OAAO,EACL,6BAA6B,EAC7B,sBAAsB,EACtB,uBAAuB,GACxB,MAAM,6BAA6B,CAAC;AACrC,OAAO,EAAE,wBAAwB,EAAE,MAAM,yBAAyB,CAAC;AACnE,OAAO,EAAE,mBAAmB,EAAE,MAAM,qCAAqC,CAAC;AAC1E,OAAO,EAAE,gBAAgB,EAAE,qBAAqB,EAAE,MAAM,uBAAuB,CAAC;AAChF,OAAO,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AAE9D,OAAO,EACL,uBAAuB,EACvB,uBAAuB,EACvB,sBAAsB,EACtB,uBAAuB,EACvB,wBAAwB,GACzB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EACL,iBAAiB,EACjB,eAAe,EACf,iBAAiB,EACjB,eAAe,EACf,iBAAiB,EACjB,gBAAgB,EAChB,UAAU,GACX,MAAM,gBAAgB,CAAC;AACxB,OAAO,EACL,UAAU,EACV,UAAU,EACV,UAAU,EACV,OAAO,EACP,aAAa,EACb,eAAe,EACf,cAAc,EACd,cAAc,EACd,SAAS,EACT,YAAY,GACb,MAAM,eAAe,CAAC;AACvB,OAAO,EACL,sBAAsB,EACtB,qBAAqB,EACrB,qBAAqB,EACrB,uBAAuB,EACvB,0BAA0B,EAC1B,0BAA0B,GAC3B,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,cAAc,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAGvE;;;;GAIG;AACH,MAAM,CAAC,MAAM,YAAY,GAA8B;IACrD,gBAAgB,EAAE,uBAAuB;IACzC,0BAA0B,EAAE,wBAAwB,CAAC,iBAAiB,CAAC;IACvE,yBAAyB,EAAE,sBAAsB;IACjD,cAAc,EAAE,EAAE;IAClB,cAAc,EAAE,EAAE;IAClB,eAAe,EAAE,EAAE;IACnB,eAAe,EAAE,EAAE;IACnB,gBAAgB,EAAE,EAAE;IACpB,aAAa,EAAE,EAAE;IACjB,eAAe,EAAE,cAAc;CAChC,CAAC;AAGF;;;;GAIG;AACH,MAAM,CAAC,MAAM,eAAe,GAA8B;IACxD,gBAAgB,EAAE,uBAAuB;IACzC,0BAA0B,EAAE,wBAAwB,CAAC,eAAe,CAAC;IACrE,yBAAyB,EAAE,sBAAsB;IACjD,cAAc,EAAE;QACd,qBAAqB,EAAE;YACrB,YAAY,EAAE,gBAAgB,CAAC,aAAa;YAC5C,mBAAmB,EAAE,qBAAqB,CAAC,IAAI;YAC/C,kBAAkB,EAAE,IAAI;YACxB,eAAe,EAAE,KAAK;YACtB,2BAA2B,EAAE,EAAE;SAChC;KACF;IACD,cAAc,EAAE,EAAE;IAClB,eAAe,EAAE,EAAE;IACnB,eAAe,EAAE,EAAE;IACnB,gBAAgB,EAAE,EAAE;IACpB,aAAa,EAAE,EAAE;IACjB,eAAe,EAAE,cAAc;CAChC,CAAC;AAGF;;;;GAIG;AACH,MAAM,CAAC,MAAM,aAAa,GAA8B;IACtD,gBAAgB,EAAE,uBAAuB;IACzC,0BAA0B,EAAE,wBAAwB,CAAC,iBAAiB,CAAC;IACvE,yBAAyB,EAAE,sBAAsB;IACjD,cAAc,EAAE,EAAE;IAClB,cAAc,EAAE,EAAE;IAClB,eAAe,EAAE,EAAE;IACnB,eAAe,EAAE,EAAE;IACnB,gBAAgB,EAAE,EAAE;IACpB,aAAa,EAAE,EAAE;IACjB,eAAe,EAAE,cAAc;CAChC,CAAC;AAGF;;;;GAIG;AACH,MAAM,CAAC,MAAM,OAAO,GAA8B;IAChD,GAAG,eAAe;IAClB,GAAG,SAAS;IACZ,GAAG,YAAY;IACf,yBAAyB,EAAE,0BAA0B;CACtD,CAAC;AAGF;;;;GAIG;AACH,MAAM,CAAC,MAAM,UAAU,GAA8B;IACnD,GAAG,YAAY;IACf,GAAG,UAAU;IACb,gBAAgB,EAAE,uBAAuB;IACzC,yBAAyB,EAAE,qBAAqB;CACjD,CAAC;AAGF;;;;;GAKG;AACH,MAAM,CAAC,MAAM,WAAW,GAA8B;IACpD,GAAG,YAAY;IACf,0BAA0B,EAAE,wBAAwB,CAAC;QACnD,GAAG,iBAAiB;QACpB,CAAC,6BAA6B,CAAC,OAAO,CAAC,EAAE;YACvC,SAAS,EAAE,mBAAmB,CAAC,KAAK;YACpC,WAAW,EAAE,IAAI;YACjB,oBAAoB,EAAE,kBAAkB,CAAC,MAAM;YAC/C,gBAAgB,EAAE,uBAAuB,CAAC,MAAM;YAChD,eAAe,EAAE;gBACf,UAAU,CAAC,WAAW,EAAE,EAAE,QAAQ,EAAE,sBAAsB,CAAC,SAAS,EAAE,CAAC;gBACvE,UAAU,CAAC,UAAU,EAAE,EAAE,QAAQ,EAAE,sBAAsB,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,eAAe,EAAE,CAAC,EAAE,CAAC;gBACtG,UAAU,CAAC,MAAM,EAAE,EAAE,SAAS,EAAE,KAAK,EAAE,WAAW,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,eAAe,EAAE,CAAC,EAAE,CAAC;gBAC9F,UAAU,CAAC,MAAM,CAAC;gBAClB,UAAU,CAAC,OAAO,CAAC;gBACnB,UAAU,CAAC,UAAU,EAAE,EAAE,gBAAgB,EAAE,IAAI,EAAE,CAAC;aACnD;YACD,cAAc,EAAE,MAAM;YACtB,iBAAiB,EAAE,IAAI;SACxB;QACD,CAAC,6BAA6B,CAAC,mBAAmB,CAAC,EAAE,IAAI;QACzD,CAAC,6BAA6B,CAAC,UAAU,CAAC,EAAE;YAC1C,eAAe,EAAE,KAAK;YACtB,qBAAqB,EAAE,IAAI;YAC3B,oBAAoB,EAAE,IAAI;SAC3B;KACF,CAAC;IACF,cAAc,EAAE;QACd,qBAAqB,EAAE;YACrB,YAAY,EAAE,gBAAgB,CAAC,aAAa;YAC5C,mBAAmB,EAAE,qBAAqB,CAAC,IAAI;YAC/C,kBAAkB,EAAE,IAAI;YACxB,eAAe,EAAE,KAAK;YACtB,2BAA2B,EAAE,EAAE;SAChC;KACF;CACF,CAAC;AAGF;;;;GAIG;AACH,MAAM,CAAC,MAAM,UAAU,GAA8B;IACnD,GAAG,YAAY;IACf,GAAG,UAAU;IACb,GAAG,cAAc;IACjB,yBAAyB,EAAE,qBAAqB;CACjD,CAAC;AAGF;;;;GAIG;AACH,MAAM,CAAC,MAAM,SAAS,GAA8B;IAClD,gBAAgB,EAAE,wBAAwB;IAC1C,0BAA0B,EAAE,wBAAwB,CAAC,eAAe,CAAC;IACrE,yBAAyB,EAAE,sBAAsB;IACjD,cAAc,EAAE,EAAE;IAClB,cAAc,EAAE,EAAE;IAClB,eAAe,EAAE,EAAE;IACnB,eAAe,EAAE,EAAE;IACnB,gBAAgB,EAAE,EAAE;IACpB,aAAa,EAAE,EAAE;IACjB,eAAe,EAAE,cAAc;CAChC,CAAC;AAGF;;;;;GAKG;AACH,MAAM,CAAC,MAAM,cAAc,GAA8B;IACvD,GAAG,YAAY;IACf,GAAG,cAAc;IACjB,yBAAyB,EAAE,qBAAqB;CACjD,CAAC;AAGF;;;;GAIG;AACH,MAAM,CAAC,MAAM,YAAY,GAA8B;IACrD,GAAG,YAAY;IACf,gBAAgB,EAAE,uBAAuB;IACzC,GAAG,UAAU;IACb,yBAAyB,EAAE,qBAAqB;CACjD,CAAC;AAGF;;;;;GAKG;AACH,MAAM,CAAC,MAAM,YAAY,GAA8B;IACrD,gBAAgB,EAAE,sBAAsB;IACxC,0BAA0B,EAAE,wBAAwB,CAAC;QACnD,GAAG,iBAAiB;QACpB,CAAC,6BAA6B,CAAC,aAAa,CAAC,EAAE,IAAI;QACnD,CAAC,6BAA6B,CAAC,UAAU,CAAC,EAAE;YAC1C,eAAe,EAAE,IAAI;YACrB,qBAAqB,EAAE,IAAI;YAC3B,oBAAoB,EAAE,IAAI;SAC3B;KACF,CAAC;IACF,yBAAyB,EAAE,uBAAuB;IAClD,cAAc,EAAE,EAAE;IAClB,cAAc,EAAE,EAAE;IAClB,eAAe,EAAE,EAAE;IACnB,eAAe,EAAE,EAAE;IACnB,gBAAgB,EAAE,EAAE;IACpB,aAAa,EAAE,EAAE;IACjB,eAAe,EAAE,cAAc;CAChC,CAAC;AAGF;;;;GAIG;AACH,MAAM,CAAC,MAAM,OAAO,GAA8B;IAChD,GAAG,YAAY;IACf,GAAG,OAAO;IACV,yBAAyB,EAAE,0BAA0B;CACtD,CAAC;AAGF;;;;GAIG;AACH,MAAM,CAAC,MAAM,aAAa,GAA8B;IACtD,GAAG,YAAY;IACf,GAAG,aAAa;IAChB,yBAAyB,EAAE,0BAA0B;CACtD,CAAC;AAGF;;;;GAIG;AACH,MAAM,CAAC,MAAM,eAAe,GAA8B;IACxD,GAAG,YAAY;IACf,GAAG,eAAe;IAClB,yBAAyB,EAAE,qBAAqB;CACjD,CAAC;AAGF;;;;GAIG;AACH,MAAM,CAAC,MAAM,SAAS,GAA8B;IAClD,GAAG,YAAY;IACf,gBAAgB,EAAE,uBAAuB;IACzC,0BAA0B,EAAE,eAAe;CAC5C,CAAC;AAGF;;;;GAIG;AACH,MAAM,CAAC,MAAM,OAAO,GAA8B;IAChD,gBAAgB,EAAE,wBAAwB;IAC1C,0BAA0B,EAAE,wBAAwB,CAAC,gBAAgB,CAAC;IACtE,yBAAyB,EAAE,0BAA0B;IACrD,cAAc,EAAE;QACd,qBAAqB,EAAE;YACrB,YAAY,EAAE,gBAAgB,CAAC,aAAa;YAC5C,mBAAmB,EAAE,qBAAqB,CAAC,IAAI;YAC/C,kBAAkB,EAAE,IAAI;YACxB,eAAe,EAAE,KAAK;YACtB,2BAA2B,EAAE,EAAE;SAChC;KACF;IACD,cAAc,EAAE,EAAE;IAClB,eAAe,EAAE,EAAE;IACnB,eAAe,EAAE,EAAE;IACnB,gBAAgB,EAAE,EAAE;IACpB,aAAa,EAAE,EAAE;IACjB,eAAe,EAAE,eAAe;CACjC,CAAC","sourcesContent":["/**\n * App Presets — `APP_*`\n *\n * Complete `AppConfiguration_Frontend` constants. Ready-to-use entry points.\n *\n * Usage:\n * ```\n * <ApplicationMainProvider options={{ baseFrontendConfig: APP_STANDARD }} />\n * ```\n */\n\nimport type { AppConfiguration_Frontend } from '@wildo-ai/saas-frontend-lib';\nimport {\n ApplicationLevelComponentType,\n SidebarSectionBehavior,\n SidebarResponsivePolicy,\n} from '@wildo-ai/saas-frontend-lib';\nimport { mergeAppShellWithBilling } from './billing-shell.presets';\nimport { HorizontalPlacement } from '@wildo-ai/presets-components-models';\nimport { CoreResourceType, CoreResourceOperation } from '@wildo-ai/saas-models';\nimport { ViewportBreakpoint } from '@wildo-ai/zod-decorators';\n\nimport {\n NAVIGATION_LAYOUT_STACK,\n NAVIGATION_LAYOUT_SPLIT,\n NAVIGATION_LAYOUT_TABS,\n NAVIGATION_LAYOUT_PAGED,\n NAVIGATION_LAYOUT_TRIPLE,\n} from './preset-navigation';\nimport {\n APP_SHELL_SIDEBAR,\n APP_SHELL_DENSE,\n APP_SHELL_MINIMAL,\n APP_SHELL_KIOSK,\n APP_SHELL_COCKPIT,\n APP_SHELL_STUDIO,\n navSection,\n} from './preset-shell';\nimport {\n KIT_MOBILE,\n KIT_WIZARD,\n KIT_COLLAB,\n KIT_CMS,\n KIT_ANALYTICS,\n KIT_MARKETPLACE,\n KIT_AI_COPILOT,\n KIT_ONBOARDING,\n KIT_DENSE,\n KIT_BULK_OPS,\n} from './preset-kits';\nimport {\n UI_DESIGN_SYSTEM_OCEAN,\n UI_DESIGN_SYSTEM_WARM,\n UI_DESIGN_SYSTEM_NEON,\n UI_DESIGN_SYSTEM_HACKER,\n UI_DESIGN_SYSTEM_EDITORIAL,\n UI_DESIGN_SYSTEM_CORPORATE,\n} from './preset-design-system';\nimport { ERROR_STANDARD, ERROR_RESILIENT } from './preset-error-pages';\n\n\n/**\n * Standard SaaS application — stack layout, sidebar, ocean design.\n *\n * Best for: task managers, project tools, CRMs, SaaS dashboards, collaboration apps.\n */\nexport const APP_STANDARD: AppConfiguration_Frontend = {\n navigationLayout: NAVIGATION_LAYOUT_STACK,\n appComponentsConfiguration: mergeAppShellWithBilling(APP_SHELL_SIDEBAR),\n designSystemConfiguration: UI_DESIGN_SYSTEM_OCEAN,\n homeDefinition: {},\n compositeViews: [],\n onboardingViews: [],\n fullCustomViews: [],\n flowsActorsViews: [],\n guidanceFlows: [],\n errorPageConfig: ERROR_STANDARD,\n};\n\n\n/**\n * List-detail pattern — split panel, dense shell, nav rail.\n *\n * Best for: admin panels, email clients, data-heavy management tools.\n */\nexport const APP_LIST_DETAIL: AppConfiguration_Frontend = {\n navigationLayout: NAVIGATION_LAYOUT_SPLIT,\n appComponentsConfiguration: mergeAppShellWithBilling(APP_SHELL_DENSE),\n designSystemConfiguration: UI_DESIGN_SYSTEM_OCEAN,\n homeDefinition: {\n resourceOperationPath: {\n resourceType: CoreResourceType.ORGANIZATIONS,\n operationIdentifier: CoreResourceOperation.LIST,\n isOperationDefault: true,\n isBulkOperation: false,\n parentResourcesRequirements: [],\n },\n },\n compositeViews: [],\n onboardingViews: [],\n fullCustomViews: [],\n flowsActorsViews: [],\n guidanceFlows: [],\n errorPageConfig: ERROR_STANDARD,\n};\n\n\n/**\n * Dashboard-first — stack layout, minimal shell, home is a blank slate.\n *\n * Best for: analytics dashboards, monitoring tools, reporting apps.\n */\nexport const APP_DASHBOARD: AppConfiguration_Frontend = {\n navigationLayout: NAVIGATION_LAYOUT_STACK,\n appComponentsConfiguration: mergeAppShellWithBilling(APP_SHELL_MINIMAL),\n designSystemConfiguration: UI_DESIGN_SYSTEM_OCEAN,\n homeDefinition: {},\n compositeViews: [],\n onboardingViews: [],\n fullCustomViews: [],\n flowsActorsViews: [],\n guidanceFlows: [],\n errorPageConfig: ERROR_STANDARD,\n};\n\n\n/**\n * CRM archetype — split layout, dense shell, corporate design, bulk ops.\n *\n * Best for: sales CRMs, contact management, deal pipelines.\n */\nexport const APP_CRM: AppConfiguration_Frontend = {\n ...APP_LIST_DETAIL,\n ...KIT_DENSE,\n ...KIT_BULK_OPS,\n designSystemConfiguration: UI_DESIGN_SYSTEM_CORPORATE,\n};\n\n\n/**\n * Mobile-first — paged layout, mobile shell, warm design.\n *\n * Best for: PWAs, consumer mobile apps, field tools.\n */\nexport const APP_MOBILE: AppConfiguration_Frontend = {\n ...APP_STANDARD,\n ...KIT_MOBILE,\n navigationLayout: NAVIGATION_LAYOUT_PAGED,\n designSystemConfiguration: UI_DESIGN_SYSTEM_WARM,\n};\n\n\n/**\n * Project management — cockpit shell with workspace switcher, team awareness,\n * project groups, and collaboration-ready sidebar.\n *\n * Best for: Asana, Linear, Notion-like project tools.\n */\nexport const APP_PROJECT: AppConfiguration_Frontend = {\n ...APP_STANDARD,\n appComponentsConfiguration: mergeAppShellWithBilling({\n ...APP_SHELL_COCKPIT,\n [ApplicationLevelComponentType.SIDEBAR]: {\n placement: HorizontalPlacement.START,\n collapsible: true,\n responsiveBreakpoint: ViewportBreakpoint.MOBILE,\n responsivePolicy: SidebarResponsivePolicy.BURGER,\n contentSections: [\n navSection('favorites', { behavior: SidebarSectionBehavior.FAVORITES }),\n navSection('projects', { behavior: SidebarSectionBehavior.DYNAMIC, nested: true, maxNestingDepth: 2 }),\n navSection('main', { showLabel: false, collapsible: false, nested: true, maxNestingDepth: 2 }),\n navSection('team'),\n navSection('tools'),\n navSection('settings', { defaultCollapsed: true }),\n ],\n defaultSection: \"main\",\n showUncategorized: true,\n },\n [ApplicationLevelComponentType.NOTIFICATION_CENTER]: true,\n [ApplicationLevelComponentType.STATUS_BAR]: {\n showMemoryUsage: false,\n showNotificationCount: true,\n showConnectionStatus: true,\n },\n }),\n homeDefinition: {\n resourceOperationPath: {\n resourceType: CoreResourceType.ORGANIZATIONS,\n operationIdentifier: CoreResourceOperation.LIST,\n isOperationDefault: true,\n isBulkOperation: false,\n parentResourcesRequirements: [],\n },\n },\n};\n\n\n/**\n * Wizard flow — step-by-step forms, minimal shell with progress toolbar.\n *\n * Best for: forms, surveys, insurance, onboarding.\n */\nexport const APP_WIZARD: AppConfiguration_Frontend = {\n ...APP_STANDARD,\n ...KIT_WIZARD,\n ...KIT_ONBOARDING,\n designSystemConfiguration: UI_DESIGN_SYSTEM_WARM,\n};\n\n\n/**\n * Email client — triple layout, dense shell.\n *\n * Best for: Gmail-like, Outlook-like.\n */\nexport const APP_EMAIL: AppConfiguration_Frontend = {\n navigationLayout: NAVIGATION_LAYOUT_TRIPLE,\n appComponentsConfiguration: mergeAppShellWithBilling(APP_SHELL_DENSE),\n designSystemConfiguration: UI_DESIGN_SYSTEM_OCEAN,\n homeDefinition: {},\n compositeViews: [],\n onboardingViews: [],\n fullCustomViews: [],\n flowsActorsViews: [],\n guidanceFlows: [],\n errorPageConfig: ERROR_STANDARD,\n};\n\n\n/**\n * AI copilot — companion layout with persistent AI panel, assistant sidebar\n * entry point, neon design.\n *\n * Best for: AI chat, co-pilot, ChatGPT-like.\n */\nexport const APP_AI_COPILOT: AppConfiguration_Frontend = {\n ...APP_STANDARD,\n ...KIT_AI_COPILOT,\n designSystemConfiguration: UI_DESIGN_SYSTEM_NEON,\n};\n\n\n/**\n * Helpdesk — split layout, sidebar with team section, warm design.\n *\n * Best for: Zendesk-like, Intercom-like, customer support tools.\n */\nexport const APP_HELPDESK: AppConfiguration_Frontend = {\n ...APP_STANDARD,\n navigationLayout: NAVIGATION_LAYOUT_SPLIT,\n ...KIT_COLLAB,\n designSystemConfiguration: UI_DESIGN_SYSTEM_WARM,\n};\n\n\n/**\n * Developer tool — tabbed layout, cockpit shell with control panel +\n * memory display, hacker design.\n *\n * Best for: API platforms, internal tools, developer portals.\n */\nexport const APP_DEV_TOOL: AppConfiguration_Frontend = {\n navigationLayout: NAVIGATION_LAYOUT_TABS,\n appComponentsConfiguration: mergeAppShellWithBilling({\n ...APP_SHELL_COCKPIT,\n [ApplicationLevelComponentType.CONTROL_PANEL]: true,\n [ApplicationLevelComponentType.STATUS_BAR]: {\n showMemoryUsage: true,\n showNotificationCount: true,\n showConnectionStatus: true,\n },\n }),\n designSystemConfiguration: UI_DESIGN_SYSTEM_HACKER,\n homeDefinition: {},\n compositeViews: [],\n onboardingViews: [],\n fullCustomViews: [],\n flowsActorsViews: [],\n guidanceFlows: [],\n errorPageConfig: ERROR_STANDARD,\n};\n\n\n/**\n * CMS — tabbed multi-document, centered shell, editorial design.\n *\n * Best for: blog platforms, documentation sites, content management.\n */\nexport const APP_CMS: AppConfiguration_Frontend = {\n ...APP_STANDARD,\n ...KIT_CMS,\n designSystemConfiguration: UI_DESIGN_SYSTEM_EDITORIAL,\n};\n\n\n/**\n * Analytics — stack layout, rail shell, corporate design, control panel.\n *\n * Best for: BI dashboards, Mixpanel-like, monitoring and reporting.\n */\nexport const APP_ANALYTICS: AppConfiguration_Frontend = {\n ...APP_STANDARD,\n ...KIT_ANALYTICS,\n designSystemConfiguration: UI_DESIGN_SYSTEM_CORPORATE,\n};\n\n\n/**\n * Marketplace — stack layout, sidebar with omnibox search, warm design.\n *\n * Best for: directories, catalogs, Airbnb-like.\n */\nexport const APP_MARKETPLACE: AppConfiguration_Frontend = {\n ...APP_STANDARD,\n ...KIT_MARKETPLACE,\n designSystemConfiguration: UI_DESIGN_SYSTEM_WARM,\n};\n\n\n/**\n * Kiosk — paged layout, no chrome. Content only.\n *\n * Best for: POS, public displays, embedded widgets.\n */\nexport const APP_KIOSK: AppConfiguration_Frontend = {\n ...APP_STANDARD,\n navigationLayout: NAVIGATION_LAYOUT_PAGED,\n appComponentsConfiguration: APP_SHELL_KIOSK,\n};\n\n\n/**\n * ERP — triple layout, studio shell with inspector panel, corporate design.\n *\n * Best for: SAP-like, NetSuite-like, enterprise resource planning.\n */\nexport const APP_ERP: AppConfiguration_Frontend = {\n navigationLayout: NAVIGATION_LAYOUT_TRIPLE,\n appComponentsConfiguration: mergeAppShellWithBilling(APP_SHELL_STUDIO),\n designSystemConfiguration: UI_DESIGN_SYSTEM_CORPORATE,\n homeDefinition: {\n resourceOperationPath: {\n resourceType: CoreResourceType.ORGANIZATIONS,\n operationIdentifier: CoreResourceOperation.LIST,\n isOperationDefault: true,\n isBulkOperation: false,\n parentResourcesRequirements: [],\n },\n },\n compositeViews: [],\n onboardingViews: [],\n fullCustomViews: [],\n flowsActorsViews: [],\n guidanceFlows: [],\n errorPageConfig: ERROR_RESILIENT,\n};\n"]}
1
+ {"version":3,"file":"presets.js","sourceRoot":"","sources":["../../../../src/config/presets.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAGH,OAAO,EACL,6BAA6B,EAC7B,sBAAsB,EACtB,uBAAuB,GACxB,MAAM,6BAA6B,CAAC;AACrC,OAAO,EAAE,wBAAwB,EAAE,MAAM,yBAAyB,CAAC;AACnE,OAAO,EAAE,mBAAmB,EAAE,MAAM,qCAAqC,CAAC;AAC1E,OAAO,EAAE,gBAAgB,EAAE,qBAAqB,EAAE,MAAM,uBAAuB,CAAC;AAChF,OAAO,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AAE9D,OAAO,EACL,uBAAuB,EACvB,uBAAuB,EACvB,sBAAsB,EACtB,uBAAuB,EACvB,wBAAwB,GACzB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EACL,iBAAiB,EACjB,eAAe,EACf,iBAAiB,EACjB,eAAe,EACf,iBAAiB,EACjB,gBAAgB,EAChB,UAAU,GACX,MAAM,gBAAgB,CAAC;AACxB,OAAO,EACL,UAAU,EACV,UAAU,EACV,UAAU,EACV,OAAO,EACP,aAAa,EACb,eAAe,EACf,cAAc,EACd,cAAc,EACd,SAAS,EACT,YAAY,GACb,MAAM,eAAe,CAAC;AACvB,OAAO,EACL,sBAAsB,EACtB,qBAAqB,EACrB,qBAAqB,EACrB,uBAAuB,EACvB,0BAA0B,EAC1B,0BAA0B,GAC3B,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,cAAc,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAGvE;;;;GAIG;AACH,MAAM,CAAC,MAAM,YAAY,GAA8B;IACrD,gBAAgB,EAAE,uBAAuB;IACzC,0BAA0B,EAAE,wBAAwB,CAAC,iBAAiB,CAAC;IACvE,yBAAyB,EAAE,sBAAsB;IACjD,cAAc,EAAE,EAAE;IAClB,cAAc,EAAE,EAAE;IAClB,eAAe,EAAE,EAAE;IACnB,eAAe,EAAE,EAAE;IACnB,gBAAgB,EAAE,EAAE;IACpB,aAAa,EAAE,EAAE;IACjB,eAAe,EAAE,cAAc;CAChC,CAAC;AAGF;;;;GAIG;AACH,MAAM,CAAC,MAAM,eAAe,GAA8B;IACxD,gBAAgB,EAAE,uBAAuB;IACzC,0BAA0B,EAAE,wBAAwB,CAAC,eAAe,CAAC;IACrE,yBAAyB,EAAE,sBAAsB;IACjD,cAAc,EAAE;QACd,qBAAqB,EAAE;YACrB,YAAY,EAAE,gBAAgB,CAAC,aAAa;YAC5C,mBAAmB,EAAE,qBAAqB,CAAC,IAAI;YAC/C,kBAAkB,EAAE,IAAI;YACxB,eAAe,EAAE,KAAK;YACtB,2BAA2B,EAAE,EAAE;SAChC;KACF;IACD,cAAc,EAAE,EAAE;IAClB,eAAe,EAAE,EAAE;IACnB,eAAe,EAAE,EAAE;IACnB,gBAAgB,EAAE,EAAE;IACpB,aAAa,EAAE,EAAE;IACjB,eAAe,EAAE,cAAc;CAChC,CAAC;AAGF;;;;GAIG;AACH,MAAM,CAAC,MAAM,aAAa,GAA8B;IACtD,gBAAgB,EAAE,uBAAuB;IACzC,0BAA0B,EAAE,wBAAwB,CAAC,iBAAiB,CAAC;IACvE,yBAAyB,EAAE,sBAAsB;IACjD,cAAc,EAAE,EAAE;IAClB,cAAc,EAAE,EAAE;IAClB,eAAe,EAAE,EAAE;IACnB,eAAe,EAAE,EAAE;IACnB,gBAAgB,EAAE,EAAE;IACpB,aAAa,EAAE,EAAE;IACjB,eAAe,EAAE,cAAc;CAChC,CAAC;AAGF;;;;GAIG;AACH,MAAM,CAAC,MAAM,OAAO,GAA8B;IAChD,GAAG,eAAe;IAClB,GAAG,SAAS;IACZ,GAAG,YAAY;IACf,yBAAyB,EAAE,0BAA0B;CACtD,CAAC;AAGF;;;;GAIG;AACH,MAAM,CAAC,MAAM,UAAU,GAA8B;IACnD,GAAG,YAAY;IACf,GAAG,UAAU;IACb,gBAAgB,EAAE,uBAAuB;IACzC,yBAAyB,EAAE,qBAAqB;CACjD,CAAC;AAGF;;;;;GAKG;AACH,MAAM,CAAC,MAAM,WAAW,GAA8B;IACpD,GAAG,YAAY;IACf,0BAA0B,EAAE,wBAAwB,CAAC;QACnD,GAAG,iBAAiB;QACpB,CAAC,6BAA6B,CAAC,OAAO,CAAC,EAAE;YACvC,SAAS,EAAE,mBAAmB,CAAC,KAAK;YACpC,WAAW,EAAE,IAAI;YACjB,oBAAoB,EAAE,kBAAkB,CAAC,MAAM;YAC/C,gBAAgB,EAAE,uBAAuB,CAAC,MAAM;YAChD,eAAe,EAAE;gBACf,UAAU,CAAC,WAAW,EAAE,EAAE,QAAQ,EAAE,sBAAsB,CAAC,SAAS,EAAE,CAAC;gBACvE,UAAU,CAAC,UAAU,EAAE,EAAE,QAAQ,EAAE,sBAAsB,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,eAAe,EAAE,CAAC,EAAE,CAAC;gBACtG,UAAU,CAAC,MAAM,EAAE,EAAE,SAAS,EAAE,KAAK,EAAE,WAAW,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,eAAe,EAAE,CAAC,EAAE,CAAC;gBAC9F,UAAU,CAAC,MAAM,CAAC;gBAClB,UAAU,CAAC,OAAO,CAAC;gBACnB,UAAU,CAAC,UAAU,EAAE,EAAE,gBAAgB,EAAE,IAAI,EAAE,CAAC;aACnD;YACD,cAAc,EAAE,MAAM;SACvB;QACD,CAAC,6BAA6B,CAAC,mBAAmB,CAAC,EAAE,IAAI;QACzD,CAAC,6BAA6B,CAAC,UAAU,CAAC,EAAE;YAC1C,eAAe,EAAE,KAAK;YACtB,qBAAqB,EAAE,IAAI;YAC3B,oBAAoB,EAAE,IAAI;SAC3B;KACF,CAAC;IACF,cAAc,EAAE;QACd,qBAAqB,EAAE;YACrB,YAAY,EAAE,gBAAgB,CAAC,aAAa;YAC5C,mBAAmB,EAAE,qBAAqB,CAAC,IAAI;YAC/C,kBAAkB,EAAE,IAAI;YACxB,eAAe,EAAE,KAAK;YACtB,2BAA2B,EAAE,EAAE;SAChC;KACF;CACF,CAAC;AAGF;;;;GAIG;AACH,MAAM,CAAC,MAAM,UAAU,GAA8B;IACnD,GAAG,YAAY;IACf,GAAG,UAAU;IACb,GAAG,cAAc;IACjB,yBAAyB,EAAE,qBAAqB;CACjD,CAAC;AAGF;;;;GAIG;AACH,MAAM,CAAC,MAAM,SAAS,GAA8B;IAClD,gBAAgB,EAAE,wBAAwB;IAC1C,0BAA0B,EAAE,wBAAwB,CAAC,eAAe,CAAC;IACrE,yBAAyB,EAAE,sBAAsB;IACjD,cAAc,EAAE,EAAE;IAClB,cAAc,EAAE,EAAE;IAClB,eAAe,EAAE,EAAE;IACnB,eAAe,EAAE,EAAE;IACnB,gBAAgB,EAAE,EAAE;IACpB,aAAa,EAAE,EAAE;IACjB,eAAe,EAAE,cAAc;CAChC,CAAC;AAGF;;;;;GAKG;AACH,MAAM,CAAC,MAAM,cAAc,GAA8B;IACvD,GAAG,YAAY;IACf,GAAG,cAAc;IACjB,yBAAyB,EAAE,qBAAqB;CACjD,CAAC;AAGF;;;;GAIG;AACH,MAAM,CAAC,MAAM,YAAY,GAA8B;IACrD,GAAG,YAAY;IACf,gBAAgB,EAAE,uBAAuB;IACzC,GAAG,UAAU;IACb,yBAAyB,EAAE,qBAAqB;CACjD,CAAC;AAGF;;;;;GAKG;AACH,MAAM,CAAC,MAAM,YAAY,GAA8B;IACrD,gBAAgB,EAAE,sBAAsB;IACxC,0BAA0B,EAAE,wBAAwB,CAAC;QACnD,GAAG,iBAAiB;QACpB,CAAC,6BAA6B,CAAC,aAAa,CAAC,EAAE,IAAI;QACnD,CAAC,6BAA6B,CAAC,UAAU,CAAC,EAAE;YAC1C,eAAe,EAAE,IAAI;YACrB,qBAAqB,EAAE,IAAI;YAC3B,oBAAoB,EAAE,IAAI;SAC3B;KACF,CAAC;IACF,yBAAyB,EAAE,uBAAuB;IAClD,cAAc,EAAE,EAAE;IAClB,cAAc,EAAE,EAAE;IAClB,eAAe,EAAE,EAAE;IACnB,eAAe,EAAE,EAAE;IACnB,gBAAgB,EAAE,EAAE;IACpB,aAAa,EAAE,EAAE;IACjB,eAAe,EAAE,cAAc;CAChC,CAAC;AAGF;;;;GAIG;AACH,MAAM,CAAC,MAAM,OAAO,GAA8B;IAChD,GAAG,YAAY;IACf,GAAG,OAAO;IACV,yBAAyB,EAAE,0BAA0B;CACtD,CAAC;AAGF;;;;GAIG;AACH,MAAM,CAAC,MAAM,aAAa,GAA8B;IACtD,GAAG,YAAY;IACf,GAAG,aAAa;IAChB,yBAAyB,EAAE,0BAA0B;CACtD,CAAC;AAGF;;;;GAIG;AACH,MAAM,CAAC,MAAM,eAAe,GAA8B;IACxD,GAAG,YAAY;IACf,GAAG,eAAe;IAClB,yBAAyB,EAAE,qBAAqB;CACjD,CAAC;AAGF;;;;GAIG;AACH,MAAM,CAAC,MAAM,SAAS,GAA8B;IAClD,GAAG,YAAY;IACf,gBAAgB,EAAE,uBAAuB;IACzC,0BAA0B,EAAE,eAAe;CAC5C,CAAC;AAGF;;;;GAIG;AACH,MAAM,CAAC,MAAM,OAAO,GAA8B;IAChD,gBAAgB,EAAE,wBAAwB;IAC1C,0BAA0B,EAAE,wBAAwB,CAAC,gBAAgB,CAAC;IACtE,yBAAyB,EAAE,0BAA0B;IACrD,cAAc,EAAE;QACd,qBAAqB,EAAE;YACrB,YAAY,EAAE,gBAAgB,CAAC,aAAa;YAC5C,mBAAmB,EAAE,qBAAqB,CAAC,IAAI;YAC/C,kBAAkB,EAAE,IAAI;YACxB,eAAe,EAAE,KAAK;YACtB,2BAA2B,EAAE,EAAE;SAChC;KACF;IACD,cAAc,EAAE,EAAE;IAClB,eAAe,EAAE,EAAE;IACnB,eAAe,EAAE,EAAE;IACnB,gBAAgB,EAAE,EAAE;IACpB,aAAa,EAAE,EAAE;IACjB,eAAe,EAAE,eAAe;CACjC,CAAC","sourcesContent":["/**\n * App Presets — `APP_*`\n *\n * Complete `AppConfiguration_Frontend` constants. Ready-to-use entry points.\n *\n * Usage:\n * ```\n * <ApplicationMainProvider options={{ baseFrontendConfig: APP_STANDARD }} />\n * ```\n */\n\nimport type { AppConfiguration_Frontend } from '@wildo-ai/saas-frontend-lib';\nimport {\n ApplicationLevelComponentType,\n SidebarSectionBehavior,\n SidebarResponsivePolicy,\n} from '@wildo-ai/saas-frontend-lib';\nimport { mergeAppShellWithBilling } from './billing-shell.presets';\nimport { HorizontalPlacement } from '@wildo-ai/presets-components-models';\nimport { CoreResourceType, CoreResourceOperation } from '@wildo-ai/saas-models';\nimport { ViewportBreakpoint } from '@wildo-ai/zod-decorators';\n\nimport {\n NAVIGATION_LAYOUT_STACK,\n NAVIGATION_LAYOUT_SPLIT,\n NAVIGATION_LAYOUT_TABS,\n NAVIGATION_LAYOUT_PAGED,\n NAVIGATION_LAYOUT_TRIPLE,\n} from './preset-navigation';\nimport {\n APP_SHELL_SIDEBAR,\n APP_SHELL_DENSE,\n APP_SHELL_MINIMAL,\n APP_SHELL_KIOSK,\n APP_SHELL_COCKPIT,\n APP_SHELL_STUDIO,\n navSection,\n} from './preset-shell';\nimport {\n KIT_MOBILE,\n KIT_WIZARD,\n KIT_COLLAB,\n KIT_CMS,\n KIT_ANALYTICS,\n KIT_MARKETPLACE,\n KIT_AI_COPILOT,\n KIT_ONBOARDING,\n KIT_DENSE,\n KIT_BULK_OPS,\n} from './preset-kits';\nimport {\n UI_DESIGN_SYSTEM_OCEAN,\n UI_DESIGN_SYSTEM_WARM,\n UI_DESIGN_SYSTEM_NEON,\n UI_DESIGN_SYSTEM_HACKER,\n UI_DESIGN_SYSTEM_EDITORIAL,\n UI_DESIGN_SYSTEM_CORPORATE,\n} from './preset-design-system';\nimport { ERROR_STANDARD, ERROR_RESILIENT } from './preset-error-pages';\n\n\n/**\n * Standard SaaS application — stack layout, sidebar, ocean design.\n *\n * Best for: task managers, project tools, CRMs, SaaS dashboards, collaboration apps.\n */\nexport const APP_STANDARD: AppConfiguration_Frontend = {\n navigationLayout: NAVIGATION_LAYOUT_STACK,\n appComponentsConfiguration: mergeAppShellWithBilling(APP_SHELL_SIDEBAR),\n designSystemConfiguration: UI_DESIGN_SYSTEM_OCEAN,\n homeDefinition: {},\n compositeViews: [],\n onboardingViews: [],\n fullCustomViews: [],\n flowsActorsViews: [],\n guidanceFlows: [],\n errorPageConfig: ERROR_STANDARD,\n};\n\n\n/**\n * List-detail pattern — split panel, dense shell, nav rail.\n *\n * Best for: admin panels, email clients, data-heavy management tools.\n */\nexport const APP_LIST_DETAIL: AppConfiguration_Frontend = {\n navigationLayout: NAVIGATION_LAYOUT_SPLIT,\n appComponentsConfiguration: mergeAppShellWithBilling(APP_SHELL_DENSE),\n designSystemConfiguration: UI_DESIGN_SYSTEM_OCEAN,\n homeDefinition: {\n resourceOperationPath: {\n resourceType: CoreResourceType.ORGANIZATIONS,\n operationIdentifier: CoreResourceOperation.LIST,\n isOperationDefault: true,\n isBulkOperation: false,\n parentResourcesRequirements: [],\n },\n },\n compositeViews: [],\n onboardingViews: [],\n fullCustomViews: [],\n flowsActorsViews: [],\n guidanceFlows: [],\n errorPageConfig: ERROR_STANDARD,\n};\n\n\n/**\n * Dashboard-first — stack layout, minimal shell, home is a blank slate.\n *\n * Best for: analytics dashboards, monitoring tools, reporting apps.\n */\nexport const APP_DASHBOARD: AppConfiguration_Frontend = {\n navigationLayout: NAVIGATION_LAYOUT_STACK,\n appComponentsConfiguration: mergeAppShellWithBilling(APP_SHELL_MINIMAL),\n designSystemConfiguration: UI_DESIGN_SYSTEM_OCEAN,\n homeDefinition: {},\n compositeViews: [],\n onboardingViews: [],\n fullCustomViews: [],\n flowsActorsViews: [],\n guidanceFlows: [],\n errorPageConfig: ERROR_STANDARD,\n};\n\n\n/**\n * CRM archetype — split layout, dense shell, corporate design, bulk ops.\n *\n * Best for: sales CRMs, contact management, deal pipelines.\n */\nexport const APP_CRM: AppConfiguration_Frontend = {\n ...APP_LIST_DETAIL,\n ...KIT_DENSE,\n ...KIT_BULK_OPS,\n designSystemConfiguration: UI_DESIGN_SYSTEM_CORPORATE,\n};\n\n\n/**\n * Mobile-first — paged layout, mobile shell, warm design.\n *\n * Best for: PWAs, consumer mobile apps, field tools.\n */\nexport const APP_MOBILE: AppConfiguration_Frontend = {\n ...APP_STANDARD,\n ...KIT_MOBILE,\n navigationLayout: NAVIGATION_LAYOUT_PAGED,\n designSystemConfiguration: UI_DESIGN_SYSTEM_WARM,\n};\n\n\n/**\n * Project management — cockpit shell with workspace switcher, team awareness,\n * project groups, and collaboration-ready sidebar.\n *\n * Best for: Asana, Linear, Notion-like project tools.\n */\nexport const APP_PROJECT: AppConfiguration_Frontend = {\n ...APP_STANDARD,\n appComponentsConfiguration: mergeAppShellWithBilling({\n ...APP_SHELL_COCKPIT,\n [ApplicationLevelComponentType.SIDEBAR]: {\n placement: HorizontalPlacement.START,\n collapsible: true,\n responsiveBreakpoint: ViewportBreakpoint.MOBILE,\n responsivePolicy: SidebarResponsivePolicy.BURGER,\n contentSections: [\n navSection('favorites', { behavior: SidebarSectionBehavior.FAVORITES }),\n navSection('projects', { behavior: SidebarSectionBehavior.DYNAMIC, nested: true, maxNestingDepth: 2 }),\n navSection('main', { showLabel: false, collapsible: false, nested: true, maxNestingDepth: 2 }),\n navSection('team'),\n navSection('tools'),\n navSection('settings', { defaultCollapsed: true }),\n ],\n defaultSection: \"main\",\n },\n [ApplicationLevelComponentType.NOTIFICATION_CENTER]: true,\n [ApplicationLevelComponentType.STATUS_BAR]: {\n showMemoryUsage: false,\n showNotificationCount: true,\n showConnectionStatus: true,\n },\n }),\n homeDefinition: {\n resourceOperationPath: {\n resourceType: CoreResourceType.ORGANIZATIONS,\n operationIdentifier: CoreResourceOperation.LIST,\n isOperationDefault: true,\n isBulkOperation: false,\n parentResourcesRequirements: [],\n },\n },\n};\n\n\n/**\n * Wizard flow — step-by-step forms, minimal shell with progress toolbar.\n *\n * Best for: forms, surveys, insurance, onboarding.\n */\nexport const APP_WIZARD: AppConfiguration_Frontend = {\n ...APP_STANDARD,\n ...KIT_WIZARD,\n ...KIT_ONBOARDING,\n designSystemConfiguration: UI_DESIGN_SYSTEM_WARM,\n};\n\n\n/**\n * Email client — triple layout, dense shell.\n *\n * Best for: Gmail-like, Outlook-like.\n */\nexport const APP_EMAIL: AppConfiguration_Frontend = {\n navigationLayout: NAVIGATION_LAYOUT_TRIPLE,\n appComponentsConfiguration: mergeAppShellWithBilling(APP_SHELL_DENSE),\n designSystemConfiguration: UI_DESIGN_SYSTEM_OCEAN,\n homeDefinition: {},\n compositeViews: [],\n onboardingViews: [],\n fullCustomViews: [],\n flowsActorsViews: [],\n guidanceFlows: [],\n errorPageConfig: ERROR_STANDARD,\n};\n\n\n/**\n * AI copilot — companion layout with persistent AI panel, assistant sidebar\n * entry point, neon design.\n *\n * Best for: AI chat, co-pilot, ChatGPT-like.\n */\nexport const APP_AI_COPILOT: AppConfiguration_Frontend = {\n ...APP_STANDARD,\n ...KIT_AI_COPILOT,\n designSystemConfiguration: UI_DESIGN_SYSTEM_NEON,\n};\n\n\n/**\n * Helpdesk — split layout, sidebar with team section, warm design.\n *\n * Best for: Zendesk-like, Intercom-like, customer support tools.\n */\nexport const APP_HELPDESK: AppConfiguration_Frontend = {\n ...APP_STANDARD,\n navigationLayout: NAVIGATION_LAYOUT_SPLIT,\n ...KIT_COLLAB,\n designSystemConfiguration: UI_DESIGN_SYSTEM_WARM,\n};\n\n\n/**\n * Developer tool — tabbed layout, cockpit shell with control panel +\n * memory display, hacker design.\n *\n * Best for: API platforms, internal tools, developer portals.\n */\nexport const APP_DEV_TOOL: AppConfiguration_Frontend = {\n navigationLayout: NAVIGATION_LAYOUT_TABS,\n appComponentsConfiguration: mergeAppShellWithBilling({\n ...APP_SHELL_COCKPIT,\n [ApplicationLevelComponentType.CONTROL_PANEL]: true,\n [ApplicationLevelComponentType.STATUS_BAR]: {\n showMemoryUsage: true,\n showNotificationCount: true,\n showConnectionStatus: true,\n },\n }),\n designSystemConfiguration: UI_DESIGN_SYSTEM_HACKER,\n homeDefinition: {},\n compositeViews: [],\n onboardingViews: [],\n fullCustomViews: [],\n flowsActorsViews: [],\n guidanceFlows: [],\n errorPageConfig: ERROR_STANDARD,\n};\n\n\n/**\n * CMS — tabbed multi-document, centered shell, editorial design.\n *\n * Best for: blog platforms, documentation sites, content management.\n */\nexport const APP_CMS: AppConfiguration_Frontend = {\n ...APP_STANDARD,\n ...KIT_CMS,\n designSystemConfiguration: UI_DESIGN_SYSTEM_EDITORIAL,\n};\n\n\n/**\n * Analytics — stack layout, rail shell, corporate design, control panel.\n *\n * Best for: BI dashboards, Mixpanel-like, monitoring and reporting.\n */\nexport const APP_ANALYTICS: AppConfiguration_Frontend = {\n ...APP_STANDARD,\n ...KIT_ANALYTICS,\n designSystemConfiguration: UI_DESIGN_SYSTEM_CORPORATE,\n};\n\n\n/**\n * Marketplace — stack layout, sidebar with omnibox search, warm design.\n *\n * Best for: directories, catalogs, Airbnb-like.\n */\nexport const APP_MARKETPLACE: AppConfiguration_Frontend = {\n ...APP_STANDARD,\n ...KIT_MARKETPLACE,\n designSystemConfiguration: UI_DESIGN_SYSTEM_WARM,\n};\n\n\n/**\n * Kiosk — paged layout, no chrome. Content only.\n *\n * Best for: POS, public displays, embedded widgets.\n */\nexport const APP_KIOSK: AppConfiguration_Frontend = {\n ...APP_STANDARD,\n navigationLayout: NAVIGATION_LAYOUT_PAGED,\n appComponentsConfiguration: APP_SHELL_KIOSK,\n};\n\n\n/**\n * ERP — triple layout, studio shell with inspector panel, corporate design.\n *\n * Best for: SAP-like, NetSuite-like, enterprise resource planning.\n */\nexport const APP_ERP: AppConfiguration_Frontend = {\n navigationLayout: NAVIGATION_LAYOUT_TRIPLE,\n appComponentsConfiguration: mergeAppShellWithBilling(APP_SHELL_STUDIO),\n designSystemConfiguration: UI_DESIGN_SYSTEM_CORPORATE,\n homeDefinition: {\n resourceOperationPath: {\n resourceType: CoreResourceType.ORGANIZATIONS,\n operationIdentifier: CoreResourceOperation.LIST,\n isOperationDefault: true,\n isBulkOperation: false,\n parentResourcesRequirements: [],\n },\n },\n compositeViews: [],\n onboardingViews: [],\n fullCustomViews: [],\n flowsActorsViews: [],\n guidanceFlows: [],\n errorPageConfig: ERROR_RESILIENT,\n};\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"application.resource-presets.d.ts","sourceRoot":"","sources":["../../../../../src/config/resources/application.resource-presets.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,6BAA6B,CAAC;AAiDtE;;;;;;;;;;GAUG;AAEH,wBAAgB,2BAA2B,IAAI,OAAO,CAAC,kBAAkB,CAAC,CAqDzE;AAED,wBAAgB,4BAA4B,CAAC,IAAI,EAAE,OAAO,CAAC,kBAAkB,CAAC,GAAG,OAAO,CAAC,kBAAkB,CAAC,CA0P3G;AAED,eAAO,MAAM,sBAAsB,6BAAgC,CAAC;AACpE,eAAO,MAAM,uBAAuB,6BAAuD,CAAC;AAE5F,eAAO,MAAM,4CAA4C,gGAAyC,CAAC;AACnG,eAAO,MAAM,6CAA6C,gGAA0C,CAAC;AACrG,eAAO,MAAM,0CAA0C,gGAAmD,CAAC;AAC3G,eAAO,MAAM,0CAA0C,gGAAmD,CAAC;AAC3G,eAAO,MAAM,0CAA0C,gGAAmD,CAAC;AAC3G,eAAO,MAAM,4CAA4C,gGAAmD,CAAC"}
1
+ {"version":3,"file":"application.resource-presets.d.ts","sourceRoot":"","sources":["../../../../../src/config/resources/application.resource-presets.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,6BAA6B,CAAC;AAoDtE;;;;;;;;;;GAUG;AAEH,wBAAgB,2BAA2B,IAAI,OAAO,CAAC,kBAAkB,CAAC,CAmDzE;AAED,wBAAgB,4BAA4B,CAAC,IAAI,EAAE,OAAO,CAAC,kBAAkB,CAAC,GAAG,OAAO,CAAC,kBAAkB,CAAC,CAwP3G;AAED,eAAO,MAAM,sBAAsB,6BAAgC,CAAC;AACpE,eAAO,MAAM,uBAAuB,6BAAuD,CAAC;AAE5F,eAAO,MAAM,4CAA4C,gGAAyC,CAAC;AACnG,eAAO,MAAM,6CAA6C,gGAA0C,CAAC;AACrG,eAAO,MAAM,0CAA0C,gGAAmD,CAAC;AAC3G,eAAO,MAAM,0CAA0C,gGAAmD,CAAC;AAC3G,eAAO,MAAM,0CAA0C,gGAAmD,CAAC;AAC3G,eAAO,MAAM,4CAA4C,gGAAmD,CAAC"}
@@ -1,5 +1,5 @@
1
1
  import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
2
- import { RelatedResourceSections, resourceUIBehavior, resourceUIBehaviorFrom, } from '@wildo-ai/saas-frontend-lib';
2
+ import { RelatedResourceSections, resourceUIBehavior, resourceUIBehaviorFrom, SummaryFlow, SummaryMeta, SummaryTitle, } from '@wildo-ai/saas-frontend-lib';
3
3
  import { DisplayField, DisplayLayout, FormField, FormLayout, ObjectScope, Section, SummaryLayout, } from '@wildo-ai/saas-frontend-lib';
4
4
  import { BadgeSemanticVariant, EnumDisplayMode, SectionMode } from '@wildo-ai/zod-decorators';
5
5
  import { CalendarPlus, ChartColumn, GitBranch, Key, LayoutGrid, Power, PowerOff, RefreshCw, RotateCcw, RotateCw, ToggleLeft, ToggleRight, } from 'lucide-react';
@@ -26,7 +26,7 @@ export function buildApplicationMainPresets() {
26
26
  sections: ['overview'],
27
27
  },
28
28
  display: () => (_jsxs(DisplayLayout, { children: [_jsxs(Section, { name: "overview", appearance: SectionMode.CARD, children: [_jsx(DisplayField, { name: "appDisplayName" }), _jsx(DisplayField, { name: "appSlug" }), _jsx(DisplayField, { name: "lastVersion" })] }), _jsx(RelatedResourceSections, { config: { mode: SectionMode.TABS }, targets: [] })] })),
29
- summary: () => (_jsxs(SummaryLayout, { className: "flex flex-col gap-2 text-sm", children: [_jsx("div", { className: "font-medium leading-tight", children: _jsx(DisplayField, { name: "appDisplayName", hideLabel: true }) }), _jsx("div", { className: "flex flex-wrap items-center gap-x-3 gap-y-1", children: _jsx(DisplayField, { name: "appSlug" }) })] })),
29
+ summary: () => (_jsxs(SummaryLayout, { children: [_jsx(SummaryTitle, { name: "appDisplayName" }), _jsx(SummaryMeta, { children: _jsx(DisplayField, { name: "appSlug" }) })] })),
30
30
  edit: () => (_jsx(FormLayout, { children: _jsxs(Section, { name: "overview", appearance: SectionMode.CARD, children: [_jsx(FormField, { name: "appDisplayName" }), _jsx(FormField, { name: "appSlug" })] }) })),
31
31
  },
32
32
  views: [
@@ -73,7 +73,7 @@ export function buildApplicationAdminPresets(main) {
73
73
  sections: ['overview', 'releaseNotes'],
74
74
  },
75
75
  display: () => (_jsxs(DisplayLayout, { children: [_jsxs(Section, { name: "overview", appearance: SectionMode.CARD, children: [_jsx(DisplayField, { name: "version" }), _jsx(DisplayField, { name: "releaseDate" })] }), _jsx(Section, { name: "releaseNotes", children: _jsx(DisplayField, { name: "releaseNotes" }) })] })),
76
- summary: () => (_jsxs(SummaryLayout, { className: "flex flex-wrap items-center gap-x-3 gap-y-1 text-sm", children: [_jsx(DisplayField, { name: "version" }), _jsx(DisplayField, { name: "releaseDate" })] })),
76
+ summary: () => (_jsxs(SummaryLayout, { flow: SummaryFlow.ROW, children: [_jsx(DisplayField, { name: "version" }), _jsx(DisplayField, { name: "releaseDate" })] })),
77
77
  edit: () => (_jsxs(FormLayout, { children: [_jsxs(Section, { name: "overview", appearance: SectionMode.CARD, children: [_jsx(FormField, { name: "version" }), _jsx(FormField, { name: "releaseDate" })] }), _jsx(Section, { name: "releaseNotes", children: _jsx(FormField, { name: "releaseNotes" }) })] })),
78
78
  },
79
79
  views: [
@@ -92,7 +92,7 @@ export function buildApplicationAdminPresets(main) {
92
92
  sections: ['overview'],
93
93
  },
94
94
  display: () => (_jsx(DisplayLayout, { children: _jsx(Section, { name: "overview", appearance: SectionMode.CARD, children: _jsx(DisplayField, { name: "description" }) }) })),
95
- summary: () => (_jsx(SummaryLayout, { className: "text-sm", children: _jsx(DisplayField, { name: "description" }) })),
95
+ summary: () => (_jsx(SummaryLayout, { children: _jsx(DisplayField, { name: "description" }) })),
96
96
  edit: () => (_jsx(FormLayout, { children: _jsx(Section, { name: "overview", appearance: SectionMode.CARD, children: _jsx(FormField, { name: "description" }) }) })),
97
97
  },
98
98
  views: [
@@ -107,7 +107,7 @@ export function buildApplicationAdminPresets(main) {
107
107
  layout: {
108
108
  refs: { sections: ['overview', 'overrides'] },
109
109
  display: () => (_jsxs(DisplayLayout, { children: [_jsxs(Section, { name: "overview", appearance: SectionMode.CARD, children: [_jsx(DisplayField, { name: "features" }), _jsx(DisplayField, { name: "limits" })] }), _jsx(Section, { name: "overrides", children: _jsxs(ObjectScope, { name: "manualOverrides", children: [_jsx(DisplayField, { name: "addedFeatures" }), _jsx(DisplayField, { name: "removedFeatures" }), _jsx(DisplayField, { name: "limitOverrides" })] }) })] })),
110
- summary: () => (_jsxs(SummaryLayout, { className: "flex flex-col gap-2 text-sm", children: [_jsx(DisplayField, { name: "features" }), _jsx(DisplayField, { name: "limits" })] })),
110
+ summary: () => (_jsxs(SummaryLayout, { children: [_jsx(DisplayField, { name: "features" }), _jsx(DisplayField, { name: "limits" })] })),
111
111
  edit: () => (_jsxs(FormLayout, { children: [_jsxs(Section, { name: "overview", appearance: SectionMode.CARD, children: [_jsx(FormField, { name: "features" }), _jsx(FormField, { name: "limits" })] }), _jsx(Section, { name: "overrides", children: _jsxs(ObjectScope, { name: "manualOverrides", children: [_jsx(FormField, { name: "addedFeatures" }), _jsx(FormField, { name: "removedFeatures" }), _jsx(FormField, { name: "limitOverrides" })] }) })] })),
112
112
  },
113
113
  views: [
@@ -126,7 +126,7 @@ export function buildApplicationAdminPresets(main) {
126
126
  sections: ['overview', 'access', 'lifecycle'],
127
127
  },
128
128
  display: () => (_jsxs(DisplayLayout, { children: [_jsxs(Section, { name: "overview", appearance: SectionMode.CARD, children: [_jsx(DisplayField, { name: "name" }), _jsx(DisplayField, { name: "scope" }), _jsx(DisplayField, { name: "status" }), _jsx(DisplayField, { name: "keyPrefix" })] }), _jsxs(Section, { name: "access", children: [_jsx(DisplayField, { name: "roles" }), _jsx(DisplayField, { name: "description" })] }), _jsxs(Section, { name: "lifecycle", children: [_jsx(DisplayField, { name: "expiresAt" }), _jsx(DisplayField, { name: "lastUsedAt" }), _jsx(DisplayField, { name: "createdAt" })] })] })),
129
- summary: () => (_jsxs(SummaryLayout, { className: "flex flex-col gap-2 text-sm", children: [_jsx("div", { className: "font-medium leading-tight", children: _jsx(DisplayField, { name: "name", hideLabel: true }) }), _jsxs("div", { className: "flex flex-wrap items-center gap-x-3 gap-y-1", children: [_jsx(DisplayField, { name: "scope" }), _jsx(DisplayField, { name: "status" }), _jsx(DisplayField, { name: "keyPrefix" })] })] })),
129
+ summary: () => (_jsxs(SummaryLayout, { children: [_jsx(SummaryTitle, { name: "name" }), _jsxs(SummaryMeta, { children: [_jsx(DisplayField, { name: "scope" }), _jsx(DisplayField, { name: "status" }), _jsx(DisplayField, { name: "keyPrefix" })] })] })),
130
130
  edit: () => (_jsxs(FormLayout, { children: [_jsxs(Section, { name: "overview", appearance: SectionMode.CARD, children: [_jsx(FormField, { name: "name" }), _jsx(FormField, { name: "status" }), _jsx(FormField, { name: "expiresAt" })] }), _jsxs(Section, { name: "access", children: [_jsx(FormField, { name: "roles" }), _jsx(FormField, { name: "description" })] })] })),
131
131
  },
132
132
  fields: {
@@ -1 +1 @@
1
- {"version":3,"file":"application.resource-presets.js","sourceRoot":"","sources":["../../../../../src/config/resources/application.resource-presets.tsx"],"names":[],"mappings":"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","sourcesContent":["import React from 'react';\nimport type { ResourceUIBehavior } from '@wildo-ai/saas-frontend-lib';\nimport {\n RelatedResourceSections,\n resourceUIBehavior,\n resourceUIBehaviorFrom,\n} from '@wildo-ai/saas-frontend-lib';\nimport {\n DisplayField,\n DisplayLayout,\n FormField,\n FormLayout,\n ObjectScope,\n Section,\n SummaryLayout,\n} from '@wildo-ai/saas-frontend-lib';\nimport { BadgeSemanticVariant, EnumDisplayMode, SectionMode } from '@wildo-ai/zod-decorators';\nimport {\n CalendarPlus,\n ChartColumn,\n GitBranch,\n Key,\n LayoutGrid,\n Power,\n PowerOff,\n RefreshCw,\n RotateCcw,\n RotateCw,\n ToggleLeft,\n ToggleRight,\n} from 'lucide-react';\nimport {\n CoreResourceType as R,\n CoreResourceOperation as Op,\n ApiKeyStatus,\n AppApiKeys_Operations,\n ApplicationFeatures_Operations,\n applicationResourceConfiguration_InitializationFactory as appFactory,\n applicationVersionsResourceConfiguration_InitializationFactory as appVersionsFactory,\n applicationMetadataResourceConfiguration_InitializationFactory as appMetadataFactory,\n appApiKeysResourceConfiguration_InitializationFactory as appApiKeysFactory,\n applicationFeaturesResourceConfiguration_InitializationFactory as appFeaturesFactory,\n ApplicationSchema,\n ApplicationVersionSchema,\n ApplicationMetadataSchema,\n ApiKeyApplicationSchema,\n ScopeFeaturesWithOverridesSchema,\n} from '@wildo-ai/saas-models';\nimport { notAddressable, apiOnly } from './resource.config.utils';\n\n/**\n * Application — Resource frontend presets\n *\n * **Main:** APPLICATION is read-only and non-addressable (accessible from a menu dropdown —\n * \"About this app\" type surface). End users never manage versions or metadata.\n *\n * **Admin:** Full APPLICATION management (CRUD, activate/suspend), plus\n * APPLICATION_VERSIONS, APPLICATION_METADATA, and APPLICATION_API_KEYS.\n *\n * Field-level `{primitive}UI` uses `showDescription` aligned with `billing.resource-presets.tsx`.\n */\n\nexport function buildApplicationMainPresets(): Partial<ResourceUIBehavior> {\n return {\n [R.APPLICATION]: resourceUIBehavior(appFactory, ApplicationSchema, ({ schema, schemaShape, opsVariantResolver }) => ({\n icon: LayoutGrid,\n getFrontendResourceLabel: ({ currentObject }) => currentObject.appDisplayName,\n layout: {\n refs: {\n sections: ['overview'],\n },\n display: () => (\n <DisplayLayout>\n <Section name=\"overview\" appearance={SectionMode.CARD}>\n <DisplayField name=\"appDisplayName\" />\n <DisplayField name=\"appSlug\" />\n <DisplayField name=\"lastVersion\" />\n </Section>\n {/*\n This surface composes NO children. It renders EMBEDDED (its READ is\n `notAddressable`), where the application's nine owned children —\n versions, features, api-keys, SSO/SCIM/SIEM configuration — would be\n noise. `targets={[]}` states that as a decision; saying nothing would\n mean \"compose them all\", which is what nine `hidden: true` entries\n were working around one edge at a time.\n The ADMIN variant below extends this display and names the four it\n does want.\n */}\n <RelatedResourceSections config={{ mode: SectionMode.TABS }} targets={[]} />\n </DisplayLayout>\n ),\n summary: () => (\n <SummaryLayout className=\"flex flex-col gap-2 text-sm\">\n <div className=\"font-medium leading-tight\">\n <DisplayField name=\"appDisplayName\" hideLabel />\n </div>\n <div className=\"flex flex-wrap items-center gap-x-3 gap-y-1\">\n <DisplayField name=\"appSlug\" />\n </div>\n </SummaryLayout>\n ),\n edit: () => (\n <FormLayout>\n <Section name=\"overview\" appearance={SectionMode.CARD}>\n <FormField name=\"appDisplayName\" />\n <FormField name=\"appSlug\" />\n </Section>\n </FormLayout>\n ),\n },\n views: [\n [Op.READ, notAddressable()],\n ],\n })),\n };\n}\n\nexport function buildApplicationAdminPresets(main: Partial<ResourceUIBehavior>): Partial<ResourceUIBehavior> {\n return {\n [R.APPLICATION]: resourceUIBehaviorFrom(appFactory, main[R.APPLICATION]!, ({ base, opsVariantResolver }) => ({\n icon: base.icon,\n getFrontendResourceLabel: base.getFrontendResourceLabel,\n // The admin surface EXTENDS the base display rather than reusing it: both\n // variants share one layout object, but they compose different children —\n // the base none, this one four. Extending is what lets a single shared\n // layout serve both without a per-variant relationship config.\n layout: {\n ...base.layout,\n display: () => {\n const BaseDisplay = base.layout!.display!;\n return (\n <>\n <BaseDisplay />\n {/* The four an operator manages here. The remaining five owned\n children — SSO / SCIM / SIEM configuration — stay out by not\n being named, which is what five `hidden: true` entries said. */}\n <RelatedResourceSections\n config={{ mode: SectionMode.TABS }}\n targets={[\n { resourceType: R.APPLICATION_METADATA, operationLike: Op.READ },\n R.APPLICATION_VERSIONS,\n R.APPLICATION_FEATURES,\n R.APPLICATION_API_KEYS,\n ]}\n />\n </>\n );\n },\n },\n views: [\n [opsVariantResolver(Op.READ, 'admin'), notAddressable()],\n [opsVariantResolver(Op.LIST, 'admin'), notAddressable()],\n [opsVariantResolver(Op.SEARCH, 'admin'), notAddressable()],\n [opsVariantResolver(Op.CREATE, 'admin'), notAddressable()],\n [opsVariantResolver(Op.UPDATE, 'admin'), notAddressable()],\n [opsVariantResolver(Op.DELETE, 'admin'), notAddressable()],\n ],\n })),\n\n [R.APPLICATION_VERSIONS]: resourceUIBehavior(appVersionsFactory, ApplicationVersionSchema, ({ schema, schemaShape, opsVariantResolver }) => ({\n icon: GitBranch,\n getFrontendResourceLabel: ({ currentObject }) => currentObject.version,\n layout: {\n refs: {\n sections: ['overview', 'releaseNotes'],\n },\n display: () => (\n <DisplayLayout>\n <Section name=\"overview\" appearance={SectionMode.CARD}>\n <DisplayField name=\"version\" />\n <DisplayField name=\"releaseDate\" />\n </Section>\n <Section name=\"releaseNotes\">\n <DisplayField name=\"releaseNotes\" />\n </Section>\n </DisplayLayout>\n ),\n summary: () => (\n <SummaryLayout className=\"flex flex-wrap items-center gap-x-3 gap-y-1 text-sm\">\n <DisplayField name=\"version\" />\n <DisplayField name=\"releaseDate\" />\n </SummaryLayout>\n ),\n edit: () => (\n <FormLayout>\n <Section name=\"overview\" appearance={SectionMode.CARD}>\n <FormField name=\"version\" />\n <FormField name=\"releaseDate\" />\n </Section>\n <Section name=\"releaseNotes\">\n <FormField name=\"releaseNotes\" />\n </Section>\n </FormLayout>\n ),\n },\n views: [\n // Versions are created by the app-version system (API-driven) — headless (API-only).\n [Op.CREATE, apiOnly()],\n [Op.READ, notAddressable()],\n [Op.LIST, notAddressable()],\n [Op.SEARCH, notAddressable()],\n [Op.UPDATE, notAddressable()],\n [Op.DELETE, notAddressable()],\n ],\n })),\n\n [R.APPLICATION_METADATA]: resourceUIBehavior(appMetadataFactory, ApplicationMetadataSchema, ({ schema, schemaShape, opsVariantResolver }) => ({\n layout: {\n refs: {\n sections: ['overview'],\n },\n display: () => (\n <DisplayLayout>\n <Section name=\"overview\" appearance={SectionMode.CARD}>\n <DisplayField name=\"description\" />\n </Section>\n </DisplayLayout>\n ),\n summary: () => (\n <SummaryLayout className=\"text-sm\">\n <DisplayField name=\"description\" />\n </SummaryLayout>\n ),\n edit: () => (\n <FormLayout>\n <Section name=\"overview\" appearance={SectionMode.CARD}>\n <FormField name=\"description\" />\n </Section>\n </FormLayout>\n ),\n },\n views: [\n // Metadata is system-managed, auto-initialized with the app — headless (API-only).\n [Op.CREATE, apiOnly()],\n [Op.READ, notAddressable()],\n [Op.UPDATE, notAddressable()],\n [Op.DELETE, notAddressable()],\n ],\n })),\n\n [R.APPLICATION_FEATURES]: resourceUIBehavior(appFeaturesFactory, ScopeFeaturesWithOverridesSchema, ({ schema, schemaShape, opsVariantResolver }) => ({\n layout: {\n refs: { sections: ['overview', 'overrides'] },\n display: () => (\n <DisplayLayout>\n <Section name=\"overview\" appearance={SectionMode.CARD}>\n <DisplayField name=\"features\" />\n <DisplayField name=\"limits\" />\n </Section>\n <Section name=\"overrides\">\n <ObjectScope name=\"manualOverrides\">\n <DisplayField name=\"addedFeatures\" />\n <DisplayField name=\"removedFeatures\" />\n <DisplayField name=\"limitOverrides\" />\n </ObjectScope>\n </Section>\n </DisplayLayout>\n ),\n summary: () => (\n <SummaryLayout className=\"flex flex-col gap-2 text-sm\">\n <DisplayField name=\"features\" />\n <DisplayField name=\"limits\" />\n </SummaryLayout>\n ),\n edit: () => (\n <FormLayout>\n <Section name=\"overview\" appearance={SectionMode.CARD}>\n <FormField name=\"features\" />\n <FormField name=\"limits\" />\n </Section>\n <Section name=\"overrides\">\n <ObjectScope name=\"manualOverrides\">\n <FormField name=\"addedFeatures\" />\n <FormField name=\"removedFeatures\" />\n <FormField name=\"limitOverrides\" />\n </ObjectScope>\n </Section>\n </FormLayout>\n ),\n },\n views: [\n [Op.READ, notAddressable()],\n [Op.SEARCH, notAddressable()],\n [Op.UPDATE, notAddressable()],\n [ApplicationFeatures_Operations.ENABLE_FEATURE, notAddressable({ iconOverride: ToggleRight })],\n [ApplicationFeatures_Operations.DISABLE_FEATURE, notAddressable({ iconOverride: ToggleLeft })],\n [ApplicationFeatures_Operations.RESET_FEATURES, notAddressable({ iconOverride: RotateCcw })],\n ],\n })),\n\n [R.APPLICATION_API_KEYS]: resourceUIBehavior(appApiKeysFactory, ApiKeyApplicationSchema, ({ schema, schemaShape, opsVariantResolver }) => ({\n icon: Key,\n layout: {\n refs: {\n sections: ['overview', 'access', 'lifecycle'],\n },\n display: () => (\n <DisplayLayout>\n <Section name=\"overview\" appearance={SectionMode.CARD}>\n <DisplayField name=\"name\" />\n <DisplayField name=\"scope\" />\n <DisplayField name=\"status\" />\n <DisplayField name=\"keyPrefix\" />\n </Section>\n <Section name=\"access\">\n <DisplayField name=\"roles\" />\n <DisplayField name=\"description\" />\n </Section>\n <Section name=\"lifecycle\">\n <DisplayField name=\"expiresAt\" />\n <DisplayField name=\"lastUsedAt\" />\n <DisplayField name=\"createdAt\" />\n </Section>\n </DisplayLayout>\n ),\n summary: () => (\n <SummaryLayout className=\"flex flex-col gap-2 text-sm\">\n <div className=\"font-medium leading-tight\">\n <DisplayField name=\"name\" hideLabel />\n </div>\n <div className=\"flex flex-wrap items-center gap-x-3 gap-y-1\">\n <DisplayField name=\"scope\" />\n <DisplayField name=\"status\" />\n <DisplayField name=\"keyPrefix\" />\n </div>\n </SummaryLayout>\n ),\n edit: () => (\n <FormLayout>\n <Section name=\"overview\" appearance={SectionMode.CARD}>\n <FormField name=\"name\" />\n <FormField name=\"status\" />\n <FormField name=\"expiresAt\" />\n </Section>\n <Section name=\"access\">\n <FormField name=\"roles\" />\n <FormField name=\"description\" />\n </Section>\n </FormLayout>\n ),\n },\n fields: {\n status: schemaShape.status.enumUI({\n display: { displayMode: EnumDisplayMode.BADGE, showDescription: true },\n edit: { showDescription: true },\n values: {\n [ApiKeyStatus.ACTIVE]: { color: BadgeSemanticVariant.SUCCESS },\n [ApiKeyStatus.INACTIVE]: { color: BadgeSemanticVariant.SECONDARY },\n [ApiKeyStatus.EXPIRED]: { color: BadgeSemanticVariant.WARNING },\n },\n }),\n },\n getFrontendResourceLabel: ({ currentObject }) => currentObject.name,\n views: [\n [Op.READ, notAddressable()],\n [Op.LIST, notAddressable()],\n [Op.SEARCH, notAddressable()],\n [Op.CREATE, notAddressable()],\n [AppApiKeys_Operations.ROTATE, notAddressable({ iconOverride: RotateCw })],\n [AppApiKeys_Operations.REGENERATE, notAddressable({ iconOverride: RefreshCw })],\n [AppApiKeys_Operations.DEACTIVATE, notAddressable({ iconOverride: PowerOff })],\n [AppApiKeys_Operations.REACTIVATE, notAddressable({ iconOverride: Power })],\n [AppApiKeys_Operations.EXTEND_EXPIRY, notAddressable({ iconOverride: CalendarPlus })],\n [AppApiKeys_Operations.USAGE_STATS, notAddressable({ iconOverride: ChartColumn })],\n ],\n })),\n };\n}\n\nexport const applicationMainPresets = buildApplicationMainPresets();\nexport const applicationAdminPresets = buildApplicationAdminPresets(applicationMainPresets);\n\nexport const applicationMainApplicationResourceUIBehavior = applicationMainPresets[R.APPLICATION]!;\nexport const applicationAdminApplicationResourceUIBehavior = applicationAdminPresets[R.APPLICATION]!;\nexport const applicationVersionsAdminResourceUIBehavior = applicationAdminPresets[R.APPLICATION_VERSIONS]!;\nexport const applicationMetadataAdminResourceUIBehavior = applicationAdminPresets[R.APPLICATION_METADATA]!;\nexport const applicationFeaturesAdminResourceUIBehavior = applicationAdminPresets[R.APPLICATION_FEATURES]!;\nexport const appApiKeysApplicationAdminResourceUIBehavior = applicationAdminPresets[R.APPLICATION_API_KEYS]!;\n"]}
1
+ {"version":3,"file":"application.resource-presets.js","sourceRoot":"","sources":["../../../../../src/config/resources/application.resource-presets.tsx"],"names":[],"mappings":"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","sourcesContent":["import React from 'react';\nimport type { ResourceUIBehavior } from '@wildo-ai/saas-frontend-lib';\nimport {\n RelatedResourceSections,\n resourceUIBehavior,\n resourceUIBehaviorFrom,\n SummaryFlow,\n SummaryMeta,\n SummaryTitle,\n} from '@wildo-ai/saas-frontend-lib';\nimport {\n DisplayField,\n DisplayLayout,\n FormField,\n FormLayout,\n ObjectScope,\n Section,\n SummaryLayout,\n} from '@wildo-ai/saas-frontend-lib';\nimport { BadgeSemanticVariant, EnumDisplayMode, SectionMode } from '@wildo-ai/zod-decorators';\nimport {\n CalendarPlus,\n ChartColumn,\n GitBranch,\n Key,\n LayoutGrid,\n Power,\n PowerOff,\n RefreshCw,\n RotateCcw,\n RotateCw,\n ToggleLeft,\n ToggleRight,\n} from 'lucide-react';\nimport {\n CoreResourceType as R,\n CoreResourceOperation as Op,\n ApiKeyStatus,\n AppApiKeys_Operations,\n ApplicationFeatures_Operations,\n applicationResourceConfiguration_InitializationFactory as appFactory,\n applicationVersionsResourceConfiguration_InitializationFactory as appVersionsFactory,\n applicationMetadataResourceConfiguration_InitializationFactory as appMetadataFactory,\n appApiKeysResourceConfiguration_InitializationFactory as appApiKeysFactory,\n applicationFeaturesResourceConfiguration_InitializationFactory as appFeaturesFactory,\n ApplicationSchema,\n ApplicationVersionSchema,\n ApplicationMetadataSchema,\n ApiKeyApplicationSchema,\n ScopeFeaturesWithOverridesSchema,\n} from '@wildo-ai/saas-models';\nimport { notAddressable, apiOnly } from './resource.config.utils';\n\n/**\n * Application — Resource frontend presets\n *\n * **Main:** APPLICATION is read-only and non-addressable (accessible from a menu dropdown —\n * \"About this app\" type surface). End users never manage versions or metadata.\n *\n * **Admin:** Full APPLICATION management (CRUD, activate/suspend), plus\n * APPLICATION_VERSIONS, APPLICATION_METADATA, and APPLICATION_API_KEYS.\n *\n * Field-level `{primitive}UI` uses `showDescription` aligned with `billing.resource-presets.tsx`.\n */\n\nexport function buildApplicationMainPresets(): Partial<ResourceUIBehavior> {\n return {\n [R.APPLICATION]: resourceUIBehavior(appFactory, ApplicationSchema, ({ schema, schemaShape, opsVariantResolver }) => ({\n icon: LayoutGrid,\n getFrontendResourceLabel: ({ currentObject }) => currentObject.appDisplayName,\n layout: {\n refs: {\n sections: ['overview'],\n },\n display: () => (\n <DisplayLayout>\n <Section name=\"overview\" appearance={SectionMode.CARD}>\n <DisplayField name=\"appDisplayName\" />\n <DisplayField name=\"appSlug\" />\n <DisplayField name=\"lastVersion\" />\n </Section>\n {/*\n This surface composes NO children. It renders EMBEDDED (its READ is\n `notAddressable`), where the application's nine owned children —\n versions, features, api-keys, SSO/SCIM/SIEM configuration — would be\n noise. `targets={[]}` states that as a decision; saying nothing would\n mean \"compose them all\", which is what nine `hidden: true` entries\n were working around one edge at a time.\n The ADMIN variant below extends this display and names the four it\n does want.\n */}\n <RelatedResourceSections config={{ mode: SectionMode.TABS }} targets={[]} />\n </DisplayLayout>\n ),\n summary: () => (\n <SummaryLayout>\n <SummaryTitle name=\"appDisplayName\" />\n <SummaryMeta>\n <DisplayField name=\"appSlug\" />\n </SummaryMeta>\n </SummaryLayout>\n ),\n edit: () => (\n <FormLayout>\n <Section name=\"overview\" appearance={SectionMode.CARD}>\n <FormField name=\"appDisplayName\" />\n <FormField name=\"appSlug\" />\n </Section>\n </FormLayout>\n ),\n },\n views: [\n [Op.READ, notAddressable()],\n ],\n })),\n };\n}\n\nexport function buildApplicationAdminPresets(main: Partial<ResourceUIBehavior>): Partial<ResourceUIBehavior> {\n return {\n [R.APPLICATION]: resourceUIBehaviorFrom(appFactory, main[R.APPLICATION]!, ({ base, opsVariantResolver }) => ({\n icon: base.icon,\n getFrontendResourceLabel: base.getFrontendResourceLabel,\n // The admin surface EXTENDS the base display rather than reusing it: both\n // variants share one layout object, but they compose different children —\n // the base none, this one four. Extending is what lets a single shared\n // layout serve both without a per-variant relationship config.\n layout: {\n ...base.layout,\n display: () => {\n const BaseDisplay = base.layout!.display!;\n return (\n <>\n <BaseDisplay />\n {/* The four an operator manages here. The remaining five owned\n children — SSO / SCIM / SIEM configuration — stay out by not\n being named, which is what five `hidden: true` entries said. */}\n <RelatedResourceSections\n config={{ mode: SectionMode.TABS }}\n targets={[\n { resourceType: R.APPLICATION_METADATA, operationLike: Op.READ },\n R.APPLICATION_VERSIONS,\n R.APPLICATION_FEATURES,\n R.APPLICATION_API_KEYS,\n ]}\n />\n </>\n );\n },\n },\n views: [\n [opsVariantResolver(Op.READ, 'admin'), notAddressable()],\n [opsVariantResolver(Op.LIST, 'admin'), notAddressable()],\n [opsVariantResolver(Op.SEARCH, 'admin'), notAddressable()],\n [opsVariantResolver(Op.CREATE, 'admin'), notAddressable()],\n [opsVariantResolver(Op.UPDATE, 'admin'), notAddressable()],\n [opsVariantResolver(Op.DELETE, 'admin'), notAddressable()],\n ],\n })),\n\n [R.APPLICATION_VERSIONS]: resourceUIBehavior(appVersionsFactory, ApplicationVersionSchema, ({ schema, schemaShape, opsVariantResolver }) => ({\n icon: GitBranch,\n getFrontendResourceLabel: ({ currentObject }) => currentObject.version,\n layout: {\n refs: {\n sections: ['overview', 'releaseNotes'],\n },\n display: () => (\n <DisplayLayout>\n <Section name=\"overview\" appearance={SectionMode.CARD}>\n <DisplayField name=\"version\" />\n <DisplayField name=\"releaseDate\" />\n </Section>\n <Section name=\"releaseNotes\">\n <DisplayField name=\"releaseNotes\" />\n </Section>\n </DisplayLayout>\n ),\n summary: () => (\n <SummaryLayout flow={SummaryFlow.ROW}>\n <DisplayField name=\"version\" />\n <DisplayField name=\"releaseDate\" />\n </SummaryLayout>\n ),\n edit: () => (\n <FormLayout>\n <Section name=\"overview\" appearance={SectionMode.CARD}>\n <FormField name=\"version\" />\n <FormField name=\"releaseDate\" />\n </Section>\n <Section name=\"releaseNotes\">\n <FormField name=\"releaseNotes\" />\n </Section>\n </FormLayout>\n ),\n },\n views: [\n // Versions are created by the app-version system (API-driven) — headless (API-only).\n [Op.CREATE, apiOnly()],\n [Op.READ, notAddressable()],\n [Op.LIST, notAddressable()],\n [Op.SEARCH, notAddressable()],\n [Op.UPDATE, notAddressable()],\n [Op.DELETE, notAddressable()],\n ],\n })),\n\n [R.APPLICATION_METADATA]: resourceUIBehavior(appMetadataFactory, ApplicationMetadataSchema, ({ schema, schemaShape, opsVariantResolver }) => ({\n layout: {\n refs: {\n sections: ['overview'],\n },\n display: () => (\n <DisplayLayout>\n <Section name=\"overview\" appearance={SectionMode.CARD}>\n <DisplayField name=\"description\" />\n </Section>\n </DisplayLayout>\n ),\n summary: () => (\n <SummaryLayout>\n <DisplayField name=\"description\" />\n </SummaryLayout>\n ),\n edit: () => (\n <FormLayout>\n <Section name=\"overview\" appearance={SectionMode.CARD}>\n <FormField name=\"description\" />\n </Section>\n </FormLayout>\n ),\n },\n views: [\n // Metadata is system-managed, auto-initialized with the app — headless (API-only).\n [Op.CREATE, apiOnly()],\n [Op.READ, notAddressable()],\n [Op.UPDATE, notAddressable()],\n [Op.DELETE, notAddressable()],\n ],\n })),\n\n [R.APPLICATION_FEATURES]: resourceUIBehavior(appFeaturesFactory, ScopeFeaturesWithOverridesSchema, ({ schema, schemaShape, opsVariantResolver }) => ({\n layout: {\n refs: { sections: ['overview', 'overrides'] },\n display: () => (\n <DisplayLayout>\n <Section name=\"overview\" appearance={SectionMode.CARD}>\n <DisplayField name=\"features\" />\n <DisplayField name=\"limits\" />\n </Section>\n <Section name=\"overrides\">\n <ObjectScope name=\"manualOverrides\">\n <DisplayField name=\"addedFeatures\" />\n <DisplayField name=\"removedFeatures\" />\n <DisplayField name=\"limitOverrides\" />\n </ObjectScope>\n </Section>\n </DisplayLayout>\n ),\n summary: () => (\n <SummaryLayout>\n <DisplayField name=\"features\" />\n <DisplayField name=\"limits\" />\n </SummaryLayout>\n ),\n edit: () => (\n <FormLayout>\n <Section name=\"overview\" appearance={SectionMode.CARD}>\n <FormField name=\"features\" />\n <FormField name=\"limits\" />\n </Section>\n <Section name=\"overrides\">\n <ObjectScope name=\"manualOverrides\">\n <FormField name=\"addedFeatures\" />\n <FormField name=\"removedFeatures\" />\n <FormField name=\"limitOverrides\" />\n </ObjectScope>\n </Section>\n </FormLayout>\n ),\n },\n views: [\n [Op.READ, notAddressable()],\n [Op.SEARCH, notAddressable()],\n [Op.UPDATE, notAddressable()],\n [ApplicationFeatures_Operations.ENABLE_FEATURE, notAddressable({ iconOverride: ToggleRight })],\n [ApplicationFeatures_Operations.DISABLE_FEATURE, notAddressable({ iconOverride: ToggleLeft })],\n [ApplicationFeatures_Operations.RESET_FEATURES, notAddressable({ iconOverride: RotateCcw })],\n ],\n })),\n\n [R.APPLICATION_API_KEYS]: resourceUIBehavior(appApiKeysFactory, ApiKeyApplicationSchema, ({ schema, schemaShape, opsVariantResolver }) => ({\n icon: Key,\n layout: {\n refs: {\n sections: ['overview', 'access', 'lifecycle'],\n },\n display: () => (\n <DisplayLayout>\n <Section name=\"overview\" appearance={SectionMode.CARD}>\n <DisplayField name=\"name\" />\n <DisplayField name=\"scope\" />\n <DisplayField name=\"status\" />\n <DisplayField name=\"keyPrefix\" />\n </Section>\n <Section name=\"access\">\n <DisplayField name=\"roles\" />\n <DisplayField name=\"description\" />\n </Section>\n <Section name=\"lifecycle\">\n <DisplayField name=\"expiresAt\" />\n <DisplayField name=\"lastUsedAt\" />\n <DisplayField name=\"createdAt\" />\n </Section>\n </DisplayLayout>\n ),\n summary: () => (\n <SummaryLayout>\n <SummaryTitle name=\"name\" />\n <SummaryMeta>\n <DisplayField name=\"scope\" />\n <DisplayField name=\"status\" />\n <DisplayField name=\"keyPrefix\" />\n </SummaryMeta>\n </SummaryLayout>\n ),\n edit: () => (\n <FormLayout>\n <Section name=\"overview\" appearance={SectionMode.CARD}>\n <FormField name=\"name\" />\n <FormField name=\"status\" />\n <FormField name=\"expiresAt\" />\n </Section>\n <Section name=\"access\">\n <FormField name=\"roles\" />\n <FormField name=\"description\" />\n </Section>\n </FormLayout>\n ),\n },\n fields: {\n status: schemaShape.status.enumUI({\n display: { displayMode: EnumDisplayMode.BADGE, showDescription: true },\n edit: { showDescription: true },\n values: {\n [ApiKeyStatus.ACTIVE]: { color: BadgeSemanticVariant.SUCCESS },\n [ApiKeyStatus.INACTIVE]: { color: BadgeSemanticVariant.SECONDARY },\n [ApiKeyStatus.EXPIRED]: { color: BadgeSemanticVariant.WARNING },\n },\n }),\n },\n getFrontendResourceLabel: ({ currentObject }) => currentObject.name,\n views: [\n [Op.READ, notAddressable()],\n [Op.LIST, notAddressable()],\n [Op.SEARCH, notAddressable()],\n [Op.CREATE, notAddressable()],\n [AppApiKeys_Operations.ROTATE, notAddressable({ iconOverride: RotateCw })],\n [AppApiKeys_Operations.REGENERATE, notAddressable({ iconOverride: RefreshCw })],\n [AppApiKeys_Operations.DEACTIVATE, notAddressable({ iconOverride: PowerOff })],\n [AppApiKeys_Operations.REACTIVATE, notAddressable({ iconOverride: Power })],\n [AppApiKeys_Operations.EXTEND_EXPIRY, notAddressable({ iconOverride: CalendarPlus })],\n [AppApiKeys_Operations.USAGE_STATS, notAddressable({ iconOverride: ChartColumn })],\n ],\n })),\n };\n}\n\nexport const applicationMainPresets = buildApplicationMainPresets();\nexport const applicationAdminPresets = buildApplicationAdminPresets(applicationMainPresets);\n\nexport const applicationMainApplicationResourceUIBehavior = applicationMainPresets[R.APPLICATION]!;\nexport const applicationAdminApplicationResourceUIBehavior = applicationAdminPresets[R.APPLICATION]!;\nexport const applicationVersionsAdminResourceUIBehavior = applicationAdminPresets[R.APPLICATION_VERSIONS]!;\nexport const applicationMetadataAdminResourceUIBehavior = applicationAdminPresets[R.APPLICATION_METADATA]!;\nexport const applicationFeaturesAdminResourceUIBehavior = applicationAdminPresets[R.APPLICATION_FEATURES]!;\nexport const appApiKeysApplicationAdminResourceUIBehavior = applicationAdminPresets[R.APPLICATION_API_KEYS]!;\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"billing.resource-presets.d.ts","sourceRoot":"","sources":["../../../../../src/config/resources/billing.resource-presets.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG;AAGH,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,6BAA6B,CAAC;AAyHtE,wBAAgB,uBAAuB,IAAI,OAAO,CAAC,kBAAkB,CAAC,CA8yBrE;AAED,wBAAgB,wBAAwB,CAAC,IAAI,EAAE,OAAO,CAAC,kBAAkB,CAAC,GAAG,OAAO,CAAC,kBAAkB,CAAC,CAsEvG;AAED,eAAO,MAAM,kBAAkB,6BAA4B,CAAC;AAC5D,eAAO,MAAM,mBAAmB,6BAA+C,CAAC;AAEhF,eAAO,MAAM,8BAA8B,gGAAkC,CAAC;AAC9E,eAAO,MAAM,+BAA+B,gGAAmC,CAAC;AAChF,eAAO,MAAM,4BAA4B,gGAAgC,CAAC;AAC1E,eAAO,MAAM,6BAA6B,gGAAiC,CAAC;AAC5E,eAAO,MAAM,+BAA+B,gGAAmC,CAAC;AAChF,eAAO,MAAM,gCAAgC,gGAAoC,CAAC;AAClF,eAAO,MAAM,gCAAgC,gGAAoC,CAAC;AAClF,eAAO,MAAM,iCAAiC,gGAAqC,CAAC"}
1
+ {"version":3,"file":"billing.resource-presets.d.ts","sourceRoot":"","sources":["../../../../../src/config/resources/billing.resource-presets.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG;AAGH,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,6BAA6B,CAAC;AA4HtE,wBAAgB,uBAAuB,IAAI,OAAO,CAAC,kBAAkB,CAAC,CAsyBrE;AAED,wBAAgB,wBAAwB,CAAC,IAAI,EAAE,OAAO,CAAC,kBAAkB,CAAC,GAAG,OAAO,CAAC,kBAAkB,CAAC,CAsEvG;AAED,eAAO,MAAM,kBAAkB,6BAA4B,CAAC;AAC5D,eAAO,MAAM,mBAAmB,6BAA+C,CAAC;AAEhF,eAAO,MAAM,8BAA8B,gGAAkC,CAAC;AAC9E,eAAO,MAAM,+BAA+B,gGAAmC,CAAC;AAChF,eAAO,MAAM,4BAA4B,gGAAgC,CAAC;AAC1E,eAAO,MAAM,6BAA6B,gGAAiC,CAAC;AAC5E,eAAO,MAAM,+BAA+B,gGAAmC,CAAC;AAChF,eAAO,MAAM,gCAAgC,gGAAoC,CAAC;AAClF,eAAO,MAAM,gCAAgC,gGAAoC,CAAC;AAClF,eAAO,MAAM,iCAAiC,gGAAqC,CAAC"}