@wildo-ai/saas-frontend-lib 1.1.8 → 1.1.10

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 (987) hide show
  1. package/dist/esm/companion-exports.d.ts.map +1 -1
  2. package/dist/esm/companion-runtime-exports.d.ts.map +1 -1
  3. package/dist/esm/components/actions/action-bar.d.ts.map +1 -1
  4. package/dist/esm/components/actions/action-button.d.ts.map +1 -1
  5. package/dist/esm/components/actions/button-group.d.ts.map +1 -1
  6. package/dist/esm/components/actions/button.d.ts.map +1 -1
  7. package/dist/esm/components/ai-elements/artifacts/artifact-list.d.ts.map +1 -1
  8. package/dist/esm/components/ai-elements/artifacts/artifact.d.ts.map +1 -1
  9. package/dist/esm/components/ai-elements/artifacts/code-block.d.ts.map +1 -1
  10. package/dist/esm/components/ai-elements/artifacts/diff-block.d.ts.map +1 -1
  11. package/dist/esm/components/ai-elements/artifacts/image.d.ts.map +1 -1
  12. package/dist/esm/components/ai-elements/artifacts/web-preview.d.ts.map +1 -1
  13. package/dist/esm/components/ai-elements/chat/conversation.d.ts.map +1 -1
  14. package/dist/esm/components/ai-elements/chat/message.d.ts.map +1 -1
  15. package/dist/esm/components/ai-elements/chat/prompt-input.d.ts.map +1 -1
  16. package/dist/esm/components/ai-elements/chat/sources.d.ts.map +1 -1
  17. package/dist/esm/components/ai-elements/chat/suggestion.d.ts.map +1 -1
  18. package/dist/esm/components/ai-elements/decision/approval.d.ts.map +1 -1
  19. package/dist/esm/components/ai-elements/execution/confirmation.d.ts.map +1 -1
  20. package/dist/esm/components/ai-elements/execution/queue.d.ts.map +1 -1
  21. package/dist/esm/components/ai-elements/execution/task.d.ts.map +1 -1
  22. package/dist/esm/components/ai-elements/execution/tool.d.ts.map +1 -1
  23. package/dist/esm/components/ai-elements/graph/canvas.d.ts.map +1 -1
  24. package/dist/esm/components/ai-elements/graph/connection.d.ts.map +1 -1
  25. package/dist/esm/components/ai-elements/graph/controls.d.ts.map +1 -1
  26. package/dist/esm/components/ai-elements/graph/edge.d.ts.map +1 -1
  27. package/dist/esm/components/ai-elements/graph/node.d.ts.map +1 -1
  28. package/dist/esm/components/ai-elements/graph/panel.d.ts.map +1 -1
  29. package/dist/esm/components/ai-elements/graph/toolbar.d.ts.map +1 -1
  30. package/dist/esm/components/ai-elements/meta/agent-wrappers.d.ts.map +1 -1
  31. package/dist/esm/components/ai-elements/meta/context.d.ts.map +1 -1
  32. package/dist/esm/components/ai-elements/meta/model-selector.d.ts.map +1 -1
  33. package/dist/esm/components/ai-elements/meta/open-in-chat.d.ts.map +1 -1
  34. package/dist/esm/components/ai-elements/shared/loader.d.ts.map +1 -1
  35. package/dist/esm/components/ai-elements/shared/shimmer.d.ts.map +1 -1
  36. package/dist/esm/components/ai-elements/stream/execution-stream.d.ts.map +1 -1
  37. package/dist/esm/components/ai-elements/trace/chain-of-thought.d.ts.map +1 -1
  38. package/dist/esm/components/ai-elements/trace/checkpoint.d.ts.map +1 -1
  39. package/dist/esm/components/ai-elements/trace/inline-citation.d.ts.map +1 -1
  40. package/dist/esm/components/ai-elements/trace/plan.d.ts.map +1 -1
  41. package/dist/esm/components/ai-elements/trace/reasoning.d.ts.map +1 -1
  42. package/dist/esm/components/app/AppLayout_AuthenticatedRoute.d.ts.map +1 -1
  43. package/dist/esm/components/app/AppLayout_ConsentGate.d.ts.map +1 -1
  44. package/dist/esm/components/app/AppLayout_ConsentGate.labels.d.ts.map +1 -1
  45. package/dist/esm/components/app/AppLayout_DocumentAcceptanceGate.d.ts.map +1 -1
  46. package/dist/esm/components/app/AppLayout_DocumentAcceptanceGate.labels.d.ts.map +1 -1
  47. package/dist/esm/components/app/AppLayout_ErrorBoundary.d.ts.map +1 -1
  48. package/dist/esm/components/app/AppLayout_ErrorBoundary.labels.d.ts.map +1 -1
  49. package/dist/esm/components/app/AppLayout_Home.d.ts.map +1 -1
  50. package/dist/esm/components/app/AppLayout_Home.labels.d.ts.map +1 -1
  51. package/dist/esm/components/app/AppLayout_MainContainer.d.ts.map +1 -1
  52. package/dist/esm/components/app/AppLayout_NotificationCenter.d.ts.map +1 -1
  53. package/dist/esm/components/app/AppLayout_RouterErrorBoundary.d.ts.map +1 -1
  54. package/dist/esm/components/app/AppLayout_RouterErrorBoundary.labels.d.ts.map +1 -1
  55. package/dist/esm/components/app/AppPage_Home.d.ts.map +1 -1
  56. package/dist/esm/components/app/PublicLayout_LegalNotice.d.ts +18 -0
  57. package/dist/esm/components/app/PublicLayout_LegalNotice.d.ts.map +1 -0
  58. package/dist/esm/components/app/PublicLayout_LegalNotice.js +8 -0
  59. package/dist/esm/components/app/PublicLayout_LegalNotice.js.map +1 -0
  60. package/dist/esm/components/app/PublicLayout_LegalNotice.labels.d.ts +3 -0
  61. package/dist/esm/components/app/PublicLayout_LegalNotice.labels.d.ts.map +1 -0
  62. package/dist/esm/components/app/PublicLayout_LegalNotice.labels.js +38 -0
  63. package/dist/esm/components/app/PublicLayout_LegalNotice.labels.js.map +1 -0
  64. package/dist/esm/components/app/PublicLayout_MainContainer.d.ts.map +1 -1
  65. package/dist/esm/components/app/PublicLayout_StaticContentContainer.d.ts.map +1 -1
  66. package/dist/esm/components/app/PublicLayout_StaticContentContainer.labels.d.ts.map +1 -1
  67. package/dist/esm/components/app/PublicLayout_Terms.d.ts.map +1 -1
  68. package/dist/esm/components/app/PublicLayout_Terms.labels.d.ts.map +1 -1
  69. package/dist/esm/components/auth/Auth_AuthCallback.d.ts.map +1 -1
  70. package/dist/esm/components/auth/Auth_AuthCallback.labels.d.ts.map +1 -1
  71. package/dist/esm/components/auth/Auth_ConfirmEmail.d.ts.map +1 -1
  72. package/dist/esm/components/auth/Auth_ConfirmEmail.labels.d.ts.map +1 -1
  73. package/dist/esm/components/auth/Auth_EnrollmentRequired.d.ts.map +1 -1
  74. package/dist/esm/components/auth/Auth_EnrollmentRequired.labels.d.ts.map +1 -1
  75. package/dist/esm/components/auth/Auth_Invitation.d.ts.map +1 -1
  76. package/dist/esm/components/auth/Auth_Invitation.labels.d.ts.map +1 -1
  77. package/dist/esm/components/auth/Auth_MagicLinkVerify.d.ts.map +1 -1
  78. package/dist/esm/components/auth/Auth_MagicLinkVerify.labels.d.ts.map +1 -1
  79. package/dist/esm/components/auth/Auth_Main.d.ts.map +1 -1
  80. package/dist/esm/components/auth/Auth_Main.labels.d.ts.map +1 -1
  81. package/dist/esm/components/auth/Auth_MfaChallenge.d.ts.map +1 -1
  82. package/dist/esm/components/auth/Auth_MfaChallenge.labels.d.ts.map +1 -1
  83. package/dist/esm/components/auth/Auth_OAuthConsent.d.ts.map +1 -1
  84. package/dist/esm/components/auth/Auth_OAuthConsent.labels.d.ts.map +1 -1
  85. package/dist/esm/components/auth/Auth_OAuthLoggedOut.d.ts.map +1 -1
  86. package/dist/esm/components/auth/Auth_OAuthLoggedOut.labels.d.ts.map +1 -1
  87. package/dist/esm/components/auth/Auth_OAuthLogoutConfirm.d.ts.map +1 -1
  88. package/dist/esm/components/auth/Auth_OAuthLogoutConfirm.labels.d.ts.map +1 -1
  89. package/dist/esm/components/auth/Auth_OneOffSession.d.ts.map +1 -1
  90. package/dist/esm/components/auth/Auth_OneOffSession.labels.d.ts.map +1 -1
  91. package/dist/esm/components/auth/Auth_OrganizationOnboarding.d.ts.map +1 -1
  92. package/dist/esm/components/auth/Auth_OrganizationOnboarding.labels.d.ts.map +1 -1
  93. package/dist/esm/components/auth/Auth_PasswordLost.d.ts.map +1 -1
  94. package/dist/esm/components/auth/Auth_PasswordLost.labels.d.ts.map +1 -1
  95. package/dist/esm/components/auth/Auth_Register.d.ts.map +1 -1
  96. package/dist/esm/components/auth/Auth_Register.labels.d.ts.map +1 -1
  97. package/dist/esm/components/auth/StepUpAuthDialog.d.ts.map +1 -1
  98. package/dist/esm/components/auth/admin-config/AppPage_SecuritySettings.d.ts.map +1 -1
  99. package/dist/esm/components/auth/admin-config/AppPage_SecuritySettings.labels.d.ts.map +1 -1
  100. package/dist/esm/components/auth/admin-config/ResourceLayoutPreset_Create_SamlWizard.d.ts.map +1 -1
  101. package/dist/esm/components/auth/admin-config/ResourceLayoutPreset_Read_SsoSaml.d.ts.map +1 -1
  102. package/dist/esm/components/auth/admin-config/SsoConnectionSamlReadSection.d.ts.map +1 -1
  103. package/dist/esm/components/auth/enrollment/PasskeyEnrollmentMethod.d.ts.map +1 -1
  104. package/dist/esm/components/auth/enrollment/PhoneEnrollmentMethod.d.ts.map +1 -1
  105. package/dist/esm/components/auth/enrollment/TotpEnrollmentMethod.d.ts.map +1 -1
  106. package/dist/esm/components/auth/enrollment/enrollment-method-components.d.ts.map +1 -1
  107. package/dist/esm/components/auth/methods/EmailOtpAuthMethod.d.ts.map +1 -1
  108. package/dist/esm/components/auth/methods/ExternalOAuth2AuthMethod.d.ts.map +1 -1
  109. package/dist/esm/components/auth/methods/MagicLinkAuthMethod.d.ts.map +1 -1
  110. package/dist/esm/components/auth/methods/OrgOidcAuthMethod.d.ts.map +1 -1
  111. package/dist/esm/components/auth/methods/OrgSamlAuthMethod.d.ts.map +1 -1
  112. package/dist/esm/components/auth/methods/PasskeyAuthMethod.d.ts.map +1 -1
  113. package/dist/esm/components/auth/methods/PasswordAuthMethod.d.ts.map +1 -1
  114. package/dist/esm/components/auth/methods/SmsOtpAuthMethod.d.ts.map +1 -1
  115. package/dist/esm/components/auth/methods/TotpAuthMethod.d.ts.map +1 -1
  116. package/dist/esm/components/auth/methods/auth-method-components.d.ts.map +1 -1
  117. package/dist/esm/components/auth/methods/auth-method-presentation.d.ts.map +1 -1
  118. package/dist/esm/components/auth/pages/AuthPage_AuthCallback.d.ts.map +1 -1
  119. package/dist/esm/components/auth/pages/AuthPage_AuthExchange.d.ts.map +1 -1
  120. package/dist/esm/components/auth/pages/AuthPage_ConfirmEmail.d.ts.map +1 -1
  121. package/dist/esm/components/auth/pages/AuthPage_EnrollmentRequired.d.ts.map +1 -1
  122. package/dist/esm/components/auth/pages/AuthPage_Invitation.d.ts.map +1 -1
  123. package/dist/esm/components/auth/pages/AuthPage_MagicLinkVerify.d.ts.map +1 -1
  124. package/dist/esm/components/auth/pages/AuthPage_Main.d.ts.map +1 -1
  125. package/dist/esm/components/auth/pages/AuthPage_MfaChallenge.d.ts.map +1 -1
  126. package/dist/esm/components/auth/pages/AuthPage_OAuthConsent.d.ts.map +1 -1
  127. package/dist/esm/components/auth/pages/AuthPage_OAuthLoggedOut.d.ts.map +1 -1
  128. package/dist/esm/components/auth/pages/AuthPage_OAuthLogoutConfirm.d.ts.map +1 -1
  129. package/dist/esm/components/auth/pages/AuthPage_OneOffSession.d.ts.map +1 -1
  130. package/dist/esm/components/auth/pages/AuthPage_OrganizationOnboarding.d.ts.map +1 -1
  131. package/dist/esm/components/auth/pages/AuthPage_PasswordLost.d.ts.map +1 -1
  132. package/dist/esm/components/auth/pages/AuthPage_ReAuthenticationCallback.d.ts.map +1 -1
  133. package/dist/esm/components/auth/pages/AuthPage_Register.d.ts.map +1 -1
  134. package/dist/esm/components/auth/utils/AuthMethodChoiceList.d.ts.map +1 -1
  135. package/dist/esm/components/auth/utils/AuthMethodIcon.d.ts.map +1 -1
  136. package/dist/esm/components/auth/utils/AuthSecondaryLink.d.ts.map +1 -1
  137. package/dist/esm/components/auth/utils/AuthSingleFieldFormLayout.d.ts.map +1 -1
  138. package/dist/esm/components/auth/utils/OAuthProvidersSection.d.ts.map +1 -1
  139. package/dist/esm/components/auth/utils/PasswordStrengthIndicator.d.ts.map +1 -1
  140. package/dist/esm/components/auth/utils/oauth-provider-display-label.frontend.utils.d.ts.map +1 -1
  141. package/dist/esm/components/auth/utils/resolvePasswordViolationsToLabels.d.ts.map +1 -1
  142. package/dist/esm/components/auth/utils/useMfaContinuationNavigation.d.ts.map +1 -1
  143. package/dist/esm/components/billing/billing-invoice-history.d.ts.map +1 -1
  144. package/dist/esm/components/billing/billing-plan-change-preview.d.ts.map +1 -1
  145. package/dist/esm/components/billing/billing-portal-link.d.ts.map +1 -1
  146. package/dist/esm/components/billing/billing-pricing-table.d.ts.map +1 -1
  147. package/dist/esm/components/billing/billing-subscription-status.d.ts.map +1 -1
  148. package/dist/esm/components/billing/billing-usage-dashboard.d.ts.map +1 -1
  149. package/dist/esm/components/compliance/GovernedDocumentAcceptanceControl.d.ts.map +1 -1
  150. package/dist/esm/components/data-display/AutomaticDisplayer.d.ts.map +1 -1
  151. package/dist/esm/components/data-display/DisplayField.d.ts.map +1 -1
  152. package/dist/esm/components/data-display/DisplayFieldArray.d.ts.map +1 -1
  153. package/dist/esm/components/data-display/DisplayFieldEditable.d.ts.map +1 -1
  154. package/dist/esm/components/data-display/DisplayFieldEditableArray.d.ts.map +1 -1
  155. package/dist/esm/components/data-display/DisplayFieldReadOnly.d.ts.map +1 -1
  156. package/dist/esm/components/data-display/DisplayFieldReadOnlyArraySection.d.ts.map +1 -1
  157. package/dist/esm/components/data-display/DisplayTemplateContext.d.ts.map +1 -1
  158. package/dist/esm/components/data-display/DisplayValueDispatcher.d.ts.map +1 -1
  159. package/dist/esm/components/data-display/ResourceAutomaticDisplayer.d.ts.map +1 -1
  160. package/dist/esm/components/data-display/ResourceSummaryDisplayer.d.ts.map +1 -1
  161. package/dist/esm/components/data-display/automatic-displayer.utils.d.ts.map +1 -1
  162. package/dist/esm/components/data-display/avatar.d.ts.map +1 -1
  163. package/dist/esm/components/data-display/badge-tone.d.ts.map +1 -1
  164. package/dist/esm/components/data-display/badge.d.ts.map +1 -1
  165. package/dist/esm/components/data-display/chart-echarts.d.ts.map +1 -1
  166. package/dist/esm/components/data-display/chromes/DisplayChromeContext.d.ts.map +1 -1
  167. package/dist/esm/components/data-display/chromes/DisplayFieldChrome.d.ts.map +1 -1
  168. package/dist/esm/components/data-display/description-list.d.ts.map +1 -1
  169. package/dist/esm/components/data-display/display-field-resolution.utils.d.ts.map +1 -1
  170. package/dist/esm/components/data-display/display-field-resolved-props.d.ts.map +1 -1
  171. package/dist/esm/components/data-display/display-resource-link-trail.d.ts.map +1 -1
  172. package/dist/esm/components/data-display/duration.d.ts.map +1 -1
  173. package/dist/esm/components/data-display/external-data-provenance/DisplayFieldProvenanceNote.d.ts.map +1 -1
  174. package/dist/esm/components/data-display/external-data-provenance/external-data-provenance.frontend.d.ts.map +1 -1
  175. package/dist/esm/components/data-display/external-data-provenance/useExternalDataFieldProvenance.d.ts.map +1 -1
  176. package/dist/esm/components/data-display/formatters/display-field-address.d.ts.map +1 -1
  177. package/dist/esm/components/data-display/formatters/display-field-bigdecimal.d.ts.map +1 -1
  178. package/dist/esm/components/data-display/formatters/display-field-boolean.d.ts.map +1 -1
  179. package/dist/esm/components/data-display/formatters/display-field-code.d.ts.map +1 -1
  180. package/dist/esm/components/data-display/formatters/display-field-date.d.ts.map +1 -1
  181. package/dist/esm/components/data-display/formatters/display-field-datetime.d.ts.map +1 -1
  182. package/dist/esm/components/data-display/formatters/display-field-duration.d.ts.map +1 -1
  183. package/dist/esm/components/data-display/formatters/display-field-enum.d.ts.map +1 -1
  184. package/dist/esm/components/data-display/formatters/display-field-file-audio.d.ts.map +1 -1
  185. package/dist/esm/components/data-display/formatters/display-field-file-document.d.ts.map +1 -1
  186. package/dist/esm/components/data-display/formatters/display-field-file-gallery.d.ts.map +1 -1
  187. package/dist/esm/components/data-display/formatters/display-field-file-image.d.ts.map +1 -1
  188. package/dist/esm/components/data-display/formatters/display-field-file-video.d.ts.map +1 -1
  189. package/dist/esm/components/data-display/formatters/display-field-file.d.ts.map +1 -1
  190. package/dist/esm/components/data-display/formatters/display-field-json.d.ts.map +1 -1
  191. package/dist/esm/components/data-display/formatters/display-field-money.d.ts.map +1 -1
  192. package/dist/esm/components/data-display/formatters/display-field-number.d.ts.map +1 -1
  193. package/dist/esm/components/data-display/formatters/display-field-phone.d.ts.map +1 -1
  194. package/dist/esm/components/data-display/formatters/display-field-range-bigdecimal.d.ts.map +1 -1
  195. package/dist/esm/components/data-display/formatters/display-field-range-date.d.ts.map +1 -1
  196. package/dist/esm/components/data-display/formatters/display-field-range-datetime.d.ts.map +1 -1
  197. package/dist/esm/components/data-display/formatters/display-field-range-money.d.ts.map +1 -1
  198. package/dist/esm/components/data-display/formatters/display-field-range-number.d.ts.map +1 -1
  199. package/dist/esm/components/data-display/formatters/display-field-range-time.d.ts.map +1 -1
  200. package/dist/esm/components/data-display/formatters/display-field-string.d.ts.map +1 -1
  201. package/dist/esm/components/data-display/formatters/display-field-time.d.ts.map +1 -1
  202. package/dist/esm/components/data-display/identifier.d.ts.map +1 -1
  203. package/dist/esm/components/data-display/kbd.d.ts.map +1 -1
  204. package/dist/esm/components/data-display/notification-indicator.d.ts.map +1 -1
  205. package/dist/esm/components/data-display/timeline.d.ts.map +1 -1
  206. package/dist/esm/components/data-display/useFileActivation.d.ts.map +1 -1
  207. package/dist/esm/components/feedback/celebration-overlay.d.ts.map +1 -1
  208. package/dist/esm/components/feedback/danger-zone.d.ts.map +1 -1
  209. package/dist/esm/components/feedback/empty-display-policy.utils.d.ts.map +1 -1
  210. package/dist/esm/components/feedback/empty-state.d.ts.map +1 -1
  211. package/dist/esm/components/feedback/error-display.d.ts.map +1 -1
  212. package/dist/esm/components/feedback/features/feature-limit-indicator.d.ts.map +1 -1
  213. package/dist/esm/components/feedback/features/feature-lock-badge.d.ts.map +1 -1
  214. package/dist/esm/components/feedback/features/feature-unavailable-dialog.d.ts.map +1 -1
  215. package/dist/esm/components/feedback/features/feature-unavailable-prompt.d.ts.map +1 -1
  216. package/dist/esm/components/feedback/lazy-door-error-boundary.d.ts.map +1 -1
  217. package/dist/esm/components/feedback/loading-overlay.d.ts.map +1 -1
  218. package/dist/esm/components/feedback/loading-spinner.d.ts.map +1 -1
  219. package/dist/esm/components/feedback/notification-center.d.ts.map +1 -1
  220. package/dist/esm/components/feedback/operations-confirm-critical.d.ts.map +1 -1
  221. package/dist/esm/components/feedback/progress.d.ts.map +1 -1
  222. package/dist/esm/components/feedback/resource-empty-state.d.ts.map +1 -1
  223. package/dist/esm/components/feedback/skeleton-text.d.ts.map +1 -1
  224. package/dist/esm/components/feedback/skeleton.d.ts.map +1 -1
  225. package/dist/esm/components/feedback/toast.d.ts.map +1 -1
  226. package/dist/esm/components/files/Files_UploadGrantDrop.d.ts.map +1 -1
  227. package/dist/esm/components/files/Files_UploadGrantDrop.labels.d.ts.map +1 -1
  228. package/dist/esm/components/files/pages/FilesPage_UploadGrant.d.ts.map +1 -1
  229. package/dist/esm/components/flows-actors/actor.d.ts.map +1 -1
  230. package/dist/esm/components/flows-actors/actor.labels.d.ts.map +1 -1
  231. package/dist/esm/components/flows-actors/agent-config.d.ts.map +1 -1
  232. package/dist/esm/components/flows-actors/agent-config.labels.d.ts.map +1 -1
  233. package/dist/esm/components/flows-actors/approval-modification-refusal.utils.d.ts.map +1 -1
  234. package/dist/esm/components/flows-actors/approval.d.ts.map +1 -1
  235. package/dist/esm/components/flows-actors/approval.labels.d.ts.map +1 -1
  236. package/dist/esm/components/flows-actors/artifact-browser.d.ts.map +1 -1
  237. package/dist/esm/components/flows-actors/artifact-browser.labels.d.ts.map +1 -1
  238. package/dist/esm/components/flows-actors/execution-plan.d.ts.map +1 -1
  239. package/dist/esm/components/flows-actors/execution-plan.labels.d.ts.map +1 -1
  240. package/dist/esm/components/flows-actors/flow-execution.d.ts.map +1 -1
  241. package/dist/esm/components/flows-actors/flow-execution.labels.d.ts.map +1 -1
  242. package/dist/esm/components/flows-actors/flow-node-badges.d.ts.map +1 -1
  243. package/dist/esm/components/flows-actors/flow-node.d.ts.map +1 -1
  244. package/dist/esm/components/flows-actors/flow-node.labels.d.ts.map +1 -1
  245. package/dist/esm/components/flows-actors/flows-actors-graph-runtime.d.ts.map +1 -1
  246. package/dist/esm/components/flows-actors/flows-actors-graph.lazy.d.ts.map +1 -1
  247. package/dist/esm/components/flows-actors/system-catalog.d.ts.map +1 -1
  248. package/dist/esm/components/flows-actors/system-catalog.labels.d.ts.map +1 -1
  249. package/dist/esm/components/flows-actors/task-detail.d.ts.map +1 -1
  250. package/dist/esm/components/flows-actors/task-detail.labels.d.ts.map +1 -1
  251. package/dist/esm/components/flows-actors/task-memory.d.ts.map +1 -1
  252. package/dist/esm/components/flows-actors/task-memory.labels.d.ts.map +1 -1
  253. package/dist/esm/components/form/Form.d.ts.map +1 -1
  254. package/dist/esm/components/form/automated/AutomatedArrayField.d.ts.map +1 -1
  255. package/dist/esm/components/form/automated/AutomatedForm.d.ts.map +1 -1
  256. package/dist/esm/components/form/automated/AutosaveContext.d.ts.map +1 -1
  257. package/dist/esm/components/form/automated/FormField.d.ts.map +1 -1
  258. package/dist/esm/components/form/automated/FormFieldArray.d.ts.map +1 -1
  259. package/dist/esm/components/form/automated/FormFieldComposite.d.ts.map +1 -1
  260. package/dist/esm/components/form/automated/FormFieldRecord.d.ts.map +1 -1
  261. package/dist/esm/components/form/automated/FormTemplateContext.d.ts.map +1 -1
  262. package/dist/esm/components/form/automated/GeneratedAssociationRelationshipField.d.ts.map +1 -1
  263. package/dist/esm/components/form/automated/GeneratedReferenceRelationshipField.d.ts.map +1 -1
  264. package/dist/esm/components/form/automated/ResourceAutomatedForm.d.ts.map +1 -1
  265. package/dist/esm/components/form/automated/automated-form-submit.utils.d.ts.map +1 -1
  266. package/dist/esm/components/form/automated/autosave-derivation.frontend.utils.d.ts.map +1 -1
  267. package/dist/esm/components/form/automated/autosave-indicator.d.ts.map +1 -1
  268. package/dist/esm/components/form/automated/autosave-indicator.utils.d.ts.map +1 -1
  269. package/dist/esm/components/form/automated/create-form-default-values.utils.d.ts.map +1 -1
  270. package/dist/esm/components/form/automated/field-clearing-rule.frontend.utils.d.ts.map +1 -1
  271. package/dist/esm/components/form/automated/form-field-autocomplete.frontend.utils.d.ts.map +1 -1
  272. package/dist/esm/components/form/automated/generated-relationship-field.helpers.d.ts.map +1 -1
  273. package/dist/esm/components/form/automated/generated-relationship-field.hooks.d.ts.map +1 -1
  274. package/dist/esm/components/form/automated/generated-relationship-field.shared.d.ts.map +1 -1
  275. package/dist/esm/components/form/automated/generated-relationship-field.utils.d.ts.map +1 -1
  276. package/dist/esm/components/form/automated/useArrayItemAutosaveField.d.ts.map +1 -1
  277. package/dist/esm/components/form/chromes/FormChromeContext.d.ts.map +1 -1
  278. package/dist/esm/components/form/chromes/FormFieldChrome.d.ts.map +1 -1
  279. package/dist/esm/components/form/chromes/field.d.ts.map +1 -1
  280. package/dist/esm/components/form/chromes/form-primitives.d.ts.map +1 -1
  281. package/dist/esm/components/form/combobox.d.ts.map +1 -1
  282. package/dist/esm/components/form/controls/boolean/checkbox.d.ts.map +1 -1
  283. package/dist/esm/components/form/controls/boolean/switch.d.ts.map +1 -1
  284. package/dist/esm/components/form/controls/boolean/toggle-group-boolean.d.ts.map +1 -1
  285. package/dist/esm/components/form/controls/boolean/toggle.d.ts.map +1 -1
  286. package/dist/esm/components/form/controls/date-time/calendar.d.ts.map +1 -1
  287. package/dist/esm/components/form/controls/date-time/date-range-picker.d.ts.map +1 -1
  288. package/dist/esm/components/form/controls/date-time/datepicker.d.ts.map +1 -1
  289. package/dist/esm/components/form/controls/date-time/datetime-picker.d.ts.map +1 -1
  290. package/dist/esm/components/form/controls/date-time/datetime-range-picker.d.ts.map +1 -1
  291. package/dist/esm/components/form/controls/date-time/time-picker.d.ts.map +1 -1
  292. package/dist/esm/components/form/controls/date-time/time-range-picker.d.ts.map +1 -1
  293. package/dist/esm/components/form/controls/enum/radio.d.ts.map +1 -1
  294. package/dist/esm/components/form/controls/enum/select-multiple.d.ts.map +1 -1
  295. package/dist/esm/components/form/controls/enum/select.d.ts.map +1 -1
  296. package/dist/esm/components/form/controls/enum/toggle-group.d.ts.map +1 -1
  297. package/dist/esm/components/form/controls/file/file-readiness.frontend.utils.d.ts.map +1 -1
  298. package/dist/esm/components/form/controls/file/file-upload.d.ts.map +1 -1
  299. package/dist/esm/components/form/controls/file/image-crop.d.ts.map +1 -1
  300. package/dist/esm/components/form/controls/file/image-crop.frontend.utils.d.ts.map +1 -1
  301. package/dist/esm/components/form/controls/form-field-checkbox-group.d.ts.map +1 -1
  302. package/dist/esm/components/form/controls/input-group.d.ts.map +1 -1
  303. package/dist/esm/components/form/controls/input.d.ts.map +1 -1
  304. package/dist/esm/components/form/controls/number/slider.d.ts +1 -1
  305. package/dist/esm/components/form/controls/number/slider.d.ts.map +1 -1
  306. package/dist/esm/components/form/controls/string/color-input.d.ts.map +1 -1
  307. package/dist/esm/components/form/controls/string/inline-edit-text.d.ts.map +1 -1
  308. package/dist/esm/components/form/controls/string/input-otp.d.ts.map +1 -1
  309. package/dist/esm/components/form/controls/string/markdown-editor.d.ts.map +1 -1
  310. package/dist/esm/components/form/controls/string/markdown-editor.labels.d.ts.map +1 -1
  311. package/dist/esm/components/form/controls/string/password-input.d.ts.map +1 -1
  312. package/dist/esm/components/form/controls/string/textarea.d.ts.map +1 -1
  313. package/dist/esm/components/form/feedback/RemoteChangeNotification.d.ts.map +1 -1
  314. package/dist/esm/components/form/fields/accepted-file-kinds-description.frontend.utils.d.ts.map +1 -1
  315. package/dist/esm/components/form/fields/form-field-address.d.ts.map +1 -1
  316. package/dist/esm/components/form/fields/form-field-address.labels.d.ts.map +1 -1
  317. package/dist/esm/components/form/fields/form-field-bigdecimal.d.ts.map +1 -1
  318. package/dist/esm/components/form/fields/form-field-bigdecimal.labels.d.ts.map +1 -1
  319. package/dist/esm/components/form/fields/form-field-boolean.d.ts.map +1 -1
  320. package/dist/esm/components/form/fields/form-field-boolean.labels.d.ts.map +1 -1
  321. package/dist/esm/components/form/fields/form-field-code.d.ts.map +1 -1
  322. package/dist/esm/components/form/fields/form-field-code.labels.d.ts.map +1 -1
  323. package/dist/esm/components/form/fields/form-field-date.d.ts.map +1 -1
  324. package/dist/esm/components/form/fields/form-field-date.labels.d.ts.map +1 -1
  325. package/dist/esm/components/form/fields/form-field-datetime.d.ts.map +1 -1
  326. package/dist/esm/components/form/fields/form-field-datetime.labels.d.ts.map +1 -1
  327. package/dist/esm/components/form/fields/form-field-duration.d.ts.map +1 -1
  328. package/dist/esm/components/form/fields/form-field-duration.labels.d.ts.map +1 -1
  329. package/dist/esm/components/form/fields/form-field-enum.d.ts.map +1 -1
  330. package/dist/esm/components/form/fields/form-field-enum.labels.d.ts.map +1 -1
  331. package/dist/esm/components/form/fields/form-field-file-provider-constraints.frontend.utils.d.ts.map +1 -1
  332. package/dist/esm/components/form/fields/form-field-file.d.ts.map +1 -1
  333. package/dist/esm/components/form/fields/form-field-file.labels.d.ts.map +1 -1
  334. package/dist/esm/components/form/fields/form-field-money.d.ts.map +1 -1
  335. package/dist/esm/components/form/fields/form-field-money.labels.d.ts.map +1 -1
  336. package/dist/esm/components/form/fields/form-field-number.d.ts.map +1 -1
  337. package/dist/esm/components/form/fields/form-field-number.labels.d.ts.map +1 -1
  338. package/dist/esm/components/form/fields/form-field-phone.d.ts.map +1 -1
  339. package/dist/esm/components/form/fields/form-field-phone.labels.d.ts.map +1 -1
  340. package/dist/esm/components/form/fields/form-field-range-bigdecimal.d.ts.map +1 -1
  341. package/dist/esm/components/form/fields/form-field-range-bigdecimal.labels.d.ts.map +1 -1
  342. package/dist/esm/components/form/fields/form-field-range-date.d.ts.map +1 -1
  343. package/dist/esm/components/form/fields/form-field-range-date.labels.d.ts.map +1 -1
  344. package/dist/esm/components/form/fields/form-field-range-datetime.d.ts.map +1 -1
  345. package/dist/esm/components/form/fields/form-field-range-datetime.labels.d.ts.map +1 -1
  346. package/dist/esm/components/form/fields/form-field-range-money.d.ts.map +1 -1
  347. package/dist/esm/components/form/fields/form-field-range-money.labels.d.ts.map +1 -1
  348. package/dist/esm/components/form/fields/form-field-range-number.d.ts.map +1 -1
  349. package/dist/esm/components/form/fields/form-field-range-number.labels.d.ts.map +1 -1
  350. package/dist/esm/components/form/fields/form-field-range-time.d.ts.map +1 -1
  351. package/dist/esm/components/form/fields/form-field-range-time.labels.d.ts.map +1 -1
  352. package/dist/esm/components/form/fields/form-field-string-organization-role.d.ts.map +1 -1
  353. package/dist/esm/components/form/fields/form-field-string.d.ts.map +1 -1
  354. package/dist/esm/components/form/fields/form-field-string.labels.d.ts.map +1 -1
  355. package/dist/esm/components/form/fields/form-field-time.d.ts.map +1 -1
  356. package/dist/esm/components/form/fields/form-field-time.labels.d.ts.map +1 -1
  357. package/dist/esm/components/form/form-context.d.ts.map +1 -1
  358. package/dist/esm/components/form/form-context.utils.d.ts.map +1 -1
  359. package/dist/esm/components/form/form-field-types.d.ts.map +1 -1
  360. package/dist/esm/components/form/useFormSchemaContext.d.ts.map +1 -1
  361. package/dist/esm/components/form/validation-errors/FormErrorSummary.d.ts.map +1 -1
  362. package/dist/esm/components/form/validation-errors/form-error-extraction.utils.d.ts.map +1 -1
  363. package/dist/esm/components/form/validation-errors/form-validation.d.ts.map +1 -1
  364. package/dist/esm/components/form/validation-errors/getFieldError.d.ts.map +1 -1
  365. package/dist/esm/components/form/validation-errors/resource-error-notification-context.utils.d.ts.map +1 -1
  366. package/dist/esm/components/form/validation-errors/useFieldUniquenessValidation.d.ts.map +1 -1
  367. package/dist/esm/components/form/validation-errors/useServerErrorInjection.d.ts.map +1 -1
  368. package/dist/esm/components/form/validation-errors/validate-field-url.frontend.d.ts.map +1 -1
  369. package/dist/esm/components/layout/aspect-ratio.d.ts.map +1 -1
  370. package/dist/esm/components/layout/carousel.d.ts.map +1 -1
  371. package/dist/esm/components/layout/divider.d.ts.map +1 -1
  372. package/dist/esm/components/layout/resizable.d.ts.map +1 -1
  373. package/dist/esm/components/layout/scroll-area.d.ts.map +1 -1
  374. package/dist/esm/components/layout/separator.d.ts.map +1 -1
  375. package/dist/esm/components/navigation/NavigationItemBadge.d.ts.map +1 -1
  376. package/dist/esm/components/navigation/app-level/ApplicationLevel_ActivityBar.d.ts.map +1 -1
  377. package/dist/esm/components/navigation/app-level/ApplicationLevel_CommandMenu.d.ts.map +1 -1
  378. package/dist/esm/components/navigation/app-level/ApplicationLevel_ControlPanel.d.ts.map +1 -1
  379. package/dist/esm/components/navigation/app-level/ApplicationLevel_MenuBar.d.ts.map +1 -1
  380. package/dist/esm/components/navigation/app-level/ApplicationLevel_MenuUserOrg.d.ts.map +1 -1
  381. package/dist/esm/components/navigation/app-level/ApplicationLevel_NavigationBack.d.ts.map +1 -1
  382. package/dist/esm/components/navigation/app-level/ApplicationLevel_NotificationCenter.d.ts.map +1 -1
  383. package/dist/esm/components/navigation/app-level/ApplicationLevel_QuickActionButton.d.ts.map +1 -1
  384. package/dist/esm/components/navigation/app-level/ApplicationLevel_QuickSwitcher.d.ts.map +1 -1
  385. package/dist/esm/components/navigation/app-level/ApplicationLevel_Sidebar.d.ts.map +1 -1
  386. package/dist/esm/components/navigation/app-level/ApplicationLevel_StatusBar.d.ts.map +1 -1
  387. package/dist/esm/components/navigation/app-level/ApplicationLevel_Toolbar.d.ts.map +1 -1
  388. package/dist/esm/components/navigation/app-level/ApplicationLevel_UtilityPanel.d.ts.map +1 -1
  389. package/dist/esm/components/navigation/app-level/HostedComponentInteractionsProvider.d.ts.map +1 -1
  390. package/dist/esm/components/navigation/app-level/SidebarResourceBrowser.d.ts.map +1 -1
  391. package/dist/esm/components/navigation/app-level/SidebarResourceBrowser.js +5 -27
  392. package/dist/esm/components/navigation/app-level/SidebarResourceBrowser.js.map +1 -1
  393. package/dist/esm/components/navigation/app-level/sidebar-resource-browser-empty-label.d.ts.map +1 -1
  394. package/dist/esm/components/navigation/app-level/useActivityBarBehavior.d.ts.map +1 -1
  395. package/dist/esm/components/navigation/app-level/useCommandMenuBehavior.d.ts.map +1 -1
  396. package/dist/esm/components/navigation/app-level/useControlPanelBehavior.d.ts.map +1 -1
  397. package/dist/esm/components/navigation/app-level/useMenuBarBehavior.d.ts.map +1 -1
  398. package/dist/esm/components/navigation/app-level/useMenuUserOrgBehavior.d.ts.map +1 -1
  399. package/dist/esm/components/navigation/app-level/useNavigationBehaviors.d.ts.map +1 -1
  400. package/dist/esm/components/navigation/app-level/useNotificationCenterBehavior.d.ts.map +1 -1
  401. package/dist/esm/components/navigation/app-level/useQuickActionButtonBehavior.d.ts.map +1 -1
  402. package/dist/esm/components/navigation/app-level/useQuickSwitcherBehavior.d.ts.map +1 -1
  403. package/dist/esm/components/navigation/app-level/useSidebarBehavior.d.ts.map +1 -1
  404. package/dist/esm/components/navigation/app-level/useStatusBarBehavior.d.ts.map +1 -1
  405. package/dist/esm/components/navigation/app-level/useToolbarBehavior.d.ts.map +1 -1
  406. package/dist/esm/components/navigation/app-level/useUtilityPanelBehavior.d.ts.map +1 -1
  407. package/dist/esm/components/navigation/breadcrumb.d.ts.map +1 -1
  408. package/dist/esm/components/navigation/command.d.ts.map +1 -1
  409. package/dist/esm/components/navigation/menu-bar.d.ts.map +1 -1
  410. package/dist/esm/components/navigation/navbar.d.ts.map +1 -1
  411. package/dist/esm/components/navigation/sidebar.d.ts.map +1 -1
  412. package/dist/esm/components/overlays/containers/OverlayContainer.d.ts.map +1 -1
  413. package/dist/esm/components/overlays/containers/OverlayContainer.labels.d.ts.map +1 -1
  414. package/dist/esm/components/overlays/containers/alert-dialog.d.ts.map +1 -1
  415. package/dist/esm/components/overlays/containers/alert.d.ts.map +1 -1
  416. package/dist/esm/components/overlays/containers/dialog.d.ts.map +1 -1
  417. package/dist/esm/components/overlays/containers/dialog.shared-types.d.ts.map +1 -1
  418. package/dist/esm/components/overlays/containers/drawer.d.ts.map +1 -1
  419. package/dist/esm/components/overlays/containers/navigation-overlay-container.utils.d.ts.map +1 -1
  420. package/dist/esm/components/overlays/containers/overlay-container-mode-resolution.utils.d.ts.map +1 -1
  421. package/dist/esm/components/overlays/containers/sheet.d.ts.map +1 -1
  422. package/dist/esm/components/overlays/floating/context-menu.d.ts.map +1 -1
  423. package/dist/esm/components/overlays/floating/dropdown-menu.d.ts.map +1 -1
  424. package/dist/esm/components/overlays/floating/hover-card.d.ts.map +1 -1
  425. package/dist/esm/components/overlays/floating/menu.shared-types.d.ts.map +1 -1
  426. package/dist/esm/components/overlays/floating/popover.d.ts.map +1 -1
  427. package/dist/esm/components/overlays/floating/tooltip.d.ts.map +1 -1
  428. package/dist/esm/components/progression/ProgressionAchievementBadge.d.ts.map +1 -1
  429. package/dist/esm/components/progression/ProgressionAchievementBadge.labels.d.ts.map +1 -1
  430. package/dist/esm/components/progression/ProgressionMilestoneTracker.d.ts.map +1 -1
  431. package/dist/esm/components/progression/ProgressionMilestoneTracker.labels.d.ts.map +1 -1
  432. package/dist/esm/components/resources/CollectionSelectionControls.d.ts.map +1 -1
  433. package/dist/esm/components/resources/CollectionSelectionHeaderRail.d.ts.map +1 -1
  434. package/dist/esm/components/resources/EphemeralFieldsRevealDialog.d.ts.map +1 -1
  435. package/dist/esm/components/resources/InlineSearchInput.d.ts.map +1 -1
  436. package/dist/esm/components/resources/ResourceCollectionBody_Table.d.ts.map +1 -1
  437. package/dist/esm/components/resources/ResourceCollectionFilterPresets.d.ts.map +1 -1
  438. package/dist/esm/components/resources/ResourceCollectionFilterPresets.js +16 -7
  439. package/dist/esm/components/resources/ResourceCollectionFilterPresets.js.map +1 -1
  440. package/dist/esm/components/resources/ResourceCollectionQuickFilterTabs.d.ts.map +1 -1
  441. package/dist/esm/components/resources/ResourceCollectionToolbar.d.ts.map +1 -1
  442. package/dist/esm/components/resources/ResourceInPlaceOperationRow.d.ts.map +1 -1
  443. package/dist/esm/components/resources/ResourceLayout_Action.d.ts.map +1 -1
  444. package/dist/esm/components/resources/ResourceLayout_Action.labels.d.ts.map +1 -1
  445. package/dist/esm/components/resources/ResourceLayout_Breadcrumb.d.ts.map +1 -1
  446. package/dist/esm/components/resources/ResourceLayout_Breadcrumb.labels.d.ts.map +1 -1
  447. package/dist/esm/components/resources/ResourceLayout_CollectionActions.d.ts +1 -1
  448. package/dist/esm/components/resources/ResourceLayout_CollectionActions.d.ts.map +1 -1
  449. package/dist/esm/components/resources/ResourceLayout_CollectionActions.js.map +1 -1
  450. package/dist/esm/components/resources/ResourceLayout_ContainerDialogs.d.ts.map +1 -1
  451. package/dist/esm/components/resources/ResourceLayout_ContainerDialogs.labels.d.ts.map +1 -1
  452. package/dist/esm/components/resources/ResourceLayout_ContainerNested.d.ts.map +1 -1
  453. package/dist/esm/components/resources/ResourceLayout_ContainerNested.labels.d.ts.map +1 -1
  454. package/dist/esm/components/resources/ResourceLayout_Create.d.ts.map +1 -1
  455. package/dist/esm/components/resources/ResourceLayout_Create.labels.d.ts.map +1 -1
  456. package/dist/esm/components/resources/ResourceLayout_DangerZone.d.ts.map +1 -1
  457. package/dist/esm/components/resources/ResourceLayout_DangerZone.labels.d.ts.map +1 -1
  458. package/dist/esm/components/resources/ResourceLayout_FilterChips.d.ts +6 -0
  459. package/dist/esm/components/resources/ResourceLayout_FilterChips.d.ts.map +1 -1
  460. package/dist/esm/components/resources/ResourceLayout_FilterChips.js +36 -0
  461. package/dist/esm/components/resources/ResourceLayout_FilterChips.js.map +1 -1
  462. package/dist/esm/components/resources/ResourceLayout_Filters.d.ts.map +1 -1
  463. package/dist/esm/components/resources/ResourceLayout_Filters.labels.d.ts.map +1 -1
  464. package/dist/esm/components/resources/ResourceLayout_FiltersControl.d.ts.map +1 -1
  465. package/dist/esm/components/resources/ResourceLayout_Header.d.ts.map +1 -1
  466. package/dist/esm/components/resources/ResourceLayout_Header.labels.d.ts.map +1 -1
  467. package/dist/esm/components/resources/ResourceLayout_InsertedViews.d.ts.map +1 -1
  468. package/dist/esm/components/resources/ResourceLayout_List.d.ts.map +1 -1
  469. package/dist/esm/components/resources/ResourceLayout_List.js +1 -0
  470. package/dist/esm/components/resources/ResourceLayout_List.js.map +1 -1
  471. package/dist/esm/components/resources/ResourceLayout_List.labels.d.ts.map +1 -1
  472. package/dist/esm/components/resources/ResourceLayout_List_Table.d.ts.map +1 -1
  473. package/dist/esm/components/resources/ResourceLayout_OperationBulk.d.ts.map +1 -1
  474. package/dist/esm/components/resources/ResourceLayout_OperationBulk.labels.d.ts.map +1 -1
  475. package/dist/esm/components/resources/ResourceLayout_OperationsItems.d.ts.map +1 -1
  476. package/dist/esm/components/resources/ResourceLayout_OperationsItems.labels.d.ts.map +1 -1
  477. package/dist/esm/components/resources/ResourceLayout_Pagination.d.ts.map +1 -1
  478. package/dist/esm/components/resources/ResourceLayout_Pagination.labels.d.ts.map +1 -1
  479. package/dist/esm/components/resources/ResourceLayout_Read.d.ts.map +1 -1
  480. package/dist/esm/components/resources/ResourceLayout_Read.labels.d.ts.map +1 -1
  481. package/dist/esm/components/resources/ResourceLayout_ReadSummary.d.ts.map +1 -1
  482. package/dist/esm/components/resources/ResourceLayout_ReadSummary.labels.d.ts.map +1 -1
  483. package/dist/esm/components/resources/ResourceLayout_ReadSummary_TableRow.d.ts.map +1 -1
  484. package/dist/esm/components/resources/ResourceLayout_Read_Expandable.d.ts.map +1 -1
  485. package/dist/esm/components/resources/ResourceLayout_Search.d.ts.map +1 -1
  486. package/dist/esm/components/resources/ResourceLayout_Search.labels.d.ts.map +1 -1
  487. package/dist/esm/components/resources/ResourceLayout_Search_Table.d.ts.map +1 -1
  488. package/dist/esm/components/resources/ResourceLayout_SemanticOperationFallback.d.ts.map +1 -1
  489. package/dist/esm/components/resources/ResourceLayout_SortControl.d.ts.map +1 -1
  490. package/dist/esm/components/resources/ResourceLayout_Update.d.ts.map +1 -1
  491. package/dist/esm/components/resources/ResourceLayout_Update.labels.d.ts.map +1 -1
  492. package/dist/esm/components/resources/ResourceListItemRenderer.d.ts.map +1 -1
  493. package/dist/esm/components/resources/ResourceOperationActionDropdown.d.ts.map +1 -1
  494. package/dist/esm/components/resources/ResourceOperationActionPopover.d.ts.map +1 -1
  495. package/dist/esm/components/resources/ResourceOperationDetachedHost.d.ts.map +1 -1
  496. package/dist/esm/components/resources/ResourceOperationSurface.d.ts.map +1 -1
  497. package/dist/esm/components/resources/ResourceOwnedViewEmbeds.d.ts.map +1 -1
  498. package/dist/esm/components/resources/ResourceViewModeToggle.d.ts.map +1 -1
  499. package/dist/esm/components/resources/card-action-placement.utils.d.ts.map +1 -1
  500. package/dist/esm/components/resources/collection-view-mode.frontend.d.ts.map +1 -1
  501. package/dist/esm/components/resources/component-props.resources-layout.frontend.schemas.d.ts.map +1 -1
  502. package/dist/esm/components/resources/embeds/ComposedChildrenRegistry.d.ts.map +1 -1
  503. package/dist/esm/components/resources/embeds/EmbeddedResourceDescent.d.ts.map +1 -1
  504. package/dist/esm/components/resources/embeds/EmbeddedResourceHostContext.d.ts.map +1 -1
  505. package/dist/esm/components/resources/embeds/RelatedResourcePreview.d.ts.map +1 -1
  506. package/dist/esm/components/resources/embeds/RelatedResourceSections.d.ts.map +1 -1
  507. package/dist/esm/components/resources/embeds/ResourceEmbeds.d.ts.map +1 -1
  508. package/dist/esm/components/resources/embeds/child-operation-addressability.utils.d.ts.map +1 -1
  509. package/dist/esm/components/resources/embeds/useEmbeddedResourceContext.d.ts.map +1 -1
  510. package/dist/esm/components/resources/inserted-resource-view.frontend.utils.d.ts.map +1 -1
  511. package/dist/esm/components/resources/resource-operation-custom-view.contracts.d.ts.map +1 -1
  512. package/dist/esm/components/resources/resourceLayout.utils.d.ts.map +1 -1
  513. package/dist/esm/components/resources/skeleton/ArrayField.d.ts.map +1 -1
  514. package/dist/esm/components/resources/skeleton/DisplayDiscriminatorSwitch.d.ts.map +1 -1
  515. package/dist/esm/components/resources/skeleton/DisplayLayout.d.ts.map +1 -1
  516. package/dist/esm/components/resources/skeleton/FormErrorSummarySlot.d.ts.map +1 -1
  517. package/dist/esm/components/resources/skeleton/FormLayout.d.ts.map +1 -1
  518. package/dist/esm/components/resources/skeleton/Group.d.ts.map +1 -1
  519. package/dist/esm/components/resources/skeleton/ResourceHeaderTitle.d.ts.map +1 -1
  520. package/dist/esm/components/resources/skeleton/Section.d.ts.map +1 -1
  521. package/dist/esm/components/resources/skeleton/SectionPresentationContext.d.ts.map +1 -1
  522. package/dist/esm/components/resources/skeleton/SubmitButton.d.ts.map +1 -1
  523. package/dist/esm/components/resources/skeleton/SummaryLayout.d.ts.map +1 -1
  524. package/dist/esm/components/resources/skeleton/SummaryTitle.d.ts.map +1 -1
  525. package/dist/esm/components/resources/skeleton/WizardLayout.d.ts.map +1 -1
  526. package/dist/esm/components/resources/skeleton/section-consolidation.shared.d.ts.map +1 -1
  527. package/dist/esm/components/resources/skeleton/section-consolidation.utils.d.ts.map +1 -1
  528. package/dist/esm/components/resources-fields/_presets/resource-reference/ResourceFieldDisplayPreset_ResourceReference_Default.d.ts.map +1 -1
  529. package/dist/esm/components/resources-fields/_presets/resource-reference/ResourceFieldEditPreset_ResourceReference_Default.d.ts.map +1 -1
  530. package/dist/esm/components/resources-fields/_presets/resource-reference/ResourceFieldEditPreset_ResourceReference_Default.labels.d.ts.map +1 -1
  531. package/dist/esm/components/resources-fields/_presets/resource-reference/ResourceFieldEditPreset_ResourceReference_Search.d.ts.map +1 -1
  532. package/dist/esm/components/resources-fields/resource-reference/ResourceFieldDisplay_ResourceReference.d.ts.map +1 -1
  533. package/dist/esm/components/resources-fields/resource-reference/ResourceFieldEdit_ResourceReference.d.ts.map +1 -1
  534. package/dist/esm/components/resources-fields/resource-reference/resource-reference.shared.utils.d.ts.map +1 -1
  535. package/dist/esm/components/resources-fields/resource-reference/useResourceSearch.d.ts.map +1 -1
  536. package/dist/esm/components/sections/ContentSectionContainer.d.ts.map +1 -1
  537. package/dist/esm/components/sections/ContentSectionContainer.labels.d.ts.map +1 -1
  538. package/dist/esm/components/sections/accordion.d.ts.map +1 -1
  539. package/dist/esm/components/sections/card.d.ts.map +1 -1
  540. package/dist/esm/components/sections/collapsible.d.ts.map +1 -1
  541. package/dist/esm/components/sections/content-section.d.ts.map +1 -1
  542. package/dist/esm/components/sections/pagination.d.ts.map +1 -1
  543. package/dist/esm/components/sections/section-grouping.shared.d.ts.map +1 -1
  544. package/dist/esm/components/sections/stacked-layout.d.ts.map +1 -1
  545. package/dist/esm/components/sections/stepper.d.ts.map +1 -1
  546. package/dist/esm/components/sections/surface.d.ts.map +1 -1
  547. package/dist/esm/components/sections/table.d.ts.map +1 -1
  548. package/dist/esm/components/sections/tabs.d.ts.map +1 -1
  549. package/dist/esm/components/settings/AppPage_AgentWorkOverrideRateSettings.d.ts.map +1 -1
  550. package/dist/esm/components/settings/AppPage_AgentWorkOverrideRateSettings.labels.d.ts.map +1 -1
  551. package/dist/esm/components/settings/AppPage_AppearanceSettings.d.ts.map +1 -1
  552. package/dist/esm/components/settings/AppPage_AppearanceSettings.labels.d.ts.map +1 -1
  553. package/dist/esm/components/settings/AppPage_BillingSettings.d.ts.map +1 -1
  554. package/dist/esm/components/settings/AppPage_BillingSettings.labels.d.ts.map +1 -1
  555. package/dist/esm/components/settings/AppPage_ConnectedAccountsSettings.d.ts.map +1 -1
  556. package/dist/esm/components/settings/AppPage_ConnectedAccountsSettings.labels.d.ts.map +1 -1
  557. package/dist/esm/components/settings/AppPage_InvitationsSettings.d.ts.map +1 -1
  558. package/dist/esm/components/settings/AppPage_InvitationsSettings.labels.d.ts.map +1 -1
  559. package/dist/esm/components/settings/SettingsHub.d.ts.map +1 -1
  560. package/dist/esm/components/settings/SettingsHub.labels.d.ts.map +1 -1
  561. package/dist/esm/components/settings/SettingsResourceOperationPanel.d.ts.map +1 -1
  562. package/dist/esm/components/settings/SettingsSectionNavigationHost.d.ts.map +1 -1
  563. package/dist/esm/components/settings/useOwnerProviderConnections.d.ts.map +1 -1
  564. package/dist/esm/components/typography/heading.d.ts.map +1 -1
  565. package/dist/esm/components/typography/label.d.ts.map +1 -1
  566. package/dist/esm/components/typography/link.d.ts.map +1 -1
  567. package/dist/esm/components/typography/text.d.ts.map +1 -1
  568. package/dist/esm/components/typography/truncated-text.d.ts.map +1 -1
  569. package/dist/esm/components/views/ViewLayout_Header.d.ts.map +1 -1
  570. package/dist/esm/components/views/ViewNotFound.d.ts.map +1 -1
  571. package/dist/esm/components/views/ViewNotFound.labels.d.ts.map +1 -1
  572. package/dist/esm/components/views/chart-view/ChartEmptyState.d.ts.map +1 -1
  573. package/dist/esm/components/views/chart-view/ChartErrorState.d.ts.map +1 -1
  574. package/dist/esm/components/views/chart-view/ChartLoadingSkeleton.d.ts.map +1 -1
  575. package/dist/esm/components/views/chart-view/ChartView.d.ts.map +1 -1
  576. package/dist/esm/components/views/chart-view/ChartView.labels.d.ts.map +1 -1
  577. package/dist/esm/components/views/chart-view/ChartView.lazy.d.ts.map +1 -1
  578. package/dist/esm/components/views/chart-view/ChartWidget.d.ts.map +1 -1
  579. package/dist/esm/components/views/chart-view/ChartWidget.labels.d.ts.map +1 -1
  580. package/dist/esm/components/views/chart-view/chart-export.utils.d.ts.map +1 -1
  581. package/dist/esm/components/views/chart-view/chart-runtime.utils.d.ts.map +1 -1
  582. package/dist/esm/components/views/chart-view/chart-theme-bridge.d.ts.map +1 -1
  583. package/dist/esm/components/views/chart-view/chart-view.utils.d.ts.map +1 -1
  584. package/dist/esm/components/views/chart-view/dev/ChartView.example.d.ts.map +1 -1
  585. package/dist/esm/components/views/chart-view/enum-color-bridge.d.ts.map +1 -1
  586. package/dist/esm/components/views/chart-view/option-builder/builder-utils.d.ts.map +1 -1
  587. package/dist/esm/components/views/chart-view/option-builder/builders/bar-family.builder.d.ts.map +1 -1
  588. package/dist/esm/components/views/chart-view/option-builder/builders/composed.builder.d.ts.map +1 -1
  589. package/dist/esm/components/views/chart-view/option-builder/builders/funnel.builder.d.ts.map +1 -1
  590. package/dist/esm/components/views/chart-view/option-builder/builders/gauge.builder.d.ts.map +1 -1
  591. package/dist/esm/components/views/chart-view/option-builder/builders/heatmap.builder.d.ts.map +1 -1
  592. package/dist/esm/components/views/chart-view/option-builder/builders/hierarchical-family.builder.d.ts.map +1 -1
  593. package/dist/esm/components/views/chart-view/option-builder/builders/line-family.builder.d.ts.map +1 -1
  594. package/dist/esm/components/views/chart-view/option-builder/builders/parallel.builder.d.ts.map +1 -1
  595. package/dist/esm/components/views/chart-view/option-builder/builders/pie-family.builder.d.ts.map +1 -1
  596. package/dist/esm/components/views/chart-view/option-builder/builders/radar.builder.d.ts.map +1 -1
  597. package/dist/esm/components/views/chart-view/option-builder/builders/sankey.builder.d.ts.map +1 -1
  598. package/dist/esm/components/views/chart-view/option-builder/builders/scatter-family.builder.d.ts.map +1 -1
  599. package/dist/esm/components/views/chart-view/option-builder/builders/statistical-family.builder.d.ts.map +1 -1
  600. package/dist/esm/components/views/chart-view/option-builder/chart-type-builder.interface.d.ts.map +1 -1
  601. package/dist/esm/components/views/chart-view/option-builder/echarts-option-builder.d.ts.map +1 -1
  602. package/dist/esm/components/views/chart-view/useResourceChartData.d.ts.map +1 -1
  603. package/dist/esm/components/views/composite-view/CompositeLayout.d.ts.map +1 -1
  604. package/dist/esm/components/views/composite-view/CompositeView.d.ts.map +1 -1
  605. package/dist/esm/components/views/composite-view/CompositeViewContext.d.ts.map +1 -1
  606. package/dist/esm/components/views/composite-view/useCompositeResourceOperationContextBuilder.d.ts.map +1 -1
  607. package/dist/esm/components/views/composite-view/useHostRecordDerivedParentContext.d.ts.map +1 -1
  608. package/dist/esm/components/views/execution-view/ExecutionView.d.ts.map +1 -1
  609. package/dist/esm/components/views/execution-view/ExecutionView.labels.d.ts.map +1 -1
  610. package/dist/esm/components/views/flows-actors-view/FlowsActorsView.d.ts.map +1 -1
  611. package/dist/esm/components/views/flows-actors-view/FlowsActorsView.labels.d.ts.map +1 -1
  612. package/dist/esm/components/views/full-custom-view/FullCustomView.d.ts.map +1 -1
  613. package/dist/esm/components/views/onboarding-view/OnboardingView.d.ts.map +1 -1
  614. package/dist/esm/components/views/onboarding-view/OnboardingView.labels.d.ts.map +1 -1
  615. package/dist/esm/components/views/onboarding-view/onboarding-view.utils.d.ts.map +1 -1
  616. package/dist/esm/core/app-shell/AppShellBuildingBlocks.d.ts.map +1 -1
  617. package/dist/esm/core/app-shell/PortalContainerContext.d.ts.map +1 -1
  618. package/dist/esm/core/app-shell/app-shell.schemas.d.ts.map +1 -1
  619. package/dist/esm/core/app-shell/app-shell.utils.d.ts.map +1 -1
  620. package/dist/esm/core/app-shell/hosted-components.utils.d.ts.map +1 -1
  621. package/dist/esm/core/app-shell/useAppShellLayout.d.ts.map +1 -1
  622. package/dist/esm/core/app-shell/usePublicShellLayout.d.ts.map +1 -1
  623. package/dist/esm/core/automated-layout/automated-layout.frontend.schemas.d.ts.map +1 -1
  624. package/dist/esm/core/automated-layout/automated-layout.frontend.utils.d.ts.map +1 -1
  625. package/dist/esm/core/automated-layout/composite-value-defaults.frontend.utils.d.ts.map +1 -1
  626. package/dist/esm/core/automated-layout/default-layout-generator.frontend.utils.d.ts.map +1 -1
  627. package/dist/esm/core/billing/BillingContext.d.ts.map +1 -1
  628. package/dist/esm/core/billing/BillingErrorNotifier.d.ts.map +1 -1
  629. package/dist/esm/core/billing/billing-launcher.d.ts.map +1 -1
  630. package/dist/esm/core/billing/billing-provider-display.frontend.utils.d.ts.map +1 -1
  631. package/dist/esm/core/billing/useBilling.d.ts.map +1 -1
  632. package/dist/esm/core/billing/useBillingAction.d.ts.map +1 -1
  633. package/dist/esm/core/billing/useBillingPlanChange.d.ts.map +1 -1
  634. package/dist/esm/core/billing/useSafeBillingActionExecutor.d.ts.map +1 -1
  635. package/dist/esm/core/branding/useBrandIdentity.d.ts.map +1 -1
  636. package/dist/esm/core/branding/useBrandPresentation.d.ts.map +1 -1
  637. package/dist/esm/core/commons/devices.frontend.schemas.d.ts.map +1 -1
  638. package/dist/esm/core/companion/companion-exports.frontend.definitions.d.ts.map +1 -1
  639. package/dist/esm/core/components-registry/assert-registry-completeness.frontend.helper.d.ts.map +1 -1
  640. package/dist/esm/core/components-registry/component-registry-loader.frontend.service.d.ts.map +1 -1
  641. package/dist/esm/core/components-registry/component-registry.frontend.schemas.d.ts.map +1 -1
  642. package/dist/esm/core/components-registry/component-registry.frontend.service.d.ts.map +1 -1
  643. package/dist/esm/core/components-registry/component-resolver.frontend.helper.d.ts.map +1 -1
  644. package/dist/esm/core/components-registry/provider-component-registry.frontend.service.d.ts.map +1 -1
  645. package/dist/esm/core/components-registry/register-framework-layouts.d.ts.map +1 -1
  646. package/dist/esm/core/components-registry/useProviderComponent.frontend.hooks.d.ts.map +1 -1
  647. package/dist/esm/core/config/app-configuration-frontend.schemas.d.ts +20 -0
  648. package/dist/esm/core/config/app-configuration-frontend.schemas.d.ts.map +1 -1
  649. package/dist/esm/core/config/app-level-components.frontend.schemas.d.ts.map +1 -1
  650. package/dist/esm/core/config/chart-view.frontend.schemas.d.ts +10 -10
  651. package/dist/esm/core/config/chart-view.frontend.schemas.d.ts.map +1 -1
  652. package/dist/esm/core/config/composite-view.schemas.d.ts +4 -4
  653. package/dist/esm/core/config/composite-view.schemas.d.ts.map +1 -1
  654. package/dist/esm/core/config/config-merge-utilities.d.ts +11 -3
  655. package/dist/esm/core/config/config-merge-utilities.d.ts.map +1 -1
  656. package/dist/esm/core/config/config-merge-utilities.js +19 -5
  657. package/dist/esm/core/config/config-merge-utilities.js.map +1 -1
  658. package/dist/esm/core/config/engine-settings-destinations.d.ts.map +1 -1
  659. package/dist/esm/core/config/engine-settings-destinations.js +2 -0
  660. package/dist/esm/core/config/engine-settings-destinations.js.map +1 -1
  661. package/dist/esm/core/config/execution-view.schemas.d.ts.map +1 -1
  662. package/dist/esm/core/config/flows-actors-view.schemas.d.ts.map +1 -1
  663. package/dist/esm/core/config/full-custom-view.schemas.d.ts.map +1 -1
  664. package/dist/esm/core/config/inserted-view-launcher.schemas.d.ts.map +1 -1
  665. package/dist/esm/core/config/inserted-view.frontend.schemas.d.ts.map +1 -1
  666. package/dist/esm/core/config/launcher-items.frontend.schemas.d.ts +58 -25
  667. package/dist/esm/core/config/launcher-items.frontend.schemas.d.ts.map +1 -1
  668. package/dist/esm/core/config/launcher-items.frontend.schemas.js +5 -13
  669. package/dist/esm/core/config/launcher-items.frontend.schemas.js.map +1 -1
  670. package/dist/esm/core/config/onboarding-view.frontend.schemas.d.ts.map +1 -1
  671. package/dist/esm/core/config/resource-owned-view-resolution.frontend.utils.d.ts.map +1 -1
  672. package/dist/esm/core/config/settings-hub-gating.frontend.utils.d.ts +3 -2
  673. package/dist/esm/core/config/settings-hub-gating.frontend.utils.d.ts.map +1 -1
  674. package/dist/esm/core/config/settings-hub-gating.frontend.utils.js +7 -4
  675. package/dist/esm/core/config/settings-hub-gating.frontend.utils.js.map +1 -1
  676. package/dist/esm/core/config/settings-hub-presentation.frontend.utils.d.ts.map +1 -1
  677. package/dist/esm/core/config/settings-hub.frontend.schemas.d.ts +12 -5
  678. package/dist/esm/core/config/settings-hub.frontend.schemas.d.ts.map +1 -1
  679. package/dist/esm/core/config/settings-hub.frontend.schemas.js.map +1 -1
  680. package/dist/esm/core/config/useSettingsHubConfig.d.ts.map +1 -1
  681. package/dist/esm/core/config/useVisibleSettingsHubConfig.d.ts.map +1 -1
  682. package/dist/esm/core/config/verify-feature-references.frontend.d.ts.map +1 -1
  683. package/dist/esm/core/config/verify-launcher-content.d.ts +16 -2
  684. package/dist/esm/core/config/verify-launcher-content.d.ts.map +1 -1
  685. package/dist/esm/core/config/verify-launcher-content.js +61 -2
  686. package/dist/esm/core/config/verify-launcher-content.js.map +1 -1
  687. package/dist/esm/core/config/verify-settings-hub-content.d.ts.map +1 -1
  688. package/dist/esm/core/config/view-label-declaration.schemas.d.ts.map +1 -1
  689. package/dist/esm/core/config/views-frontend.schemas.d.ts.map +1 -1
  690. package/dist/esm/core/enums/common-enum-registry.d.ts.map +1 -1
  691. package/dist/esm/core/errors/ErrorBoundary.d.ts.map +1 -1
  692. package/dist/esm/core/errors/ErrorContext.d.ts.map +1 -1
  693. package/dist/esm/core/errors/ErrorModalContent.d.ts.map +1 -1
  694. package/dist/esm/core/errors/GlobalErrorHandler.d.ts.map +1 -1
  695. package/dist/esm/core/errors/RouterErrorBoundary.d.ts.map +1 -1
  696. package/dist/esm/core/errors/error-management.frontend.service.d.ts.map +1 -1
  697. package/dist/esm/core/errors/errors-builder.frontend.services.d.ts.map +1 -1
  698. package/dist/esm/core/errors/errors.frontend.schemas.d.ts.map +1 -1
  699. package/dist/esm/core/errors/http-error-behavior.frontend.schemas.d.ts.map +1 -1
  700. package/dist/esm/core/errors/useError.d.ts.map +1 -1
  701. package/dist/esm/core/errors/useUserFacingErrorMessage.d.ts.map +1 -1
  702. package/dist/esm/core/errors/user-facing-error-message.frontend.utils.d.ts.map +1 -1
  703. package/dist/esm/core/errors/withErrorBoundary.d.ts.map +1 -1
  704. package/dist/esm/core/events/EventBusContext.d.ts.map +1 -1
  705. package/dist/esm/core/events/NotificationContext.d.ts.map +1 -1
  706. package/dist/esm/core/events/event-bus.frontend.service.d.ts.map +1 -1
  707. package/dist/esm/core/events/events.frontend.schemas.d.ts.map +1 -1
  708. package/dist/esm/core/events/notification-display-policy.frontend.schemas.d.ts.map +1 -1
  709. package/dist/esm/core/events/useEventBus.d.ts.map +1 -1
  710. package/dist/esm/core/events/useNotification.d.ts.map +1 -1
  711. package/dist/esm/core/execution/ExecutionDirtyMarkerScopeContext.d.ts.map +1 -1
  712. package/dist/esm/core/execution/ExecutionRuntimeContext.d.ts.map +1 -1
  713. package/dist/esm/core/execution/execution-anchor.utils.d.ts.map +1 -1
  714. package/dist/esm/core/execution/execution-dirty-markers.utils.d.ts.map +1 -1
  715. package/dist/esm/core/execution/execution-failure-handling.utils.d.ts.map +1 -1
  716. package/dist/esm/core/execution/execution-outcome-emission.utils.d.ts.map +1 -1
  717. package/dist/esm/core/execution/execution-participation.utils.d.ts.map +1 -1
  718. package/dist/esm/core/execution/useExecution.d.ts.map +1 -1
  719. package/dist/esm/core/execution/useExecutionDirtyBridge.d.ts.map +1 -1
  720. package/dist/esm/core/execution/useExecutionParticipationDataPrefetch.d.ts.map +1 -1
  721. package/dist/esm/core/execution/useExecutionParticipationPrefetch.d.ts.map +1 -1
  722. package/dist/esm/core/execution/useExecutionParticipationRMM.d.ts.map +1 -1
  723. package/dist/esm/core/execution/useExecutionResourceOperationContextBuilder.d.ts.map +1 -1
  724. package/dist/esm/core/execution/useExecutionResourceOperationSurface.d.ts.map +1 -1
  725. package/dist/esm/core/external-providers/ConsentBasedProviderSdks.d.ts.map +1 -1
  726. package/dist/esm/core/external-providers/ProviderAddressLookupCombobox.d.ts.map +1 -1
  727. package/dist/esm/core/external-providers/ProviderAddressLookupHost.d.ts.map +1 -1
  728. package/dist/esm/core/external-providers/ProviderFilePickerHost.d.ts.map +1 -1
  729. package/dist/esm/core/external-providers/frontend-provider-display-label.frontend.utils.d.ts.map +1 -1
  730. package/dist/esm/core/external-providers/frontend-provider-registry.frontend.service.d.ts.map +1 -1
  731. package/dist/esm/core/external-providers/provider-address-lookup-selection.frontend.utils.d.ts.map +1 -1
  732. package/dist/esm/core/external-providers/provider-file-selection.frontend.utils.d.ts.map +1 -1
  733. package/dist/esm/core/external-providers/provider-scope-reauthorization-offers.frontend.d.ts.map +1 -1
  734. package/dist/esm/core/features/FeatureGate.d.ts.map +1 -1
  735. package/dist/esm/core/features/FeatureRouteGuard.d.ts.map +1 -1
  736. package/dist/esm/core/features/FeaturesContext.d.ts.map +1 -1
  737. package/dist/esm/core/features/feature-gate-surface.example.d.ts.map +1 -1
  738. package/dist/esm/core/features/feature-unavailability.frontend.utils.d.ts.map +1 -1
  739. package/dist/esm/core/features/useFeatureAvailability.d.ts.map +1 -1
  740. package/dist/esm/core/features/useFeatureGate.d.ts.map +1 -1
  741. package/dist/esm/core/features/useFeatures.d.ts.map +1 -1
  742. package/dist/esm/core/features/useOperationFeatureAvailability.d.ts.map +1 -1
  743. package/dist/esm/core/flows-actors/FlowsActorsContext.d.ts.map +1 -1
  744. package/dist/esm/core/flows-actors/useFlowsActors.d.ts.map +1 -1
  745. package/dist/esm/core/flows-actors/usePendingDecisions.d.ts.map +1 -1
  746. package/dist/esm/core/guidance/GuidanceContext.d.ts.map +1 -1
  747. package/dist/esm/core/guidance/GuidanceRenderer.d.ts.map +1 -1
  748. package/dist/esm/core/guidance/guidance-audience.frontend.utils.d.ts.map +1 -1
  749. package/dist/esm/core/guidance/guidance-resource-compiler.shared.utils.d.ts.map +1 -1
  750. package/dist/esm/core/guidance/renderers/GuidanceAnnouncement.d.ts.map +1 -1
  751. package/dist/esm/core/guidance/renderers/GuidanceAnnouncement.labels.d.ts.map +1 -1
  752. package/dist/esm/core/guidance/renderers/GuidanceBadge.d.ts.map +1 -1
  753. package/dist/esm/core/guidance/renderers/GuidanceBadge.labels.d.ts.map +1 -1
  754. package/dist/esm/core/guidance/renderers/GuidanceBanner.d.ts.map +1 -1
  755. package/dist/esm/core/guidance/renderers/GuidanceBanner.labels.d.ts.map +1 -1
  756. package/dist/esm/core/guidance/renderers/GuidanceCard.d.ts.map +1 -1
  757. package/dist/esm/core/guidance/renderers/GuidanceCard.labels.d.ts.map +1 -1
  758. package/dist/esm/core/guidance/renderers/GuidanceChecklist.d.ts.map +1 -1
  759. package/dist/esm/core/guidance/renderers/GuidanceChecklist.labels.d.ts.map +1 -1
  760. package/dist/esm/core/guidance/renderers/GuidanceChecklistItem.d.ts.map +1 -1
  761. package/dist/esm/core/guidance/renderers/GuidanceChecklistItem.labels.d.ts.map +1 -1
  762. package/dist/esm/core/guidance/renderers/GuidanceModal.d.ts.map +1 -1
  763. package/dist/esm/core/guidance/renderers/GuidanceModal.labels.d.ts.map +1 -1
  764. package/dist/esm/core/guidance/renderers/GuidanceSurvey.d.ts.map +1 -1
  765. package/dist/esm/core/guidance/renderers/GuidanceSurvey.labels.d.ts.map +1 -1
  766. package/dist/esm/core/guidance/renderers/GuidanceTooltip.d.ts.map +1 -1
  767. package/dist/esm/core/guidance/renderers/GuidanceTooltip.labels.d.ts.map +1 -1
  768. package/dist/esm/core/guidance/renderers/GuidanceTour.d.ts.map +1 -1
  769. package/dist/esm/core/guidance/renderers/GuidanceTour.labels.d.ts.map +1 -1
  770. package/dist/esm/core/guidance/useGuidance.d.ts.map +1 -1
  771. package/dist/esm/core/hotkey/DefaultHotkeyHandler.d.ts.map +1 -1
  772. package/dist/esm/core/hotkey/HotkeyRegistryContext.d.ts.map +1 -1
  773. package/dist/esm/core/hotkey/HotkeyShortcutsHelpDialog.d.ts.map +1 -1
  774. package/dist/esm/core/hotkey/hotkey-registry.frontend.schemas.d.ts.map +1 -1
  775. package/dist/esm/core/hotkey/merge-hotkey-emit-shortcuts.d.ts.map +1 -1
  776. package/dist/esm/core/hotkey/useHotkey.d.ts.map +1 -1
  777. package/dist/esm/core/i18n/I18nContext.d.ts.map +1 -1
  778. package/dist/esm/core/i18n/component-label-resolution.utils.d.ts.map +1 -1
  779. package/dist/esm/core/i18n/operation-title-resolution.utils.d.ts.map +1 -1
  780. package/dist/esm/core/i18n/regional-preference-resolution.frontend.utils.d.ts.map +1 -1
  781. package/dist/esm/core/i18n/useI18n.d.ts.map +1 -1
  782. package/dist/esm/core/icons/IconRegistryBridge.d.ts.map +1 -1
  783. package/dist/esm/core/icons/IconRegistryContext.d.ts.map +1 -1
  784. package/dist/esm/core/icons/icon-registry.frontend.definitions.d.ts.map +1 -1
  785. package/dist/esm/core/icons/icon-registry.frontend.schemas.d.ts.map +1 -1
  786. package/dist/esm/core/icons/useIconRegistry.d.ts.map +1 -1
  787. package/dist/esm/core/loading/AppLoadingGate.d.ts.map +1 -1
  788. package/dist/esm/core/loading/LoadingBarrier.d.ts.map +1 -1
  789. package/dist/esm/core/loading/LoadingContext.d.ts.map +1 -1
  790. package/dist/esm/core/loading/LoadingGate.d.ts.map +1 -1
  791. package/dist/esm/core/loading/loading-policy.frontend.schemas.d.ts.map +1 -1
  792. package/dist/esm/core/loading/loading-scope.frontend.utils.d.ts.map +1 -1
  793. package/dist/esm/core/loading/resolveLoadingPolicy.d.ts.map +1 -1
  794. package/dist/esm/core/loading/useAppLoading.d.ts.map +1 -1
  795. package/dist/esm/core/loading/useComponentLoading.d.ts.map +1 -1
  796. package/dist/esm/core/loading/useEmitLoadingScope.d.ts.map +1 -1
  797. package/dist/esm/core/loading/useLoading.d.ts.map +1 -1
  798. package/dist/esm/core/mode/AppModeContext.d.ts.map +1 -1
  799. package/dist/esm/core/mode/section-visibility.d.ts.map +1 -1
  800. package/dist/esm/core/monitoring/analytics/AnalyticsContext.d.ts.map +1 -1
  801. package/dist/esm/core/monitoring/analytics/AnalyticsEventBridge.d.ts.map +1 -1
  802. package/dist/esm/core/monitoring/analytics/AnalyticsScopeBridge.d.ts.map +1 -1
  803. package/dist/esm/core/monitoring/analytics/analytics-provider-registry.frontend.service.d.ts.map +1 -1
  804. package/dist/esm/core/monitoring/analytics/providers/backend-proxy-analytics.provider.d.ts.map +1 -1
  805. package/dist/esm/core/monitoring/analytics/providers/console-analytics.provider.d.ts.map +1 -1
  806. package/dist/esm/core/monitoring/analytics/useAnalytics.d.ts.map +1 -1
  807. package/dist/esm/core/monitoring/error-monitoring-bridge.frontend.service.d.ts.map +1 -1
  808. package/dist/esm/core/monitoring/logger.frontend.service.d.ts.map +1 -1
  809. package/dist/esm/core/navigation/NavigationContentAreas.d.ts.map +1 -1
  810. package/dist/esm/core/navigation/NavigationContext.d.ts.map +1 -1
  811. package/dist/esm/core/navigation/NavigationRequestBridge.d.ts.map +1 -1
  812. package/dist/esm/core/navigation/launcher-resolution.d.ts +9 -1
  813. package/dist/esm/core/navigation/launcher-resolution.d.ts.map +1 -1
  814. package/dist/esm/core/navigation/launcher-resolution.js +33 -6
  815. package/dist/esm/core/navigation/launcher-resolution.js.map +1 -1
  816. package/dist/esm/core/navigation/launcher-runtime-availability.d.ts +21 -5
  817. package/dist/esm/core/navigation/launcher-runtime-availability.d.ts.map +1 -1
  818. package/dist/esm/core/navigation/launcher-runtime-availability.js +40 -7
  819. package/dist/esm/core/navigation/launcher-runtime-availability.js.map +1 -1
  820. package/dist/esm/core/navigation/navigation-cascade.d.ts.map +1 -1
  821. package/dist/esm/core/navigation/navigation-clean-break.frontend.utils.d.ts.map +1 -1
  822. package/dist/esm/core/navigation/navigation-controller-internals.d.ts.map +1 -1
  823. package/dist/esm/core/navigation/navigation-policy-resolver.service.d.ts.map +1 -1
  824. package/dist/esm/core/navigation/navigation.schemas.d.ts.map +1 -1
  825. package/dist/esm/core/navigation/navigation.utils.d.ts.map +1 -1
  826. package/dist/esm/core/navigation/primary-destination-layout.d.ts.map +1 -1
  827. package/dist/esm/core/navigation/sidebar-resource-browser-operation.d.ts +8 -0
  828. package/dist/esm/core/navigation/sidebar-resource-browser-operation.d.ts.map +1 -0
  829. package/dist/esm/core/navigation/sidebar-resource-browser-operation.js +27 -0
  830. package/dist/esm/core/navigation/sidebar-resource-browser-operation.js.map +1 -0
  831. package/dist/esm/core/navigation/useLauncherResolutionContext.d.ts +7 -0
  832. package/dist/esm/core/navigation/useLauncherResolutionContext.d.ts.map +1 -1
  833. package/dist/esm/core/navigation/useLauncherResolutionContext.js +39 -2
  834. package/dist/esm/core/navigation/useLauncherResolutionContext.js.map +1 -1
  835. package/dist/esm/core/navigation/useNavigationController.d.ts.map +1 -1
  836. package/dist/esm/core/navigation/useNavigationRouterSync.d.ts.map +1 -1
  837. package/dist/esm/core/navigation/useNavigationState.d.ts.map +1 -1
  838. package/dist/esm/core/navigation/useOverlayTitle.d.ts.map +1 -1
  839. package/dist/esm/core/navigation/useResponsiveZoneMigration.d.ts.map +1 -1
  840. package/dist/esm/core/navigation/useTransactionAwareSyncRetry.d.ts.map +1 -1
  841. package/dist/esm/core/navigation/view-title-resolution.d.ts.map +1 -1
  842. package/dist/esm/core/navigation/zone-collapse-migration.d.ts.map +1 -1
  843. package/dist/esm/core/navigation/zone-collapse.d.ts.map +1 -1
  844. package/dist/esm/core/navigation/zone-content-geometry.d.ts.map +1 -1
  845. package/dist/esm/core/navigation/zone-emphasis.d.ts.map +1 -1
  846. package/dist/esm/core/navigation/zone-empty-behavior.d.ts.map +1 -1
  847. package/dist/esm/core/navigation/zone-visible-entry.d.ts.map +1 -1
  848. package/dist/esm/core/requests/api-readiness-checker.frontend.service.d.ts.map +1 -1
  849. package/dist/esm/core/requests/client-instance-id.frontend.service.d.ts.map +1 -1
  850. package/dist/esm/core/requests/websockets/ConnectionStatusNotifier.d.ts.map +1 -1
  851. package/dist/esm/core/requests/websockets/WebSocketContext.d.ts.map +1 -1
  852. package/dist/esm/core/requests/websockets/WebSocketEventBridge.d.ts.map +1 -1
  853. package/dist/esm/core/requests/websockets/useNotificationBadges.d.ts.map +1 -1
  854. package/dist/esm/core/requests/websockets/usePublishNotificationBadgeCount.d.ts.map +1 -1
  855. package/dist/esm/core/requests/websockets/useResourceRoom.d.ts.map +1 -1
  856. package/dist/esm/core/requests/websockets/useWebSocket.d.ts.map +1 -1
  857. package/dist/esm/core/requests/websockets/websocket-resource-validation.frontend.service.d.ts.map +1 -1
  858. package/dist/esm/core/requests/wildo-http-client-manual-calls.frontend.service.d.ts.map +1 -1
  859. package/dist/esm/core/requests/wildo-http-client-resources.frontend.service.d.ts.map +1 -1
  860. package/dist/esm/core/requests/wildo-http-client.frontend.service.d.ts.map +1 -1
  861. package/dist/esm/core/resources/ResourceOperationViewContext.d.ts.map +1 -1
  862. package/dist/esm/core/resources/ResourceOperationViewProvider.d.ts.map +1 -1
  863. package/dist/esm/core/resources/ResourceReadCacheBridge.d.ts.map +1 -1
  864. package/dist/esm/core/resources/ResourceRegistryContext.d.ts.map +1 -1
  865. package/dist/esm/core/resources/ScopedResourceRegistryProvider.d.ts.map +1 -1
  866. package/dist/esm/core/resources/bulk-failure-grouping.frontend.utils.d.ts.map +1 -1
  867. package/dist/esm/core/resources/collection-export-url.frontend.utils.d.ts +1 -1
  868. package/dist/esm/core/resources/collection-export-url.frontend.utils.d.ts.map +1 -1
  869. package/dist/esm/core/resources/collection-export-url.frontend.utils.js +29 -1
  870. package/dist/esm/core/resources/collection-export-url.frontend.utils.js.map +1 -1
  871. package/dist/esm/core/resources/collection-filter-presets.frontend.utils.d.ts +22 -8
  872. package/dist/esm/core/resources/collection-filter-presets.frontend.utils.d.ts.map +1 -1
  873. package/dist/esm/core/resources/collection-filter-presets.frontend.utils.js +99 -37
  874. package/dist/esm/core/resources/collection-filter-presets.frontend.utils.js.map +1 -1
  875. package/dist/esm/core/resources/context-resource-identifiers.frontend.utils.d.ts.map +1 -1
  876. package/dist/esm/core/resources/ephemeral-fields.utils.d.ts.map +1 -1
  877. package/dist/esm/core/resources/file-serve-url.frontend.utils.d.ts.map +1 -1
  878. package/dist/esm/core/resources/frontend-resource.utils.d.ts.map +1 -1
  879. package/dist/esm/core/resources/hooks/useOperationEnabled.d.ts.map +1 -1
  880. package/dist/esm/core/resources/in-place/InPlaceOperationContext.d.ts.map +1 -1
  881. package/dist/esm/core/resources/operation-initiator-satisfaction.frontend.utils.d.ts.map +1 -1
  882. package/dist/esm/core/resources/operation-semantics.frontend.utils.d.ts.map +1 -1
  883. package/dist/esm/core/resources/relationship-quick-create.frontend.utils.d.ts.map +1 -1
  884. package/dist/esm/core/resources/relationship-surface-runtime.frontend.utils.d.ts.map +1 -1
  885. package/dist/esm/core/resources/resource-addressability.frontend.utils.d.ts.map +1 -1
  886. package/dist/esm/core/resources/resource-label-field-paths.frontend.utils.d.ts.map +1 -1
  887. package/dist/esm/core/resources/resource-operation-view.frontend.utils.d.ts.map +1 -1
  888. package/dist/esm/core/resources/resource-path.frontend.schemas.d.ts.map +1 -1
  889. package/dist/esm/core/resources/resource-read-cache.frontend.service.d.ts.map +1 -1
  890. package/dist/esm/core/resources/resources-repository.frontend.service.d.ts.map +1 -1
  891. package/dist/esm/core/resources/resources.frontend.schemas.d.ts +70 -21
  892. package/dist/esm/core/resources/resources.frontend.schemas.d.ts.map +1 -1
  893. package/dist/esm/core/resources/resources.frontend.schemas.js +49 -18
  894. package/dist/esm/core/resources/resources.frontend.schemas.js.map +1 -1
  895. package/dist/esm/core/resources/rmm/HttpTransportAdapter.d.ts.map +1 -1
  896. package/dist/esm/core/resources/rmm/RMMRegistry.d.ts.map +1 -1
  897. package/dist/esm/core/resources/rmm/RMMRegistryContext.d.ts.map +1 -1
  898. package/dist/esm/core/resources/rmm/RMMWebSocketBridge.d.ts.map +1 -1
  899. package/dist/esm/core/resources/rmm/ResourceMutationManager.d.ts.map +1 -1
  900. package/dist/esm/core/resources/rmm/canonical-read.frontend.utils.d.ts.map +1 -1
  901. package/dist/esm/core/resources/rmm/mutation-error-report.utils.d.ts.map +1 -1
  902. package/dist/esm/core/resources/rmm/rmm-noop-snapshot.d.ts.map +1 -1
  903. package/dist/esm/core/resources/rmm/types.d.ts.map +1 -1
  904. package/dist/esm/core/resources/rmm/useListInvalidation.d.ts.map +1 -1
  905. package/dist/esm/core/resources/rmm/useRMMEventHandler.d.ts.map +1 -1
  906. package/dist/esm/core/resources/rmm/useRMMSnapshot.d.ts.map +1 -1
  907. package/dist/esm/core/resources/rmm/useResourceMutationManager.d.ts.map +1 -1
  908. package/dist/esm/core/resources/rmm/useResourceRMM.d.ts.map +1 -1
  909. package/dist/esm/core/resources/useAuthedFileObjectUrl.frontend.hook.d.ts.map +1 -1
  910. package/dist/esm/core/resources/useBulkJobProgress.d.ts.map +1 -1
  911. package/dist/esm/core/resources/useHostlessResourceNavigation.d.ts.map +1 -1
  912. package/dist/esm/core/resources/useOperationDirectExecution.d.ts.map +1 -1
  913. package/dist/esm/core/resources/useOperationEnabled.d.ts.map +1 -1
  914. package/dist/esm/core/resources/useResourceLabels.d.ts.map +1 -1
  915. package/dist/esm/core/resources/useResourceOperationActions.d.ts +2 -1
  916. package/dist/esm/core/resources/useResourceOperationActions.d.ts.map +1 -1
  917. package/dist/esm/core/resources/useResourceOperationActions.js.map +1 -1
  918. package/dist/esm/core/resources/useResourceOperationOutcomeEmitter.d.ts.map +1 -1
  919. package/dist/esm/core/resources/useResourceOperationSurface.d.ts.map +1 -1
  920. package/dist/esm/core/resources/useResourceRegistry.d.ts.map +1 -1
  921. package/dist/esm/core/resources/utils/operation-enabled-condition.frontend.utils.d.ts.map +1 -1
  922. package/dist/esm/core/runtime/AppRouter.d.ts.map +1 -1
  923. package/dist/esm/core/runtime/AppRouter.js +3 -2
  924. package/dist/esm/core/runtime/AppRouter.js.map +1 -1
  925. package/dist/esm/core/runtime/ApplicationContext.shared.d.ts.map +1 -1
  926. package/dist/esm/core/runtime/ApplicationMainContext.d.ts.map +1 -1
  927. package/dist/esm/core/runtime/StartupFailureScreen.d.ts.map +1 -1
  928. package/dist/esm/core/runtime/app-config-overrides.frontend.definitions.d.ts.map +1 -1
  929. package/dist/esm/core/runtime/domain-module.frontend.definitions.d.ts.map +1 -1
  930. package/dist/esm/core/runtime/frontend-companion-resource-inputs.d.ts.map +1 -1
  931. package/dist/esm/core/runtime/routes.frontend.definitions.d.ts.map +1 -1
  932. package/dist/esm/core/runtime/runtime.frontend.schemas.d.ts.map +1 -1
  933. package/dist/esm/core/runtime/start-application.frontend.service.d.ts.map +1 -1
  934. package/dist/esm/core/runtime/start-application.frontend.service.js +3 -1
  935. package/dist/esm/core/runtime/start-application.frontend.service.js.map +1 -1
  936. package/dist/esm/core/runtime/startup-failure-copy.frontend.d.ts.map +1 -1
  937. package/dist/esm/core/runtime/useApplication.d.ts.map +1 -1
  938. package/dist/esm/core/scope/AppScopeContext.d.ts.map +1 -1
  939. package/dist/esm/core/scope/scope.frontend.schemas.d.ts.map +1 -1
  940. package/dist/esm/core/scope/scope.utils.frontend.service.d.ts.map +1 -1
  941. package/dist/esm/core/scope/useAppScope.d.ts.map +1 -1
  942. package/dist/esm/core/security/AnonymousSessionContext.d.ts.map +1 -1
  943. package/dist/esm/core/security/AuthSessionContext.d.ts.map +1 -1
  944. package/dist/esm/core/security/StepUpAuthContext.d.ts.map +1 -1
  945. package/dist/esm/core/security/UserOrgsContext.d.ts.map +1 -1
  946. package/dist/esm/core/security/auth-redirect.frontend.utils.d.ts.map +1 -1
  947. package/dist/esm/core/security/auth-session.utils.d.ts.map +1 -1
  948. package/dist/esm/core/security/consent-gate.frontend.utils.d.ts.map +1 -1
  949. package/dist/esm/core/security/cross-frontend-handoff.frontend.service.d.ts.map +1 -1
  950. package/dist/esm/core/security/federated-reauthentication.frontend.d.ts.map +1 -1
  951. package/dist/esm/core/security/organization-onboarding.frontend.utils.d.ts.map +1 -1
  952. package/dist/esm/core/security/registration-outcome.frontend.utils.d.ts.map +1 -1
  953. package/dist/esm/core/security/route-organization-access.frontend.utils.d.ts.map +1 -1
  954. package/dist/esm/core/security/security.frontend.schemas.d.ts.map +1 -1
  955. package/dist/esm/core/security/useAuthSession.d.ts.map +1 -1
  956. package/dist/esm/core/security/useConsentGateBehavior.d.ts.map +1 -1
  957. package/dist/esm/core/security/useDocumentAcceptanceGateBehavior.d.ts.map +1 -1
  958. package/dist/esm/core/security/useGrantedConsentPurposes.d.ts.map +1 -1
  959. package/dist/esm/core/security/useResolvedAuthConfig.d.ts.map +1 -1
  960. package/dist/esm/core/security/useRouteOrganizationAccess.d.ts.map +1 -1
  961. package/dist/esm/core/security/useStepUpAuth.d.ts.map +1 -1
  962. package/dist/esm/core/security/useUserOrgs.d.ts.map +1 -1
  963. package/dist/esm/core/ui/SurfaceErrorBoundary.d.ts.map +1 -1
  964. package/dist/esm/core/ui/SurfaceErrorBoundary.labels.d.ts.map +1 -1
  965. package/dist/esm/core/ui/SurfacePolicyContext.d.ts.map +1 -1
  966. package/dist/esm/core/ui/UIContext.d.ts.map +1 -1
  967. package/dist/esm/core/ui/chart-style-defaults.d.ts.map +1 -1
  968. package/dist/esm/core/ui/design-token-config.utils.d.ts.map +1 -1
  969. package/dist/esm/core/ui/design-token.utils.d.ts.map +1 -1
  970. package/dist/esm/core/ui/material-runtime.d.ts.map +1 -1
  971. package/dist/esm/core/ui/surface-a11y.utils.d.ts.map +1 -1
  972. package/dist/esm/core/ui/themes/default.theme.d.ts.map +1 -1
  973. package/dist/esm/core/ui/ui.frontend.schemas.d.ts +6 -0
  974. package/dist/esm/core/ui/ui.frontend.schemas.d.ts.map +1 -1
  975. package/dist/esm/core/ui/useThemePreferenceControl.d.ts.map +1 -1
  976. package/dist/esm/core/ui/useUI.d.ts.map +1 -1
  977. package/dist/esm/index.d.ts +1 -0
  978. package/dist/esm/index.d.ts.map +1 -1
  979. package/dist/esm/index.js +1 -0
  980. package/dist/esm/index.js.map +1 -1
  981. package/dist/esm/testing/app-shell-placement-coverage.d.ts.map +1 -1
  982. package/dist/esm/testing/mock-builders.d.ts.map +1 -1
  983. package/dist/esm/testing/rmm-helpers.d.ts.map +1 -1
  984. package/dist/esm/testing/test-providers.d.ts.map +1 -1
  985. package/dist/esm/testing.d.ts.map +1 -1
  986. package/dist/tsconfig.build.tsbuildinfo +1 -1
  987. package/package.json +6 -6
