@wildo-ai/saas-frontend-lib 1.1.5 → 1.1.7

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 (2312) hide show
  1. package/dist/esm/browser-bootstrap/theme-bootstrap.d.ts.map +1 -1
  2. package/dist/esm/browser-bootstrap/theme-bootstrap.js.map +1 -1
  3. package/dist/esm/browser-bootstrap.exports.d.ts.map +1 -1
  4. package/dist/esm/browser-bootstrap.exports.js.map +1 -1
  5. package/dist/esm/companion-exports.d.ts.map +1 -1
  6. package/dist/esm/companion-exports.js.map +1 -1
  7. package/dist/esm/companion-runtime-exports.d.ts.map +1 -1
  8. package/dist/esm/companion-runtime-exports.js.map +1 -1
  9. package/dist/esm/components/actions/action-bar.d.ts +15 -0
  10. package/dist/esm/components/actions/action-bar.d.ts.map +1 -1
  11. package/dist/esm/components/actions/action-bar.js +15 -0
  12. package/dist/esm/components/actions/action-bar.js.map +1 -1
  13. package/dist/esm/components/actions/action-button.d.ts.map +1 -1
  14. package/dist/esm/components/actions/action-button.js.map +1 -1
  15. package/dist/esm/components/actions/button-group.d.ts.map +1 -1
  16. package/dist/esm/components/actions/button-group.js.map +1 -1
  17. package/dist/esm/components/actions/button.d.ts.map +1 -1
  18. package/dist/esm/components/actions/button.js.map +1 -1
  19. package/dist/esm/components/ai-elements/artifacts/artifact-browser.types.d.ts.map +1 -1
  20. package/dist/esm/components/ai-elements/artifacts/artifact-browser.types.js.map +1 -1
  21. package/dist/esm/components/ai-elements/artifacts/artifact-list.d.ts.map +1 -1
  22. package/dist/esm/components/ai-elements/artifacts/artifact-list.js.map +1 -1
  23. package/dist/esm/components/ai-elements/artifacts/artifact.d.ts.map +1 -1
  24. package/dist/esm/components/ai-elements/artifacts/artifact.js.map +1 -1
  25. package/dist/esm/components/ai-elements/artifacts/code-block.d.ts.map +1 -1
  26. package/dist/esm/components/ai-elements/artifacts/code-block.js.map +1 -1
  27. package/dist/esm/components/ai-elements/artifacts/diff-block.d.ts.map +1 -1
  28. package/dist/esm/components/ai-elements/artifacts/diff-block.js.map +1 -1
  29. package/dist/esm/components/ai-elements/artifacts/image.d.ts.map +1 -1
  30. package/dist/esm/components/ai-elements/artifacts/image.js.map +1 -1
  31. package/dist/esm/components/ai-elements/artifacts/unified-diff.utils.d.ts.map +1 -1
  32. package/dist/esm/components/ai-elements/artifacts/unified-diff.utils.js.map +1 -1
  33. package/dist/esm/components/ai-elements/artifacts/web-preview.d.ts.map +1 -1
  34. package/dist/esm/components/ai-elements/artifacts/web-preview.js.map +1 -1
  35. package/dist/esm/components/ai-elements/chat/conversation.d.ts.map +1 -1
  36. package/dist/esm/components/ai-elements/chat/conversation.js.map +1 -1
  37. package/dist/esm/components/ai-elements/chat/message.d.ts.map +1 -1
  38. package/dist/esm/components/ai-elements/chat/message.js.map +1 -1
  39. package/dist/esm/components/ai-elements/chat/prompt-input.d.ts.map +1 -1
  40. package/dist/esm/components/ai-elements/chat/prompt-input.js.map +1 -1
  41. package/dist/esm/components/ai-elements/chat/sources.d.ts.map +1 -1
  42. package/dist/esm/components/ai-elements/chat/sources.js.map +1 -1
  43. package/dist/esm/components/ai-elements/chat/suggestion.d.ts.map +1 -1
  44. package/dist/esm/components/ai-elements/chat/suggestion.js.map +1 -1
  45. package/dist/esm/components/ai-elements/decision/approval.d.ts +97 -7
  46. package/dist/esm/components/ai-elements/decision/approval.d.ts.map +1 -1
  47. package/dist/esm/components/ai-elements/decision/approval.js.map +1 -1
  48. package/dist/esm/components/ai-elements/execution/confirmation.d.ts.map +1 -1
  49. package/dist/esm/components/ai-elements/execution/confirmation.js.map +1 -1
  50. package/dist/esm/components/ai-elements/execution/queue.d.ts.map +1 -1
  51. package/dist/esm/components/ai-elements/execution/queue.js.map +1 -1
  52. package/dist/esm/components/ai-elements/execution/task.d.ts.map +1 -1
  53. package/dist/esm/components/ai-elements/execution/task.js.map +1 -1
  54. package/dist/esm/components/ai-elements/execution/tool.d.ts.map +1 -1
  55. package/dist/esm/components/ai-elements/execution/tool.js.map +1 -1
  56. package/dist/esm/components/ai-elements/graph/canvas.d.ts.map +1 -1
  57. package/dist/esm/components/ai-elements/graph/canvas.js.map +1 -1
  58. package/dist/esm/components/ai-elements/graph/connection.d.ts.map +1 -1
  59. package/dist/esm/components/ai-elements/graph/connection.js.map +1 -1
  60. package/dist/esm/components/ai-elements/graph/controls.d.ts.map +1 -1
  61. package/dist/esm/components/ai-elements/graph/controls.js.map +1 -1
  62. package/dist/esm/components/ai-elements/graph/edge.d.ts.map +1 -1
  63. package/dist/esm/components/ai-elements/graph/edge.js.map +1 -1
  64. package/dist/esm/components/ai-elements/graph/node.d.ts.map +1 -1
  65. package/dist/esm/components/ai-elements/graph/node.js.map +1 -1
  66. package/dist/esm/components/ai-elements/graph/panel.d.ts.map +1 -1
  67. package/dist/esm/components/ai-elements/graph/panel.js.map +1 -1
  68. package/dist/esm/components/ai-elements/graph/toolbar.d.ts.map +1 -1
  69. package/dist/esm/components/ai-elements/graph/toolbar.js.map +1 -1
  70. package/dist/esm/components/ai-elements/meta/agent-wrappers.d.ts.map +1 -1
  71. package/dist/esm/components/ai-elements/meta/agent-wrappers.js.map +1 -1
  72. package/dist/esm/components/ai-elements/meta/context.d.ts.map +1 -1
  73. package/dist/esm/components/ai-elements/meta/context.js.map +1 -1
  74. package/dist/esm/components/ai-elements/meta/model-selector.d.ts.map +1 -1
  75. package/dist/esm/components/ai-elements/meta/model-selector.js.map +1 -1
  76. package/dist/esm/components/ai-elements/meta/open-in-chat.d.ts.map +1 -1
  77. package/dist/esm/components/ai-elements/meta/open-in-chat.js.map +1 -1
  78. package/dist/esm/components/ai-elements/shared/loader.d.ts.map +1 -1
  79. package/dist/esm/components/ai-elements/shared/loader.js.map +1 -1
  80. package/dist/esm/components/ai-elements/shared/shimmer.d.ts.map +1 -1
  81. package/dist/esm/components/ai-elements/shared/shimmer.js.map +1 -1
  82. package/dist/esm/components/ai-elements/stream/execution-stream.d.ts.map +1 -1
  83. package/dist/esm/components/ai-elements/stream/execution-stream.js.map +1 -1
  84. package/dist/esm/components/ai-elements/trace/chain-of-thought.d.ts.map +1 -1
  85. package/dist/esm/components/ai-elements/trace/chain-of-thought.js.map +1 -1
  86. package/dist/esm/components/ai-elements/trace/checkpoint.d.ts.map +1 -1
  87. package/dist/esm/components/ai-elements/trace/checkpoint.js.map +1 -1
  88. package/dist/esm/components/ai-elements/trace/inline-citation.d.ts.map +1 -1
  89. package/dist/esm/components/ai-elements/trace/inline-citation.js.map +1 -1
  90. package/dist/esm/components/ai-elements/trace/plan.d.ts.map +1 -1
  91. package/dist/esm/components/ai-elements/trace/plan.js.map +1 -1
  92. package/dist/esm/components/ai-elements/trace/reasoning.d.ts.map +1 -1
  93. package/dist/esm/components/ai-elements/trace/reasoning.js.map +1 -1
  94. package/dist/esm/components/app/AppLayout_AuthenticatedRoute.d.ts.map +1 -1
  95. package/dist/esm/components/app/AppLayout_AuthenticatedRoute.js +8 -3
  96. package/dist/esm/components/app/AppLayout_AuthenticatedRoute.js.map +1 -1
  97. package/dist/esm/components/app/AppLayout_ConsentGate.d.ts.map +1 -1
  98. package/dist/esm/components/app/AppLayout_ConsentGate.js.map +1 -1
  99. package/dist/esm/components/app/AppLayout_ConsentGate.labels.d.ts.map +1 -1
  100. package/dist/esm/components/app/AppLayout_ConsentGate.labels.js.map +1 -1
  101. package/dist/esm/components/app/AppLayout_DocumentAcceptanceGate.d.ts.map +1 -1
  102. package/dist/esm/components/app/AppLayout_DocumentAcceptanceGate.js.map +1 -1
  103. package/dist/esm/components/app/AppLayout_DocumentAcceptanceGate.labels.d.ts.map +1 -1
  104. package/dist/esm/components/app/AppLayout_DocumentAcceptanceGate.labels.js.map +1 -1
  105. package/dist/esm/components/app/AppLayout_ErrorBoundary.d.ts.map +1 -1
  106. package/dist/esm/components/app/AppLayout_ErrorBoundary.js.map +1 -1
  107. package/dist/esm/components/app/AppLayout_ErrorBoundary.labels.d.ts.map +1 -1
  108. package/dist/esm/components/app/AppLayout_ErrorBoundary.labels.js.map +1 -1
  109. package/dist/esm/components/app/AppLayout_Home.d.ts.map +1 -1
  110. package/dist/esm/components/app/AppLayout_Home.js.map +1 -1
  111. package/dist/esm/components/app/AppLayout_Home.labels.d.ts.map +1 -1
  112. package/dist/esm/components/app/AppLayout_Home.labels.js.map +1 -1
  113. package/dist/esm/components/app/AppLayout_MainContainer.d.ts.map +1 -1
  114. package/dist/esm/components/app/AppLayout_MainContainer.js.map +1 -1
  115. package/dist/esm/components/app/AppLayout_NotificationCenter.d.ts.map +1 -1
  116. package/dist/esm/components/app/AppLayout_NotificationCenter.js.map +1 -1
  117. package/dist/esm/components/app/AppLayout_RouterErrorBoundary.d.ts.map +1 -1
  118. package/dist/esm/components/app/AppLayout_RouterErrorBoundary.js.map +1 -1
  119. package/dist/esm/components/app/AppLayout_RouterErrorBoundary.labels.d.ts.map +1 -1
  120. package/dist/esm/components/app/AppLayout_RouterErrorBoundary.labels.js.map +1 -1
  121. package/dist/esm/components/app/AppPage_Home.d.ts.map +1 -1
  122. package/dist/esm/components/app/AppPage_Home.js.map +1 -1
  123. package/dist/esm/components/app/PublicLayout_MainContainer.d.ts.map +1 -1
  124. package/dist/esm/components/app/PublicLayout_MainContainer.js.map +1 -1
  125. package/dist/esm/components/app/PublicLayout_StaticContentContainer.d.ts.map +1 -1
  126. package/dist/esm/components/app/PublicLayout_StaticContentContainer.js.map +1 -1
  127. package/dist/esm/components/app/PublicLayout_StaticContentContainer.labels.d.ts.map +1 -1
  128. package/dist/esm/components/app/PublicLayout_StaticContentContainer.labels.js.map +1 -1
  129. package/dist/esm/components/app/PublicLayout_Terms.d.ts.map +1 -1
  130. package/dist/esm/components/app/PublicLayout_Terms.js.map +1 -1
  131. package/dist/esm/components/app/PublicLayout_Terms.labels.d.ts.map +1 -1
  132. package/dist/esm/components/app/PublicLayout_Terms.labels.js.map +1 -1
  133. package/dist/esm/components/auth/Auth_AuthCallback.d.ts.map +1 -1
  134. package/dist/esm/components/auth/Auth_AuthCallback.js.map +1 -1
  135. package/dist/esm/components/auth/Auth_AuthCallback.labels.d.ts.map +1 -1
  136. package/dist/esm/components/auth/Auth_AuthCallback.labels.js.map +1 -1
  137. package/dist/esm/components/auth/Auth_ConfirmEmail.d.ts.map +1 -1
  138. package/dist/esm/components/auth/Auth_ConfirmEmail.js.map +1 -1
  139. package/dist/esm/components/auth/Auth_ConfirmEmail.labels.d.ts.map +1 -1
  140. package/dist/esm/components/auth/Auth_ConfirmEmail.labels.js.map +1 -1
  141. package/dist/esm/components/auth/Auth_EnrollmentRequired.d.ts.map +1 -1
  142. package/dist/esm/components/auth/Auth_EnrollmentRequired.js +5 -1
  143. package/dist/esm/components/auth/Auth_EnrollmentRequired.js.map +1 -1
  144. package/dist/esm/components/auth/Auth_EnrollmentRequired.labels.d.ts.map +1 -1
  145. package/dist/esm/components/auth/Auth_EnrollmentRequired.labels.js.map +1 -1
  146. package/dist/esm/components/auth/Auth_Invitation.d.ts.map +1 -1
  147. package/dist/esm/components/auth/Auth_Invitation.js.map +1 -1
  148. package/dist/esm/components/auth/Auth_Invitation.labels.d.ts.map +1 -1
  149. package/dist/esm/components/auth/Auth_Invitation.labels.js.map +1 -1
  150. package/dist/esm/components/auth/Auth_MagicLinkVerify.d.ts.map +1 -1
  151. package/dist/esm/components/auth/Auth_MagicLinkVerify.js.map +1 -1
  152. package/dist/esm/components/auth/Auth_MagicLinkVerify.labels.d.ts.map +1 -1
  153. package/dist/esm/components/auth/Auth_MagicLinkVerify.labels.js.map +1 -1
  154. package/dist/esm/components/auth/Auth_Main.d.ts.map +1 -1
  155. package/dist/esm/components/auth/Auth_Main.js +1 -4
  156. package/dist/esm/components/auth/Auth_Main.js.map +1 -1
  157. package/dist/esm/components/auth/Auth_Main.labels.d.ts.map +1 -1
  158. package/dist/esm/components/auth/Auth_Main.labels.js.map +1 -1
  159. package/dist/esm/components/auth/Auth_MfaChallenge.d.ts.map +1 -1
  160. package/dist/esm/components/auth/Auth_MfaChallenge.js.map +1 -1
  161. package/dist/esm/components/auth/Auth_MfaChallenge.labels.d.ts.map +1 -1
  162. package/dist/esm/components/auth/Auth_MfaChallenge.labels.js.map +1 -1
  163. package/dist/esm/components/auth/Auth_OAuthConsent.d.ts.map +1 -1
  164. package/dist/esm/components/auth/Auth_OAuthConsent.js.map +1 -1
  165. package/dist/esm/components/auth/Auth_OAuthConsent.labels.d.ts.map +1 -1
  166. package/dist/esm/components/auth/Auth_OAuthConsent.labels.js.map +1 -1
  167. package/dist/esm/components/auth/Auth_OAuthLoggedOut.d.ts.map +1 -1
  168. package/dist/esm/components/auth/Auth_OAuthLoggedOut.js.map +1 -1
  169. package/dist/esm/components/auth/Auth_OAuthLoggedOut.labels.d.ts.map +1 -1
  170. package/dist/esm/components/auth/Auth_OAuthLoggedOut.labels.js.map +1 -1
  171. package/dist/esm/components/auth/Auth_OAuthLogoutConfirm.d.ts.map +1 -1
  172. package/dist/esm/components/auth/Auth_OAuthLogoutConfirm.js.map +1 -1
  173. package/dist/esm/components/auth/Auth_OAuthLogoutConfirm.labels.d.ts.map +1 -1
  174. package/dist/esm/components/auth/Auth_OAuthLogoutConfirm.labels.js.map +1 -1
  175. package/dist/esm/components/auth/Auth_OneOffSession.d.ts.map +1 -1
  176. package/dist/esm/components/auth/Auth_OneOffSession.js.map +1 -1
  177. package/dist/esm/components/auth/Auth_OneOffSession.labels.d.ts.map +1 -1
  178. package/dist/esm/components/auth/Auth_OneOffSession.labels.js.map +1 -1
  179. package/dist/esm/components/auth/Auth_OrganizationOnboarding.d.ts.map +1 -1
  180. package/dist/esm/components/auth/Auth_OrganizationOnboarding.js.map +1 -1
  181. package/dist/esm/components/auth/Auth_OrganizationOnboarding.labels.d.ts.map +1 -1
  182. package/dist/esm/components/auth/Auth_OrganizationOnboarding.labels.js.map +1 -1
  183. package/dist/esm/components/auth/Auth_PasswordLost.d.ts.map +1 -1
  184. package/dist/esm/components/auth/Auth_PasswordLost.js.map +1 -1
  185. package/dist/esm/components/auth/Auth_PasswordLost.labels.d.ts.map +1 -1
  186. package/dist/esm/components/auth/Auth_PasswordLost.labels.js.map +1 -1
  187. package/dist/esm/components/auth/Auth_Register.d.ts.map +1 -1
  188. package/dist/esm/components/auth/Auth_Register.js +1 -3
  189. package/dist/esm/components/auth/Auth_Register.js.map +1 -1
  190. package/dist/esm/components/auth/Auth_Register.labels.d.ts.map +1 -1
  191. package/dist/esm/components/auth/Auth_Register.labels.js.map +1 -1
  192. package/dist/esm/components/auth/StepUpAuthDialog.d.ts +7 -0
  193. package/dist/esm/components/auth/StepUpAuthDialog.d.ts.map +1 -1
  194. package/dist/esm/components/auth/StepUpAuthDialog.js +13 -7
  195. package/dist/esm/components/auth/StepUpAuthDialog.js.map +1 -1
  196. package/dist/esm/components/auth/admin-config/AppPage_SecuritySettings.d.ts.map +1 -1
  197. package/dist/esm/components/auth/admin-config/AppPage_SecuritySettings.js +32 -33
  198. package/dist/esm/components/auth/admin-config/AppPage_SecuritySettings.js.map +1 -1
  199. package/dist/esm/components/auth/admin-config/AppPage_SecuritySettings.labels.d.ts.map +1 -1
  200. package/dist/esm/components/auth/admin-config/AppPage_SecuritySettings.labels.js +18 -20
  201. package/dist/esm/components/auth/admin-config/AppPage_SecuritySettings.labels.js.map +1 -1
  202. package/dist/esm/components/auth/admin-config/ResourceLayoutPreset_Create_SamlWizard.d.ts.map +1 -1
  203. package/dist/esm/components/auth/admin-config/ResourceLayoutPreset_Create_SamlWizard.js.map +1 -1
  204. package/dist/esm/components/auth/admin-config/ResourceLayoutPreset_Read_SsoSaml.d.ts.map +1 -1
  205. package/dist/esm/components/auth/admin-config/ResourceLayoutPreset_Read_SsoSaml.js.map +1 -1
  206. package/dist/esm/components/auth/admin-config/SsoConnectionSamlReadSection.d.ts.map +1 -1
  207. package/dist/esm/components/auth/admin-config/SsoConnectionSamlReadSection.js.map +1 -1
  208. package/dist/esm/components/auth/enrollment/PasskeyEnrollmentMethod.d.ts.map +1 -1
  209. package/dist/esm/components/auth/enrollment/PasskeyEnrollmentMethod.js.map +1 -1
  210. package/dist/esm/components/auth/enrollment/PhoneEnrollmentMethod.d.ts.map +1 -1
  211. package/dist/esm/components/auth/enrollment/PhoneEnrollmentMethod.js.map +1 -1
  212. package/dist/esm/components/auth/enrollment/TotpEnrollmentMethod.d.ts.map +1 -1
  213. package/dist/esm/components/auth/enrollment/TotpEnrollmentMethod.js.map +1 -1
  214. package/dist/esm/components/auth/enrollment/enrollment-method-components.d.ts.map +1 -1
  215. package/dist/esm/components/auth/enrollment/enrollment-method-components.js.map +1 -1
  216. package/dist/esm/components/auth/methods/EmailOtpAuthMethod.d.ts.map +1 -1
  217. package/dist/esm/components/auth/methods/EmailOtpAuthMethod.js.map +1 -1
  218. package/dist/esm/components/auth/methods/ExternalOAuth2AuthMethod.d.ts.map +1 -1
  219. package/dist/esm/components/auth/methods/ExternalOAuth2AuthMethod.js +2 -3
  220. package/dist/esm/components/auth/methods/ExternalOAuth2AuthMethod.js.map +1 -1
  221. package/dist/esm/components/auth/methods/MagicLinkAuthMethod.d.ts.map +1 -1
  222. package/dist/esm/components/auth/methods/MagicLinkAuthMethod.js.map +1 -1
  223. package/dist/esm/components/auth/methods/OrgOidcAuthMethod.d.ts.map +1 -1
  224. package/dist/esm/components/auth/methods/OrgOidcAuthMethod.js.map +1 -1
  225. package/dist/esm/components/auth/methods/OrgSamlAuthMethod.d.ts.map +1 -1
  226. package/dist/esm/components/auth/methods/OrgSamlAuthMethod.js.map +1 -1
  227. package/dist/esm/components/auth/methods/PasskeyAuthMethod.d.ts.map +1 -1
  228. package/dist/esm/components/auth/methods/PasskeyAuthMethod.js.map +1 -1
  229. package/dist/esm/components/auth/methods/PasswordAuthMethod.d.ts.map +1 -1
  230. package/dist/esm/components/auth/methods/PasswordAuthMethod.js.map +1 -1
  231. package/dist/esm/components/auth/methods/SmsOtpAuthMethod.d.ts.map +1 -1
  232. package/dist/esm/components/auth/methods/SmsOtpAuthMethod.js.map +1 -1
  233. package/dist/esm/components/auth/methods/TotpAuthMethod.d.ts.map +1 -1
  234. package/dist/esm/components/auth/methods/TotpAuthMethod.js.map +1 -1
  235. package/dist/esm/components/auth/methods/auth-method-components.d.ts.map +1 -1
  236. package/dist/esm/components/auth/methods/auth-method-components.js.map +1 -1
  237. package/dist/esm/components/auth/methods/auth-method-presentation.d.ts.map +1 -1
  238. package/dist/esm/components/auth/methods/auth-method-presentation.js.map +1 -1
  239. package/dist/esm/components/auth/pages/AuthPage_AuthCallback.d.ts.map +1 -1
  240. package/dist/esm/components/auth/pages/AuthPage_AuthCallback.js.map +1 -1
  241. package/dist/esm/components/auth/pages/AuthPage_AuthExchange.d.ts.map +1 -1
  242. package/dist/esm/components/auth/pages/AuthPage_AuthExchange.js.map +1 -1
  243. package/dist/esm/components/auth/pages/AuthPage_ConfirmEmail.d.ts.map +1 -1
  244. package/dist/esm/components/auth/pages/AuthPage_ConfirmEmail.js.map +1 -1
  245. package/dist/esm/components/auth/pages/AuthPage_EnrollmentRequired.d.ts.map +1 -1
  246. package/dist/esm/components/auth/pages/AuthPage_EnrollmentRequired.js.map +1 -1
  247. package/dist/esm/components/auth/pages/AuthPage_Invitation.d.ts.map +1 -1
  248. package/dist/esm/components/auth/pages/AuthPage_Invitation.js.map +1 -1
  249. package/dist/esm/components/auth/pages/AuthPage_MagicLinkVerify.d.ts.map +1 -1
  250. package/dist/esm/components/auth/pages/AuthPage_MagicLinkVerify.js.map +1 -1
  251. package/dist/esm/components/auth/pages/AuthPage_Main.d.ts.map +1 -1
  252. package/dist/esm/components/auth/pages/AuthPage_Main.js.map +1 -1
  253. package/dist/esm/components/auth/pages/AuthPage_MfaChallenge.d.ts.map +1 -1
  254. package/dist/esm/components/auth/pages/AuthPage_MfaChallenge.js.map +1 -1
  255. package/dist/esm/components/auth/pages/AuthPage_OAuthConsent.d.ts.map +1 -1
  256. package/dist/esm/components/auth/pages/AuthPage_OAuthConsent.js.map +1 -1
  257. package/dist/esm/components/auth/pages/AuthPage_OAuthLoggedOut.d.ts.map +1 -1
  258. package/dist/esm/components/auth/pages/AuthPage_OAuthLoggedOut.js.map +1 -1
  259. package/dist/esm/components/auth/pages/AuthPage_OAuthLogoutConfirm.d.ts.map +1 -1
  260. package/dist/esm/components/auth/pages/AuthPage_OAuthLogoutConfirm.js.map +1 -1
  261. package/dist/esm/components/auth/pages/AuthPage_OneOffSession.d.ts.map +1 -1
  262. package/dist/esm/components/auth/pages/AuthPage_OneOffSession.js.map +1 -1
  263. package/dist/esm/components/auth/pages/AuthPage_OrganizationOnboarding.d.ts.map +1 -1
  264. package/dist/esm/components/auth/pages/AuthPage_OrganizationOnboarding.js.map +1 -1
  265. package/dist/esm/components/auth/pages/AuthPage_PasswordLost.d.ts.map +1 -1
  266. package/dist/esm/components/auth/pages/AuthPage_PasswordLost.js.map +1 -1
  267. package/dist/esm/components/auth/pages/AuthPage_ReAuthenticationCallback.d.ts.map +1 -1
  268. package/dist/esm/components/auth/pages/AuthPage_ReAuthenticationCallback.js.map +1 -1
  269. package/dist/esm/components/auth/pages/AuthPage_Register.d.ts.map +1 -1
  270. package/dist/esm/components/auth/pages/AuthPage_Register.js.map +1 -1
  271. package/dist/esm/components/auth/utils/AuthMethodChoiceList.d.ts.map +1 -1
  272. package/dist/esm/components/auth/utils/AuthMethodChoiceList.js.map +1 -1
  273. package/dist/esm/components/auth/utils/AuthMethodIcon.d.ts.map +1 -1
  274. package/dist/esm/components/auth/utils/AuthMethodIcon.js.map +1 -1
  275. package/dist/esm/components/auth/utils/AuthSecondaryLink.d.ts.map +1 -1
  276. package/dist/esm/components/auth/utils/AuthSecondaryLink.js.map +1 -1
  277. package/dist/esm/components/auth/utils/AuthSingleFieldFormLayout.d.ts.map +1 -1
  278. package/dist/esm/components/auth/utils/AuthSingleFieldFormLayout.js.map +1 -1
  279. package/dist/esm/components/auth/utils/CredentialUsernameAutofillField.d.ts.map +1 -1
  280. package/dist/esm/components/auth/utils/CredentialUsernameAutofillField.js.map +1 -1
  281. package/dist/esm/components/auth/utils/LabeledDivider.d.ts.map +1 -1
  282. package/dist/esm/components/auth/utils/LabeledDivider.js.map +1 -1
  283. package/dist/esm/components/auth/utils/OAuthProvidersSection.d.ts.map +1 -1
  284. package/dist/esm/components/auth/utils/OAuthProvidersSection.js.map +1 -1
  285. package/dist/esm/components/auth/utils/PasswordStrengthIndicator.d.ts.map +1 -1
  286. package/dist/esm/components/auth/utils/PasswordStrengthIndicator.js.map +1 -1
  287. package/dist/esm/components/auth/utils/oauth-provider-display-label.frontend.utils.d.ts +13 -16
  288. package/dist/esm/components/auth/utils/oauth-provider-display-label.frontend.utils.d.ts.map +1 -1
  289. package/dist/esm/components/auth/utils/oauth-provider-display-label.frontend.utils.js +18 -15
  290. package/dist/esm/components/auth/utils/oauth-provider-display-label.frontend.utils.js.map +1 -1
  291. package/dist/esm/components/auth/utils/resolvePasswordViolationsToLabels.d.ts.map +1 -1
  292. package/dist/esm/components/auth/utils/resolvePasswordViolationsToLabels.js.map +1 -1
  293. package/dist/esm/components/auth/utils/useMfaContinuationNavigation.d.ts.map +1 -1
  294. package/dist/esm/components/auth/utils/useMfaContinuationNavigation.js.map +1 -1
  295. package/dist/esm/components/billing/billing-invoice-history.d.ts.map +1 -1
  296. package/dist/esm/components/billing/billing-invoice-history.js +2 -2
  297. package/dist/esm/components/billing/billing-invoice-history.js.map +1 -1
  298. package/dist/esm/components/billing/billing-plan-change-preview.d.ts.map +1 -1
  299. package/dist/esm/components/billing/billing-plan-change-preview.js.map +1 -1
  300. package/dist/esm/components/billing/billing-portal-link.d.ts.map +1 -1
  301. package/dist/esm/components/billing/billing-portal-link.js +2 -2
  302. package/dist/esm/components/billing/billing-portal-link.js.map +1 -1
  303. package/dist/esm/components/billing/billing-pricing-table.d.ts +33 -1
  304. package/dist/esm/components/billing/billing-pricing-table.d.ts.map +1 -1
  305. package/dist/esm/components/billing/billing-pricing-table.js +34 -5
  306. package/dist/esm/components/billing/billing-pricing-table.js.map +1 -1
  307. package/dist/esm/components/billing/billing-subscription-status.d.ts.map +1 -1
  308. package/dist/esm/components/billing/billing-subscription-status.js +2 -2
  309. package/dist/esm/components/billing/billing-subscription-status.js.map +1 -1
  310. package/dist/esm/components/billing/billing-usage-dashboard.d.ts +2 -0
  311. package/dist/esm/components/billing/billing-usage-dashboard.d.ts.map +1 -1
  312. package/dist/esm/components/billing/billing-usage-dashboard.js +1 -0
  313. package/dist/esm/components/billing/billing-usage-dashboard.js.map +1 -1
  314. package/dist/esm/components/compliance/GovernedDocumentAcceptanceControl.d.ts.map +1 -1
  315. package/dist/esm/components/compliance/GovernedDocumentAcceptanceControl.js.map +1 -1
  316. package/dist/esm/components/data-display/AutomaticDisplayer.d.ts.map +1 -1
  317. package/dist/esm/components/data-display/AutomaticDisplayer.js.map +1 -1
  318. package/dist/esm/components/data-display/DisplayContextKindContext.d.ts.map +1 -1
  319. package/dist/esm/components/data-display/DisplayContextKindContext.js.map +1 -1
  320. package/dist/esm/components/data-display/DisplayField.d.ts.map +1 -1
  321. package/dist/esm/components/data-display/DisplayField.js +15 -1
  322. package/dist/esm/components/data-display/DisplayField.js.map +1 -1
  323. package/dist/esm/components/data-display/DisplayFieldArray.d.ts.map +1 -1
  324. package/dist/esm/components/data-display/DisplayFieldArray.js +11 -0
  325. package/dist/esm/components/data-display/DisplayFieldArray.js.map +1 -1
  326. package/dist/esm/components/data-display/DisplayFieldEditable.d.ts.map +1 -1
  327. package/dist/esm/components/data-display/DisplayFieldEditable.js +2 -2
  328. package/dist/esm/components/data-display/DisplayFieldEditable.js.map +1 -1
  329. package/dist/esm/components/data-display/DisplayFieldEditableArray.d.ts +12 -2
  330. package/dist/esm/components/data-display/DisplayFieldEditableArray.d.ts.map +1 -1
  331. package/dist/esm/components/data-display/DisplayFieldEditableArray.js +3 -2
  332. package/dist/esm/components/data-display/DisplayFieldEditableArray.js.map +1 -1
  333. package/dist/esm/components/data-display/DisplayFieldReadOnly.d.ts.map +1 -1
  334. package/dist/esm/components/data-display/DisplayFieldReadOnly.js +2 -2
  335. package/dist/esm/components/data-display/DisplayFieldReadOnly.js.map +1 -1
  336. package/dist/esm/components/data-display/DisplayFieldReadOnlyArraySection.d.ts.map +1 -1
  337. package/dist/esm/components/data-display/DisplayFieldReadOnlyArraySection.js +8 -2
  338. package/dist/esm/components/data-display/DisplayFieldReadOnlyArraySection.js.map +1 -1
  339. package/dist/esm/components/data-display/DisplayTemplateContext.d.ts.map +1 -1
  340. package/dist/esm/components/data-display/DisplayTemplateContext.js.map +1 -1
  341. package/dist/esm/components/data-display/DisplayValueDispatcher.d.ts.map +1 -1
  342. package/dist/esm/components/data-display/DisplayValueDispatcher.js +18 -4
  343. package/dist/esm/components/data-display/DisplayValueDispatcher.js.map +1 -1
  344. package/dist/esm/components/data-display/ResourceAutomaticDisplayer.d.ts.map +1 -1
  345. package/dist/esm/components/data-display/ResourceAutomaticDisplayer.js +61 -3
  346. package/dist/esm/components/data-display/ResourceAutomaticDisplayer.js.map +1 -1
  347. package/dist/esm/components/data-display/ResourceSummaryDisplayer.d.ts +7 -5
  348. package/dist/esm/components/data-display/ResourceSummaryDisplayer.d.ts.map +1 -1
  349. package/dist/esm/components/data-display/ResourceSummaryDisplayer.js.map +1 -1
  350. package/dist/esm/components/data-display/SummaryContext.d.ts.map +1 -1
  351. package/dist/esm/components/data-display/SummaryContext.js.map +1 -1
  352. package/dist/esm/components/data-display/automatic-displayer.utils.d.ts.map +1 -1
  353. package/dist/esm/components/data-display/automatic-displayer.utils.js.map +1 -1
  354. package/dist/esm/components/data-display/avatar.d.ts.map +1 -1
  355. package/dist/esm/components/data-display/avatar.js.map +1 -1
  356. package/dist/esm/components/data-display/badge-tone.d.ts.map +1 -1
  357. package/dist/esm/components/data-display/badge-tone.js.map +1 -1
  358. package/dist/esm/components/data-display/badge.d.ts.map +1 -1
  359. package/dist/esm/components/data-display/badge.js.map +1 -1
  360. package/dist/esm/components/data-display/chart-echarts.d.ts.map +1 -1
  361. package/dist/esm/components/data-display/chart-echarts.js.map +1 -1
  362. package/dist/esm/components/data-display/chromes/DisplayChromeContext.d.ts.map +1 -1
  363. package/dist/esm/components/data-display/chromes/DisplayChromeContext.js.map +1 -1
  364. package/dist/esm/components/data-display/chromes/DisplayFieldChrome.d.ts +11 -1
  365. package/dist/esm/components/data-display/chromes/DisplayFieldChrome.d.ts.map +1 -1
  366. package/dist/esm/components/data-display/chromes/DisplayFieldChrome.js +36 -11
  367. package/dist/esm/components/data-display/chromes/DisplayFieldChrome.js.map +1 -1
  368. package/dist/esm/components/data-display/description-list.d.ts.map +1 -1
  369. package/dist/esm/components/data-display/description-list.js.map +1 -1
  370. package/dist/esm/components/data-display/display-field-resolution.utils.d.ts.map +1 -1
  371. package/dist/esm/components/data-display/display-field-resolution.utils.js.map +1 -1
  372. package/dist/esm/components/data-display/display-field-resolved-props.d.ts +6 -0
  373. package/dist/esm/components/data-display/display-field-resolved-props.d.ts.map +1 -1
  374. package/dist/esm/components/data-display/display-field-resolved-props.js.map +1 -1
  375. package/dist/esm/components/data-display/display-resource-link-trail.d.ts.map +1 -1
  376. package/dist/esm/components/data-display/display-resource-link-trail.js.map +1 -1
  377. package/dist/esm/components/data-display/duration.d.ts.map +1 -1
  378. package/dist/esm/components/data-display/duration.js.map +1 -1
  379. package/dist/esm/components/data-display/external-data-provenance/DisplayFieldProvenanceNote.d.ts +23 -0
  380. package/dist/esm/components/data-display/external-data-provenance/DisplayFieldProvenanceNote.d.ts.map +1 -0
  381. package/dist/esm/components/data-display/external-data-provenance/DisplayFieldProvenanceNote.js +35 -0
  382. package/dist/esm/components/data-display/external-data-provenance/DisplayFieldProvenanceNote.js.map +1 -0
  383. package/dist/esm/components/data-display/external-data-provenance/external-data-provenance.frontend.d.ts +47 -0
  384. package/dist/esm/components/data-display/external-data-provenance/external-data-provenance.frontend.d.ts.map +1 -0
  385. package/dist/esm/components/data-display/external-data-provenance/external-data-provenance.frontend.js +124 -0
  386. package/dist/esm/components/data-display/external-data-provenance/external-data-provenance.frontend.js.map +1 -0
  387. package/dist/esm/components/data-display/external-data-provenance/useExternalDataFieldProvenance.d.ts +8 -0
  388. package/dist/esm/components/data-display/external-data-provenance/useExternalDataFieldProvenance.d.ts.map +1 -0
  389. package/dist/esm/components/data-display/external-data-provenance/useExternalDataFieldProvenance.js +46 -0
  390. package/dist/esm/components/data-display/external-data-provenance/useExternalDataFieldProvenance.js.map +1 -0
  391. package/dist/esm/components/data-display/formatters/display-field-address.d.ts.map +1 -1
  392. package/dist/esm/components/data-display/formatters/display-field-address.js.map +1 -1
  393. package/dist/esm/components/data-display/formatters/display-field-bigdecimal.d.ts.map +1 -1
  394. package/dist/esm/components/data-display/formatters/display-field-bigdecimal.js.map +1 -1
  395. package/dist/esm/components/data-display/formatters/display-field-boolean.d.ts.map +1 -1
  396. package/dist/esm/components/data-display/formatters/display-field-boolean.js.map +1 -1
  397. package/dist/esm/components/data-display/formatters/display-field-code.d.ts.map +1 -1
  398. package/dist/esm/components/data-display/formatters/display-field-code.js.map +1 -1
  399. package/dist/esm/components/data-display/formatters/display-field-date.d.ts.map +1 -1
  400. package/dist/esm/components/data-display/formatters/display-field-date.js.map +1 -1
  401. package/dist/esm/components/data-display/formatters/display-field-datetime.d.ts.map +1 -1
  402. package/dist/esm/components/data-display/formatters/display-field-datetime.js.map +1 -1
  403. package/dist/esm/components/data-display/formatters/display-field-duration.d.ts.map +1 -1
  404. package/dist/esm/components/data-display/formatters/display-field-duration.js.map +1 -1
  405. package/dist/esm/components/data-display/formatters/display-field-enum.d.ts.map +1 -1
  406. package/dist/esm/components/data-display/formatters/display-field-enum.js.map +1 -1
  407. package/dist/esm/components/data-display/formatters/display-field-file-audio.d.ts.map +1 -1
  408. package/dist/esm/components/data-display/formatters/display-field-file-audio.js.map +1 -1
  409. package/dist/esm/components/data-display/formatters/display-field-file-document.d.ts.map +1 -1
  410. package/dist/esm/components/data-display/formatters/display-field-file-document.js.map +1 -1
  411. package/dist/esm/components/data-display/formatters/display-field-file-gallery.d.ts.map +1 -1
  412. package/dist/esm/components/data-display/formatters/display-field-file-gallery.js.map +1 -1
  413. package/dist/esm/components/data-display/formatters/display-field-file-image.d.ts.map +1 -1
  414. package/dist/esm/components/data-display/formatters/display-field-file-image.js.map +1 -1
  415. package/dist/esm/components/data-display/formatters/display-field-file-video.d.ts.map +1 -1
  416. package/dist/esm/components/data-display/formatters/display-field-file-video.js.map +1 -1
  417. package/dist/esm/components/data-display/formatters/display-field-file.d.ts.map +1 -1
  418. package/dist/esm/components/data-display/formatters/display-field-file.js.map +1 -1
  419. package/dist/esm/components/data-display/formatters/display-field-json.d.ts.map +1 -1
  420. package/dist/esm/components/data-display/formatters/display-field-json.js.map +1 -1
  421. package/dist/esm/components/data-display/formatters/display-field-money.d.ts.map +1 -1
  422. package/dist/esm/components/data-display/formatters/display-field-money.js.map +1 -1
  423. package/dist/esm/components/data-display/formatters/display-field-number.d.ts.map +1 -1
  424. package/dist/esm/components/data-display/formatters/display-field-number.js.map +1 -1
  425. package/dist/esm/components/data-display/formatters/display-field-phone.d.ts.map +1 -1
  426. package/dist/esm/components/data-display/formatters/display-field-phone.js.map +1 -1
  427. package/dist/esm/components/data-display/formatters/display-field-range-bigdecimal.d.ts.map +1 -1
  428. package/dist/esm/components/data-display/formatters/display-field-range-bigdecimal.js.map +1 -1
  429. package/dist/esm/components/data-display/formatters/display-field-range-date.d.ts.map +1 -1
  430. package/dist/esm/components/data-display/formatters/display-field-range-date.js.map +1 -1
  431. package/dist/esm/components/data-display/formatters/display-field-range-datetime.d.ts.map +1 -1
  432. package/dist/esm/components/data-display/formatters/display-field-range-datetime.js.map +1 -1
  433. package/dist/esm/components/data-display/formatters/display-field-range-money.d.ts.map +1 -1
  434. package/dist/esm/components/data-display/formatters/display-field-range-money.js.map +1 -1
  435. package/dist/esm/components/data-display/formatters/display-field-range-number.d.ts.map +1 -1
  436. package/dist/esm/components/data-display/formatters/display-field-range-number.js.map +1 -1
  437. package/dist/esm/components/data-display/formatters/display-field-range-time.d.ts.map +1 -1
  438. package/dist/esm/components/data-display/formatters/display-field-range-time.js.map +1 -1
  439. package/dist/esm/components/data-display/formatters/display-field-string.d.ts.map +1 -1
  440. package/dist/esm/components/data-display/formatters/display-field-string.js.map +1 -1
  441. package/dist/esm/components/data-display/formatters/display-field-time.d.ts.map +1 -1
  442. package/dist/esm/components/data-display/formatters/display-field-time.js.map +1 -1
  443. package/dist/esm/components/data-display/identifier.d.ts.map +1 -1
  444. package/dist/esm/components/data-display/identifier.js.map +1 -1
  445. package/dist/esm/components/data-display/kbd.d.ts.map +1 -1
  446. package/dist/esm/components/data-display/kbd.js.map +1 -1
  447. package/dist/esm/components/data-display/notification-indicator.d.ts.map +1 -1
  448. package/dist/esm/components/data-display/notification-indicator.js.map +1 -1
  449. package/dist/esm/components/data-display/timeline.d.ts.map +1 -1
  450. package/dist/esm/components/data-display/timeline.js.map +1 -1
  451. package/dist/esm/components/data-display/useFileActivation.d.ts.map +1 -1
  452. package/dist/esm/components/data-display/useFileActivation.js.map +1 -1
  453. package/dist/esm/components/feedback/celebration-overlay.d.ts.map +1 -1
  454. package/dist/esm/components/feedback/celebration-overlay.js.map +1 -1
  455. package/dist/esm/components/feedback/danger-zone.d.ts.map +1 -1
  456. package/dist/esm/components/feedback/danger-zone.js.map +1 -1
  457. package/dist/esm/components/feedback/empty-display-policy.utils.d.ts.map +1 -1
  458. package/dist/esm/components/feedback/empty-display-policy.utils.js.map +1 -1
  459. package/dist/esm/components/feedback/empty-state.d.ts.map +1 -1
  460. package/dist/esm/components/feedback/empty-state.js.map +1 -1
  461. package/dist/esm/components/feedback/error-display.d.ts.map +1 -1
  462. package/dist/esm/components/feedback/error-display.js.map +1 -1
  463. package/dist/esm/components/feedback/features/feature-limit-indicator.d.ts.map +1 -1
  464. package/dist/esm/components/feedback/features/feature-limit-indicator.js.map +1 -1
  465. package/dist/esm/components/feedback/features/feature-lock-badge.d.ts.map +1 -1
  466. package/dist/esm/components/feedback/features/feature-lock-badge.js.map +1 -1
  467. package/dist/esm/components/feedback/features/feature-unavailable-dialog.d.ts.map +1 -1
  468. package/dist/esm/components/feedback/features/feature-unavailable-dialog.js.map +1 -1
  469. package/dist/esm/components/feedback/features/feature-unavailable-prompt.d.ts.map +1 -1
  470. package/dist/esm/components/feedback/features/feature-unavailable-prompt.js.map +1 -1
  471. package/dist/esm/components/feedback/lazy-door-error-boundary.d.ts.map +1 -1
  472. package/dist/esm/components/feedback/lazy-door-error-boundary.js.map +1 -1
  473. package/dist/esm/components/feedback/loading-overlay.d.ts.map +1 -1
  474. package/dist/esm/components/feedback/loading-overlay.js.map +1 -1
  475. package/dist/esm/components/feedback/loading-spinner.d.ts.map +1 -1
  476. package/dist/esm/components/feedback/loading-spinner.js.map +1 -1
  477. package/dist/esm/components/feedback/notification-center.d.ts.map +1 -1
  478. package/dist/esm/components/feedback/notification-center.js.map +1 -1
  479. package/dist/esm/components/feedback/operations-confirm-critical.d.ts.map +1 -1
  480. package/dist/esm/components/feedback/operations-confirm-critical.js.map +1 -1
  481. package/dist/esm/components/feedback/progress.d.ts.map +1 -1
  482. package/dist/esm/components/feedback/progress.js.map +1 -1
  483. package/dist/esm/components/feedback/resource-empty-state.d.ts +21 -8
  484. package/dist/esm/components/feedback/resource-empty-state.d.ts.map +1 -1
  485. package/dist/esm/components/feedback/resource-empty-state.js +56 -26
  486. package/dist/esm/components/feedback/resource-empty-state.js.map +1 -1
  487. package/dist/esm/components/feedback/skeleton-text.d.ts.map +1 -1
  488. package/dist/esm/components/feedback/skeleton-text.js.map +1 -1
  489. package/dist/esm/components/feedback/skeleton.d.ts.map +1 -1
  490. package/dist/esm/components/feedback/skeleton.js.map +1 -1
  491. package/dist/esm/components/feedback/toast.d.ts.map +1 -1
  492. package/dist/esm/components/feedback/toast.js.map +1 -1
  493. package/dist/esm/components/files/Files_UploadGrantDrop.d.ts.map +1 -1
  494. package/dist/esm/components/files/Files_UploadGrantDrop.js.map +1 -1
  495. package/dist/esm/components/files/Files_UploadGrantDrop.labels.d.ts.map +1 -1
  496. package/dist/esm/components/files/Files_UploadGrantDrop.labels.js.map +1 -1
  497. package/dist/esm/components/files/pages/FilesPage_UploadGrant.d.ts.map +1 -1
  498. package/dist/esm/components/files/pages/FilesPage_UploadGrant.js.map +1 -1
  499. package/dist/esm/components/flows-actors/actor.d.ts.map +1 -1
  500. package/dist/esm/components/flows-actors/actor.js.map +1 -1
  501. package/dist/esm/components/flows-actors/actor.labels.d.ts.map +1 -1
  502. package/dist/esm/components/flows-actors/actor.labels.js.map +1 -1
  503. package/dist/esm/components/flows-actors/agent-config.d.ts.map +1 -1
  504. package/dist/esm/components/flows-actors/agent-config.js.map +1 -1
  505. package/dist/esm/components/flows-actors/agent-config.labels.d.ts.map +1 -1
  506. package/dist/esm/components/flows-actors/agent-config.labels.js.map +1 -1
  507. package/dist/esm/components/flows-actors/approval-modification-refusal.utils.d.ts.map +1 -1
  508. package/dist/esm/components/flows-actors/approval-modification-refusal.utils.js.map +1 -1
  509. package/dist/esm/components/flows-actors/approval.d.ts +29 -7
  510. package/dist/esm/components/flows-actors/approval.d.ts.map +1 -1
  511. package/dist/esm/components/flows-actors/approval.js +231 -101
  512. package/dist/esm/components/flows-actors/approval.js.map +1 -1
  513. package/dist/esm/components/flows-actors/approval.labels.d.ts.map +1 -1
  514. package/dist/esm/components/flows-actors/approval.labels.js +57 -0
  515. package/dist/esm/components/flows-actors/approval.labels.js.map +1 -1
  516. package/dist/esm/components/flows-actors/artifact-browser.d.ts.map +1 -1
  517. package/dist/esm/components/flows-actors/artifact-browser.js.map +1 -1
  518. package/dist/esm/components/flows-actors/artifact-browser.labels.d.ts.map +1 -1
  519. package/dist/esm/components/flows-actors/artifact-browser.labels.js.map +1 -1
  520. package/dist/esm/components/flows-actors/execution-plan.d.ts.map +1 -1
  521. package/dist/esm/components/flows-actors/execution-plan.js.map +1 -1
  522. package/dist/esm/components/flows-actors/execution-plan.labels.d.ts.map +1 -1
  523. package/dist/esm/components/flows-actors/execution-plan.labels.js.map +1 -1
  524. package/dist/esm/components/flows-actors/flow-execution.d.ts.map +1 -1
  525. package/dist/esm/components/flows-actors/flow-execution.js.map +1 -1
  526. package/dist/esm/components/flows-actors/flow-execution.labels.d.ts.map +1 -1
  527. package/dist/esm/components/flows-actors/flow-execution.labels.js.map +1 -1
  528. package/dist/esm/components/flows-actors/flow-node-badges.d.ts.map +1 -1
  529. package/dist/esm/components/flows-actors/flow-node-badges.js.map +1 -1
  530. package/dist/esm/components/flows-actors/flow-node.d.ts.map +1 -1
  531. package/dist/esm/components/flows-actors/flow-node.js.map +1 -1
  532. package/dist/esm/components/flows-actors/flow-node.labels.d.ts.map +1 -1
  533. package/dist/esm/components/flows-actors/flow-node.labels.js.map +1 -1
  534. package/dist/esm/components/flows-actors/flows-actors-graph-runtime.d.ts.map +1 -1
  535. package/dist/esm/components/flows-actors/flows-actors-graph-runtime.js.map +1 -1
  536. package/dist/esm/components/flows-actors/flows-actors-graph.lazy.d.ts.map +1 -1
  537. package/dist/esm/components/flows-actors/flows-actors-graph.lazy.js.map +1 -1
  538. package/dist/esm/components/flows-actors/flows-actors-ui.utils.d.ts.map +1 -1
  539. package/dist/esm/components/flows-actors/flows-actors-ui.utils.js.map +1 -1
  540. package/dist/esm/components/flows-actors/system-catalog.d.ts.map +1 -1
  541. package/dist/esm/components/flows-actors/system-catalog.js +4 -4
  542. package/dist/esm/components/flows-actors/system-catalog.js.map +1 -1
  543. package/dist/esm/components/flows-actors/system-catalog.labels.d.ts.map +1 -1
  544. package/dist/esm/components/flows-actors/system-catalog.labels.js +0 -5
  545. package/dist/esm/components/flows-actors/system-catalog.labels.js.map +1 -1
  546. package/dist/esm/components/flows-actors/task-detail.d.ts.map +1 -1
  547. package/dist/esm/components/flows-actors/task-detail.js.map +1 -1
  548. package/dist/esm/components/flows-actors/task-detail.labels.d.ts.map +1 -1
  549. package/dist/esm/components/flows-actors/task-detail.labels.js.map +1 -1
  550. package/dist/esm/components/flows-actors/task-memory.d.ts.map +1 -1
  551. package/dist/esm/components/flows-actors/task-memory.js.map +1 -1
  552. package/dist/esm/components/flows-actors/task-memory.labels.d.ts.map +1 -1
  553. package/dist/esm/components/flows-actors/task-memory.labels.js.map +1 -1
  554. package/dist/esm/components/form/Form.d.ts +2 -2
  555. package/dist/esm/components/form/Form.d.ts.map +1 -1
  556. package/dist/esm/components/form/Form.js +2 -2
  557. package/dist/esm/components/form/Form.js.map +1 -1
  558. package/dist/esm/components/form/automated/AutomatedArrayField.d.ts +28 -3
  559. package/dist/esm/components/form/automated/AutomatedArrayField.d.ts.map +1 -1
  560. package/dist/esm/components/form/automated/AutomatedArrayField.js +43 -14
  561. package/dist/esm/components/form/automated/AutomatedArrayField.js.map +1 -1
  562. package/dist/esm/components/form/automated/AutomatedForm.d.ts.map +1 -1
  563. package/dist/esm/components/form/automated/AutomatedForm.js.map +1 -1
  564. package/dist/esm/components/form/automated/AutosaveContext.d.ts.map +1 -1
  565. package/dist/esm/components/form/automated/AutosaveContext.js.map +1 -1
  566. package/dist/esm/components/form/automated/FormField.d.ts +3 -0
  567. package/dist/esm/components/form/automated/FormField.d.ts.map +1 -1
  568. package/dist/esm/components/form/automated/FormField.js +60 -21
  569. package/dist/esm/components/form/automated/FormField.js.map +1 -1
  570. package/dist/esm/components/form/automated/FormFieldArray.d.ts +6 -3
  571. package/dist/esm/components/form/automated/FormFieldArray.d.ts.map +1 -1
  572. package/dist/esm/components/form/automated/FormFieldArray.js +3 -2
  573. package/dist/esm/components/form/automated/FormFieldArray.js.map +1 -1
  574. package/dist/esm/components/form/automated/FormFieldComposite.d.ts.map +1 -1
  575. package/dist/esm/components/form/automated/FormFieldComposite.js.map +1 -1
  576. package/dist/esm/components/form/automated/FormFieldRecord.d.ts.map +1 -1
  577. package/dist/esm/components/form/automated/FormFieldRecord.js.map +1 -1
  578. package/dist/esm/components/form/automated/FormTemplateContext.d.ts.map +1 -1
  579. package/dist/esm/components/form/automated/FormTemplateContext.js.map +1 -1
  580. package/dist/esm/components/form/automated/GeneratedAssociationRelationshipField.d.ts.map +1 -1
  581. package/dist/esm/components/form/automated/GeneratedAssociationRelationshipField.js.map +1 -1
  582. package/dist/esm/components/form/automated/GeneratedReferenceRelationshipField.d.ts.map +1 -1
  583. package/dist/esm/components/form/automated/GeneratedReferenceRelationshipField.js.map +1 -1
  584. package/dist/esm/components/form/automated/ResourceAutomatedForm.d.ts +5 -4
  585. package/dist/esm/components/form/automated/ResourceAutomatedForm.d.ts.map +1 -1
  586. package/dist/esm/components/form/automated/ResourceAutomatedForm.js +148 -55
  587. package/dist/esm/components/form/automated/ResourceAutomatedForm.js.map +1 -1
  588. package/dist/esm/components/form/automated/ResourceFormActionsContext.d.ts +30 -0
  589. package/dist/esm/components/form/automated/ResourceFormActionsContext.d.ts.map +1 -1
  590. package/dist/esm/components/form/automated/ResourceFormActionsContext.js +30 -1
  591. package/dist/esm/components/form/automated/ResourceFormActionsContext.js.map +1 -1
  592. package/dist/esm/components/form/automated/TemplatePlacedFieldsContext.d.ts +79 -0
  593. package/dist/esm/components/form/automated/TemplatePlacedFieldsContext.d.ts.map +1 -0
  594. package/dist/esm/components/form/automated/TemplatePlacedFieldsContext.js +203 -0
  595. package/dist/esm/components/form/automated/TemplatePlacedFieldsContext.js.map +1 -0
  596. package/dist/esm/components/form/automated/automated-form-submit.utils.d.ts +12 -0
  597. package/dist/esm/components/form/automated/automated-form-submit.utils.d.ts.map +1 -1
  598. package/dist/esm/components/form/automated/automated-form-submit.utils.js +11 -0
  599. package/dist/esm/components/form/automated/automated-form-submit.utils.js.map +1 -1
  600. package/dist/esm/components/form/automated/autosave-derivation.frontend.utils.d.ts.map +1 -1
  601. package/dist/esm/components/form/automated/autosave-derivation.frontend.utils.js.map +1 -1
  602. package/dist/esm/components/form/automated/autosave-indicator.d.ts.map +1 -1
  603. package/dist/esm/components/form/automated/autosave-indicator.js.map +1 -1
  604. package/dist/esm/components/form/automated/autosave-indicator.utils.d.ts.map +1 -1
  605. package/dist/esm/components/form/automated/autosave-indicator.utils.js.map +1 -1
  606. package/dist/esm/components/form/automated/create-form-default-values.utils.d.ts.map +1 -1
  607. package/dist/esm/components/form/automated/create-form-default-values.utils.js.map +1 -1
  608. package/dist/esm/components/form/automated/field-clearing-rule.frontend.utils.d.ts.map +1 -1
  609. package/dist/esm/components/form/automated/field-clearing-rule.frontend.utils.js.map +1 -1
  610. package/dist/esm/components/form/automated/form-field-autocomplete.frontend.utils.d.ts.map +1 -1
  611. package/dist/esm/components/form/automated/form-field-autocomplete.frontend.utils.js.map +1 -1
  612. package/dist/esm/components/form/automated/generated-relationship-field.helpers.d.ts.map +1 -1
  613. package/dist/esm/components/form/automated/generated-relationship-field.helpers.js.map +1 -1
  614. package/dist/esm/components/form/automated/generated-relationship-field.hooks.d.ts.map +1 -1
  615. package/dist/esm/components/form/automated/generated-relationship-field.hooks.js.map +1 -1
  616. package/dist/esm/components/form/automated/generated-relationship-field.shared.d.ts.map +1 -1
  617. package/dist/esm/components/form/automated/generated-relationship-field.shared.js.map +1 -1
  618. package/dist/esm/components/form/automated/generated-relationship-field.utils.d.ts.map +1 -1
  619. package/dist/esm/components/form/automated/generated-relationship-field.utils.js.map +1 -1
  620. package/dist/esm/components/form/automated/useArrayItemAutosaveField.d.ts.map +1 -1
  621. package/dist/esm/components/form/automated/useArrayItemAutosaveField.js.map +1 -1
  622. package/dist/esm/components/form/chromes/FormChromeContext.d.ts.map +1 -1
  623. package/dist/esm/components/form/chromes/FormChromeContext.js.map +1 -1
  624. package/dist/esm/components/form/chromes/FormFieldChrome.d.ts.map +1 -1
  625. package/dist/esm/components/form/chromes/FormFieldChrome.js +2 -2
  626. package/dist/esm/components/form/chromes/FormFieldChrome.js.map +1 -1
  627. package/dist/esm/components/form/chromes/field.d.ts.map +1 -1
  628. package/dist/esm/components/form/chromes/field.js.map +1 -1
  629. package/dist/esm/components/form/chromes/form-primitives.d.ts.map +1 -1
  630. package/dist/esm/components/form/chromes/form-primitives.js.map +1 -1
  631. package/dist/esm/components/form/combobox.d.ts +7 -0
  632. package/dist/esm/components/form/combobox.d.ts.map +1 -1
  633. package/dist/esm/components/form/combobox.js.map +1 -1
  634. package/dist/esm/components/form/controls/boolean/checkbox.d.ts.map +1 -1
  635. package/dist/esm/components/form/controls/boolean/checkbox.js.map +1 -1
  636. package/dist/esm/components/form/controls/boolean/switch.d.ts.map +1 -1
  637. package/dist/esm/components/form/controls/boolean/switch.js.map +1 -1
  638. package/dist/esm/components/form/controls/boolean/toggle-group-boolean.d.ts.map +1 -1
  639. package/dist/esm/components/form/controls/boolean/toggle-group-boolean.js.map +1 -1
  640. package/dist/esm/components/form/controls/boolean/toggle.d.ts.map +1 -1
  641. package/dist/esm/components/form/controls/boolean/toggle.js.map +1 -1
  642. package/dist/esm/components/form/controls/date-time/calendar.d.ts.map +1 -1
  643. package/dist/esm/components/form/controls/date-time/calendar.js.map +1 -1
  644. package/dist/esm/components/form/controls/date-time/date-range-picker.d.ts.map +1 -1
  645. package/dist/esm/components/form/controls/date-time/date-range-picker.js.map +1 -1
  646. package/dist/esm/components/form/controls/date-time/datepicker.d.ts.map +1 -1
  647. package/dist/esm/components/form/controls/date-time/datepicker.js.map +1 -1
  648. package/dist/esm/components/form/controls/date-time/datetime-picker.d.ts.map +1 -1
  649. package/dist/esm/components/form/controls/date-time/datetime-picker.js.map +1 -1
  650. package/dist/esm/components/form/controls/date-time/datetime-range-picker.d.ts.map +1 -1
  651. package/dist/esm/components/form/controls/date-time/datetime-range-picker.js.map +1 -1
  652. package/dist/esm/components/form/controls/date-time/time-picker.d.ts.map +1 -1
  653. package/dist/esm/components/form/controls/date-time/time-picker.js.map +1 -1
  654. package/dist/esm/components/form/controls/date-time/time-range-picker.d.ts.map +1 -1
  655. package/dist/esm/components/form/controls/date-time/time-range-picker.js.map +1 -1
  656. package/dist/esm/components/form/controls/enum/radio.d.ts.map +1 -1
  657. package/dist/esm/components/form/controls/enum/radio.js.map +1 -1
  658. package/dist/esm/components/form/controls/enum/select-multiple.d.ts.map +1 -1
  659. package/dist/esm/components/form/controls/enum/select-multiple.js.map +1 -1
  660. package/dist/esm/components/form/controls/enum/select.d.ts.map +1 -1
  661. package/dist/esm/components/form/controls/enum/select.js.map +1 -1
  662. package/dist/esm/components/form/controls/enum/toggle-group.d.ts.map +1 -1
  663. package/dist/esm/components/form/controls/enum/toggle-group.js.map +1 -1
  664. package/dist/esm/components/form/controls/file/file-readiness.frontend.utils.d.ts.map +1 -1
  665. package/dist/esm/components/form/controls/file/file-readiness.frontend.utils.js.map +1 -1
  666. package/dist/esm/components/form/controls/file/file-upload.d.ts.map +1 -1
  667. package/dist/esm/components/form/controls/file/file-upload.js.map +1 -1
  668. package/dist/esm/components/form/controls/file/image-crop.d.ts.map +1 -1
  669. package/dist/esm/components/form/controls/file/image-crop.frontend.utils.d.ts.map +1 -1
  670. package/dist/esm/components/form/controls/file/image-crop.frontend.utils.js.map +1 -1
  671. package/dist/esm/components/form/controls/file/image-crop.js.map +1 -1
  672. package/dist/esm/components/form/controls/form-field-checkbox-group.d.ts.map +1 -1
  673. package/dist/esm/components/form/controls/form-field-checkbox-group.js +13 -0
  674. package/dist/esm/components/form/controls/form-field-checkbox-group.js.map +1 -1
  675. package/dist/esm/components/form/controls/input-group.d.ts.map +1 -1
  676. package/dist/esm/components/form/controls/input-group.js.map +1 -1
  677. package/dist/esm/components/form/controls/input.d.ts.map +1 -1
  678. package/dist/esm/components/form/controls/input.js.map +1 -1
  679. package/dist/esm/components/form/controls/number/slider.d.ts +1 -1
  680. package/dist/esm/components/form/controls/number/slider.d.ts.map +1 -1
  681. package/dist/esm/components/form/controls/number/slider.js.map +1 -1
  682. package/dist/esm/components/form/controls/string/color-input.d.ts.map +1 -1
  683. package/dist/esm/components/form/controls/string/color-input.js.map +1 -1
  684. package/dist/esm/components/form/controls/string/inline-edit-text.d.ts.map +1 -1
  685. package/dist/esm/components/form/controls/string/inline-edit-text.js.map +1 -1
  686. package/dist/esm/components/form/controls/string/input-otp.d.ts.map +1 -1
  687. package/dist/esm/components/form/controls/string/input-otp.js.map +1 -1
  688. package/dist/esm/components/form/controls/string/markdown-editor.d.ts.map +1 -1
  689. package/dist/esm/components/form/controls/string/markdown-editor.js.map +1 -1
  690. package/dist/esm/components/form/controls/string/markdown-editor.labels.d.ts.map +1 -1
  691. package/dist/esm/components/form/controls/string/markdown-editor.labels.js.map +1 -1
  692. package/dist/esm/components/form/controls/string/password-input.d.ts.map +1 -1
  693. package/dist/esm/components/form/controls/string/password-input.js.map +1 -1
  694. package/dist/esm/components/form/controls/string/textarea.d.ts.map +1 -1
  695. package/dist/esm/components/form/controls/string/textarea.js.map +1 -1
  696. package/dist/esm/components/form/feedback/RemoteChangeNotification.d.ts.map +1 -1
  697. package/dist/esm/components/form/feedback/RemoteChangeNotification.js.map +1 -1
  698. package/dist/esm/components/form/fields/accepted-file-kinds-description.frontend.utils.d.ts.map +1 -1
  699. package/dist/esm/components/form/fields/accepted-file-kinds-description.frontend.utils.js.map +1 -1
  700. package/dist/esm/components/form/fields/form-field-address.d.ts +58 -0
  701. package/dist/esm/components/form/fields/form-field-address.d.ts.map +1 -1
  702. package/dist/esm/components/form/fields/form-field-address.js +34 -6
  703. package/dist/esm/components/form/fields/form-field-address.js.map +1 -1
  704. package/dist/esm/components/form/fields/form-field-address.labels.d.ts.map +1 -1
  705. package/dist/esm/components/form/fields/form-field-address.labels.js +60 -1
  706. package/dist/esm/components/form/fields/form-field-address.labels.js.map +1 -1
  707. package/dist/esm/components/form/fields/form-field-bigdecimal.d.ts.map +1 -1
  708. package/dist/esm/components/form/fields/form-field-bigdecimal.js.map +1 -1
  709. package/dist/esm/components/form/fields/form-field-bigdecimal.labels.d.ts.map +1 -1
  710. package/dist/esm/components/form/fields/form-field-bigdecimal.labels.js.map +1 -1
  711. package/dist/esm/components/form/fields/form-field-boolean.d.ts.map +1 -1
  712. package/dist/esm/components/form/fields/form-field-boolean.js.map +1 -1
  713. package/dist/esm/components/form/fields/form-field-boolean.labels.d.ts.map +1 -1
  714. package/dist/esm/components/form/fields/form-field-boolean.labels.js.map +1 -1
  715. package/dist/esm/components/form/fields/form-field-code.d.ts.map +1 -1
  716. package/dist/esm/components/form/fields/form-field-code.js.map +1 -1
  717. package/dist/esm/components/form/fields/form-field-code.labels.d.ts.map +1 -1
  718. package/dist/esm/components/form/fields/form-field-code.labels.js.map +1 -1
  719. package/dist/esm/components/form/fields/form-field-date.d.ts.map +1 -1
  720. package/dist/esm/components/form/fields/form-field-date.js.map +1 -1
  721. package/dist/esm/components/form/fields/form-field-date.labels.d.ts.map +1 -1
  722. package/dist/esm/components/form/fields/form-field-date.labels.js.map +1 -1
  723. package/dist/esm/components/form/fields/form-field-datetime.d.ts.map +1 -1
  724. package/dist/esm/components/form/fields/form-field-datetime.js.map +1 -1
  725. package/dist/esm/components/form/fields/form-field-datetime.labels.d.ts.map +1 -1
  726. package/dist/esm/components/form/fields/form-field-datetime.labels.js.map +1 -1
  727. package/dist/esm/components/form/fields/form-field-duration.d.ts.map +1 -1
  728. package/dist/esm/components/form/fields/form-field-duration.js.map +1 -1
  729. package/dist/esm/components/form/fields/form-field-duration.labels.d.ts.map +1 -1
  730. package/dist/esm/components/form/fields/form-field-duration.labels.js.map +1 -1
  731. package/dist/esm/components/form/fields/form-field-enum.d.ts.map +1 -1
  732. package/dist/esm/components/form/fields/form-field-enum.js.map +1 -1
  733. package/dist/esm/components/form/fields/form-field-enum.labels.d.ts.map +1 -1
  734. package/dist/esm/components/form/fields/form-field-enum.labels.js.map +1 -1
  735. package/dist/esm/components/form/fields/form-field-file-provider-constraints.frontend.utils.d.ts.map +1 -1
  736. package/dist/esm/components/form/fields/form-field-file-provider-constraints.frontend.utils.js.map +1 -1
  737. package/dist/esm/components/form/fields/form-field-file.d.ts +0 -12
  738. package/dist/esm/components/form/fields/form-field-file.d.ts.map +1 -1
  739. package/dist/esm/components/form/fields/form-field-file.js +34 -13
  740. package/dist/esm/components/form/fields/form-field-file.js.map +1 -1
  741. package/dist/esm/components/form/fields/form-field-file.labels.d.ts.map +1 -1
  742. package/dist/esm/components/form/fields/form-field-file.labels.js +46 -0
  743. package/dist/esm/components/form/fields/form-field-file.labels.js.map +1 -1
  744. package/dist/esm/components/form/fields/form-field-money.d.ts.map +1 -1
  745. package/dist/esm/components/form/fields/form-field-money.js.map +1 -1
  746. package/dist/esm/components/form/fields/form-field-money.labels.d.ts.map +1 -1
  747. package/dist/esm/components/form/fields/form-field-money.labels.js.map +1 -1
  748. package/dist/esm/components/form/fields/form-field-number.d.ts.map +1 -1
  749. package/dist/esm/components/form/fields/form-field-number.js.map +1 -1
  750. package/dist/esm/components/form/fields/form-field-number.labels.d.ts.map +1 -1
  751. package/dist/esm/components/form/fields/form-field-number.labels.js.map +1 -1
  752. package/dist/esm/components/form/fields/form-field-phone.d.ts.map +1 -1
  753. package/dist/esm/components/form/fields/form-field-phone.js.map +1 -1
  754. package/dist/esm/components/form/fields/form-field-phone.labels.d.ts.map +1 -1
  755. package/dist/esm/components/form/fields/form-field-phone.labels.js.map +1 -1
  756. package/dist/esm/components/form/fields/form-field-range-bigdecimal.d.ts.map +1 -1
  757. package/dist/esm/components/form/fields/form-field-range-bigdecimal.js.map +1 -1
  758. package/dist/esm/components/form/fields/form-field-range-bigdecimal.labels.d.ts.map +1 -1
  759. package/dist/esm/components/form/fields/form-field-range-bigdecimal.labels.js.map +1 -1
  760. package/dist/esm/components/form/fields/form-field-range-date.d.ts.map +1 -1
  761. package/dist/esm/components/form/fields/form-field-range-date.js.map +1 -1
  762. package/dist/esm/components/form/fields/form-field-range-date.labels.d.ts.map +1 -1
  763. package/dist/esm/components/form/fields/form-field-range-date.labels.js.map +1 -1
  764. package/dist/esm/components/form/fields/form-field-range-datetime.d.ts.map +1 -1
  765. package/dist/esm/components/form/fields/form-field-range-datetime.js.map +1 -1
  766. package/dist/esm/components/form/fields/form-field-range-datetime.labels.d.ts.map +1 -1
  767. package/dist/esm/components/form/fields/form-field-range-datetime.labels.js.map +1 -1
  768. package/dist/esm/components/form/fields/form-field-range-money.d.ts.map +1 -1
  769. package/dist/esm/components/form/fields/form-field-range-money.js.map +1 -1
  770. package/dist/esm/components/form/fields/form-field-range-money.labels.d.ts.map +1 -1
  771. package/dist/esm/components/form/fields/form-field-range-money.labels.js.map +1 -1
  772. package/dist/esm/components/form/fields/form-field-range-number.d.ts.map +1 -1
  773. package/dist/esm/components/form/fields/form-field-range-number.js.map +1 -1
  774. package/dist/esm/components/form/fields/form-field-range-number.labels.d.ts.map +1 -1
  775. package/dist/esm/components/form/fields/form-field-range-number.labels.js.map +1 -1
  776. package/dist/esm/components/form/fields/form-field-range-time.d.ts.map +1 -1
  777. package/dist/esm/components/form/fields/form-field-range-time.js.map +1 -1
  778. package/dist/esm/components/form/fields/form-field-range-time.labels.d.ts.map +1 -1
  779. package/dist/esm/components/form/fields/form-field-range-time.labels.js.map +1 -1
  780. package/dist/esm/components/form/fields/form-field-string-organization-role.d.ts +73 -0
  781. package/dist/esm/components/form/fields/form-field-string-organization-role.d.ts.map +1 -0
  782. package/dist/esm/components/form/fields/form-field-string-organization-role.js +64 -0
  783. package/dist/esm/components/form/fields/form-field-string-organization-role.js.map +1 -0
  784. package/dist/esm/components/form/fields/form-field-string.d.ts.map +1 -1
  785. package/dist/esm/components/form/fields/form-field-string.js +8 -1
  786. package/dist/esm/components/form/fields/form-field-string.js.map +1 -1
  787. package/dist/esm/components/form/fields/form-field-string.labels.d.ts.map +1 -1
  788. package/dist/esm/components/form/fields/form-field-string.labels.js +4 -0
  789. package/dist/esm/components/form/fields/form-field-string.labels.js.map +1 -1
  790. package/dist/esm/components/form/fields/form-field-time.d.ts.map +1 -1
  791. package/dist/esm/components/form/fields/form-field-time.js.map +1 -1
  792. package/dist/esm/components/form/fields/form-field-time.labels.d.ts.map +1 -1
  793. package/dist/esm/components/form/fields/form-field-time.labels.js.map +1 -1
  794. package/dist/esm/components/form/fields/useFormField.d.ts.map +1 -1
  795. package/dist/esm/components/form/fields/useFormField.js.map +1 -1
  796. package/dist/esm/components/form/form-context.d.ts.map +1 -1
  797. package/dist/esm/components/form/form-context.js.map +1 -1
  798. package/dist/esm/components/form/form-context.utils.d.ts.map +1 -1
  799. package/dist/esm/components/form/form-context.utils.js.map +1 -1
  800. package/dist/esm/components/form/form-external-validation.d.ts.map +1 -1
  801. package/dist/esm/components/form/form-external-validation.js.map +1 -1
  802. package/dist/esm/components/form/form-field-types.d.ts.map +1 -1
  803. package/dist/esm/components/form/form-field-types.js.map +1 -1
  804. package/dist/esm/components/form/useFormSchemaContext.d.ts.map +1 -1
  805. package/dist/esm/components/form/useFormSchemaContext.js.map +1 -1
  806. package/dist/esm/components/form/validation-errors/FormErrorSummary.d.ts.map +1 -1
  807. package/dist/esm/components/form/validation-errors/FormErrorSummary.js +1 -1
  808. package/dist/esm/components/form/validation-errors/FormErrorSummary.js.map +1 -1
  809. package/dist/esm/components/form/validation-errors/form-error-extraction.utils.d.ts.map +1 -1
  810. package/dist/esm/components/form/validation-errors/form-error-extraction.utils.js.map +1 -1
  811. package/dist/esm/components/form/validation-errors/form-validation.d.ts.map +1 -1
  812. package/dist/esm/components/form/validation-errors/form-validation.js.map +1 -1
  813. package/dist/esm/components/form/validation-errors/getFieldError.d.ts.map +1 -1
  814. package/dist/esm/components/form/validation-errors/getFieldError.js.map +1 -1
  815. package/dist/esm/components/form/validation-errors/resolver-error-nesting.d.ts +31 -0
  816. package/dist/esm/components/form/validation-errors/resolver-error-nesting.d.ts.map +1 -0
  817. package/dist/esm/components/form/validation-errors/resolver-error-nesting.js +81 -0
  818. package/dist/esm/components/form/validation-errors/resolver-error-nesting.js.map +1 -0
  819. package/dist/esm/components/form/validation-errors/resource-error-notification-context.utils.d.ts +14 -1
  820. package/dist/esm/components/form/validation-errors/resource-error-notification-context.utils.d.ts.map +1 -1
  821. package/dist/esm/components/form/validation-errors/resource-error-notification-context.utils.js +14 -0
  822. package/dist/esm/components/form/validation-errors/resource-error-notification-context.utils.js.map +1 -1
  823. package/dist/esm/components/form/validation-errors/scroll-to-first-error.utils.d.ts.map +1 -1
  824. package/dist/esm/components/form/validation-errors/scroll-to-first-error.utils.js.map +1 -1
  825. package/dist/esm/components/form/validation-errors/unstarted-field-visit.d.ts.map +1 -1
  826. package/dist/esm/components/form/validation-errors/unstarted-field-visit.js.map +1 -1
  827. package/dist/esm/components/form/validation-errors/useFieldUniquenessValidation.d.ts.map +1 -1
  828. package/dist/esm/components/form/validation-errors/useFieldUniquenessValidation.js.map +1 -1
  829. package/dist/esm/components/form/validation-errors/useServerErrorInjection.d.ts.map +1 -1
  830. package/dist/esm/components/form/validation-errors/useServerErrorInjection.js.map +1 -1
  831. package/dist/esm/components/form/validation-errors/validate-field-url.frontend.d.ts.map +1 -1
  832. package/dist/esm/components/form/validation-errors/validate-field-url.frontend.js.map +1 -1
  833. package/dist/esm/components/form/validation-errors/zod-issue-resolver.d.ts +22 -0
  834. package/dist/esm/components/form/validation-errors/zod-issue-resolver.d.ts.map +1 -1
  835. package/dist/esm/components/form/validation-errors/zod-issue-resolver.js +1 -22
  836. package/dist/esm/components/form/validation-errors/zod-issue-resolver.js.map +1 -1
  837. package/dist/esm/components/layout/aspect-ratio.d.ts.map +1 -1
  838. package/dist/esm/components/layout/aspect-ratio.js.map +1 -1
  839. package/dist/esm/components/layout/carousel.d.ts.map +1 -1
  840. package/dist/esm/components/layout/carousel.js.map +1 -1
  841. package/dist/esm/components/layout/divider.d.ts.map +1 -1
  842. package/dist/esm/components/layout/divider.js.map +1 -1
  843. package/dist/esm/components/layout/resizable.d.ts +11 -0
  844. package/dist/esm/components/layout/resizable.d.ts.map +1 -1
  845. package/dist/esm/components/layout/resizable.js.map +1 -1
  846. package/dist/esm/components/layout/scroll-area.d.ts.map +1 -1
  847. package/dist/esm/components/layout/scroll-area.js.map +1 -1
  848. package/dist/esm/components/layout/separator.d.ts.map +1 -1
  849. package/dist/esm/components/layout/separator.js.map +1 -1
  850. package/dist/esm/components/navigation/NavigationItemBadge.d.ts.map +1 -1
  851. package/dist/esm/components/navigation/NavigationItemBadge.js.map +1 -1
  852. package/dist/esm/components/navigation/app-level/ApplicationLevel_ActivityBar.d.ts.map +1 -1
  853. package/dist/esm/components/navigation/app-level/ApplicationLevel_ActivityBar.js.map +1 -1
  854. package/dist/esm/components/navigation/app-level/ApplicationLevel_CommandMenu.d.ts.map +1 -1
  855. package/dist/esm/components/navigation/app-level/ApplicationLevel_CommandMenu.js.map +1 -1
  856. package/dist/esm/components/navigation/app-level/ApplicationLevel_ControlPanel.d.ts.map +1 -1
  857. package/dist/esm/components/navigation/app-level/ApplicationLevel_ControlPanel.js.map +1 -1
  858. package/dist/esm/components/navigation/app-level/ApplicationLevel_MenuBar.d.ts.map +1 -1
  859. package/dist/esm/components/navigation/app-level/ApplicationLevel_MenuBar.js.map +1 -1
  860. package/dist/esm/components/navigation/app-level/ApplicationLevel_MenuUserOrg.d.ts.map +1 -1
  861. package/dist/esm/components/navigation/app-level/ApplicationLevel_MenuUserOrg.js.map +1 -1
  862. package/dist/esm/components/navigation/app-level/ApplicationLevel_NavigationBack.d.ts +11 -1
  863. package/dist/esm/components/navigation/app-level/ApplicationLevel_NavigationBack.d.ts.map +1 -1
  864. package/dist/esm/components/navigation/app-level/ApplicationLevel_NavigationBack.js +15 -3
  865. package/dist/esm/components/navigation/app-level/ApplicationLevel_NavigationBack.js.map +1 -1
  866. package/dist/esm/components/navigation/app-level/ApplicationLevel_NotificationCenter.d.ts.map +1 -1
  867. package/dist/esm/components/navigation/app-level/ApplicationLevel_NotificationCenter.js.map +1 -1
  868. package/dist/esm/components/navigation/app-level/ApplicationLevel_QuickActionButton.d.ts.map +1 -1
  869. package/dist/esm/components/navigation/app-level/ApplicationLevel_QuickActionButton.js.map +1 -1
  870. package/dist/esm/components/navigation/app-level/ApplicationLevel_QuickSwitcher.d.ts.map +1 -1
  871. package/dist/esm/components/navigation/app-level/ApplicationLevel_QuickSwitcher.js.map +1 -1
  872. package/dist/esm/components/navigation/app-level/ApplicationLevel_Sidebar.d.ts.map +1 -1
  873. package/dist/esm/components/navigation/app-level/ApplicationLevel_Sidebar.js.map +1 -1
  874. package/dist/esm/components/navigation/app-level/ApplicationLevel_StatusBar.d.ts +2 -2
  875. package/dist/esm/components/navigation/app-level/ApplicationLevel_StatusBar.d.ts.map +1 -1
  876. package/dist/esm/components/navigation/app-level/ApplicationLevel_StatusBar.js.map +1 -1
  877. package/dist/esm/components/navigation/app-level/ApplicationLevel_Toolbar.d.ts.map +1 -1
  878. package/dist/esm/components/navigation/app-level/ApplicationLevel_Toolbar.js.map +1 -1
  879. package/dist/esm/components/navigation/app-level/ApplicationLevel_UtilityPanel.d.ts.map +1 -1
  880. package/dist/esm/components/navigation/app-level/ApplicationLevel_UtilityPanel.js.map +1 -1
  881. package/dist/esm/components/navigation/app-level/HostedComponentInteractionsProvider.d.ts +2 -2
  882. package/dist/esm/components/navigation/app-level/HostedComponentInteractionsProvider.d.ts.map +1 -1
  883. package/dist/esm/components/navigation/app-level/HostedComponentInteractionsProvider.js +2 -2
  884. package/dist/esm/components/navigation/app-level/HostedComponentInteractionsProvider.js.map +1 -1
  885. package/dist/esm/components/navigation/app-level/SidebarResourceBrowser.d.ts.map +1 -1
  886. package/dist/esm/components/navigation/app-level/SidebarResourceBrowser.js +18 -20
  887. package/dist/esm/components/navigation/app-level/SidebarResourceBrowser.js.map +1 -1
  888. package/dist/esm/components/navigation/app-level/component-props.application-level.frontend.schemas.d.ts.map +1 -1
  889. package/dist/esm/components/navigation/app-level/component-props.application-level.frontend.schemas.js.map +1 -1
  890. package/dist/esm/components/navigation/app-level/sidebar-resource-browser-empty-label.d.ts.map +1 -1
  891. package/dist/esm/components/navigation/app-level/sidebar-resource-browser-empty-label.js.map +1 -1
  892. package/dist/esm/components/navigation/app-level/useActivityBarBehavior.d.ts.map +1 -1
  893. package/dist/esm/components/navigation/app-level/useActivityBarBehavior.js.map +1 -1
  894. package/dist/esm/components/navigation/app-level/useCommandMenuBehavior.d.ts.map +1 -1
  895. package/dist/esm/components/navigation/app-level/useCommandMenuBehavior.js +7 -1
  896. package/dist/esm/components/navigation/app-level/useCommandMenuBehavior.js.map +1 -1
  897. package/dist/esm/components/navigation/app-level/useControlPanelBehavior.d.ts.map +1 -1
  898. package/dist/esm/components/navigation/app-level/useControlPanelBehavior.js.map +1 -1
  899. package/dist/esm/components/navigation/app-level/useMenuBarBehavior.d.ts.map +1 -1
  900. package/dist/esm/components/navigation/app-level/useMenuBarBehavior.js +4 -1
  901. package/dist/esm/components/navigation/app-level/useMenuBarBehavior.js.map +1 -1
  902. package/dist/esm/components/navigation/app-level/useMenuUserOrgBehavior.d.ts.map +1 -1
  903. package/dist/esm/components/navigation/app-level/useMenuUserOrgBehavior.js +18 -2
  904. package/dist/esm/components/navigation/app-level/useMenuUserOrgBehavior.js.map +1 -1
  905. package/dist/esm/components/navigation/app-level/useNavigationBehaviors.d.ts.map +1 -1
  906. package/dist/esm/components/navigation/app-level/useNavigationBehaviors.js.map +1 -1
  907. package/dist/esm/components/navigation/app-level/useNotificationCenterBehavior.d.ts.map +1 -1
  908. package/dist/esm/components/navigation/app-level/useNotificationCenterBehavior.js.map +1 -1
  909. package/dist/esm/components/navigation/app-level/useQuickActionButtonBehavior.d.ts.map +1 -1
  910. package/dist/esm/components/navigation/app-level/useQuickActionButtonBehavior.js.map +1 -1
  911. package/dist/esm/components/navigation/app-level/useQuickSwitcherBehavior.d.ts.map +1 -1
  912. package/dist/esm/components/navigation/app-level/useQuickSwitcherBehavior.js.map +1 -1
  913. package/dist/esm/components/navigation/app-level/useSidebarBehavior.d.ts.map +1 -1
  914. package/dist/esm/components/navigation/app-level/useSidebarBehavior.js +82 -10
  915. package/dist/esm/components/navigation/app-level/useSidebarBehavior.js.map +1 -1
  916. package/dist/esm/components/navigation/app-level/useStatusBarBehavior.d.ts +2 -2
  917. package/dist/esm/components/navigation/app-level/useStatusBarBehavior.d.ts.map +1 -1
  918. package/dist/esm/components/navigation/app-level/useStatusBarBehavior.js.map +1 -1
  919. package/dist/esm/components/navigation/app-level/useToolbarBehavior.d.ts.map +1 -1
  920. package/dist/esm/components/navigation/app-level/useToolbarBehavior.js.map +1 -1
  921. package/dist/esm/components/navigation/app-level/useUtilityPanelBehavior.d.ts.map +1 -1
  922. package/dist/esm/components/navigation/app-level/useUtilityPanelBehavior.js.map +1 -1
  923. package/dist/esm/components/navigation/breadcrumb.d.ts.map +1 -1
  924. package/dist/esm/components/navigation/breadcrumb.js.map +1 -1
  925. package/dist/esm/components/navigation/command.d.ts.map +1 -1
  926. package/dist/esm/components/navigation/command.js.map +1 -1
  927. package/dist/esm/components/navigation/menu-bar.d.ts.map +1 -1
  928. package/dist/esm/components/navigation/menu-bar.js.map +1 -1
  929. package/dist/esm/components/navigation/navbar.d.ts.map +1 -1
  930. package/dist/esm/components/navigation/navbar.js.map +1 -1
  931. package/dist/esm/components/navigation/sidebar.d.ts.map +1 -1
  932. package/dist/esm/components/navigation/sidebar.js.map +1 -1
  933. package/dist/esm/components/overlays/containers/OverlayContainer.d.ts.map +1 -1
  934. package/dist/esm/components/overlays/containers/OverlayContainer.js.map +1 -1
  935. package/dist/esm/components/overlays/containers/OverlayContainer.labels.d.ts.map +1 -1
  936. package/dist/esm/components/overlays/containers/OverlayContainer.labels.js.map +1 -1
  937. package/dist/esm/components/overlays/containers/alert-dialog.d.ts.map +1 -1
  938. package/dist/esm/components/overlays/containers/alert-dialog.js.map +1 -1
  939. package/dist/esm/components/overlays/containers/alert.d.ts.map +1 -1
  940. package/dist/esm/components/overlays/containers/alert.js.map +1 -1
  941. package/dist/esm/components/overlays/containers/dialog.d.ts.map +1 -1
  942. package/dist/esm/components/overlays/containers/dialog.js.map +1 -1
  943. package/dist/esm/components/overlays/containers/dialog.shared-types.d.ts.map +1 -1
  944. package/dist/esm/components/overlays/containers/dialog.shared-types.js.map +1 -1
  945. package/dist/esm/components/overlays/containers/drawer.d.ts.map +1 -1
  946. package/dist/esm/components/overlays/containers/drawer.js.map +1 -1
  947. package/dist/esm/components/overlays/containers/navigation-overlay-container.utils.d.ts.map +1 -1
  948. package/dist/esm/components/overlays/containers/navigation-overlay-container.utils.js.map +1 -1
  949. package/dist/esm/components/overlays/containers/overlay-container-mode-resolution.utils.d.ts.map +1 -1
  950. package/dist/esm/components/overlays/containers/overlay-container-mode-resolution.utils.js.map +1 -1
  951. package/dist/esm/components/overlays/containers/sheet.d.ts.map +1 -1
  952. package/dist/esm/components/overlays/containers/sheet.js.map +1 -1
  953. package/dist/esm/components/overlays/floating/context-menu.d.ts.map +1 -1
  954. package/dist/esm/components/overlays/floating/context-menu.js.map +1 -1
  955. package/dist/esm/components/overlays/floating/dropdown-menu.d.ts.map +1 -1
  956. package/dist/esm/components/overlays/floating/dropdown-menu.js.map +1 -1
  957. package/dist/esm/components/overlays/floating/hover-card.d.ts.map +1 -1
  958. package/dist/esm/components/overlays/floating/hover-card.js.map +1 -1
  959. package/dist/esm/components/overlays/floating/menu.shared-types.d.ts.map +1 -1
  960. package/dist/esm/components/overlays/floating/menu.shared-types.js.map +1 -1
  961. package/dist/esm/components/overlays/floating/popover.d.ts.map +1 -1
  962. package/dist/esm/components/overlays/floating/popover.js.map +1 -1
  963. package/dist/esm/components/overlays/floating/tooltip.d.ts.map +1 -1
  964. package/dist/esm/components/overlays/floating/tooltip.js.map +1 -1
  965. package/dist/esm/components/progression/ProgressionAchievementBadge.d.ts.map +1 -1
  966. package/dist/esm/components/progression/ProgressionAchievementBadge.js.map +1 -1
  967. package/dist/esm/components/progression/ProgressionAchievementBadge.labels.d.ts.map +1 -1
  968. package/dist/esm/components/progression/ProgressionAchievementBadge.labels.js.map +1 -1
  969. package/dist/esm/components/progression/ProgressionMilestoneTracker.d.ts.map +1 -1
  970. package/dist/esm/components/progression/ProgressionMilestoneTracker.js.map +1 -1
  971. package/dist/esm/components/progression/ProgressionMilestoneTracker.labels.d.ts.map +1 -1
  972. package/dist/esm/components/progression/ProgressionMilestoneTracker.labels.js.map +1 -1
  973. package/dist/esm/components/resources/CollectionSelectionControls.d.ts.map +1 -1
  974. package/dist/esm/components/resources/CollectionSelectionControls.js.map +1 -1
  975. package/dist/esm/components/resources/CollectionSelectionHeaderRail.d.ts.map +1 -1
  976. package/dist/esm/components/resources/CollectionSelectionHeaderRail.js.map +1 -1
  977. package/dist/esm/components/resources/EphemeralFieldsRevealDialog.d.ts.map +1 -1
  978. package/dist/esm/components/resources/EphemeralFieldsRevealDialog.js.map +1 -1
  979. package/dist/esm/components/resources/InlineSearchInput.d.ts.map +1 -1
  980. package/dist/esm/components/resources/InlineSearchInput.js.map +1 -1
  981. package/dist/esm/components/resources/ResourceCollectionBody_Table.d.ts.map +1 -1
  982. package/dist/esm/components/resources/ResourceCollectionBody_Table.js.map +1 -1
  983. package/dist/esm/components/resources/ResourceCollectionFilterPresets.d.ts.map +1 -1
  984. package/dist/esm/components/resources/ResourceCollectionFilterPresets.js.map +1 -1
  985. package/dist/esm/components/resources/ResourceCollectionQuickFilterTabs.d.ts.map +1 -1
  986. package/dist/esm/components/resources/ResourceCollectionQuickFilterTabs.js +8 -1
  987. package/dist/esm/components/resources/ResourceCollectionQuickFilterTabs.js.map +1 -1
  988. package/dist/esm/components/resources/ResourceCollectionToolbar.d.ts +8 -2
  989. package/dist/esm/components/resources/ResourceCollectionToolbar.d.ts.map +1 -1
  990. package/dist/esm/components/resources/ResourceCollectionToolbar.js +6 -2
  991. package/dist/esm/components/resources/ResourceCollectionToolbar.js.map +1 -1
  992. package/dist/esm/components/resources/ResourceInPlaceOperationRow.d.ts.map +1 -1
  993. package/dist/esm/components/resources/ResourceInPlaceOperationRow.js.map +1 -1
  994. package/dist/esm/components/resources/ResourceLayout_Action.d.ts.map +1 -1
  995. package/dist/esm/components/resources/ResourceLayout_Action.js.map +1 -1
  996. package/dist/esm/components/resources/ResourceLayout_Action.labels.d.ts.map +1 -1
  997. package/dist/esm/components/resources/ResourceLayout_Action.labels.js.map +1 -1
  998. package/dist/esm/components/resources/ResourceLayout_Breadcrumb.d.ts.map +1 -1
  999. package/dist/esm/components/resources/ResourceLayout_Breadcrumb.js +31 -16
  1000. package/dist/esm/components/resources/ResourceLayout_Breadcrumb.js.map +1 -1
  1001. package/dist/esm/components/resources/ResourceLayout_Breadcrumb.labels.d.ts.map +1 -1
  1002. package/dist/esm/components/resources/ResourceLayout_Breadcrumb.labels.js.map +1 -1
  1003. package/dist/esm/components/resources/ResourceLayout_CollectionActions.d.ts.map +1 -1
  1004. package/dist/esm/components/resources/ResourceLayout_CollectionActions.js.map +1 -1
  1005. package/dist/esm/components/resources/ResourceLayout_ContainerDialogs.d.ts.map +1 -1
  1006. package/dist/esm/components/resources/ResourceLayout_ContainerDialogs.js +23 -8
  1007. package/dist/esm/components/resources/ResourceLayout_ContainerDialogs.js.map +1 -1
  1008. package/dist/esm/components/resources/ResourceLayout_ContainerDialogs.labels.d.ts.map +1 -1
  1009. package/dist/esm/components/resources/ResourceLayout_ContainerDialogs.labels.js.map +1 -1
  1010. package/dist/esm/components/resources/ResourceLayout_ContainerNested.d.ts.map +1 -1
  1011. package/dist/esm/components/resources/ResourceLayout_ContainerNested.js +2 -2
  1012. package/dist/esm/components/resources/ResourceLayout_ContainerNested.js.map +1 -1
  1013. package/dist/esm/components/resources/ResourceLayout_ContainerNested.labels.d.ts.map +1 -1
  1014. package/dist/esm/components/resources/ResourceLayout_ContainerNested.labels.js.map +1 -1
  1015. package/dist/esm/components/resources/ResourceLayout_Create.d.ts.map +1 -1
  1016. package/dist/esm/components/resources/ResourceLayout_Create.js.map +1 -1
  1017. package/dist/esm/components/resources/ResourceLayout_Create.labels.d.ts.map +1 -1
  1018. package/dist/esm/components/resources/ResourceLayout_Create.labels.js.map +1 -1
  1019. package/dist/esm/components/resources/ResourceLayout_DangerZone.d.ts.map +1 -1
  1020. package/dist/esm/components/resources/ResourceLayout_DangerZone.js.map +1 -1
  1021. package/dist/esm/components/resources/ResourceLayout_DangerZone.labels.d.ts.map +1 -1
  1022. package/dist/esm/components/resources/ResourceLayout_DangerZone.labels.js.map +1 -1
  1023. package/dist/esm/components/resources/ResourceLayout_FilterChips.d.ts.map +1 -1
  1024. package/dist/esm/components/resources/ResourceLayout_FilterChips.js.map +1 -1
  1025. package/dist/esm/components/resources/ResourceLayout_Filters.d.ts.map +1 -1
  1026. package/dist/esm/components/resources/ResourceLayout_Filters.js.map +1 -1
  1027. package/dist/esm/components/resources/ResourceLayout_Filters.labels.d.ts.map +1 -1
  1028. package/dist/esm/components/resources/ResourceLayout_Filters.labels.js.map +1 -1
  1029. package/dist/esm/components/resources/ResourceLayout_FiltersControl.d.ts.map +1 -1
  1030. package/dist/esm/components/resources/ResourceLayout_FiltersControl.js.map +1 -1
  1031. package/dist/esm/components/resources/ResourceLayout_Header.d.ts +13 -0
  1032. package/dist/esm/components/resources/ResourceLayout_Header.d.ts.map +1 -1
  1033. package/dist/esm/components/resources/ResourceLayout_Header.js +55 -28
  1034. package/dist/esm/components/resources/ResourceLayout_Header.js.map +1 -1
  1035. package/dist/esm/components/resources/ResourceLayout_Header.labels.d.ts.map +1 -1
  1036. package/dist/esm/components/resources/ResourceLayout_Header.labels.js.map +1 -1
  1037. package/dist/esm/components/resources/ResourceLayout_InsertedViews.d.ts.map +1 -1
  1038. package/dist/esm/components/resources/ResourceLayout_InsertedViews.js.map +1 -1
  1039. package/dist/esm/components/resources/ResourceLayout_List.d.ts.map +1 -1
  1040. package/dist/esm/components/resources/ResourceLayout_List.js +41 -20
  1041. package/dist/esm/components/resources/ResourceLayout_List.js.map +1 -1
  1042. package/dist/esm/components/resources/ResourceLayout_List.labels.d.ts.map +1 -1
  1043. package/dist/esm/components/resources/ResourceLayout_List.labels.js +1 -2
  1044. package/dist/esm/components/resources/ResourceLayout_List.labels.js.map +1 -1
  1045. package/dist/esm/components/resources/ResourceLayout_List_Table.d.ts.map +1 -1
  1046. package/dist/esm/components/resources/ResourceLayout_List_Table.js.map +1 -1
  1047. package/dist/esm/components/resources/ResourceLayout_OperationBulk.d.ts.map +1 -1
  1048. package/dist/esm/components/resources/ResourceLayout_OperationBulk.js.map +1 -1
  1049. package/dist/esm/components/resources/ResourceLayout_OperationBulk.labels.d.ts.map +1 -1
  1050. package/dist/esm/components/resources/ResourceLayout_OperationBulk.labels.js.map +1 -1
  1051. package/dist/esm/components/resources/ResourceLayout_OperationsItems.d.ts.map +1 -1
  1052. package/dist/esm/components/resources/ResourceLayout_OperationsItems.js.map +1 -1
  1053. package/dist/esm/components/resources/ResourceLayout_OperationsItems.labels.d.ts.map +1 -1
  1054. package/dist/esm/components/resources/ResourceLayout_OperationsItems.labels.js.map +1 -1
  1055. package/dist/esm/components/resources/ResourceLayout_Pagination.d.ts.map +1 -1
  1056. package/dist/esm/components/resources/ResourceLayout_Pagination.js.map +1 -1
  1057. package/dist/esm/components/resources/ResourceLayout_Pagination.labels.d.ts.map +1 -1
  1058. package/dist/esm/components/resources/ResourceLayout_Pagination.labels.js.map +1 -1
  1059. package/dist/esm/components/resources/ResourceLayout_Read.d.ts +9 -4
  1060. package/dist/esm/components/resources/ResourceLayout_Read.d.ts.map +1 -1
  1061. package/dist/esm/components/resources/ResourceLayout_Read.js +30 -11
  1062. package/dist/esm/components/resources/ResourceLayout_Read.js.map +1 -1
  1063. package/dist/esm/components/resources/ResourceLayout_Read.labels.d.ts.map +1 -1
  1064. package/dist/esm/components/resources/ResourceLayout_Read.labels.js.map +1 -1
  1065. package/dist/esm/components/resources/ResourceLayout_ReadSummary.d.ts.map +1 -1
  1066. package/dist/esm/components/resources/ResourceLayout_ReadSummary.js +4 -2
  1067. package/dist/esm/components/resources/ResourceLayout_ReadSummary.js.map +1 -1
  1068. package/dist/esm/components/resources/ResourceLayout_ReadSummary.labels.d.ts.map +1 -1
  1069. package/dist/esm/components/resources/ResourceLayout_ReadSummary.labels.js.map +1 -1
  1070. package/dist/esm/components/resources/ResourceLayout_ReadSummary_TableRow.d.ts.map +1 -1
  1071. package/dist/esm/components/resources/ResourceLayout_ReadSummary_TableRow.js +6 -2
  1072. package/dist/esm/components/resources/ResourceLayout_ReadSummary_TableRow.js.map +1 -1
  1073. package/dist/esm/components/resources/ResourceLayout_Read_Expandable.d.ts.map +1 -1
  1074. package/dist/esm/components/resources/ResourceLayout_Read_Expandable.js.map +1 -1
  1075. package/dist/esm/components/resources/ResourceLayout_Search.d.ts.map +1 -1
  1076. package/dist/esm/components/resources/ResourceLayout_Search.js +30 -14
  1077. package/dist/esm/components/resources/ResourceLayout_Search.js.map +1 -1
  1078. package/dist/esm/components/resources/ResourceLayout_Search.labels.d.ts.map +1 -1
  1079. package/dist/esm/components/resources/ResourceLayout_Search.labels.js.map +1 -1
  1080. package/dist/esm/components/resources/ResourceLayout_Search_Table.d.ts.map +1 -1
  1081. package/dist/esm/components/resources/ResourceLayout_Search_Table.js.map +1 -1
  1082. package/dist/esm/components/resources/ResourceLayout_SemanticOperationFallback.d.ts.map +1 -1
  1083. package/dist/esm/components/resources/ResourceLayout_SemanticOperationFallback.js +14 -198
  1084. package/dist/esm/components/resources/ResourceLayout_SemanticOperationFallback.js.map +1 -1
  1085. package/dist/esm/components/resources/ResourceLayout_SortControl.d.ts.map +1 -1
  1086. package/dist/esm/components/resources/ResourceLayout_SortControl.js.map +1 -1
  1087. package/dist/esm/components/resources/ResourceLayout_Update.d.ts +2 -2
  1088. package/dist/esm/components/resources/ResourceLayout_Update.d.ts.map +1 -1
  1089. package/dist/esm/components/resources/ResourceLayout_Update.js +2 -2
  1090. package/dist/esm/components/resources/ResourceLayout_Update.js.map +1 -1
  1091. package/dist/esm/components/resources/ResourceLayout_Update.labels.d.ts.map +1 -1
  1092. package/dist/esm/components/resources/ResourceLayout_Update.labels.js.map +1 -1
  1093. package/dist/esm/components/resources/ResourceListItemRenderer.d.ts.map +1 -1
  1094. package/dist/esm/components/resources/ResourceListItemRenderer.js +69 -39
  1095. package/dist/esm/components/resources/ResourceListItemRenderer.js.map +1 -1
  1096. package/dist/esm/components/resources/ResourceOperationActionDropdown.d.ts +32 -0
  1097. package/dist/esm/components/resources/ResourceOperationActionDropdown.d.ts.map +1 -0
  1098. package/dist/esm/components/resources/ResourceOperationActionDropdown.js +130 -0
  1099. package/dist/esm/components/resources/ResourceOperationActionDropdown.js.map +1 -0
  1100. package/dist/esm/components/resources/ResourceOperationActionPopover.d.ts.map +1 -1
  1101. package/dist/esm/components/resources/ResourceOperationActionPopover.js.map +1 -1
  1102. package/dist/esm/components/resources/ResourceOperationDetachedHost.d.ts.map +1 -1
  1103. package/dist/esm/components/resources/ResourceOperationDetachedHost.js.map +1 -1
  1104. package/dist/esm/components/resources/ResourceOperationSurface.d.ts.map +1 -1
  1105. package/dist/esm/components/resources/ResourceOperationSurface.js.map +1 -1
  1106. package/dist/esm/components/resources/ResourceOwnedViewEmbeds.d.ts.map +1 -1
  1107. package/dist/esm/components/resources/ResourceOwnedViewEmbeds.js.map +1 -1
  1108. package/dist/esm/components/resources/ResourceViewModeToggle.d.ts.map +1 -1
  1109. package/dist/esm/components/resources/ResourceViewModeToggle.js.map +1 -1
  1110. package/dist/esm/components/resources/card-action-placement.utils.d.ts.map +1 -1
  1111. package/dist/esm/components/resources/card-action-placement.utils.js.map +1 -1
  1112. package/dist/esm/components/resources/collection-card-layout.utils.d.ts.map +1 -1
  1113. package/dist/esm/components/resources/collection-card-layout.utils.js.map +1 -1
  1114. package/dist/esm/components/resources/collection-create-placement.utils.d.ts +32 -0
  1115. package/dist/esm/components/resources/collection-create-placement.utils.d.ts.map +1 -0
  1116. package/dist/esm/components/resources/collection-create-placement.utils.js +37 -0
  1117. package/dist/esm/components/resources/collection-create-placement.utils.js.map +1 -0
  1118. package/dist/esm/components/resources/collection-view-mode.frontend.d.ts.map +1 -1
  1119. package/dist/esm/components/resources/collection-view-mode.frontend.js.map +1 -1
  1120. package/dist/esm/components/resources/component-props.resources-layout.frontend.schemas.d.ts.map +1 -1
  1121. package/dist/esm/components/resources/component-props.resources-layout.frontend.schemas.js.map +1 -1
  1122. package/dist/esm/components/resources/embeds/ComposedChildrenRegistry.d.ts.map +1 -1
  1123. package/dist/esm/components/resources/embeds/ComposedChildrenRegistry.js.map +1 -1
  1124. package/dist/esm/components/resources/embeds/EmbeddedResourceDescent.d.ts.map +1 -1
  1125. package/dist/esm/components/resources/embeds/EmbeddedResourceDescent.js.map +1 -1
  1126. package/dist/esm/components/resources/embeds/EmbeddedResourceHostContext.d.ts.map +1 -1
  1127. package/dist/esm/components/resources/embeds/EmbeddedResourceHostContext.js.map +1 -1
  1128. package/dist/esm/components/resources/embeds/RelatedResourcePreview.d.ts.map +1 -1
  1129. package/dist/esm/components/resources/embeds/RelatedResourcePreview.js +5 -1
  1130. package/dist/esm/components/resources/embeds/RelatedResourcePreview.js.map +1 -1
  1131. package/dist/esm/components/resources/embeds/RelatedResourceSections.d.ts +8 -1
  1132. package/dist/esm/components/resources/embeds/RelatedResourceSections.d.ts.map +1 -1
  1133. package/dist/esm/components/resources/embeds/RelatedResourceSections.js +49 -2
  1134. package/dist/esm/components/resources/embeds/RelatedResourceSections.js.map +1 -1
  1135. package/dist/esm/components/resources/embeds/ResourceEmbeds.d.ts +22 -0
  1136. package/dist/esm/components/resources/embeds/ResourceEmbeds.d.ts.map +1 -1
  1137. package/dist/esm/components/resources/embeds/ResourceEmbeds.js +85 -2
  1138. package/dist/esm/components/resources/embeds/ResourceEmbeds.js.map +1 -1
  1139. package/dist/esm/components/resources/embeds/child-operation-addressability.utils.d.ts.map +1 -1
  1140. package/dist/esm/components/resources/embeds/child-operation-addressability.utils.js.map +1 -1
  1141. package/dist/esm/components/resources/embeds/useEmbeddedResourceContext.d.ts.map +1 -1
  1142. package/dist/esm/components/resources/embeds/useEmbeddedResourceContext.js.map +1 -1
  1143. package/dist/esm/components/resources/inserted-resource-view.frontend.utils.d.ts.map +1 -1
  1144. package/dist/esm/components/resources/inserted-resource-view.frontend.utils.js.map +1 -1
  1145. package/dist/esm/components/resources/resource-operation-custom-view.contracts.d.ts.map +1 -1
  1146. package/dist/esm/components/resources/resource-operation-custom-view.contracts.js.map +1 -1
  1147. package/dist/esm/components/resources/resourceLayout.utils.d.ts +14 -0
  1148. package/dist/esm/components/resources/resourceLayout.utils.d.ts.map +1 -1
  1149. package/dist/esm/components/resources/resourceLayout.utils.js +22 -0
  1150. package/dist/esm/components/resources/resourceLayout.utils.js.map +1 -1
  1151. package/dist/esm/components/resources/skeleton/ArrayField.d.ts.map +1 -1
  1152. package/dist/esm/components/resources/skeleton/ArrayField.js +3 -0
  1153. package/dist/esm/components/resources/skeleton/ArrayField.js.map +1 -1
  1154. package/dist/esm/components/resources/skeleton/ArrayItemTemplate.d.ts.map +1 -1
  1155. package/dist/esm/components/resources/skeleton/ArrayItemTemplate.js.map +1 -1
  1156. package/dist/esm/components/resources/skeleton/DiscriminatorSwitch.d.ts.map +1 -1
  1157. package/dist/esm/components/resources/skeleton/DiscriminatorSwitch.js.map +1 -1
  1158. package/dist/esm/components/resources/skeleton/DisplayDiscriminatorSwitch.d.ts.map +1 -1
  1159. package/dist/esm/components/resources/skeleton/DisplayDiscriminatorSwitch.js.map +1 -1
  1160. package/dist/esm/components/resources/skeleton/DisplayLayout.d.ts.map +1 -1
  1161. package/dist/esm/components/resources/skeleton/DisplayLayout.js.map +1 -1
  1162. package/dist/esm/components/resources/skeleton/Divider.d.ts.map +1 -1
  1163. package/dist/esm/components/resources/skeleton/Divider.js.map +1 -1
  1164. package/dist/esm/components/resources/skeleton/FieldScopeContext.d.ts.map +1 -1
  1165. package/dist/esm/components/resources/skeleton/FieldScopeContext.js.map +1 -1
  1166. package/dist/esm/components/resources/skeleton/FormErrorSummarySlot.d.ts.map +1 -1
  1167. package/dist/esm/components/resources/skeleton/FormErrorSummarySlot.js.map +1 -1
  1168. package/dist/esm/components/resources/skeleton/FormLayout.d.ts.map +1 -1
  1169. package/dist/esm/components/resources/skeleton/FormLayout.js +33 -1
  1170. package/dist/esm/components/resources/skeleton/FormLayout.js.map +1 -1
  1171. package/dist/esm/components/resources/skeleton/FormLayoutSlotContext.d.ts.map +1 -1
  1172. package/dist/esm/components/resources/skeleton/FormLayoutSlotContext.js.map +1 -1
  1173. package/dist/esm/components/resources/skeleton/Group.d.ts.map +1 -1
  1174. package/dist/esm/components/resources/skeleton/Group.js.map +1 -1
  1175. package/dist/esm/components/resources/skeleton/ObjectScope.d.ts.map +1 -1
  1176. package/dist/esm/components/resources/skeleton/ObjectScope.js +3 -0
  1177. package/dist/esm/components/resources/skeleton/ObjectScope.js.map +1 -1
  1178. package/dist/esm/components/resources/skeleton/ResourceHeaderTitle.d.ts.map +1 -1
  1179. package/dist/esm/components/resources/skeleton/ResourceHeaderTitle.js.map +1 -1
  1180. package/dist/esm/components/resources/skeleton/Section.d.ts +12 -0
  1181. package/dist/esm/components/resources/skeleton/Section.d.ts.map +1 -1
  1182. package/dist/esm/components/resources/skeleton/Section.js +28 -2
  1183. package/dist/esm/components/resources/skeleton/Section.js.map +1 -1
  1184. package/dist/esm/components/resources/skeleton/Section.shared.d.ts.map +1 -1
  1185. package/dist/esm/components/resources/skeleton/Section.shared.js.map +1 -1
  1186. package/dist/esm/components/resources/skeleton/SectionFieldsContext.d.ts +70 -0
  1187. package/dist/esm/components/resources/skeleton/SectionFieldsContext.d.ts.map +1 -1
  1188. package/dist/esm/components/resources/skeleton/SectionFieldsContext.js +157 -1
  1189. package/dist/esm/components/resources/skeleton/SectionFieldsContext.js.map +1 -1
  1190. package/dist/esm/components/resources/skeleton/SectionHostHeadingContext.d.ts.map +1 -1
  1191. package/dist/esm/components/resources/skeleton/SectionHostHeadingContext.js.map +1 -1
  1192. package/dist/esm/components/resources/skeleton/SectionPresentationContext.d.ts.map +1 -1
  1193. package/dist/esm/components/resources/skeleton/SectionPresentationContext.js.map +1 -1
  1194. package/dist/esm/components/resources/skeleton/SubmitButton.d.ts.map +1 -1
  1195. package/dist/esm/components/resources/skeleton/SubmitButton.js.map +1 -1
  1196. package/dist/esm/components/resources/skeleton/SummaryHeader.d.ts.map +1 -1
  1197. package/dist/esm/components/resources/skeleton/SummaryHeader.js.map +1 -1
  1198. package/dist/esm/components/resources/skeleton/SummaryLayout.d.ts.map +1 -1
  1199. package/dist/esm/components/resources/skeleton/SummaryLayout.js.map +1 -1
  1200. package/dist/esm/components/resources/skeleton/SummaryMeta.d.ts.map +1 -1
  1201. package/dist/esm/components/resources/skeleton/SummaryMeta.js.map +1 -1
  1202. package/dist/esm/components/resources/skeleton/SummaryTitle.d.ts.map +1 -1
  1203. package/dist/esm/components/resources/skeleton/SummaryTitle.js.map +1 -1
  1204. package/dist/esm/components/resources/skeleton/WizardLayout.d.ts +6 -0
  1205. package/dist/esm/components/resources/skeleton/WizardLayout.d.ts.map +1 -1
  1206. package/dist/esm/components/resources/skeleton/WizardLayout.js +13 -2
  1207. package/dist/esm/components/resources/skeleton/WizardLayout.js.map +1 -1
  1208. package/dist/esm/components/resources/skeleton/WizardLayoutContext.d.ts.map +1 -1
  1209. package/dist/esm/components/resources/skeleton/WizardLayoutContext.js.map +1 -1
  1210. package/dist/esm/components/resources/skeleton/WizardStep.d.ts.map +1 -1
  1211. package/dist/esm/components/resources/skeleton/WizardStep.js +2 -1
  1212. package/dist/esm/components/resources/skeleton/WizardStep.js.map +1 -1
  1213. package/dist/esm/components/resources/skeleton/WizardStepFieldsContext.d.ts.map +1 -1
  1214. package/dist/esm/components/resources/skeleton/WizardStepFieldsContext.js.map +1 -1
  1215. package/dist/esm/components/resources/skeleton/section-consolidation.shared.d.ts.map +1 -1
  1216. package/dist/esm/components/resources/skeleton/section-consolidation.shared.js.map +1 -1
  1217. package/dist/esm/components/resources/skeleton/section-consolidation.utils.d.ts.map +1 -1
  1218. package/dist/esm/components/resources/skeleton/section-consolidation.utils.js.map +1 -1
  1219. package/dist/esm/components/resources/useInlineSearch.d.ts.map +1 -1
  1220. package/dist/esm/components/resources/useInlineSearch.js.map +1 -1
  1221. package/dist/esm/components/resources/useLongPress.d.ts.map +1 -1
  1222. package/dist/esm/components/resources/useLongPress.js.map +1 -1
  1223. package/dist/esm/components/resources-fields/_presets/resource-reference/ResourceFieldDisplayPreset_ResourceReference_Default.d.ts.map +1 -1
  1224. package/dist/esm/components/resources-fields/_presets/resource-reference/ResourceFieldDisplayPreset_ResourceReference_Default.js +61 -15
  1225. package/dist/esm/components/resources-fields/_presets/resource-reference/ResourceFieldDisplayPreset_ResourceReference_Default.js.map +1 -1
  1226. package/dist/esm/components/resources-fields/_presets/resource-reference/ResourceFieldEditPreset_ResourceReference_Default.d.ts.map +1 -1
  1227. package/dist/esm/components/resources-fields/_presets/resource-reference/ResourceFieldEditPreset_ResourceReference_Default.js.map +1 -1
  1228. package/dist/esm/components/resources-fields/_presets/resource-reference/ResourceFieldEditPreset_ResourceReference_Default.labels.d.ts.map +1 -1
  1229. package/dist/esm/components/resources-fields/_presets/resource-reference/ResourceFieldEditPreset_ResourceReference_Default.labels.js.map +1 -1
  1230. package/dist/esm/components/resources-fields/_presets/resource-reference/ResourceFieldEditPreset_ResourceReference_Search.d.ts.map +1 -1
  1231. package/dist/esm/components/resources-fields/_presets/resource-reference/ResourceFieldEditPreset_ResourceReference_Search.js.map +1 -1
  1232. package/dist/esm/components/resources-fields/resource-reference/ResourceFieldDisplay_ResourceReference.d.ts.map +1 -1
  1233. package/dist/esm/components/resources-fields/resource-reference/ResourceFieldDisplay_ResourceReference.js.map +1 -1
  1234. package/dist/esm/components/resources-fields/resource-reference/ResourceFieldEdit_ResourceReference.d.ts.map +1 -1
  1235. package/dist/esm/components/resources-fields/resource-reference/ResourceFieldEdit_ResourceReference.js.map +1 -1
  1236. package/dist/esm/components/resources-fields/resource-reference/resource-reference.shared.utils.d.ts +24 -2
  1237. package/dist/esm/components/resources-fields/resource-reference/resource-reference.shared.utils.d.ts.map +1 -1
  1238. package/dist/esm/components/resources-fields/resource-reference/resource-reference.shared.utils.js +69 -1
  1239. package/dist/esm/components/resources-fields/resource-reference/resource-reference.shared.utils.js.map +1 -1
  1240. package/dist/esm/components/resources-fields/resource-reference/useResourceSearch.d.ts.map +1 -1
  1241. package/dist/esm/components/resources-fields/resource-reference/useResourceSearch.js +18 -19
  1242. package/dist/esm/components/resources-fields/resource-reference/useResourceSearch.js.map +1 -1
  1243. package/dist/esm/components/sections/ContentSectionContainer.d.ts.map +1 -1
  1244. package/dist/esm/components/sections/ContentSectionContainer.js +5 -4
  1245. package/dist/esm/components/sections/ContentSectionContainer.js.map +1 -1
  1246. package/dist/esm/components/sections/ContentSectionContainer.labels.d.ts.map +1 -1
  1247. package/dist/esm/components/sections/ContentSectionContainer.labels.js.map +1 -1
  1248. package/dist/esm/components/sections/accordion.d.ts.map +1 -1
  1249. package/dist/esm/components/sections/accordion.js.map +1 -1
  1250. package/dist/esm/components/sections/card.d.ts.map +1 -1
  1251. package/dist/esm/components/sections/card.js.map +1 -1
  1252. package/dist/esm/components/sections/collapsible.d.ts.map +1 -1
  1253. package/dist/esm/components/sections/collapsible.js.map +1 -1
  1254. package/dist/esm/components/sections/content-section.d.ts.map +1 -1
  1255. package/dist/esm/components/sections/content-section.js.map +1 -1
  1256. package/dist/esm/components/sections/pagination.d.ts.map +1 -1
  1257. package/dist/esm/components/sections/pagination.js.map +1 -1
  1258. package/dist/esm/components/sections/section-grouping.shared.d.ts.map +1 -1
  1259. package/dist/esm/components/sections/section-grouping.shared.js.map +1 -1
  1260. package/dist/esm/components/sections/stacked-layout.d.ts.map +1 -1
  1261. package/dist/esm/components/sections/stacked-layout.js.map +1 -1
  1262. package/dist/esm/components/sections/stepper.d.ts +5 -0
  1263. package/dist/esm/components/sections/stepper.d.ts.map +1 -1
  1264. package/dist/esm/components/sections/stepper.js.map +1 -1
  1265. package/dist/esm/components/sections/surface.d.ts.map +1 -1
  1266. package/dist/esm/components/sections/surface.js +12 -3
  1267. package/dist/esm/components/sections/surface.js.map +1 -1
  1268. package/dist/esm/components/sections/table.d.ts.map +1 -1
  1269. package/dist/esm/components/sections/table.js.map +1 -1
  1270. package/dist/esm/components/sections/tabs.d.ts.map +1 -1
  1271. package/dist/esm/components/sections/tabs.js.map +1 -1
  1272. package/dist/esm/components/settings/AppPage_AgentWorkOverrideRateSettings.d.ts +43 -0
  1273. package/dist/esm/components/settings/AppPage_AgentWorkOverrideRateSettings.d.ts.map +1 -0
  1274. package/dist/esm/components/settings/AppPage_AgentWorkOverrideRateSettings.js +129 -0
  1275. package/dist/esm/components/settings/AppPage_AgentWorkOverrideRateSettings.js.map +1 -0
  1276. package/dist/esm/components/settings/AppPage_AgentWorkOverrideRateSettings.labels.d.ts +3 -0
  1277. package/dist/esm/components/settings/AppPage_AgentWorkOverrideRateSettings.labels.d.ts.map +1 -0
  1278. package/dist/esm/components/settings/AppPage_AgentWorkOverrideRateSettings.labels.js +34 -0
  1279. package/dist/esm/components/settings/AppPage_AgentWorkOverrideRateSettings.labels.js.map +1 -0
  1280. package/dist/esm/components/settings/AppPage_AppearanceSettings.d.ts.map +1 -1
  1281. package/dist/esm/components/settings/AppPage_AppearanceSettings.js +9 -11
  1282. package/dist/esm/components/settings/AppPage_AppearanceSettings.js.map +1 -1
  1283. package/dist/esm/components/settings/AppPage_AppearanceSettings.labels.d.ts.map +1 -1
  1284. package/dist/esm/components/settings/AppPage_AppearanceSettings.labels.js +3 -2
  1285. package/dist/esm/components/settings/AppPage_AppearanceSettings.labels.js.map +1 -1
  1286. package/dist/esm/components/settings/AppPage_BillingSettings.d.ts +4 -2
  1287. package/dist/esm/components/settings/AppPage_BillingSettings.d.ts.map +1 -1
  1288. package/dist/esm/components/settings/AppPage_BillingSettings.js +21 -3
  1289. package/dist/esm/components/settings/AppPage_BillingSettings.js.map +1 -1
  1290. package/dist/esm/components/settings/AppPage_BillingSettings.labels.d.ts.map +1 -1
  1291. package/dist/esm/components/settings/AppPage_BillingSettings.labels.js +5 -10
  1292. package/dist/esm/components/settings/AppPage_BillingSettings.labels.js.map +1 -1
  1293. package/dist/esm/components/settings/AppPage_ConnectedAccountsSettings.d.ts +58 -0
  1294. package/dist/esm/components/settings/AppPage_ConnectedAccountsSettings.d.ts.map +1 -1
  1295. package/dist/esm/components/settings/AppPage_ConnectedAccountsSettings.js +243 -40
  1296. package/dist/esm/components/settings/AppPage_ConnectedAccountsSettings.js.map +1 -1
  1297. package/dist/esm/components/settings/AppPage_ConnectedAccountsSettings.labels.d.ts.map +1 -1
  1298. package/dist/esm/components/settings/AppPage_ConnectedAccountsSettings.labels.js +67 -6
  1299. package/dist/esm/components/settings/AppPage_ConnectedAccountsSettings.labels.js.map +1 -1
  1300. package/dist/esm/components/settings/AppPage_InvitationsSettings.d.ts.map +1 -1
  1301. package/dist/esm/components/settings/AppPage_InvitationsSettings.js +19 -11
  1302. package/dist/esm/components/settings/AppPage_InvitationsSettings.js.map +1 -1
  1303. package/dist/esm/components/settings/AppPage_InvitationsSettings.labels.d.ts.map +1 -1
  1304. package/dist/esm/components/settings/AppPage_InvitationsSettings.labels.js +4 -2
  1305. package/dist/esm/components/settings/AppPage_InvitationsSettings.labels.js.map +1 -1
  1306. package/dist/esm/components/settings/SettingsHub.d.ts.map +1 -1
  1307. package/dist/esm/components/settings/SettingsHub.js +3 -0
  1308. package/dist/esm/components/settings/SettingsHub.js.map +1 -1
  1309. package/dist/esm/components/settings/SettingsHub.labels.d.ts.map +1 -1
  1310. package/dist/esm/components/settings/SettingsHub.labels.js.map +1 -1
  1311. package/dist/esm/components/settings/SettingsResourceOperationPanel.d.ts.map +1 -1
  1312. package/dist/esm/components/settings/SettingsResourceOperationPanel.js +16 -1
  1313. package/dist/esm/components/settings/SettingsResourceOperationPanel.js.map +1 -1
  1314. package/dist/esm/components/settings/SettingsSectionNavigationHost.d.ts.map +1 -1
  1315. package/dist/esm/components/settings/SettingsSectionNavigationHost.js.map +1 -1
  1316. package/dist/esm/components/settings/useOwnerProviderConnections.d.ts +59 -0
  1317. package/dist/esm/components/settings/useOwnerProviderConnections.d.ts.map +1 -0
  1318. package/dist/esm/components/settings/useOwnerProviderConnections.js +136 -0
  1319. package/dist/esm/components/settings/useOwnerProviderConnections.js.map +1 -0
  1320. package/dist/esm/components/typography/heading.d.ts.map +1 -1
  1321. package/dist/esm/components/typography/heading.js.map +1 -1
  1322. package/dist/esm/components/typography/label.d.ts.map +1 -1
  1323. package/dist/esm/components/typography/label.js.map +1 -1
  1324. package/dist/esm/components/typography/link.d.ts.map +1 -1
  1325. package/dist/esm/components/typography/link.js.map +1 -1
  1326. package/dist/esm/components/typography/text.d.ts.map +1 -1
  1327. package/dist/esm/components/typography/text.js.map +1 -1
  1328. package/dist/esm/components/typography/truncated-text.d.ts.map +1 -1
  1329. package/dist/esm/components/typography/truncated-text.js.map +1 -1
  1330. package/dist/esm/components/views/ViewLayout_Header.d.ts.map +1 -1
  1331. package/dist/esm/components/views/ViewLayout_Header.js.map +1 -1
  1332. package/dist/esm/components/views/ViewNotFound.d.ts.map +1 -1
  1333. package/dist/esm/components/views/ViewNotFound.js.map +1 -1
  1334. package/dist/esm/components/views/ViewNotFound.labels.d.ts.map +1 -1
  1335. package/dist/esm/components/views/ViewNotFound.labels.js.map +1 -1
  1336. package/dist/esm/components/views/chart-view/ChartEmptyState.d.ts.map +1 -1
  1337. package/dist/esm/components/views/chart-view/ChartEmptyState.js.map +1 -1
  1338. package/dist/esm/components/views/chart-view/ChartErrorState.d.ts.map +1 -1
  1339. package/dist/esm/components/views/chart-view/ChartErrorState.js.map +1 -1
  1340. package/dist/esm/components/views/chart-view/ChartLoadingSkeleton.d.ts.map +1 -1
  1341. package/dist/esm/components/views/chart-view/ChartLoadingSkeleton.js.map +1 -1
  1342. package/dist/esm/components/views/chart-view/ChartView.d.ts.map +1 -1
  1343. package/dist/esm/components/views/chart-view/ChartView.js.map +1 -1
  1344. package/dist/esm/components/views/chart-view/ChartView.labels.d.ts.map +1 -1
  1345. package/dist/esm/components/views/chart-view/ChartView.labels.js.map +1 -1
  1346. package/dist/esm/components/views/chart-view/ChartView.lazy.d.ts.map +1 -1
  1347. package/dist/esm/components/views/chart-view/ChartView.lazy.js.map +1 -1
  1348. package/dist/esm/components/views/chart-view/ChartWidget.d.ts.map +1 -1
  1349. package/dist/esm/components/views/chart-view/ChartWidget.js.map +1 -1
  1350. package/dist/esm/components/views/chart-view/ChartWidget.labels.d.ts.map +1 -1
  1351. package/dist/esm/components/views/chart-view/ChartWidget.labels.js.map +1 -1
  1352. package/dist/esm/components/views/chart-view/WildoEChart.d.ts.map +1 -1
  1353. package/dist/esm/components/views/chart-view/WildoEChart.js.map +1 -1
  1354. package/dist/esm/components/views/chart-view/chart-export.utils.d.ts.map +1 -1
  1355. package/dist/esm/components/views/chart-view/chart-export.utils.js.map +1 -1
  1356. package/dist/esm/components/views/chart-view/chart-runtime.utils.d.ts.map +1 -1
  1357. package/dist/esm/components/views/chart-view/chart-runtime.utils.js.map +1 -1
  1358. package/dist/esm/components/views/chart-view/chart-theme-bridge.d.ts.map +1 -1
  1359. package/dist/esm/components/views/chart-view/chart-theme-bridge.js.map +1 -1
  1360. package/dist/esm/components/views/chart-view/chart-view.utils.d.ts +5 -0
  1361. package/dist/esm/components/views/chart-view/chart-view.utils.d.ts.map +1 -1
  1362. package/dist/esm/components/views/chart-view/chart-view.utils.js +5 -0
  1363. package/dist/esm/components/views/chart-view/chart-view.utils.js.map +1 -1
  1364. package/dist/esm/components/views/chart-view/dev/ChartView.example.d.ts.map +1 -1
  1365. package/dist/esm/components/views/chart-view/dev/ChartView.example.js.map +1 -1
  1366. package/dist/esm/components/views/chart-view/echarts-setup.d.ts.map +1 -1
  1367. package/dist/esm/components/views/chart-view/echarts-setup.js.map +1 -1
  1368. package/dist/esm/components/views/chart-view/enum-color-bridge.d.ts.map +1 -1
  1369. package/dist/esm/components/views/chart-view/enum-color-bridge.js.map +1 -1
  1370. package/dist/esm/components/views/chart-view/option-builder/builder-utils.d.ts.map +1 -1
  1371. package/dist/esm/components/views/chart-view/option-builder/builder-utils.js.map +1 -1
  1372. package/dist/esm/components/views/chart-view/option-builder/builders/bar-family.builder.d.ts.map +1 -1
  1373. package/dist/esm/components/views/chart-view/option-builder/builders/bar-family.builder.js.map +1 -1
  1374. package/dist/esm/components/views/chart-view/option-builder/builders/composed.builder.d.ts.map +1 -1
  1375. package/dist/esm/components/views/chart-view/option-builder/builders/composed.builder.js.map +1 -1
  1376. package/dist/esm/components/views/chart-view/option-builder/builders/funnel.builder.d.ts.map +1 -1
  1377. package/dist/esm/components/views/chart-view/option-builder/builders/funnel.builder.js.map +1 -1
  1378. package/dist/esm/components/views/chart-view/option-builder/builders/gauge.builder.d.ts.map +1 -1
  1379. package/dist/esm/components/views/chart-view/option-builder/builders/gauge.builder.js.map +1 -1
  1380. package/dist/esm/components/views/chart-view/option-builder/builders/heatmap.builder.d.ts.map +1 -1
  1381. package/dist/esm/components/views/chart-view/option-builder/builders/heatmap.builder.js.map +1 -1
  1382. package/dist/esm/components/views/chart-view/option-builder/builders/hierarchical-family.builder.d.ts.map +1 -1
  1383. package/dist/esm/components/views/chart-view/option-builder/builders/hierarchical-family.builder.js.map +1 -1
  1384. package/dist/esm/components/views/chart-view/option-builder/builders/line-family.builder.d.ts.map +1 -1
  1385. package/dist/esm/components/views/chart-view/option-builder/builders/line-family.builder.js.map +1 -1
  1386. package/dist/esm/components/views/chart-view/option-builder/builders/parallel.builder.d.ts.map +1 -1
  1387. package/dist/esm/components/views/chart-view/option-builder/builders/parallel.builder.js.map +1 -1
  1388. package/dist/esm/components/views/chart-view/option-builder/builders/pie-family.builder.d.ts.map +1 -1
  1389. package/dist/esm/components/views/chart-view/option-builder/builders/pie-family.builder.js.map +1 -1
  1390. package/dist/esm/components/views/chart-view/option-builder/builders/radar.builder.d.ts.map +1 -1
  1391. package/dist/esm/components/views/chart-view/option-builder/builders/radar.builder.js.map +1 -1
  1392. package/dist/esm/components/views/chart-view/option-builder/builders/sankey.builder.d.ts.map +1 -1
  1393. package/dist/esm/components/views/chart-view/option-builder/builders/sankey.builder.js.map +1 -1
  1394. package/dist/esm/components/views/chart-view/option-builder/builders/scatter-family.builder.d.ts.map +1 -1
  1395. package/dist/esm/components/views/chart-view/option-builder/builders/scatter-family.builder.js.map +1 -1
  1396. package/dist/esm/components/views/chart-view/option-builder/builders/statistical-family.builder.d.ts.map +1 -1
  1397. package/dist/esm/components/views/chart-view/option-builder/builders/statistical-family.builder.js.map +1 -1
  1398. package/dist/esm/components/views/chart-view/option-builder/chart-type-builder.interface.d.ts.map +1 -1
  1399. package/dist/esm/components/views/chart-view/option-builder/chart-type-builder.interface.js.map +1 -1
  1400. package/dist/esm/components/views/chart-view/option-builder/echarts-option-builder.d.ts.map +1 -1
  1401. package/dist/esm/components/views/chart-view/option-builder/echarts-option-builder.js.map +1 -1
  1402. package/dist/esm/components/views/chart-view/useResourceChartData.d.ts +50 -0
  1403. package/dist/esm/components/views/chart-view/useResourceChartData.d.ts.map +1 -0
  1404. package/dist/esm/components/views/chart-view/useResourceChartData.js +72 -0
  1405. package/dist/esm/components/views/chart-view/useResourceChartData.js.map +1 -0
  1406. package/dist/esm/components/views/composite-view/CompositeLayout.d.ts.map +1 -1
  1407. package/dist/esm/components/views/composite-view/CompositeLayout.js +2 -1
  1408. package/dist/esm/components/views/composite-view/CompositeLayout.js.map +1 -1
  1409. package/dist/esm/components/views/composite-view/CompositeView.d.ts.map +1 -1
  1410. package/dist/esm/components/views/composite-view/CompositeView.js.map +1 -1
  1411. package/dist/esm/components/views/composite-view/CompositeViewContext.d.ts.map +1 -1
  1412. package/dist/esm/components/views/composite-view/CompositeViewContext.js.map +1 -1
  1413. package/dist/esm/components/views/composite-view/useCompositeResourceOperationContextBuilder.d.ts.map +1 -1
  1414. package/dist/esm/components/views/composite-view/useCompositeResourceOperationContextBuilder.js.map +1 -1
  1415. package/dist/esm/components/views/composite-view/useHostRecordDerivedParentContext.d.ts.map +1 -1
  1416. package/dist/esm/components/views/composite-view/useHostRecordDerivedParentContext.js.map +1 -1
  1417. package/dist/esm/components/views/execution-view/ExecutionView.d.ts.map +1 -1
  1418. package/dist/esm/components/views/execution-view/ExecutionView.js.map +1 -1
  1419. package/dist/esm/components/views/execution-view/ExecutionView.labels.d.ts.map +1 -1
  1420. package/dist/esm/components/views/execution-view/ExecutionView.labels.js.map +1 -1
  1421. package/dist/esm/components/views/flows-actors-view/FlowsActorsView.d.ts.map +1 -1
  1422. package/dist/esm/components/views/flows-actors-view/FlowsActorsView.js.map +1 -1
  1423. package/dist/esm/components/views/flows-actors-view/FlowsActorsView.labels.d.ts.map +1 -1
  1424. package/dist/esm/components/views/flows-actors-view/FlowsActorsView.labels.js.map +1 -1
  1425. package/dist/esm/components/views/full-custom-view/FullCustomView.d.ts.map +1 -1
  1426. package/dist/esm/components/views/full-custom-view/FullCustomView.js.map +1 -1
  1427. package/dist/esm/components/views/onboarding-view/OnboardingView.d.ts.map +1 -1
  1428. package/dist/esm/components/views/onboarding-view/OnboardingView.js.map +1 -1
  1429. package/dist/esm/components/views/onboarding-view/OnboardingView.labels.d.ts.map +1 -1
  1430. package/dist/esm/components/views/onboarding-view/OnboardingView.labels.js.map +1 -1
  1431. package/dist/esm/components/views/onboarding-view/onboarding-view.utils.d.ts.map +1 -1
  1432. package/dist/esm/components/views/onboarding-view/onboarding-view.utils.js.map +1 -1
  1433. package/dist/esm/core/app-shell/AppShellBuildingBlocks.d.ts +89 -0
  1434. package/dist/esm/core/app-shell/AppShellBuildingBlocks.d.ts.map +1 -0
  1435. package/dist/esm/core/app-shell/AppShellBuildingBlocks.js +190 -0
  1436. package/dist/esm/core/app-shell/AppShellBuildingBlocks.js.map +1 -0
  1437. package/dist/esm/core/app-shell/PortalContainerContext.d.ts +5 -2
  1438. package/dist/esm/core/app-shell/PortalContainerContext.d.ts.map +1 -1
  1439. package/dist/esm/core/app-shell/PortalContainerContext.js +5 -2
  1440. package/dist/esm/core/app-shell/PortalContainerContext.js.map +1 -1
  1441. package/dist/esm/core/app-shell/app-shell.schemas.d.ts +18 -9
  1442. package/dist/esm/core/app-shell/app-shell.schemas.d.ts.map +1 -1
  1443. package/dist/esm/core/app-shell/app-shell.schemas.js +1 -0
  1444. package/dist/esm/core/app-shell/app-shell.schemas.js.map +1 -1
  1445. package/dist/esm/core/app-shell/app-shell.utils.d.ts.map +1 -1
  1446. package/dist/esm/core/app-shell/app-shell.utils.js.map +1 -1
  1447. package/dist/esm/core/app-shell/hosted-components.utils.d.ts.map +1 -1
  1448. package/dist/esm/core/app-shell/hosted-components.utils.js.map +1 -1
  1449. package/dist/esm/core/app-shell/useAppShellLayout.d.ts +10 -0
  1450. package/dist/esm/core/app-shell/useAppShellLayout.d.ts.map +1 -1
  1451. package/dist/esm/core/app-shell/useAppShellLayout.js +28 -5
  1452. package/dist/esm/core/app-shell/useAppShellLayout.js.map +1 -1
  1453. package/dist/esm/core/app-shell/usePublicShellLayout.d.ts.map +1 -1
  1454. package/dist/esm/core/app-shell/usePublicShellLayout.js +38 -0
  1455. package/dist/esm/core/app-shell/usePublicShellLayout.js.map +1 -1
  1456. package/dist/esm/core/automated-layout/automated-layout.frontend.schemas.d.ts.map +1 -1
  1457. package/dist/esm/core/automated-layout/automated-layout.frontend.schemas.js.map +1 -1
  1458. package/dist/esm/core/automated-layout/automated-layout.frontend.utils.d.ts +15 -1
  1459. package/dist/esm/core/automated-layout/automated-layout.frontend.utils.d.ts.map +1 -1
  1460. package/dist/esm/core/automated-layout/automated-layout.frontend.utils.js +47 -13
  1461. package/dist/esm/core/automated-layout/automated-layout.frontend.utils.js.map +1 -1
  1462. package/dist/esm/core/automated-layout/composite-value-defaults.frontend.utils.d.ts.map +1 -1
  1463. package/dist/esm/core/automated-layout/composite-value-defaults.frontend.utils.js.map +1 -1
  1464. package/dist/esm/core/automated-layout/default-layout-generator.frontend.utils.d.ts.map +1 -1
  1465. package/dist/esm/core/automated-layout/default-layout-generator.frontend.utils.js.map +1 -1
  1466. package/dist/esm/core/billing/BillingContext.d.ts +25 -2
  1467. package/dist/esm/core/billing/BillingContext.d.ts.map +1 -1
  1468. package/dist/esm/core/billing/BillingContext.js +16 -25
  1469. package/dist/esm/core/billing/BillingContext.js.map +1 -1
  1470. package/dist/esm/core/billing/BillingErrorNotifier.d.ts.map +1 -1
  1471. package/dist/esm/core/billing/BillingErrorNotifier.js.map +1 -1
  1472. package/dist/esm/core/billing/billing-launcher.d.ts.map +1 -1
  1473. package/dist/esm/core/billing/billing-launcher.js.map +1 -1
  1474. package/dist/esm/core/billing/billing-provider-display.frontend.utils.d.ts +11 -3
  1475. package/dist/esm/core/billing/billing-provider-display.frontend.utils.d.ts.map +1 -1
  1476. package/dist/esm/core/billing/billing-provider-display.frontend.utils.js +14 -8
  1477. package/dist/esm/core/billing/billing-provider-display.frontend.utils.js.map +1 -1
  1478. package/dist/esm/core/billing/useBilling.d.ts.map +1 -1
  1479. package/dist/esm/core/billing/useBilling.js.map +1 -1
  1480. package/dist/esm/core/billing/useBillingAction.d.ts.map +1 -1
  1481. package/dist/esm/core/billing/useBillingAction.js.map +1 -1
  1482. package/dist/esm/core/billing/useBillingPlanChange.d.ts.map +1 -1
  1483. package/dist/esm/core/billing/useBillingPlanChange.js +2 -0
  1484. package/dist/esm/core/billing/useBillingPlanChange.js.map +1 -1
  1485. package/dist/esm/core/billing/useSafeBillingActionExecutor.d.ts.map +1 -1
  1486. package/dist/esm/core/billing/useSafeBillingActionExecutor.js.map +1 -1
  1487. package/dist/esm/core/branding/useBrandIdentity.d.ts.map +1 -1
  1488. package/dist/esm/core/branding/useBrandIdentity.js.map +1 -1
  1489. package/dist/esm/core/branding/useBrandPresentation.d.ts.map +1 -1
  1490. package/dist/esm/core/branding/useBrandPresentation.js.map +1 -1
  1491. package/dist/esm/core/commons/devices.frontend.schemas.d.ts.map +1 -1
  1492. package/dist/esm/core/commons/devices.frontend.schemas.js.map +1 -1
  1493. package/dist/esm/core/commons/local-storage.frontend.schemas.d.ts.map +1 -1
  1494. package/dist/esm/core/commons/local-storage.frontend.schemas.js.map +1 -1
  1495. package/dist/esm/core/commons/window-event.frontend.schemas.d.ts.map +1 -1
  1496. package/dist/esm/core/commons/window-event.frontend.schemas.js.map +1 -1
  1497. package/dist/esm/core/companion/companion-exports.frontend.definitions.d.ts.map +1 -1
  1498. package/dist/esm/core/companion/companion-exports.frontend.definitions.js.map +1 -1
  1499. package/dist/esm/core/components-registry/ComponentNotInjected.d.ts.map +1 -1
  1500. package/dist/esm/core/components-registry/ComponentNotInjected.js.map +1 -1
  1501. package/dist/esm/core/components-registry/assert-registry-completeness.frontend.helper.d.ts.map +1 -1
  1502. package/dist/esm/core/components-registry/assert-registry-completeness.frontend.helper.js +1 -0
  1503. package/dist/esm/core/components-registry/assert-registry-completeness.frontend.helper.js.map +1 -1
  1504. package/dist/esm/core/components-registry/component-registry-loader.frontend.service.d.ts.map +1 -1
  1505. package/dist/esm/core/components-registry/component-registry-loader.frontend.service.js.map +1 -1
  1506. package/dist/esm/core/components-registry/component-registry.frontend.schemas.d.ts.map +1 -1
  1507. package/dist/esm/core/components-registry/component-registry.frontend.schemas.js.map +1 -1
  1508. package/dist/esm/core/components-registry/component-registry.frontend.service.d.ts.map +1 -1
  1509. package/dist/esm/core/components-registry/component-registry.frontend.service.js.map +1 -1
  1510. package/dist/esm/core/components-registry/component-resolver.frontend.helper.d.ts.map +1 -1
  1511. package/dist/esm/core/components-registry/component-resolver.frontend.helper.js.map +1 -1
  1512. package/dist/esm/core/components-registry/provider-component-registry.frontend.service.d.ts +29 -229
  1513. package/dist/esm/core/components-registry/provider-component-registry.frontend.service.d.ts.map +1 -1
  1514. package/dist/esm/core/components-registry/provider-component-registry.frontend.service.js +29 -327
  1515. package/dist/esm/core/components-registry/provider-component-registry.frontend.service.js.map +1 -1
  1516. package/dist/esm/core/components-registry/register-framework-layouts.d.ts.map +1 -1
  1517. package/dist/esm/core/components-registry/register-framework-layouts.js.map +1 -1
  1518. package/dist/esm/core/components-registry/useProviderComponent.frontend.hooks.d.ts +17 -27
  1519. package/dist/esm/core/components-registry/useProviderComponent.frontend.hooks.d.ts.map +1 -1
  1520. package/dist/esm/core/components-registry/useProviderComponent.frontend.hooks.js +28 -48
  1521. package/dist/esm/core/components-registry/useProviderComponent.frontend.hooks.js.map +1 -1
  1522. package/dist/esm/core/config/app-configuration-frontend.schemas.d.ts +21 -11
  1523. package/dist/esm/core/config/app-configuration-frontend.schemas.d.ts.map +1 -1
  1524. package/dist/esm/core/config/app-configuration-frontend.schemas.js +4 -4
  1525. package/dist/esm/core/config/app-configuration-frontend.schemas.js.map +1 -1
  1526. package/dist/esm/core/config/app-level-components.frontend.schemas.d.ts +17 -0
  1527. package/dist/esm/core/config/app-level-components.frontend.schemas.d.ts.map +1 -1
  1528. package/dist/esm/core/config/app-level-components.frontend.schemas.js +17 -0
  1529. package/dist/esm/core/config/app-level-components.frontend.schemas.js.map +1 -1
  1530. package/dist/esm/core/config/chart-view.frontend.schemas.d.ts +10 -10
  1531. package/dist/esm/core/config/chart-view.frontend.schemas.d.ts.map +1 -1
  1532. package/dist/esm/core/config/chart-view.frontend.schemas.js.map +1 -1
  1533. package/dist/esm/core/config/composite-view.schemas.d.ts +4 -4
  1534. package/dist/esm/core/config/composite-view.schemas.d.ts.map +1 -1
  1535. package/dist/esm/core/config/composite-view.schemas.js.map +1 -1
  1536. package/dist/esm/core/config/config-merge-utilities.d.ts.map +1 -1
  1537. package/dist/esm/core/config/config-merge-utilities.js.map +1 -1
  1538. package/dist/esm/core/config/engine-settings-destinations.d.ts.map +1 -1
  1539. package/dist/esm/core/config/engine-settings-destinations.js +221 -6
  1540. package/dist/esm/core/config/engine-settings-destinations.js.map +1 -1
  1541. package/dist/esm/core/config/execution-view.schemas.d.ts.map +1 -1
  1542. package/dist/esm/core/config/execution-view.schemas.js.map +1 -1
  1543. package/dist/esm/core/config/flows-actors-view.schemas.d.ts.map +1 -1
  1544. package/dist/esm/core/config/flows-actors-view.schemas.js.map +1 -1
  1545. package/dist/esm/core/config/full-custom-view.schemas.d.ts.map +1 -1
  1546. package/dist/esm/core/config/full-custom-view.schemas.js.map +1 -1
  1547. package/dist/esm/core/config/inserted-view-launcher.schemas.d.ts.map +1 -1
  1548. package/dist/esm/core/config/inserted-view-launcher.schemas.js.map +1 -1
  1549. package/dist/esm/core/config/inserted-view.frontend.schemas.d.ts.map +1 -1
  1550. package/dist/esm/core/config/inserted-view.frontend.schemas.js.map +1 -1
  1551. package/dist/esm/core/config/launcher-items.frontend.schemas.d.ts +8 -0
  1552. package/dist/esm/core/config/launcher-items.frontend.schemas.d.ts.map +1 -1
  1553. package/dist/esm/core/config/launcher-items.frontend.schemas.js +1 -0
  1554. package/dist/esm/core/config/launcher-items.frontend.schemas.js.map +1 -1
  1555. package/dist/esm/core/config/onboarding-view.frontend.schemas.d.ts.map +1 -1
  1556. package/dist/esm/core/config/onboarding-view.frontend.schemas.js.map +1 -1
  1557. package/dist/esm/core/config/resource-owned-view-resolution.frontend.utils.d.ts.map +1 -1
  1558. package/dist/esm/core/config/resource-owned-view-resolution.frontend.utils.js.map +1 -1
  1559. package/dist/esm/core/config/settings-hub-gating.frontend.utils.d.ts.map +1 -1
  1560. package/dist/esm/core/config/settings-hub-gating.frontend.utils.js.map +1 -1
  1561. package/dist/esm/core/config/settings-hub-presentation.frontend.utils.d.ts.map +1 -1
  1562. package/dist/esm/core/config/settings-hub-presentation.frontend.utils.js.map +1 -1
  1563. package/dist/esm/core/config/settings-hub.frontend.schemas.d.ts +10 -1
  1564. package/dist/esm/core/config/settings-hub.frontend.schemas.d.ts.map +1 -1
  1565. package/dist/esm/core/config/settings-hub.frontend.schemas.js +9 -0
  1566. package/dist/esm/core/config/settings-hub.frontend.schemas.js.map +1 -1
  1567. package/dist/esm/core/config/useSettingsHubConfig.d.ts.map +1 -1
  1568. package/dist/esm/core/config/useSettingsHubConfig.js.map +1 -1
  1569. package/dist/esm/core/config/useVisibleSettingsHubConfig.d.ts.map +1 -1
  1570. package/dist/esm/core/config/useVisibleSettingsHubConfig.js.map +1 -1
  1571. package/dist/esm/core/config/verify-feature-references.frontend.d.ts.map +1 -1
  1572. package/dist/esm/core/config/verify-feature-references.frontend.js.map +1 -1
  1573. package/dist/esm/core/config/verify-launcher-content.d.ts.map +1 -1
  1574. package/dist/esm/core/config/verify-launcher-content.js +30 -19
  1575. package/dist/esm/core/config/verify-launcher-content.js.map +1 -1
  1576. package/dist/esm/core/config/verify-settings-hub-content.d.ts.map +1 -1
  1577. package/dist/esm/core/config/verify-settings-hub-content.js.map +1 -1
  1578. package/dist/esm/core/config/view-label-declaration.schemas.d.ts.map +1 -1
  1579. package/dist/esm/core/config/view-label-declaration.schemas.js.map +1 -1
  1580. package/dist/esm/core/config/views-frontend.schemas.d.ts.map +1 -1
  1581. package/dist/esm/core/config/views-frontend.schemas.js.map +1 -1
  1582. package/dist/esm/core/enums/common-enum-registry.d.ts.map +1 -1
  1583. package/dist/esm/core/enums/common-enum-registry.js.map +1 -1
  1584. package/dist/esm/core/errors/ErrorBoundary.d.ts.map +1 -1
  1585. package/dist/esm/core/errors/ErrorBoundary.js.map +1 -1
  1586. package/dist/esm/core/errors/ErrorContext.d.ts.map +1 -1
  1587. package/dist/esm/core/errors/ErrorContext.js +9 -1
  1588. package/dist/esm/core/errors/ErrorContext.js.map +1 -1
  1589. package/dist/esm/core/errors/ErrorModalContent.d.ts.map +1 -1
  1590. package/dist/esm/core/errors/ErrorModalContent.js.map +1 -1
  1591. package/dist/esm/core/errors/GlobalErrorHandler.d.ts.map +1 -1
  1592. package/dist/esm/core/errors/GlobalErrorHandler.js +5 -4
  1593. package/dist/esm/core/errors/GlobalErrorHandler.js.map +1 -1
  1594. package/dist/esm/core/errors/RouterErrorBoundary.d.ts.map +1 -1
  1595. package/dist/esm/core/errors/RouterErrorBoundary.js +1 -1
  1596. package/dist/esm/core/errors/RouterErrorBoundary.js.map +1 -1
  1597. package/dist/esm/core/errors/error-management.frontend.service.d.ts.map +1 -1
  1598. package/dist/esm/core/errors/error-management.frontend.service.js.map +1 -1
  1599. package/dist/esm/core/errors/errors-builder.frontend.services.d.ts +2 -2
  1600. package/dist/esm/core/errors/errors-builder.frontend.services.d.ts.map +1 -1
  1601. package/dist/esm/core/errors/errors-builder.frontend.services.js +4 -4
  1602. package/dist/esm/core/errors/errors-builder.frontend.services.js.map +1 -1
  1603. package/dist/esm/core/errors/errors.frontend.schemas.d.ts.map +1 -1
  1604. package/dist/esm/core/errors/errors.frontend.schemas.js.map +1 -1
  1605. package/dist/esm/core/errors/http-error-behavior.frontend.schemas.d.ts.map +1 -1
  1606. package/dist/esm/core/errors/http-error-behavior.frontend.schemas.js.map +1 -1
  1607. package/dist/esm/core/errors/useError.d.ts.map +1 -1
  1608. package/dist/esm/core/errors/useError.js.map +1 -1
  1609. package/dist/esm/core/errors/useUserFacingErrorMessage.d.ts.map +1 -1
  1610. package/dist/esm/core/errors/useUserFacingErrorMessage.js.map +1 -1
  1611. package/dist/esm/core/errors/user-facing-error-message.frontend.utils.d.ts.map +1 -1
  1612. package/dist/esm/core/errors/user-facing-error-message.frontend.utils.js +1 -1
  1613. package/dist/esm/core/errors/user-facing-error-message.frontend.utils.js.map +1 -1
  1614. package/dist/esm/core/errors/withErrorBoundary.d.ts.map +1 -1
  1615. package/dist/esm/core/errors/withErrorBoundary.js.map +1 -1
  1616. package/dist/esm/core/events/EventBusContext.d.ts.map +1 -1
  1617. package/dist/esm/core/events/EventBusContext.js.map +1 -1
  1618. package/dist/esm/core/events/NotificationContext.d.ts.map +1 -1
  1619. package/dist/esm/core/events/NotificationContext.js +23 -5
  1620. package/dist/esm/core/events/NotificationContext.js.map +1 -1
  1621. package/dist/esm/core/events/event-bus.frontend.service.d.ts.map +1 -1
  1622. package/dist/esm/core/events/event-bus.frontend.service.js.map +1 -1
  1623. package/dist/esm/core/events/events.frontend.schemas.d.ts +110 -43
  1624. package/dist/esm/core/events/events.frontend.schemas.d.ts.map +1 -1
  1625. package/dist/esm/core/events/events.frontend.schemas.js +89 -15
  1626. package/dist/esm/core/events/events.frontend.schemas.js.map +1 -1
  1627. package/dist/esm/core/events/notification-display-policy.frontend.schemas.d.ts.map +1 -1
  1628. package/dist/esm/core/events/notification-display-policy.frontend.schemas.js.map +1 -1
  1629. package/dist/esm/core/events/toast.d.ts.map +1 -1
  1630. package/dist/esm/core/events/toast.js.map +1 -1
  1631. package/dist/esm/core/events/useEventBus.d.ts.map +1 -1
  1632. package/dist/esm/core/events/useEventBus.js.map +1 -1
  1633. package/dist/esm/core/events/useNotification.d.ts.map +1 -1
  1634. package/dist/esm/core/events/useNotification.js.map +1 -1
  1635. package/dist/esm/core/execution/ExecutionDirtyMarkerScopeContext.d.ts.map +1 -1
  1636. package/dist/esm/core/execution/ExecutionDirtyMarkerScopeContext.js.map +1 -1
  1637. package/dist/esm/core/execution/ExecutionRuntimeContext.d.ts.map +1 -1
  1638. package/dist/esm/core/execution/ExecutionRuntimeContext.js.map +1 -1
  1639. package/dist/esm/core/execution/execution-anchor.utils.d.ts.map +1 -1
  1640. package/dist/esm/core/execution/execution-anchor.utils.js.map +1 -1
  1641. package/dist/esm/core/execution/execution-dirty-markers.utils.d.ts.map +1 -1
  1642. package/dist/esm/core/execution/execution-dirty-markers.utils.js.map +1 -1
  1643. package/dist/esm/core/execution/execution-failure-handling.utils.d.ts.map +1 -1
  1644. package/dist/esm/core/execution/execution-failure-handling.utils.js.map +1 -1
  1645. package/dist/esm/core/execution/execution-outcome-emission.utils.d.ts.map +1 -1
  1646. package/dist/esm/core/execution/execution-outcome-emission.utils.js.map +1 -1
  1647. package/dist/esm/core/execution/execution-participation.utils.d.ts.map +1 -1
  1648. package/dist/esm/core/execution/execution-participation.utils.js.map +1 -1
  1649. package/dist/esm/core/execution/useExecution.d.ts.map +1 -1
  1650. package/dist/esm/core/execution/useExecution.js.map +1 -1
  1651. package/dist/esm/core/execution/useExecutionDirtyBridge.d.ts.map +1 -1
  1652. package/dist/esm/core/execution/useExecutionDirtyBridge.js.map +1 -1
  1653. package/dist/esm/core/execution/useExecutionParticipationDataPrefetch.d.ts.map +1 -1
  1654. package/dist/esm/core/execution/useExecutionParticipationDataPrefetch.js.map +1 -1
  1655. package/dist/esm/core/execution/useExecutionParticipationPrefetch.d.ts.map +1 -1
  1656. package/dist/esm/core/execution/useExecutionParticipationPrefetch.js.map +1 -1
  1657. package/dist/esm/core/execution/useExecutionParticipationRMM.d.ts +2 -0
  1658. package/dist/esm/core/execution/useExecutionParticipationRMM.d.ts.map +1 -1
  1659. package/dist/esm/core/execution/useExecutionParticipationRMM.js +2 -1
  1660. package/dist/esm/core/execution/useExecutionParticipationRMM.js.map +1 -1
  1661. package/dist/esm/core/execution/useExecutionResourceOperationContextBuilder.d.ts.map +1 -1
  1662. package/dist/esm/core/execution/useExecutionResourceOperationContextBuilder.js.map +1 -1
  1663. package/dist/esm/core/execution/useExecutionResourceOperationSurface.d.ts +1 -1
  1664. package/dist/esm/core/execution/useExecutionResourceOperationSurface.d.ts.map +1 -1
  1665. package/dist/esm/core/execution/useExecutionResourceOperationSurface.js +5 -2
  1666. package/dist/esm/core/execution/useExecutionResourceOperationSurface.js.map +1 -1
  1667. package/dist/esm/core/external-providers/ConsentBasedProviderSdks.d.ts +63 -0
  1668. package/dist/esm/core/external-providers/ConsentBasedProviderSdks.d.ts.map +1 -0
  1669. package/dist/esm/core/external-providers/ConsentBasedProviderSdks.js +131 -0
  1670. package/dist/esm/core/external-providers/ConsentBasedProviderSdks.js.map +1 -0
  1671. package/dist/esm/core/external-providers/ProviderAddressLookupCombobox.d.ts +61 -0
  1672. package/dist/esm/core/external-providers/ProviderAddressLookupCombobox.d.ts.map +1 -0
  1673. package/dist/esm/core/external-providers/ProviderAddressLookupCombobox.js +178 -0
  1674. package/dist/esm/core/external-providers/ProviderAddressLookupCombobox.js.map +1 -0
  1675. package/dist/esm/core/external-providers/ProviderAddressLookupHost.d.ts +52 -0
  1676. package/dist/esm/core/external-providers/ProviderAddressLookupHost.d.ts.map +1 -0
  1677. package/dist/esm/core/external-providers/ProviderAddressLookupHost.js +144 -0
  1678. package/dist/esm/core/external-providers/ProviderAddressLookupHost.js.map +1 -0
  1679. package/dist/esm/core/external-providers/ProviderFilePickerHost.d.ts +22 -1
  1680. package/dist/esm/core/external-providers/ProviderFilePickerHost.d.ts.map +1 -1
  1681. package/dist/esm/core/external-providers/ProviderFilePickerHost.js +23 -3
  1682. package/dist/esm/core/external-providers/ProviderFilePickerHost.js.map +1 -1
  1683. package/dist/esm/core/external-providers/frontend-provider-display-label.frontend.utils.d.ts.map +1 -1
  1684. package/dist/esm/core/external-providers/frontend-provider-display-label.frontend.utils.js.map +1 -1
  1685. package/dist/esm/core/external-providers/frontend-provider-registry.frontend.service.d.ts.map +1 -1
  1686. package/dist/esm/core/external-providers/frontend-provider-registry.frontend.service.js.map +1 -1
  1687. package/dist/esm/core/external-providers/provider-address-lookup-selection.frontend.utils.d.ts +55 -0
  1688. package/dist/esm/core/external-providers/provider-address-lookup-selection.frontend.utils.d.ts.map +1 -0
  1689. package/dist/esm/core/external-providers/provider-address-lookup-selection.frontend.utils.js +65 -0
  1690. package/dist/esm/core/external-providers/provider-address-lookup-selection.frontend.utils.js.map +1 -0
  1691. package/dist/esm/core/external-providers/provider-file-selection.frontend.utils.d.ts.map +1 -1
  1692. package/dist/esm/core/external-providers/provider-file-selection.frontend.utils.js.map +1 -1
  1693. package/dist/esm/core/external-providers/provider-scope-reauthorization-offers.frontend.d.ts +63 -0
  1694. package/dist/esm/core/external-providers/provider-scope-reauthorization-offers.frontend.d.ts.map +1 -0
  1695. package/dist/esm/core/external-providers/provider-scope-reauthorization-offers.frontend.js +100 -0
  1696. package/dist/esm/core/external-providers/provider-scope-reauthorization-offers.frontend.js.map +1 -0
  1697. package/dist/esm/core/features/FeatureGate.d.ts.map +1 -1
  1698. package/dist/esm/core/features/FeatureGate.js.map +1 -1
  1699. package/dist/esm/core/features/FeatureRouteGuard.d.ts.map +1 -1
  1700. package/dist/esm/core/features/FeatureRouteGuard.js.map +1 -1
  1701. package/dist/esm/core/features/FeaturesContext.d.ts.map +1 -1
  1702. package/dist/esm/core/features/FeaturesContext.js.map +1 -1
  1703. package/dist/esm/core/features/feature-gate-surface.example.d.ts.map +1 -1
  1704. package/dist/esm/core/features/feature-gate-surface.example.js.map +1 -1
  1705. package/dist/esm/core/features/feature-unavailability.frontend.utils.d.ts.map +1 -1
  1706. package/dist/esm/core/features/feature-unavailability.frontend.utils.js.map +1 -1
  1707. package/dist/esm/core/features/useFeatureAvailability.d.ts.map +1 -1
  1708. package/dist/esm/core/features/useFeatureAvailability.js.map +1 -1
  1709. package/dist/esm/core/features/useFeatureGate.d.ts.map +1 -1
  1710. package/dist/esm/core/features/useFeatureGate.js.map +1 -1
  1711. package/dist/esm/core/features/useFeatures.d.ts.map +1 -1
  1712. package/dist/esm/core/features/useFeatures.js.map +1 -1
  1713. package/dist/esm/core/features/useOperationFeatureAvailability.d.ts.map +1 -1
  1714. package/dist/esm/core/features/useOperationFeatureAvailability.js.map +1 -1
  1715. package/dist/esm/core/flows-actors/FlowsActorsContext.d.ts +45 -7
  1716. package/dist/esm/core/flows-actors/FlowsActorsContext.d.ts.map +1 -1
  1717. package/dist/esm/core/flows-actors/FlowsActorsContext.js +112 -28
  1718. package/dist/esm/core/flows-actors/FlowsActorsContext.js.map +1 -1
  1719. package/dist/esm/core/flows-actors/useFlowsActors.d.ts.map +1 -1
  1720. package/dist/esm/core/flows-actors/useFlowsActors.js.map +1 -1
  1721. package/dist/esm/core/flows-actors/usePendingDecisions.d.ts +32 -0
  1722. package/dist/esm/core/flows-actors/usePendingDecisions.d.ts.map +1 -0
  1723. package/dist/esm/core/flows-actors/usePendingDecisions.js +91 -0
  1724. package/dist/esm/core/flows-actors/usePendingDecisions.js.map +1 -0
  1725. package/dist/esm/core/guidance/GuidanceContext.d.ts.map +1 -1
  1726. package/dist/esm/core/guidance/GuidanceContext.js.map +1 -1
  1727. package/dist/esm/core/guidance/GuidanceRenderer.d.ts.map +1 -1
  1728. package/dist/esm/core/guidance/GuidanceRenderer.js +3 -2
  1729. package/dist/esm/core/guidance/GuidanceRenderer.js.map +1 -1
  1730. package/dist/esm/core/guidance/guidance-audience.frontend.utils.d.ts.map +1 -1
  1731. package/dist/esm/core/guidance/guidance-audience.frontend.utils.js.map +1 -1
  1732. package/dist/esm/core/guidance/guidance-resource-compiler.shared.utils.d.ts.map +1 -1
  1733. package/dist/esm/core/guidance/guidance-resource-compiler.shared.utils.js.map +1 -1
  1734. package/dist/esm/core/guidance/renderers/GuidanceAnnouncement.d.ts.map +1 -1
  1735. package/dist/esm/core/guidance/renderers/GuidanceAnnouncement.js.map +1 -1
  1736. package/dist/esm/core/guidance/renderers/GuidanceAnnouncement.labels.d.ts.map +1 -1
  1737. package/dist/esm/core/guidance/renderers/GuidanceAnnouncement.labels.js.map +1 -1
  1738. package/dist/esm/core/guidance/renderers/GuidanceBadge.d.ts.map +1 -1
  1739. package/dist/esm/core/guidance/renderers/GuidanceBadge.js.map +1 -1
  1740. package/dist/esm/core/guidance/renderers/GuidanceBadge.labels.d.ts.map +1 -1
  1741. package/dist/esm/core/guidance/renderers/GuidanceBadge.labels.js.map +1 -1
  1742. package/dist/esm/core/guidance/renderers/GuidanceBanner.d.ts.map +1 -1
  1743. package/dist/esm/core/guidance/renderers/GuidanceBanner.js.map +1 -1
  1744. package/dist/esm/core/guidance/renderers/GuidanceBanner.labels.d.ts.map +1 -1
  1745. package/dist/esm/core/guidance/renderers/GuidanceBanner.labels.js.map +1 -1
  1746. package/dist/esm/core/guidance/renderers/GuidanceCard.d.ts.map +1 -1
  1747. package/dist/esm/core/guidance/renderers/GuidanceCard.js.map +1 -1
  1748. package/dist/esm/core/guidance/renderers/GuidanceCard.labels.d.ts.map +1 -1
  1749. package/dist/esm/core/guidance/renderers/GuidanceCard.labels.js.map +1 -1
  1750. package/dist/esm/core/guidance/renderers/GuidanceChecklist.d.ts.map +1 -1
  1751. package/dist/esm/core/guidance/renderers/GuidanceChecklist.js.map +1 -1
  1752. package/dist/esm/core/guidance/renderers/GuidanceChecklist.labels.d.ts.map +1 -1
  1753. package/dist/esm/core/guidance/renderers/GuidanceChecklist.labels.js.map +1 -1
  1754. package/dist/esm/core/guidance/renderers/GuidanceChecklistItem.d.ts.map +1 -1
  1755. package/dist/esm/core/guidance/renderers/GuidanceChecklistItem.js.map +1 -1
  1756. package/dist/esm/core/guidance/renderers/GuidanceChecklistItem.labels.d.ts.map +1 -1
  1757. package/dist/esm/core/guidance/renderers/GuidanceChecklistItem.labels.js.map +1 -1
  1758. package/dist/esm/core/guidance/renderers/GuidanceModal.d.ts.map +1 -1
  1759. package/dist/esm/core/guidance/renderers/GuidanceModal.js.map +1 -1
  1760. package/dist/esm/core/guidance/renderers/GuidanceModal.labels.d.ts.map +1 -1
  1761. package/dist/esm/core/guidance/renderers/GuidanceModal.labels.js.map +1 -1
  1762. package/dist/esm/core/guidance/renderers/GuidanceSurvey.d.ts.map +1 -1
  1763. package/dist/esm/core/guidance/renderers/GuidanceSurvey.js.map +1 -1
  1764. package/dist/esm/core/guidance/renderers/GuidanceSurvey.labels.d.ts.map +1 -1
  1765. package/dist/esm/core/guidance/renderers/GuidanceSurvey.labels.js.map +1 -1
  1766. package/dist/esm/core/guidance/renderers/GuidanceTooltip.d.ts.map +1 -1
  1767. package/dist/esm/core/guidance/renderers/GuidanceTooltip.js.map +1 -1
  1768. package/dist/esm/core/guidance/renderers/GuidanceTooltip.labels.d.ts.map +1 -1
  1769. package/dist/esm/core/guidance/renderers/GuidanceTooltip.labels.js.map +1 -1
  1770. package/dist/esm/core/guidance/renderers/GuidanceTour.d.ts.map +1 -1
  1771. package/dist/esm/core/guidance/renderers/GuidanceTour.js.map +1 -1
  1772. package/dist/esm/core/guidance/renderers/GuidanceTour.labels.d.ts.map +1 -1
  1773. package/dist/esm/core/guidance/renderers/GuidanceTour.labels.js.map +1 -1
  1774. package/dist/esm/core/guidance/useGuidance.d.ts.map +1 -1
  1775. package/dist/esm/core/guidance/useGuidance.js.map +1 -1
  1776. package/dist/esm/core/hotkey/DefaultHotkeyHandler.d.ts.map +1 -1
  1777. package/dist/esm/core/hotkey/DefaultHotkeyHandler.js.map +1 -1
  1778. package/dist/esm/core/hotkey/HotkeyRegistryContext.d.ts.map +1 -1
  1779. package/dist/esm/core/hotkey/HotkeyRegistryContext.js.map +1 -1
  1780. package/dist/esm/core/hotkey/HotkeyShortcutsHelpDialog.d.ts.map +1 -1
  1781. package/dist/esm/core/hotkey/HotkeyShortcutsHelpDialog.js.map +1 -1
  1782. package/dist/esm/core/hotkey/hotkey-registry.frontend.schemas.d.ts.map +1 -1
  1783. package/dist/esm/core/hotkey/hotkey-registry.frontend.schemas.js.map +1 -1
  1784. package/dist/esm/core/hotkey/merge-hotkey-emit-shortcuts.d.ts.map +1 -1
  1785. package/dist/esm/core/hotkey/merge-hotkey-emit-shortcuts.js.map +1 -1
  1786. package/dist/esm/core/hotkey/useHotkey.d.ts.map +1 -1
  1787. package/dist/esm/core/hotkey/useHotkey.js.map +1 -1
  1788. package/dist/esm/core/i18n/I18nContext.d.ts +22 -8
  1789. package/dist/esm/core/i18n/I18nContext.d.ts.map +1 -1
  1790. package/dist/esm/core/i18n/I18nContext.js +21 -9
  1791. package/dist/esm/core/i18n/I18nContext.js.map +1 -1
  1792. package/dist/esm/core/i18n/component-label-resolution.utils.d.ts +5 -3
  1793. package/dist/esm/core/i18n/component-label-resolution.utils.d.ts.map +1 -1
  1794. package/dist/esm/core/i18n/component-label-resolution.utils.js +5 -3
  1795. package/dist/esm/core/i18n/component-label-resolution.utils.js.map +1 -1
  1796. package/dist/esm/core/i18n/operation-title-resolution.utils.d.ts.map +1 -1
  1797. package/dist/esm/core/i18n/operation-title-resolution.utils.js.map +1 -1
  1798. package/dist/esm/core/i18n/regional-preference-resolution.frontend.utils.d.ts.map +1 -1
  1799. package/dist/esm/core/i18n/regional-preference-resolution.frontend.utils.js.map +1 -1
  1800. package/dist/esm/core/i18n/useI18n.d.ts +2 -1
  1801. package/dist/esm/core/i18n/useI18n.d.ts.map +1 -1
  1802. package/dist/esm/core/i18n/useI18n.js +2 -1
  1803. package/dist/esm/core/i18n/useI18n.js.map +1 -1
  1804. package/dist/esm/core/icons/IconRegistryBridge.d.ts.map +1 -1
  1805. package/dist/esm/core/icons/IconRegistryBridge.js.map +1 -1
  1806. package/dist/esm/core/icons/IconRegistryContext.d.ts.map +1 -1
  1807. package/dist/esm/core/icons/IconRegistryContext.js.map +1 -1
  1808. package/dist/esm/core/icons/icon-registry.frontend.definitions.d.ts.map +1 -1
  1809. package/dist/esm/core/icons/icon-registry.frontend.definitions.js.map +1 -1
  1810. package/dist/esm/core/icons/icon-registry.frontend.schemas.d.ts.map +1 -1
  1811. package/dist/esm/core/icons/icon-registry.frontend.schemas.js.map +1 -1
  1812. package/dist/esm/core/icons/useIconRegistry.d.ts.map +1 -1
  1813. package/dist/esm/core/icons/useIconRegistry.js.map +1 -1
  1814. package/dist/esm/core/loading/AppLoadingGate.d.ts.map +1 -1
  1815. package/dist/esm/core/loading/AppLoadingGate.js.map +1 -1
  1816. package/dist/esm/core/loading/LoadingBarrier.d.ts.map +1 -1
  1817. package/dist/esm/core/loading/LoadingBarrier.js.map +1 -1
  1818. package/dist/esm/core/loading/LoadingContext.d.ts.map +1 -1
  1819. package/dist/esm/core/loading/LoadingContext.js +7 -1
  1820. package/dist/esm/core/loading/LoadingContext.js.map +1 -1
  1821. package/dist/esm/core/loading/LoadingGate.d.ts.map +1 -1
  1822. package/dist/esm/core/loading/LoadingGate.js +19 -1
  1823. package/dist/esm/core/loading/LoadingGate.js.map +1 -1
  1824. package/dist/esm/core/loading/loading-policy.frontend.schemas.d.ts.map +1 -1
  1825. package/dist/esm/core/loading/loading-policy.frontend.schemas.js.map +1 -1
  1826. package/dist/esm/core/loading/loading-scope.frontend.utils.d.ts.map +1 -1
  1827. package/dist/esm/core/loading/loading-scope.frontend.utils.js.map +1 -1
  1828. package/dist/esm/core/loading/loading-types.frontend.schemas.d.ts.map +1 -1
  1829. package/dist/esm/core/loading/loading-types.frontend.schemas.js.map +1 -1
  1830. package/dist/esm/core/loading/resolveLoadingPolicy.d.ts.map +1 -1
  1831. package/dist/esm/core/loading/resolveLoadingPolicy.js.map +1 -1
  1832. package/dist/esm/core/loading/useAppLoading.d.ts.map +1 -1
  1833. package/dist/esm/core/loading/useAppLoading.js.map +1 -1
  1834. package/dist/esm/core/loading/useComponentLoading.d.ts.map +1 -1
  1835. package/dist/esm/core/loading/useComponentLoading.js.map +1 -1
  1836. package/dist/esm/core/loading/useEmitLoadingScope.d.ts.map +1 -1
  1837. package/dist/esm/core/loading/useEmitLoadingScope.js.map +1 -1
  1838. package/dist/esm/core/loading/useLoading.d.ts.map +1 -1
  1839. package/dist/esm/core/loading/useLoading.js.map +1 -1
  1840. package/dist/esm/core/mode/AppModeContext.d.ts.map +1 -1
  1841. package/dist/esm/core/mode/AppModeContext.js.map +1 -1
  1842. package/dist/esm/core/mode/section-visibility.d.ts.map +1 -1
  1843. package/dist/esm/core/mode/section-visibility.js.map +1 -1
  1844. package/dist/esm/core/monitoring/analytics/AnalyticsContext.d.ts +15 -2
  1845. package/dist/esm/core/monitoring/analytics/AnalyticsContext.d.ts.map +1 -1
  1846. package/dist/esm/core/monitoring/analytics/AnalyticsContext.js +183 -20
  1847. package/dist/esm/core/monitoring/analytics/AnalyticsContext.js.map +1 -1
  1848. package/dist/esm/core/monitoring/analytics/AnalyticsEventBridge.d.ts.map +1 -1
  1849. package/dist/esm/core/monitoring/analytics/AnalyticsEventBridge.js +2 -2
  1850. package/dist/esm/core/monitoring/analytics/AnalyticsEventBridge.js.map +1 -1
  1851. package/dist/esm/core/monitoring/analytics/AnalyticsScopeBridge.d.ts.map +1 -1
  1852. package/dist/esm/core/monitoring/analytics/AnalyticsScopeBridge.js.map +1 -1
  1853. package/dist/esm/core/monitoring/analytics/analytics-provider-registry.frontend.service.d.ts +7 -15
  1854. package/dist/esm/core/monitoring/analytics/analytics-provider-registry.frontend.service.d.ts.map +1 -1
  1855. package/dist/esm/core/monitoring/analytics/analytics-provider-registry.frontend.service.js +8 -26
  1856. package/dist/esm/core/monitoring/analytics/analytics-provider-registry.frontend.service.js.map +1 -1
  1857. package/dist/esm/core/monitoring/analytics/analytics-provider.frontend.interface.d.ts +12 -3
  1858. package/dist/esm/core/monitoring/analytics/analytics-provider.frontend.interface.d.ts.map +1 -1
  1859. package/dist/esm/core/monitoring/analytics/analytics-provider.frontend.interface.js +3 -2
  1860. package/dist/esm/core/monitoring/analytics/analytics-provider.frontend.interface.js.map +1 -1
  1861. package/dist/esm/core/monitoring/analytics/providers/backend-proxy-analytics.provider.d.ts +42 -0
  1862. package/dist/esm/core/monitoring/analytics/providers/backend-proxy-analytics.provider.d.ts.map +1 -1
  1863. package/dist/esm/core/monitoring/analytics/providers/backend-proxy-analytics.provider.js +89 -5
  1864. package/dist/esm/core/monitoring/analytics/providers/backend-proxy-analytics.provider.js.map +1 -1
  1865. package/dist/esm/core/monitoring/analytics/providers/console-analytics.provider.d.ts +2 -0
  1866. package/dist/esm/core/monitoring/analytics/providers/console-analytics.provider.d.ts.map +1 -1
  1867. package/dist/esm/core/monitoring/analytics/providers/console-analytics.provider.js +2 -0
  1868. package/dist/esm/core/monitoring/analytics/providers/console-analytics.provider.js.map +1 -1
  1869. package/dist/esm/core/monitoring/analytics/useAnalytics.d.ts.map +1 -1
  1870. package/dist/esm/core/monitoring/analytics/useAnalytics.js.map +1 -1
  1871. package/dist/esm/core/monitoring/error-monitoring-bridge.frontend.service.d.ts.map +1 -1
  1872. package/dist/esm/core/monitoring/error-monitoring-bridge.frontend.service.js.map +1 -1
  1873. package/dist/esm/core/monitoring/logger.frontend.service.d.ts.map +1 -1
  1874. package/dist/esm/core/monitoring/logger.frontend.service.js.map +1 -1
  1875. package/dist/esm/core/navigation/NavigationContentAreas.d.ts +78 -0
  1876. package/dist/esm/core/navigation/NavigationContentAreas.d.ts.map +1 -1
  1877. package/dist/esm/core/navigation/NavigationContentAreas.js +264 -16
  1878. package/dist/esm/core/navigation/NavigationContentAreas.js.map +1 -1
  1879. package/dist/esm/core/navigation/NavigationContext.d.ts +8 -0
  1880. package/dist/esm/core/navigation/NavigationContext.d.ts.map +1 -1
  1881. package/dist/esm/core/navigation/NavigationContext.js +137 -30
  1882. package/dist/esm/core/navigation/NavigationContext.js.map +1 -1
  1883. package/dist/esm/core/navigation/NavigationRequestBridge.d.ts.map +1 -1
  1884. package/dist/esm/core/navigation/NavigationRequestBridge.js.map +1 -1
  1885. package/dist/esm/core/navigation/hosted-pane.constants.d.ts.map +1 -1
  1886. package/dist/esm/core/navigation/hosted-pane.constants.js.map +1 -1
  1887. package/dist/esm/core/navigation/launcher-resolution.d.ts +2 -0
  1888. package/dist/esm/core/navigation/launcher-resolution.d.ts.map +1 -1
  1889. package/dist/esm/core/navigation/launcher-resolution.js +1 -0
  1890. package/dist/esm/core/navigation/launcher-resolution.js.map +1 -1
  1891. package/dist/esm/core/navigation/launcher-runtime-availability.d.ts.map +1 -1
  1892. package/dist/esm/core/navigation/launcher-runtime-availability.js.map +1 -1
  1893. package/dist/esm/core/navigation/navigation-cascade.d.ts +46 -0
  1894. package/dist/esm/core/navigation/navigation-cascade.d.ts.map +1 -0
  1895. package/dist/esm/core/navigation/navigation-cascade.js +222 -0
  1896. package/dist/esm/core/navigation/navigation-cascade.js.map +1 -0
  1897. package/dist/esm/core/navigation/navigation-clean-break.frontend.utils.d.ts.map +1 -1
  1898. package/dist/esm/core/navigation/navigation-clean-break.frontend.utils.js +21 -2
  1899. package/dist/esm/core/navigation/navigation-clean-break.frontend.utils.js.map +1 -1
  1900. package/dist/esm/core/navigation/navigation-controller-internals.d.ts +71 -0
  1901. package/dist/esm/core/navigation/navigation-controller-internals.d.ts.map +1 -0
  1902. package/dist/esm/core/navigation/navigation-controller-internals.js +84 -0
  1903. package/dist/esm/core/navigation/navigation-controller-internals.js.map +1 -0
  1904. package/dist/esm/core/navigation/navigation-policy-resolver.service.d.ts +86 -2
  1905. package/dist/esm/core/navigation/navigation-policy-resolver.service.d.ts.map +1 -1
  1906. package/dist/esm/core/navigation/navigation-policy-resolver.service.js +242 -124
  1907. package/dist/esm/core/navigation/navigation-policy-resolver.service.js.map +1 -1
  1908. package/dist/esm/core/navigation/navigation.schemas.d.ts +170 -8
  1909. package/dist/esm/core/navigation/navigation.schemas.d.ts.map +1 -1
  1910. package/dist/esm/core/navigation/navigation.schemas.js +121 -2
  1911. package/dist/esm/core/navigation/navigation.schemas.js.map +1 -1
  1912. package/dist/esm/core/navigation/navigation.utils.d.ts +102 -6
  1913. package/dist/esm/core/navigation/navigation.utils.d.ts.map +1 -1
  1914. package/dist/esm/core/navigation/navigation.utils.js +283 -34
  1915. package/dist/esm/core/navigation/navigation.utils.js.map +1 -1
  1916. package/dist/esm/core/navigation/primary-destination-layout.d.ts.map +1 -1
  1917. package/dist/esm/core/navigation/primary-destination-layout.js.map +1 -1
  1918. package/dist/esm/core/navigation/split-fit.d.ts.map +1 -1
  1919. package/dist/esm/core/navigation/split-fit.js.map +1 -1
  1920. package/dist/esm/core/navigation/useLauncherResolutionContext.d.ts.map +1 -1
  1921. package/dist/esm/core/navigation/useLauncherResolutionContext.js.map +1 -1
  1922. package/dist/esm/core/navigation/useNavigationController.d.ts +28 -157
  1923. package/dist/esm/core/navigation/useNavigationController.d.ts.map +1 -1
  1924. package/dist/esm/core/navigation/useNavigationController.js +211 -1189
  1925. package/dist/esm/core/navigation/useNavigationController.js.map +1 -1
  1926. package/dist/esm/core/navigation/useNavigationRouterSync.d.ts +174 -0
  1927. package/dist/esm/core/navigation/useNavigationRouterSync.d.ts.map +1 -0
  1928. package/dist/esm/core/navigation/useNavigationRouterSync.js +977 -0
  1929. package/dist/esm/core/navigation/useNavigationRouterSync.js.map +1 -0
  1930. package/dist/esm/core/navigation/useNavigationState.d.ts.map +1 -1
  1931. package/dist/esm/core/navigation/useNavigationState.js.map +1 -1
  1932. package/dist/esm/core/navigation/useOverlayTitle.d.ts +13 -1
  1933. package/dist/esm/core/navigation/useOverlayTitle.d.ts.map +1 -1
  1934. package/dist/esm/core/navigation/useOverlayTitle.js +15 -10
  1935. package/dist/esm/core/navigation/useOverlayTitle.js.map +1 -1
  1936. package/dist/esm/core/navigation/useResponsiveZoneMigration.d.ts +43 -0
  1937. package/dist/esm/core/navigation/useResponsiveZoneMigration.d.ts.map +1 -0
  1938. package/dist/esm/core/navigation/useResponsiveZoneMigration.js +44 -0
  1939. package/dist/esm/core/navigation/useResponsiveZoneMigration.js.map +1 -0
  1940. package/dist/esm/core/navigation/useSynchronousBrowserLocation.d.ts.map +1 -1
  1941. package/dist/esm/core/navigation/useSynchronousBrowserLocation.js.map +1 -1
  1942. package/dist/esm/core/navigation/useTransactionAwareSyncRetry.d.ts.map +1 -1
  1943. package/dist/esm/core/navigation/useTransactionAwareSyncRetry.js.map +1 -1
  1944. package/dist/esm/core/navigation/view-title-resolution.d.ts.map +1 -1
  1945. package/dist/esm/core/navigation/view-title-resolution.js.map +1 -1
  1946. package/dist/esm/core/navigation/zone-collapse-migration.d.ts +83 -0
  1947. package/dist/esm/core/navigation/zone-collapse-migration.d.ts.map +1 -0
  1948. package/dist/esm/core/navigation/zone-collapse-migration.js +116 -0
  1949. package/dist/esm/core/navigation/zone-collapse-migration.js.map +1 -0
  1950. package/dist/esm/core/navigation/zone-collapse.d.ts +51 -0
  1951. package/dist/esm/core/navigation/zone-collapse.d.ts.map +1 -0
  1952. package/dist/esm/core/navigation/zone-collapse.js +59 -0
  1953. package/dist/esm/core/navigation/zone-collapse.js.map +1 -0
  1954. package/dist/esm/core/navigation/zone-content-geometry.d.ts.map +1 -1
  1955. package/dist/esm/core/navigation/zone-content-geometry.js.map +1 -1
  1956. package/dist/esm/core/navigation/zone-emphasis.d.ts +3 -0
  1957. package/dist/esm/core/navigation/zone-emphasis.d.ts.map +1 -1
  1958. package/dist/esm/core/navigation/zone-emphasis.js +26 -4
  1959. package/dist/esm/core/navigation/zone-emphasis.js.map +1 -1
  1960. package/dist/esm/core/navigation/zone-empty-behavior.d.ts.map +1 -1
  1961. package/dist/esm/core/navigation/zone-empty-behavior.js.map +1 -1
  1962. package/dist/esm/core/navigation/zone-visible-entry.d.ts +22 -0
  1963. package/dist/esm/core/navigation/zone-visible-entry.d.ts.map +1 -1
  1964. package/dist/esm/core/navigation/zone-visible-entry.js +25 -0
  1965. package/dist/esm/core/navigation/zone-visible-entry.js.map +1 -1
  1966. package/dist/esm/core/requests/api-readiness-checker.frontend.service.d.ts.map +1 -1
  1967. package/dist/esm/core/requests/api-readiness-checker.frontend.service.js.map +1 -1
  1968. package/dist/esm/core/requests/auth-refresh-resilience.frontend.d.ts.map +1 -1
  1969. package/dist/esm/core/requests/auth-refresh-resilience.frontend.js.map +1 -1
  1970. package/dist/esm/core/requests/client-instance-id.frontend.service.d.ts.map +1 -1
  1971. package/dist/esm/core/requests/client-instance-id.frontend.service.js.map +1 -1
  1972. package/dist/esm/core/requests/network-backoff.frontend.utils.d.ts.map +1 -1
  1973. package/dist/esm/core/requests/network-backoff.frontend.utils.js.map +1 -1
  1974. package/dist/esm/core/requests/offline-replay-policy.frontend.d.ts.map +1 -1
  1975. package/dist/esm/core/requests/offline-replay-policy.frontend.js.map +1 -1
  1976. package/dist/esm/core/requests/request-cancellation.frontend.utils.d.ts.map +1 -1
  1977. package/dist/esm/core/requests/request-cancellation.frontend.utils.js.map +1 -1
  1978. package/dist/esm/core/requests/websockets/ConnectionStatusNotifier.d.ts.map +1 -1
  1979. package/dist/esm/core/requests/websockets/ConnectionStatusNotifier.js.map +1 -1
  1980. package/dist/esm/core/requests/websockets/WebSocketContext.d.ts.map +1 -1
  1981. package/dist/esm/core/requests/websockets/WebSocketContext.js +53 -18
  1982. package/dist/esm/core/requests/websockets/WebSocketContext.js.map +1 -1
  1983. package/dist/esm/core/requests/websockets/WebSocketEventBridge.d.ts.map +1 -1
  1984. package/dist/esm/core/requests/websockets/WebSocketEventBridge.js +3 -1
  1985. package/dist/esm/core/requests/websockets/WebSocketEventBridge.js.map +1 -1
  1986. package/dist/esm/core/requests/websockets/useNotificationBadges.d.ts +22 -0
  1987. package/dist/esm/core/requests/websockets/useNotificationBadges.d.ts.map +1 -1
  1988. package/dist/esm/core/requests/websockets/useNotificationBadges.js +72 -3
  1989. package/dist/esm/core/requests/websockets/useNotificationBadges.js.map +1 -1
  1990. package/dist/esm/core/requests/websockets/usePublishNotificationBadgeCount.d.ts +28 -0
  1991. package/dist/esm/core/requests/websockets/usePublishNotificationBadgeCount.d.ts.map +1 -0
  1992. package/dist/esm/core/requests/websockets/usePublishNotificationBadgeCount.js +86 -0
  1993. package/dist/esm/core/requests/websockets/usePublishNotificationBadgeCount.js.map +1 -0
  1994. package/dist/esm/core/requests/websockets/useResourceRoom.d.ts.map +1 -1
  1995. package/dist/esm/core/requests/websockets/useResourceRoom.js.map +1 -1
  1996. package/dist/esm/core/requests/websockets/useWebSocket.d.ts.map +1 -1
  1997. package/dist/esm/core/requests/websockets/useWebSocket.js.map +1 -1
  1998. package/dist/esm/core/requests/websockets/websocket-resource-validation.frontend.service.d.ts.map +1 -1
  1999. package/dist/esm/core/requests/websockets/websocket-resource-validation.frontend.service.js.map +1 -1
  2000. package/dist/esm/core/requests/wildo-http-client-manual-calls.frontend.service.d.ts +38 -3
  2001. package/dist/esm/core/requests/wildo-http-client-manual-calls.frontend.service.d.ts.map +1 -1
  2002. package/dist/esm/core/requests/wildo-http-client-manual-calls.frontend.service.js +57 -2
  2003. package/dist/esm/core/requests/wildo-http-client-manual-calls.frontend.service.js.map +1 -1
  2004. package/dist/esm/core/requests/wildo-http-client-resources.frontend.service.d.ts.map +1 -1
  2005. package/dist/esm/core/requests/wildo-http-client-resources.frontend.service.js +4 -2
  2006. package/dist/esm/core/requests/wildo-http-client-resources.frontend.service.js.map +1 -1
  2007. package/dist/esm/core/requests/wildo-http-client.frontend.service.d.ts +30 -1
  2008. package/dist/esm/core/requests/wildo-http-client.frontend.service.d.ts.map +1 -1
  2009. package/dist/esm/core/requests/wildo-http-client.frontend.service.js +47 -4
  2010. package/dist/esm/core/requests/wildo-http-client.frontend.service.js.map +1 -1
  2011. package/dist/esm/core/resources/ResourceOperationViewContext.d.ts.map +1 -1
  2012. package/dist/esm/core/resources/ResourceOperationViewContext.js.map +1 -1
  2013. package/dist/esm/core/resources/ResourceOperationViewProvider.d.ts.map +1 -1
  2014. package/dist/esm/core/resources/ResourceOperationViewProvider.js.map +1 -1
  2015. package/dist/esm/core/resources/ResourceReadCacheBridge.d.ts.map +1 -1
  2016. package/dist/esm/core/resources/ResourceReadCacheBridge.js.map +1 -1
  2017. package/dist/esm/core/resources/ResourceRegistryContext.d.ts.map +1 -1
  2018. package/dist/esm/core/resources/ResourceRegistryContext.js +22 -1
  2019. package/dist/esm/core/resources/ResourceRegistryContext.js.map +1 -1
  2020. package/dist/esm/core/resources/ScopedResourceRegistryProvider.d.ts.map +1 -1
  2021. package/dist/esm/core/resources/ScopedResourceRegistryProvider.js.map +1 -1
  2022. package/dist/esm/core/resources/bulk-failure-grouping.frontend.utils.d.ts.map +1 -1
  2023. package/dist/esm/core/resources/bulk-failure-grouping.frontend.utils.js.map +1 -1
  2024. package/dist/esm/core/resources/collection-export-url.frontend.utils.d.ts.map +1 -1
  2025. package/dist/esm/core/resources/collection-export-url.frontend.utils.js.map +1 -1
  2026. package/dist/esm/core/resources/collection-filter-presets.frontend.utils.d.ts.map +1 -1
  2027. package/dist/esm/core/resources/collection-filter-presets.frontend.utils.js.map +1 -1
  2028. package/dist/esm/core/resources/context-resource-identifiers.frontend.utils.d.ts.map +1 -1
  2029. package/dist/esm/core/resources/context-resource-identifiers.frontend.utils.js +1 -1
  2030. package/dist/esm/core/resources/context-resource-identifiers.frontend.utils.js.map +1 -1
  2031. package/dist/esm/core/resources/ephemeral-fields.utils.d.ts.map +1 -1
  2032. package/dist/esm/core/resources/ephemeral-fields.utils.js.map +1 -1
  2033. package/dist/esm/core/resources/file-serve-url.frontend.utils.d.ts.map +1 -1
  2034. package/dist/esm/core/resources/file-serve-url.frontend.utils.js.map +1 -1
  2035. package/dist/esm/core/resources/frontend-resource.utils.d.ts +22 -1
  2036. package/dist/esm/core/resources/frontend-resource.utils.d.ts.map +1 -1
  2037. package/dist/esm/core/resources/frontend-resource.utils.js +25 -2
  2038. package/dist/esm/core/resources/frontend-resource.utils.js.map +1 -1
  2039. package/dist/esm/core/resources/hooks/useOperationEnabled.d.ts.map +1 -1
  2040. package/dist/esm/core/resources/hooks/useOperationEnabled.js.map +1 -1
  2041. package/dist/esm/core/resources/in-place/InPlaceOperationContext.d.ts.map +1 -1
  2042. package/dist/esm/core/resources/in-place/InPlaceOperationContext.js.map +1 -1
  2043. package/dist/esm/core/resources/operation-initiator-satisfaction.frontend.utils.d.ts.map +1 -1
  2044. package/dist/esm/core/resources/operation-initiator-satisfaction.frontend.utils.js.map +1 -1
  2045. package/dist/esm/core/resources/operation-semantics.frontend.utils.d.ts +113 -13
  2046. package/dist/esm/core/resources/operation-semantics.frontend.utils.d.ts.map +1 -1
  2047. package/dist/esm/core/resources/operation-semantics.frontend.utils.js +173 -20
  2048. package/dist/esm/core/resources/operation-semantics.frontend.utils.js.map +1 -1
  2049. package/dist/esm/core/resources/relationship-quick-create.frontend.utils.d.ts.map +1 -1
  2050. package/dist/esm/core/resources/relationship-quick-create.frontend.utils.js.map +1 -1
  2051. package/dist/esm/core/resources/relationship-surface-runtime.frontend.utils.d.ts +11 -0
  2052. package/dist/esm/core/resources/relationship-surface-runtime.frontend.utils.d.ts.map +1 -1
  2053. package/dist/esm/core/resources/relationship-surface-runtime.frontend.utils.js +7 -0
  2054. package/dist/esm/core/resources/relationship-surface-runtime.frontend.utils.js.map +1 -1
  2055. package/dist/esm/core/resources/resource-addressability.frontend.utils.d.ts.map +1 -1
  2056. package/dist/esm/core/resources/resource-addressability.frontend.utils.js.map +1 -1
  2057. package/dist/esm/core/resources/resource-label-field-paths.frontend.utils.d.ts +3 -2
  2058. package/dist/esm/core/resources/resource-label-field-paths.frontend.utils.d.ts.map +1 -1
  2059. package/dist/esm/core/resources/resource-label-field-paths.frontend.utils.js +13 -5
  2060. package/dist/esm/core/resources/resource-label-field-paths.frontend.utils.js.map +1 -1
  2061. package/dist/esm/core/resources/resource-operation-view.frontend.utils.d.ts.map +1 -1
  2062. package/dist/esm/core/resources/resource-operation-view.frontend.utils.js.map +1 -1
  2063. package/dist/esm/core/resources/resource-path.frontend.schemas.d.ts.map +1 -1
  2064. package/dist/esm/core/resources/resource-path.frontend.schemas.js.map +1 -1
  2065. package/dist/esm/core/resources/resource-read-cache.frontend.service.d.ts.map +1 -1
  2066. package/dist/esm/core/resources/resource-read-cache.frontend.service.js.map +1 -1
  2067. package/dist/esm/core/resources/resources-repository.frontend.service.d.ts +6 -0
  2068. package/dist/esm/core/resources/resources-repository.frontend.service.d.ts.map +1 -1
  2069. package/dist/esm/core/resources/resources-repository.frontend.service.js +90 -1
  2070. package/dist/esm/core/resources/resources-repository.frontend.service.js.map +1 -1
  2071. package/dist/esm/core/resources/resources.frontend.schemas.d.ts +141 -18
  2072. package/dist/esm/core/resources/resources.frontend.schemas.d.ts.map +1 -1
  2073. package/dist/esm/core/resources/resources.frontend.schemas.js +110 -11
  2074. package/dist/esm/core/resources/resources.frontend.schemas.js.map +1 -1
  2075. package/dist/esm/core/resources/rmm/HttpTransportAdapter.d.ts.map +1 -1
  2076. package/dist/esm/core/resources/rmm/HttpTransportAdapter.js.map +1 -1
  2077. package/dist/esm/core/resources/rmm/RMMRegistry.d.ts.map +1 -1
  2078. package/dist/esm/core/resources/rmm/RMMRegistry.js.map +1 -1
  2079. package/dist/esm/core/resources/rmm/RMMRegistryContext.d.ts.map +1 -1
  2080. package/dist/esm/core/resources/rmm/RMMRegistryContext.js.map +1 -1
  2081. package/dist/esm/core/resources/rmm/RMMWebSocketBridge.d.ts.map +1 -1
  2082. package/dist/esm/core/resources/rmm/RMMWebSocketBridge.js.map +1 -1
  2083. package/dist/esm/core/resources/rmm/ResourceMutationManager.d.ts.map +1 -1
  2084. package/dist/esm/core/resources/rmm/ResourceMutationManager.js +3 -1
  2085. package/dist/esm/core/resources/rmm/ResourceMutationManager.js.map +1 -1
  2086. package/dist/esm/core/resources/rmm/canonical-read.frontend.utils.d.ts.map +1 -1
  2087. package/dist/esm/core/resources/rmm/canonical-read.frontend.utils.js.map +1 -1
  2088. package/dist/esm/core/resources/rmm/field-path.utils.d.ts.map +1 -1
  2089. package/dist/esm/core/resources/rmm/field-path.utils.js.map +1 -1
  2090. package/dist/esm/core/resources/rmm/mutation-error-report.utils.d.ts.map +1 -1
  2091. package/dist/esm/core/resources/rmm/mutation-error-report.utils.js.map +1 -1
  2092. package/dist/esm/core/resources/rmm/rmm-constants.d.ts.map +1 -1
  2093. package/dist/esm/core/resources/rmm/rmm-constants.js.map +1 -1
  2094. package/dist/esm/core/resources/rmm/rmm-noop-snapshot.d.ts.map +1 -1
  2095. package/dist/esm/core/resources/rmm/rmm-noop-snapshot.js.map +1 -1
  2096. package/dist/esm/core/resources/rmm/types.d.ts.map +1 -1
  2097. package/dist/esm/core/resources/rmm/types.js.map +1 -1
  2098. package/dist/esm/core/resources/rmm/update-like-mutation-fallback.frontend.d.ts +10 -0
  2099. package/dist/esm/core/resources/rmm/update-like-mutation-fallback.frontend.d.ts.map +1 -1
  2100. package/dist/esm/core/resources/rmm/update-like-mutation-fallback.frontend.js +8 -0
  2101. package/dist/esm/core/resources/rmm/update-like-mutation-fallback.frontend.js.map +1 -1
  2102. package/dist/esm/core/resources/rmm/useListInvalidation.d.ts.map +1 -1
  2103. package/dist/esm/core/resources/rmm/useListInvalidation.js.map +1 -1
  2104. package/dist/esm/core/resources/rmm/useRMMEventHandler.d.ts.map +1 -1
  2105. package/dist/esm/core/resources/rmm/useRMMEventHandler.js.map +1 -1
  2106. package/dist/esm/core/resources/rmm/useRMMSnapshot.d.ts.map +1 -1
  2107. package/dist/esm/core/resources/rmm/useRMMSnapshot.js.map +1 -1
  2108. package/dist/esm/core/resources/rmm/useResourceMutationManager.d.ts.map +1 -1
  2109. package/dist/esm/core/resources/rmm/useResourceMutationManager.js.map +1 -1
  2110. package/dist/esm/core/resources/rmm/useResourceRMM.d.ts +7 -0
  2111. package/dist/esm/core/resources/rmm/useResourceRMM.d.ts.map +1 -1
  2112. package/dist/esm/core/resources/rmm/useResourceRMM.js +9 -2
  2113. package/dist/esm/core/resources/rmm/useResourceRMM.js.map +1 -1
  2114. package/dist/esm/core/resources/useAuthedFileObjectUrl.frontend.hook.d.ts.map +1 -1
  2115. package/dist/esm/core/resources/useAuthedFileObjectUrl.frontend.hook.js.map +1 -1
  2116. package/dist/esm/core/resources/useBulkJobProgress.d.ts.map +1 -1
  2117. package/dist/esm/core/resources/useBulkJobProgress.js.map +1 -1
  2118. package/dist/esm/core/resources/useHostlessResourceNavigation.d.ts.map +1 -1
  2119. package/dist/esm/core/resources/useHostlessResourceNavigation.js.map +1 -1
  2120. package/dist/esm/core/resources/useOperationDirectExecution.d.ts +59 -0
  2121. package/dist/esm/core/resources/useOperationDirectExecution.d.ts.map +1 -0
  2122. package/dist/esm/core/resources/useOperationDirectExecution.js +278 -0
  2123. package/dist/esm/core/resources/useOperationDirectExecution.js.map +1 -0
  2124. package/dist/esm/core/resources/useOperationEnabled.d.ts.map +1 -1
  2125. package/dist/esm/core/resources/useOperationEnabled.js.map +1 -1
  2126. package/dist/esm/core/resources/useResourceLabels.d.ts.map +1 -1
  2127. package/dist/esm/core/resources/useResourceLabels.js.map +1 -1
  2128. package/dist/esm/core/resources/useResourceOperationActions.d.ts +1 -1
  2129. package/dist/esm/core/resources/useResourceOperationActions.d.ts.map +1 -1
  2130. package/dist/esm/core/resources/useResourceOperationActions.js +69 -22
  2131. package/dist/esm/core/resources/useResourceOperationActions.js.map +1 -1
  2132. package/dist/esm/core/resources/useResourceOperationOutcomeEmitter.d.ts.map +1 -1
  2133. package/dist/esm/core/resources/useResourceOperationOutcomeEmitter.js.map +1 -1
  2134. package/dist/esm/core/resources/useResourceOperationSurface.d.ts +8 -6
  2135. package/dist/esm/core/resources/useResourceOperationSurface.d.ts.map +1 -1
  2136. package/dist/esm/core/resources/useResourceOperationSurface.js +3 -2
  2137. package/dist/esm/core/resources/useResourceOperationSurface.js.map +1 -1
  2138. package/dist/esm/core/resources/useResourceRegistry.d.ts.map +1 -1
  2139. package/dist/esm/core/resources/useResourceRegistry.js.map +1 -1
  2140. package/dist/esm/core/resources/useResourceSelection.d.ts.map +1 -1
  2141. package/dist/esm/core/resources/useResourceSelection.js.map +1 -1
  2142. package/dist/esm/core/resources/utils/operation-enabled-condition.frontend.utils.d.ts.map +1 -1
  2143. package/dist/esm/core/resources/utils/operation-enabled-condition.frontend.utils.js.map +1 -1
  2144. package/dist/esm/core/runtime/AppRouter.d.ts.map +1 -1
  2145. package/dist/esm/core/runtime/AppRouter.js +23 -2
  2146. package/dist/esm/core/runtime/AppRouter.js.map +1 -1
  2147. package/dist/esm/core/runtime/ApplicationContext.shared.d.ts +4 -2
  2148. package/dist/esm/core/runtime/ApplicationContext.shared.d.ts.map +1 -1
  2149. package/dist/esm/core/runtime/ApplicationContext.shared.js.map +1 -1
  2150. package/dist/esm/core/runtime/ApplicationMainContext.d.ts +12 -2
  2151. package/dist/esm/core/runtime/ApplicationMainContext.d.ts.map +1 -1
  2152. package/dist/esm/core/runtime/ApplicationMainContext.js +5 -2
  2153. package/dist/esm/core/runtime/ApplicationMainContext.js.map +1 -1
  2154. package/dist/esm/core/runtime/StartupFailureScreen.d.ts.map +1 -1
  2155. package/dist/esm/core/runtime/StartupFailureScreen.js.map +1 -1
  2156. package/dist/esm/core/runtime/app-config-overrides.frontend.definitions.d.ts.map +1 -1
  2157. package/dist/esm/core/runtime/app-config-overrides.frontend.definitions.js.map +1 -1
  2158. package/dist/esm/core/runtime/domain-module.frontend.definitions.d.ts +25 -1
  2159. package/dist/esm/core/runtime/domain-module.frontend.definitions.d.ts.map +1 -1
  2160. package/dist/esm/core/runtime/domain-module.frontend.definitions.js +37 -1
  2161. package/dist/esm/core/runtime/domain-module.frontend.definitions.js.map +1 -1
  2162. package/dist/esm/core/runtime/env-variable-loader.frontend.service.d.ts.map +1 -1
  2163. package/dist/esm/core/runtime/env-variable-loader.frontend.service.js.map +1 -1
  2164. package/dist/esm/core/runtime/frontend-companion-resource-inputs.d.ts.map +1 -1
  2165. package/dist/esm/core/runtime/frontend-companion-resource-inputs.js.map +1 -1
  2166. package/dist/esm/core/runtime/routes.frontend.definitions.d.ts.map +1 -1
  2167. package/dist/esm/core/runtime/routes.frontend.definitions.js.map +1 -1
  2168. package/dist/esm/core/runtime/runtime.frontend.schemas.d.ts.map +1 -1
  2169. package/dist/esm/core/runtime/runtime.frontend.schemas.js.map +1 -1
  2170. package/dist/esm/core/runtime/start-application.frontend.service.d.ts +21 -2
  2171. package/dist/esm/core/runtime/start-application.frontend.service.d.ts.map +1 -1
  2172. package/dist/esm/core/runtime/start-application.frontend.service.js +51 -4
  2173. package/dist/esm/core/runtime/start-application.frontend.service.js.map +1 -1
  2174. package/dist/esm/core/runtime/startup-failure-copy.frontend.d.ts.map +1 -1
  2175. package/dist/esm/core/runtime/startup-failure-copy.frontend.js.map +1 -1
  2176. package/dist/esm/core/runtime/useApplication.d.ts.map +1 -1
  2177. package/dist/esm/core/runtime/useApplication.js.map +1 -1
  2178. package/dist/esm/core/scope/AppScopeContext.d.ts.map +1 -1
  2179. package/dist/esm/core/scope/AppScopeContext.js.map +1 -1
  2180. package/dist/esm/core/scope/scope.frontend.schemas.d.ts.map +1 -1
  2181. package/dist/esm/core/scope/scope.frontend.schemas.js.map +1 -1
  2182. package/dist/esm/core/scope/scope.utils.frontend.service.d.ts.map +1 -1
  2183. package/dist/esm/core/scope/scope.utils.frontend.service.js.map +1 -1
  2184. package/dist/esm/core/scope/useAppScope.d.ts.map +1 -1
  2185. package/dist/esm/core/scope/useAppScope.js.map +1 -1
  2186. package/dist/esm/core/security/AnonymousSessionContext.d.ts.map +1 -1
  2187. package/dist/esm/core/security/AnonymousSessionContext.js.map +1 -1
  2188. package/dist/esm/core/security/AuthSessionContext.d.ts +11 -0
  2189. package/dist/esm/core/security/AuthSessionContext.d.ts.map +1 -1
  2190. package/dist/esm/core/security/AuthSessionContext.js +70 -22
  2191. package/dist/esm/core/security/AuthSessionContext.js.map +1 -1
  2192. package/dist/esm/core/security/StepUpAuthContext.d.ts.map +1 -1
  2193. package/dist/esm/core/security/StepUpAuthContext.js +10 -2
  2194. package/dist/esm/core/security/StepUpAuthContext.js.map +1 -1
  2195. package/dist/esm/core/security/UserOrgsContext.d.ts.map +1 -1
  2196. package/dist/esm/core/security/UserOrgsContext.js +72 -8
  2197. package/dist/esm/core/security/UserOrgsContext.js.map +1 -1
  2198. package/dist/esm/core/security/auth-redirect.frontend.utils.d.ts.map +1 -1
  2199. package/dist/esm/core/security/auth-redirect.frontend.utils.js.map +1 -1
  2200. package/dist/esm/core/security/auth-session.utils.d.ts.map +1 -1
  2201. package/dist/esm/core/security/auth-session.utils.js.map +1 -1
  2202. package/dist/esm/core/security/consent-gate.frontend.utils.d.ts.map +1 -1
  2203. package/dist/esm/core/security/consent-gate.frontend.utils.js.map +1 -1
  2204. package/dist/esm/core/security/cross-frontend-handoff.frontend.service.d.ts.map +1 -1
  2205. package/dist/esm/core/security/cross-frontend-handoff.frontend.service.js.map +1 -1
  2206. package/dist/esm/core/security/federated-reauthentication.frontend.d.ts.map +1 -1
  2207. package/dist/esm/core/security/federated-reauthentication.frontend.js.map +1 -1
  2208. package/dist/esm/core/security/jwt.frontend.utils.d.ts.map +1 -1
  2209. package/dist/esm/core/security/jwt.frontend.utils.js.map +1 -1
  2210. package/dist/esm/core/security/organization-onboarding.frontend.utils.d.ts.map +1 -1
  2211. package/dist/esm/core/security/organization-onboarding.frontend.utils.js.map +1 -1
  2212. package/dist/esm/core/security/pending-mfa-session-storage.frontend.utils.d.ts.map +1 -1
  2213. package/dist/esm/core/security/pending-mfa-session-storage.frontend.utils.js.map +1 -1
  2214. package/dist/esm/core/security/registration-outcome.frontend.utils.d.ts.map +1 -1
  2215. package/dist/esm/core/security/registration-outcome.frontend.utils.js.map +1 -1
  2216. package/dist/esm/core/security/route-organization-access.frontend.utils.d.ts +7 -0
  2217. package/dist/esm/core/security/route-organization-access.frontend.utils.d.ts.map +1 -1
  2218. package/dist/esm/core/security/route-organization-access.frontend.utils.js +8 -2
  2219. package/dist/esm/core/security/route-organization-access.frontend.utils.js.map +1 -1
  2220. package/dist/esm/core/security/security.frontend.schemas.d.ts.map +1 -1
  2221. package/dist/esm/core/security/security.frontend.schemas.js.map +1 -1
  2222. package/dist/esm/core/security/session-token-storage.frontend.service.d.ts.map +1 -1
  2223. package/dist/esm/core/security/session-token-storage.frontend.service.js.map +1 -1
  2224. package/dist/esm/core/security/useAuthSession.d.ts.map +1 -1
  2225. package/dist/esm/core/security/useAuthSession.js.map +1 -1
  2226. package/dist/esm/core/security/useConsentGateBehavior.d.ts.map +1 -1
  2227. package/dist/esm/core/security/useConsentGateBehavior.js.map +1 -1
  2228. package/dist/esm/core/security/useDocumentAcceptanceGateBehavior.d.ts.map +1 -1
  2229. package/dist/esm/core/security/useDocumentAcceptanceGateBehavior.js.map +1 -1
  2230. package/dist/esm/core/security/useGrantedConsentPurposes.d.ts +30 -0
  2231. package/dist/esm/core/security/useGrantedConsentPurposes.d.ts.map +1 -0
  2232. package/dist/esm/core/security/useGrantedConsentPurposes.js +38 -0
  2233. package/dist/esm/core/security/useGrantedConsentPurposes.js.map +1 -0
  2234. package/dist/esm/core/security/useResolvedAuthConfig.d.ts.map +1 -1
  2235. package/dist/esm/core/security/useResolvedAuthConfig.js.map +1 -1
  2236. package/dist/esm/core/security/useRouteOrganizationAccess.d.ts.map +1 -1
  2237. package/dist/esm/core/security/useRouteOrganizationAccess.js.map +1 -1
  2238. package/dist/esm/core/security/useStepUpAuth.d.ts.map +1 -1
  2239. package/dist/esm/core/security/useStepUpAuth.js.map +1 -1
  2240. package/dist/esm/core/security/useUserOrgs.d.ts.map +1 -1
  2241. package/dist/esm/core/security/useUserOrgs.js.map +1 -1
  2242. package/dist/esm/core/ui/SurfaceErrorBoundary.d.ts.map +1 -1
  2243. package/dist/esm/core/ui/SurfaceErrorBoundary.js.map +1 -1
  2244. package/dist/esm/core/ui/SurfaceErrorBoundary.labels.d.ts.map +1 -1
  2245. package/dist/esm/core/ui/SurfaceErrorBoundary.labels.js.map +1 -1
  2246. package/dist/esm/core/ui/SurfacePolicyContext.d.ts.map +1 -1
  2247. package/dist/esm/core/ui/SurfacePolicyContext.js.map +1 -1
  2248. package/dist/esm/core/ui/TypographyScopeContext.d.ts.map +1 -1
  2249. package/dist/esm/core/ui/TypographyScopeContext.js.map +1 -1
  2250. package/dist/esm/core/ui/UIContext.d.ts.map +1 -1
  2251. package/dist/esm/core/ui/UIContext.js +10 -6
  2252. package/dist/esm/core/ui/UIContext.js.map +1 -1
  2253. package/dist/esm/core/ui/chart-style-defaults.d.ts.map +1 -1
  2254. package/dist/esm/core/ui/chart-style-defaults.js.map +1 -1
  2255. package/dist/esm/core/ui/cn.d.ts.map +1 -1
  2256. package/dist/esm/core/ui/cn.js.map +1 -1
  2257. package/dist/esm/core/ui/color-conversion.utils.d.ts +20 -0
  2258. package/dist/esm/core/ui/color-conversion.utils.d.ts.map +1 -1
  2259. package/dist/esm/core/ui/color-conversion.utils.js +39 -5
  2260. package/dist/esm/core/ui/color-conversion.utils.js.map +1 -1
  2261. package/dist/esm/core/ui/design-token-class-groups.d.ts.map +1 -1
  2262. package/dist/esm/core/ui/design-token-class-groups.js.map +1 -1
  2263. package/dist/esm/core/ui/design-token-config.utils.d.ts.map +1 -1
  2264. package/dist/esm/core/ui/design-token-config.utils.js.map +1 -1
  2265. package/dist/esm/core/ui/design-token.utils.d.ts.map +1 -1
  2266. package/dist/esm/core/ui/design-token.utils.js.map +1 -1
  2267. package/dist/esm/core/ui/material-runtime.d.ts.map +1 -1
  2268. package/dist/esm/core/ui/material-runtime.js.map +1 -1
  2269. package/dist/esm/core/ui/surface-a11y.utils.d.ts.map +1 -1
  2270. package/dist/esm/core/ui/surface-a11y.utils.js.map +1 -1
  2271. package/dist/esm/core/ui/theme-preference-storage.shared.d.ts.map +1 -1
  2272. package/dist/esm/core/ui/theme-preference-storage.shared.js.map +1 -1
  2273. package/dist/esm/core/ui/themes/default.theme.d.ts.map +1 -1
  2274. package/dist/esm/core/ui/themes/default.theme.js +22 -2
  2275. package/dist/esm/core/ui/themes/default.theme.js.map +1 -1
  2276. package/dist/esm/core/ui/ui.frontend.schemas.d.ts +6 -6
  2277. package/dist/esm/core/ui/ui.frontend.schemas.d.ts.map +1 -1
  2278. package/dist/esm/core/ui/ui.frontend.schemas.js +3 -3
  2279. package/dist/esm/core/ui/ui.frontend.schemas.js.map +1 -1
  2280. package/dist/esm/core/ui/useThemePreferenceControl.d.ts.map +1 -1
  2281. package/dist/esm/core/ui/useThemePreferenceControl.js.map +1 -1
  2282. package/dist/esm/core/ui/useUI.d.ts.map +1 -1
  2283. package/dist/esm/core/ui/useUI.js.map +1 -1
  2284. package/dist/esm/index.d.ts +10 -1
  2285. package/dist/esm/index.d.ts.map +1 -1
  2286. package/dist/esm/index.js +19 -1
  2287. package/dist/esm/index.js.map +1 -1
  2288. package/dist/esm/tailwind/index.d.ts.map +1 -1
  2289. package/dist/esm/tailwind/index.js.map +1 -1
  2290. package/dist/esm/testing/app-shell-placement-coverage.d.ts +43 -0
  2291. package/dist/esm/testing/app-shell-placement-coverage.d.ts.map +1 -0
  2292. package/dist/esm/testing/app-shell-placement-coverage.js +114 -0
  2293. package/dist/esm/testing/app-shell-placement-coverage.js.map +1 -0
  2294. package/dist/esm/testing/mock-builders.d.ts.map +1 -1
  2295. package/dist/esm/testing/mock-builders.js +5 -0
  2296. package/dist/esm/testing/mock-builders.js.map +1 -1
  2297. package/dist/esm/testing/mock-factory.d.ts.map +1 -1
  2298. package/dist/esm/testing/mock-factory.js.map +1 -1
  2299. package/dist/esm/testing/rmm-helpers.d.ts.map +1 -1
  2300. package/dist/esm/testing/rmm-helpers.js.map +1 -1
  2301. package/dist/esm/testing/test-providers.d.ts.map +1 -1
  2302. package/dist/esm/testing/test-providers.js.map +1 -1
  2303. package/dist/esm/testing.d.ts +1 -0
  2304. package/dist/esm/testing.d.ts.map +1 -1
  2305. package/dist/esm/testing.js +1 -0
  2306. package/dist/esm/testing.js.map +1 -1
  2307. package/dist/tsconfig.build.tsbuildinfo +1 -1
  2308. package/package.json +9 -7
  2309. package/dist/esm/core/navigation/useIsStackEntryActive.d.ts +0 -10
  2310. package/dist/esm/core/navigation/useIsStackEntryActive.d.ts.map +0 -1
  2311. package/dist/esm/core/navigation/useIsStackEntryActive.js +0 -15
  2312. package/dist/esm/core/navigation/useIsStackEntryActive.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"BillingContext.js","sourceRoot":"","sources":["../../../../../src/core/billing/BillingContext.tsx"],"names":[],"mappings":"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","sourcesContent":["import type { z } from 'zod';\n/**\n * BillingContext\n *\n * Central context for billing operations on the frontend.\n *\n * Responsibilities:\n * - Self-resolves scope (org/user) from AppScope + user context — no external props needed\n * - Fetches billing state via the GET_STATE resource operation on the billing account\n * - The backend auto-creates the billing account if one doesn't exist\n * - Provides actions: openCheckout, openCustomerPortal (via resource operations)\n * - Caches billing state and invalidates on WebSocket events\n * - Exposes convenience accessors for current plan, subscription status, etc.\n *\n * DELEGATION PRINCIPLE: The frontend does NOT build payment UI.\n * - Stripe Checkout (hosted page): for new subscriptions and upgrades\n * - Stripe Customer Portal (hosted page): for invoices, payment methods, cancellation\n */\n\nimport React, { createContext, useEffect, useState, useCallback, useMemo, useRef } from 'react';\nimport type {\n BillingAccount,\n BillingSubscriptionBase,\n Product,\n Price,\n Promotion,\n InvoiceRef,\n UsageSummary,\n BillingConfiguration,\n ProductDefinition,\n BillingStateResponse,\n BillingStateAvailability,\n WS_BillingEventPayload,\n} from '@wildo-ai/saas-models';\nimport {\n BillingAccount_Operations,\n BillingSubscription_Operations,\n BillingSubscription_PreviewPlanChangeRequestDto,\n BillingSubscription_ChangePlanRequestDto,\n BillingSubscription_PlanChangePreviewResponseDto,\n ResourceOperationVariantType,\n ResourcesConfig_OperationPathUtils,\n HttpMethod,\n BillingStateSlice,\n BillingSliceAvailability,\n BUILTIN_PROVIDER_CAPABILITY,\n BUILTIN_PROVIDER_PROTOCOL,\n CoreWebSocketEvent,\n CoreResourceType,\n ResourcePrimaryScope,\n MAIN_API_BASE_PATH,\n userRolesSatisfyRequiredRoles,\n} from '@wildo-ai/saas-models';\nimport type { FrontendAppProviderModule, FrontendAppProviderRef } from '@wildo-ai/external-connectors-public/app';\nimport { useWebSocket } from '~wildo-frontend-lib/core/requests/websockets/useWebSocket';\nimport { useUserOrgs } from '~wildo-frontend-lib/core/security/useUserOrgs';\nimport { useAppScopeSafe } from '~wildo-frontend-lib/core/scope/useAppScope';\nimport { useApplication } from '~wildo-frontend-lib/core/runtime/useApplication';\nimport { isResourceReachable, useResourceRegistrySafe } from '~wildo-frontend-lib/core/resources/useResourceRegistry';\nimport { LoggerFrontendService } from '~wildo-frontend-lib/core/monitoring/logger.frontend.service';\nimport { getManualCallsHttpClient } from '~wildo-frontend-lib/core/requests/wildo-http-client-manual-calls.frontend.service';\nimport { useEmitLoadingScope } from '~wildo-frontend-lib/core/loading/useEmitLoadingScope';\nimport { ContextLoadingIdentifier } from '~wildo-frontend-lib/core/loading/loading-types.frontend.schemas';\n\n// ================================\n// Logger\n// ================================\n\nconst billingLogger: LoggerFrontendService = LoggerFrontendService.getLogger();\nconst logDebug: (message: string, context?: Record<string, unknown>) => void = billingLogger.debugByType('BillingContext');\nbillingLogger.setDebugTypeLogging('BillingContext', false);\n\n// ================================\n// Constants\n// ================================\n\nconst API_PREFIX = MAIN_API_BASE_PATH;\n\n/** WebSocket events that trigger a refetch of billing state */\nconst INVALIDATION_EVENTS = [\n CoreWebSocketEvent.BILLING_STATUS_CHANGED,\n CoreWebSocketEvent.BILLING_SUBSCRIPTION_UPDATED,\n CoreWebSocketEvent.BILLING_ACCOUNT_CHANGED,\n CoreWebSocketEvent.BILLING_USAGE_UPDATED,\n CoreWebSocketEvent.BILLING_CREDIT_POOL_UPDATED,\n CoreWebSocketEvent.BILLING_FEATURES_UPDATED,\n] as const;\n\n/** Maps ResourcePrimaryScope → billing account variant resource type (for resource operations) */\nconst SCOPE_TO_BILLING_ACCOUNT_RESOURCE: Record<string, string> = {\n [ResourcePrimaryScope.ORGANIZATIONS]: CoreResourceType.ORGANIZATION_BILLING_ACCOUNTS,\n [ResourcePrimaryScope.USER_SELF]: CoreResourceType.USER_BILLING_ACCOUNTS,\n};\n\n// The billing-account GET_STATE / OPEN_CHECKOUT / OPEN_PORTAL custom operations\n// borrow COUNT / UPDATE / READ core semantics (see\n// `billing-account.shared.resources-config.schemas.ts`), so their canonical\n// routes follow the framework's scoped resource-operation shape:\n// GET_STATE (COUNT-like) → GET /<scope>/{id}/<res>/get-state/count\n// OPEN_CHECKOUT (UPDATE-like) → PUT /<scope>/{id}/<res>/{accountId}/open-checkout\n// OPEN_PORTAL (READ-like) → GET /<scope>/{id}/<res>/{accountId}/open-portal\n// Built here to mirror the routes the backend registers from the same\n// resources-config; the prior `/operations/open_checkout` POST 404'd.\n\n/** Maps ResourcePrimaryScope → GET_STATE URL builder (COUNT-like → trailing `/count`) */\nconst SCOPE_TO_GET_STATE_URL: Record<string, (scopeEntityId: string) => string> = {\n [ResourcePrimaryScope.ORGANIZATIONS]: (id) => `${API_PREFIX}/organizations/${id}/organization-billing-accounts/get-state/count`,\n [ResourcePrimaryScope.USER_SELF]: (id) => `${API_PREFIX}/users/${id}/user-billing-accounts/get-state/count`,\n};\n\n/** Maps ResourcePrimaryScope → OPEN_CHECKOUT URL builder (UPDATE-like → keyed PUT) */\nconst SCOPE_TO_OPEN_CHECKOUT_URL: Record<string, (scopeEntityId: string, billingAccountId: string) => string> = {\n [ResourcePrimaryScope.ORGANIZATIONS]: (id, acc) => `${API_PREFIX}/organizations/${id}/organization-billing-accounts/${acc}/open-checkout`,\n [ResourcePrimaryScope.USER_SELF]: (id, acc) => `${API_PREFIX}/users/${id}/user-billing-accounts/${acc}/open-checkout`,\n};\n\n/** Maps ResourcePrimaryScope → OPEN_PORTAL URL builder (READ-like → keyed GET) */\nconst SCOPE_TO_OPEN_PORTAL_URL: Record<string, (scopeEntityId: string, billingAccountId: string) => string> = {\n [ResourcePrimaryScope.ORGANIZATIONS]: (id, acc) => `${API_PREFIX}/organizations/${id}/organization-billing-accounts/${acc}/open-portal`,\n [ResourcePrimaryScope.USER_SELF]: (id, acc) => `${API_PREFIX}/users/${id}/user-billing-accounts/${acc}/open-portal`,\n};\n\n// ================================\n// API Response Types\n// ================================\n\n/** Response from PUT /<scope>/{id}/<billing-accounts>/{accountId}/open-checkout (OPEN_CHECKOUT) */\ninterface CheckoutSessionResponse {\n url: string;\n sessionId: string;\n}\n\n/** Response from GET /<scope>/{id}/<billing-accounts>/{accountId}/open-portal (OPEN_PORTAL) */\ninterface PortalSessionResponse {\n url: string;\n}\n\n// ================================\n// Context Type\n// ================================\n\n/**\n * @wildo_source:part:start saas.frontend.billing-context facet:layer:frontend facet:audience:app-developer\n *\n * Everything an application's own frontend reads or does about billing. Reached with `useBilling()`,\n * which throws outside a `BillingProvider`; `useBillingSafe()` returns `undefined` instead, for a\n * component that may render before the provider mounts or in an application where billing is off.\n *\n * The shipped billing components and the feature-gating hooks read this same context, so an\n * application composing its own purchase flow works from exactly what they do — no application code\n * builds the request.\n *\n * ## Starting a purchase\n *\n * `openCheckout(productKey, priceId, options)` posts to the scoped billing-account route and follows\n * the returned URL; success and cancel destinations come from the application's own redirect base. A\n * SECOND call while one is in flight is IGNORED, so a double-click cannot open two sessions — do not\n * add your own guard expecting otherwise, and do not read the silence as a failure.\n *\n * The `priceId` must belong to the product named by `productKey`; the checkout operation refuses a\n * mismatched pair. Resolve it through `getPricesForProduct` rather than assuming an ordering.\n *\n * `openCustomerPortal()` opens the provider's own portal — which is where payment methods, card\n * updates and receipt downloads live. Those are deliberately NOT rendered by the framework, so an\n * application that needs them links the portal rather than building them.\n *\n * ## What `usage` contains\n *\n * Metered consumption appears here only if the application RECORDS it. Nothing is automatic: a\n * metered product with no recorded usage shows an empty dashboard rather than an error.\n *\n * ## Invoices are capped\n *\n * `invoices` carries the fifty most recent, which is what the shipped history component renders. An\n * application needing more reads the invoices resource directly.\n */\nexport type BillingPlanChangeTarget = z.infer<typeof BillingSubscription_PreviewPlanChangeRequestDto>;\nexport type BillingPlanChangeConfirmation = z.infer<typeof BillingSubscription_ChangePlanRequestDto>;\nexport type BillingPlanChangePreviewResponse = z.infer<typeof BillingSubscription_PlanChangePreviewResponseDto>;\n\nexport interface BillingContextType {\n // ── Configuration ──\n isEnabled: boolean;\n billingConfiguration: BillingConfiguration | undefined;\n billingProvider: FrontendAppProviderModule | null;\n\n // ── Billing State ──\n billingAccount: BillingAccount | null;\n subscription: BillingSubscriptionBase | null;\n currentPlanKey: string | null;\n currentPlanProduct: Product | null;\n\n // ── Product Catalog ──\n products: Product[];\n prices: Price[];\n productDefinitions: ProductDefinition[];\n getPricesForProduct: (productId: string) => Price[];\n getProductByKey: (key: string) => Product | undefined;\n\n // ── Scope ──\n currentScope: ResourcePrimaryScope | null;\n\n // ── Invoices ──\n invoices: InvoiceRef[];\n\n // ── Promotions ──\n activePromotions: Promotion[];\n\n // ── Usage & Credits ──\n usage: UsageSummary;\n creditPools: Record<string, { available: number; totalPurchased: number; totalConsumed: number }>;\n\n // ── Actions ──\n openCheckout: (productKey: string, priceId: string, options?: {\n quantity?: number;\n promotionCode?: string;\n }) => Promise<void>;\n\n openCustomerPortal: () => Promise<void>;\n /** Provider estimate bound to the current subscription and selected target; never commits a change. */\n previewPlanChange: (target: BillingPlanChangeTarget, options?: { signal?: AbortSignal }) => Promise<BillingPlanChangePreviewResponse>;\n /** Confirm only the server token returned for the displayed preview. Successful mutation refreshes billing state. */\n confirmPlanChange: (confirmation: BillingPlanChangeConfirmation) => Promise<void>;\n\n // ── State ──\n isLoading: boolean;\n error: Error | null;\n /** Only a successful slice read establishes emptiness; failed or absent state is unavailable. */\n availability: BillingStateAvailability | null;\n isSliceAvailable: (slice: BillingStateSlice) => boolean;\n\n // ── Actions ──\n refetch: () => void;\n}\n\n// ── Default empty state ──\nconst EMPTY_USAGE: UsageSummary = {\n byProduct: {},\n};\n\n/** @wildo_source:part:end saas.frontend.billing-context */\n\nexport const BillingContext: React.Context<BillingContextType | undefined> = createContext<BillingContextType | undefined>(undefined);\n\n// ================================\n// Provider\n// ================================\n\nexport interface BillingProviderProps {\n children: React.ReactNode;\n productDefinitions?: ProductDefinition[];\n}\n\nexport function BillingProvider({ children, productDefinitions: injectedProductDefinitions }: BillingProviderProps): React.ReactElement {\n // ── Self-resolve configuration from hooks ──\n const userOrgs = useUserOrgs();\n const appScope = useAppScopeSafe();\n const { appConfig, frontendProviderRegistry } = useApplication();\n const resourceRegistry = useResourceRegistrySafe();\n const billingConfig = appConfig.billing;\n /** What the application CONFIGURED — see `isEnabled` below for why that is only half the answer. */\n const isConfiguredEnabled = billingConfig?.enabled ?? false;\n const billingProvider = useMemo(() => {\n const configuredProviderRef = billingConfig?.providerRef;\n\n const configuredProvider = configuredProviderRef\n ? frontendProviderRegistry?.getProviderByRef(\n configuredProviderRef as FrontendAppProviderRef,\n )\n : undefined;\n\n const resolvedProvider = isBillingFrontendProvider(configuredProvider)\n ? configuredProvider\n : frontendProviderRegistry?.findByProviderCapabilityAndProtocol(\n BUILTIN_PROVIDER_CAPABILITY.BILLING,\n BUILTIN_PROVIDER_PROTOCOL.BILLING_PROVIDER,\n ) ?? null;\n\n if (isConfiguredEnabled && configuredProviderRef && resolvedProvider?.metadata.ref !== configuredProviderRef) {\n logDebug('Billing config providerRef does not match the hydrated frontend billing provider', {\n configuredProviderRef,\n resolvedProviderRef: resolvedProvider?.metadata.ref,\n });\n }\n\n return resolvedProvider;\n }, [billingConfig?.providerRef, frontendProviderRegistry, isConfiguredEnabled]);\n\n // ── Self-resolve scope ──\n const enabledScopes = billingConfig?.enabledScopes ?? [ResourcePrimaryScope.ORGANIZATIONS];\n\n const { scopeType, scopeEntityId } = useMemo(() => {\n if (enabledScopes.includes(ResourcePrimaryScope.ORGANIZATIONS) && appScope?.currentOrganizationId) {\n return { scopeType: ResourcePrimaryScope.ORGANIZATIONS as ResourcePrimaryScope, scopeEntityId: appScope.currentOrganizationId };\n }\n if (enabledScopes.includes(ResourcePrimaryScope.USER_SELF) && userOrgs.user?._id) {\n return { scopeType: ResourcePrimaryScope.USER_SELF as ResourcePrimaryScope, scopeEntityId: userOrgs.user._id };\n }\n return { scopeType: null as ResourcePrimaryScope | null, scopeEntityId: null as string | null };\n }, [enabledScopes, appScope?.currentOrganizationId, userOrgs.user?._id]);\n\n // ── Derive variant resource type for operations ──\n const billingAccountResourceType = scopeType ? SCOPE_TO_BILLING_ACCOUNT_RESOURCE[scopeType] : null;\n\n /**\n * Enabled means CONFIGURED **and** REACHABLE — the config flag alone was not enough.\n *\n * Every request this provider makes is an operation on a billing-account resource, so a consumer\n * whose registry does not carry that resource cannot serve one no matter what the config says.\n * That is not hypothetical: the application-creation workbench excludes the whole tenant\n * vocabulary from its registry (it observes an application's creation and is not that\n * application's admin console) while rendering the OBSERVED application's config, which has\n * billing enabled — so it fired `organization-billing-accounts/get-state/count` at its own origin\n * on every page load, where the companion serves no billing routes, and answered 404 every time\n * (issue #268, reproduced live).\n *\n * Reading the registry rather than adding a second opt-out keeps the two halves from disagreeing:\n * a consumer that excludes the resource has already said billing is not part of its surface, and\n * saying it twice is how the two copies drift. A tenant application carries the resource and is\n * unaffected.\n */\n const isEnabled = isConfiguredEnabled\n && billingAccountResourceType !== null\n // The absent-registry-is-ignorance rule lives on the seam (`isResourceReachable`), shared with the\n // features, guidance and analytics providers since #1069 so the four cannot drift.\n && isResourceReachable(resourceRegistry, billingAccountResourceType);\n\n /**\n * Whether THIS CALLER may read the billing state served for this scope — kept separate from `isEnabled`, on purpose.\n *\n * `isEnabled` says billing is PART OF the application. Every consumer of it — feature availability, operation\n * gating, the launcher — needs that answer for every user alike, so it must not vary with who is looking.\n *\n * Fetching is a different question. `GET_STATE` is role-gated per scope (organization owners and administrators on\n * the organization variant), and a plain member used to request it on every page load, be refused with 403, and\n * see an access-denied message on a page with nothing wrong with it (#1039). That member already ended with a null\n * billing state — the refusal produced it — so not asking changes nothing they can see except the message.\n *\n * The required roles are read from the registry's OWN operation, never copied, and decided by the same\n * hierarchy-aware check the action bar uses. That check fails open on a role it cannot resolve, so a custom role\n * inheriting an administrator role is not locked out here — the server stays the authority either way. With no\n * registry, or no such operation in it, there is no evidence to withhold on, and the request goes out as before.\n */\n const permissions = userOrgs.permissions;\n const currentOrganizationId = appScope?.currentOrganizationId ?? null;\n const mayReadBillingState = useMemo((): boolean => {\n if (!isEnabled || !billingAccountResourceType) return false;\n const getStateOperation = resourceRegistry?.registry.resourceConfigurations[billingAccountResourceType]\n ?.operations.find((operation) =>\n String(operation.operationIdentifier) === BillingAccount_Operations.GET_STATE && operation.isOperationDefault === true);\n if (!getStateOperation) return true;\n return userRolesSatisfyRequiredRoles({\n requiredRoles: getStateOperation.roles,\n userAppRoles: permissions?.appLevel ?? [],\n userOrgRoles: currentOrganizationId ? permissions?.organizations?.[currentOrganizationId] ?? [] : [],\n });\n }, [isEnabled, billingAccountResourceType, resourceRegistry, permissions, currentOrganizationId]);\n\n // ── State ──\n const [billingState, setBillingState] = useState<BillingStateResponse | null>(null);\n const [isLoading, setIsLoading] = useState<boolean>(mayReadBillingState && !!scopeEntityId);\n const [error, setError] = useState<Error | null>(null);\n\n // L-2.b: mirror local loading state onto the LoadingContext event bus so\n // unrelated components can observe billing-state lifecycle via\n // `useComponentLoading({ customIdentifier: ContextLoadingIdentifier.BILLING_STATE })`\n // or `<LoadingGate scopes={[buildContextLoadingScope(BILLING_STATE)]}>`.\n // Local `isLoading` is still exposed for direct consumers (back-compat).\n useEmitLoadingScope({\n identifier: ContextLoadingIdentifier.BILLING_STATE,\n isLoading,\n hasLoadedOnce: billingState !== null,\n });\n\n // ── Refs for stable callbacks ──\n const fetchInFlightRef = useRef<boolean>(false);\n const mountedRef = useRef<boolean>(true);\n const debounceTimerRef = useRef<ReturnType<typeof setTimeout> | null>(null);\n const checkoutInFlightRef = useRef<boolean>(false);\n\n // ── WebSocket ──\n const { on } = useWebSocket();\n\n // ── Resolve redirect base URL ──\n const resolvedRedirectBase = useMemo(\n () => typeof window !== 'undefined' ? window.location.origin : '',\n [],\n );\n\n // ── billingAccountId from response ──\n const billingAccountId = billingState?.billingAccount?._id ?? null;\n\n // ── Clear stale state on scope change ──\n useEffect(() => {\n setBillingState(null);\n setError(null);\n setIsLoading(mayReadBillingState && !!scopeEntityId);\n }, [scopeType, scopeEntityId, mayReadBillingState]);\n\n // ── Fetch billing state from backend ──\n const fetchBillingState = useCallback(async () => {\n if (!mayReadBillingState || !scopeType || !scopeEntityId) return;\n if (fetchInFlightRef.current) return;\n fetchInFlightRef.current = true;\n\n try {\n logDebug('Fetching billing state', { scopeType, scopeEntityId });\n const httpClient = getManualCallsHttpClient();\n\n const urlBuilder = SCOPE_TO_GET_STATE_URL[scopeType];\n if (!urlBuilder) return;\n const url = urlBuilder(scopeEntityId);\n const response = await httpClient.get<BillingStateResponse>(url);\n\n if (mountedRef.current) {\n setBillingState(response);\n setError(null);\n\n logDebug('Billing state fetched', {\n hasAccount: !!response.billingAccount,\n hasSubscription: !!response.subscription,\n productCount: response.products?.length ?? 0,\n priceCount: response.prices?.length ?? 0,\n billingAccountId: response.billingAccount?._id,\n });\n }\n } catch (err: unknown) {\n if (mountedRef.current) {\n const message = err instanceof Error ? err.message : 'Failed to fetch billing state';\n setBillingState(null);\n setError(err instanceof Error ? err : new Error(message));\n logDebug('Failed to fetch billing state', { error: message });\n }\n } finally {\n if (mountedRef.current) {\n setIsLoading(false);\n }\n fetchInFlightRef.current = false;\n }\n }, [mayReadBillingState, scopeType, scopeEntityId]);\n\n // ── Initial fetch ──\n useEffect(() => {\n mountedRef.current = true;\n if (mayReadBillingState && scopeType && scopeEntityId) {\n fetchBillingState();\n } else {\n setIsLoading(false);\n }\n return () => {\n mountedRef.current = false;\n };\n }, [fetchBillingState, mayReadBillingState, scopeType, scopeEntityId]);\n\n // ── WebSocket invalidation (debounced) ──\n useEffect(() => {\n if (!mayReadBillingState) return;\n\n const unsubscribers: Array<() => void> = [];\n\n const debouncedRefetch = () => {\n if (debounceTimerRef.current) {\n clearTimeout(debounceTimerRef.current);\n }\n debounceTimerRef.current = setTimeout(() => {\n debounceTimerRef.current = null;\n fetchBillingState();\n }, 300);\n };\n\n for (const event of INVALIDATION_EVENTS) {\n const unsub = on<WS_BillingEventPayload>(event, (payload) => {\n if (!scopeType || !scopeEntityId) {\n logDebug('Ignoring billing invalidation without active scope', { event, payload });\n return;\n }\n\n if (payload.scopeType !== scopeType || payload.scopeEntityId !== scopeEntityId) {\n logDebug('Ignoring billing invalidation for another scope', {\n event,\n payload,\n currentScopeType: scopeType,\n currentScopeEntityId: scopeEntityId,\n });\n return;\n }\n\n if (billingAccountId && payload.billingAccountId !== billingAccountId) {\n logDebug('Ignoring billing invalidation for another billing account', {\n event,\n payload,\n currentBillingAccountId: billingAccountId,\n });\n return;\n }\n\n logDebug('WebSocket invalidation event received, scheduling refetch', { event, payload });\n debouncedRefetch();\n });\n unsubscribers.push(unsub);\n }\n\n return () => {\n if (debounceTimerRef.current) {\n clearTimeout(debounceTimerRef.current);\n }\n for (const unsub of unsubscribers) {\n unsub();\n }\n };\n }, [on, fetchBillingState, mayReadBillingState, scopeType, scopeEntityId, billingAccountId]);\n\n // ── Derived state ──\n const availability = billingState?.availability ?? null;\n const isSliceAvailable = useCallback((slice: BillingStateSlice) => availability?.[slice] === BillingSliceAvailability.AVAILABLE, [availability]);\n\n const billingAccount = billingState?.billingAccount ?? null;\n const subscription = billingState?.subscription ?? null;\n const products = billingState?.products ?? [];\n const prices = billingState?.prices ?? [];\n const invoices = billingState?.invoices ?? [];\n const usage = billingState?.usage ?? EMPTY_USAGE;\n const creditPools = billingState?.creditPools ?? {};\n const activePromotions = billingState?.activePromotions ?? [];\n const currentScope = scopeType ?? null;\n\n // ── Product catalog lookups ──\n const productsByKey = useMemo(() => {\n const map = new Map<string, Product>();\n for (const p of products) {\n map.set(p.key, p);\n }\n return map;\n }, [products]);\n\n const pricesByProductId = useMemo(() => {\n const map = new Map<string, Price[]>();\n for (const price of prices) {\n const existing = map.get(price.productId) ?? [];\n existing.push(price);\n map.set(price.productId, existing);\n }\n return map;\n }, [prices]);\n\n const getPricesForProduct = useCallback(\n (productId: string): Price[] => pricesByProductId.get(productId) ?? [],\n [pricesByProductId],\n );\n\n const getProductByKey = useCallback(\n (key: string): Product | undefined => productsByKey.get(key),\n [productsByKey],\n );\n\n // ── Current plan derivation ──\n const { currentPlanKey, currentPlanProduct } = useMemo(() => {\n if (!subscription || !subscription.items?.length) {\n return { currentPlanKey: null, currentPlanProduct: null };\n }\n for (const item of subscription.items) {\n const product = products.find(p => p._id === item.productId);\n if (product && product.type === 'plan') {\n return { currentPlanKey: product.key, currentPlanProduct: product };\n }\n }\n return { currentPlanKey: null, currentPlanProduct: null };\n }, [subscription, products]);\n\n const productDefinitions = useMemo<ProductDefinition[]>(\n () => injectedProductDefinitions ?? [],\n [injectedProductDefinitions],\n );\n\n // ── Actions ──\n const openCheckout = useCallback(\n async (productKey: string, priceId: string, options?: {\n quantity?: number;\n promotionCode?: string;\n }): Promise<void> => {\n if (!billingAccountId || !billingAccountResourceType || !scopeType || !scopeEntityId) {\n throw new Error('No billing account available. Cannot open checkout.');\n }\n const checkoutUrl = SCOPE_TO_OPEN_CHECKOUT_URL[scopeType]?.(scopeEntityId, billingAccountId);\n if (!checkoutUrl) {\n throw new Error(`No OPEN_CHECKOUT URL builder for scope ${scopeType}.`);\n }\n if (checkoutInFlightRef.current) {\n logDebug('Checkout already in progress, ignoring duplicate request');\n return;\n }\n\n checkoutInFlightRef.current = true;\n try {\n logDebug('Opening checkout session', { productKey, priceId, ...options });\n const httpClient = getManualCallsHttpClient();\n\n // OPEN_CHECKOUT borrows UPDATE → keyed PUT on the scoped account route.\n const response = await httpClient.put<CheckoutSessionResponse>(\n checkoutUrl,\n {\n productKey,\n priceId,\n successUrl: `${resolvedRedirectBase}/billing/success?session_id={CHECKOUT_SESSION_ID}`,\n cancelUrl: `${resolvedRedirectBase}/billing/cancel`,\n quantity: options?.quantity,\n promotionCode: options?.promotionCode,\n },\n );\n\n if (response.url) {\n window.location.href = response.url;\n }\n } finally {\n checkoutInFlightRef.current = false;\n }\n },\n [billingAccountId, billingAccountResourceType, scopeType, scopeEntityId, resolvedRedirectBase],\n );\n\n const openCustomerPortal = useCallback(async (): Promise<void> => {\n if (!billingAccountId || !billingAccountResourceType || !scopeType || !scopeEntityId) {\n throw new Error('No billing account available. Cannot open customer portal.');\n }\n const portalUrlBase = SCOPE_TO_OPEN_PORTAL_URL[scopeType]?.(scopeEntityId, billingAccountId);\n if (!portalUrlBase) {\n throw new Error(`No OPEN_PORTAL URL builder for scope ${scopeType}.`);\n }\n\n logDebug('Opening customer portal session');\n const httpClient = getManualCallsHttpClient();\n\n // OPEN_PORTAL borrows READ → keyed GET on the scoped account route; the\n // returnUrl travels as a query param since GET carries no request body.\n const returnUrl = encodeURIComponent(`${resolvedRedirectBase}/billing`);\n const response = await httpClient.get<PortalSessionResponse>(\n `${portalUrlBase}?returnUrl=${returnUrl}`,\n );\n\n if (response.url) {\n window.location.href = response.url;\n }\n }, [billingAccountId, billingAccountResourceType, scopeType, scopeEntityId, resolvedRedirectBase]);\n\n // ── Context value (memoized for stable reference) ──\n // Use the registry's compiled operation paths and parameter vocabulary. Subscription routes have\n // account and scope parents; hand-authored URLs would silently diverge between org and user variants.\n const callPlanOperation = useCallback(async <TResponse,>(\n operationIdentifier: BillingSubscription_Operations,\n payload: BillingPlanChangeTarget | BillingPlanChangeConfirmation,\n signal?: AbortSignal,\n ): Promise<TResponse> => {\n if (!resourceRegistry || !subscription?._id || !billingAccountId || !billingAccountResourceType || !scopeType || !scopeEntityId\n || ![BillingStateSlice.BILLING_ACCOUNT, BillingStateSlice.SUBSCRIPTION, BillingStateSlice.PRODUCTS, BillingStateSlice.PRICES].every(isSliceAvailable)) {\n throw new Error('Billing plan change context is unavailable.');\n }\n const subscriptionType = scopeType === ResourcePrimaryScope.ORGANIZATIONS ? CoreResourceType.ORGANIZATION_SUBSCRIPTIONS : CoreResourceType.USER_SUBSCRIPTIONS;\n const config = resourceRegistry.registry.resourceConfigurations[subscriptionType];\n const operation = config?.operations.find(candidate => candidate.operationIdentifier === operationIdentifier\n && candidate.variantType === ResourceOperationVariantType.API_CALL && candidate.isOperationDefault);\n if (!operation || operation.variantType !== ResourceOperationVariantType.API_CALL) throw new Error('Billing plan change operation is unavailable.');\n const fields = resourceRegistry.registry.allResourceFieldIdentifiers;\n const scopeResourceType = scopeType === ResourcePrimaryScope.ORGANIZATIONS ? CoreResourceType.ORGANIZATIONS : CoreResourceType.USERS;\n const accountField = fields[billingAccountResourceType];\n const scopeField = fields[scopeResourceType];\n if (!config.resourceFieldIdentifier || !accountField || !scopeField) throw new Error('Billing plan change route context is unavailable.');\n return resourceRegistry.doOperation<TResponse>(ResourcesConfig_OperationPathUtils.createOperationPathKeyFromOperation(operation), {\n contextualParameters: { [config.resourceFieldIdentifier]: subscription._id, [accountField]: billingAccountId, [scopeField]: scopeEntityId },\n ...(operation.httpVerb === HttpMethod.GET ? { queryParameters: payload } : { requestData: payload }),\n }, { signal, silent: true });\n }, [resourceRegistry, subscription?._id, billingAccountId, billingAccountResourceType, scopeType, scopeEntityId, isSliceAvailable]);\n\n const previewPlanChange = useCallback(async (target: BillingPlanChangeTarget, options?: { signal?: AbortSignal }): Promise<BillingPlanChangePreviewResponse> => {\n const parsed = BillingSubscription_PreviewPlanChangeRequestDto.parse(target);\n const response = await callPlanOperation<BillingPlanChangePreviewResponse>(BillingSubscription_Operations.PREVIEW_PLAN_CHANGE, parsed, options?.signal);\n return BillingSubscription_PlanChangePreviewResponseDto.parse(response);\n }, [callPlanOperation]);\n\n const confirmPlanChange = useCallback(async (confirmation: BillingPlanChangeConfirmation): Promise<void> => {\n const parsed = BillingSubscription_ChangePlanRequestDto.parse(confirmation);\n await callPlanOperation(BillingSubscription_Operations.CHANGE_PLAN, parsed);\n await fetchBillingState();\n }, [callPlanOperation, fetchBillingState]);\n\n const contextValue: BillingContextType = useMemo(\n () => ({\n isEnabled,\n billingConfiguration: billingConfig,\n billingProvider,\n billingAccount,\n subscription,\n currentPlanKey,\n currentPlanProduct,\n currentScope,\n products,\n prices,\n invoices,\n productDefinitions,\n getPricesForProduct,\n getProductByKey,\n activePromotions,\n usage,\n creditPools,\n openCheckout,\n openCustomerPortal,\n previewPlanChange,\n confirmPlanChange,\n isLoading,\n availability,\n isSliceAvailable,\n error,\n refetch: fetchBillingState,\n }),\n [\n isEnabled,\n billingConfig,\n billingProvider,\n billingAccount,\n subscription,\n currentPlanKey,\n currentPlanProduct,\n currentScope,\n products,\n prices,\n invoices,\n productDefinitions,\n getPricesForProduct,\n getProductByKey,\n activePromotions,\n usage,\n creditPools,\n openCheckout,\n openCustomerPortal,\n previewPlanChange,\n confirmPlanChange,\n isLoading,\n availability,\n isSliceAvailable,\n error,\n fetchBillingState,\n ],\n );\n\n return (\n <BillingContext.Provider value={contextValue}>\n {children}\n </BillingContext.Provider>\n );\n}\n\nfunction isBillingFrontendProvider(\n provider: FrontendAppProviderModule | undefined,\n): provider is FrontendAppProviderModule {\n return !!provider\n && provider.providerCapabilities.includes(BUILTIN_PROVIDER_CAPABILITY.BILLING)\n && provider.protocols.includes(BUILTIN_PROVIDER_PROTOCOL.BILLING_PROVIDER);\n}\n"]}
1
+ {"version":3,"file":"BillingContext.js","sourceRoot":"","sources":["../../../../src/core/billing/BillingContext.tsx"],"names":[],"mappings":"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","sourcesContent":["import type { z } from 'zod';\n/**\n * BillingContext\n *\n * Central context for billing operations on the frontend.\n *\n * Responsibilities:\n * - Self-resolves scope (org/user) from AppScope + user context — no external props needed\n * - Fetches billing state via the GET_STATE resource operation on the billing account\n * - The backend auto-creates the billing account if one doesn't exist\n * - Provides actions: openCheckout, openCustomerPortal (via resource operations)\n * - Caches billing state and invalidates on WebSocket events\n * - Exposes convenience accessors for current plan, subscription status, etc.\n *\n * DELEGATION PRINCIPLE: The frontend does NOT build payment UI.\n * - Stripe Checkout (hosted page): for new subscriptions and upgrades\n * - Stripe Customer Portal (hosted page): for invoices, payment methods, cancellation\n */\n\nimport React, { createContext, useEffect, useState, useCallback, useMemo, useRef } from 'react';\nimport type {\n BillingAccount,\n BillingSubscriptionBase,\n Product,\n Price,\n Promotion,\n InvoiceRef,\n UsageSummary,\n BillingConfiguration,\n ProductDefinition,\n BillingStateResponse,\n BillingStateAvailability,\n WS_BillingEventPayload,\n} from '@wildo-ai/saas-models';\nimport {\n BillingAccount_Operations,\n BillingSubscription_Operations,\n BillingSubscription_PreviewPlanChangeRequestDto,\n BillingSubscription_ChangePlanRequestDto,\n BillingSubscription_PlanChangePreviewResponseDto,\n ResourceOperationVariantType,\n ResourcesConfig_OperationPathUtils,\n HttpMethod,\n BillingStateSlice,\n BillingSliceAvailability,\n CoreWebSocketEvent,\n CoreResourceType,\n ResourcePrimaryScope,\n MAIN_API_BASE_PATH,\n userRolesSatisfyRequiredRoles,\n} from '@wildo-ai/saas-models';\nimport { useWebSocket } from '~wildo-frontend-lib/core/requests/websockets/useWebSocket';\nimport { useUserOrgs } from '~wildo-frontend-lib/core/security/useUserOrgs';\nimport { useAppScopeSafe } from '~wildo-frontend-lib/core/scope/useAppScope';\nimport { useApplication } from '~wildo-frontend-lib/core/runtime/useApplication';\nimport { isResourceReachable, useResourceRegistrySafe } from '~wildo-frontend-lib/core/resources/useResourceRegistry';\nimport { LoggerFrontendService } from '~wildo-frontend-lib/core/monitoring/logger.frontend.service';\nimport { getManualCallsHttpClient } from '~wildo-frontend-lib/core/requests/wildo-http-client-manual-calls.frontend.service';\nimport { useEmitLoadingScope } from '~wildo-frontend-lib/core/loading/useEmitLoadingScope';\nimport { ContextLoadingIdentifier } from '~wildo-frontend-lib/core/loading/loading-types.frontend.schemas';\n\n// ================================\n// Logger\n// ================================\n\nconst billingLogger: LoggerFrontendService = LoggerFrontendService.getLogger();\nconst logDebug: (message: string, context?: Record<string, unknown>) => void = billingLogger.debugByType('BillingContext');\nbillingLogger.setDebugTypeLogging('BillingContext', false);\n\n// ================================\n// Constants\n// ================================\n\nconst API_PREFIX = MAIN_API_BASE_PATH;\n\n/** WebSocket events that trigger a refetch of billing state */\nconst INVALIDATION_EVENTS = [\n CoreWebSocketEvent.BILLING_STATUS_CHANGED,\n CoreWebSocketEvent.BILLING_SUBSCRIPTION_UPDATED,\n CoreWebSocketEvent.BILLING_ACCOUNT_CHANGED,\n CoreWebSocketEvent.BILLING_USAGE_UPDATED,\n CoreWebSocketEvent.BILLING_CREDIT_POOL_UPDATED,\n CoreWebSocketEvent.BILLING_FEATURES_UPDATED,\n] as const;\n\n/** Maps ResourcePrimaryScope → billing account variant resource type (for resource operations) */\nconst SCOPE_TO_BILLING_ACCOUNT_RESOURCE: Record<string, string> = {\n [ResourcePrimaryScope.ORGANIZATIONS]: CoreResourceType.ORGANIZATION_BILLING_ACCOUNTS,\n [ResourcePrimaryScope.USER_SELF]: CoreResourceType.USER_BILLING_ACCOUNTS,\n};\n\n// The billing-account GET_STATE / OPEN_CHECKOUT / OPEN_PORTAL custom operations\n// borrow COUNT / UPDATE / READ core semantics (see\n// `billing-account.shared.resources-config.schemas.ts`), so their canonical\n// routes follow the framework's scoped resource-operation shape:\n// GET_STATE (COUNT-like) → GET /<scope>/{id}/<res>/get-state/count\n// OPEN_CHECKOUT (UPDATE-like) → PUT /<scope>/{id}/<res>/{accountId}/open-checkout\n// OPEN_PORTAL (READ-like) → GET /<scope>/{id}/<res>/{accountId}/open-portal\n// Built here to mirror the routes the backend registers from the same\n// resources-config; the prior `/operations/open_checkout` POST 404'd.\n\n/** Maps ResourcePrimaryScope → GET_STATE URL builder (COUNT-like → trailing `/count`) */\nconst SCOPE_TO_GET_STATE_URL: Record<string, (scopeEntityId: string) => string> = {\n [ResourcePrimaryScope.ORGANIZATIONS]: (id) => `${API_PREFIX}/organizations/${id}/organization-billing-accounts/get-state/count`,\n [ResourcePrimaryScope.USER_SELF]: (id) => `${API_PREFIX}/users/${id}/user-billing-accounts/get-state/count`,\n};\n\n/** Maps ResourcePrimaryScope → OPEN_CHECKOUT URL builder (UPDATE-like → keyed PUT) */\nconst SCOPE_TO_OPEN_CHECKOUT_URL: Record<string, (scopeEntityId: string, billingAccountId: string) => string> = {\n [ResourcePrimaryScope.ORGANIZATIONS]: (id, acc) => `${API_PREFIX}/organizations/${id}/organization-billing-accounts/${acc}/open-checkout`,\n [ResourcePrimaryScope.USER_SELF]: (id, acc) => `${API_PREFIX}/users/${id}/user-billing-accounts/${acc}/open-checkout`,\n};\n\n/** Maps ResourcePrimaryScope → OPEN_PORTAL URL builder (READ-like → keyed GET) */\nconst SCOPE_TO_OPEN_PORTAL_URL: Record<string, (scopeEntityId: string, billingAccountId: string) => string> = {\n [ResourcePrimaryScope.ORGANIZATIONS]: (id, acc) => `${API_PREFIX}/organizations/${id}/organization-billing-accounts/${acc}/open-portal`,\n [ResourcePrimaryScope.USER_SELF]: (id, acc) => `${API_PREFIX}/users/${id}/user-billing-accounts/${acc}/open-portal`,\n};\n\n// ================================\n// API Response Types\n// ================================\n\n/** Response from PUT /<scope>/{id}/<billing-accounts>/{accountId}/open-checkout (OPEN_CHECKOUT) */\ninterface CheckoutSessionResponse {\n url: string;\n sessionId: string;\n}\n\n/** Response from GET /<scope>/{id}/<billing-accounts>/{accountId}/open-portal (OPEN_PORTAL) */\ninterface PortalSessionResponse {\n url: string;\n}\n\n// ================================\n// Context Type\n// ================================\n\n/**\n * @wildo_source:part:start saas.frontend.billing-context facet:layer:frontend facet:audience:app-developer\n *\n * Everything an application's own frontend reads or does about billing. Reached with `useBilling()`,\n * which throws outside a `BillingProvider`; `useBillingSafe()` returns `undefined` instead, for a\n * component that may render before the provider mounts or in an application where billing is off.\n *\n * The shipped billing components and the feature-gating hooks read this same context, so an\n * application composing its own purchase flow works from exactly what they do — no application code\n * builds the request.\n *\n * ## Starting a purchase\n *\n * `openCheckout(productKey, priceId, options)` posts to the scoped billing-account route and follows\n * the returned URL; success and cancel destinations come from the application's own redirect base. A\n * SECOND call while one is in flight is IGNORED, so a double-click cannot open two sessions — do not\n * add your own guard expecting otherwise, and do not read the silence as a failure.\n *\n * The `priceId` must belong to the product named by `productKey`; the checkout operation refuses a\n * mismatched pair. Resolve it through `getPricesForProduct` rather than assuming an ordering.\n *\n * `openCustomerPortal()` opens the provider's own portal — which is where payment methods, card\n * updates and receipt downloads live. Those are deliberately NOT rendered by the framework, so an\n * application that needs them links the portal rather than building them.\n *\n * ## What `usage` contains\n *\n * Metered consumption appears here only if the application RECORDS it. Nothing is automatic: a\n * metered product with no recorded usage shows an empty dashboard rather than an error.\n *\n * ## Invoices are capped\n *\n * `invoices` carries the fifty most recent, which is what the shipped history component renders. An\n * application needing more reads the invoices resource directly.\n */\nexport type BillingPlanChangeTarget = z.infer<typeof BillingSubscription_PreviewPlanChangeRequestDto>;\nexport type BillingPlanChangeConfirmation = z.infer<typeof BillingSubscription_ChangePlanRequestDto>;\nexport type BillingPlanChangePreviewResponse = z.infer<typeof BillingSubscription_PlanChangePreviewResponseDto>;\n\nexport interface BillingContextType {\n // ── Configuration ──\n isEnabled: boolean;\n billingConfiguration: BillingConfiguration | undefined;\n /**\n * The configured billing provider's REF (`billing.providerRef`), or null when billing is off or\n * names none. Surfaces show the vendor's name from it (`providers.<ref>.displayName`, #1895).\n *\n * It used to be a frontend provider MODULE, resolved from the registry by ref or by the `BILLING`\n * capability. The only such module was Stripe's, which loaded no Stripe code — checkout and the\n * customer portal are hosted redirects — and existed only to carry that name (#1701). The ref is the\n * fact the application configured; a module was a second place that had to agree with it.\n */\n billingProviderRef: string | null;\n\n // ── Billing State ──\n billingAccount: BillingAccount | null;\n subscription: BillingSubscriptionBase | null;\n currentPlanKey: string | null;\n currentPlanProduct: Product | null;\n\n // ── Product Catalog ──\n products: Product[];\n prices: Price[];\n productDefinitions: ProductDefinition[];\n getPricesForProduct: (productId: string) => Price[];\n getProductByKey: (key: string) => Product | undefined;\n /**\n * May this product be bought, or moved onto, right now? Answered from the billing state's\n * `acquirableProductKeys` — the set the backend derives with the SAME predicate its checkout,\n * plan-change and add-on doors enforce — so a surface never re-derives it from `isActive` and can\n * never offer a plan the backend refuses (a retired one, or an announced-but-upcoming one, #1835).\n * Fails closed: a state that did not carry the set answers `false`, because an unknown answer must\n * not offer a checkout.\n */\n isProductAcquirable: (key: string) => boolean;\n\n // ── Scope ──\n currentScope: ResourcePrimaryScope | null;\n\n // ── Invoices ──\n invoices: InvoiceRef[];\n\n // ── Promotions ──\n activePromotions: Promotion[];\n\n // ── Usage & Credits ──\n usage: UsageSummary;\n creditPools: Record<string, { available: number; totalPurchased: number; totalGranted: number; totalConsumed: number }>;\n\n // ── Actions ──\n openCheckout: (productKey: string, priceId: string, options?: {\n quantity?: number;\n promotionCode?: string;\n }) => Promise<void>;\n\n openCustomerPortal: () => Promise<void>;\n /** Provider estimate bound to the current subscription and selected target; never commits a change. */\n previewPlanChange: (target: BillingPlanChangeTarget, options?: { signal?: AbortSignal }) => Promise<BillingPlanChangePreviewResponse>;\n /** Confirm only the server token returned for the displayed preview. Successful mutation refreshes billing state. */\n confirmPlanChange: (confirmation: BillingPlanChangeConfirmation) => Promise<void>;\n /**\n * Withdraw the plan change pending at the end of the period (`subscription.pendingPlanChange`, #1868), so the subscription renews\n * on its current plan. Successful withdrawal refreshes billing state.\n */\n cancelPendingPlanChange: () => Promise<void>;\n\n // ── State ──\n isLoading: boolean;\n error: Error | null;\n /** Only a successful slice read establishes emptiness; failed or absent state is unavailable. */\n availability: BillingStateAvailability | null;\n isSliceAvailable: (slice: BillingStateSlice) => boolean;\n\n // ── Actions ──\n refetch: () => void;\n}\n\n// ── Default empty state ──\nconst EMPTY_USAGE: UsageSummary = {\n byProduct: {},\n};\n\n/** @wildo_source:part:end saas.frontend.billing-context */\n\nexport const BillingContext: React.Context<BillingContextType | undefined> = createContext<BillingContextType | undefined>(undefined);\n\n// ================================\n// Provider\n// ================================\n\nexport interface BillingProviderProps {\n children: React.ReactNode;\n productDefinitions?: ProductDefinition[];\n}\n\nexport function BillingProvider({ children, productDefinitions: injectedProductDefinitions }: BillingProviderProps): React.ReactElement {\n // ── Self-resolve configuration from hooks ──\n const userOrgs = useUserOrgs();\n const appScope = useAppScopeSafe();\n const { appConfig } = useApplication();\n const resourceRegistry = useResourceRegistrySafe();\n const billingConfig = appConfig.billing;\n /** What the application CONFIGURED — see `isEnabled` below for why that is only half the answer. */\n const isConfiguredEnabled = billingConfig?.enabled ?? false;\n const billingProviderRef = isConfiguredEnabled ? billingConfig?.providerRef ?? null : null;\n\n // ── Self-resolve scope ──\n const enabledScopes = billingConfig?.enabledScopes ?? [ResourcePrimaryScope.ORGANIZATIONS];\n\n const { scopeType, scopeEntityId } = useMemo(() => {\n if (enabledScopes.includes(ResourcePrimaryScope.ORGANIZATIONS) && appScope?.currentOrganizationId) {\n return { scopeType: ResourcePrimaryScope.ORGANIZATIONS as ResourcePrimaryScope, scopeEntityId: appScope.currentOrganizationId };\n }\n if (enabledScopes.includes(ResourcePrimaryScope.USER_SELF) && userOrgs.user?._id) {\n return { scopeType: ResourcePrimaryScope.USER_SELF as ResourcePrimaryScope, scopeEntityId: userOrgs.user._id };\n }\n return { scopeType: null as ResourcePrimaryScope | null, scopeEntityId: null as string | null };\n }, [enabledScopes, appScope?.currentOrganizationId, userOrgs.user?._id]);\n\n // ── Derive variant resource type for operations ──\n const billingAccountResourceType = scopeType ? SCOPE_TO_BILLING_ACCOUNT_RESOURCE[scopeType] : null;\n\n /**\n * Enabled means CONFIGURED **and** REACHABLE — the config flag alone was not enough.\n *\n * Every request this provider makes is an operation on a billing-account resource, so a consumer\n * whose registry does not carry that resource cannot serve one no matter what the config says.\n * That is not hypothetical: the application-creation workbench excludes the whole tenant\n * vocabulary from its registry (it observes an application's creation and is not that\n * application's admin console) while rendering the OBSERVED application's config, which has\n * billing enabled — so it fired `organization-billing-accounts/get-state/count` at its own origin\n * on every page load, where the companion serves no billing routes, and answered 404 every time\n * (issue #268, reproduced live).\n *\n * Reading the registry rather than adding a second opt-out keeps the two halves from disagreeing:\n * a consumer that excludes the resource has already said billing is not part of its surface, and\n * saying it twice is how the two copies drift. A tenant application carries the resource and is\n * unaffected.\n */\n const isEnabled = isConfiguredEnabled\n && billingAccountResourceType !== null\n // The absent-registry-is-ignorance rule lives on the seam (`isResourceReachable`), shared with the\n // features, guidance and analytics providers since #1069 so the four cannot drift.\n && isResourceReachable(resourceRegistry, billingAccountResourceType);\n\n /**\n * Whether THIS CALLER may read the billing state served for this scope — kept separate from `isEnabled`, on purpose.\n *\n * `isEnabled` says billing is PART OF the application. Every consumer of it — feature availability, operation\n * gating, the launcher — needs that answer for every user alike, so it must not vary with who is looking.\n *\n * Fetching is a different question. `GET_STATE` is role-gated per scope (organization owners and administrators on\n * the organization variant), and a plain member used to request it on every page load, be refused with 403, and\n * see an access-denied message on a page with nothing wrong with it (#1039). That member already ended with a null\n * billing state — the refusal produced it — so not asking changes nothing they can see except the message.\n *\n * The required roles are read from the registry's OWN operation, never copied, and decided by the same\n * hierarchy-aware check the action bar uses. That check fails open on a role it cannot resolve, so a custom role\n * inheriting an administrator role is not locked out here — the server stays the authority either way. With no\n * registry, or no such operation in it, there is no evidence to withhold on, and the request goes out as before.\n */\n const permissions = userOrgs.permissions;\n const currentOrganizationId = appScope?.currentOrganizationId ?? null;\n const mayReadBillingState = useMemo((): boolean => {\n if (!isEnabled || !billingAccountResourceType) return false;\n const getStateOperation = resourceRegistry?.registry.resourceConfigurations[billingAccountResourceType]\n ?.operations.find((operation) =>\n String(operation.operationIdentifier) === BillingAccount_Operations.GET_STATE && operation.isOperationDefault === true);\n if (!getStateOperation) return true;\n return userRolesSatisfyRequiredRoles({\n requiredRoles: getStateOperation.roles,\n userAppRoles: permissions?.appLevel ?? [],\n userOrgRoles: currentOrganizationId ? permissions?.organizations?.[currentOrganizationId] ?? [] : [],\n });\n }, [isEnabled, billingAccountResourceType, resourceRegistry, permissions, currentOrganizationId]);\n\n // ── State ──\n const [billingState, setBillingState] = useState<BillingStateResponse | null>(null);\n const [isLoading, setIsLoading] = useState<boolean>(mayReadBillingState && !!scopeEntityId);\n const [error, setError] = useState<Error | null>(null);\n\n // L-2.b: mirror local loading state onto the LoadingContext event bus so\n // unrelated components can observe billing-state lifecycle via\n // `useComponentLoading({ customIdentifier: ContextLoadingIdentifier.BILLING_STATE })`\n // or `<LoadingGate scopes={[buildContextLoadingScope(BILLING_STATE)]}>`.\n // Local `isLoading` is still exposed for direct consumers (back-compat).\n useEmitLoadingScope({\n identifier: ContextLoadingIdentifier.BILLING_STATE,\n isLoading,\n hasLoadedOnce: billingState !== null,\n });\n\n // ── Refs for stable callbacks ──\n const fetchInFlightRef = useRef<boolean>(false);\n const mountedRef = useRef<boolean>(true);\n const debounceTimerRef = useRef<ReturnType<typeof setTimeout> | null>(null);\n const checkoutInFlightRef = useRef<boolean>(false);\n\n // ── WebSocket ──\n const { on } = useWebSocket();\n\n // ── Resolve redirect base URL ──\n const resolvedRedirectBase = useMemo(\n () => typeof window !== 'undefined' ? window.location.origin : '',\n [],\n );\n\n // ── billingAccountId from response ──\n const billingAccountId = billingState?.billingAccount?._id ?? null;\n\n // ── Clear stale state on scope change ──\n useEffect(() => {\n setBillingState(null);\n setError(null);\n setIsLoading(mayReadBillingState && !!scopeEntityId);\n }, [scopeType, scopeEntityId, mayReadBillingState]);\n\n // ── Fetch billing state from backend ──\n const fetchBillingState = useCallback(async () => {\n if (!mayReadBillingState || !scopeType || !scopeEntityId) return;\n if (fetchInFlightRef.current) return;\n fetchInFlightRef.current = true;\n\n try {\n logDebug('Fetching billing state', { scopeType, scopeEntityId });\n const httpClient = getManualCallsHttpClient();\n\n const urlBuilder = SCOPE_TO_GET_STATE_URL[scopeType];\n if (!urlBuilder) return;\n const url = urlBuilder(scopeEntityId);\n const response = await httpClient.get<BillingStateResponse>(url);\n\n if (mountedRef.current) {\n setBillingState(response);\n setError(null);\n\n logDebug('Billing state fetched', {\n hasAccount: !!response.billingAccount,\n hasSubscription: !!response.subscription,\n productCount: response.products?.length ?? 0,\n priceCount: response.prices?.length ?? 0,\n billingAccountId: response.billingAccount?._id,\n });\n }\n } catch (err: unknown) {\n if (mountedRef.current) {\n const message = err instanceof Error ? err.message : 'Failed to fetch billing state';\n setBillingState(null);\n setError(err instanceof Error ? err : new Error(message));\n logDebug('Failed to fetch billing state', { error: message });\n }\n } finally {\n if (mountedRef.current) {\n setIsLoading(false);\n }\n fetchInFlightRef.current = false;\n }\n }, [mayReadBillingState, scopeType, scopeEntityId]);\n\n // ── Initial fetch ──\n useEffect(() => {\n mountedRef.current = true;\n if (mayReadBillingState && scopeType && scopeEntityId) {\n fetchBillingState();\n } else {\n setIsLoading(false);\n }\n return () => {\n mountedRef.current = false;\n };\n }, [fetchBillingState, mayReadBillingState, scopeType, scopeEntityId]);\n\n // ── WebSocket invalidation (debounced) ──\n useEffect(() => {\n if (!mayReadBillingState) return;\n\n const unsubscribers: Array<() => void> = [];\n\n const debouncedRefetch = () => {\n if (debounceTimerRef.current) {\n clearTimeout(debounceTimerRef.current);\n }\n debounceTimerRef.current = setTimeout(() => {\n debounceTimerRef.current = null;\n fetchBillingState();\n }, 300);\n };\n\n for (const event of INVALIDATION_EVENTS) {\n const unsub = on<WS_BillingEventPayload>(event, (payload) => {\n if (!scopeType || !scopeEntityId) {\n logDebug('Ignoring billing invalidation without active scope', { event, payload });\n return;\n }\n\n if (payload.scopeType !== scopeType || payload.scopeEntityId !== scopeEntityId) {\n logDebug('Ignoring billing invalidation for another scope', {\n event,\n payload,\n currentScopeType: scopeType,\n currentScopeEntityId: scopeEntityId,\n });\n return;\n }\n\n if (billingAccountId && payload.billingAccountId !== billingAccountId) {\n logDebug('Ignoring billing invalidation for another billing account', {\n event,\n payload,\n currentBillingAccountId: billingAccountId,\n });\n return;\n }\n\n logDebug('WebSocket invalidation event received, scheduling refetch', { event, payload });\n debouncedRefetch();\n });\n unsubscribers.push(unsub);\n }\n\n return () => {\n if (debounceTimerRef.current) {\n clearTimeout(debounceTimerRef.current);\n }\n for (const unsub of unsubscribers) {\n unsub();\n }\n };\n }, [on, fetchBillingState, mayReadBillingState, scopeType, scopeEntityId, billingAccountId]);\n\n // ── Derived state ──\n const availability = billingState?.availability ?? null;\n const isSliceAvailable = useCallback((slice: BillingStateSlice) => availability?.[slice] === BillingSliceAvailability.AVAILABLE, [availability]);\n\n const billingAccount = billingState?.billingAccount ?? null;\n const subscription = billingState?.subscription ?? null;\n const products = billingState?.products ?? [];\n const prices = billingState?.prices ?? [];\n const invoices = billingState?.invoices ?? [];\n const usage = billingState?.usage ?? EMPTY_USAGE;\n const creditPools = billingState?.creditPools ?? {};\n const activePromotions = billingState?.activePromotions ?? [];\n const acquirableProductKeys = billingState?.acquirableProductKeys;\n const currentScope = scopeType ?? null;\n\n // ── Product catalog lookups ──\n const productsByKey = useMemo(() => {\n const map = new Map<string, Product>();\n for (const p of products) {\n map.set(p.key, p);\n }\n return map;\n }, [products]);\n\n const pricesByProductId = useMemo(() => {\n const map = new Map<string, Price[]>();\n for (const price of prices) {\n const existing = map.get(price.productId) ?? [];\n existing.push(price);\n map.set(price.productId, existing);\n }\n return map;\n }, [prices]);\n\n const getPricesForProduct = useCallback(\n (productId: string): Price[] => pricesByProductId.get(productId) ?? [],\n [pricesByProductId],\n );\n\n const getProductByKey = useCallback(\n (key: string): Product | undefined => productsByKey.get(key),\n [productsByKey],\n );\n\n const acquirableProductKeySet = useMemo(() => new Set(acquirableProductKeys ?? []), [acquirableProductKeys]);\n const isProductAcquirable = useCallback((key: string): boolean => acquirableProductKeySet.has(key), [acquirableProductKeySet]);\n\n // ── Current plan derivation ──\n const { currentPlanKey, currentPlanProduct } = useMemo(() => {\n if (!subscription || !subscription.items?.length) {\n return { currentPlanKey: null, currentPlanProduct: null };\n }\n for (const item of subscription.items) {\n const product = products.find(p => p._id === item.productId);\n if (product && product.type === 'plan') {\n return { currentPlanKey: product.key, currentPlanProduct: product };\n }\n }\n return { currentPlanKey: null, currentPlanProduct: null };\n }, [subscription, products]);\n\n const productDefinitions = useMemo<ProductDefinition[]>(\n () => injectedProductDefinitions ?? [],\n [injectedProductDefinitions],\n );\n\n // ── Actions ──\n const openCheckout = useCallback(\n async (productKey: string, priceId: string, options?: {\n quantity?: number;\n promotionCode?: string;\n }): Promise<void> => {\n if (!billingAccountId || !billingAccountResourceType || !scopeType || !scopeEntityId) {\n throw new Error('No billing account available. Cannot open checkout.');\n }\n const checkoutUrl = SCOPE_TO_OPEN_CHECKOUT_URL[scopeType]?.(scopeEntityId, billingAccountId);\n if (!checkoutUrl) {\n throw new Error(`No OPEN_CHECKOUT URL builder for scope ${scopeType}.`);\n }\n if (checkoutInFlightRef.current) {\n logDebug('Checkout already in progress, ignoring duplicate request');\n return;\n }\n\n checkoutInFlightRef.current = true;\n try {\n logDebug('Opening checkout session', { productKey, priceId, ...options });\n const httpClient = getManualCallsHttpClient();\n\n // OPEN_CHECKOUT borrows UPDATE → keyed PUT on the scoped account route.\n const response = await httpClient.put<CheckoutSessionResponse>(\n checkoutUrl,\n {\n productKey,\n priceId,\n successUrl: `${resolvedRedirectBase}/billing/success?session_id={CHECKOUT_SESSION_ID}`,\n cancelUrl: `${resolvedRedirectBase}/billing/cancel`,\n quantity: options?.quantity,\n promotionCode: options?.promotionCode,\n },\n );\n\n if (response.url) {\n window.location.href = response.url;\n }\n } finally {\n checkoutInFlightRef.current = false;\n }\n },\n [billingAccountId, billingAccountResourceType, scopeType, scopeEntityId, resolvedRedirectBase],\n );\n\n const openCustomerPortal = useCallback(async (): Promise<void> => {\n if (!billingAccountId || !billingAccountResourceType || !scopeType || !scopeEntityId) {\n throw new Error('No billing account available. Cannot open customer portal.');\n }\n const portalUrlBase = SCOPE_TO_OPEN_PORTAL_URL[scopeType]?.(scopeEntityId, billingAccountId);\n if (!portalUrlBase) {\n throw new Error(`No OPEN_PORTAL URL builder for scope ${scopeType}.`);\n }\n\n logDebug('Opening customer portal session');\n const httpClient = getManualCallsHttpClient();\n\n // OPEN_PORTAL borrows READ → keyed GET on the scoped account route; the\n // returnUrl travels as a query param since GET carries no request body.\n const returnUrl = encodeURIComponent(`${resolvedRedirectBase}/billing`);\n const response = await httpClient.get<PortalSessionResponse>(\n `${portalUrlBase}?returnUrl=${returnUrl}`,\n );\n\n if (response.url) {\n window.location.href = response.url;\n }\n }, [billingAccountId, billingAccountResourceType, scopeType, scopeEntityId, resolvedRedirectBase]);\n\n // ── Context value (memoized for stable reference) ──\n // Use the registry's compiled operation paths and parameter vocabulary. Subscription routes have\n // account and scope parents; hand-authored URLs would silently diverge between org and user variants.\n const callPlanOperation = useCallback(async <TResponse,>(\n operationIdentifier: BillingSubscription_Operations,\n payload: BillingPlanChangeTarget | BillingPlanChangeConfirmation | Record<string, never>,\n signal?: AbortSignal,\n ): Promise<TResponse> => {\n if (!resourceRegistry || !subscription?._id || !billingAccountId || !billingAccountResourceType || !scopeType || !scopeEntityId\n || ![BillingStateSlice.BILLING_ACCOUNT, BillingStateSlice.SUBSCRIPTION, BillingStateSlice.PRODUCTS, BillingStateSlice.PRICES].every(isSliceAvailable)) {\n throw new Error('Billing plan change context is unavailable.');\n }\n const subscriptionType = scopeType === ResourcePrimaryScope.ORGANIZATIONS ? CoreResourceType.ORGANIZATION_SUBSCRIPTIONS : CoreResourceType.USER_SUBSCRIPTIONS;\n const config = resourceRegistry.registry.resourceConfigurations[subscriptionType];\n const operation = config?.operations.find(candidate => candidate.operationIdentifier === operationIdentifier\n && candidate.variantType === ResourceOperationVariantType.API_CALL && candidate.isOperationDefault);\n if (!operation || operation.variantType !== ResourceOperationVariantType.API_CALL) throw new Error('Billing plan change operation is unavailable.');\n const fields = resourceRegistry.registry.allResourceFieldIdentifiers;\n const scopeResourceType = scopeType === ResourcePrimaryScope.ORGANIZATIONS ? CoreResourceType.ORGANIZATIONS : CoreResourceType.USERS;\n const accountField = fields[billingAccountResourceType];\n const scopeField = fields[scopeResourceType];\n if (!config.resourceFieldIdentifier || !accountField || !scopeField) throw new Error('Billing plan change route context is unavailable.');\n return resourceRegistry.doOperation<TResponse>(ResourcesConfig_OperationPathUtils.createOperationPathKeyFromOperation(operation), {\n contextualParameters: { [config.resourceFieldIdentifier]: subscription._id, [accountField]: billingAccountId, [scopeField]: scopeEntityId },\n ...(operation.httpVerb === HttpMethod.GET ? { queryParameters: payload } : { requestData: payload }),\n }, { signal, silent: true });\n }, [resourceRegistry, subscription?._id, billingAccountId, billingAccountResourceType, scopeType, scopeEntityId, isSliceAvailable]);\n\n const previewPlanChange = useCallback(async (target: BillingPlanChangeTarget, options?: { signal?: AbortSignal }): Promise<BillingPlanChangePreviewResponse> => {\n const parsed = BillingSubscription_PreviewPlanChangeRequestDto.parse(target);\n const response = await callPlanOperation<BillingPlanChangePreviewResponse>(BillingSubscription_Operations.PREVIEW_PLAN_CHANGE, parsed, options?.signal);\n return BillingSubscription_PlanChangePreviewResponseDto.parse(response);\n }, [callPlanOperation]);\n\n const confirmPlanChange = useCallback(async (confirmation: BillingPlanChangeConfirmation): Promise<void> => {\n const parsed = BillingSubscription_ChangePlanRequestDto.parse(confirmation);\n await callPlanOperation(BillingSubscription_Operations.CHANGE_PLAN, parsed);\n await fetchBillingState();\n }, [callPlanOperation, fetchBillingState]);\n\n const cancelPendingPlanChange = useCallback(async (): Promise<void> => {\n await callPlanOperation(BillingSubscription_Operations.CANCEL_PLAN_CHANGE, {});\n await fetchBillingState();\n }, [callPlanOperation, fetchBillingState]);\n\n const contextValue: BillingContextType = useMemo(\n () => ({\n isEnabled,\n billingConfiguration: billingConfig,\n billingProviderRef,\n billingAccount,\n subscription,\n currentPlanKey,\n currentPlanProduct,\n currentScope,\n products,\n prices,\n invoices,\n productDefinitions,\n getPricesForProduct,\n getProductByKey,\n isProductAcquirable,\n activePromotions,\n usage,\n creditPools,\n openCheckout,\n openCustomerPortal,\n previewPlanChange,\n confirmPlanChange,\n cancelPendingPlanChange,\n isLoading,\n availability,\n isSliceAvailable,\n error,\n refetch: fetchBillingState,\n }),\n [\n isEnabled,\n billingConfig,\n billingProviderRef,\n billingAccount,\n subscription,\n currentPlanKey,\n currentPlanProduct,\n currentScope,\n products,\n prices,\n invoices,\n productDefinitions,\n getPricesForProduct,\n getProductByKey,\n isProductAcquirable,\n activePromotions,\n usage,\n creditPools,\n openCheckout,\n openCustomerPortal,\n previewPlanChange,\n confirmPlanChange,\n cancelPendingPlanChange,\n isLoading,\n availability,\n isSliceAvailable,\n error,\n fetchBillingState,\n ],\n );\n\n return (\n <BillingContext.Provider value={contextValue}>\n {children}\n </BillingContext.Provider>\n );\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"BillingErrorNotifier.d.ts","sourceRoot":"","sources":["../../../../../src/core/billing/BillingErrorNotifier.tsx"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAOH,wBAAgB,oBAAoB,IAAI,IAAI,CAqB3C"}
1
+ {"version":3,"file":"BillingErrorNotifier.d.ts","sourceRoot":"","sources":["../../../../src/core/billing/BillingErrorNotifier.tsx"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAOH,wBAAgB,oBAAoB,IAAI,IAAI,CAqB3C"}
@@ -1 +1 @@
1
- {"version":3,"file":"BillingErrorNotifier.js","sourceRoot":"","sources":["../../../../../src/core/billing/BillingErrorNotifier.tsx"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,OAAO,CAAC;AAC1C,OAAO,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAC9C,OAAO,EAAE,eAAe,EAAE,MAAM,iDAAiD,CAAC;AAClF,OAAO,EAAE,yBAAyB,EAAE,MAAM,2DAA2D,CAAC;AAEtG,MAAM,UAAU,oBAAoB;IAClC,MAAM,OAAO,GAAG,cAAc,EAAE,CAAC;IACjC,MAAM,EAAE,WAAW,EAAE,GAAG,eAAe,EAAE,CAAC;IAC1C,MAAM,wBAAwB,GAAG,yBAAyB,EAAE,CAAC;IAC7D,MAAM,oBAAoB,GAAG,MAAM,CAAgB,IAAI,CAAC,CAAC;IAEzD,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,OAAO,EAAE,KAAK,EAAE,CAAC;YACnB,gGAAgG;YAChG,kDAAkD;YAClD,MAAM,QAAQ,GAAG,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC;YACvC,IAAI,oBAAoB,CAAC,OAAO,KAAK,QAAQ,EAAE,CAAC;gBAC9C,oBAAoB,CAAC,OAAO,GAAG,QAAQ,CAAC;gBACxC,WAAW,CAAC,wBAAwB,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC;YACvD,CAAC;QACH,CAAC;aAAM,CAAC;YACN,oBAAoB,CAAC,OAAO,GAAG,IAAI,CAAC;QACtC,CAAC;IACH,CAAC,EAAE,CAAC,OAAO,EAAE,KAAK,EAAE,WAAW,EAAE,wBAAwB,CAAC,CAAC,CAAC;IAE5D,OAAO,IAAI,CAAC;AACd,CAAC","sourcesContent":["/**\n * BillingErrorNotifier\n *\n * Bridge component that sits inside both BillingProvider and NotificationProvider.\n * Watches BillingContext.error and dispatches a notification when billing state\n * fetch fails. Uses a ref to avoid duplicate notifications on re-renders.\n *\n * Rendered in ApplicationMainContext inside the NotificationProvider subtree.\n */\n\nimport { useEffect, useRef } from 'react';\nimport { useBillingSafe } from './useBilling';\nimport { useNotification } from '~wildo-frontend-lib/core/events/useNotification';\nimport { useUserFacingErrorMessage } from '~wildo-frontend-lib/core/errors/useUserFacingErrorMessage';\n\nexport function BillingErrorNotifier(): null {\n const billing = useBillingSafe();\n const { notifyError } = useNotification();\n const toUserFacingErrorMessage = useUserFacingErrorMessage();\n const lastNotifiedErrorRef = useRef<string | null>(null);\n\n useEffect(() => {\n if (billing?.error) {\n // The raw message only DEDUPLICATES (a refetch failing the same way is not a new notification);\n // the person reads the failure's localized words.\n const errorKey = billing.error.message;\n if (lastNotifiedErrorRef.current !== errorKey) {\n lastNotifiedErrorRef.current = errorKey;\n notifyError(toUserFacingErrorMessage(billing.error));\n }\n } else {\n lastNotifiedErrorRef.current = null;\n }\n }, [billing?.error, notifyError, toUserFacingErrorMessage]);\n\n return null;\n}\n"]}
1
+ {"version":3,"file":"BillingErrorNotifier.js","sourceRoot":"","sources":["../../../../src/core/billing/BillingErrorNotifier.tsx"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,OAAO,CAAC;AAC1C,OAAO,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAC9C,OAAO,EAAE,eAAe,EAAE,MAAM,iDAAiD,CAAC;AAClF,OAAO,EAAE,yBAAyB,EAAE,MAAM,2DAA2D,CAAC;AAEtG,MAAM,UAAU,oBAAoB;IAClC,MAAM,OAAO,GAAG,cAAc,EAAE,CAAC;IACjC,MAAM,EAAE,WAAW,EAAE,GAAG,eAAe,EAAE,CAAC;IAC1C,MAAM,wBAAwB,GAAG,yBAAyB,EAAE,CAAC;IAC7D,MAAM,oBAAoB,GAAG,MAAM,CAAgB,IAAI,CAAC,CAAC;IAEzD,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,OAAO,EAAE,KAAK,EAAE,CAAC;YACnB,gGAAgG;YAChG,kDAAkD;YAClD,MAAM,QAAQ,GAAG,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC;YACvC,IAAI,oBAAoB,CAAC,OAAO,KAAK,QAAQ,EAAE,CAAC;gBAC9C,oBAAoB,CAAC,OAAO,GAAG,QAAQ,CAAC;gBACxC,WAAW,CAAC,wBAAwB,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC;YACvD,CAAC;QACH,CAAC;aAAM,CAAC;YACN,oBAAoB,CAAC,OAAO,GAAG,IAAI,CAAC;QACtC,CAAC;IACH,CAAC,EAAE,CAAC,OAAO,EAAE,KAAK,EAAE,WAAW,EAAE,wBAAwB,CAAC,CAAC,CAAC;IAE5D,OAAO,IAAI,CAAC;AACd,CAAC","sourcesContent":["/**\n * BillingErrorNotifier\n *\n * Bridge component that sits inside both BillingProvider and NotificationProvider.\n * Watches BillingContext.error and dispatches a notification when billing state\n * fetch fails. Uses a ref to avoid duplicate notifications on re-renders.\n *\n * Rendered in ApplicationMainContext inside the NotificationProvider subtree.\n */\n\nimport { useEffect, useRef } from 'react';\nimport { useBillingSafe } from './useBilling';\nimport { useNotification } from '~wildo-frontend-lib/core/events/useNotification';\nimport { useUserFacingErrorMessage } from '~wildo-frontend-lib/core/errors/useUserFacingErrorMessage';\n\nexport function BillingErrorNotifier(): null {\n const billing = useBillingSafe();\n const { notifyError } = useNotification();\n const toUserFacingErrorMessage = useUserFacingErrorMessage();\n const lastNotifiedErrorRef = useRef<string | null>(null);\n\n useEffect(() => {\n if (billing?.error) {\n // The raw message only DEDUPLICATES (a refetch failing the same way is not a new notification);\n // the person reads the failure's localized words.\n const errorKey = billing.error.message;\n if (lastNotifiedErrorRef.current !== errorKey) {\n lastNotifiedErrorRef.current = errorKey;\n notifyError(toUserFacingErrorMessage(billing.error));\n }\n } else {\n lastNotifiedErrorRef.current = null;\n }\n }, [billing?.error, notifyError, toUserFacingErrorMessage]);\n\n return null;\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"billing-launcher.d.ts","sourceRoot":"","sources":["../../../../../src/core/billing/billing-launcher.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AAEH,OAAO,EAGL,KAAK,kBAAkB,EACxB,MAAM,iEAAiE,CAAC;AAGzE;;;;;;;;;;;;;GAaG;AACH,eAAO,MAAM,4BAA4B,EAAE,MAA6C,CAAC;AAMzF,0EAA0E;AAC1E,eAAO,MAAM,yBAAyB,EAAE,kBAMvC,CAAC"}
1
+ {"version":3,"file":"billing-launcher.d.ts","sourceRoot":"","sources":["../../../../src/core/billing/billing-launcher.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AAEH,OAAO,EAGL,KAAK,kBAAkB,EACxB,MAAM,iEAAiE,CAAC;AAGzE;;;;;;;;;;;;;GAaG;AACH,eAAO,MAAM,4BAA4B,EAAE,MAA6C,CAAC;AAMzF,0EAA0E;AAC1E,eAAO,MAAM,yBAAyB,EAAE,kBAMvC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"billing-launcher.js","sourceRoot":"","sources":["../../../../../src/core/billing/billing-launcher.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AAEH,OAAO,EACL,sBAAsB,GAGvB,MAAM,iEAAiE,CAAC;AACzE,OAAO,EAAE,4BAA4B,EAAE,MAAM,uBAAuB,CAAC;AAErE;;;;;;;;;;;;;GAaG;AACH,MAAM,CAAC,MAAM,4BAA4B,GAAW,4BAA4B,CAAC,OAAO,CAAC;AAEzF,MAAM,4BAA4B,GAAsC;IACtE,oBAAoB,EAAE,CAAC,gBAAgB,CAAC;CACzC,CAAC;AAEF,0EAA0E;AAC1E,MAAM,CAAC,MAAM,yBAAyB,GAAuB;IAC3D,IAAI,EAAE,sBAAsB,CAAC,gBAAgB;IAC7C,UAAU,EAAE,4BAA4B;IACxC,QAAQ,EAAE,SAAS;IACnB,cAAc,EAAE,CAAC,SAAS,EAAE,cAAc,EAAE,MAAM,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,CAAC;IACpF,mBAAmB,EAAE,4BAA4B;CAClD,CAAC","sourcesContent":["/**\n * Declarative billing launcher entry.\n *\n * THE billing home is the Settings Hub \"billing\" destination (a bespoke\n * `ENGINE_PANEL` — see `engine-settings-destinations.ts` /\n * `AppPage_BillingSettings`). The only launcher the framework ships for billing\n * is a command-menu entry that opens the hub at that section.\n *\n * Note the engine ships the DESTINATION, never its placement: whether billing\n * appears in the rail at all, and where, is the application's\n * `settingsHub.placements`. That is why the command entry below is verified\n * against what the application placed rather than assumed reachable.\n *\n * HISTORY: billing used to ALSO ship an app-level full-custom view\n * (`/custom/billing`, componentRef `billing-overview`) plus a sidebar row\n * pointing at it — a second, app-registered billing home beside the settings\n * one. That placement was retired (2026-08-18): one billing surface, inside\n * settings, engine-owned. Do not reintroduce a `FullCustomViewDefinition` here;\n * apps that want extra billing surfaces compose the self-hydrating billing\n * widgets (`SubscriptionStatus`, `PricingTable`, …) in their own views.\n */\n\nimport {\n LauncherItemTargetKind,\n type LauncherRuntimeAvailabilityConfig,\n type CommandMenuCommand,\n} from '~wildo-frontend-lib/core/config/launcher-items.frontend.schemas';\nimport { EngineSettingsDestinationRef } from '@wildo-ai/saas-models';\n\n/**\n * Settings Hub section ref for the billing home (`/settings/billing`).\n *\n * Derived from the destination catalog rather than written as a literal. It used\n * to be `= 'billing'`, an engine surface asserting a ref with nothing tying it to\n * the catalog entry it names — and the failure is silent in both directions:\n * `resolveItemRef` falls back to the hub's DEFAULT section for an unknown\n * `sectionRef`, so a command labelled \"Billing\" would open Profile rather than\n * error.\n *\n * The other half of that hole is that an application may simply not PLACE the\n * billing destination, which no static reference can know. That is checked at\n * DEV startup — see `SETTINGS_SECTION_NOT_PLACED` in `verify-launcher-content.ts`.\n */\nexport const BILLING_SETTINGS_SECTION_REF: string = EngineSettingsDestinationRef.BILLING;\n\nconst BILLING_RUNTIME_AVAILABILITY: LauncherRuntimeAvailabilityConfig = {\n requiredCapabilities: ['billingEnabled'],\n};\n\n/** Command menu entry — opens the Settings Hub at the billing section. */\nexport const BILLING_COMMAND_MENU_ITEM: CommandMenuCommand = {\n kind: LauncherItemTargetKind.SETTINGS_SECTION,\n sectionRef: BILLING_SETTINGS_SECTION_REF,\n category: 'billing',\n searchKeywords: ['billing', 'subscription', 'plan', 'payment', 'invoice', 'upgrade'],\n runtimeAvailability: BILLING_RUNTIME_AVAILABILITY,\n};\n"]}
1
+ {"version":3,"file":"billing-launcher.js","sourceRoot":"","sources":["../../../../src/core/billing/billing-launcher.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AAEH,OAAO,EACL,sBAAsB,GAGvB,MAAM,iEAAiE,CAAC;AACzE,OAAO,EAAE,4BAA4B,EAAE,MAAM,uBAAuB,CAAC;AAErE;;;;;;;;;;;;;GAaG;AACH,MAAM,CAAC,MAAM,4BAA4B,GAAW,4BAA4B,CAAC,OAAO,CAAC;AAEzF,MAAM,4BAA4B,GAAsC;IACtE,oBAAoB,EAAE,CAAC,gBAAgB,CAAC;CACzC,CAAC;AAEF,0EAA0E;AAC1E,MAAM,CAAC,MAAM,yBAAyB,GAAuB;IAC3D,IAAI,EAAE,sBAAsB,CAAC,gBAAgB;IAC7C,UAAU,EAAE,4BAA4B;IACxC,QAAQ,EAAE,SAAS;IACnB,cAAc,EAAE,CAAC,SAAS,EAAE,cAAc,EAAE,MAAM,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,CAAC;IACpF,mBAAmB,EAAE,4BAA4B;CAClD,CAAC","sourcesContent":["/**\n * Declarative billing launcher entry.\n *\n * THE billing home is the Settings Hub \"billing\" destination (a bespoke\n * `ENGINE_PANEL` — see `engine-settings-destinations.ts` /\n * `AppPage_BillingSettings`). The only launcher the framework ships for billing\n * is a command-menu entry that opens the hub at that section.\n *\n * Note the engine ships the DESTINATION, never its placement: whether billing\n * appears in the rail at all, and where, is the application's\n * `settingsHub.placements`. That is why the command entry below is verified\n * against what the application placed rather than assumed reachable.\n *\n * HISTORY: billing used to ALSO ship an app-level full-custom view\n * (`/custom/billing`, componentRef `billing-overview`) plus a sidebar row\n * pointing at it — a second, app-registered billing home beside the settings\n * one. That placement was retired (2026-08-18): one billing surface, inside\n * settings, engine-owned. Do not reintroduce a `FullCustomViewDefinition` here;\n * apps that want extra billing surfaces compose the self-hydrating billing\n * widgets (`SubscriptionStatus`, `PricingTable`, …) in their own views.\n */\n\nimport {\n LauncherItemTargetKind,\n type LauncherRuntimeAvailabilityConfig,\n type CommandMenuCommand,\n} from '~wildo-frontend-lib/core/config/launcher-items.frontend.schemas';\nimport { EngineSettingsDestinationRef } from '@wildo-ai/saas-models';\n\n/**\n * Settings Hub section ref for the billing home (`/settings/billing`).\n *\n * Derived from the destination catalog rather than written as a literal. It used\n * to be `= 'billing'`, an engine surface asserting a ref with nothing tying it to\n * the catalog entry it names — and the failure is silent in both directions:\n * `resolveItemRef` falls back to the hub's DEFAULT section for an unknown\n * `sectionRef`, so a command labelled \"Billing\" would open Profile rather than\n * error.\n *\n * The other half of that hole is that an application may simply not PLACE the\n * billing destination, which no static reference can know. That is checked at\n * DEV startup — see `SETTINGS_SECTION_NOT_PLACED` in `verify-launcher-content.ts`.\n */\nexport const BILLING_SETTINGS_SECTION_REF: string = EngineSettingsDestinationRef.BILLING;\n\nconst BILLING_RUNTIME_AVAILABILITY: LauncherRuntimeAvailabilityConfig = {\n requiredCapabilities: ['billingEnabled'],\n};\n\n/** Command menu entry — opens the Settings Hub at the billing section. */\nexport const BILLING_COMMAND_MENU_ITEM: CommandMenuCommand = {\n kind: LauncherItemTargetKind.SETTINGS_SECTION,\n sectionRef: BILLING_SETTINGS_SECTION_REF,\n category: 'billing',\n searchKeywords: ['billing', 'subscription', 'plan', 'payment', 'invoice', 'upgrade'],\n runtimeAvailability: BILLING_RUNTIME_AVAILABILITY,\n};\n"]}
@@ -1,7 +1,15 @@
1
- import type { FrontendAppProviderModule } from '@wildo-ai/external-connectors-public/app';
2
- export declare function collectBillingProviderLabelKeys(provider: FrontendAppProviderModule | null | undefined): string[];
1
+ /**
2
+ * The billing provider's name, for the three billing components that show it (portal link, invoice
3
+ * history, subscription status).
4
+ *
5
+ * Keyed on the configured `billing.providerRef` and nothing else (#1701). The name is
6
+ * `providers.<ref>.displayName`, planned and generated for every declared provider (#1895). It used to
7
+ * be read off a frontend provider module — Stripe's, which loaded no Stripe code and existed only to
8
+ * carry it — so billing's visible name depended on declaring a browser module that did nothing.
9
+ */
10
+ export declare function collectBillingProviderLabelKeys(providerRef: string | null | undefined): string[];
3
11
  export declare function resolveBillingProviderDisplayName(input: {
4
- provider: FrontendAppProviderModule | null | undefined;
12
+ providerRef: string | null | undefined;
5
13
  translate?: (key: string) => string;
6
14
  }): string | undefined;
7
15
  //# sourceMappingURL=billing-provider-display.frontend.utils.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"billing-provider-display.frontend.utils.d.ts","sourceRoot":"","sources":["../../../../../src/core/billing/billing-provider-display.frontend.utils.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,0CAA0C,CAAC;AAM1F,wBAAgB,+BAA+B,CAC7C,QAAQ,EAAE,yBAAyB,GAAG,IAAI,GAAG,SAAS,GACrD,MAAM,EAAE,CAIV;AAED,wBAAgB,iCAAiC,CAAC,KAAK,EAAE;IACvD,QAAQ,EAAE,yBAAyB,GAAG,IAAI,GAAG,SAAS,CAAC;IACvD,SAAS,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,MAAM,CAAC;CACrC,GAAG,MAAM,GAAG,SAAS,CAWrB"}
1
+ {"version":3,"file":"billing-provider-display.frontend.utils.d.ts","sourceRoot":"","sources":["../../../../src/core/billing/billing-provider-display.frontend.utils.ts"],"names":[],"mappings":"AAMA;;;;;;;;GAQG;AACH,wBAAgB,+BAA+B,CAAC,WAAW,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GAAG,MAAM,EAAE,CAEhG;AAED,wBAAgB,iCAAiC,CAAC,KAAK,EAAE;IACvD,WAAW,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC;IACvC,SAAS,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,MAAM,CAAC;CACrC,GAAG,MAAM,GAAG,SAAS,CASrB"}
@@ -1,17 +1,23 @@
1
+ import { buildProviderDisplayNameLabelKey } from '@wildo-ai/saas-models/public-runtime';
1
2
  import { collectFrontendProviderDisplayLabelKeys, resolveFrontendProviderDisplayLabel, } from '../../core/external-providers/frontend-provider-display-label.frontend.utils.js';
2
- export function collectBillingProviderLabelKeys(provider) {
3
- return collectFrontendProviderDisplayLabelKeys([
4
- provider?.metadata.displayNameLabelKey,
5
- ]);
3
+ /**
4
+ * The billing provider's name, for the three billing components that show it (portal link, invoice
5
+ * history, subscription status).
6
+ *
7
+ * Keyed on the configured `billing.providerRef` and nothing else (#1701). The name is
8
+ * `providers.<ref>.displayName`, planned and generated for every declared provider (#1895). It used to
9
+ * be read off a frontend provider module — Stripe's, which loaded no Stripe code and existed only to
10
+ * carry it — so billing's visible name depended on declaring a browser module that did nothing.
11
+ */
12
+ export function collectBillingProviderLabelKeys(providerRef) {
13
+ return collectFrontendProviderDisplayLabelKeys([providerRef ? buildProviderDisplayNameLabelKey(providerRef) : undefined]);
6
14
  }
7
15
  export function resolveBillingProviderDisplayName(input) {
8
- if (!input.provider) {
16
+ if (!input.providerRef) {
9
17
  return undefined;
10
18
  }
11
19
  return resolveFrontendProviderDisplayLabel({
12
- providerRef: input.provider.metadata.ref,
13
- displayName: input.provider.metadata.displayName,
14
- displayNameLabelKey: input.provider.metadata.displayNameLabelKey,
20
+ providerRef: input.providerRef,
15
21
  translate: input.translate,
16
22
  });
17
23
  }
@@ -1 +1 @@
1
- {"version":3,"file":"billing-provider-display.frontend.utils.js","sourceRoot":"","sources":["../../../../../src/core/billing/billing-provider-display.frontend.utils.ts"],"names":[],"mappings":"AACA,OAAO,EACL,uCAAuC,EACvC,mCAAmC,GACpC,MAAM,4FAA4F,CAAC;AAEpG,MAAM,UAAU,+BAA+B,CAC7C,QAAsD;IAEtD,OAAO,uCAAuC,CAAC;QAC7C,QAAQ,EAAE,QAAQ,CAAC,mBAAmB;KACvC,CAAC,CAAC;AACL,CAAC;AAED,MAAM,UAAU,iCAAiC,CAAC,KAGjD;IACC,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC;QACpB,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,OAAO,mCAAmC,CAAC;QACzC,WAAW,EAAE,KAAK,CAAC,QAAQ,CAAC,QAAQ,CAAC,GAAG;QACxC,WAAW,EAAE,KAAK,CAAC,QAAQ,CAAC,QAAQ,CAAC,WAAW;QAChD,mBAAmB,EAAE,KAAK,CAAC,QAAQ,CAAC,QAAQ,CAAC,mBAAmB;QAChE,SAAS,EAAE,KAAK,CAAC,SAAS;KAC3B,CAAC,CAAC;AACL,CAAC","sourcesContent":["import type { FrontendAppProviderModule } from '@wildo-ai/external-connectors-public/app';\nimport {\n collectFrontendProviderDisplayLabelKeys,\n resolveFrontendProviderDisplayLabel,\n} from '~wildo-frontend-lib/core/external-providers/frontend-provider-display-label.frontend.utils';\n\nexport function collectBillingProviderLabelKeys(\n provider: FrontendAppProviderModule | null | undefined,\n): string[] {\n return collectFrontendProviderDisplayLabelKeys([\n provider?.metadata.displayNameLabelKey,\n ]);\n}\n\nexport function resolveBillingProviderDisplayName(input: {\n provider: FrontendAppProviderModule | null | undefined;\n translate?: (key: string) => string;\n}): string | undefined {\n if (!input.provider) {\n return undefined;\n }\n\n return resolveFrontendProviderDisplayLabel({\n providerRef: input.provider.metadata.ref,\n displayName: input.provider.metadata.displayName,\n displayNameLabelKey: input.provider.metadata.displayNameLabelKey,\n translate: input.translate,\n });\n}\n"]}
1
+ {"version":3,"file":"billing-provider-display.frontend.utils.js","sourceRoot":"","sources":["../../../../src/core/billing/billing-provider-display.frontend.utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gCAAgC,EAAE,MAAM,sCAAsC,CAAC;AACxF,OAAO,EACL,uCAAuC,EACvC,mCAAmC,GACpC,MAAM,4FAA4F,CAAC;AAEpG;;;;;;;;GAQG;AACH,MAAM,UAAU,+BAA+B,CAAC,WAAsC;IACpF,OAAO,uCAAuC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,gCAAgC,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC;AAC5H,CAAC;AAED,MAAM,UAAU,iCAAiC,CAAC,KAGjD;IACC,IAAI,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC;QACvB,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,OAAO,mCAAmC,CAAC;QACzC,WAAW,EAAE,KAAK,CAAC,WAAW;QAC9B,SAAS,EAAE,KAAK,CAAC,SAAS;KAC3B,CAAC,CAAC;AACL,CAAC","sourcesContent":["import { buildProviderDisplayNameLabelKey } from '@wildo-ai/saas-models/public-runtime';\nimport {\n collectFrontendProviderDisplayLabelKeys,\n resolveFrontendProviderDisplayLabel,\n} from '~wildo-frontend-lib/core/external-providers/frontend-provider-display-label.frontend.utils';\n\n/**\n * The billing provider's name, for the three billing components that show it (portal link, invoice\n * history, subscription status).\n *\n * Keyed on the configured `billing.providerRef` and nothing else (#1701). The name is\n * `providers.<ref>.displayName`, planned and generated for every declared provider (#1895). It used to\n * be read off a frontend provider module — Stripe's, which loaded no Stripe code and existed only to\n * carry it — so billing's visible name depended on declaring a browser module that did nothing.\n */\nexport function collectBillingProviderLabelKeys(providerRef: string | null | undefined): string[] {\n return collectFrontendProviderDisplayLabelKeys([providerRef ? buildProviderDisplayNameLabelKey(providerRef) : undefined]);\n}\n\nexport function resolveBillingProviderDisplayName(input: {\n providerRef: string | null | undefined;\n translate?: (key: string) => string;\n}): string | undefined {\n if (!input.providerRef) {\n return undefined;\n }\n\n return resolveFrontendProviderDisplayLabel({\n providerRef: input.providerRef,\n translate: input.translate,\n });\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"useBilling.d.ts","sourceRoot":"","sources":["../../../../../src/core/billing/useBilling.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,OAAO,EAAkB,KAAK,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AAE3E;;;;GAIG;AACH,eAAO,MAAM,UAAU,QAAO,kBAM7B,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,cAAc,QAAO,kBAAkB,GAAG,SAEtD,CAAC"}
1
+ {"version":3,"file":"useBilling.d.ts","sourceRoot":"","sources":["../../../../src/core/billing/useBilling.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,OAAO,EAAkB,KAAK,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AAE3E;;;;GAIG;AACH,eAAO,MAAM,UAAU,QAAO,kBAM7B,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,cAAc,QAAO,kBAAkB,GAAG,SAEtD,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"useBilling.js","sourceRoot":"","sources":["../../../../../src/core/billing/useBilling.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,OAAO,CAAC;AACnC,OAAO,EAAE,cAAc,EAA2B,MAAM,kBAAkB,CAAC;AAE3E;;;;GAIG;AACH,MAAM,CAAC,MAAM,UAAU,GAAG,GAAuB,EAAE;IACjD,MAAM,OAAO,GAAG,UAAU,CAAC,cAAc,CAAC,CAAC;IAC3C,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,MAAM,IAAI,KAAK,CAAC,kDAAkD,CAAC,CAAC;IACtE,CAAC;IACD,OAAO,OAAO,CAAC;AACjB,CAAC,CAAC;AAEF;;;;GAIG;AACH,MAAM,CAAC,MAAM,cAAc,GAAG,GAAmC,EAAE;IACjE,OAAO,UAAU,CAAC,cAAc,CAAC,CAAC;AACpC,CAAC,CAAC","sourcesContent":["/**\n * useBilling Hook\n *\n * Separated from BillingContext.tsx for React Fast Refresh compatibility.\n * Provides access to the billing context: state, actions, and product catalog.\n */\n\nimport { useContext } from 'react';\nimport { BillingContext, type BillingContextType } from './BillingContext';\n\n/**\n * Hook to access the Billing context.\n * @returns BillingContextType with billing state, actions, and product catalog.\n * @throws Error if used outside of BillingProvider.\n */\nexport const useBilling = (): BillingContextType => {\n const context = useContext(BillingContext);\n if (!context) {\n throw new Error('useBilling must be used within a BillingProvider');\n }\n return context;\n};\n\n/**\n * Safe version that returns undefined if outside provider.\n * Useful for components that may render before the provider is mounted\n * or in contexts where billing may not be enabled.\n */\nexport const useBillingSafe = (): BillingContextType | undefined => {\n return useContext(BillingContext);\n};\n"]}
1
+ {"version":3,"file":"useBilling.js","sourceRoot":"","sources":["../../../../src/core/billing/useBilling.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,OAAO,CAAC;AACnC,OAAO,EAAE,cAAc,EAA2B,MAAM,kBAAkB,CAAC;AAE3E;;;;GAIG;AACH,MAAM,CAAC,MAAM,UAAU,GAAG,GAAuB,EAAE;IACjD,MAAM,OAAO,GAAG,UAAU,CAAC,cAAc,CAAC,CAAC;IAC3C,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,MAAM,IAAI,KAAK,CAAC,kDAAkD,CAAC,CAAC;IACtE,CAAC;IACD,OAAO,OAAO,CAAC;AACjB,CAAC,CAAC;AAEF;;;;GAIG;AACH,MAAM,CAAC,MAAM,cAAc,GAAG,GAAmC,EAAE;IACjE,OAAO,UAAU,CAAC,cAAc,CAAC,CAAC;AACpC,CAAC,CAAC","sourcesContent":["/**\n * useBilling Hook\n *\n * Separated from BillingContext.tsx for React Fast Refresh compatibility.\n * Provides access to the billing context: state, actions, and product catalog.\n */\n\nimport { useContext } from 'react';\nimport { BillingContext, type BillingContextType } from './BillingContext';\n\n/**\n * Hook to access the Billing context.\n * @returns BillingContextType with billing state, actions, and product catalog.\n * @throws Error if used outside of BillingProvider.\n */\nexport const useBilling = (): BillingContextType => {\n const context = useContext(BillingContext);\n if (!context) {\n throw new Error('useBilling must be used within a BillingProvider');\n }\n return context;\n};\n\n/**\n * Safe version that returns undefined if outside provider.\n * Useful for components that may render before the provider is mounted\n * or in contexts where billing may not be enabled.\n */\nexport const useBillingSafe = (): BillingContextType | undefined => {\n return useContext(BillingContext);\n};\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"useBillingAction.d.ts","sourceRoot":"","sources":["../../../../../src/core/billing/useBillingAction.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAIH,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,0DAA0D,CAAC;AAIpG;;;;;;;;;GASG;AACH,wBAAgB,gBAAgB,IAAI,CAAC,YAAY,EAAE,mBAAmB,KAAK,IAAI,CA0D9E"}
1
+ {"version":3,"file":"useBillingAction.d.ts","sourceRoot":"","sources":["../../../../src/core/billing/useBillingAction.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAIH,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,0DAA0D,CAAC;AAIpG;;;;;;;;;GASG;AACH,wBAAgB,gBAAgB,IAAI,CAAC,YAAY,EAAE,mBAAmB,KAAK,IAAI,CA0D9E"}
@@ -1 +1 @@
1
- {"version":3,"file":"useBillingAction.js","sourceRoot":"","sources":["../../../../../src/core/billing/useBillingAction.ts"],"names":[],"mappings":"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","sourcesContent":["/**\n * useBillingAction Hook\n *\n * Resolves the appropriate billing action from a FeatureAvailability object.\n * Used by FeatureRouteGuard, FeatureGate, and action bar buttons to wire\n * feature unavailability prompts to billing checkout or customer portal flows.\n *\n * If billing is not enabled (useBillingSafe returns undefined), the action is a no-op.\n */\n\nimport { useCallback } from 'react';\nimport { BillingStateSlice, FeatureUnavailabilityBehavior } from '@wildo-ai/saas-models';\nimport type { FeatureAvailability } from '~wildo-frontend-lib/core/features/useFeatureAvailability';\nimport { useBillingSafe } from './useBilling';\nimport { useSafeBillingActionExecutor } from './useSafeBillingActionExecutor';\n\n/**\n * Returns a callback that executes the appropriate billing action for a given FeatureAvailability.\n *\n * - upgrade_prompt / limit_upgrade_prompt → openCheckout with suggested product + default price\n * - addon_prompt → openCheckout with suggested addon product + default price\n * - contact_admin → no-op (no billing action)\n * - disable / hide / custom → no-op\n *\n * Falls back gracefully when billing is not enabled.\n */\nexport function useBillingAction(): (availability: FeatureAvailability) => void {\n const billing = useBillingSafe();\n const runBillingActionSafely = useSafeBillingActionExecutor();\n\n return useCallback(\n (availability: FeatureAvailability) => {\n if (!billing || !billing.isEnabled || !billing.isSliceAvailable(BillingStateSlice.BILLING_ACCOUNT)) return;\n\n const { behavior, suggestedProductRef, upgradeOptions } = availability;\n\n // Determine which product/price to use for checkout\n let productKey: string | undefined;\n let priceId: string | undefined;\n\n // Try the suggestedProductRef first (per-feature override)\n if (suggestedProductRef && billing.isSliceAvailable(BillingStateSlice.PRODUCTS) && billing.isSliceAvailable(BillingStateSlice.PRICES)) {\n const product = billing.getProductByKey(suggestedProductRef);\n if (product) {\n productKey = product.key;\n const prices = billing.getPricesForProduct(product._id);\n const defaultPrice = prices.find(p => p.isDefault) ?? prices[0];\n priceId = defaultPrice?._id;\n }\n }\n\n // Fallback to upgrade options from resolved features\n if (!productKey && upgradeOptions && upgradeOptions.length > 0) {\n const firstOption = upgradeOptions[0];\n if (firstOption) {\n productKey = firstOption.productKey;\n priceId = firstOption.priceId;\n }\n }\n\n switch (behavior) {\n case FeatureUnavailabilityBehavior.UPGRADE_PROMPT:\n case FeatureUnavailabilityBehavior.LIMIT_UPGRADE_PROMPT:\n case FeatureUnavailabilityBehavior.ADDON_PROMPT:\n if (productKey && priceId && [BillingStateSlice.SUBSCRIPTION, BillingStateSlice.PRODUCTS, BillingStateSlice.PRICES].every(billing.isSliceAvailable)) {\n runBillingActionSafely(() => billing.openCheckout(productKey, priceId));\n } else {\n // Missing or unavailable purchase information must never select a checkout.\n // The portal remains usable when its account is known, independently of catalog failures.\n runBillingActionSafely(() => billing.openCustomerPortal());\n }\n break;\n\n case FeatureUnavailabilityBehavior.CONTACT_ADMIN:\n case FeatureUnavailabilityBehavior.DISABLE:\n case FeatureUnavailabilityBehavior.HIDE:\n case FeatureUnavailabilityBehavior.CUSTOM:\n default:\n // No billing action for these behaviors\n break;\n }\n },\n [billing, runBillingActionSafely],\n );\n}\n"]}
1
+ {"version":3,"file":"useBillingAction.js","sourceRoot":"","sources":["../../../../src/core/billing/useBillingAction.ts"],"names":[],"mappings":"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","sourcesContent":["/**\n * useBillingAction Hook\n *\n * Resolves the appropriate billing action from a FeatureAvailability object.\n * Used by FeatureRouteGuard, FeatureGate, and action bar buttons to wire\n * feature unavailability prompts to billing checkout or customer portal flows.\n *\n * If billing is not enabled (useBillingSafe returns undefined), the action is a no-op.\n */\n\nimport { useCallback } from 'react';\nimport { BillingStateSlice, FeatureUnavailabilityBehavior } from '@wildo-ai/saas-models';\nimport type { FeatureAvailability } from '~wildo-frontend-lib/core/features/useFeatureAvailability';\nimport { useBillingSafe } from './useBilling';\nimport { useSafeBillingActionExecutor } from './useSafeBillingActionExecutor';\n\n/**\n * Returns a callback that executes the appropriate billing action for a given FeatureAvailability.\n *\n * - upgrade_prompt / limit_upgrade_prompt → openCheckout with suggested product + default price\n * - addon_prompt → openCheckout with suggested addon product + default price\n * - contact_admin → no-op (no billing action)\n * - disable / hide / custom → no-op\n *\n * Falls back gracefully when billing is not enabled.\n */\nexport function useBillingAction(): (availability: FeatureAvailability) => void {\n const billing = useBillingSafe();\n const runBillingActionSafely = useSafeBillingActionExecutor();\n\n return useCallback(\n (availability: FeatureAvailability) => {\n if (!billing || !billing.isEnabled || !billing.isSliceAvailable(BillingStateSlice.BILLING_ACCOUNT)) return;\n\n const { behavior, suggestedProductRef, upgradeOptions } = availability;\n\n // Determine which product/price to use for checkout\n let productKey: string | undefined;\n let priceId: string | undefined;\n\n // Try the suggestedProductRef first (per-feature override)\n if (suggestedProductRef && billing.isSliceAvailable(BillingStateSlice.PRODUCTS) && billing.isSliceAvailable(BillingStateSlice.PRICES)) {\n const product = billing.getProductByKey(suggestedProductRef);\n if (product) {\n productKey = product.key;\n const prices = billing.getPricesForProduct(product._id);\n const defaultPrice = prices.find(p => p.isDefault) ?? prices[0];\n priceId = defaultPrice?._id;\n }\n }\n\n // Fallback to upgrade options from resolved features\n if (!productKey && upgradeOptions && upgradeOptions.length > 0) {\n const firstOption = upgradeOptions[0];\n if (firstOption) {\n productKey = firstOption.productKey;\n priceId = firstOption.priceId;\n }\n }\n\n switch (behavior) {\n case FeatureUnavailabilityBehavior.UPGRADE_PROMPT:\n case FeatureUnavailabilityBehavior.LIMIT_UPGRADE_PROMPT:\n case FeatureUnavailabilityBehavior.ADDON_PROMPT:\n if (productKey && priceId && [BillingStateSlice.SUBSCRIPTION, BillingStateSlice.PRODUCTS, BillingStateSlice.PRICES].every(billing.isSliceAvailable)) {\n runBillingActionSafely(() => billing.openCheckout(productKey, priceId));\n } else {\n // Missing or unavailable purchase information must never select a checkout.\n // The portal remains usable when its account is known, independently of catalog failures.\n runBillingActionSafely(() => billing.openCustomerPortal());\n }\n break;\n\n case FeatureUnavailabilityBehavior.CONTACT_ADMIN:\n case FeatureUnavailabilityBehavior.DISABLE:\n case FeatureUnavailabilityBehavior.HIDE:\n case FeatureUnavailabilityBehavior.CUSTOM:\n default:\n // No billing action for these behaviors\n break;\n }\n },\n [billing, runBillingActionSafely],\n );\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"useBillingPlanChange.d.ts","sourceRoot":"","sources":["../../../../../src/core/billing/useBillingPlanChange.ts"],"names":[],"mappings":"AAEA,OAAO,EAAqB,KAAK,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAC/E,OAAO,KAAK,EAAE,kBAAkB,EAAE,uBAAuB,EAAE,gCAAgC,EAAE,MAAM,kBAAkB,CAAC;AAEtH,oBAAY,sBAAsB;IAChC,IAAI,SAAS;IACb,UAAU,eAAe;IACzB,KAAK,UAAU;IACf,UAAU,eAAe;IACzB,MAAM,WAAW;CAClB;AAED,KAAK,SAAS,GAAG;IAAE,MAAM,EAAE,uBAAuB,CAAC;IAAC,aAAa,EAAE,MAAM,CAAA;CAAE,CAAC;AAC5E,MAAM,MAAM,sBAAsB,GAC9B;IAAE,KAAK,EAAE,sBAAsB,CAAC,IAAI,CAAA;CAAE,GACtC,CAAC,SAAS,GAAG;IAAE,KAAK,EAAE,sBAAsB,CAAC,UAAU,GAAG,sBAAsB,CAAC,MAAM,CAAA;CAAE,CAAC,GAC1F,CAAC,SAAS,GAAG;IAAE,KAAK,EAAE,sBAAsB,CAAC,KAAK,GAAG,sBAAsB,CAAC,UAAU,CAAC;IAAC,QAAQ,EAAE,gCAAgC,CAAC;IAAC,OAAO,EAAE,cAAc,CAAC;IAAC,QAAQ,CAAC,EAAE,OAAO,CAAA;CAAE,CAAC,CAAC;AAEvL,sGAAsG;AACtG,wBAAgB,wBAAwB,CAAC,QAAQ,EAAE,gCAAgC,GAAG,cAAc,CAYnG;AAED;;;GAGG;AACH,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,kBAAkB,GAAG,SAAS;;qBAgChC,uBAAuB;;;EA4ClE"}
1
+ {"version":3,"file":"useBillingPlanChange.d.ts","sourceRoot":"","sources":["../../../../src/core/billing/useBillingPlanChange.ts"],"names":[],"mappings":"AAEA,OAAO,EAAqB,KAAK,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAC/E,OAAO,KAAK,EAAE,kBAAkB,EAAE,uBAAuB,EAAE,gCAAgC,EAAE,MAAM,kBAAkB,CAAC;AAEtH,oBAAY,sBAAsB;IAChC,IAAI,SAAS;IACb,UAAU,eAAe;IACzB,KAAK,UAAU;IACf,UAAU,eAAe;IACzB,MAAM,WAAW;CAClB;AAED,KAAK,SAAS,GAAG;IAAE,MAAM,EAAE,uBAAuB,CAAC;IAAC,aAAa,EAAE,MAAM,CAAA;CAAE,CAAC;AAC5E,MAAM,MAAM,sBAAsB,GAC9B;IAAE,KAAK,EAAE,sBAAsB,CAAC,IAAI,CAAA;CAAE,GACtC,CAAC,SAAS,GAAG;IAAE,KAAK,EAAE,sBAAsB,CAAC,UAAU,GAAG,sBAAsB,CAAC,MAAM,CAAA;CAAE,CAAC,GAC1F,CAAC,SAAS,GAAG;IAAE,KAAK,EAAE,sBAAsB,CAAC,KAAK,GAAG,sBAAsB,CAAC,UAAU,CAAC;IAAC,QAAQ,EAAE,gCAAgC,CAAC;IAAC,OAAO,EAAE,cAAc,CAAC;IAAC,QAAQ,CAAC,EAAE,OAAO,CAAA;CAAE,CAAC,CAAC;AAEvL,sGAAsG;AACtG,wBAAgB,wBAAwB,CAAC,QAAQ,EAAE,gCAAgC,GAAG,cAAc,CAcnG;AAED;;;GAGG;AACH,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,kBAAkB,GAAG,SAAS;;qBAgChC,uBAAuB;;;EA4ClE"}
@@ -21,6 +21,8 @@ export function invoicePreviewForDisplay(response) {
21
21
  lineItems: response.lineItems.map(item => ({ ...item, amount: { amount: BigInt(item.amount), currency, decimals } })),
22
22
  periodStart: response.periodStart,
23
23
  periodEnd: response.periodEnd,
24
+ timing: response.timing,
25
+ effectiveAt: new Date(response.effectiveAt),
24
26
  };
25
27
  }
26
28
  /** Owns the composed selection flow. A server token is only usable with its original selection.
@@ -1 +1 @@
1
- {"version":3,"file":"useBillingPlanChange.js","sourceRoot":"","sources":["../../../../../src/core/billing/useBillingPlanChange.ts"],"names":[],"mappings":"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","sourcesContent":["import { useCallback, useEffect, useRef, useState } from 'react';\nimport { currencyMinorUnitDecimals } from '@wildo-ai/zod-decorators';\nimport { BillingStateSlice, type InvoicePreview } from '@wildo-ai/saas-models';\nimport type { BillingContextType, BillingPlanChangeTarget, BillingPlanChangePreviewResponse } from './BillingContext';\n\nexport enum BillingPlanChangePhase {\n IDLE = 'idle',\n PREVIEWING = 'previewing',\n READY = 'ready',\n CONFIRMING = 'confirming',\n FAILED = 'failed',\n}\n\ntype Selection = { target: BillingPlanChangeTarget; scopeIdentity: string };\nexport type BillingPlanChangeState =\n | { phase: BillingPlanChangePhase.IDLE }\n | (Selection & { phase: BillingPlanChangePhase.PREVIEWING | BillingPlanChangePhase.FAILED })\n | (Selection & { phase: BillingPlanChangePhase.READY | BillingPlanChangePhase.CONFIRMING; response: BillingPlanChangePreviewResponse; preview: InvoicePreview; hasError?: boolean });\n\n/** A provider amount uses the currency's own minor units, not an authored price's arbitrary scale. */\nexport function invoicePreviewForDisplay(response: BillingPlanChangePreviewResponse): InvoicePreview {\n const currency = response.currency.toUpperCase();\n const decimals = currencyMinorUnitDecimals(currency);\n if (decimals === undefined || !Number.isSafeInteger(response.amount) || response.lineItems.some(item => !Number.isSafeInteger(item.amount))) {\n throw new Error('The invoice estimate contains unsupported monetary values.');\n }\n return {\n amount: { amount: BigInt(response.amount), currency, decimals },\n lineItems: response.lineItems.map(item => ({ ...item, amount: { amount: BigInt(item.amount), currency, decimals } })),\n periodStart: response.periodStart,\n periodEnd: response.periodEnd,\n };\n}\n\n/** Owns the composed selection flow. A server token is only usable with its original selection.\n * Request generation fences late responses; cancellation aborts only a preview, never an accepted mutation.\n * A failed confirmation retains its token for the server's idempotent retry path.\n */\nexport function useBillingPlanChange(billing: BillingContextType | undefined) {\n const [state, setState] = useState<BillingPlanChangeState>({ phase: BillingPlanChangePhase.IDLE });\n const generation = useRef(0);\n const pendingPreview = useRef<AbortController | null>(null);\n const confirming = useRef(false);\n const stateRef = useRef(state);\n stateRef.current = state;\n const scopeIdentity = JSON.stringify([billing?.currentScope, billing?.billingAccount?._id, billing?.subscription?._id]);\n const currentIdentity = useRef(scopeIdentity);\n currentIdentity.current = scopeIdentity;\n const ready = !!billing?.isEnabled && [BillingStateSlice.BILLING_ACCOUNT, BillingStateSlice.SUBSCRIPTION, BillingStateSlice.PRODUCTS, BillingStateSlice.PRICES].every(billing.isSliceAvailable);\n\n useEffect(() => {\n generation.current += 1;\n pendingPreview.current?.abort();\n setState({ phase: BillingPlanChangePhase.IDLE });\n return () => { generation.current += 1; pendingPreview.current?.abort(); };\n }, [scopeIdentity]);\n\n // A same-scope refresh cannot revoke an already submitted confirmation or its retry token.\n // Availability controls whether another dispatch is allowed; it is not evidence that the\n // provider did not accept the first one. The server validates the quote's semantic basis.\n useEffect(() => {\n const current = stateRef.current;\n if (confirming.current || (current.phase === BillingPlanChangePhase.READY && current.hasError)) return;\n if (!ready) {\n generation.current += 1;\n pendingPreview.current?.abort();\n setState({ phase: BillingPlanChangePhase.IDLE });\n }\n }, [ready]);\n\n const select = useCallback(async (target: BillingPlanChangeTarget) => {\n if (!billing || !ready || !billing.subscription || confirming.current) return;\n const requestGeneration = ++generation.current;\n pendingPreview.current?.abort();\n const controller = new AbortController();\n pendingPreview.current = controller;\n const selection = { target, scopeIdentity };\n setState({ ...selection, phase: BillingPlanChangePhase.PREVIEWING });\n try {\n const response = await billing.previewPlanChange(target, { signal: controller.signal });\n const preview = invoicePreviewForDisplay(response);\n if (!response.previewToken) throw new Error('The invoice estimate has no confirmation binding.');\n if (generation.current !== requestGeneration || currentIdentity.current !== scopeIdentity) return;\n setState({ ...selection, phase: BillingPlanChangePhase.READY, response, preview });\n } catch {\n if (generation.current !== requestGeneration || controller.signal.aborted) return;\n setState({ ...selection, phase: BillingPlanChangePhase.FAILED });\n }\n }, [billing, ready, scopeIdentity]);\n\n const cancel = useCallback(() => {\n if (confirming.current) return;\n generation.current += 1;\n pendingPreview.current?.abort();\n setState({ phase: BillingPlanChangePhase.IDLE });\n }, []);\n\n const confirm = useCallback(async () => {\n const current = stateRef.current;\n if (!billing || !ready || confirming.current || current.phase !== BillingPlanChangePhase.READY || current.scopeIdentity !== currentIdentity.current) return;\n confirming.current = true;\n const requestGeneration = generation.current;\n setState({ ...current, phase: BillingPlanChangePhase.CONFIRMING, hasError: false });\n try {\n await billing.confirmPlanChange({ ...current.target, previewToken: current.response.previewToken });\n if (generation.current === requestGeneration) setState({ phase: BillingPlanChangePhase.IDLE });\n } catch {\n if (generation.current === requestGeneration) setState({ ...current, phase: BillingPlanChangePhase.READY, hasError: true });\n } finally {\n confirming.current = false;\n }\n }, [billing, ready]);\n\n return { state, select, cancel, confirm };\n}\n"]}
1
+ {"version":3,"file":"useBillingPlanChange.js","sourceRoot":"","sources":["../../../../src/core/billing/useBillingPlanChange.ts"],"names":[],"mappings":"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","sourcesContent":["import { useCallback, useEffect, useRef, useState } from 'react';\nimport { currencyMinorUnitDecimals } from '@wildo-ai/zod-decorators';\nimport { BillingStateSlice, type InvoicePreview } from '@wildo-ai/saas-models';\nimport type { BillingContextType, BillingPlanChangeTarget, BillingPlanChangePreviewResponse } from './BillingContext';\n\nexport enum BillingPlanChangePhase {\n IDLE = 'idle',\n PREVIEWING = 'previewing',\n READY = 'ready',\n CONFIRMING = 'confirming',\n FAILED = 'failed',\n}\n\ntype Selection = { target: BillingPlanChangeTarget; scopeIdentity: string };\nexport type BillingPlanChangeState =\n | { phase: BillingPlanChangePhase.IDLE }\n | (Selection & { phase: BillingPlanChangePhase.PREVIEWING | BillingPlanChangePhase.FAILED })\n | (Selection & { phase: BillingPlanChangePhase.READY | BillingPlanChangePhase.CONFIRMING; response: BillingPlanChangePreviewResponse; preview: InvoicePreview; hasError?: boolean });\n\n/** A provider amount uses the currency's own minor units, not an authored price's arbitrary scale. */\nexport function invoicePreviewForDisplay(response: BillingPlanChangePreviewResponse): InvoicePreview {\n const currency = response.currency.toUpperCase();\n const decimals = currencyMinorUnitDecimals(currency);\n if (decimals === undefined || !Number.isSafeInteger(response.amount) || response.lineItems.some(item => !Number.isSafeInteger(item.amount))) {\n throw new Error('The invoice estimate contains unsupported monetary values.');\n }\n return {\n amount: { amount: BigInt(response.amount), currency, decimals },\n lineItems: response.lineItems.map(item => ({ ...item, amount: { amount: BigInt(item.amount), currency, decimals } })),\n periodStart: response.periodStart,\n periodEnd: response.periodEnd,\n timing: response.timing,\n effectiveAt: new Date(response.effectiveAt),\n };\n}\n\n/** Owns the composed selection flow. A server token is only usable with its original selection.\n * Request generation fences late responses; cancellation aborts only a preview, never an accepted mutation.\n * A failed confirmation retains its token for the server's idempotent retry path.\n */\nexport function useBillingPlanChange(billing: BillingContextType | undefined) {\n const [state, setState] = useState<BillingPlanChangeState>({ phase: BillingPlanChangePhase.IDLE });\n const generation = useRef(0);\n const pendingPreview = useRef<AbortController | null>(null);\n const confirming = useRef(false);\n const stateRef = useRef(state);\n stateRef.current = state;\n const scopeIdentity = JSON.stringify([billing?.currentScope, billing?.billingAccount?._id, billing?.subscription?._id]);\n const currentIdentity = useRef(scopeIdentity);\n currentIdentity.current = scopeIdentity;\n const ready = !!billing?.isEnabled && [BillingStateSlice.BILLING_ACCOUNT, BillingStateSlice.SUBSCRIPTION, BillingStateSlice.PRODUCTS, BillingStateSlice.PRICES].every(billing.isSliceAvailable);\n\n useEffect(() => {\n generation.current += 1;\n pendingPreview.current?.abort();\n setState({ phase: BillingPlanChangePhase.IDLE });\n return () => { generation.current += 1; pendingPreview.current?.abort(); };\n }, [scopeIdentity]);\n\n // A same-scope refresh cannot revoke an already submitted confirmation or its retry token.\n // Availability controls whether another dispatch is allowed; it is not evidence that the\n // provider did not accept the first one. The server validates the quote's semantic basis.\n useEffect(() => {\n const current = stateRef.current;\n if (confirming.current || (current.phase === BillingPlanChangePhase.READY && current.hasError)) return;\n if (!ready) {\n generation.current += 1;\n pendingPreview.current?.abort();\n setState({ phase: BillingPlanChangePhase.IDLE });\n }\n }, [ready]);\n\n const select = useCallback(async (target: BillingPlanChangeTarget) => {\n if (!billing || !ready || !billing.subscription || confirming.current) return;\n const requestGeneration = ++generation.current;\n pendingPreview.current?.abort();\n const controller = new AbortController();\n pendingPreview.current = controller;\n const selection = { target, scopeIdentity };\n setState({ ...selection, phase: BillingPlanChangePhase.PREVIEWING });\n try {\n const response = await billing.previewPlanChange(target, { signal: controller.signal });\n const preview = invoicePreviewForDisplay(response);\n if (!response.previewToken) throw new Error('The invoice estimate has no confirmation binding.');\n if (generation.current !== requestGeneration || currentIdentity.current !== scopeIdentity) return;\n setState({ ...selection, phase: BillingPlanChangePhase.READY, response, preview });\n } catch {\n if (generation.current !== requestGeneration || controller.signal.aborted) return;\n setState({ ...selection, phase: BillingPlanChangePhase.FAILED });\n }\n }, [billing, ready, scopeIdentity]);\n\n const cancel = useCallback(() => {\n if (confirming.current) return;\n generation.current += 1;\n pendingPreview.current?.abort();\n setState({ phase: BillingPlanChangePhase.IDLE });\n }, []);\n\n const confirm = useCallback(async () => {\n const current = stateRef.current;\n if (!billing || !ready || confirming.current || current.phase !== BillingPlanChangePhase.READY || current.scopeIdentity !== currentIdentity.current) return;\n confirming.current = true;\n const requestGeneration = generation.current;\n setState({ ...current, phase: BillingPlanChangePhase.CONFIRMING, hasError: false });\n try {\n await billing.confirmPlanChange({ ...current.target, previewToken: current.response.previewToken });\n if (generation.current === requestGeneration) setState({ phase: BillingPlanChangePhase.IDLE });\n } catch {\n if (generation.current === requestGeneration) setState({ ...current, phase: BillingPlanChangePhase.READY, hasError: true });\n } finally {\n confirming.current = false;\n }\n }, [billing, ready]);\n\n return { state, select, cancel, confirm };\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"useSafeBillingActionExecutor.d.ts","sourceRoot":"","sources":["../../../../../src/core/billing/useSafeBillingActionExecutor.ts"],"names":[],"mappings":"AAIA;;;;;;GAMG;AACH,wBAAgB,4BAA4B,IAAI,CAAC,MAAM,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,KAAK,IAAI,CASpF"}
1
+ {"version":3,"file":"useSafeBillingActionExecutor.d.ts","sourceRoot":"","sources":["../../../../src/core/billing/useSafeBillingActionExecutor.ts"],"names":[],"mappings":"AAIA;;;;;;GAMG;AACH,wBAAgB,4BAA4B,IAAI,CAAC,MAAM,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,KAAK,IAAI,CASpF"}
@@ -1 +1 @@
1
- {"version":3,"file":"useSafeBillingActionExecutor.js","sourceRoot":"","sources":["../../../../../src/core/billing/useSafeBillingActionExecutor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,OAAO,CAAC;AACpC,OAAO,EAAE,eAAe,EAAE,MAAM,iDAAiD,CAAC;AAClF,OAAO,EAAE,yBAAyB,EAAE,MAAM,2DAA2D,CAAC;AAEtG;;;;;;GAMG;AACH,MAAM,UAAU,4BAA4B;IAC1C,MAAM,EAAE,WAAW,EAAE,GAAG,eAAe,EAAE,CAAC;IAC1C,MAAM,wBAAwB,GAAG,yBAAyB,EAAE,CAAC;IAE7D,OAAO,WAAW,CAAC,CAAC,MAA2B,EAAE,EAAE;QACjD,KAAK,MAAM,EAAE,CAAC,KAAK,CAAC,CAAC,KAAc,EAAE,EAAE;YACrC,WAAW,CAAC,wBAAwB,CAAC,KAAK,CAAC,CAAC,CAAC;QAC/C,CAAC,CAAC,CAAC;IACL,CAAC,EAAE,CAAC,WAAW,EAAE,wBAAwB,CAAC,CAAC,CAAC;AAC9C,CAAC","sourcesContent":["import { useCallback } from 'react';\nimport { useNotification } from '~wildo-frontend-lib/core/events/useNotification';\nimport { useUserFacingErrorMessage } from '~wildo-frontend-lib/core/errors/useUserFacingErrorMessage';\n\n/**\n * Wrap billing UI actions so user-triggered checkout / portal failures surface\n * through the notification system instead of becoming dropped promise rejections.\n *\n * The notification shows the failure's localized words, never the error's own `message` (a reference key\n * for a backend rejection, developer text for a thrown `Error`).\n */\nexport function useSafeBillingActionExecutor(): (action: () => Promise<void>) => void {\n const { notifyError } = useNotification();\n const toUserFacingErrorMessage = useUserFacingErrorMessage();\n\n return useCallback((action: () => Promise<void>) => {\n void action().catch((error: unknown) => {\n notifyError(toUserFacingErrorMessage(error));\n });\n }, [notifyError, toUserFacingErrorMessage]);\n}\n"]}
1
+ {"version":3,"file":"useSafeBillingActionExecutor.js","sourceRoot":"","sources":["../../../../src/core/billing/useSafeBillingActionExecutor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,OAAO,CAAC;AACpC,OAAO,EAAE,eAAe,EAAE,MAAM,iDAAiD,CAAC;AAClF,OAAO,EAAE,yBAAyB,EAAE,MAAM,2DAA2D,CAAC;AAEtG;;;;;;GAMG;AACH,MAAM,UAAU,4BAA4B;IAC1C,MAAM,EAAE,WAAW,EAAE,GAAG,eAAe,EAAE,CAAC;IAC1C,MAAM,wBAAwB,GAAG,yBAAyB,EAAE,CAAC;IAE7D,OAAO,WAAW,CAAC,CAAC,MAA2B,EAAE,EAAE;QACjD,KAAK,MAAM,EAAE,CAAC,KAAK,CAAC,CAAC,KAAc,EAAE,EAAE;YACrC,WAAW,CAAC,wBAAwB,CAAC,KAAK,CAAC,CAAC,CAAC;QAC/C,CAAC,CAAC,CAAC;IACL,CAAC,EAAE,CAAC,WAAW,EAAE,wBAAwB,CAAC,CAAC,CAAC;AAC9C,CAAC","sourcesContent":["import { useCallback } from 'react';\nimport { useNotification } from '~wildo-frontend-lib/core/events/useNotification';\nimport { useUserFacingErrorMessage } from '~wildo-frontend-lib/core/errors/useUserFacingErrorMessage';\n\n/**\n * Wrap billing UI actions so user-triggered checkout / portal failures surface\n * through the notification system instead of becoming dropped promise rejections.\n *\n * The notification shows the failure's localized words, never the error's own `message` (a reference key\n * for a backend rejection, developer text for a thrown `Error`).\n */\nexport function useSafeBillingActionExecutor(): (action: () => Promise<void>) => void {\n const { notifyError } = useNotification();\n const toUserFacingErrorMessage = useUserFacingErrorMessage();\n\n return useCallback((action: () => Promise<void>) => {\n void action().catch((error: unknown) => {\n notifyError(toUserFacingErrorMessage(error));\n });\n }, [notifyError, toUserFacingErrorMessage]);\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"useBrandIdentity.d.ts","sourceRoot":"","sources":["../../../../../src/core/branding/useBrandIdentity.ts"],"names":[],"mappings":"AAEA,OAAO,EACL,qBAAqB,EACrB,iBAAiB,EACjB,eAAe,EAGhB,MAAM,uBAAuB,CAAC;AAK/B;;;;GAIG;AACH,MAAM,WAAW,aAAa;IAC5B;;;;OAIG;IACH,IAAI,EAAE,MAAM,CAAC;IACb;;;;OAIG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB;;;;;;;;;;;OAWG;IACH,eAAe,CAAC,EAAE,qBAAqB,CAAC;CACzC;AAED,MAAM,WAAW,uBAAuB;IACtC;;;;;OAKG;IACH,WAAW,CAAC,EAAE,qBAAqB,CAAC;IACpC,oEAAoE;IACpE,OAAO,CAAC,EAAE,iBAAiB,CAAC;IAC5B;;;;;;;OAOG;IACH,KAAK,CAAC,EAAE,eAAe,CAAC;CACzB;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AACH,wBAAgB,gBAAgB,CAAC,OAAO,GAAE,uBAA4B,GAAG,aAAa,CAqDrF"}
1
+ {"version":3,"file":"useBrandIdentity.d.ts","sourceRoot":"","sources":["../../../../src/core/branding/useBrandIdentity.ts"],"names":[],"mappings":"AAEA,OAAO,EACL,qBAAqB,EACrB,iBAAiB,EACjB,eAAe,EAGhB,MAAM,uBAAuB,CAAC;AAK/B;;;;GAIG;AACH,MAAM,WAAW,aAAa;IAC5B;;;;OAIG;IACH,IAAI,EAAE,MAAM,CAAC;IACb;;;;OAIG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB;;;;;;;;;;;OAWG;IACH,eAAe,CAAC,EAAE,qBAAqB,CAAC;CACzC;AAED,MAAM,WAAW,uBAAuB;IACtC;;;;;OAKG;IACH,WAAW,CAAC,EAAE,qBAAqB,CAAC;IACpC,oEAAoE;IACpE,OAAO,CAAC,EAAE,iBAAiB,CAAC;IAC5B;;;;;;;OAOG;IACH,KAAK,CAAC,EAAE,eAAe,CAAC;CACzB;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AACH,wBAAgB,gBAAgB,CAAC,OAAO,GAAE,uBAA4B,GAAG,aAAa,CAqDrF"}
@@ -1 +1 @@
1
- {"version":3,"file":"useBrandIdentity.js","sourceRoot":"","sources":["../../../../../src/core/branding/useBrandIdentity.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,OAAO,CAAC;AAEhC,OAAO,EACL,qBAAqB,EACrB,iBAAiB,EACjB,eAAe,EACf,iBAAiB,GAElB,MAAM,uBAAuB,CAAC;AAE/B,OAAO,EAAE,cAAc,EAAE,MAAM,iDAAiD,CAAC;AACjF,OAAO,EAAE,KAAK,EAAE,MAAM,mCAAmC,CAAC;AAwD1D;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AACH,MAAM,UAAU,gBAAgB,CAAC,UAAmC,EAAE;IACpE,MAAM,EAAE,WAAW,GAAG,qBAAqB,CAAC,MAAM,EAAE,OAAO,GAAG,iBAAiB,CAAC,OAAO,EAAE,KAAK,EAAE,GAAG,OAAO,CAAC;IAC3G,MAAM,EAAE,SAAS,EAAE,GAAG,cAAc,EAAE,CAAC;IACvC,MAAM,EAAE,MAAM,EAAE,aAAa,EAAE,GAAG,KAAK,EAAE,CAAC;IAE1C,8EAA8E;IAC9E,EAAE;IACF,4EAA4E;IAC5E,wEAAwE;IACxE,uEAAuE;IACvE,yEAAyE;IACzE,sCAAsC;IACtC,EAAE;IACF,6EAA6E;IAC7E,+DAA+D;IAC/D,sFAAsF;IACtF,yEAAyE;IACzE,4EAA4E;IAC5E,eAAe;IACf,EAAE;IACF,+EAA+E;IAC/E,wEAAwE;IACxE,4EAA4E;IAC5E,0EAA0E;IAC1E,yDAAyD;IACzD,EAAE;IACF,+EAA+E;IAC/E,2EAA2E;IAC3E,6EAA6E;IAC7E,+EAA+E;IAC/E,MAAM,WAAW,GAAoC,aAAa;QAChE,CAAC,CAAC,aAAa,CAAC,WAAW;QAC3B,CAAC,CAAC,SAAS,CAAC,WAAW,CAAC;IAC1B,MAAM,IAAI,GAAG,aAAa;QACxB,CAAC,CAAC,aAAa,CAAC,IAAI;QACpB,CAAC,CAAC,CAAC,SAAS,CAAC,WAAW,EAAE,WAAW,IAAI,SAAS,CAAC,WAAW,EAAE,OAAO,IAAI,EAAE,CAAC,CAAC;IAEjF,MAAM,QAAQ,GAAG,OAAO,CAAC,GAAG,EAAE;QAC5B,IAAI,CAAC,WAAW,EAAE,MAAM;YAAE,OAAO,SAAS,CAAC;QAC3C,OAAO,iBAAiB,CAAC,WAAW,EAAE;YACpC,WAAW;YACX,uEAAuE;YACvE,wEAAwE;YACxE,wEAAwE;YACxE,wEAAwE;YACxE,qEAAqE;YACrE,aAAa;YACb,KAAK,EAAE,KAAK,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC,CAAC,eAAe,CAAC,KAAK,CAAC;YACvE,OAAO;SACR,CAAC,CAAC;IACL,CAAC,EAAE,CAAC,WAAW,EAAE,WAAW,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC;IAEvD,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,QAAQ,EAAE,GAAG,EAAE,eAAe,EAAE,QAAQ,EAAE,WAAW,EAAE,CAAC;AAClF,CAAC","sourcesContent":["import { useMemo } from 'react';\n\nimport {\n BrandAssetComposition,\n BrandAssetPurpose,\n BrandAssetTheme,\n resolveBrandAsset,\n type RuntimeBrandAsset,\n} from '@wildo-ai/saas-models';\n\nimport { useApplication } from '~wildo-frontend-lib/core/runtime/useApplication';\nimport { useUI } from '~wildo-frontend-lib/core/ui/useUI';\n\n/**\n * The application's brand identity as a shell surface needs it: a display name\n * plus the URL of the brand asset matching the requested composition and the\n * ACTIVE light/dark theme.\n */\nexport interface BrandIdentity {\n /**\n * Human-readable application name — `appIdentity.displayName` when authored,\n * falling back to the technical `appName` (which the config schema requires,\n * so this is always non-empty).\n */\n name: string;\n /**\n * Resolved brand-asset URL, or `undefined` when the application has generated\n * no brand yet. Consumers must degrade gracefully rather than render a broken\n * image (the schema documents brand assets as absent until generated).\n */\n logoUrl?: string;\n /**\n * Composition of the asset that was ACTUALLY resolved — which may differ from\n * the one requested. `resolveBrandAsset`'s last fallback rung matches any\n * composition at `(DEFAULT, PRIMARY)`, so an application whose brand contains\n * no `SYMBOL` (a wordmark-only identity is a supported brand shape) yields its\n * `WORDMARK`/`LOCKUP` master here.\n *\n * Surfaces MUST branch on this rather than assume they got what they asked\n * for: a wordmark or lockup already CONTAINS the application name, so\n * rendering it beside a name label duplicates the name, and squeezing a wide\n * asset into a square icon slot letterboxes it.\n */\n logoComposition?: BrandAssetComposition;\n}\n\nexport interface UseBrandIdentityOptions {\n /**\n * Which brand composition the surface wants. Defaults to\n * {@link BrandAssetComposition.SYMBOL} — the right choice for any surface that\n * renders the application NAME as text beside the mark, because a `LOCKUP`\n * already contains the name and would duplicate it.\n */\n composition?: BrandAssetComposition;\n /** Asset purpose. Defaults to {@link BrandAssetPurpose.PRIMARY}. */\n purpose?: BrandAssetPurpose;\n /**\n * PINS the mark variant instead of following the active UI theme — e.g.\n * {@link BrandAssetTheme.MONOCHROME} for the single-colour mark, or\n * {@link BrandAssetTheme.DEFAULT} to keep the colour mark on a dark shell.\n *\n * Omitted (the default) means ADAPTIVE: dark UI asks for `DARK`, light UI for\n * `LIGHT`, both falling back through `DEFAULT` inside `resolveBrandAsset`.\n */\n theme?: BrandAssetTheme;\n}\n\n/**\n * @wildo_source:part:start saas.frontend.brand-identity facet:layer:frontend facet:audience:app-developer\n *\n * Reads the application's brand identity for a shell surface.\n *\n * Owns ONE decision every brand-rendering surface would otherwise re-derive:\n * how the active UI theme maps onto {@link BrandAssetTheme} (dark UI → `DARK`,\n * light UI → `LIGHT`), unless the caller PINS a variant via `options.theme`.\n * `resolveBrandAsset` then applies the framework's documented fallback chain, so\n * an app that generated only a default-theme mark still gets it in dark mode\n * instead of nothing.\n *\n * Must be used inside `ApplicationMainProvider` (it reads the application\n * config) and inside `UIProvider` (it reads the resolved dark-mode state).\n *\n * ## Two things a caller does not have to solve\n *\n * The MARK VARIANT follows the active UI theme by default — dark UI asks for the dark mark, light UI\n * for the light one, each falling back through the default. So an application that generated only a\n * default-theme mark still gets it in dark mode rather than nothing. Pin `options.theme` only when a\n * surface genuinely needs a fixed variant, such as a monochrome mark.\n *\n * WHOSE identity is rendered is decided here too, and it matters for any frontend that observes an\n * application rather than being one — a creation tool, a back office. Such a frontend declares\n * `shellIdentity` in its frontend configuration, and that identity WINS over the application config\n * it reads. Without that precedence the tool renders its customer's brand as its own, because there\n * is exactly one application-config endpoint and it belongs to the application.\n *\n * @wildo_source:part:end saas.frontend.brand-identity\n */\nexport function useBrandIdentity(options: UseBrandIdentityOptions = {}): BrandIdentity {\n const { composition = BrandAssetComposition.SYMBOL, purpose = BrandAssetPurpose.PRIMARY, theme } = options;\n const { appConfig } = useApplication();\n const { isDark, shellIdentity } = useUI();\n\n // ── WHOSE identity is this? ────────────────────────────────────────────────\n //\n // A frontend that declares `shellIdentity` in its frontend configuration is\n // saying \"I am not the application I talk to\" — a creation tool, a back\n // office, anything observing an application rather than being one. Its\n // identity WINS here, because the alternative is silently presenting the\n // customer's brand as the tool's own.\n //\n // That is not hypothetical. There is exactly ONE application-config endpoint\n // and it belongs to the application: the dev companion answers\n // `GET /api/v1/application-config?frontendServiceName=application-creation-workbench`\n // with `appIdentity.displayName: \"Wonder CRM\"` (measured 2026-08-31), so\n // without this precedence the workbench's brand header reads as the managed\n // application.\n //\n // The two halves are taken TOGETHER, never mixed. A shell that declared a name\n // but no assets must render its name UNMARKED rather than borrowing the\n // application's mark — a foreign logo beside your own name is worse than no\n // logo, and it is the exact mismatch this field exists to prevent. So the\n // assets are read from whichever side supplied the name.\n //\n // `appConfig` is non-optional on the context type and the provider only mounts\n // past the bootstrap gate, so it is read directly; `appIdentity` keeps its\n // optional read because the runtime payload has historically been treated as\n // possibly-absent (see `ApplicationMainContext`'s own `appIdentity?.version`).\n const brandAssets: RuntimeBrandAsset[] | undefined = shellIdentity\n ? shellIdentity.brandAssets\n : appConfig.brandAssets;\n const name = shellIdentity\n ? shellIdentity.name\n : (appConfig.appIdentity?.displayName || appConfig.appIdentity?.appName || '');\n\n const resolved = useMemo(() => {\n if (!brandAssets?.length) return undefined;\n return resolveBrandAsset(brandAssets, {\n composition,\n // An explicit `theme` pins the variant (monochrome, or a forced side).\n // Otherwise ADAPTIVE: LIGHT rather than DEFAULT for a light UI, because\n // `resolveBrandAsset` tries the requested theme first and falls back to\n // DEFAULT on its own — so asking for LIGHT strictly adds the ability to\n // honor a light-specific asset, while asking for DEFAULT could never\n // reach one.\n theme: theme ?? (isDark ? BrandAssetTheme.DARK : BrandAssetTheme.LIGHT),\n purpose,\n });\n }, [brandAssets, composition, purpose, theme, isDark]);\n\n return { name, logoUrl: resolved?.url, logoComposition: resolved?.composition };\n}\n"]}
1
+ {"version":3,"file":"useBrandIdentity.js","sourceRoot":"","sources":["../../../../src/core/branding/useBrandIdentity.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,OAAO,CAAC;AAEhC,OAAO,EACL,qBAAqB,EACrB,iBAAiB,EACjB,eAAe,EACf,iBAAiB,GAElB,MAAM,uBAAuB,CAAC;AAE/B,OAAO,EAAE,cAAc,EAAE,MAAM,iDAAiD,CAAC;AACjF,OAAO,EAAE,KAAK,EAAE,MAAM,mCAAmC,CAAC;AAwD1D;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AACH,MAAM,UAAU,gBAAgB,CAAC,UAAmC,EAAE;IACpE,MAAM,EAAE,WAAW,GAAG,qBAAqB,CAAC,MAAM,EAAE,OAAO,GAAG,iBAAiB,CAAC,OAAO,EAAE,KAAK,EAAE,GAAG,OAAO,CAAC;IAC3G,MAAM,EAAE,SAAS,EAAE,GAAG,cAAc,EAAE,CAAC;IACvC,MAAM,EAAE,MAAM,EAAE,aAAa,EAAE,GAAG,KAAK,EAAE,CAAC;IAE1C,8EAA8E;IAC9E,EAAE;IACF,4EAA4E;IAC5E,wEAAwE;IACxE,uEAAuE;IACvE,yEAAyE;IACzE,sCAAsC;IACtC,EAAE;IACF,6EAA6E;IAC7E,+DAA+D;IAC/D,sFAAsF;IACtF,yEAAyE;IACzE,4EAA4E;IAC5E,eAAe;IACf,EAAE;IACF,+EAA+E;IAC/E,wEAAwE;IACxE,4EAA4E;IAC5E,0EAA0E;IAC1E,yDAAyD;IACzD,EAAE;IACF,+EAA+E;IAC/E,2EAA2E;IAC3E,6EAA6E;IAC7E,+EAA+E;IAC/E,MAAM,WAAW,GAAoC,aAAa;QAChE,CAAC,CAAC,aAAa,CAAC,WAAW;QAC3B,CAAC,CAAC,SAAS,CAAC,WAAW,CAAC;IAC1B,MAAM,IAAI,GAAG,aAAa;QACxB,CAAC,CAAC,aAAa,CAAC,IAAI;QACpB,CAAC,CAAC,CAAC,SAAS,CAAC,WAAW,EAAE,WAAW,IAAI,SAAS,CAAC,WAAW,EAAE,OAAO,IAAI,EAAE,CAAC,CAAC;IAEjF,MAAM,QAAQ,GAAG,OAAO,CAAC,GAAG,EAAE;QAC5B,IAAI,CAAC,WAAW,EAAE,MAAM;YAAE,OAAO,SAAS,CAAC;QAC3C,OAAO,iBAAiB,CAAC,WAAW,EAAE;YACpC,WAAW;YACX,uEAAuE;YACvE,wEAAwE;YACxE,wEAAwE;YACxE,wEAAwE;YACxE,qEAAqE;YACrE,aAAa;YACb,KAAK,EAAE,KAAK,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC,CAAC,eAAe,CAAC,KAAK,CAAC;YACvE,OAAO;SACR,CAAC,CAAC;IACL,CAAC,EAAE,CAAC,WAAW,EAAE,WAAW,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC;IAEvD,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,QAAQ,EAAE,GAAG,EAAE,eAAe,EAAE,QAAQ,EAAE,WAAW,EAAE,CAAC;AAClF,CAAC","sourcesContent":["import { useMemo } from 'react';\n\nimport {\n BrandAssetComposition,\n BrandAssetPurpose,\n BrandAssetTheme,\n resolveBrandAsset,\n type RuntimeBrandAsset,\n} from '@wildo-ai/saas-models';\n\nimport { useApplication } from '~wildo-frontend-lib/core/runtime/useApplication';\nimport { useUI } from '~wildo-frontend-lib/core/ui/useUI';\n\n/**\n * The application's brand identity as a shell surface needs it: a display name\n * plus the URL of the brand asset matching the requested composition and the\n * ACTIVE light/dark theme.\n */\nexport interface BrandIdentity {\n /**\n * Human-readable application name — `appIdentity.displayName` when authored,\n * falling back to the technical `appName` (which the config schema requires,\n * so this is always non-empty).\n */\n name: string;\n /**\n * Resolved brand-asset URL, or `undefined` when the application has generated\n * no brand yet. Consumers must degrade gracefully rather than render a broken\n * image (the schema documents brand assets as absent until generated).\n */\n logoUrl?: string;\n /**\n * Composition of the asset that was ACTUALLY resolved — which may differ from\n * the one requested. `resolveBrandAsset`'s last fallback rung matches any\n * composition at `(DEFAULT, PRIMARY)`, so an application whose brand contains\n * no `SYMBOL` (a wordmark-only identity is a supported brand shape) yields its\n * `WORDMARK`/`LOCKUP` master here.\n *\n * Surfaces MUST branch on this rather than assume they got what they asked\n * for: a wordmark or lockup already CONTAINS the application name, so\n * rendering it beside a name label duplicates the name, and squeezing a wide\n * asset into a square icon slot letterboxes it.\n */\n logoComposition?: BrandAssetComposition;\n}\n\nexport interface UseBrandIdentityOptions {\n /**\n * Which brand composition the surface wants. Defaults to\n * {@link BrandAssetComposition.SYMBOL} — the right choice for any surface that\n * renders the application NAME as text beside the mark, because a `LOCKUP`\n * already contains the name and would duplicate it.\n */\n composition?: BrandAssetComposition;\n /** Asset purpose. Defaults to {@link BrandAssetPurpose.PRIMARY}. */\n purpose?: BrandAssetPurpose;\n /**\n * PINS the mark variant instead of following the active UI theme — e.g.\n * {@link BrandAssetTheme.MONOCHROME} for the single-colour mark, or\n * {@link BrandAssetTheme.DEFAULT} to keep the colour mark on a dark shell.\n *\n * Omitted (the default) means ADAPTIVE: dark UI asks for `DARK`, light UI for\n * `LIGHT`, both falling back through `DEFAULT` inside `resolveBrandAsset`.\n */\n theme?: BrandAssetTheme;\n}\n\n/**\n * @wildo_source:part:start saas.frontend.brand-identity facet:layer:frontend facet:audience:app-developer\n *\n * Reads the application's brand identity for a shell surface.\n *\n * Owns ONE decision every brand-rendering surface would otherwise re-derive:\n * how the active UI theme maps onto {@link BrandAssetTheme} (dark UI → `DARK`,\n * light UI → `LIGHT`), unless the caller PINS a variant via `options.theme`.\n * `resolveBrandAsset` then applies the framework's documented fallback chain, so\n * an app that generated only a default-theme mark still gets it in dark mode\n * instead of nothing.\n *\n * Must be used inside `ApplicationMainProvider` (it reads the application\n * config) and inside `UIProvider` (it reads the resolved dark-mode state).\n *\n * ## Two things a caller does not have to solve\n *\n * The MARK VARIANT follows the active UI theme by default — dark UI asks for the dark mark, light UI\n * for the light one, each falling back through the default. So an application that generated only a\n * default-theme mark still gets it in dark mode rather than nothing. Pin `options.theme` only when a\n * surface genuinely needs a fixed variant, such as a monochrome mark.\n *\n * WHOSE identity is rendered is decided here too, and it matters for any frontend that observes an\n * application rather than being one — a creation tool, a back office. Such a frontend declares\n * `shellIdentity` in its frontend configuration, and that identity WINS over the application config\n * it reads. Without that precedence the tool renders its customer's brand as its own, because there\n * is exactly one application-config endpoint and it belongs to the application.\n *\n * @wildo_source:part:end saas.frontend.brand-identity\n */\nexport function useBrandIdentity(options: UseBrandIdentityOptions = {}): BrandIdentity {\n const { composition = BrandAssetComposition.SYMBOL, purpose = BrandAssetPurpose.PRIMARY, theme } = options;\n const { appConfig } = useApplication();\n const { isDark, shellIdentity } = useUI();\n\n // ── WHOSE identity is this? ────────────────────────────────────────────────\n //\n // A frontend that declares `shellIdentity` in its frontend configuration is\n // saying \"I am not the application I talk to\" — a creation tool, a back\n // office, anything observing an application rather than being one. Its\n // identity WINS here, because the alternative is silently presenting the\n // customer's brand as the tool's own.\n //\n // That is not hypothetical. There is exactly ONE application-config endpoint\n // and it belongs to the application: the dev companion answers\n // `GET /api/v1/application-config?frontendServiceName=application-creation-workbench`\n // with `appIdentity.displayName: \"Wonder CRM\"` (measured 2026-08-31), so\n // without this precedence the workbench's brand header reads as the managed\n // application.\n //\n // The two halves are taken TOGETHER, never mixed. A shell that declared a name\n // but no assets must render its name UNMARKED rather than borrowing the\n // application's mark — a foreign logo beside your own name is worse than no\n // logo, and it is the exact mismatch this field exists to prevent. So the\n // assets are read from whichever side supplied the name.\n //\n // `appConfig` is non-optional on the context type and the provider only mounts\n // past the bootstrap gate, so it is read directly; `appIdentity` keeps its\n // optional read because the runtime payload has historically been treated as\n // possibly-absent (see `ApplicationMainContext`'s own `appIdentity?.version`).\n const brandAssets: RuntimeBrandAsset[] | undefined = shellIdentity\n ? shellIdentity.brandAssets\n : appConfig.brandAssets;\n const name = shellIdentity\n ? shellIdentity.name\n : (appConfig.appIdentity?.displayName || appConfig.appIdentity?.appName || '');\n\n const resolved = useMemo(() => {\n if (!brandAssets?.length) return undefined;\n return resolveBrandAsset(brandAssets, {\n composition,\n // An explicit `theme` pins the variant (monochrome, or a forced side).\n // Otherwise ADAPTIVE: LIGHT rather than DEFAULT for a light UI, because\n // `resolveBrandAsset` tries the requested theme first and falls back to\n // DEFAULT on its own — so asking for LIGHT strictly adds the ability to\n // honor a light-specific asset, while asking for DEFAULT could never\n // reach one.\n theme: theme ?? (isDark ? BrandAssetTheme.DARK : BrandAssetTheme.LIGHT),\n purpose,\n });\n }, [brandAssets, composition, purpose, theme, isDark]);\n\n return { name, logoUrl: resolved?.url, logoComposition: resolved?.composition };\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"useBrandPresentation.d.ts","sourceRoot":"","sources":["../../../../../src/core/branding/useBrandPresentation.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAExD;;;;;;GAMG;AACH,MAAM,WAAW,iBAAiB;IAChC,8FAA8F;IAC9F,IAAI,EAAE,MAAM,CAAC;IACb,kEAAkE;IAClE,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB;;;OAGG;IACH,OAAO,EAAE,OAAO,CAAC;IACjB;;;;;;OAMG;IACH,eAAe,EAAE,OAAO,CAAC;IACzB,+FAA+F;IAC/F,OAAO,EAAE,OAAO,CAAC;IACjB;;;;OAIG;IACH,WAAW,EAAE,MAAM,IAAI,CAAC;CACzB;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,oBAAoB,CAAC,QAAQ,EAAE,aAAa,GAAG,SAAS,GAAG,iBAAiB,CAyB3F"}
1
+ {"version":3,"file":"useBrandPresentation.d.ts","sourceRoot":"","sources":["../../../../src/core/branding/useBrandPresentation.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAExD;;;;;;GAMG;AACH,MAAM,WAAW,iBAAiB;IAChC,8FAA8F;IAC9F,IAAI,EAAE,MAAM,CAAC;IACb,kEAAkE;IAClE,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB;;;OAGG;IACH,OAAO,EAAE,OAAO,CAAC;IACjB;;;;;;OAMG;IACH,eAAe,EAAE,OAAO,CAAC;IACzB,+FAA+F;IAC/F,OAAO,EAAE,OAAO,CAAC;IACjB;;;;OAIG;IACH,WAAW,EAAE,MAAM,IAAI,CAAC;CACzB;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,oBAAoB,CAAC,QAAQ,EAAE,aAAa,GAAG,SAAS,GAAG,iBAAiB,CAyB3F"}