@@ -1 +1 @@
1
- {"version":3,"file":"launcher-items.frontend.schemas.js","sourceRoot":"","sources":["../../../../../src/core/config/launcher-items.frontend.schemas.ts"],"names":[],"mappings":"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","sourcesContent":["/**\n * Launcher Item Types & Schemas\n *\n * Per-launcher content declaration model. Each launcher (sidebar, command menu,\n * quick action button, etc.) declares its own content using these types.\n *\n * `LauncherItemTargetKind` is the discriminant for `LauncherItemRef` — it tells\n * the resolution layer what kind of target a launcher item points to.\n *\n * `SidebarSectionContentKind` is the discriminant for sidebar section content —\n * determines whether a section renders a navigation list, a resource browser,\n * a guidance widget, or a custom component.\n *\n * These types are config-time types. The resolution layer (Step 2) transforms\n * them into runtime `ResolvedNavigationItem` instances.\n *\n * @see launcher-operation-binding-analysis.md §3.1.1, §3.2\n * @see component-taxonomy-deep-review.md §3.5\n */\n\nimport { z } from 'zod';\nimport {\n SidebarItemDisplayPolicy,\n CommandMenuDisplayPolicy,\n QuickActionDisplayPolicy,\n HotkeyScope,\n} from './app-level-components.frontend.schemas';\nimport { HorizontalPlacement, VerticalPlacement } from '@wildo-ai/presets-components-models';\nimport { ViewportBreakpoint, ForeignKeyDisplayMode } from '@wildo-ai/zod-decorators';\nimport { CommonRoutePaths } from '~wildo-frontend-lib/core/runtime/routes.frontend.definitions';\nimport { StandardIconReference } from '~wildo-frontend-lib/core/icons/icon-registry.frontend.schemas';\nimport type { AppScopeValue } from '~wildo-frontend-lib/core/scope/scope.frontend.schemas';\n\n// ════════════════════════════════════════════════════════════════\n// Launcher Item Target Kind\n// ════════════════════════════════════════════════════════════════\n\n/**\n * What kind of target a launcher item points to.\n *\n * This is a config-time concept — the resolution layer maps each kind to a\n * navigation action. Different from `NavigationContentType` which is a runtime\n * concept for zone content rendering. Both have `RESOURCE_OPERATION` but serve\n * different axes: `LauncherItemTargetKind` = what a launcher item targets,\n * `NavigationContentType` = what renders in a navigation zone.\n *\n * @see launcher-operation-binding-analysis.md §3.1.1\n */\nexport enum LauncherItemTargetKind {\n /** Navigate to a resource operation (list, create, read, etc.). */\n RESOURCE_OPERATION = 'resource_operation',\n /** Navigate to an application-scoped special view. */\n VIEW = 'view',\n /** Navigate to a resource-scoped special view. */\n RESOURCE_VIEW = 'resource_view',\n /** Navigate to a framework-provided page (home, security settings, etc.). */\n ENGINE_PAGE = 'engine_page',\n /** Render a custom registered React component. */\n CUSTOM_COMPONENT = 'custom_component',\n /** Open the unified Settings Hub (overlay), optionally at a specific section. */\n SETTINGS_SECTION = 'settings_section',\n}\n\n// ════════════════════════════════════════════════════════════════\n// Engine Page Ref (closed enum)\n// ════════════════════════════════════════════════════════════════\n\n/**\n * Framework-provided navigable pages.\n *\n * Closed enum — only framework pages belong here. Auth routes (login, register, etc.)\n * are NOT engine pages. Dev routes (devTest, devThemeGallery) are excluded.\n *\n * The resolution layer maps these to `CommonRoutePaths` in `routes.frontend.definitions.ts`.\n *\n * @see app-shell-implementation-plan.md Step 0 item 1\n */\nexport enum EnginePageRef {\n /** Home page — maps to `CommonRoutePaths.home` (`/`) */\n HOME = 'home',\n // NOTE: security settings is no longer a standalone engine page — it is a\n // section panel inside the unified Settings Hub (`/settings/security` opens the\n // hub at its Security section via `SETTINGS_SECTION` / `useSettingsHubOverlaySync`).\n}\n\n/**\n * Per-engine-page metadata: route, i18n label key, standard icon.\n *\n * Single source of truth — consumed by:\n * - `launcher-resolution.ts` (route + label + icon for resolved engine pages)\n * - `verify-launcher-content.ts` (pageRef existence check)\n * - `useNavigationBehaviors.ts` (home route lookup)\n * - companion `planEnginePageUnits()` (label-key generation)\n *\n * Adding a new engine page = adding the `EnginePageRef` enum entry above\n * + one record entry here. No other touch-up needed.\n */\nexport interface EnginePageMetadata {\n /** Route path under the app. */\n route: string;\n /**\n * i18n key used to resolve the page's display label at\n * `engine.pages.<key>.title` (the companion's `planEnginePageUnits()`\n * emits matching keys for label generation).\n */\n i18nKey: string;\n /** Standard icon to render for navigation entries pointing at this page. */\n icon: StandardIconReference;\n}\n\nexport const ENGINE_PAGE_METADATA: Record<EnginePageRef, EnginePageMetadata> = {\n [EnginePageRef.HOME]: {\n route: CommonRoutePaths.home,\n i18nKey: 'engine.pages.home',\n icon: StandardIconReference.HOME,\n },\n};\n\n// ════════════════════════════════════════════════════════════════\n// Activity Bar & Sidebar Enums\n// ════════════════════════════════════════════════════════════════\n\n/**\n * How the Activity Bar renders at different breakpoints.\n *\n * The activity bar is the mode selector — it shows available `AppMode`s and\n * lets the user switch between them. Its rendering varies by breakpoint.\n *\n * @see component-taxonomy-deep-review.md §3.5.2\n */\nexport enum ActivityBarRendering {\n /** Vertical icon column on the left side (desktop default). */\n VERTICAL_RAIL = 'vertical_rail',\n /** Horizontal icon row at the top (alternative desktop layout). */\n HORIZONTAL_BAR = 'horizontal_bar',\n /** Persistent bottom tab bar (mobile). */\n BOTTOM_TAB_BAR = 'bottom_tab_bar',\n}\n\n/**\n * Sidebar responsive behavior on mobile breakpoints.\n *\n * Controls how the sidebar adapts when the viewport shrinks below\n * its responsive breakpoint.\n *\n * @see component-taxonomy-deep-review.md §7.1\n */\nexport enum SidebarResponsivePolicy {\n /** Sidebar becomes a burger menu / drawer overlay on mobile. */\n BURGER = 'BURGER',\n /** Sidebar stays visible but auto-expands on desktop. */\n DRAWER = 'DRAWER',\n}\n\n/**\n * How the sidebar surfaces the application's HOME destination.\n *\n * Three mutually-exclusive presentations of ONE concept — an app picks the one\n * matching its shell identity, and the framework never renders two home\n * affordances at once.\n */\nexport enum SidebarHomeDisplayMode {\n /**\n * No home affordance in the sidebar at all. For apps whose home is reached\n * elsewhere (a menubar brand, a logo in the shell header) or that have no\n * meaningful home surface.\n */\n HIDDEN = 'hidden',\n /**\n * The application's brand header: its SYMBOL brand asset plus the application\n * display name, PINNED at the very top of the sidebar — above the scroll\n * region and therefore above any hosted component (e.g. the command-menu\n * search trigger). Clicking it navigates home. This is the Slack / Linear /\n * Notion shell convention: the product identity doubles as the home button,\n * so no separate \"Home\" row is needed. Collapsed to the icon rail it shows\n * the symbol alone.\n *\n * The logo resolves from the app's `brandAssets` (see `RuntimeBrandAsset` /\n * `resolveBrandAsset` in `@wildo-ai/saas-models`) for the active light/dark\n * theme; an app with no generated brand shows the name alone (and the\n * framework home icon on the collapsed rail).\n */\n BRAND_HEADER = 'brand_header',\n /**\n * A \"Home\" navigation ROW at the top of the primary navigation group, beside\n * the app's other top-level destinations. The framework default — it assumes\n * nothing about brand assets.\n */\n NAVIGATION_ITEM = 'navigation_item',\n}\n\n/** Sidebar section behavior mode — where a section's ITEMS come from. */\nexport enum SidebarSectionBehavior {\n /** Items are exactly the declared `children`. */\n STATIC = 'static',\n /** Items are produced at runtime by the section's content kind. */\n DYNAMIC = 'dynamic',\n /**\n * Items are the USER'S FAVORITED navigation items: the engine populates the\n * section from starred items across the other navigation-list sections\n * (persisted machine-locally under `LOCAL_STORAGE_KEYS.SIDEBAR_FAVORITES`),\n * REPLACING any declared `children` — author none. Declaring a FAVORITES\n * section is what enables the hover-star affordance on sidebar rows; the\n * section is hidden entirely while no favorites exist, and the engine\n * ordering policy places it right after the primary group. Declare at most\n * ONE favorites section: several would render the same favorited copies\n * (same ids) in each, and the active-row election would highlight one row\n * per duplicate id.\n */\n FAVORITES = 'favorites',\n}\n\n/** Sidebar section inline create mode. */\nexport enum SidebarSectionInlineCreate {\n NONE = 'none',\n INPUT = 'input',\n DIALOG = 'dialog',\n}\n\n/**\n * Quick Action Button placement mode.\n *\n * Replaces the literal string `\"FLOATING\"` patterns in existing schemas.\n * After container inversion (Step 4), the only placement is `FLOATING` or\n * `CONTAINED` (hosted by menubar/sidebar via `hostedComponents`).\n */\nexport enum QuickActionButtonPlacement {\n /** Floating action button overlaying the content area. */\n FLOATING = 'FLOATING',\n /** Contained within a parent component (menubar or sidebar). */\n CONTAINED = 'CONTAINED',\n}\n\n// ════════════════════════════════════════════════════════════════\n// Sidebar Section Content Kind\n// ════════════════════════════════════════════════════════════════\n\n/**\n * What kind of content a sidebar section renders.\n *\n * This is the discriminant for the `SidebarSection` discriminated union.\n * Each content kind has its own set of properties and rendering behavior.\n *\n * @see launcher-operation-binding-analysis.md §3.3.1\n */\nexport enum SidebarSectionContentKind {\n /** Traditional navigation item list (tree, collapsible, inline create). */\n NAVIGATION_LIST = 'navigation_list',\n /** Filterable resource instance list — fetches from a bound operation. */\n RESOURCE_BROWSER = 'resource_browser',\n /** Guidance/onboarding widget — renders a registered guidance component. */\n GUIDANCE_WIDGET = 'guidance_widget',\n /** Arbitrary registered React component. */\n CUSTOM_COMPONENT = 'custom_component',\n}\n\n// ════════════════════════════════════════════════════════════════\n// LauncherItemRef — Discriminated Union\n// ════════════════════════════════════════════════════════════════\n\n/**\n * Points to a resource operation (list, create, read, etc.).\n * The resolution layer resolves this via the resource registry.\n */\nexport interface ResourceOperationItemRef {\n kind: LauncherItemTargetKind.RESOURCE_OPERATION;\n resourceType: string;\n operation: string;\n operationVariant?: string;\n}\n\n/** Points to an application-scoped special view. */\nexport interface ViewItemRef {\n kind: LauncherItemTargetKind.VIEW;\n viewRef: string;\n}\n\n/** Points to a resource-scoped special view. */\nexport interface ResourceViewItemRef {\n kind: LauncherItemTargetKind.RESOURCE_VIEW;\n resourceType: string;\n viewRef: string;\n}\n\n/** Points to a framework page (home, security settings). */\nexport interface EnginePageItemRef {\n kind: LauncherItemTargetKind.ENGINE_PAGE;\n pageRef: EnginePageRef;\n}\n\n/** Points to a registered component — engine or application (see `ComponentRegistryRef`). */\nexport interface CustomComponentItemRef {\n kind: LauncherItemTargetKind.CUSTOM_COMPONENT;\n /**\n * The name a component is REGISTERED under — an engine `FrontendComponentType` member, or an\n * application component a domain module binds in `componentRegistrations` (#549). Resolved through\n * `ComponentRegistryService` under the default preset; a ref nothing is registered under is\n * reported, never rendered as something plausible.\n */\n componentRef: string;\n}\n\n/**\n * Opens the unified Settings Hub (overlay), optionally pre-selecting a section.\n * Resolves to a `/settings` / `/settings/:sectionRef` URL navigation — the hub\n * is URL-driven (`useSettingsHubRouterSync` reconstructs it), so every settings\n * entry point converges on one destination.\n */\nexport interface SettingsSectionItemRef {\n kind: LauncherItemTargetKind.SETTINGS_SECTION;\n /** Section to pre-open; omit to open the hub's default section. */\n sectionRef?: string;\n}\n\n/**\n * A launcher item reference — identifies WHAT a launcher item targets.\n * Discriminated on `kind`. The resolution layer dispatches on this to\n * produce a `ResolvedNavigationItem`.\n *\n * @see launcher-operation-binding-analysis.md §3.2\n */\nexport type LauncherItemRef =\n | ResourceOperationItemRef\n | ViewItemRef\n | ResourceViewItemRef\n | EnginePageItemRef\n | CustomComponentItemRef\n | SettingsSectionItemRef;\n\n/**\n * Toolbar items are navigation-only launcher refs.\n * Custom-component materialization belongs to other app-level surfaces and is\n * intentionally excluded from the global app-level toolbar contract.\n */\nexport type ToolbarItemRef =\n | ResourceOperationItemRef\n | ViewItemRef\n | ResourceViewItemRef\n | EnginePageItemRef;\n\n// ════════════════════════════════════════════════════════════════\n// Per-Launcher Item Types\n// ════════════════════════════════════════════════════════════════\n\n/**\n * A sidebar navigation item — extends `LauncherItemRef` with sidebar-specific\n * display properties. Supports all launcher target kinds as targets.\n */\nexport type SidebarItem = LauncherItemRef & {\n displayPolicy?: SidebarItemDisplayPolicy;\n /**\n * Typed reference to a registered `NotificationBadgeDefinition` — its badge KEY,\n * `<scope>:<identifier>`, built by `buildNotificationBadgeKey` /\n * `notificationBadgeIdentityKey` from `@wildo-ai/saas-models`.\n *\n * The key, not the bare `identifier`: a definition is `(scope, identifier)`, so an identifier\n * alone names a definition only while no second scope declares the same one. Matching on it made\n * the second definition unreachable and gave it the first's count.\n *\n * The resolved definition supplies the display mode / tone / pulse, and the live count comes from\n * `useNotificationBadges`, which indexes by the same key. Reported by `verify-launcher-content`\n * when it resolves to nothing.\n */\n notificationBadgeRef?: string;\n children?: SidebarItem[];\n runtimeAvailability?: LauncherRuntimeAvailabilityConfig;\n};\n\n/** A command menu entry. */\nexport type CommandMenuCommand = LauncherItemRef & {\n category?: string;\n shortcut?: string;\n /**\n * OPTIONAL extra literal match terms, appended to the localized keyword set\n * the palette already resolves for this command. These literals are NOT\n * translated — reserve them for genuinely app-specific jargon that no\n * localized label or operation-verb synonym covers (e.g. an internal codename\n * like `\"boards\"` for a Todo-Lists list command).\n *\n * You do NOT need to author generic action verbs here: for a\n * `RESOURCE_OPERATION` command the framework already folds in the LOCALIZED\n * operation-verb synonyms (`components.APPLICATION_LEVEL_COMMAND_MENU.keywords*`,\n * generated + translated by the labelling pipeline) keyed off the command's\n * core operation semantic, and the record/command noun is covered by the\n * command's already-localized label. So a French user finds \"Create Todo\" by\n * typing \"nouveau\"/\"créer\" without any literal being authored here.\n */\n searchKeywords?: string[];\n displayPolicy?: CommandMenuDisplayPolicy;\n runtimeAvailability?: LauncherRuntimeAvailabilityConfig;\n};\n\n/**\n * @wildo_source:part:start saas.frontend.command-menu.search-resource facet:layer:frontend facet:family:app-shell\n *\n * Declares one resource whose `SEARCH` operation feeds the command menu's\n * **omnibox** record-search layer. Import from `@wildo-ai/saas-frontend-lib`.\n *\n * You list these on the `[ApplicationLevelComponentType.COMMAND_MENU]`\n * config's `searchResources` array (in `frontend/src/config/app-shell.config.ts`);\n * they take effect **only** when that config also sets\n * `policy: CommandBarPolicy.OMNIBOX`. Each entry opts one resource into live,\n * debounced record search inside the Cmd+K palette.\n *\n * Unlike a {@link CommandMenuCommand} — a static, declarative navigation target\n * — this drives a live, debounced query (≥2 chars, 300ms) against the\n * resource's addressable `SEARCH` operation (falling back to `LIST`). Results\n * are labelled with the resource's own frontend label config and, on\n * selection, navigate to the record's addressable `READ` view. Name the\n * searchable set explicitly so the palette never fires queries against\n * resources the app did not opt in.\n *\n * @example\n * // In frontend/src/config/app-shell.config.ts, on [COMMAND_MENU]:\n * searchResources: [\n * { resourceType: 'todos', category: 'todos', maxResults: 5 },\n * { resourceType: 'tasks', category: 'tasks', maxResults: 5 },\n * ]\n */\nexport type CommandMenuSearchResource = {\n /** Resource type whose SEARCH operation is queried (e.g. `'todos'`). */\n resourceType: string;\n /**\n * Group/category ref the results are placed under in the palette. Defaults\n * to the `resourceType` (humanized) when omitted. Resolved through the same\n * i18n category-label path as static command categories.\n */\n category?: string;\n /** Max results fetched per resource per keystroke. Defaults to 5. */\n maxResults?: number;\n /**\n * Relative order weight of this record group in the palette result list —\n * lower renders higher. This is the SINGLE ordering axis the palette sorts\n * every group (record groups AND static command-category groups) by.\n *\n * When omitted, record groups default to a weight ABOVE the static command\n * groups, so live record matches surface FIRST while the user is searching —\n * `searchResources` array position breaks ties among record groups. Static\n * command categories sit on a higher (later) default band, sequenced among\n * themselves by `[COMMAND_MENU].categoryOrder`. Set an explicit `order` to\n * pin a record group anywhere in that merged list (e.g. a large value to push\n * a low-signal resource below the command groups, or a negative value to pin\n * it at the very top).\n */\n order?: number;\n /**\n * How each matched record renders in the palette:\n * - `SUMMARY` (default) — the resource's summary VIEW (its summary card, no\n * action bar), via `ResourceSummaryDisplayer`. Reuses the SUMMARY-mode DTO\n * the `SEARCH` operation already returns, so there is no extra fetch. This\n * is the richer, default representation.\n * - `LABEL` — a single-line resolved label (opt-out / compact fallback).\n *\n * `ID` is treated as `LABEL` here (there is no id-only palette row).\n * Reuses {@link ForeignKeyDisplayMode} — the same LABEL-vs-SUMMARY vocabulary\n * the foreign-key reference picker uses for its dropdown rows — rather than\n * inventing a parallel command-menu-only enum.\n */\n resultDisplay?: ForeignKeyDisplayMode;\n /**\n * OPTIONAL extra literal match terms appended to every result of this\n * resource for client-side fuzzy matching. NOT translated — the raw query is\n * always kept as a keyword (so server hits never drop) and the framework also\n * folds in the LOCALIZED \"search\" verb synonyms\n * (`components.APPLICATION_LEVEL_COMMAND_MENU.keywordsSearch`) for the group.\n * Reserve this field for app-specific jargon a localized label/synonym cannot\n * cover.\n */\n searchKeywords?: string[];\n};\n/** @wildo_source:part:end saas.frontend.command-menu.search-resource */\n\n/** A quick action button entry. */\nexport type QuickActionItem = LauncherItemRef & {\n displayPolicy?: QuickActionDisplayPolicy;\n runtimeAvailability?: LauncherRuntimeAvailabilityConfig;\n};\n\n/**\n * A keyboard shortcut binding to a navigation target (`LauncherItemRef`).\n *\n * `description` overrides the registry/help label. When omitted, the framework uses\n * `tResourceOperation(…, 'title')` for `RESOURCE_OPERATION` targets and the resolved\n * navigation `label` for all other kinds.\n */\nexport type HotkeyBinding = LauncherItemRef & {\n shortcut: string;\n scope?: HotkeyScope;\n description?: string;\n runtimeAvailability?: LauncherRuntimeAvailabilityConfig;\n};\n\n/** A toolbar item. */\nexport type ToolbarItem = ToolbarItemRef & {\n group?: string;\n /** When true, only the icon is shown (label is hidden). */\n iconOnly?: boolean;\n runtimeAvailability?: LauncherRuntimeAvailabilityConfig;\n};\n\n/** A control panel item. */\nexport type ControlPanelItem = LauncherItemRef & {\n section?: string;\n runtimeAvailability?: LauncherRuntimeAvailabilityConfig;\n};\n\n/**\n * A utility panel item (Gmail-style right-side panel).\n *\n * Two target kinds, because the panel hosts two genuinely different things and collapsing them\n * would have meant an untyped props bag (#504):\n *\n * - `CUSTOM_COMPONENT` names a REGISTERED component — engine or application — rendered with no\n * arguments. Until #549 the registry was typed on `FrontendComponentType` and the panel checked\n * enum membership, so an application could not name its own component here however the\n * free-string ref read; the registry key is now `ComponentRegistryRef`, and the panel asks the\n * registry whether anything is registered under the ref.\n * - `VIEW` names an application-scoped view by ref, rendered INLINE in the panel. The panel does not\n * navigate, so this is the same target a launcher item names and a different verb applied to it:\n * the kind says WHAT, the host decides HOW.\n *\n * `VIEW` exists because the content applications actually want beside the workspace is their own —\n * an actor flow, a report — and such a surface needs to know WHICH instance it is showing. A\n * component rendered with no arguments cannot be told, which is why a ref rather than a props object\n * is the right shape: it is the one parameter that identifies an instance, and it is typed.\n */\nexport type UtilityPanelItem =\n | {\n kind: LauncherItemTargetKind.CUSTOM_COMPONENT;\n /**\n * The name a component is REGISTERED under — an engine `FrontendComponentType` member, or an\n * application component a domain module binds in `componentRegistrations` (#549). Resolved through\n * `ComponentRegistryService` under the default preset; a ref nothing is registered under is\n * reported, never rendered as something plausible.\n */\n componentRef: string;\n icon: string;\n label: string;\n }\n | {\n kind: LauncherItemTargetKind.VIEW;\n /** The `ref` of an application-scoped view definition — today, a `FlowsActorsViewDefinition`. */\n viewRef: string;\n icon: string;\n label: string;\n };\n\n/**\n * How a hosted component's TRIGGER renders inside its host surface.\n *\n * The same trigger serves two very different chrome shapes: a menubar's\n * trailing cluster is a row of small icon controls, while a sidebar rail (or a\n * wide top bar) can carry a full input-like control. Declaring the appearance\n * keeps that a per-PLACEMENT decision rather than a component-wide compromise —\n * this application hosts the identical command menu in both surfaces.\n */\nexport enum HostedTriggerAppearance {\n /**\n * Full input-like \"false button\": leading glyph, placeholder text and the\n * shortcut hint. Honors `triggerWidth`. Default.\n */\n EXPANDED = 'expanded',\n /**\n * Square icon-only button sized to the chrome row — what belongs beside the\n * notification bell and the avatar. `triggerWidth` is deliberately IGNORED\n * here: a 240px icon button is dead space, not a wide control.\n */\n COMPACT = 'compact',\n}\n\n/**\n * @wildo_source:part:start saas.frontend.app-shell.hosted-components facet:layer:frontend facet:family:app-shell\n *\n * Hosts an app-level component (the Cmd+K command-menu trigger, a quick-action\n * button, the notification center, …) INSIDE the menubar via container\n * inversion. Import from `@wildo-ai/saas-frontend-lib`.\n *\n * You list these on the `[ApplicationLevelComponentType.MENUBAR]` config's\n * `hostedComponents` array (in `frontend/src/config/app-shell.config.ts`).\n * `componentType` is an `ApplicationLevelComponentType.*` member; `placement`\n * is a {@link HorizontalPlacement} (`START`/`MIDDLE`/`END`) selecting the\n * menubar zone; `breakpoint` restricts the component to one viewport\n * breakpoint. Render order follows array position in `hostedComponents`.\n *\n * The sidebar is the vertical mirror of this contract — see\n * {@link SidebarHostedComponent}. Both surfaces share ONE hosting pipeline, so\n * hosting the SAME component (e.g. the command menu) in both places yields two\n * triggers driving one shared dialog / one hotkey registration, never two.\n *\n * @example\n * // In frontend/src/config/app-shell.config.ts, on [MENUBAR]:\n * hostedComponents: [\n * { componentType: ApplicationLevelComponentType.COMMAND_MENU,\n * placement: HorizontalPlacement.START, triggerWidth: 240 },\n * { componentType: ApplicationLevelComponentType.USER_DROPDOWN,\n * placement: HorizontalPlacement.END },\n * ]\n */\nexport interface MenubarHostedComponent {\n componentType: string;\n /** Which menubar zone the component renders in. Defaults to `START`. */\n placement?: HorizontalPlacement;\n breakpoint?: ViewportBreakpoint;\n /** Override the preset name used for component resolution. Defaults to `CorePresetNames.DEFAULT`. */\n presetName?: string;\n /**\n * Per-placement width override for hosted components that render an\n * input-like trigger (today: the command-menu \"false button\"). Accepts an\n * explicit CSS length — a plain number is treated as pixels (`240` → 240px),\n * or a CSS width string (`'240px'`, `'100%'`, `'16rem'`). Applied as an\n * inline `style.width` because tailwind-merge cannot override the trigger's\n * default width utility. Omit to use the component's built-in default width.\n */\n triggerWidth?: string | number;\n /**\n * How the trigger renders here — see {@link HostedTriggerAppearance}.\n * Defaults to `EXPANDED`. A menubar's trailing cluster normally wants\n * `COMPACT`, so the control is an icon button beside the bell and the avatar;\n * a sidebar rail keeps the full input-like control. `triggerWidth` above is\n * ignored under `COMPACT`.\n */\n triggerAppearance?: HostedTriggerAppearance;\n}\n\n/**\n * Hosts an app-level component INSIDE the sidebar (container inversion — the\n * vertical mirror of {@link MenubarHostedComponent}). Import from\n * `@wildo-ai/saas-frontend-lib`.\n *\n * You list these on the `[ApplicationLevelComponentType.SIDEBAR]` config's\n * `hostedComponents` array. Both surfaces share ONE hosting pipeline\n * (`resolveHostedComponents` + the shell-level interaction owner); the only\n * difference is the placement axis: the sidebar is a vertical column, so\n * `placement` is a {@link VerticalPlacement} (`TOP` renders above the nav,\n * `BOTTOM` below it) rather than the menubar's horizontal axis. `breakpoint`\n * restricts the component to a viewport breakpoint; render order follows array\n * position in `hostedComponents`.\n *\n * @example\n * // In frontend/src/config/app-shell.config.ts, on [SIDEBAR] — the same command\n * // menu ALSO placed in the sidebar, filling the rail width:\n * hostedComponents: [\n * { componentType: ApplicationLevelComponentType.COMMAND_MENU,\n * placement: VerticalPlacement.TOP, triggerWidth: '100%' },\n * ]\n */\nexport interface SidebarHostedComponent {\n componentType: string;\n /** Which end of the sidebar column the component renders at. Defaults to `TOP`. */\n placement?: VerticalPlacement;\n breakpoint?: ViewportBreakpoint;\n /** Override the preset name used for component resolution. Defaults to `CorePresetNames.DEFAULT`. */\n presetName?: string;\n /**\n * Per-placement width override for the hosted trigger (see\n * {@link MenubarHostedComponent.triggerWidth} — number = px, or a CSS width\n * string). A sidebar trigger commonly uses `'100%'` to fill the rail; the\n * menubar copy is typically narrower.\n */\n triggerWidth?: string | number;\n /**\n * How the trigger renders here — see {@link HostedTriggerAppearance}.\n * Defaults to `EXPANDED`. A menubar's trailing cluster normally wants\n * `COMPACT`, so the control is an icon button beside the bell and the avatar;\n * a sidebar rail keeps the full input-like control. `triggerWidth` above is\n * ignored under `COMPACT`.\n */\n triggerAppearance?: HostedTriggerAppearance;\n}\n/** @wildo_source:part:end saas.frontend.app-shell.hosted-components */\n\n/** A menubar-specific launcher item (config-time declaration). */\nexport type MenubarLauncherItem = LauncherItemRef & {\n group?: string;\n runtimeAvailability?: LauncherRuntimeAvailabilityConfig;\n /**\n * A registered `NotificationBadgeDefinition`'s badge KEY (`<scope>:<identifier>`), drawn beside the\n * item's label — the sidebar item's field of the same name, with the same resolution and the same\n * verification. A menubar-only shell had no way to show a count on a destination until this\n * existed.\n */\n notificationBadgeRef?: string;\n};\n\n/**\n * Generic runtime availability contract for launcher declarations.\n *\n * This is intentionally distinct from `requiredFeatures` on resolved\n * view/resource targets:\n * - `runtimeAvailability` decides whether a launcher declaration should survive\n * the app-shell filtering pass at all\n * - `requiredFeatures` stays the canonical plan/subscription gating mechanism\n * once an item has already survived launcher filtering and is being resolved\n */\nexport interface LauncherRuntimeAvailabilityConfig {\n requiredCapabilities?: string[];\n}\n\nexport const LauncherRuntimeAvailabilityConfigSchema = z.object({\n requiredCapabilities: z.array(z.string()).optional(),\n});\n\n// ════════════════════════════════════════════════════════════════\n// Scope Condition Types (used by sidebar sections, evaluated in Macro B)\n// ════════════════════════════════════════════════════════════════\n\n/**\n * Parameters passed to a `ScopeConditionFn` for evaluating section visibility.\n *\n * @see component-taxonomy-deep-review.md §3.5.3\n */\nexport interface ScopeConditionParams {\n /** Current app scope values (workspace, project, environment, etc.). */\n appScopeValues: Record<string, AppScopeValue>;\n /** Currently active mode ref, or `null` if no mode system. */\n activeMode: string | null;\n /** All defined app modes (for inspecting mode metadata). */\n availableModes: AppModeDefinition[];\n}\n\n/**\n * Predicate function that determines whether a sidebar section should be visible\n * based on the current scope and mode state.\n *\n * Returns `true` to show the section, `false` to hide it.\n * Called reactively whenever scope or mode changes.\n */\nexport type ScopeConditionFn = (params: ScopeConditionParams) => boolean;\n\n/**\n * Context provided to a `ResourceBrowser` section's `onInstanceClick` callback.\n */\nexport interface ResourceBrowserClickContext {\n resourceType: string;\n instanceId: string;\n instanceData: Record<string, unknown>;\n}\n\n// ════════════════════════════════════════════════════════════════\n// AppMode Definition\n// ════════════════════════════════════════════════════════════════\n\n/**\n * Defines an application mode (e.g., \"explorer\", \"search\", \"admin\").\n *\n * Modes filter which sidebar sections are visible. The `ACTIVITY_BAR`\n * renders available modes as selectable icons.\n *\n * @see component-taxonomy-deep-review.md §7.3\n */\nexport interface AppModeDefinition {\n /** Unique reference for this mode. */\n ref: string;\n /** Display label (i18n ref). */\n label: string;\n /** Icon identifier for the activity bar. */\n icon: string;\n /** Whether this is the default mode when none is persisted. */\n isDefault?: boolean;\n /** Restrict mode visibility to specific user types. */\n visibleToUserTypes?: string[];\n}\n\n// ════════════════════════════════════════════════════════════════\n// Sidebar Section Types — Discriminated Union on `contentKind`\n// ════════════════════════════════════════════════════════════════\n\n/**\n * Base properties shared by all sidebar section types.\n * `ref` is `string`-typed — no framework enum, apps define their own refs.\n */\nexport interface SidebarSectionBase {\n contentKind: SidebarSectionContentKind;\n /** Section reference — app-defined, used for i18n and configuration matching. */\n ref: string;\n /** Display label (i18n ref). If omitted, section renders without a header. */\n label?: string;\n /** Icon for the section header. */\n icon?: string;\n /** Whether the section header (label + icon) is rendered. Defaults to `true`. */\n showLabel?: boolean;\n /** Whether the section can be collapsed by the user. */\n collapsible?: boolean;\n /** Whether the section starts collapsed. */\n defaultCollapsed?: boolean;\n /**\n * Mode refs this section is visible in. If omitted, visible in all modes.\n * String-based — validated at startup against `appModes[].ref`.\n * Evaluated in Macro B (Step 6).\n */\n visibleInModes?: string[];\n /**\n * Function-based visibility condition for complex scope-dependent logic.\n * Evaluated in Macro B (Step 6).\n */\n scopeCondition?: ScopeConditionFn;\n /** Declarative runtime capability gating evaluated by the app-shell layer. */\n runtimeAvailability?: LauncherRuntimeAvailabilityConfig;\n}\n\n/**\n * Traditional navigation item list section.\n * Supports tree hierarchy, inline create, drag-reorder (via behavior).\n */\nexport interface SidebarSection_NavigationList extends SidebarSectionBase {\n contentKind: SidebarSectionContentKind.NAVIGATION_LIST;\n children: SidebarItem[];\n behavior?: SidebarSectionBehavior;\n /**\n * Marks this section as the sidebar's PRIMARY navigation group — the app's\n * top-level destinations (the \"Home group\"). Primary sections render at the\n * top of the sidebar with no section header and never collapsible. When\n * `SIDEBAR.homeDisplayMode` is `NAVIGATION_ITEM` (the default) the framework's\n * Home row heads that same group, giving the Linear/Notion \"Inbox / My Issues\n * right under Home\" shape; the other home modes surface home elsewhere and\n * leave this group to the app's own destinations.\n *\n * This is a PLACEMENT/CHROME role, deliberately distinct from\n * `SidebarSectionBehavior` (which describes where a section's ITEMS come\n * from). Section ordering is engine policy and ignores declaration order for\n * the special roles: primary section(s) first, then non-empty\n * `SidebarSectionBehavior.FAVORITES` section(s), then the remaining sections\n * in declared order. Modules can therefore contribute a primary section\n * without the app config having to interleave it manually.\n */\n isPrimary?: boolean;\n inlineCreate?: SidebarSectionInlineCreate;\n inlineCreateResourceType?: string;\n /** Field that receives the user's input during inline creation. Defaults to `'title'`. */\n inlineCreateField?: string;\n nested?: boolean;\n maxNestingDepth?: number;\n}\n\n/**\n * Filterable resource instance list section.\n * Fetches data from a bound operation and displays resource instances.\n *\n * @see launcher-operation-binding-analysis.md §3.3.6\n */\nexport interface SidebarSection_ResourceBrowser extends SidebarSectionBase {\n contentKind: SidebarSectionContentKind.RESOURCE_BROWSER;\n /** Resource type to browse. */\n resourceType: string;\n /** Override the default LIST operation (optional — defaults to LIST). */\n operation?: string;\n /** Operation variant for filtered views. */\n operationVariant?: string;\n /**\n * Operation used when the user clicks a listed instance.\n * Defaults to READ when available; otherwise falls back to the bound operation.\n */\n navigateOperation?: string;\n /** Variant for the click/navigation operation. */\n navigateOperationVariant?: string;\n /**\n * Client-side filter predicate applied after fetching.\n * Enables display restrictions (e.g., \"starred only\").\n */\n instanceFilter?: (instance: Record<string, unknown>) => boolean;\n /**\n * Custom click handler for resource instances.\n * Default: navigate to instance via `NavigationUtils.resolveResourceUrl()`.\n */\n onInstanceClick?: (context: ResourceBrowserClickContext) => void;\n}\n\n/** Guidance/onboarding widget section. */\nexport interface SidebarSection_GuidanceWidget extends SidebarSectionBase {\n contentKind: SidebarSectionContentKind.GUIDANCE_WIDGET;\n /** Reference to a registered guidance component. */\n guidanceRef: string;\n}\n\n/** Arbitrary custom component section. */\nexport interface SidebarSection_CustomComponent extends SidebarSectionBase {\n contentKind: SidebarSectionContentKind.CUSTOM_COMPONENT;\n /** The name a component is registered under — engine or application (see `ComponentRegistryRef`, #549). */\n componentRef: string;\n}\n\n/**\n * Discriminated union of all sidebar section types.\n * Narrow on `contentKind` to access type-specific properties.\n */\nexport type SidebarSection =\n | SidebarSection_NavigationList\n | SidebarSection_ResourceBrowser\n | SidebarSection_GuidanceWidget\n | SidebarSection_CustomComponent;\n\n// ════════════════════════════════════════════════════════════════\n// Zod Schemas\n// ════════════════════════════════════════════════════════════════\n\nexport const LauncherItemTargetKindSchema = z.enum(LauncherItemTargetKind);\nexport const EnginePageRefSchema = z.enum(EnginePageRef);\nexport const ActivityBarRenderingSchema = z.enum(ActivityBarRendering);\nexport const SidebarResponsivePolicySchema = z.enum(SidebarResponsivePolicy);\nexport const QuickActionButtonPlacementSchema = z.enum(QuickActionButtonPlacement);\nexport const SidebarSectionContentKindSchema = z.enum(SidebarSectionContentKind);\n\n/** Zod schema for `ResourceOperationItemRef`. */\nexport const ResourceOperationItemRefSchema = z.object({\n kind: z.literal(LauncherItemTargetKind.RESOURCE_OPERATION),\n resourceType: z.string(),\n operation: z.string(),\n operationVariant: z.string().optional(),\n});\n\n/** Zod schema for `ViewItemRef`. */\nexport const ViewItemRefSchema = z.object({\n kind: z.literal(LauncherItemTargetKind.VIEW),\n viewRef: z.string(),\n});\n\n/** Zod schema for `ResourceViewItemRef`. */\nexport const ResourceViewItemRefSchema = z.object({\n kind: z.literal(LauncherItemTargetKind.RESOURCE_VIEW),\n resourceType: z.string(),\n viewRef: z.string(),\n});\n\n/** Zod schema for `EnginePageItemRef`. */\nexport const EnginePageItemRefSchema = z.object({\n kind: z.literal(LauncherItemTargetKind.ENGINE_PAGE),\n pageRef: EnginePageRefSchema,\n});\n\n/** Zod schema for `CustomComponentItemRef`. */\nexport const CustomComponentItemRefSchema = z.object({\n kind: z.literal(LauncherItemTargetKind.CUSTOM_COMPONENT),\n componentRef: z.string(),\n});\n\nexport const SettingsSectionItemRefSchema = z.object({\n kind: z.literal(LauncherItemTargetKind.SETTINGS_SECTION),\n sectionRef: z.string().optional(),\n});\n\n/**\n * Zod schema for `LauncherItemRef` — discriminated union on `kind`.\n * Validates config-time launcher item references.\n */\nexport const LauncherItemRefSchema = z.discriminatedUnion('kind', [\n ResourceOperationItemRefSchema,\n ViewItemRefSchema,\n ResourceViewItemRefSchema,\n EnginePageItemRefSchema,\n CustomComponentItemRefSchema,\n SettingsSectionItemRefSchema,\n]);\n\n/** Zod schema for `SidebarItem`. */\nexport const SidebarItemSchema: z.ZodType<SidebarItem> = z.lazy(() =>\n LauncherItemRefSchema.and(z.object({\n displayPolicy: z.enum(SidebarItemDisplayPolicy).optional(),\n notificationBadgeRef: z.string().optional(),\n children: z.array(SidebarItemSchema).optional(),\n runtimeAvailability: LauncherRuntimeAvailabilityConfigSchema.optional(),\n }))\n);\n\n/** Zod schema for `CommandMenuCommand`. */\nexport const CommandMenuCommandSchema = LauncherItemRefSchema.and(z.object({\n category: z.string().optional(),\n shortcut: z.string().optional(),\n searchKeywords: z.array(z.string()).optional(),\n displayPolicy: z.enum(CommandMenuDisplayPolicy).optional(),\n runtimeAvailability: LauncherRuntimeAvailabilityConfigSchema.optional(),\n}));\n\n/**\n * @wildo_source:part:start saas.frontend.command-menu.search-resource facet:layer:frontend facet:family:app-shell\n *\n * Zod schema for `CommandMenuSearchResource` — validates each entry in the\n * `[COMMAND_MENU].searchResources` array.\n */\nexport const CommandMenuSearchResourceSchema: z.ZodType<CommandMenuSearchResource> = z.object({\n resourceType: z.string(),\n category: z.string().optional(),\n maxResults: z.number().optional(),\n order: z.number().optional(),\n resultDisplay: z.enum([\n ForeignKeyDisplayMode.ID,\n ForeignKeyDisplayMode.LABEL,\n ForeignKeyDisplayMode.SUMMARY,\n ]).optional(),\n searchKeywords: z.array(z.string()).optional(),\n});\n/** @wildo_source:part:end saas.frontend.command-menu.search-resource */\n\n/** Zod schema for `QuickActionItem`. */\nexport const QuickActionItemSchema = LauncherItemRefSchema.and(z.object({\n displayPolicy: z.enum(QuickActionDisplayPolicy).optional(),\n runtimeAvailability: LauncherRuntimeAvailabilityConfigSchema.optional(),\n}));\n\n/** Zod schema for `HotkeyBinding`. */\nexport const HotkeyBindingSchema = LauncherItemRefSchema.and(z.object({\n shortcut: z.string(),\n scope: z.enum(HotkeyScope).optional(),\n description: z.string().optional(),\n runtimeAvailability: LauncherRuntimeAvailabilityConfigSchema.optional(),\n}));\n\n/** Zod schema for `ToolbarItemRef`. */\nexport const ToolbarItemRefSchema = z.discriminatedUnion('kind', [\n ResourceOperationItemRefSchema,\n ViewItemRefSchema,\n ResourceViewItemRefSchema,\n EnginePageItemRefSchema,\n]);\n\n/** Zod schema for `ToolbarItem`. */\nexport const ToolbarItemSchema = ToolbarItemRefSchema.and(z.object({\n group: z.string().optional(),\n iconOnly: z.boolean().optional(),\n runtimeAvailability: LauncherRuntimeAvailabilityConfigSchema.optional(),\n}));\n\n/** Zod schema for `ControlPanelItem`. */\nexport const ControlPanelItemSchema = LauncherItemRefSchema.and(z.object({\n section: z.string().optional(),\n runtimeAvailability: LauncherRuntimeAvailabilityConfigSchema.optional(),\n}));\n\n/**\n * Zod schema for `UtilityPanelItem`.\n *\n * A DISCRIMINATED union rather than one object with two optional refs: an item that carried both a\n * `componentRef` and a `viewRef`, or neither, would parse — and the render path would then have to\n * invent a precedence rule that no author wrote down.\n */\nexport const UtilityPanelItemSchema = z.discriminatedUnion('kind', [\n z.object({\n kind: z.literal(LauncherItemTargetKind.CUSTOM_COMPONENT),\n componentRef: z.string(),\n icon: z.string(),\n label: z.string(),\n }),\n z.object({\n kind: z.literal(LauncherItemTargetKind.VIEW),\n viewRef: z.string(),\n icon: z.string(),\n label: z.string(),\n }),\n]);\n\n/**\n * @wildo_source:part:start saas.frontend.app-shell.hosted-components facet:layer:frontend facet:family:app-shell\n *\n * Zod schema for `MenubarHostedComponent` — validates each entry in the\n * `[MENUBAR].hostedComponents` array. `placement` determines which zone\n * (START/MIDDLE/END) the component renders in; `breakpoint` restricts the\n * component to a specific viewport breakpoint. Render order follows array\n * position in `hostedComponents`.\n */\nexport const MenubarHostedComponentSchema = z.object({\n componentType: z.string(),\n placement: z.enum(HorizontalPlacement).optional(),\n breakpoint: z.enum(ViewportBreakpoint).optional(),\n presetName: z.string().optional(),\n triggerWidth: z.union([z.string(), z.number()]).optional(),\n triggerAppearance: z.enum(HostedTriggerAppearance).optional(),\n});\n\n/**\n * Zod schema for `SidebarHostedComponent` — declares a component hosted within\n * the sidebar (the vertical mirror of `MenubarHostedComponentSchema`).\n * `placement` selects which end of the sidebar column the component renders at\n * (`TOP`/`BOTTOM`); `breakpoint` restricts it to a viewport breakpoint. Render\n * order follows array position in `hostedComponents`.\n */\nexport const SidebarHostedComponentSchema = z.object({\n componentType: z.string(),\n placement: z.enum(VerticalPlacement).optional(),\n breakpoint: z.enum(ViewportBreakpoint).optional(),\n presetName: z.string().optional(),\n triggerWidth: z.union([z.string(), z.number()]).optional(),\n triggerAppearance: z.enum(HostedTriggerAppearance).optional(),\n});\n/** @wildo_source:part:end saas.frontend.app-shell.hosted-components */\n\n/** Zod schema for `MenubarLauncherItem`. */\nexport const MenubarLauncherItemSchema = LauncherItemRefSchema.and(z.object({\n group: z.string().optional(),\n runtimeAvailability: LauncherRuntimeAvailabilityConfigSchema.optional(),\n notificationBadgeRef: z.string().optional(),\n}));\n\n// ── Sidebar Section Schemas (discriminated union on contentKind) ──\n\nconst SidebarSectionBaseSchema = z.object({\n ref: z.string(),\n label: z.string().optional(),\n icon: z.string().optional(),\n showLabel: z.boolean().optional(),\n collapsible: z.boolean().optional(),\n defaultCollapsed: z.boolean().optional(),\n visibleInModes: z.array(z.string()).optional(),\n runtimeAvailability: LauncherRuntimeAvailabilityConfigSchema.optional(),\n});\n\nexport const SidebarSection_NavigationListSchema = SidebarSectionBaseSchema.extend({\n contentKind: z.literal(SidebarSectionContentKind.NAVIGATION_LIST),\n children: z.array(SidebarItemSchema),\n behavior: z.enum(SidebarSectionBehavior).optional(),\n isPrimary: z.boolean().optional(),\n inlineCreate: z.enum(SidebarSectionInlineCreate).optional(),\n inlineCreateResourceType: z.string().optional(),\n inlineCreateField: z.string().optional(),\n nested: z.boolean().optional(),\n maxNestingDepth: z.number().optional(),\n});\n\nexport const SidebarSection_ResourceBrowserSchema = SidebarSectionBaseSchema.extend({\n contentKind: z.literal(SidebarSectionContentKind.RESOURCE_BROWSER),\n resourceType: z.string(),\n operation: z.string().optional(),\n operationVariant: z.string().optional(),\n navigateOperation: z.string().optional(),\n navigateOperationVariant: z.string().optional(),\n});\n\nexport const SidebarSection_GuidanceWidgetSchema = SidebarSectionBaseSchema.extend({\n contentKind: z.literal(SidebarSectionContentKind.GUIDANCE_WIDGET),\n guidanceRef: z.string(),\n});\n\nexport const SidebarSection_CustomComponentSchema = SidebarSectionBaseSchema.extend({\n contentKind: z.literal(SidebarSectionContentKind.CUSTOM_COMPONENT),\n componentRef: z.string(),\n});\n\n/**\n * Zod schema for `SidebarSection` — discriminated union on `contentKind`.\n *\n * Note: `scopeCondition` (on `SidebarSectionBase`), `instanceFilter`, and\n * `onInstanceClick` (on `SidebarSection_ResourceBrowser`) are function types\n * that cannot be validated by Zod. They are typed on the TypeScript interfaces\n * but excluded from the Zod schema (runtime code handles them directly).\n */\nexport const SidebarSectionSchema = z.discriminatedUnion('contentKind', [\n SidebarSection_NavigationListSchema,\n SidebarSection_ResourceBrowserSchema,\n SidebarSection_GuidanceWidgetSchema,\n SidebarSection_CustomComponentSchema,\n]);\n\n/** Zod schema for `AppModeDefinition`. */\nexport const AppModeDefinitionSchema = z.object({\n ref: z.string(),\n label: z.string(),\n icon: z.string(),\n isDefault: z.boolean().optional(),\n visibleToUserTypes: z.array(z.string()).optional(),\n});\n"]}
1
+ {"version":3,"file":"launcher-items.frontend.schemas.js","sourceRoot":"","sources":["../../../../src/core/config/launcher-items.frontend.schemas.ts"],"names":[],"mappings":"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","sourcesContent":["/**\n * Launcher Item Types & Schemas\n *\n * Per-launcher content declaration model. Each launcher (sidebar, command menu,\n * quick action button, etc.) declares its own content using these types.\n *\n * `LauncherItemTargetKind` is the discriminant for `LauncherItemRef` — it tells\n * the resolution layer what kind of target a launcher item points to.\n *\n * `SidebarSectionContentKind` is the discriminant for sidebar section content —\n * determines whether a section renders a navigation list, a resource browser,\n * a guidance widget, or a custom component.\n *\n * These types are config-time types. The resolution layer (Step 2) transforms\n * them into runtime `ResolvedNavigationItem` instances.\n */\n\nimport { z } from 'zod';\nimport {\n SidebarItemDisplayPolicy,\n CommandMenuDisplayPolicy,\n QuickActionDisplayPolicy,\n HotkeyScope,\n} from './app-level-components.frontend.schemas';\nimport { HorizontalPlacement, VerticalPlacement } from '@wildo-ai/presets-components-models';\nimport { ViewportBreakpoint, ForeignKeyDisplayMode } from '@wildo-ai/zod-decorators';\nimport { CommonRoutePaths } from '~wildo-frontend-lib/core/runtime/routes.frontend.definitions';\nimport { StandardIconReference } from '~wildo-frontend-lib/core/icons/icon-registry.frontend.schemas';\nimport type { AppScopeValue } from '~wildo-frontend-lib/core/scope/scope.frontend.schemas';\n\n// ════════════════════════════════════════════════════════════════\n// Launcher Item Target Kind\n// ════════════════════════════════════════════════════════════════\n\n/** @wildo_source:part:start saas.frontend.launcher.item-refs facet:layer:frontend facet:family:app-shell facet:audience:app-developer */\n/**\n * What kind of target a launcher item points to.\n *\n * This is a config-time concept — the resolution layer maps each kind to a\n * navigation action. Different from `NavigationContentType` which is a runtime\n * concept for zone content rendering. Both have `RESOURCE_OPERATION` but serve\n * different axes: `LauncherItemTargetKind` = what a launcher item targets,\n * `NavigationContentType` = what renders in a navigation zone.\n */\nexport enum LauncherItemTargetKind {\n /** Navigate to a resource operation (list, create, read, etc.). */\n RESOURCE_OPERATION = 'resource_operation',\n /** Navigate to an application-scoped special view. */\n VIEW = 'view',\n /** Navigate to a resource-scoped special view. */\n RESOURCE_VIEW = 'resource_view',\n /** Navigate to a framework-provided page (home, security settings, etc.). */\n ENGINE_PAGE = 'engine_page',\n /** Render a custom registered React component. */\n CUSTOM_COMPONENT = 'custom_component',\n /** Open the unified Settings Hub (overlay), optionally at a specific section. */\n SETTINGS_SECTION = 'settings_section',\n}\n/** @wildo_source:part:end saas.frontend.launcher.item-refs */\n\n// ════════════════════════════════════════════════════════════════\n// Engine Page Ref (closed enum)\n// ════════════════════════════════════════════════════════════════\n\n/**\n * Framework-provided navigable pages.\n *\n * Closed enum — only framework pages belong here. Auth routes (login, register, etc.)\n * are NOT engine pages. Dev routes (devTest, devThemeGallery) are excluded.\n *\n * The resolution layer maps these to `CommonRoutePaths` in `routes.frontend.definitions.ts`.\n */\nexport enum EnginePageRef {\n /** Home page — maps to `CommonRoutePaths.home` (`/`) */\n HOME = 'home',\n // NOTE: security settings is no longer a standalone engine page — it is a\n // section panel inside the unified Settings Hub (`/settings/security` opens the\n // hub at its Security section via `SETTINGS_SECTION` / `useSettingsHubOverlaySync`).\n}\n\n/**\n * Per-engine-page metadata: route, i18n label key, standard icon.\n *\n * Single source of truth — consumed by:\n * - `launcher-resolution.ts` (route + label + icon for resolved engine pages)\n * - `verify-launcher-content.ts` (pageRef existence check)\n * - `useNavigationBehaviors.ts` (home route lookup)\n * - companion `planEnginePageUnits()` (label-key generation)\n *\n * Adding a new engine page = adding the `EnginePageRef` enum entry above\n * + one record entry here. No other touch-up needed.\n */\nexport interface EnginePageMetadata {\n /** Route path under the app. */\n route: string;\n /**\n * i18n key used to resolve the page's display label at\n * `engine.pages.<key>.title` (the companion's `planEnginePageUnits()`\n * emits matching keys for label generation).\n */\n i18nKey: string;\n /** Standard icon to render for navigation entries pointing at this page. */\n icon: StandardIconReference;\n}\n\nexport const ENGINE_PAGE_METADATA: Record<EnginePageRef, EnginePageMetadata> = {\n [EnginePageRef.HOME]: {\n route: CommonRoutePaths.home,\n i18nKey: 'engine.pages.home',\n icon: StandardIconReference.HOME,\n },\n};\n\n// ════════════════════════════════════════════════════════════════\n// Activity Bar & Sidebar Enums\n// ════════════════════════════════════════════════════════════════\n\n/**\n * How the Activity Bar renders at different breakpoints.\n *\n * The activity bar is the mode selector — it shows available `AppMode`s and\n * lets the user switch between them. Its rendering varies by breakpoint.\n */\nexport enum ActivityBarRendering {\n /** Vertical icon column on the left side (desktop default). */\n VERTICAL_RAIL = 'vertical_rail',\n /** Horizontal icon row at the top (alternative desktop layout). */\n HORIZONTAL_BAR = 'horizontal_bar',\n /** Persistent bottom tab bar (mobile). */\n BOTTOM_TAB_BAR = 'bottom_tab_bar',\n}\n\n/**\n * Sidebar responsive behavior on mobile breakpoints.\n *\n * Controls how the sidebar adapts when the viewport shrinks below\n * its responsive breakpoint.\n */\nexport enum SidebarResponsivePolicy {\n /** Sidebar becomes a burger menu / drawer overlay on mobile. */\n BURGER = 'BURGER',\n /** Sidebar stays visible but auto-expands on desktop. */\n DRAWER = 'DRAWER',\n}\n\n/**\n * How the sidebar surfaces the application's HOME destination.\n *\n * Three mutually-exclusive presentations of ONE concept — an app picks the one\n * matching its shell identity, and the framework never renders two home\n * affordances at once.\n */\nexport enum SidebarHomeDisplayMode {\n /**\n * No home affordance in the sidebar at all. For apps whose home is reached\n * elsewhere (a menubar brand, a logo in the shell header) or that have no\n * meaningful home surface.\n */\n HIDDEN = 'hidden',\n /**\n * The application's brand header: its SYMBOL brand asset plus the application\n * display name, PINNED at the very top of the sidebar — above the scroll\n * region and therefore above any hosted component (e.g. the command-menu\n * search trigger). Clicking it navigates home. This is the Slack / Linear /\n * Notion shell convention: the product identity doubles as the home button,\n * so no separate \"Home\" row is needed. Collapsed to the icon rail it shows\n * the symbol alone.\n *\n * The logo resolves from the app's `brandAssets` (see `RuntimeBrandAsset` /\n * `resolveBrandAsset` in `@wildo-ai/saas-models`) for the active light/dark\n * theme; an app with no generated brand shows the name alone (and the\n * framework home icon on the collapsed rail).\n */\n BRAND_HEADER = 'brand_header',\n /**\n * A \"Home\" navigation ROW at the top of the primary navigation group, beside\n * the app's other top-level destinations. The framework default — it assumes\n * nothing about brand assets.\n */\n NAVIGATION_ITEM = 'navigation_item',\n}\n\n/** Sidebar section behavior mode — where a section's ITEMS come from. */\nexport enum SidebarSectionBehavior {\n /** Items are exactly the declared `children`. */\n STATIC = 'static',\n /** Items are produced at runtime by the section's content kind. */\n DYNAMIC = 'dynamic',\n /**\n * Items are the USER'S FAVORITED navigation items: the engine populates the\n * section from starred items across the other navigation-list sections\n * (persisted machine-locally under `LOCAL_STORAGE_KEYS.SIDEBAR_FAVORITES`),\n * REPLACING any declared `children` — author none. Declaring a FAVORITES\n * section is what enables the hover-star affordance on sidebar rows; the\n * section is hidden entirely while no favorites exist, and the engine\n * ordering policy places it right after the primary group. Declare at most\n * ONE favorites section: several would render the same favorited copies\n * (same ids) in each, and the active-row election would highlight one row\n * per duplicate id.\n */\n FAVORITES = 'favorites',\n}\n\n/** Sidebar section inline create mode. */\nexport enum SidebarSectionInlineCreate {\n NONE = 'none',\n INPUT = 'input',\n DIALOG = 'dialog',\n}\n\n/**\n * Quick Action Button placement mode.\n *\n * Replaces the literal string `\"FLOATING\"` patterns in existing schemas.\n * After container inversion (Step 4), the only placement is `FLOATING` or\n * `CONTAINED` (hosted by menubar/sidebar via `hostedComponents`).\n */\nexport enum QuickActionButtonPlacement {\n /** Floating action button overlaying the content area. */\n FLOATING = 'FLOATING',\n /** Contained within a parent component (menubar or sidebar). */\n CONTAINED = 'CONTAINED',\n}\n\n// ════════════════════════════════════════════════════════════════\n// Sidebar Section Content Kind\n// ════════════════════════════════════════════════════════════════\n\n/** @wildo_source:part:start saas.frontend.launcher.item-refs facet:layer:frontend facet:family:app-shell facet:audience:app-developer */\n/**\n * What kind of content a sidebar section renders.\n *\n * This is the discriminant for the `SidebarSection` discriminated union.\n * Each content kind has its own set of properties and rendering behavior.\n */\nexport enum SidebarSectionContentKind {\n /** Traditional navigation item list (tree, collapsible, inline create). */\n NAVIGATION_LIST = 'navigation_list',\n /** Filterable resource instance list — fetches from a bound operation. */\n RESOURCE_BROWSER = 'resource_browser',\n /** Guidance/onboarding widget — renders a registered guidance component. */\n GUIDANCE_WIDGET = 'guidance_widget',\n /** Arbitrary registered React component. */\n CUSTOM_COMPONENT = 'custom_component',\n}\n\n// ════════════════════════════════════════════════════════════════\n// LauncherItemRef — Discriminated Union\n// ════════════════════════════════════════════════════════════════\n\n/**\n * Points to a resource operation (list, create, read, etc.).\n * The resolution layer resolves this via the resource registry.\n */\nexport interface ResourceOperationItemRef {\n kind: LauncherItemTargetKind.RESOURCE_OPERATION;\n resourceType: string;\n operation: string;\n operationVariant?: string;\n}\n\n/** Points to an application-scoped special view. */\nexport interface ViewItemRef {\n kind: LauncherItemTargetKind.VIEW;\n viewRef: string;\n}\n\n/** Points to a resource-scoped special view. */\nexport interface ResourceViewItemRef {\n kind: LauncherItemTargetKind.RESOURCE_VIEW;\n resourceType: string;\n viewRef: string;\n}\n\n/** Points to a framework page (home, security settings). */\nexport interface EnginePageItemRef {\n kind: LauncherItemTargetKind.ENGINE_PAGE;\n pageRef: EnginePageRef;\n}\n\n/** Points to a registered component — engine or application (see `ComponentRegistryRef`). */\nexport interface CustomComponentItemRef {\n kind: LauncherItemTargetKind.CUSTOM_COMPONENT;\n /**\n * The name a component is REGISTERED under — an engine `FrontendComponentType` member, or an\n * application component a domain module binds in `componentRegistrations` (#549). Resolved through\n * `ComponentRegistryService` under the default preset; a ref nothing is registered under is\n * reported, never rendered as something plausible.\n */\n componentRef: string;\n}\n\n/**\n * Opens the unified Settings Hub (overlay), optionally pre-selecting a section.\n * Resolves to a `/settings` / `/settings/:sectionRef` URL navigation — the hub\n * is URL-driven (`useSettingsHubRouterSync` reconstructs it), so every settings\n * entry point converges on one destination.\n */\nexport interface SettingsSectionItemRef {\n kind: LauncherItemTargetKind.SETTINGS_SECTION;\n /** Section to pre-open; omit to open the hub's default section. */\n sectionRef?: string;\n}\n\n/**\n * A launcher item reference — identifies WHAT a launcher item targets.\n * Discriminated on `kind`. The resolution layer dispatches on this to\n * produce a `ResolvedNavigationItem`.\n */\nexport type LauncherItemRef =\n | ResourceOperationItemRef\n | ViewItemRef\n | ResourceViewItemRef\n | EnginePageItemRef\n | CustomComponentItemRef\n | SettingsSectionItemRef;\n\n/**\n * Toolbar items are navigation-only launcher refs.\n * Custom-component materialization belongs to other app-level surfaces and is\n * intentionally excluded from the global app-level toolbar contract.\n */\nexport type ToolbarItemRef =\n | ResourceOperationItemRef\n | ViewItemRef\n | ResourceViewItemRef\n | EnginePageItemRef;\n\n// ════════════════════════════════════════════════════════════════\n// Per-Launcher Item Types\n// ════════════════════════════════════════════════════════════════\n\n/**\n * A sidebar navigation item — extends `LauncherItemRef` with sidebar-specific\n * display properties. Supports all launcher target kinds as targets.\n */\nexport type SidebarItem = LauncherItemRef & {\n displayPolicy?: SidebarItemDisplayPolicy;\n /**\n * Typed reference to a registered `NotificationBadgeDefinition` — its badge KEY,\n * `<scope>:<identifier>`, built by `buildNotificationBadgeKey` /\n * `notificationBadgeIdentityKey` from `@wildo-ai/saas-models`.\n *\n * The key, not the bare `identifier`: a definition is `(scope, identifier)`, so an identifier\n * alone names a definition only while no second scope declares the same one. Matching on it made\n * the second definition unreachable and gave it the first's count.\n *\n * The resolved definition supplies the display mode / tone / pulse, and the live count comes from\n * `useNotificationBadges`, which indexes by the same key. Reported by `verify-launcher-content`\n * when it resolves to nothing.\n */\n notificationBadgeRef?: string;\n children?: SidebarItem[];\n runtimeAvailability?: LauncherRuntimeAvailabilityConfig;\n};\n\n/** A command menu entry. */\nexport type CommandMenuCommand = LauncherItemRef & {\n category?: string;\n shortcut?: string;\n /**\n * OPTIONAL extra literal match terms, appended to the localized keyword set\n * the palette already resolves for this command. These literals are NOT\n * translated — reserve them for genuinely app-specific jargon that no\n * localized label or operation-verb synonym covers (e.g. an internal codename\n * like `\"boards\"` for a Todo-Lists list command).\n *\n * You do NOT need to author generic action verbs here: for a\n * `RESOURCE_OPERATION` command the framework already folds in the LOCALIZED\n * operation-verb synonyms (`components.APPLICATION_LEVEL_COMMAND_MENU.keywords*`,\n * generated + translated by the labelling pipeline) keyed off the command's\n * core operation semantic, and the record/command noun is covered by the\n * command's already-localized label. So a French user finds \"Create Todo\" by\n * typing \"nouveau\"/\"créer\" without any literal being authored here.\n */\n searchKeywords?: string[];\n displayPolicy?: CommandMenuDisplayPolicy;\n runtimeAvailability?: LauncherRuntimeAvailabilityConfig;\n};\n/** @wildo_source:part:end saas.frontend.launcher.item-refs */\n\n/**\n * @wildo_source:part:start saas.frontend.command-menu.search-resource facet:layer:frontend facet:family:app-shell\n *\n * Declares one resource whose `SEARCH` operation feeds the command menu's\n * **omnibox** record-search layer. Import from `@wildo-ai/saas-frontend-lib`.\n *\n * You list these on the `[ApplicationLevelComponentType.COMMAND_MENU]`\n * config's `searchResources` array (in `frontend/src/config/app-shell.config.ts`);\n * they take effect **only** when that config also sets\n * `policy: CommandBarPolicy.OMNIBOX`. Each entry opts one resource into live,\n * debounced record search inside the Cmd+K palette.\n *\n * Unlike a {@link CommandMenuCommand} — a static, declarative navigation target\n * — this drives a live, debounced query (≥2 chars, 300ms) against the\n * resource's addressable `SEARCH` operation (falling back to `LIST`). Results\n * are labelled with the resource's own frontend label config and, on\n * selection, navigate to the record's addressable `READ` view. Name the\n * searchable set explicitly so the palette never fires queries against\n * resources the app did not opt in.\n *\n * @example\n * // In frontend/src/config/app-shell.config.ts, on [COMMAND_MENU]:\n * searchResources: [\n * { resourceType: 'todos', category: 'todos', maxResults: 5 },\n * { resourceType: 'tasks', category: 'tasks', maxResults: 5 },\n * ]\n */\nexport type CommandMenuSearchResource = {\n /** Resource type whose SEARCH operation is queried (e.g. `'todos'`). */\n resourceType: string;\n /**\n * Group/category ref the results are placed under in the palette. Defaults\n * to the `resourceType` (humanized) when omitted. Resolved through the same\n * i18n category-label path as static command categories.\n */\n category?: string;\n /** Max results fetched per resource per keystroke. Defaults to 5. */\n maxResults?: number;\n /**\n * Relative order weight of this record group in the palette result list —\n * lower renders higher. This is the SINGLE ordering axis the palette sorts\n * every group (record groups AND static command-category groups) by.\n *\n * When omitted, record groups default to a weight ABOVE the static command\n * groups, so live record matches surface FIRST while the user is searching —\n * `searchResources` array position breaks ties among record groups. Static\n * command categories sit on a higher (later) default band, sequenced among\n * themselves by `[COMMAND_MENU].categoryOrder`. Set an explicit `order` to\n * pin a record group anywhere in that merged list (e.g. a large value to push\n * a low-signal resource below the command groups, or a negative value to pin\n * it at the very top).\n */\n order?: number;\n /**\n * How each matched record renders in the palette:\n * - `SUMMARY` (default) — the resource's summary VIEW (its summary card, no\n * action bar), via `ResourceSummaryDisplayer`. Reuses the SUMMARY-mode DTO\n * the `SEARCH` operation already returns, so there is no extra fetch. This\n * is the richer, default representation.\n * - `LABEL` — a single-line resolved label (opt-out / compact fallback).\n *\n * `ID` is treated as `LABEL` here (there is no id-only palette row).\n * Reuses {@link ForeignKeyDisplayMode} — the same LABEL-vs-SUMMARY vocabulary\n * the foreign-key reference picker uses for its dropdown rows — rather than\n * inventing a parallel command-menu-only enum.\n */\n resultDisplay?: ForeignKeyDisplayMode;\n /**\n * OPTIONAL extra literal match terms appended to every result of this\n * resource for client-side fuzzy matching. NOT translated — the raw query is\n * always kept as a keyword (so server hits never drop) and the framework also\n * folds in the LOCALIZED \"search\" verb synonyms\n * (`components.APPLICATION_LEVEL_COMMAND_MENU.keywordsSearch`) for the group.\n * Reserve this field for app-specific jargon a localized label/synonym cannot\n * cover.\n */\n searchKeywords?: string[];\n};\n/** @wildo_source:part:end saas.frontend.command-menu.search-resource */\n\n/** A quick action button entry. */\nexport type QuickActionItem = LauncherItemRef & {\n displayPolicy?: QuickActionDisplayPolicy;\n runtimeAvailability?: LauncherRuntimeAvailabilityConfig;\n};\n\n/**\n * A keyboard shortcut binding to a navigation target (`LauncherItemRef`).\n *\n * `description` overrides the registry/help label. When omitted, the framework uses\n * `tResourceOperation(…, 'title')` for `RESOURCE_OPERATION` targets and the resolved\n * navigation `label` for all other kinds.\n */\nexport type HotkeyBinding = LauncherItemRef & {\n shortcut: string;\n scope?: HotkeyScope;\n description?: string;\n runtimeAvailability?: LauncherRuntimeAvailabilityConfig;\n};\n\n/** A toolbar item. */\nexport type ToolbarItem = ToolbarItemRef & {\n group?: string;\n /** When true, only the icon is shown (label is hidden). */\n iconOnly?: boolean;\n runtimeAvailability?: LauncherRuntimeAvailabilityConfig;\n};\n\n/** A control panel item. */\nexport type ControlPanelItem = LauncherItemRef & {\n section?: string;\n runtimeAvailability?: LauncherRuntimeAvailabilityConfig;\n};\n\n/**\n * A utility panel item (Gmail-style right-side panel).\n *\n * Two target kinds, because the panel hosts two genuinely different things and collapsing them\n * would have meant an untyped props bag (#504):\n *\n * - `CUSTOM_COMPONENT` names a REGISTERED component — engine or application — rendered with no\n * arguments. Until #549 the registry was typed on `FrontendComponentType` and the panel checked\n * enum membership, so an application could not name its own component here however the\n * free-string ref read; the registry key is now `ComponentRegistryRef`, and the panel asks the\n * registry whether anything is registered under the ref.\n * - `VIEW` names an application-scoped view by ref, rendered INLINE in the panel. The panel does not\n * navigate, so this is the same target a launcher item names and a different verb applied to it:\n * the kind says WHAT, the host decides HOW.\n *\n * `VIEW` exists because the content applications actually want beside the workspace is their own —\n * an actor flow, a report — and such a surface needs to know WHICH instance it is showing. A\n * component rendered with no arguments cannot be told, which is why a ref rather than a props object\n * is the right shape: it is the one parameter that identifies an instance, and it is typed.\n */\nexport type UtilityPanelItem =\n | {\n kind: LauncherItemTargetKind.CUSTOM_COMPONENT;\n /**\n * The name a component is REGISTERED under — an engine `FrontendComponentType` member, or an\n * application component a domain module binds in `componentRegistrations` (#549). Resolved through\n * `ComponentRegistryService` under the default preset; a ref nothing is registered under is\n * reported, never rendered as something plausible.\n */\n componentRef: string;\n icon: string;\n label: string;\n }\n | {\n kind: LauncherItemTargetKind.VIEW;\n /** The `ref` of an application-scoped view definition — today, a `FlowsActorsViewDefinition`. */\n viewRef: string;\n icon: string;\n label: string;\n };\n\n/**\n * How a hosted component's TRIGGER renders inside its host surface.\n *\n * The same trigger serves two very different chrome shapes: a menubar's\n * trailing cluster is a row of small icon controls, while a sidebar rail (or a\n * wide top bar) can carry a full input-like control. Declaring the appearance\n * keeps that a per-PLACEMENT decision rather than a component-wide compromise —\n * this application hosts the identical command menu in both surfaces.\n */\nexport enum HostedTriggerAppearance {\n /**\n * Full input-like \"false button\": leading glyph, placeholder text and the\n * shortcut hint. Honors `triggerWidth`. Default.\n */\n EXPANDED = 'expanded',\n /**\n * Square icon-only button sized to the chrome row — what belongs beside the\n * notification bell and the avatar. `triggerWidth` is deliberately IGNORED\n * here: a 240px icon button is dead space, not a wide control.\n */\n COMPACT = 'compact',\n}\n\n/**\n * @wildo_source:part:start saas.frontend.app-shell.hosted-components facet:layer:frontend facet:family:app-shell\n *\n * Hosts an app-level component (the Cmd+K command-menu trigger, a quick-action\n * button, the notification center, …) INSIDE the menubar via container\n * inversion. Import from `@wildo-ai/saas-frontend-lib`.\n *\n * You list these on the `[ApplicationLevelComponentType.MENUBAR]` config's\n * `hostedComponents` array (in `frontend/src/config/app-shell.config.ts`).\n * `componentType` is an `ApplicationLevelComponentType.*` member; `placement`\n * is a {@link HorizontalPlacement} (`START`/`MIDDLE`/`END`) selecting the\n * menubar zone; `breakpoint` restricts the component to one viewport\n * breakpoint. Render order follows array position in `hostedComponents`.\n *\n * The sidebar is the vertical mirror of this contract — see\n * {@link SidebarHostedComponent}. Both surfaces share ONE hosting pipeline, so\n * hosting the SAME component (e.g. the command menu) in both places yields two\n * triggers driving one shared dialog / one hotkey registration, never two.\n *\n * @example\n * // In frontend/src/config/app-shell.config.ts, on [MENUBAR]:\n * hostedComponents: [\n * { componentType: ApplicationLevelComponentType.COMMAND_MENU,\n * placement: HorizontalPlacement.START, triggerWidth: 240 },\n * { componentType: ApplicationLevelComponentType.USER_DROPDOWN,\n * placement: HorizontalPlacement.END },\n * ]\n */\nexport interface MenubarHostedComponent {\n componentType: string;\n /** Which menubar zone the component renders in. Defaults to `START`. */\n placement?: HorizontalPlacement;\n breakpoint?: ViewportBreakpoint;\n /** Override the preset name used for component resolution. Defaults to `CorePresetNames.DEFAULT`. */\n presetName?: string;\n /**\n * Per-placement width override for hosted components that render an\n * input-like trigger (today: the command-menu \"false button\"). Accepts an\n * explicit CSS length — a plain number is treated as pixels (`240` → 240px),\n * or a CSS width string (`'240px'`, `'100%'`, `'16rem'`). Applied as an\n * inline `style.width` because tailwind-merge cannot override the trigger's\n * default width utility. Omit to use the component's built-in default width.\n */\n triggerWidth?: string | number;\n /**\n * How the trigger renders here — see {@link HostedTriggerAppearance}.\n * Defaults to `EXPANDED`. A menubar's trailing cluster normally wants\n * `COMPACT`, so the control is an icon button beside the bell and the avatar;\n * a sidebar rail keeps the full input-like control. `triggerWidth` above is\n * ignored under `COMPACT`.\n */\n triggerAppearance?: HostedTriggerAppearance;\n}\n\n/**\n * Hosts an app-level component INSIDE the sidebar (container inversion — the\n * vertical mirror of {@link MenubarHostedComponent}). Import from\n * `@wildo-ai/saas-frontend-lib`.\n *\n * You list these on the `[ApplicationLevelComponentType.SIDEBAR]` config's\n * `hostedComponents` array. Both surfaces share ONE hosting pipeline\n * (`resolveHostedComponents` + the shell-level interaction owner); the only\n * difference is the placement axis: the sidebar is a vertical column, so\n * `placement` is a {@link VerticalPlacement} (`TOP` renders above the nav,\n * `BOTTOM` below it) rather than the menubar's horizontal axis. `breakpoint`\n * restricts the component to a viewport breakpoint; render order follows array\n * position in `hostedComponents`.\n *\n * @example\n * // In frontend/src/config/app-shell.config.ts, on [SIDEBAR] — the same command\n * // menu ALSO placed in the sidebar, filling the rail width:\n * hostedComponents: [\n * { componentType: ApplicationLevelComponentType.COMMAND_MENU,\n * placement: VerticalPlacement.TOP, triggerWidth: '100%' },\n * ]\n */\nexport interface SidebarHostedComponent {\n componentType: string;\n /** Which end of the sidebar column the component renders at. Defaults to `TOP`. */\n placement?: VerticalPlacement;\n breakpoint?: ViewportBreakpoint;\n /** Override the preset name used for component resolution. Defaults to `CorePresetNames.DEFAULT`. */\n presetName?: string;\n /**\n * Per-placement width override for the hosted trigger (see\n * {@link MenubarHostedComponent.triggerWidth} — number = px, or a CSS width\n * string). A sidebar trigger commonly uses `'100%'` to fill the rail; the\n * menubar copy is typically narrower.\n */\n triggerWidth?: string | number;\n /**\n * How the trigger renders here — see {@link HostedTriggerAppearance}.\n * Defaults to `EXPANDED`. A menubar's trailing cluster normally wants\n * `COMPACT`, so the control is an icon button beside the bell and the avatar;\n * a sidebar rail keeps the full input-like control. `triggerWidth` above is\n * ignored under `COMPACT`.\n */\n triggerAppearance?: HostedTriggerAppearance;\n}\n/** @wildo_source:part:end saas.frontend.app-shell.hosted-components */\n\n/** A menubar-specific launcher item (config-time declaration). */\nexport type MenubarLauncherItem = LauncherItemRef & {\n group?: string;\n runtimeAvailability?: LauncherRuntimeAvailabilityConfig;\n /**\n * A registered `NotificationBadgeDefinition`'s badge KEY (`<scope>:<identifier>`), drawn beside the\n * item's label — the sidebar item's field of the same name, with the same resolution and the same\n * verification. A menubar-only shell had no way to show a count on a destination until this\n * existed.\n */\n notificationBadgeRef?: string;\n};\n\n/**\n * @wildo_source:part:start saas.frontend.launcher.runtime-availability facet:layer:frontend facet:family:app-shell facet:audience:app-developer\n *\n * When a launcher entry appears at all: `runtimeAvailability` on a sidebar section, a sidebar item, a command-menu\n * command, a quick action, a toolbar, control-panel or menubar item, or a hotkey. An entry that fails it is removed, not\n * shown disabled.\n *\n * - `requiredCapabilities`: runtime capabilities that must all be on (`billingEnabled`, `ssoEnabled`…).\n * - `visibleToRoles`: the roles the entry is shown to (an office-only section a field technician does not see).\n *\n * Import from `@wildo-ai/saas-frontend-lib`.\n *\n * @example\n * // frontend/src/config/app-shell.config.ts: a sidebar section only office staff see\n * { contentKind: SidebarSectionContentKind.NAVIGATION_LIST, ref: 'office',\n * runtimeAvailability: { visibleToRoles: ['office-manager', CORE_ORG_ROLES.ORG_ADMIN] },\n * children: [{ kind: LauncherItemTargetKind.VIEW, viewRef: 'invoices' }] }\n *\n * This is intentionally distinct from `requiredFeatures` on resolved\n * view/resource targets:\n * - `runtimeAvailability` decides whether a launcher declaration should survive\n * the app-shell filtering pass at all\n * - `requiredFeatures` stays the canonical plan/subscription gating mechanism\n * once an item has already survived launcher filtering and is being resolved\n */\nexport interface LauncherRuntimeAvailabilityConfig {\n requiredCapabilities?: string[];\n /**\n * The roles this item is shown to: an office-only \"Invoices\" section a field technician does not see. Visible when the\n * viewer holds ANY listed role, at the application or in the current organization, or a CORE role that inherits one\n * (an organization owner sees an `ORG_MEMBER` item).\n *\n * A custom role counts only as itself: the browser receives the application's role keys, not how its custom roles\n * inherit, so list every role that should see the item. Never wider: an unknown role does not reveal an item, because\n * the declaration names exactly who it is for.\n *\n * Navigation, not authorization. Hiding an entry stops nobody from opening its target; the target operation's `roles`\n * are what the backend enforces. An entry opening a resource operation the viewer's roles cannot perform is already\n * hidden by resolution, so `visibleToRoles` is for narrowing further: an operation open to every member that only\n * office staff need in their navigation.\n *\n * Omitted or empty: shown to every role.\n */\n visibleToRoles?: string[];\n}\n\nexport const LauncherRuntimeAvailabilityConfigSchema = z.object({\n requiredCapabilities: z.array(z.string()).optional(),\n visibleToRoles: z.array(z.string().min(1)).optional(),\n});\n/** @wildo_source:part:end saas.frontend.launcher.runtime-availability */\n\n// ════════════════════════════════════════════════════════════════\n// Scope Condition Types (used by sidebar sections)\n// ════════════════════════════════════════════════════════════════\n\n/**\n * Parameters passed to a `ScopeConditionFn` for evaluating section visibility.\n */\nexport interface ScopeConditionParams {\n /** Current app scope values (workspace, project, environment, etc.). */\n appScopeValues: Record<string, AppScopeValue>;\n /** Currently active mode ref, or `null` if no mode system. */\n activeMode: string | null;\n /** All defined app modes (for inspecting mode metadata). */\n availableModes: AppModeDefinition[];\n}\n\n/**\n * Predicate function that determines whether a sidebar section should be visible\n * based on the current scope and mode state.\n *\n * Returns `true` to show the section, `false` to hide it.\n * Called reactively whenever scope or mode changes.\n */\nexport type ScopeConditionFn = (params: ScopeConditionParams) => boolean;\n\n/**\n * Context provided to a `ResourceBrowser` section's `onInstanceClick` callback.\n */\nexport interface ResourceBrowserClickContext {\n resourceType: string;\n instanceId: string;\n instanceData: Record<string, unknown>;\n}\n\n// ════════════════════════════════════════════════════════════════\n// AppMode Definition\n// ════════════════════════════════════════════════════════════════\n\n/**\n * Defines an application mode (e.g., \"explorer\", \"search\", \"admin\").\n *\n * Modes filter which sidebar sections are visible. The `ACTIVITY_BAR`\n * renders available modes as selectable icons.\n */\nexport interface AppModeDefinition {\n /** Unique reference for this mode. */\n ref: string;\n /** Display label (i18n ref). */\n label: string;\n /** Icon identifier for the activity bar. */\n icon: string;\n /** Whether this is the default mode when none is persisted. */\n isDefault?: boolean;\n /** Restrict mode visibility to specific user types. */\n visibleToUserTypes?: string[];\n}\n\n// ════════════════════════════════════════════════════════════════\n// Sidebar Section Types — Discriminated Union on `contentKind`\n// ════════════════════════════════════════════════════════════════\n\n/** @wildo_source:part:start saas.frontend.launcher.item-refs facet:layer:frontend facet:family:app-shell facet:audience:app-developer */\n/**\n * Base properties shared by all sidebar section types.\n * `ref` is `string`-typed — no framework enum, apps define their own refs.\n */\nexport interface SidebarSectionBase {\n contentKind: SidebarSectionContentKind;\n /** Section reference — app-defined, used for i18n and configuration matching. */\n ref: string;\n /** Display label (i18n ref). If omitted, section renders without a header. */\n label?: string;\n /** Icon for the section header. */\n icon?: string;\n /** Whether the section header (label + icon) is rendered. Defaults to `true`. */\n showLabel?: boolean;\n /** Whether the section can be collapsed by the user. */\n collapsible?: boolean;\n /** Whether the section starts collapsed. */\n defaultCollapsed?: boolean;\n /**\n * Mode refs this section is visible in. If omitted, visible in all modes.\n * String-based — validated at startup against `appModes[].ref`.\n * The section is hidden while the active mode is not one of them.\n */\n visibleInModes?: string[];\n /**\n * Function-based visibility condition for complex scope-dependent logic.\n * Called with the current scope; the section is hidden when it returns false.\n */\n scopeCondition?: ScopeConditionFn;\n /** Declarative availability evaluated by the app-shell layer: required capabilities and the roles shown to (`visibleToRoles`). */\n runtimeAvailability?: LauncherRuntimeAvailabilityConfig;\n}\n\n/**\n * Traditional navigation item list section.\n * Supports tree hierarchy, inline create, drag-reorder (via behavior).\n */\nexport interface SidebarSection_NavigationList extends SidebarSectionBase {\n contentKind: SidebarSectionContentKind.NAVIGATION_LIST;\n children: SidebarItem[];\n behavior?: SidebarSectionBehavior;\n /**\n * Marks this section as the sidebar's PRIMARY navigation group — the app's\n * top-level destinations (the \"Home group\"). Primary sections render at the\n * top of the sidebar with no section header and never collapsible. When\n * `SIDEBAR.homeDisplayMode` is `NAVIGATION_ITEM` (the default) the framework's\n * Home row heads that same group, giving the Linear/Notion \"Inbox / My Issues\n * right under Home\" shape; the other home modes surface home elsewhere and\n * leave this group to the app's own destinations.\n *\n * This is a PLACEMENT/CHROME role, deliberately distinct from\n * `SidebarSectionBehavior` (which describes where a section's ITEMS come\n * from). Section ordering is engine policy and ignores declaration order for\n * the special roles: primary section(s) first, then non-empty\n * `SidebarSectionBehavior.FAVORITES` section(s), then the remaining sections\n * in declared order. Modules can therefore contribute a primary section\n * without the app config having to interleave it manually.\n */\n isPrimary?: boolean;\n inlineCreate?: SidebarSectionInlineCreate;\n inlineCreateResourceType?: string;\n /** Field that receives the user's input during inline creation. Defaults to `'title'`. */\n inlineCreateField?: string;\n nested?: boolean;\n maxNestingDepth?: number;\n}\n\n/**\n * Filterable resource instance list section.\n * Fetches data from a bound operation and displays resource instances.\n */\nexport interface SidebarSection_ResourceBrowser extends SidebarSectionBase {\n contentKind: SidebarSectionContentKind.RESOURCE_BROWSER;\n /** Resource type to browse. */\n resourceType: string;\n /** Override the default LIST operation (optional — defaults to LIST). */\n operation?: string;\n /** Operation variant for filtered views. */\n operationVariant?: string;\n /**\n * Operation used when the user clicks a listed instance.\n * Defaults to READ when available; otherwise falls back to the bound operation.\n */\n navigateOperation?: string;\n /** Variant for the click/navigation operation. */\n navigateOperationVariant?: string;\n /**\n * Client-side filter predicate applied after fetching.\n * Enables display restrictions (e.g., \"starred only\").\n */\n instanceFilter?: (instance: Record<string, unknown>) => boolean;\n /**\n * Custom click handler for resource instances.\n * Default: navigate to instance via `NavigationUtils.resolveResourceUrl()`.\n */\n onInstanceClick?: (context: ResourceBrowserClickContext) => void;\n}\n\n/** Guidance/onboarding widget section. */\nexport interface SidebarSection_GuidanceWidget extends SidebarSectionBase {\n contentKind: SidebarSectionContentKind.GUIDANCE_WIDGET;\n /** Reference to a registered guidance component. */\n guidanceRef: string;\n}\n\n/** Arbitrary custom component section. */\nexport interface SidebarSection_CustomComponent extends SidebarSectionBase {\n contentKind: SidebarSectionContentKind.CUSTOM_COMPONENT;\n /** The name a component is registered under — engine or application (see `ComponentRegistryRef`, #549). */\n componentRef: string;\n}\n\n/**\n * Discriminated union of all sidebar section types.\n * Narrow on `contentKind` to access type-specific properties.\n */\nexport type SidebarSection =\n | SidebarSection_NavigationList\n | SidebarSection_ResourceBrowser\n | SidebarSection_GuidanceWidget\n | SidebarSection_CustomComponent;\n/** @wildo_source:part:end saas.frontend.launcher.item-refs */\n\n// ════════════════════════════════════════════════════════════════\n// Zod Schemas\n// ════════════════════════════════════════════════════════════════\n\nexport const LauncherItemTargetKindSchema = z.enum(LauncherItemTargetKind);\nexport const EnginePageRefSchema = z.enum(EnginePageRef);\nexport const ActivityBarRenderingSchema = z.enum(ActivityBarRendering);\nexport const SidebarResponsivePolicySchema = z.enum(SidebarResponsivePolicy);\nexport const QuickActionButtonPlacementSchema = z.enum(QuickActionButtonPlacement);\nexport const SidebarSectionContentKindSchema = z.enum(SidebarSectionContentKind);\n\n/** Zod schema for `ResourceOperationItemRef`. */\nexport const ResourceOperationItemRefSchema = z.object({\n kind: z.literal(LauncherItemTargetKind.RESOURCE_OPERATION),\n resourceType: z.string(),\n operation: z.string(),\n operationVariant: z.string().optional(),\n});\n\n/** Zod schema for `ViewItemRef`. */\nexport const ViewItemRefSchema = z.object({\n kind: z.literal(LauncherItemTargetKind.VIEW),\n viewRef: z.string(),\n});\n\n/** Zod schema for `ResourceViewItemRef`. */\nexport const ResourceViewItemRefSchema = z.object({\n kind: z.literal(LauncherItemTargetKind.RESOURCE_VIEW),\n resourceType: z.string(),\n viewRef: z.string(),\n});\n\n/** Zod schema for `EnginePageItemRef`. */\nexport const EnginePageItemRefSchema = z.object({\n kind: z.literal(LauncherItemTargetKind.ENGINE_PAGE),\n pageRef: EnginePageRefSchema,\n});\n\n/** Zod schema for `CustomComponentItemRef`. */\nexport const CustomComponentItemRefSchema = z.object({\n kind: z.literal(LauncherItemTargetKind.CUSTOM_COMPONENT),\n componentRef: z.string(),\n});\n\nexport const SettingsSectionItemRefSchema = z.object({\n kind: z.literal(LauncherItemTargetKind.SETTINGS_SECTION),\n sectionRef: z.string().optional(),\n});\n\n/**\n * Zod schema for `LauncherItemRef` — discriminated union on `kind`.\n * Validates config-time launcher item references.\n */\nexport const LauncherItemRefSchema = z.discriminatedUnion('kind', [\n ResourceOperationItemRefSchema,\n ViewItemRefSchema,\n ResourceViewItemRefSchema,\n EnginePageItemRefSchema,\n CustomComponentItemRefSchema,\n SettingsSectionItemRefSchema,\n]);\n\n/** Zod schema for `SidebarItem`. */\nexport const SidebarItemSchema: z.ZodType<SidebarItem> = z.lazy(() =>\n LauncherItemRefSchema.and(z.object({\n displayPolicy: z.enum(SidebarItemDisplayPolicy).optional(),\n notificationBadgeRef: z.string().optional(),\n children: z.array(SidebarItemSchema).optional(),\n runtimeAvailability: LauncherRuntimeAvailabilityConfigSchema.optional(),\n }))\n);\n\n/** Zod schema for `CommandMenuCommand`. */\nexport const CommandMenuCommandSchema = LauncherItemRefSchema.and(z.object({\n category: z.string().optional(),\n shortcut: z.string().optional(),\n searchKeywords: z.array(z.string()).optional(),\n displayPolicy: z.enum(CommandMenuDisplayPolicy).optional(),\n runtimeAvailability: LauncherRuntimeAvailabilityConfigSchema.optional(),\n}));\n\n/**\n * @wildo_source:part:start saas.frontend.command-menu.search-resource facet:layer:frontend facet:family:app-shell\n *\n * Zod schema for `CommandMenuSearchResource` — validates each entry in the\n * `[COMMAND_MENU].searchResources` array.\n */\nexport const CommandMenuSearchResourceSchema: z.ZodType<CommandMenuSearchResource> = z.object({\n resourceType: z.string(),\n category: z.string().optional(),\n maxResults: z.number().optional(),\n order: z.number().optional(),\n resultDisplay: z.enum([\n ForeignKeyDisplayMode.ID,\n ForeignKeyDisplayMode.LABEL,\n ForeignKeyDisplayMode.SUMMARY,\n ]).optional(),\n searchKeywords: z.array(z.string()).optional(),\n});\n/** @wildo_source:part:end saas.frontend.command-menu.search-resource */\n\n/** Zod schema for `QuickActionItem`. */\nexport const QuickActionItemSchema = LauncherItemRefSchema.and(z.object({\n displayPolicy: z.enum(QuickActionDisplayPolicy).optional(),\n runtimeAvailability: LauncherRuntimeAvailabilityConfigSchema.optional(),\n}));\n\n/** Zod schema for `HotkeyBinding`. */\nexport const HotkeyBindingSchema = LauncherItemRefSchema.and(z.object({\n shortcut: z.string(),\n scope: z.enum(HotkeyScope).optional(),\n description: z.string().optional(),\n runtimeAvailability: LauncherRuntimeAvailabilityConfigSchema.optional(),\n}));\n\n/** Zod schema for `ToolbarItemRef`. */\nexport const ToolbarItemRefSchema = z.discriminatedUnion('kind', [\n ResourceOperationItemRefSchema,\n ViewItemRefSchema,\n ResourceViewItemRefSchema,\n EnginePageItemRefSchema,\n]);\n\n/** Zod schema for `ToolbarItem`. */\nexport const ToolbarItemSchema = ToolbarItemRefSchema.and(z.object({\n group: z.string().optional(),\n iconOnly: z.boolean().optional(),\n runtimeAvailability: LauncherRuntimeAvailabilityConfigSchema.optional(),\n}));\n\n/** Zod schema for `ControlPanelItem`. */\nexport const ControlPanelItemSchema = LauncherItemRefSchema.and(z.object({\n section: z.string().optional(),\n runtimeAvailability: LauncherRuntimeAvailabilityConfigSchema.optional(),\n}));\n\n/**\n * Zod schema for `UtilityPanelItem`.\n *\n * A DISCRIMINATED union rather than one object with two optional refs: an item that carried both a\n * `componentRef` and a `viewRef`, or neither, would parse — and the render path would then have to\n * invent a precedence rule that no author wrote down.\n */\nexport const UtilityPanelItemSchema = z.discriminatedUnion('kind', [\n z.object({\n kind: z.literal(LauncherItemTargetKind.CUSTOM_COMPONENT),\n componentRef: z.string(),\n icon: z.string(),\n label: z.string(),\n }),\n z.object({\n kind: z.literal(LauncherItemTargetKind.VIEW),\n viewRef: z.string(),\n icon: z.string(),\n label: z.string(),\n }),\n]);\n\n/**\n * @wildo_source:part:start saas.frontend.app-shell.hosted-components facet:layer:frontend facet:family:app-shell\n *\n * Zod schema for `MenubarHostedComponent` — validates each entry in the\n * `[MENUBAR].hostedComponents` array. `placement` determines which zone\n * (START/MIDDLE/END) the component renders in; `breakpoint` restricts the\n * component to a specific viewport breakpoint. Render order follows array\n * position in `hostedComponents`.\n */\nexport const MenubarHostedComponentSchema = z.object({\n componentType: z.string(),\n placement: z.enum(HorizontalPlacement).optional(),\n breakpoint: z.enum(ViewportBreakpoint).optional(),\n presetName: z.string().optional(),\n triggerWidth: z.union([z.string(), z.number()]).optional(),\n triggerAppearance: z.enum(HostedTriggerAppearance).optional(),\n});\n\n/**\n * Zod schema for `SidebarHostedComponent` — declares a component hosted within\n * the sidebar (the vertical mirror of `MenubarHostedComponentSchema`).\n * `placement` selects which end of the sidebar column the component renders at\n * (`TOP`/`BOTTOM`); `breakpoint` restricts it to a viewport breakpoint. Render\n * order follows array position in `hostedComponents`.\n */\nexport const SidebarHostedComponentSchema = z.object({\n componentType: z.string(),\n placement: z.enum(VerticalPlacement).optional(),\n breakpoint: z.enum(ViewportBreakpoint).optional(),\n presetName: z.string().optional(),\n triggerWidth: z.union([z.string(), z.number()]).optional(),\n triggerAppearance: z.enum(HostedTriggerAppearance).optional(),\n});\n/** @wildo_source:part:end saas.frontend.app-shell.hosted-components */\n\n/** Zod schema for `MenubarLauncherItem`. */\nexport const MenubarLauncherItemSchema = LauncherItemRefSchema.and(z.object({\n group: z.string().optional(),\n runtimeAvailability: LauncherRuntimeAvailabilityConfigSchema.optional(),\n notificationBadgeRef: z.string().optional(),\n}));\n\n// ── Sidebar Section Schemas (discriminated union on contentKind) ──\n\nconst SidebarSectionBaseSchema = z.object({\n ref: z.string(),\n label: z.string().optional(),\n icon: z.string().optional(),\n showLabel: z.boolean().optional(),\n collapsible: z.boolean().optional(),\n defaultCollapsed: z.boolean().optional(),\n visibleInModes: z.array(z.string()).optional(),\n runtimeAvailability: LauncherRuntimeAvailabilityConfigSchema.optional(),\n});\n\nexport const SidebarSection_NavigationListSchema = SidebarSectionBaseSchema.extend({\n contentKind: z.literal(SidebarSectionContentKind.NAVIGATION_LIST),\n children: z.array(SidebarItemSchema),\n behavior: z.enum(SidebarSectionBehavior).optional(),\n isPrimary: z.boolean().optional(),\n inlineCreate: z.enum(SidebarSectionInlineCreate).optional(),\n inlineCreateResourceType: z.string().optional(),\n inlineCreateField: z.string().optional(),\n nested: z.boolean().optional(),\n maxNestingDepth: z.number().optional(),\n});\n\nexport const SidebarSection_ResourceBrowserSchema = SidebarSectionBaseSchema.extend({\n contentKind: z.literal(SidebarSectionContentKind.RESOURCE_BROWSER),\n resourceType: z.string(),\n operation: z.string().optional(),\n operationVariant: z.string().optional(),\n navigateOperation: z.string().optional(),\n navigateOperationVariant: z.string().optional(),\n});\n\nexport const SidebarSection_GuidanceWidgetSchema = SidebarSectionBaseSchema.extend({\n contentKind: z.literal(SidebarSectionContentKind.GUIDANCE_WIDGET),\n guidanceRef: z.string(),\n});\n\nexport const SidebarSection_CustomComponentSchema = SidebarSectionBaseSchema.extend({\n contentKind: z.literal(SidebarSectionContentKind.CUSTOM_COMPONENT),\n componentRef: z.string(),\n});\n\n/**\n * Zod schema for `SidebarSection` — discriminated union on `contentKind`.\n *\n * Note: `scopeCondition` (on `SidebarSectionBase`), `instanceFilter`, and\n * `onInstanceClick` (on `SidebarSection_ResourceBrowser`) are function types\n * that cannot be validated by Zod. They are typed on the TypeScript interfaces\n * but excluded from the Zod schema (runtime code handles them directly).\n */\nexport const SidebarSectionSchema = z.discriminatedUnion('contentKind', [\n SidebarSection_NavigationListSchema,\n SidebarSection_ResourceBrowserSchema,\n SidebarSection_GuidanceWidgetSchema,\n SidebarSection_CustomComponentSchema,\n]);\n\n/** Zod schema for `AppModeDefinition`. */\nexport const AppModeDefinitionSchema = z.object({\n ref: z.string(),\n label: z.string(),\n icon: z.string(),\n isDefault: z.boolean().optional(),\n visibleToUserTypes: z.array(z.string()).optional(),\n});\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"onboarding-view.frontend.schemas.d.ts","sourceRoot":"","sources":["../../../../../src/core/config/onboarding-view.frontend.schemas.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAOxB,OAAO,KAAK,EACV,iBAAiB,EACjB,qBAAqB,EACrB,iBAAiB,EACjB,sBAAsB,EACvB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAiC,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AACjG,OAAO,KAAK,EAAE,0CAA0C,EAAE,MAAM,mEAAmE,CAAC;AAEpI;;;;;;;;;;;;;;;GAeG;AACH,eAAO,MAAM,8BAA8B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBAc1C,CAAC;AAEF,MAAM,WAAW,wBAAwB;IACvC,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE,sBAAsB,CAAC;IAC9B,2BAA2B,CAAC,EAAE,0CAA0C,EAAE,CAAC;IAC3E,8BAA8B,CAAC,EAAE,0CAA0C,EAAE,CAAC;IAC9E,OAAO,CAAC,EAAE,iBAAiB,CAAC;IAC5B,OAAO,EAAE,qBAAqB,CAAC;IAC/B,QAAQ,EAAE,iBAAiB,EAAE,CAAC;IAC9B,gBAAgB,CAAC,EAAE,sBAAsB,CAAC;CAC3C;AACD,2DAA2D"}
1
+ {"version":3,"file":"onboarding-view.frontend.schemas.d.ts","sourceRoot":"","sources":["../../../../src/core/config/onboarding-view.frontend.schemas.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAOxB,OAAO,KAAK,EACV,iBAAiB,EACjB,qBAAqB,EACrB,iBAAiB,EACjB,sBAAsB,EACvB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAiC,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AACjG,OAAO,KAAK,EAAE,0CAA0C,EAAE,MAAM,mEAAmE,CAAC;AAEpI;;;;;;;;;;;;;;;GAeG;AACH,eAAO,MAAM,8BAA8B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBAc1C,CAAC;AAEF,MAAM,WAAW,wBAAwB;IACvC,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE,sBAAsB,CAAC;IAC9B,2BAA2B,CAAC,EAAE,0CAA0C,EAAE,CAAC;IAC3E,8BAA8B,CAAC,EAAE,0CAA0C,EAAE,CAAC;IAC9E,OAAO,CAAC,EAAE,iBAAiB,CAAC;IAC5B,OAAO,EAAE,qBAAqB,CAAC;IAC/B,QAAQ,EAAE,iBAAiB,EAAE,CAAC;IAC9B,gBAAgB,CAAC,EAAE,sBAAsB,CAAC;CAC3C;AACD,2DAA2D"}
@@ -1 +1 @@
1
- {"version":3,"file":"resource-owned-view-resolution.frontend.utils.d.ts","sourceRoot":"","sources":["../../../../../src/core/config/resource-owned-view-resolution.frontend.utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAClE,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,+DAA+D,CAAC;AAE/G,MAAM,MAAM,uBAAuB,GAAG,WAAW,GAAG,OAAO,GAAG,WAAW,CAAC;AAE1E,MAAM,WAAW,iCAAiC;IAChD,MAAM,EAAE,uBAAuB,CAAC;IAChC,KAAK,EAAE,sBAAsB,CAAC;CAC/B;AAED,MAAM,WAAW,+BAAgC,SAAQ,iCAAiC;IACxF,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,wBAAgB,+BAA+B,CAAC,MAAM,EAAE;IACtD,YAAY,EAAE,MAAM,CAAC;IACrB,QAAQ,EAAE,yBAAyB,CAAC;CACrC,GAAG,+BAA+B,EAAE,CAoBpC;AAED,wBAAgB,qCAAqC,CAAC,MAAM,EAAE;IAC5D,YAAY,EAAE,MAAM,CAAC;IACrB,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,yBAAyB,CAAC;CACrC,GAAG,+BAA+B,EAAE,CAKpC;AAED,wBAAgB,iCAAiC,CAAC,MAAM,EAAE;IACxD,YAAY,EAAE,MAAM,CAAC;IACrB,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,yBAAyB,CAAC;CACrC,GAAG,iCAAiC,GAAG,IAAI,CAU3C"}
1
+ {"version":3,"file":"resource-owned-view-resolution.frontend.utils.d.ts","sourceRoot":"","sources":["../../../../src/core/config/resource-owned-view-resolution.frontend.utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAClE,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,+DAA+D,CAAC;AAE/G,MAAM,MAAM,uBAAuB,GAAG,WAAW,GAAG,OAAO,GAAG,WAAW,CAAC;AAE1E,MAAM,WAAW,iCAAiC;IAChD,MAAM,EAAE,uBAAuB,CAAC;IAChC,KAAK,EAAE,sBAAsB,CAAC;CAC/B;AAED,MAAM,WAAW,+BAAgC,SAAQ,iCAAiC;IACxF,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,wBAAgB,+BAA+B,CAAC,MAAM,EAAE;IACtD,YAAY,EAAE,MAAM,CAAC;IACrB,QAAQ,EAAE,yBAAyB,CAAC;CACrC,GAAG,+BAA+B,EAAE,CAoBpC;AAED,wBAAgB,qCAAqC,CAAC,MAAM,EAAE;IAC5D,YAAY,EAAE,MAAM,CAAC;IACrB,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,yBAAyB,CAAC;CACrC,GAAG,+BAA+B,EAAE,CAKpC;AAED,wBAAgB,iCAAiC,CAAC,MAAM,EAAE;IACxD,YAAY,EAAE,MAAM,CAAC;IACrB,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,yBAAyB,CAAC;CACrC,GAAG,iCAAiC,GAAG,IAAI,CAU3C"}
@@ -13,8 +13,9 @@
13
13
  * hidden when no organization is selected). Scope-agnostic categories always
14
14
  * pass.
15
15
  * 2. **Capability** — `runtimeAvailability.requiredCapabilities` evaluated via
16
- * the SAME {@link isLauncherRuntimeAvailabilitySatisfied} the sidebar/command
17
- * menu use (e.g. `billingEnabled`).
16
+ * {@link areLauncherCapabilitiesSatisfied}, the capability half of the launcher
17
+ * filter the sidebar and command menu use (e.g. `billingEnabled`). The launcher's
18
+ * `visibleToRoles` is not read here: a section's roles are rule 3.
18
19
  * 3. **Role** — `requiredRoles` (OR semantics) evaluated against the merged
19
20
  * app-level + current-organization role set (`buildFeaturePolicyRoles`).
20
21
  * 4. **Feature** — `requiredFeatures` ({@link RequiredFeaturesConfig}) boolean
@@ -1 +1 @@
1
- {"version":3,"file":"settings-hub-gating.frontend.utils.d.ts","sourceRoot":"","sources":["../../../../../src/core/config/settings-hub-gating.frontend.utils.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AAEH,OAAO,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AAC7D,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,uBAAuB,CAAC;AACpE,OAAO,EAEL,KAAK,kCAAkC,EACxC,MAAM,mEAAmE,CAAC;AAC3E,OAAO,KAAK,EACV,yBAAyB,EAG1B,MAAM,iCAAiC,CAAC;AAEzC,qFAAqF;AACrF,MAAM,WAAW,gBAAgB;IAC/B,aAAa,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC9B,qBAAqB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACtC,oBAAoB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACrC,sBAAsB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CACxC;AAED,qEAAqE;AACrE,MAAM,WAAW,wBAAwB;IACvC,QAAQ,EAAE,gBAAgB,CAAC;IAC3B,6EAA6E;IAC7E,SAAS,EAAE,MAAM,EAAE,CAAC;IACpB,8DAA8D;IAC9D,eAAe,EAAE,MAAM,EAAE,CAAC;IAC1B,4EAA4E;IAC5E,cAAc,EAAE,kCAAkC,CAAC;CACpD;AAED;;;GAGG;AACH,wBAAgB,wBAAwB,CACtC,KAAK,EAAE,oBAAoB,GAAG,SAAS,EACvC,QAAQ,EAAE,gBAAgB,GACzB,OAAO,CAaT;AAED;;;;GAIG;AACH,wBAAgB,wBAAwB,CACtC,aAAa,EAAE,MAAM,EAAE,GAAG,SAAS,EACnC,SAAS,EAAE,MAAM,EAAE,GAClB,OAAO,CAGT;AAED;;;;GAIG;AACH,wBAAgB,4BAA4B,CAC1C,gBAAgB,EAAE,sBAAsB,GAAG,SAAS,EACpD,eAAe,EAAE,MAAM,EAAE,GACxB,OAAO,CAYT;AAWD;;;;;;;GAOG;AACH,wBAAgB,uBAAuB,CACrC,MAAM,EAAE,yBAAyB,EACjC,MAAM,EAAE,wBAAwB,GAC/B,yBAAyB,CA0B3B"}
1
+ {"version":3,"file":"settings-hub-gating.frontend.utils.d.ts","sourceRoot":"","sources":["../../../../src/core/config/settings-hub-gating.frontend.utils.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AAEH,OAAO,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AAC7D,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,uBAAuB,CAAC;AACpE,OAAO,EAEL,KAAK,kCAAkC,EACxC,MAAM,mEAAmE,CAAC;AAC3E,OAAO,KAAK,EACV,yBAAyB,EAG1B,MAAM,iCAAiC,CAAC;AAEzC,qFAAqF;AACrF,MAAM,WAAW,gBAAgB;IAC/B,aAAa,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC9B,qBAAqB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACtC,oBAAoB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACrC,sBAAsB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CACxC;AAED,qEAAqE;AACrE,MAAM,WAAW,wBAAwB;IACvC,QAAQ,EAAE,gBAAgB,CAAC;IAC3B,6EAA6E;IAC7E,SAAS,EAAE,MAAM,EAAE,CAAC;IACpB,8DAA8D;IAC9D,eAAe,EAAE,MAAM,EAAE,CAAC;IAC1B,4EAA4E;IAC5E,cAAc,EAAE,kCAAkC,CAAC;CACpD;AAED;;;GAGG;AACH,wBAAgB,wBAAwB,CACtC,KAAK,EAAE,oBAAoB,GAAG,SAAS,EACvC,QAAQ,EAAE,gBAAgB,GACzB,OAAO,CAaT;AAED;;;;GAIG;AACH,wBAAgB,wBAAwB,CACtC,aAAa,EAAE,MAAM,EAAE,GAAG,SAAS,EACnC,SAAS,EAAE,MAAM,EAAE,GAClB,OAAO,CAGT;AAED;;;;GAIG;AACH,wBAAgB,4BAA4B,CAC1C,gBAAgB,EAAE,sBAAsB,GAAG,SAAS,EACpD,eAAe,EAAE,MAAM,EAAE,GACxB,OAAO,CAYT;AAYD;;;;;;;GAOG;AACH,wBAAgB,uBAAuB,CACrC,MAAM,EAAE,yBAAyB,EACjC,MAAM,EAAE,wBAAwB,GAC/B,yBAAyB,CA0B3B"}
@@ -13,8 +13,9 @@
13
13
  * hidden when no organization is selected). Scope-agnostic categories always
14
14
  * pass.
15
15
  * 2. **Capability** — `runtimeAvailability.requiredCapabilities` evaluated via
16
- * the SAME {@link isLauncherRuntimeAvailabilitySatisfied} the sidebar/command
17
- * menu use (e.g. `billingEnabled`).
16
+ * {@link areLauncherCapabilitiesSatisfied}, the capability half of the launcher
17
+ * filter the sidebar and command menu use (e.g. `billingEnabled`). The launcher's
18
+ * `visibleToRoles` is not read here: a section's roles are rule 3.
18
19
  * 3. **Role** — `requiredRoles` (OR semantics) evaluated against the merged
19
20
  * app-level + current-organization role set (`buildFeaturePolicyRoles`).
20
21
  * 4. **Feature** — `requiredFeatures` ({@link RequiredFeaturesConfig}) boolean
@@ -26,7 +27,7 @@
26
27
  * @see useVisibleSettingsHubConfig.ts — the hook that wires live signals into this
27
28
  */
28
29
  import { ResourcePrimaryScope } from '@wildo-ai/saas-models';
29
- import { isLauncherRuntimeAvailabilitySatisfied, } from '../../core/navigation/launcher-runtime-availability.js';
30
+ import { areLauncherCapabilitiesSatisfied, } from '../../core/navigation/launcher-runtime-availability.js';
30
31
  /**
31
32
  * Whether a category's primary scope currently has a value. A category without a
32
33
  * `scope` is scope-agnostic and always available.
@@ -75,7 +76,9 @@ export function areSettingsFeaturesSatisfied(requiredFeatures, enabledFeatures)
75
76
  }
76
77
  /** A section passes every gate except its category's scope (checked at the category level). */
77
78
  function isSectionVisible(section, gating) {
78
- return (isLauncherRuntimeAvailabilitySatisfied(section.runtimeAvailability, gating.runtimeContext) &&
79
+ return (
80
+ // Capabilities only: a settings section's roles are `requiredRoles` below, never the launcher's `visibleToRoles`.
81
+ areLauncherCapabilitiesSatisfied(section.runtimeAvailability, gating.runtimeContext) &&
79
82
  hasRequiredSettingsRoles(section.requiredRoles, gating.userRoles) &&
80
83
  areSettingsFeaturesSatisfied(section.requiredFeatures, gating.enabledFeatures));
81
84
  }
@@ -1 +1 @@
1
- {"version":3,"file":"settings-hub-gating.frontend.utils.js","sourceRoot":"","sources":["../../../../../src/core/config/settings-hub-gating.frontend.utils.ts"],"names":[],"mappings":"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","sourcesContent":["/**\n * Settings Hub — Section Gating (\"face to right management of the user\")\n *\n * Pure, React-free evaluation of which categories/sections the current user may\n * see. Kept separate from the {@link useVisibleSettingsHubConfig} hook so the\n * gating decisions are unit-testable without a React tree.\n *\n * Four orthogonal gates, mirroring the framework's existing launcher/view gating\n * semantics so settings sections behave identically to every other gated surface:\n *\n * 1. **Scope** — a category bound to a {@link ResourcePrimaryScope} is hidden\n * when that scope has no current value (e.g. the `ORGANIZATIONS` category is\n * hidden when no organization is selected). Scope-agnostic categories always\n * pass.\n * 2. **Capability** — `runtimeAvailability.requiredCapabilities` evaluated via\n * the SAME {@link isLauncherRuntimeAvailabilitySatisfied} the sidebar/command\n * menu use (e.g. `billingEnabled`).\n * 3. **Role** — `requiredRoles` (OR semantics) evaluated against the merged\n * app-level + current-organization role set (`buildFeaturePolicyRoles`).\n * 4. **Feature** — `requiredFeatures` ({@link RequiredFeaturesConfig}) boolean\n * presence check against the resolved feature list. `limitChecks` are\n * intentionally ignored: a settings section is shown or hidden, never\n * \"over-limit\".\n *\n * @see settings-hub.frontend.schemas.ts — the gated section contract\n * @see useVisibleSettingsHubConfig.ts — the hook that wires live signals into this\n */\n\nimport { ResourcePrimaryScope } from '@wildo-ai/saas-models';\nimport type { RequiredFeaturesConfig } from '@wildo-ai/saas-models';\nimport {\n isLauncherRuntimeAvailabilitySatisfied,\n type LauncherRuntimeAvailabilityContext,\n} from '~wildo-frontend-lib/core/navigation/launcher-runtime-availability';\nimport type {\n ResolvedSettingsHubConfig,\n SettingsCategory,\n SettingsSection,\n} from './settings-hub.frontend.schemas';\n\n/** The current primary-scope values used to evaluate category scope availability. */\nexport interface SettingsScopeIds {\n currentUserId?: string | null;\n currentOrganizationId?: string | null;\n currentApplicationId?: string | null;\n currentAnonymousUserId?: string | null;\n}\n\n/** Everything the pure filter needs to decide section visibility. */\nexport interface SettingsHubGatingContext {\n scopeIds: SettingsScopeIds;\n /** Merged app-level + current-org roles (from `buildFeaturePolicyRoles`). */\n userRoles: string[];\n /** Resolved boolean feature identifiers currently enabled. */\n enabledFeatures: string[];\n /** Runtime-capability context (reused verbatim from the launcher layer). */\n runtimeContext: LauncherRuntimeAvailabilityContext;\n}\n\n/**\n * Whether a category's primary scope currently has a value. A category without a\n * `scope` is scope-agnostic and always available.\n */\nexport function isSettingsScopeAvailable(\n scope: ResourcePrimaryScope | undefined,\n scopeIds: SettingsScopeIds,\n): boolean {\n switch (scope) {\n case undefined:\n return true;\n case ResourcePrimaryScope.USER_SELF:\n return Boolean(scopeIds.currentUserId);\n case ResourcePrimaryScope.ORGANIZATIONS:\n return Boolean(scopeIds.currentOrganizationId);\n case ResourcePrimaryScope.APPLICATION:\n return Boolean(scopeIds.currentApplicationId);\n case ResourcePrimaryScope.ANONYMOUS:\n return Boolean(scopeIds.currentAnonymousUserId);\n }\n}\n\n/**\n * OR-semantics role check: a section with no `requiredRoles` is open; otherwise\n * the user must hold AT LEAST ONE of the required roles. Matches the role\n * semantics in `evaluateGuidanceAudience`.\n */\nexport function hasRequiredSettingsRoles(\n requiredRoles: string[] | undefined,\n userRoles: string[],\n): boolean {\n if (!requiredRoles?.length) return true;\n return requiredRoles.some(role => userRoles.includes(role));\n}\n\n/**\n * Boolean feature gate mirroring {@link RequiredFeaturesConfig} semantics\n * (shorthand `string[]` = OR; full form honours `mode`). `limitChecks` are not\n * evaluated for visibility. A section with no `requiredFeatures` is open.\n */\nexport function areSettingsFeaturesSatisfied(\n requiredFeatures: RequiredFeaturesConfig | undefined,\n enabledFeatures: string[],\n): boolean {\n if (!requiredFeatures) return true;\n\n const featureList = Array.isArray(requiredFeatures)\n ? requiredFeatures\n : (requiredFeatures.features ?? []);\n if (featureList.length === 0) return true;\n\n const mode = Array.isArray(requiredFeatures) ? 'OR' : (requiredFeatures.mode ?? 'OR');\n return mode === 'OR'\n ? featureList.some(feature => enabledFeatures.includes(feature))\n : featureList.every(feature => enabledFeatures.includes(feature));\n}\n\n/** A section passes every gate except its category's scope (checked at the category level). */\nfunction isSectionVisible(section: SettingsSection, gating: SettingsHubGatingContext): boolean {\n return (\n isLauncherRuntimeAvailabilitySatisfied(section.runtimeAvailability, gating.runtimeContext) &&\n hasRequiredSettingsRoles(section.requiredRoles, gating.userRoles) &&\n areSettingsFeaturesSatisfied(section.requiredFeatures, gating.enabledFeatures)\n );\n}\n\n/**\n * Filter a raw {@link ResolvedSettingsHubConfig} down to what the current user may see.\n *\n * Categories are dropped when their scope is unavailable OR when every one of\n * their sections is gated out (an empty rail group would be visual noise). The\n * `defaultSectionRef` is recomputed when the configured default is no longer\n * visible, so the hub never tries to open a section the user cannot access.\n */\nexport function filterSettingsHubConfig(\n config: ResolvedSettingsHubConfig,\n gating: SettingsHubGatingContext,\n): ResolvedSettingsHubConfig {\n const scopedCategories: SettingsCategory[] = config.categories.filter(category =>\n isSettingsScopeAvailable(category.scope, gating.scopeIds),\n );\n const scopedCategoryRefs = new Set(scopedCategories.map(category => category.ref));\n\n const visibleSections = config.sections.filter(\n section => scopedCategoryRefs.has(section.categoryRef) && isSectionVisible(section, gating),\n );\n\n // Drop categories that ended up with zero visible sections.\n const populatedCategoryRefs = new Set(visibleSections.map(section => section.categoryRef));\n const visibleCategories = scopedCategories.filter(category =>\n populatedCategoryRefs.has(category.ref),\n );\n\n const defaultSectionRef =\n config.defaultSectionRef && visibleSections.some(section => section.ref === config.defaultSectionRef)\n ? config.defaultSectionRef\n : visibleSections[0]?.ref;\n\n return {\n categories: visibleCategories,\n sections: visibleSections,\n defaultSectionRef,\n };\n}\n"]}
1
+ {"version":3,"file":"settings-hub-gating.frontend.utils.js","sourceRoot":"","sources":["../../../../src/core/config/settings-hub-gating.frontend.utils.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AAEH,OAAO,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AAE7D,OAAO,EACL,gCAAgC,GAEjC,MAAM,mEAAmE,CAAC;AA0B3E;;;GAGG;AACH,MAAM,UAAU,wBAAwB,CACtC,KAAuC,EACvC,QAA0B;IAE1B,QAAQ,KAAK,EAAE,CAAC;QACd,KAAK,SAAS;YACZ,OAAO,IAAI,CAAC;QACd,KAAK,oBAAoB,CAAC,SAAS;YACjC,OAAO,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC;QACzC,KAAK,oBAAoB,CAAC,aAAa;YACrC,OAAO,OAAO,CAAC,QAAQ,CAAC,qBAAqB,CAAC,CAAC;QACjD,KAAK,oBAAoB,CAAC,WAAW;YACnC,OAAO,OAAO,CAAC,QAAQ,CAAC,oBAAoB,CAAC,CAAC;QAChD,KAAK,oBAAoB,CAAC,SAAS;YACjC,OAAO,OAAO,CAAC,QAAQ,CAAC,sBAAsB,CAAC,CAAC;IACpD,CAAC;AACH,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,wBAAwB,CACtC,aAAmC,EACnC,SAAmB;IAEnB,IAAI,CAAC,aAAa,EAAE,MAAM;QAAE,OAAO,IAAI,CAAC;IACxC,OAAO,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC;AAC9D,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,4BAA4B,CAC1C,gBAAoD,EACpD,eAAyB;IAEzB,IAAI,CAAC,gBAAgB;QAAE,OAAO,IAAI,CAAC;IAEnC,MAAM,WAAW,GAAG,KAAK,CAAC,OAAO,CAAC,gBAAgB,CAAC;QACjD,CAAC,CAAC,gBAAgB;QAClB,CAAC,CAAC,CAAC,gBAAgB,CAAC,QAAQ,IAAI,EAAE,CAAC,CAAC;IACtC,IAAI,WAAW,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,IAAI,CAAC;IAE1C,MAAM,IAAI,GAAG,KAAK,CAAC,OAAO,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,gBAAgB,CAAC,IAAI,IAAI,IAAI,CAAC,CAAC;IACtF,OAAO,IAAI,KAAK,IAAI;QAClB,CAAC,CAAC,WAAW,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,eAAe,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QAChE,CAAC,CAAC,WAAW,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC,eAAe,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC;AACtE,CAAC;AAED,+FAA+F;AAC/F,SAAS,gBAAgB,CAAC,OAAwB,EAAE,MAAgC;IAClF,OAAO;IACL,kHAAkH;IAClH,gCAAgC,CAAC,OAAO,CAAC,mBAAmB,EAAE,MAAM,CAAC,cAAc,CAAC;QACpF,wBAAwB,CAAC,OAAO,CAAC,aAAa,EAAE,MAAM,CAAC,SAAS,CAAC;QACjE,4BAA4B,CAAC,OAAO,CAAC,gBAAgB,EAAE,MAAM,CAAC,eAAe,CAAC,CAC/E,CAAC;AACJ,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,uBAAuB,CACrC,MAAiC,EACjC,MAAgC;IAEhC,MAAM,gBAAgB,GAAuB,MAAM,CAAC,UAAU,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,CAC/E,wBAAwB,CAAC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC,QAAQ,CAAC,CAC1D,CAAC;IACF,MAAM,kBAAkB,GAAG,IAAI,GAAG,CAAC,gBAAgB,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC;IAEnF,MAAM,eAAe,GAAG,MAAM,CAAC,QAAQ,CAAC,MAAM,CAC5C,OAAO,CAAC,EAAE,CAAC,kBAAkB,CAAC,GAAG,CAAC,OAAO,CAAC,WAAW,CAAC,IAAI,gBAAgB,CAAC,OAAO,EAAE,MAAM,CAAC,CAC5F,CAAC;IAEF,4DAA4D;IAC5D,MAAM,qBAAqB,GAAG,IAAI,GAAG,CAAC,eAAe,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC;IAC3F,MAAM,iBAAiB,GAAG,gBAAgB,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,CAC3D,qBAAqB,CAAC,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,CACxC,CAAC;IAEF,MAAM,iBAAiB,GACrB,MAAM,CAAC,iBAAiB,IAAI,eAAe,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,GAAG,KAAK,MAAM,CAAC,iBAAiB,CAAC;QACnG,CAAC,CAAC,MAAM,CAAC,iBAAiB;QAC1B,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC;IAE9B,OAAO;QACL,UAAU,EAAE,iBAAiB;QAC7B,QAAQ,EAAE,eAAe;QACzB,iBAAiB;KAClB,CAAC;AACJ,CAAC","sourcesContent":["/**\n * Settings Hub — Section Gating (\"face to right management of the user\")\n *\n * Pure, React-free evaluation of which categories/sections the current user may\n * see. Kept separate from the {@link useVisibleSettingsHubConfig} hook so the\n * gating decisions are unit-testable without a React tree.\n *\n * Four orthogonal gates, mirroring the framework's existing launcher/view gating\n * semantics so settings sections behave identically to every other gated surface:\n *\n * 1. **Scope** — a category bound to a {@link ResourcePrimaryScope} is hidden\n * when that scope has no current value (e.g. the `ORGANIZATIONS` category is\n * hidden when no organization is selected). Scope-agnostic categories always\n * pass.\n * 2. **Capability** — `runtimeAvailability.requiredCapabilities` evaluated via\n * {@link areLauncherCapabilitiesSatisfied}, the capability half of the launcher\n * filter the sidebar and command menu use (e.g. `billingEnabled`). The launcher's\n * `visibleToRoles` is not read here: a section's roles are rule 3.\n * 3. **Role** — `requiredRoles` (OR semantics) evaluated against the merged\n * app-level + current-organization role set (`buildFeaturePolicyRoles`).\n * 4. **Feature** — `requiredFeatures` ({@link RequiredFeaturesConfig}) boolean\n * presence check against the resolved feature list. `limitChecks` are\n * intentionally ignored: a settings section is shown or hidden, never\n * \"over-limit\".\n *\n * @see settings-hub.frontend.schemas.ts — the gated section contract\n * @see useVisibleSettingsHubConfig.ts — the hook that wires live signals into this\n */\n\nimport { ResourcePrimaryScope } from '@wildo-ai/saas-models';\nimport type { RequiredFeaturesConfig } from '@wildo-ai/saas-models';\nimport {\n areLauncherCapabilitiesSatisfied,\n type LauncherRuntimeAvailabilityContext,\n} from '~wildo-frontend-lib/core/navigation/launcher-runtime-availability';\nimport type {\n ResolvedSettingsHubConfig,\n SettingsCategory,\n SettingsSection,\n} from './settings-hub.frontend.schemas';\n\n/** The current primary-scope values used to evaluate category scope availability. */\nexport interface SettingsScopeIds {\n currentUserId?: string | null;\n currentOrganizationId?: string | null;\n currentApplicationId?: string | null;\n currentAnonymousUserId?: string | null;\n}\n\n/** Everything the pure filter needs to decide section visibility. */\nexport interface SettingsHubGatingContext {\n scopeIds: SettingsScopeIds;\n /** Merged app-level + current-org roles (from `buildFeaturePolicyRoles`). */\n userRoles: string[];\n /** Resolved boolean feature identifiers currently enabled. */\n enabledFeatures: string[];\n /** Runtime-capability context (reused verbatim from the launcher layer). */\n runtimeContext: LauncherRuntimeAvailabilityContext;\n}\n\n/**\n * Whether a category's primary scope currently has a value. A category without a\n * `scope` is scope-agnostic and always available.\n */\nexport function isSettingsScopeAvailable(\n scope: ResourcePrimaryScope | undefined,\n scopeIds: SettingsScopeIds,\n): boolean {\n switch (scope) {\n case undefined:\n return true;\n case ResourcePrimaryScope.USER_SELF:\n return Boolean(scopeIds.currentUserId);\n case ResourcePrimaryScope.ORGANIZATIONS:\n return Boolean(scopeIds.currentOrganizationId);\n case ResourcePrimaryScope.APPLICATION:\n return Boolean(scopeIds.currentApplicationId);\n case ResourcePrimaryScope.ANONYMOUS:\n return Boolean(scopeIds.currentAnonymousUserId);\n }\n}\n\n/**\n * OR-semantics role check: a section with no `requiredRoles` is open; otherwise\n * the user must hold AT LEAST ONE of the required roles. Matches the role\n * semantics in `evaluateGuidanceAudience`.\n */\nexport function hasRequiredSettingsRoles(\n requiredRoles: string[] | undefined,\n userRoles: string[],\n): boolean {\n if (!requiredRoles?.length) return true;\n return requiredRoles.some(role => userRoles.includes(role));\n}\n\n/**\n * Boolean feature gate mirroring {@link RequiredFeaturesConfig} semantics\n * (shorthand `string[]` = OR; full form honours `mode`). `limitChecks` are not\n * evaluated for visibility. A section with no `requiredFeatures` is open.\n */\nexport function areSettingsFeaturesSatisfied(\n requiredFeatures: RequiredFeaturesConfig | undefined,\n enabledFeatures: string[],\n): boolean {\n if (!requiredFeatures) return true;\n\n const featureList = Array.isArray(requiredFeatures)\n ? requiredFeatures\n : (requiredFeatures.features ?? []);\n if (featureList.length === 0) return true;\n\n const mode = Array.isArray(requiredFeatures) ? 'OR' : (requiredFeatures.mode ?? 'OR');\n return mode === 'OR'\n ? featureList.some(feature => enabledFeatures.includes(feature))\n : featureList.every(feature => enabledFeatures.includes(feature));\n}\n\n/** A section passes every gate except its category's scope (checked at the category level). */\nfunction isSectionVisible(section: SettingsSection, gating: SettingsHubGatingContext): boolean {\n return (\n // Capabilities only: a settings section's roles are `requiredRoles` below, never the launcher's `visibleToRoles`.\n areLauncherCapabilitiesSatisfied(section.runtimeAvailability, gating.runtimeContext) &&\n hasRequiredSettingsRoles(section.requiredRoles, gating.userRoles) &&\n areSettingsFeaturesSatisfied(section.requiredFeatures, gating.enabledFeatures)\n );\n}\n\n/**\n * Filter a raw {@link ResolvedSettingsHubConfig} down to what the current user may see.\n *\n * Categories are dropped when their scope is unavailable OR when every one of\n * their sections is gated out (an empty rail group would be visual noise). The\n * `defaultSectionRef` is recomputed when the configured default is no longer\n * visible, so the hub never tries to open a section the user cannot access.\n */\nexport function filterSettingsHubConfig(\n config: ResolvedSettingsHubConfig,\n gating: SettingsHubGatingContext,\n): ResolvedSettingsHubConfig {\n const scopedCategories: SettingsCategory[] = config.categories.filter(category =>\n isSettingsScopeAvailable(category.scope, gating.scopeIds),\n );\n const scopedCategoryRefs = new Set(scopedCategories.map(category => category.ref));\n\n const visibleSections = config.sections.filter(\n section => scopedCategoryRefs.has(section.categoryRef) && isSectionVisible(section, gating),\n );\n\n // Drop categories that ended up with zero visible sections.\n const populatedCategoryRefs = new Set(visibleSections.map(section => section.categoryRef));\n const visibleCategories = scopedCategories.filter(category =>\n populatedCategoryRefs.has(category.ref),\n );\n\n const defaultSectionRef =\n config.defaultSectionRef && visibleSections.some(section => section.ref === config.defaultSectionRef)\n ? config.defaultSectionRef\n : visibleSections[0]?.ref;\n\n return {\n categories: visibleCategories,\n sections: visibleSections,\n defaultSectionRef,\n };\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"settings-hub-presentation.frontend.utils.d.ts","sourceRoot":"","sources":["../../../../../src/core/config/settings-hub-presentation.frontend.utils.ts"],"names":[],"mappings":"AAyBA,OAAO,EAAe,KAAK,oBAAoB,EAAE,MAAM,0BAA0B,CAAC;AAClF,OAAO,EAGL,KAAK,eAAe,EACpB,KAAK,qBAAqB,EAC3B,MAAM,+DAA+D,CAAC;AAoCvE,wBAAgB,sCAAsC,CAAC,MAAM,EAAE,qBAAqB,GAAG,OAAO,CAE7F;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,6BAA6B,CAC3C,QAAQ,EAAE,SAAS,eAAe,EAAE,EACpC,UAAU,EAAE,MAAM,GAAG,SAAS,EAC9B,8BAA8B,EAAE,CAAC,YAAY,EAAE,MAAM,KAAK,oBAAoB,GAAG,SAAS,GACzF,OAAO,CAiBT"}
1
+ {"version":3,"file":"settings-hub-presentation.frontend.utils.d.ts","sourceRoot":"","sources":["../../../../src/core/config/settings-hub-presentation.frontend.utils.ts"],"names":[],"mappings":"AAyBA,OAAO,EAAe,KAAK,oBAAoB,EAAE,MAAM,0BAA0B,CAAC;AAClF,OAAO,EAGL,KAAK,eAAe,EACpB,KAAK,qBAAqB,EAC3B,MAAM,+DAA+D,CAAC;AAoCvE,wBAAgB,sCAAsC,CAAC,MAAM,EAAE,qBAAqB,GAAG,OAAO,CAE7F;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,6BAA6B,CAC3C,QAAQ,EAAE,SAAS,eAAe,EAAE,EACpC,UAAU,EAAE,MAAM,GAAG,SAAS,EAC9B,8BAA8B,EAAE,CAAC,YAAY,EAAE,MAAM,KAAK,oBAAoB,GAAG,SAAS,GACzF,OAAO,CAiBT"}
@@ -28,6 +28,13 @@
28
28
  import { ResourcePrimaryScope } from '@wildo-ai/saas-models';
29
29
  import type { RequiredFeaturesConfig } from '@wildo-ai/saas-models';
30
30
  import type { LauncherRuntimeAvailabilityConfig } from './launcher-items.frontend.schemas';
31
+ /**
32
+ * A settings destination's runtime availability: CAPABILITIES only. Its roles are `requiredRoles`, an exact match the
33
+ * settings hub has always applied, so the launcher's `visibleToRoles` (which also counts core-role inheritance) is
34
+ * deliberately not accepted here: one decision with two role rules that disagree on an organization owner is the drift
35
+ * to avoid. The placement plan refuses an audience on the settings rail for the same reason.
36
+ */
37
+ export type SettingsRuntimeAvailabilityConfig = Omit<LauncherRuntimeAvailabilityConfig, 'visibleToRoles'>;
31
38
  /** @wildo_source:part:start saas.frontend.settings-hub.placement */
32
39
  /**
33
40
  * What a settings section renders in its content panel.
@@ -214,8 +221,8 @@ export interface SettingsDestination {
214
221
  ref: string;
215
222
  /** What the destination renders in its content panel. */
216
223
  target: SettingsSectionTarget;
217
- /** Declarative runtime capability gating (same contract as launcher items). */
218
- runtimeAvailability?: LauncherRuntimeAvailabilityConfig;
224
+ /** Declarative runtime capability gating (launcher items' `requiredCapabilities`; roles are `requiredRoles`). */
225
+ runtimeAvailability?: SettingsRuntimeAvailabilityConfig;
219
226
  /** Feature flags required to surface this destination (plan/subscription gating). */
220
227
  requiredFeatures?: RequiredFeaturesConfig;
221
228
  /** RBAC roles required to surface this destination (OR semantics). */
@@ -261,7 +268,7 @@ export interface SettingsPlacement {
261
268
  * Produced by `resolveSettingsHubConfig()`; never authored directly. It
262
269
  * belongs to a category, addresses a target, and reuses the existing launcher
263
270
  * gating stack:
264
- * - `runtimeAvailability` — survives the app-shell filtering pass (capabilities).
271
+ * - `runtimeAvailability` — survives the app-shell filtering pass (capabilities only; roles are `requiredRoles`).
265
272
  * - `requiredFeatures` — plan/subscription gating once resolved.
266
273
  * - `requiredRoles` — RBAC gating (e.g. org-admin-only sections).
267
274
  *
@@ -280,8 +287,8 @@ export interface SettingsSection {
280
287
  order?: number;
281
288
  /** What the section renders in its content panel. */
282
289
  target: SettingsSectionTarget;
283
- /** Declarative runtime capability gating (same contract as launcher items). */
284
- runtimeAvailability?: LauncherRuntimeAvailabilityConfig;
290
+ /** Declarative runtime capability gating (launcher items' `requiredCapabilities`; roles are `requiredRoles`). */
291
+ runtimeAvailability?: SettingsRuntimeAvailabilityConfig;
285
292
  /**
286
293
  * Feature flags required to surface this section (plan/subscription gating).
287
294
  *
@@ -1 +1 @@
1
- {"version":3,"file":"settings-hub.frontend.schemas.d.ts","sourceRoot":"","sources":["../../../../../src/core/config/settings-hub.frontend.schemas.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"settings-hub.frontend.schemas.d.ts","sourceRoot":"","sources":["../../../../src/core/config/settings-hub.frontend.schemas.ts"],"names":[],"mappings":"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"}