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

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 (2512) 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 +30 -0
  10. package/dist/esm/components/actions/action-bar.d.ts.map +1 -1
  11. package/dist/esm/components/actions/action-bar.js.map +1 -1
  12. package/dist/esm/components/actions/action-button.d.ts +5 -0
  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 +15 -0
  18. package/dist/esm/components/actions/button.d.ts.map +1 -1
  19. package/dist/esm/components/actions/button.js +14 -0
  20. package/dist/esm/components/actions/button.js.map +1 -1
  21. package/dist/esm/components/ai-elements/artifacts/artifact-browser.types.d.ts.map +1 -1
  22. package/dist/esm/components/ai-elements/artifacts/artifact-browser.types.js.map +1 -1
  23. package/dist/esm/components/ai-elements/artifacts/artifact-list.d.ts.map +1 -1
  24. package/dist/esm/components/ai-elements/artifacts/artifact-list.js.map +1 -1
  25. package/dist/esm/components/ai-elements/artifacts/artifact.d.ts.map +1 -1
  26. package/dist/esm/components/ai-elements/artifacts/artifact.js.map +1 -1
  27. package/dist/esm/components/ai-elements/artifacts/code-block.d.ts.map +1 -1
  28. package/dist/esm/components/ai-elements/artifacts/code-block.js.map +1 -1
  29. package/dist/esm/components/ai-elements/artifacts/diff-block.d.ts +38 -0
  30. package/dist/esm/components/ai-elements/artifacts/diff-block.d.ts.map +1 -0
  31. package/dist/esm/components/ai-elements/artifacts/diff-block.js +9 -0
  32. package/dist/esm/components/ai-elements/artifacts/diff-block.js.map +1 -0
  33. package/dist/esm/components/ai-elements/artifacts/image.d.ts.map +1 -1
  34. package/dist/esm/components/ai-elements/artifacts/image.js.map +1 -1
  35. package/dist/esm/components/ai-elements/artifacts/unified-diff.utils.d.ts +68 -0
  36. package/dist/esm/components/ai-elements/artifacts/unified-diff.utils.d.ts.map +1 -0
  37. package/dist/esm/components/ai-elements/artifacts/unified-diff.utils.js +162 -0
  38. package/dist/esm/components/ai-elements/artifacts/unified-diff.utils.js.map +1 -0
  39. package/dist/esm/components/ai-elements/artifacts/web-preview.d.ts.map +1 -1
  40. package/dist/esm/components/ai-elements/artifacts/web-preview.js.map +1 -1
  41. package/dist/esm/components/ai-elements/chat/conversation.d.ts.map +1 -1
  42. package/dist/esm/components/ai-elements/chat/conversation.js.map +1 -1
  43. package/dist/esm/components/ai-elements/chat/message.d.ts.map +1 -1
  44. package/dist/esm/components/ai-elements/chat/message.js.map +1 -1
  45. package/dist/esm/components/ai-elements/chat/prompt-input.d.ts.map +1 -1
  46. package/dist/esm/components/ai-elements/chat/prompt-input.js.map +1 -1
  47. package/dist/esm/components/ai-elements/chat/sources.d.ts.map +1 -1
  48. package/dist/esm/components/ai-elements/chat/sources.js.map +1 -1
  49. package/dist/esm/components/ai-elements/chat/suggestion.d.ts.map +1 -1
  50. package/dist/esm/components/ai-elements/chat/suggestion.js.map +1 -1
  51. package/dist/esm/components/ai-elements/decision/approval.d.ts +17 -0
  52. package/dist/esm/components/ai-elements/decision/approval.d.ts.map +1 -1
  53. package/dist/esm/components/ai-elements/decision/approval.js.map +1 -1
  54. package/dist/esm/components/ai-elements/execution/confirmation.d.ts.map +1 -1
  55. package/dist/esm/components/ai-elements/execution/confirmation.js.map +1 -1
  56. package/dist/esm/components/ai-elements/execution/queue.d.ts.map +1 -1
  57. package/dist/esm/components/ai-elements/execution/queue.js.map +1 -1
  58. package/dist/esm/components/ai-elements/execution/task.d.ts.map +1 -1
  59. package/dist/esm/components/ai-elements/execution/task.js.map +1 -1
  60. package/dist/esm/components/ai-elements/execution/tool.d.ts.map +1 -1
  61. package/dist/esm/components/ai-elements/execution/tool.js.map +1 -1
  62. package/dist/esm/components/ai-elements/graph/canvas.d.ts.map +1 -1
  63. package/dist/esm/components/ai-elements/graph/canvas.js.map +1 -1
  64. package/dist/esm/components/ai-elements/graph/connection.d.ts.map +1 -1
  65. package/dist/esm/components/ai-elements/graph/connection.js.map +1 -1
  66. package/dist/esm/components/ai-elements/graph/controls.d.ts.map +1 -1
  67. package/dist/esm/components/ai-elements/graph/controls.js.map +1 -1
  68. package/dist/esm/components/ai-elements/graph/edge.d.ts.map +1 -1
  69. package/dist/esm/components/ai-elements/graph/edge.js.map +1 -1
  70. package/dist/esm/components/ai-elements/graph/node.d.ts.map +1 -1
  71. package/dist/esm/components/ai-elements/graph/node.js.map +1 -1
  72. package/dist/esm/components/ai-elements/graph/panel.d.ts.map +1 -1
  73. package/dist/esm/components/ai-elements/graph/panel.js.map +1 -1
  74. package/dist/esm/components/ai-elements/graph/toolbar.d.ts.map +1 -1
  75. package/dist/esm/components/ai-elements/graph/toolbar.js.map +1 -1
  76. package/dist/esm/components/ai-elements/meta/agent-wrappers.d.ts +0 -1
  77. package/dist/esm/components/ai-elements/meta/agent-wrappers.d.ts.map +1 -1
  78. package/dist/esm/components/ai-elements/meta/agent-wrappers.js.map +1 -1
  79. package/dist/esm/components/ai-elements/meta/context.d.ts.map +1 -1
  80. package/dist/esm/components/ai-elements/meta/context.js.map +1 -1
  81. package/dist/esm/components/ai-elements/meta/model-selector.d.ts.map +1 -1
  82. package/dist/esm/components/ai-elements/meta/model-selector.js.map +1 -1
  83. package/dist/esm/components/ai-elements/meta/open-in-chat.d.ts.map +1 -1
  84. package/dist/esm/components/ai-elements/meta/open-in-chat.js.map +1 -1
  85. package/dist/esm/components/ai-elements/shared/loader.d.ts.map +1 -1
  86. package/dist/esm/components/ai-elements/shared/loader.js.map +1 -1
  87. package/dist/esm/components/ai-elements/shared/shimmer.d.ts.map +1 -1
  88. package/dist/esm/components/ai-elements/shared/shimmer.js.map +1 -1
  89. package/dist/esm/components/ai-elements/stream/execution-stream.d.ts.map +1 -1
  90. package/dist/esm/components/ai-elements/stream/execution-stream.js.map +1 -1
  91. package/dist/esm/components/ai-elements/trace/chain-of-thought.d.ts +22 -0
  92. package/dist/esm/components/ai-elements/trace/chain-of-thought.d.ts.map +1 -1
  93. package/dist/esm/components/ai-elements/trace/chain-of-thought.js +29 -3
  94. package/dist/esm/components/ai-elements/trace/chain-of-thought.js.map +1 -1
  95. package/dist/esm/components/ai-elements/trace/checkpoint.d.ts.map +1 -1
  96. package/dist/esm/components/ai-elements/trace/checkpoint.js.map +1 -1
  97. package/dist/esm/components/ai-elements/trace/inline-citation.d.ts.map +1 -1
  98. package/dist/esm/components/ai-elements/trace/inline-citation.js.map +1 -1
  99. package/dist/esm/components/ai-elements/trace/plan.d.ts.map +1 -1
  100. package/dist/esm/components/ai-elements/trace/plan.js.map +1 -1
  101. package/dist/esm/components/ai-elements/trace/reasoning.d.ts.map +1 -1
  102. package/dist/esm/components/ai-elements/trace/reasoning.js.map +1 -1
  103. package/dist/esm/components/app/AppLayout_AuthenticatedRoute.d.ts +6 -0
  104. package/dist/esm/components/app/AppLayout_AuthenticatedRoute.d.ts.map +1 -1
  105. package/dist/esm/components/app/AppLayout_AuthenticatedRoute.js +84 -9
  106. package/dist/esm/components/app/AppLayout_AuthenticatedRoute.js.map +1 -1
  107. package/dist/esm/components/app/AppLayout_ConsentGate.d.ts +40 -0
  108. package/dist/esm/components/app/AppLayout_ConsentGate.d.ts.map +1 -0
  109. package/dist/esm/components/app/AppLayout_ConsentGate.js +17 -0
  110. package/dist/esm/components/app/AppLayout_ConsentGate.js.map +1 -0
  111. package/dist/esm/components/app/AppLayout_ConsentGate.labels.d.ts +3 -0
  112. package/dist/esm/components/app/AppLayout_ConsentGate.labels.d.ts.map +1 -0
  113. package/dist/esm/components/app/AppLayout_ConsentGate.labels.js +75 -0
  114. package/dist/esm/components/app/AppLayout_ConsentGate.labels.js.map +1 -0
  115. package/dist/esm/components/app/AppLayout_DocumentAcceptanceGate.d.ts +32 -0
  116. package/dist/esm/components/app/AppLayout_DocumentAcceptanceGate.d.ts.map +1 -0
  117. package/dist/esm/components/app/AppLayout_DocumentAcceptanceGate.js +13 -0
  118. package/dist/esm/components/app/AppLayout_DocumentAcceptanceGate.js.map +1 -0
  119. package/dist/esm/components/app/AppLayout_DocumentAcceptanceGate.labels.d.ts +3 -0
  120. package/dist/esm/components/app/AppLayout_DocumentAcceptanceGate.labels.d.ts.map +1 -0
  121. package/dist/esm/components/app/AppLayout_DocumentAcceptanceGate.labels.js +46 -0
  122. package/dist/esm/components/app/AppLayout_DocumentAcceptanceGate.labels.js.map +1 -0
  123. package/dist/esm/components/app/AppLayout_ErrorBoundary.d.ts.map +1 -1
  124. package/dist/esm/components/app/AppLayout_ErrorBoundary.js.map +1 -1
  125. package/dist/esm/components/app/AppLayout_ErrorBoundary.labels.d.ts.map +1 -1
  126. package/dist/esm/components/app/AppLayout_ErrorBoundary.labels.js.map +1 -1
  127. package/dist/esm/components/app/AppLayout_Home.d.ts.map +1 -1
  128. package/dist/esm/components/app/AppLayout_Home.js.map +1 -1
  129. package/dist/esm/components/app/AppLayout_Home.labels.d.ts.map +1 -1
  130. package/dist/esm/components/app/AppLayout_Home.labels.js.map +1 -1
  131. package/dist/esm/components/app/AppLayout_MainContainer.d.ts.map +1 -1
  132. package/dist/esm/components/app/AppLayout_MainContainer.js.map +1 -1
  133. package/dist/esm/components/app/AppLayout_NotificationCenter.d.ts.map +1 -1
  134. package/dist/esm/components/app/AppLayout_NotificationCenter.js.map +1 -1
  135. package/dist/esm/components/app/AppLayout_RouterErrorBoundary.d.ts.map +1 -1
  136. package/dist/esm/components/app/AppLayout_RouterErrorBoundary.js +27 -25
  137. package/dist/esm/components/app/AppLayout_RouterErrorBoundary.js.map +1 -1
  138. package/dist/esm/components/app/AppLayout_RouterErrorBoundary.labels.d.ts.map +1 -1
  139. package/dist/esm/components/app/AppLayout_RouterErrorBoundary.labels.js +4 -6
  140. package/dist/esm/components/app/AppLayout_RouterErrorBoundary.labels.js.map +1 -1
  141. package/dist/esm/components/app/AppPage_Home.d.ts.map +1 -1
  142. package/dist/esm/components/app/AppPage_Home.js.map +1 -1
  143. package/dist/esm/components/app/PublicLayout_MainContainer.d.ts +3 -0
  144. package/dist/esm/components/app/PublicLayout_MainContainer.d.ts.map +1 -1
  145. package/dist/esm/components/app/PublicLayout_MainContainer.js +24 -0
  146. package/dist/esm/components/app/PublicLayout_MainContainer.js.map +1 -1
  147. package/dist/esm/components/app/PublicLayout_StaticContentContainer.d.ts.map +1 -1
  148. package/dist/esm/components/app/PublicLayout_StaticContentContainer.js.map +1 -1
  149. package/dist/esm/components/app/PublicLayout_StaticContentContainer.labels.d.ts.map +1 -1
  150. package/dist/esm/components/app/PublicLayout_StaticContentContainer.labels.js.map +1 -1
  151. package/dist/esm/components/app/PublicLayout_Terms.d.ts +59 -0
  152. package/dist/esm/components/app/PublicLayout_Terms.d.ts.map +1 -0
  153. package/dist/esm/components/app/PublicLayout_Terms.js +8 -0
  154. package/dist/esm/components/app/PublicLayout_Terms.js.map +1 -0
  155. package/dist/esm/components/app/PublicLayout_Terms.labels.d.ts.map +1 -1
  156. package/dist/esm/components/app/PublicLayout_Terms.labels.js +16 -6
  157. package/dist/esm/components/app/PublicLayout_Terms.labels.js.map +1 -1
  158. package/dist/esm/components/auth/Auth_AuthCallback.d.ts +3 -1
  159. package/dist/esm/components/auth/Auth_AuthCallback.d.ts.map +1 -1
  160. package/dist/esm/components/auth/Auth_AuthCallback.js +21 -7
  161. package/dist/esm/components/auth/Auth_AuthCallback.js.map +1 -1
  162. package/dist/esm/components/auth/Auth_AuthCallback.labels.d.ts.map +1 -1
  163. package/dist/esm/components/auth/Auth_AuthCallback.labels.js +2 -0
  164. package/dist/esm/components/auth/Auth_AuthCallback.labels.js.map +1 -1
  165. package/dist/esm/components/auth/Auth_ConfirmEmail.d.ts.map +1 -1
  166. package/dist/esm/components/auth/Auth_ConfirmEmail.js +35 -17
  167. package/dist/esm/components/auth/Auth_ConfirmEmail.js.map +1 -1
  168. package/dist/esm/components/auth/Auth_ConfirmEmail.labels.d.ts.map +1 -1
  169. package/dist/esm/components/auth/Auth_ConfirmEmail.labels.js.map +1 -1
  170. package/dist/esm/components/auth/Auth_EnrollmentRequired.d.ts.map +1 -1
  171. package/dist/esm/components/auth/Auth_EnrollmentRequired.js +121 -11
  172. package/dist/esm/components/auth/Auth_EnrollmentRequired.js.map +1 -1
  173. package/dist/esm/components/auth/Auth_EnrollmentRequired.labels.d.ts.map +1 -1
  174. package/dist/esm/components/auth/Auth_EnrollmentRequired.labels.js +1 -0
  175. package/dist/esm/components/auth/Auth_EnrollmentRequired.labels.js.map +1 -1
  176. package/dist/esm/components/auth/Auth_Invitation.d.ts.map +1 -1
  177. package/dist/esm/components/auth/Auth_Invitation.js +91 -59
  178. package/dist/esm/components/auth/Auth_Invitation.js.map +1 -1
  179. package/dist/esm/components/auth/Auth_Invitation.labels.d.ts.map +1 -1
  180. package/dist/esm/components/auth/Auth_Invitation.labels.js +7 -0
  181. package/dist/esm/components/auth/Auth_Invitation.labels.js.map +1 -1
  182. package/dist/esm/components/auth/Auth_MagicLinkVerify.d.ts +8 -3
  183. package/dist/esm/components/auth/Auth_MagicLinkVerify.d.ts.map +1 -1
  184. package/dist/esm/components/auth/Auth_MagicLinkVerify.js +38 -21
  185. package/dist/esm/components/auth/Auth_MagicLinkVerify.js.map +1 -1
  186. package/dist/esm/components/auth/Auth_MagicLinkVerify.labels.d.ts.map +1 -1
  187. package/dist/esm/components/auth/Auth_MagicLinkVerify.labels.js.map +1 -1
  188. package/dist/esm/components/auth/Auth_Main.d.ts.map +1 -1
  189. package/dist/esm/components/auth/Auth_Main.js +224 -41
  190. package/dist/esm/components/auth/Auth_Main.js.map +1 -1
  191. package/dist/esm/components/auth/Auth_Main.labels.d.ts.map +1 -1
  192. package/dist/esm/components/auth/Auth_Main.labels.js +4 -0
  193. package/dist/esm/components/auth/Auth_Main.labels.js.map +1 -1
  194. package/dist/esm/components/auth/Auth_MfaChallenge.d.ts +3 -0
  195. package/dist/esm/components/auth/Auth_MfaChallenge.d.ts.map +1 -1
  196. package/dist/esm/components/auth/Auth_MfaChallenge.js +76 -19
  197. package/dist/esm/components/auth/Auth_MfaChallenge.js.map +1 -1
  198. package/dist/esm/components/auth/Auth_MfaChallenge.labels.d.ts.map +1 -1
  199. package/dist/esm/components/auth/Auth_MfaChallenge.labels.js.map +1 -1
  200. package/dist/esm/components/auth/Auth_OAuthConsent.d.ts.map +1 -1
  201. package/dist/esm/components/auth/Auth_OAuthConsent.js +2 -1
  202. package/dist/esm/components/auth/Auth_OAuthConsent.js.map +1 -1
  203. package/dist/esm/components/auth/Auth_OAuthConsent.labels.d.ts.map +1 -1
  204. package/dist/esm/components/auth/Auth_OAuthConsent.labels.js.map +1 -1
  205. package/dist/esm/components/auth/Auth_OAuthLoggedOut.d.ts.map +1 -1
  206. package/dist/esm/components/auth/Auth_OAuthLoggedOut.js.map +1 -1
  207. package/dist/esm/components/auth/Auth_OAuthLoggedOut.labels.d.ts.map +1 -1
  208. package/dist/esm/components/auth/Auth_OAuthLoggedOut.labels.js.map +1 -1
  209. package/dist/esm/components/auth/Auth_OAuthLogoutConfirm.d.ts.map +1 -1
  210. package/dist/esm/components/auth/Auth_OAuthLogoutConfirm.js.map +1 -1
  211. package/dist/esm/components/auth/Auth_OAuthLogoutConfirm.labels.d.ts.map +1 -1
  212. package/dist/esm/components/auth/Auth_OAuthLogoutConfirm.labels.js.map +1 -1
  213. package/dist/esm/components/auth/Auth_OneOffSession.d.ts.map +1 -1
  214. package/dist/esm/components/auth/Auth_OneOffSession.js +5 -3
  215. package/dist/esm/components/auth/Auth_OneOffSession.js.map +1 -1
  216. package/dist/esm/components/auth/Auth_OneOffSession.labels.d.ts.map +1 -1
  217. package/dist/esm/components/auth/Auth_OneOffSession.labels.js.map +1 -1
  218. package/dist/esm/components/auth/Auth_OrganizationOnboarding.d.ts +34 -0
  219. package/dist/esm/components/auth/Auth_OrganizationOnboarding.d.ts.map +1 -0
  220. package/dist/esm/components/auth/Auth_OrganizationOnboarding.js +158 -0
  221. package/dist/esm/components/auth/Auth_OrganizationOnboarding.js.map +1 -0
  222. package/dist/esm/components/auth/Auth_OrganizationOnboarding.labels.d.ts +3 -0
  223. package/dist/esm/components/auth/Auth_OrganizationOnboarding.labels.d.ts.map +1 -0
  224. package/dist/esm/components/auth/Auth_OrganizationOnboarding.labels.js +22 -0
  225. package/dist/esm/components/auth/Auth_OrganizationOnboarding.labels.js.map +1 -0
  226. package/dist/esm/components/auth/Auth_PasswordLost.d.ts.map +1 -1
  227. package/dist/esm/components/auth/Auth_PasswordLost.js +9 -7
  228. package/dist/esm/components/auth/Auth_PasswordLost.js.map +1 -1
  229. package/dist/esm/components/auth/Auth_PasswordLost.labels.d.ts.map +1 -1
  230. package/dist/esm/components/auth/Auth_PasswordLost.labels.js +5 -0
  231. package/dist/esm/components/auth/Auth_PasswordLost.labels.js.map +1 -1
  232. package/dist/esm/components/auth/Auth_Register.d.ts.map +1 -1
  233. package/dist/esm/components/auth/Auth_Register.js +403 -55
  234. package/dist/esm/components/auth/Auth_Register.js.map +1 -1
  235. package/dist/esm/components/auth/Auth_Register.labels.d.ts.map +1 -1
  236. package/dist/esm/components/auth/Auth_Register.labels.js +71 -2
  237. package/dist/esm/components/auth/Auth_Register.labels.js.map +1 -1
  238. package/dist/esm/components/auth/StepUpAuthDialog.d.ts +67 -2
  239. package/dist/esm/components/auth/StepUpAuthDialog.d.ts.map +1 -1
  240. package/dist/esm/components/auth/StepUpAuthDialog.js +131 -15
  241. package/dist/esm/components/auth/StepUpAuthDialog.js.map +1 -1
  242. package/dist/esm/components/auth/admin-config/AppPage_SecuritySettings.d.ts.map +1 -1
  243. package/dist/esm/components/auth/admin-config/AppPage_SecuritySettings.js +40 -58
  244. package/dist/esm/components/auth/admin-config/AppPage_SecuritySettings.js.map +1 -1
  245. package/dist/esm/components/auth/admin-config/AppPage_SecuritySettings.labels.d.ts.map +1 -1
  246. package/dist/esm/components/auth/admin-config/AppPage_SecuritySettings.labels.js +23 -1
  247. package/dist/esm/components/auth/admin-config/AppPage_SecuritySettings.labels.js.map +1 -1
  248. package/dist/esm/components/auth/admin-config/ResourceLayoutPreset_Create_SamlWizard.d.ts.map +1 -1
  249. package/dist/esm/components/auth/admin-config/ResourceLayoutPreset_Create_SamlWizard.js +6 -5
  250. package/dist/esm/components/auth/admin-config/ResourceLayoutPreset_Create_SamlWizard.js.map +1 -1
  251. package/dist/esm/components/auth/admin-config/ResourceLayoutPreset_Read_SsoSaml.d.ts.map +1 -1
  252. package/dist/esm/components/auth/admin-config/ResourceLayoutPreset_Read_SsoSaml.js.map +1 -1
  253. package/dist/esm/components/auth/admin-config/SsoConnectionSamlReadSection.d.ts.map +1 -1
  254. package/dist/esm/components/auth/admin-config/SsoConnectionSamlReadSection.js +5 -4
  255. package/dist/esm/components/auth/admin-config/SsoConnectionSamlReadSection.js.map +1 -1
  256. package/dist/esm/components/auth/enrollment/PasskeyEnrollmentMethod.d.ts.map +1 -1
  257. package/dist/esm/components/auth/enrollment/PasskeyEnrollmentMethod.js +6 -4
  258. package/dist/esm/components/auth/enrollment/PasskeyEnrollmentMethod.js.map +1 -1
  259. package/dist/esm/components/auth/enrollment/PhoneEnrollmentMethod.d.ts.map +1 -1
  260. package/dist/esm/components/auth/enrollment/PhoneEnrollmentMethod.js +7 -4
  261. package/dist/esm/components/auth/enrollment/PhoneEnrollmentMethod.js.map +1 -1
  262. package/dist/esm/components/auth/enrollment/TotpEnrollmentMethod.d.ts.map +1 -1
  263. package/dist/esm/components/auth/enrollment/TotpEnrollmentMethod.js +7 -4
  264. package/dist/esm/components/auth/enrollment/TotpEnrollmentMethod.js.map +1 -1
  265. package/dist/esm/components/auth/enrollment/enrollment-method-components.d.ts +10 -2
  266. package/dist/esm/components/auth/enrollment/enrollment-method-components.d.ts.map +1 -1
  267. package/dist/esm/components/auth/enrollment/enrollment-method-components.js.map +1 -1
  268. package/dist/esm/components/auth/methods/EmailOtpAuthMethod.d.ts.map +1 -1
  269. package/dist/esm/components/auth/methods/EmailOtpAuthMethod.js +10 -7
  270. package/dist/esm/components/auth/methods/EmailOtpAuthMethod.js.map +1 -1
  271. package/dist/esm/components/auth/methods/ExternalOAuth2AuthMethod.d.ts.map +1 -1
  272. package/dist/esm/components/auth/methods/ExternalOAuth2AuthMethod.js +5 -3
  273. package/dist/esm/components/auth/methods/ExternalOAuth2AuthMethod.js.map +1 -1
  274. package/dist/esm/components/auth/methods/MagicLinkAuthMethod.d.ts.map +1 -1
  275. package/dist/esm/components/auth/methods/MagicLinkAuthMethod.js +8 -5
  276. package/dist/esm/components/auth/methods/MagicLinkAuthMethod.js.map +1 -1
  277. package/dist/esm/components/auth/methods/OrgOidcAuthMethod.d.ts.map +1 -1
  278. package/dist/esm/components/auth/methods/OrgOidcAuthMethod.js +11 -8
  279. package/dist/esm/components/auth/methods/OrgOidcAuthMethod.js.map +1 -1
  280. package/dist/esm/components/auth/methods/OrgSamlAuthMethod.d.ts.map +1 -1
  281. package/dist/esm/components/auth/methods/OrgSamlAuthMethod.js +7 -6
  282. package/dist/esm/components/auth/methods/OrgSamlAuthMethod.js.map +1 -1
  283. package/dist/esm/components/auth/methods/PasskeyAuthMethod.d.ts.map +1 -1
  284. package/dist/esm/components/auth/methods/PasskeyAuthMethod.js +15 -17
  285. package/dist/esm/components/auth/methods/PasskeyAuthMethod.js.map +1 -1
  286. package/dist/esm/components/auth/methods/PasswordAuthMethod.d.ts.map +1 -1
  287. package/dist/esm/components/auth/methods/PasswordAuthMethod.js +4 -18
  288. package/dist/esm/components/auth/methods/PasswordAuthMethod.js.map +1 -1
  289. package/dist/esm/components/auth/methods/SmsOtpAuthMethod.d.ts.map +1 -1
  290. package/dist/esm/components/auth/methods/SmsOtpAuthMethod.js +10 -7
  291. package/dist/esm/components/auth/methods/SmsOtpAuthMethod.js.map +1 -1
  292. package/dist/esm/components/auth/methods/TotpAuthMethod.d.ts.map +1 -1
  293. package/dist/esm/components/auth/methods/TotpAuthMethod.js +5 -3
  294. package/dist/esm/components/auth/methods/TotpAuthMethod.js.map +1 -1
  295. package/dist/esm/components/auth/methods/auth-method-components.d.ts +15 -18
  296. package/dist/esm/components/auth/methods/auth-method-components.d.ts.map +1 -1
  297. package/dist/esm/components/auth/methods/auth-method-components.js +9 -26
  298. package/dist/esm/components/auth/methods/auth-method-components.js.map +1 -1
  299. package/dist/esm/components/auth/methods/auth-method-presentation.d.ts +105 -0
  300. package/dist/esm/components/auth/methods/auth-method-presentation.d.ts.map +1 -0
  301. package/dist/esm/components/auth/methods/auth-method-presentation.js +103 -0
  302. package/dist/esm/components/auth/methods/auth-method-presentation.js.map +1 -0
  303. package/dist/esm/components/auth/pages/AuthPage_AuthCallback.d.ts.map +1 -1
  304. package/dist/esm/components/auth/pages/AuthPage_AuthCallback.js.map +1 -1
  305. package/dist/esm/components/auth/pages/AuthPage_AuthExchange.d.ts.map +1 -1
  306. package/dist/esm/components/auth/pages/AuthPage_AuthExchange.js.map +1 -1
  307. package/dist/esm/components/auth/pages/AuthPage_ConfirmEmail.d.ts.map +1 -1
  308. package/dist/esm/components/auth/pages/AuthPage_ConfirmEmail.js.map +1 -1
  309. package/dist/esm/components/auth/pages/AuthPage_EnrollmentRequired.d.ts.map +1 -1
  310. package/dist/esm/components/auth/pages/AuthPage_EnrollmentRequired.js.map +1 -1
  311. package/dist/esm/components/auth/pages/AuthPage_Invitation.d.ts.map +1 -1
  312. package/dist/esm/components/auth/pages/AuthPage_Invitation.js.map +1 -1
  313. package/dist/esm/components/auth/pages/AuthPage_MagicLinkVerify.d.ts +2 -1
  314. package/dist/esm/components/auth/pages/AuthPage_MagicLinkVerify.d.ts.map +1 -1
  315. package/dist/esm/components/auth/pages/AuthPage_MagicLinkVerify.js +4 -2
  316. package/dist/esm/components/auth/pages/AuthPage_MagicLinkVerify.js.map +1 -1
  317. package/dist/esm/components/auth/pages/AuthPage_Main.d.ts.map +1 -1
  318. package/dist/esm/components/auth/pages/AuthPage_Main.js +3 -1
  319. package/dist/esm/components/auth/pages/AuthPage_Main.js.map +1 -1
  320. package/dist/esm/components/auth/pages/AuthPage_MfaChallenge.d.ts.map +1 -1
  321. package/dist/esm/components/auth/pages/AuthPage_MfaChallenge.js.map +1 -1
  322. package/dist/esm/components/auth/pages/AuthPage_OAuthConsent.d.ts.map +1 -1
  323. package/dist/esm/components/auth/pages/AuthPage_OAuthConsent.js.map +1 -1
  324. package/dist/esm/components/auth/pages/AuthPage_OAuthLoggedOut.d.ts.map +1 -1
  325. package/dist/esm/components/auth/pages/AuthPage_OAuthLoggedOut.js.map +1 -1
  326. package/dist/esm/components/auth/pages/AuthPage_OAuthLogoutConfirm.d.ts.map +1 -1
  327. package/dist/esm/components/auth/pages/AuthPage_OAuthLogoutConfirm.js.map +1 -1
  328. package/dist/esm/components/auth/pages/AuthPage_OneOffSession.d.ts.map +1 -1
  329. package/dist/esm/components/auth/pages/AuthPage_OneOffSession.js.map +1 -1
  330. package/dist/esm/components/auth/pages/AuthPage_OrganizationOnboarding.d.ts +11 -0
  331. package/dist/esm/components/auth/pages/AuthPage_OrganizationOnboarding.d.ts.map +1 -0
  332. package/dist/esm/components/auth/pages/AuthPage_OrganizationOnboarding.js +15 -0
  333. package/dist/esm/components/auth/pages/AuthPage_OrganizationOnboarding.js.map +1 -0
  334. package/dist/esm/components/auth/pages/AuthPage_PasswordLost.d.ts.map +1 -1
  335. package/dist/esm/components/auth/pages/AuthPage_PasswordLost.js.map +1 -1
  336. package/dist/esm/components/auth/pages/AuthPage_ReAuthenticationCallback.d.ts +3 -0
  337. package/dist/esm/components/auth/pages/AuthPage_ReAuthenticationCallback.d.ts.map +1 -0
  338. package/dist/esm/components/auth/pages/AuthPage_ReAuthenticationCallback.js +51 -0
  339. package/dist/esm/components/auth/pages/AuthPage_ReAuthenticationCallback.js.map +1 -0
  340. package/dist/esm/components/auth/pages/AuthPage_Register.d.ts.map +1 -1
  341. package/dist/esm/components/auth/pages/AuthPage_Register.js.map +1 -1
  342. package/dist/esm/components/auth/utils/AuthMethodChoiceList.d.ts +54 -0
  343. package/dist/esm/components/auth/utils/AuthMethodChoiceList.d.ts.map +1 -0
  344. package/dist/esm/components/auth/utils/AuthMethodChoiceList.js +53 -0
  345. package/dist/esm/components/auth/utils/AuthMethodChoiceList.js.map +1 -0
  346. package/dist/esm/components/auth/utils/AuthMethodIcon.d.ts +15 -0
  347. package/dist/esm/components/auth/utils/AuthMethodIcon.d.ts.map +1 -0
  348. package/dist/esm/components/auth/utils/AuthMethodIcon.js +16 -0
  349. package/dist/esm/components/auth/utils/AuthMethodIcon.js.map +1 -0
  350. package/dist/esm/components/auth/utils/AuthSecondaryLink.d.ts +24 -0
  351. package/dist/esm/components/auth/utils/AuthSecondaryLink.d.ts.map +1 -0
  352. package/dist/esm/components/auth/utils/AuthSecondaryLink.js +20 -0
  353. package/dist/esm/components/auth/utils/AuthSecondaryLink.js.map +1 -0
  354. package/dist/esm/components/auth/utils/AuthSingleFieldFormLayout.d.ts.map +1 -1
  355. package/dist/esm/components/auth/utils/AuthSingleFieldFormLayout.js.map +1 -1
  356. package/dist/esm/components/auth/utils/CredentialUsernameAutofillField.d.ts.map +1 -1
  357. package/dist/esm/components/auth/utils/CredentialUsernameAutofillField.js.map +1 -1
  358. package/dist/esm/components/auth/utils/LabeledDivider.d.ts.map +1 -1
  359. package/dist/esm/components/auth/utils/LabeledDivider.js.map +1 -1
  360. package/dist/esm/components/auth/utils/OAuthProvidersSection.d.ts +11 -1
  361. package/dist/esm/components/auth/utils/OAuthProvidersSection.d.ts.map +1 -1
  362. package/dist/esm/components/auth/utils/OAuthProvidersSection.js +5 -3
  363. package/dist/esm/components/auth/utils/OAuthProvidersSection.js.map +1 -1
  364. package/dist/esm/components/auth/utils/PasswordStrengthIndicator.d.ts +8 -1
  365. package/dist/esm/components/auth/utils/PasswordStrengthIndicator.d.ts.map +1 -1
  366. package/dist/esm/components/auth/utils/PasswordStrengthIndicator.js +15 -6
  367. package/dist/esm/components/auth/utils/PasswordStrengthIndicator.js.map +1 -1
  368. package/dist/esm/components/auth/utils/oauth-provider-display-label.frontend.utils.d.ts.map +1 -1
  369. package/dist/esm/components/auth/utils/oauth-provider-display-label.frontend.utils.js.map +1 -1
  370. package/dist/esm/components/auth/utils/resolvePasswordViolationsToLabels.d.ts.map +1 -1
  371. package/dist/esm/components/auth/utils/resolvePasswordViolationsToLabels.js.map +1 -1
  372. package/dist/esm/components/auth/utils/useMfaContinuationNavigation.d.ts +32 -0
  373. package/dist/esm/components/auth/utils/useMfaContinuationNavigation.d.ts.map +1 -0
  374. package/dist/esm/components/auth/utils/useMfaContinuationNavigation.js +44 -0
  375. package/dist/esm/components/auth/utils/useMfaContinuationNavigation.js.map +1 -0
  376. package/dist/esm/components/billing/billing-invoice-history.d.ts +1 -0
  377. package/dist/esm/components/billing/billing-invoice-history.d.ts.map +1 -1
  378. package/dist/esm/components/billing/billing-invoice-history.js +7 -3
  379. package/dist/esm/components/billing/billing-invoice-history.js.map +1 -1
  380. package/dist/esm/components/billing/billing-plan-change-preview.d.ts +17 -0
  381. package/dist/esm/components/billing/billing-plan-change-preview.d.ts.map +1 -0
  382. package/dist/esm/components/billing/billing-plan-change-preview.js +8 -0
  383. package/dist/esm/components/billing/billing-plan-change-preview.js.map +1 -0
  384. package/dist/esm/components/billing/billing-portal-link.d.ts +1 -0
  385. package/dist/esm/components/billing/billing-portal-link.d.ts.map +1 -1
  386. package/dist/esm/components/billing/billing-portal-link.js +6 -2
  387. package/dist/esm/components/billing/billing-portal-link.js.map +1 -1
  388. package/dist/esm/components/billing/billing-pricing-table.d.ts +4 -1
  389. package/dist/esm/components/billing/billing-pricing-table.d.ts.map +1 -1
  390. package/dist/esm/components/billing/billing-pricing-table.js +30 -8
  391. package/dist/esm/components/billing/billing-pricing-table.js.map +1 -1
  392. package/dist/esm/components/billing/billing-subscription-status.d.ts +1 -0
  393. package/dist/esm/components/billing/billing-subscription-status.d.ts.map +1 -1
  394. package/dist/esm/components/billing/billing-subscription-status.js +8 -4
  395. package/dist/esm/components/billing/billing-subscription-status.js.map +1 -1
  396. package/dist/esm/components/billing/billing-usage-dashboard.d.ts +2 -0
  397. package/dist/esm/components/billing/billing-usage-dashboard.d.ts.map +1 -1
  398. package/dist/esm/components/billing/billing-usage-dashboard.js +9 -4
  399. package/dist/esm/components/billing/billing-usage-dashboard.js.map +1 -1
  400. package/dist/esm/components/compliance/GovernedDocumentAcceptanceControl.d.ts +74 -0
  401. package/dist/esm/components/compliance/GovernedDocumentAcceptanceControl.d.ts.map +1 -0
  402. package/dist/esm/components/compliance/GovernedDocumentAcceptanceControl.js +197 -0
  403. package/dist/esm/components/compliance/GovernedDocumentAcceptanceControl.js.map +1 -0
  404. package/dist/esm/components/data-display/AutomaticDisplayer.d.ts +28 -2
  405. package/dist/esm/components/data-display/AutomaticDisplayer.d.ts.map +1 -1
  406. package/dist/esm/components/data-display/AutomaticDisplayer.js +18 -9
  407. package/dist/esm/components/data-display/AutomaticDisplayer.js.map +1 -1
  408. package/dist/esm/components/data-display/DisplayContextKindContext.d.ts +43 -0
  409. package/dist/esm/components/data-display/DisplayContextKindContext.d.ts.map +1 -1
  410. package/dist/esm/components/data-display/DisplayContextKindContext.js +45 -0
  411. package/dist/esm/components/data-display/DisplayContextKindContext.js.map +1 -1
  412. package/dist/esm/components/data-display/DisplayField.d.ts.map +1 -1
  413. package/dist/esm/components/data-display/DisplayField.js +92 -9
  414. package/dist/esm/components/data-display/DisplayField.js.map +1 -1
  415. package/dist/esm/components/data-display/DisplayFieldArray.d.ts.map +1 -1
  416. package/dist/esm/components/data-display/DisplayFieldArray.js.map +1 -1
  417. package/dist/esm/components/data-display/DisplayFieldEditable.d.ts.map +1 -1
  418. package/dist/esm/components/data-display/DisplayFieldEditable.js +8 -3
  419. package/dist/esm/components/data-display/DisplayFieldEditable.js.map +1 -1
  420. package/dist/esm/components/data-display/DisplayFieldEditableArray.d.ts.map +1 -1
  421. package/dist/esm/components/data-display/DisplayFieldEditableArray.js +7 -5
  422. package/dist/esm/components/data-display/DisplayFieldEditableArray.js.map +1 -1
  423. package/dist/esm/components/data-display/DisplayFieldReadOnly.d.ts.map +1 -1
  424. package/dist/esm/components/data-display/DisplayFieldReadOnly.js.map +1 -1
  425. package/dist/esm/components/data-display/DisplayFieldReadOnlyArraySection.d.ts.map +1 -1
  426. package/dist/esm/components/data-display/DisplayFieldReadOnlyArraySection.js.map +1 -1
  427. package/dist/esm/components/data-display/DisplayTemplateContext.d.ts +11 -0
  428. package/dist/esm/components/data-display/DisplayTemplateContext.d.ts.map +1 -1
  429. package/dist/esm/components/data-display/DisplayTemplateContext.js.map +1 -1
  430. package/dist/esm/components/data-display/DisplayValueDispatcher.d.ts +2 -2
  431. package/dist/esm/components/data-display/DisplayValueDispatcher.d.ts.map +1 -1
  432. package/dist/esm/components/data-display/DisplayValueDispatcher.js +162 -15
  433. package/dist/esm/components/data-display/DisplayValueDispatcher.js.map +1 -1
  434. package/dist/esm/components/data-display/ResourceAutomaticDisplayer.d.ts +4 -0
  435. package/dist/esm/components/data-display/ResourceAutomaticDisplayer.d.ts.map +1 -1
  436. package/dist/esm/components/data-display/ResourceAutomaticDisplayer.js +97 -14
  437. package/dist/esm/components/data-display/ResourceAutomaticDisplayer.js.map +1 -1
  438. package/dist/esm/components/data-display/ResourceSummaryDisplayer.d.ts.map +1 -1
  439. package/dist/esm/components/data-display/ResourceSummaryDisplayer.js +6 -1
  440. package/dist/esm/components/data-display/ResourceSummaryDisplayer.js.map +1 -1
  441. package/dist/esm/components/data-display/SummaryContext.d.ts.map +1 -1
  442. package/dist/esm/components/data-display/SummaryContext.js.map +1 -1
  443. package/dist/esm/components/data-display/automatic-displayer.utils.d.ts +19 -0
  444. package/dist/esm/components/data-display/automatic-displayer.utils.d.ts.map +1 -1
  445. package/dist/esm/components/data-display/automatic-displayer.utils.js.map +1 -1
  446. package/dist/esm/components/data-display/avatar.d.ts.map +1 -1
  447. package/dist/esm/components/data-display/avatar.js.map +1 -1
  448. package/dist/esm/components/data-display/badge-tone.d.ts +37 -0
  449. package/dist/esm/components/data-display/badge-tone.d.ts.map +1 -0
  450. package/dist/esm/components/data-display/badge-tone.js +54 -0
  451. package/dist/esm/components/data-display/badge-tone.js.map +1 -0
  452. package/dist/esm/components/data-display/badge.d.ts.map +1 -1
  453. package/dist/esm/components/data-display/badge.js.map +1 -1
  454. package/dist/esm/components/data-display/chart-echarts.d.ts.map +1 -1
  455. package/dist/esm/components/data-display/chart-echarts.js.map +1 -1
  456. package/dist/esm/components/data-display/chromes/DisplayChromeContext.d.ts.map +1 -1
  457. package/dist/esm/components/data-display/chromes/DisplayChromeContext.js.map +1 -1
  458. package/dist/esm/components/data-display/chromes/DisplayFieldChrome.d.ts +23 -6
  459. package/dist/esm/components/data-display/chromes/DisplayFieldChrome.d.ts.map +1 -1
  460. package/dist/esm/components/data-display/chromes/DisplayFieldChrome.js +17 -12
  461. package/dist/esm/components/data-display/chromes/DisplayFieldChrome.js.map +1 -1
  462. package/dist/esm/components/data-display/description-list.d.ts +5 -1
  463. package/dist/esm/components/data-display/description-list.d.ts.map +1 -1
  464. package/dist/esm/components/data-display/description-list.js.map +1 -1
  465. package/dist/esm/components/data-display/display-field-resolution.utils.d.ts +14 -7
  466. package/dist/esm/components/data-display/display-field-resolution.utils.d.ts.map +1 -1
  467. package/dist/esm/components/data-display/display-field-resolution.utils.js +17 -36
  468. package/dist/esm/components/data-display/display-field-resolution.utils.js.map +1 -1
  469. package/dist/esm/components/data-display/display-field-resolved-props.d.ts.map +1 -1
  470. package/dist/esm/components/data-display/display-field-resolved-props.js.map +1 -1
  471. package/dist/esm/components/data-display/display-resource-link-trail.d.ts.map +1 -1
  472. package/dist/esm/components/data-display/display-resource-link-trail.js.map +1 -1
  473. package/dist/esm/components/data-display/duration.d.ts +46 -0
  474. package/dist/esm/components/data-display/duration.d.ts.map +1 -0
  475. package/dist/esm/components/data-display/duration.js +9 -0
  476. package/dist/esm/components/data-display/duration.js.map +1 -0
  477. package/dist/esm/components/data-display/formatters/display-field-address.d.ts +22 -0
  478. package/dist/esm/components/data-display/formatters/display-field-address.d.ts.map +1 -0
  479. package/dist/esm/components/data-display/formatters/display-field-address.js +8 -0
  480. package/dist/esm/components/data-display/formatters/display-field-address.js.map +1 -0
  481. package/dist/esm/components/data-display/formatters/display-field-bigdecimal.d.ts.map +1 -1
  482. package/dist/esm/components/data-display/formatters/display-field-bigdecimal.js.map +1 -1
  483. package/dist/esm/components/data-display/formatters/display-field-boolean.d.ts.map +1 -1
  484. package/dist/esm/components/data-display/formatters/display-field-boolean.js.map +1 -1
  485. package/dist/esm/components/data-display/formatters/display-field-code.d.ts.map +1 -1
  486. package/dist/esm/components/data-display/formatters/display-field-code.js.map +1 -1
  487. package/dist/esm/components/data-display/formatters/display-field-date.d.ts.map +1 -1
  488. package/dist/esm/components/data-display/formatters/display-field-date.js.map +1 -1
  489. package/dist/esm/components/data-display/formatters/display-field-datetime.d.ts.map +1 -1
  490. package/dist/esm/components/data-display/formatters/display-field-datetime.js.map +1 -1
  491. package/dist/esm/components/data-display/formatters/display-field-duration.d.ts.map +1 -1
  492. package/dist/esm/components/data-display/formatters/display-field-duration.js.map +1 -1
  493. package/dist/esm/components/data-display/formatters/display-field-enum.d.ts.map +1 -1
  494. package/dist/esm/components/data-display/formatters/display-field-enum.js.map +1 -1
  495. package/dist/esm/components/data-display/formatters/display-field-file-audio.d.ts.map +1 -1
  496. package/dist/esm/components/data-display/formatters/display-field-file-audio.js.map +1 -1
  497. package/dist/esm/components/data-display/formatters/display-field-file-document.d.ts.map +1 -1
  498. package/dist/esm/components/data-display/formatters/display-field-file-document.js.map +1 -1
  499. package/dist/esm/components/data-display/formatters/display-field-file-gallery.d.ts.map +1 -1
  500. package/dist/esm/components/data-display/formatters/display-field-file-gallery.js.map +1 -1
  501. package/dist/esm/components/data-display/formatters/display-field-file-image.d.ts.map +1 -1
  502. package/dist/esm/components/data-display/formatters/display-field-file-image.js.map +1 -1
  503. package/dist/esm/components/data-display/formatters/display-field-file-video.d.ts.map +1 -1
  504. package/dist/esm/components/data-display/formatters/display-field-file-video.js.map +1 -1
  505. package/dist/esm/components/data-display/formatters/display-field-file.d.ts.map +1 -1
  506. package/dist/esm/components/data-display/formatters/display-field-file.js.map +1 -1
  507. package/dist/esm/components/data-display/formatters/display-field-json.d.ts.map +1 -1
  508. package/dist/esm/components/data-display/formatters/display-field-json.js.map +1 -1
  509. package/dist/esm/components/data-display/formatters/display-field-money.d.ts.map +1 -1
  510. package/dist/esm/components/data-display/formatters/display-field-money.js.map +1 -1
  511. package/dist/esm/components/data-display/formatters/display-field-number.d.ts.map +1 -1
  512. package/dist/esm/components/data-display/formatters/display-field-number.js.map +1 -1
  513. package/dist/esm/components/data-display/formatters/display-field-phone.d.ts.map +1 -1
  514. package/dist/esm/components/data-display/formatters/display-field-phone.js.map +1 -1
  515. package/dist/esm/components/data-display/formatters/display-field-range-bigdecimal.d.ts.map +1 -1
  516. package/dist/esm/components/data-display/formatters/display-field-range-bigdecimal.js.map +1 -1
  517. package/dist/esm/components/data-display/formatters/display-field-range-date.d.ts.map +1 -1
  518. package/dist/esm/components/data-display/formatters/display-field-range-date.js.map +1 -1
  519. package/dist/esm/components/data-display/formatters/display-field-range-datetime.d.ts.map +1 -1
  520. package/dist/esm/components/data-display/formatters/display-field-range-datetime.js.map +1 -1
  521. package/dist/esm/components/data-display/formatters/display-field-range-money.d.ts.map +1 -1
  522. package/dist/esm/components/data-display/formatters/display-field-range-money.js.map +1 -1
  523. package/dist/esm/components/data-display/formatters/display-field-range-number.d.ts.map +1 -1
  524. package/dist/esm/components/data-display/formatters/display-field-range-number.js.map +1 -1
  525. package/dist/esm/components/data-display/formatters/display-field-range-time.d.ts.map +1 -1
  526. package/dist/esm/components/data-display/formatters/display-field-range-time.js.map +1 -1
  527. package/dist/esm/components/data-display/formatters/display-field-string.d.ts.map +1 -1
  528. package/dist/esm/components/data-display/formatters/display-field-string.js.map +1 -1
  529. package/dist/esm/components/data-display/formatters/display-field-time.d.ts.map +1 -1
  530. package/dist/esm/components/data-display/formatters/display-field-time.js.map +1 -1
  531. package/dist/esm/components/data-display/identifier.d.ts +54 -0
  532. package/dist/esm/components/data-display/identifier.d.ts.map +1 -0
  533. package/dist/esm/components/data-display/identifier.js +9 -0
  534. package/dist/esm/components/data-display/identifier.js.map +1 -0
  535. package/dist/esm/components/data-display/kbd.d.ts +32 -0
  536. package/dist/esm/components/data-display/kbd.d.ts.map +1 -0
  537. package/dist/esm/components/data-display/kbd.js +9 -0
  538. package/dist/esm/components/data-display/kbd.js.map +1 -0
  539. package/dist/esm/components/data-display/notification-indicator.d.ts.map +1 -1
  540. package/dist/esm/components/data-display/notification-indicator.js.map +1 -1
  541. package/dist/esm/components/data-display/timeline.d.ts +89 -0
  542. package/dist/esm/components/data-display/timeline.d.ts.map +1 -0
  543. package/dist/esm/components/data-display/timeline.js +31 -0
  544. package/dist/esm/components/data-display/timeline.js.map +1 -0
  545. package/dist/esm/components/data-display/useFileActivation.d.ts.map +1 -1
  546. package/dist/esm/components/data-display/useFileActivation.js.map +1 -1
  547. package/dist/esm/components/feedback/celebration-overlay.d.ts +20 -1
  548. package/dist/esm/components/feedback/celebration-overlay.d.ts.map +1 -1
  549. package/dist/esm/components/feedback/celebration-overlay.js +35 -15
  550. package/dist/esm/components/feedback/celebration-overlay.js.map +1 -1
  551. package/dist/esm/components/feedback/danger-zone.d.ts.map +1 -1
  552. package/dist/esm/components/feedback/danger-zone.js.map +1 -1
  553. package/dist/esm/components/feedback/empty-display-policy.utils.d.ts.map +1 -1
  554. package/dist/esm/components/feedback/empty-display-policy.utils.js.map +1 -1
  555. package/dist/esm/components/feedback/empty-state.d.ts.map +1 -1
  556. package/dist/esm/components/feedback/empty-state.js.map +1 -1
  557. package/dist/esm/components/feedback/error-display.d.ts.map +1 -1
  558. package/dist/esm/components/feedback/error-display.js.map +1 -1
  559. package/dist/esm/components/feedback/features/feature-limit-indicator.d.ts.map +1 -1
  560. package/dist/esm/components/feedback/features/feature-limit-indicator.js.map +1 -1
  561. package/dist/esm/components/feedback/features/feature-lock-badge.d.ts.map +1 -1
  562. package/dist/esm/components/feedback/features/feature-lock-badge.js.map +1 -1
  563. package/dist/esm/components/feedback/features/feature-unavailable-dialog.d.ts.map +1 -1
  564. package/dist/esm/components/feedback/features/feature-unavailable-dialog.js.map +1 -1
  565. package/dist/esm/components/feedback/features/feature-unavailable-prompt.d.ts.map +1 -1
  566. package/dist/esm/components/feedback/features/feature-unavailable-prompt.js.map +1 -1
  567. package/dist/esm/components/feedback/lazy-door-error-boundary.d.ts +57 -0
  568. package/dist/esm/components/feedback/lazy-door-error-boundary.d.ts.map +1 -0
  569. package/dist/esm/components/feedback/lazy-door-error-boundary.js +66 -0
  570. package/dist/esm/components/feedback/lazy-door-error-boundary.js.map +1 -0
  571. package/dist/esm/components/feedback/loading-overlay.d.ts.map +1 -1
  572. package/dist/esm/components/feedback/loading-overlay.js.map +1 -1
  573. package/dist/esm/components/feedback/loading-spinner.d.ts.map +1 -1
  574. package/dist/esm/components/feedback/loading-spinner.js.map +1 -1
  575. package/dist/esm/components/feedback/notification-center.d.ts +8 -8
  576. package/dist/esm/components/feedback/notification-center.d.ts.map +1 -1
  577. package/dist/esm/components/feedback/notification-center.js +7 -6
  578. package/dist/esm/components/feedback/notification-center.js.map +1 -1
  579. package/dist/esm/components/feedback/operations-confirm-critical.d.ts +13 -0
  580. package/dist/esm/components/feedback/operations-confirm-critical.d.ts.map +1 -1
  581. package/dist/esm/components/feedback/operations-confirm-critical.js.map +1 -1
  582. package/dist/esm/components/feedback/progress.d.ts.map +1 -1
  583. package/dist/esm/components/feedback/progress.js.map +1 -1
  584. package/dist/esm/components/feedback/resource-empty-state.d.ts.map +1 -1
  585. package/dist/esm/components/feedback/resource-empty-state.js.map +1 -1
  586. package/dist/esm/components/feedback/skeleton-text.d.ts.map +1 -1
  587. package/dist/esm/components/feedback/skeleton-text.js.map +1 -1
  588. package/dist/esm/components/feedback/skeleton.d.ts.map +1 -1
  589. package/dist/esm/components/feedback/skeleton.js.map +1 -1
  590. package/dist/esm/components/feedback/toast.d.ts.map +1 -1
  591. package/dist/esm/components/feedback/toast.js.map +1 -1
  592. package/dist/esm/components/files/Files_UploadGrantDrop.d.ts.map +1 -1
  593. package/dist/esm/components/files/Files_UploadGrantDrop.js +13 -11
  594. package/dist/esm/components/files/Files_UploadGrantDrop.js.map +1 -1
  595. package/dist/esm/components/files/Files_UploadGrantDrop.labels.d.ts.map +1 -1
  596. package/dist/esm/components/files/Files_UploadGrantDrop.labels.js.map +1 -1
  597. package/dist/esm/components/files/pages/FilesPage_UploadGrant.d.ts.map +1 -1
  598. package/dist/esm/components/files/pages/FilesPage_UploadGrant.js.map +1 -1
  599. package/dist/esm/components/flows-actors/actor.d.ts.map +1 -1
  600. package/dist/esm/components/flows-actors/actor.js +6 -2
  601. package/dist/esm/components/flows-actors/actor.js.map +1 -1
  602. package/dist/esm/components/flows-actors/actor.labels.d.ts.map +1 -1
  603. package/dist/esm/components/flows-actors/actor.labels.js.map +1 -1
  604. package/dist/esm/components/flows-actors/agent-config.d.ts.map +1 -1
  605. package/dist/esm/components/flows-actors/agent-config.js +0 -1
  606. package/dist/esm/components/flows-actors/agent-config.js.map +1 -1
  607. package/dist/esm/components/flows-actors/agent-config.labels.d.ts.map +1 -1
  608. package/dist/esm/components/flows-actors/agent-config.labels.js +5 -4
  609. package/dist/esm/components/flows-actors/agent-config.labels.js.map +1 -1
  610. package/dist/esm/components/flows-actors/approval-modification-refusal.utils.d.ts +14 -0
  611. package/dist/esm/components/flows-actors/approval-modification-refusal.utils.d.ts.map +1 -0
  612. package/dist/esm/components/flows-actors/approval-modification-refusal.utils.js +30 -0
  613. package/dist/esm/components/flows-actors/approval-modification-refusal.utils.js.map +1 -0
  614. package/dist/esm/components/flows-actors/approval.d.ts.map +1 -1
  615. package/dist/esm/components/flows-actors/approval.js +63 -7
  616. package/dist/esm/components/flows-actors/approval.js.map +1 -1
  617. package/dist/esm/components/flows-actors/approval.labels.d.ts.map +1 -1
  618. package/dist/esm/components/flows-actors/approval.labels.js +12 -0
  619. package/dist/esm/components/flows-actors/approval.labels.js.map +1 -1
  620. package/dist/esm/components/flows-actors/artifact-browser.d.ts.map +1 -1
  621. package/dist/esm/components/flows-actors/artifact-browser.js.map +1 -1
  622. package/dist/esm/components/flows-actors/artifact-browser.labels.d.ts.map +1 -1
  623. package/dist/esm/components/flows-actors/artifact-browser.labels.js.map +1 -1
  624. package/dist/esm/components/flows-actors/execution-plan.d.ts.map +1 -1
  625. package/dist/esm/components/flows-actors/execution-plan.js.map +1 -1
  626. package/dist/esm/components/flows-actors/execution-plan.labels.d.ts.map +1 -1
  627. package/dist/esm/components/flows-actors/execution-plan.labels.js.map +1 -1
  628. package/dist/esm/components/flows-actors/flow-execution.d.ts.map +1 -1
  629. package/dist/esm/components/flows-actors/flow-execution.js +8 -10
  630. package/dist/esm/components/flows-actors/flow-execution.js.map +1 -1
  631. package/dist/esm/components/flows-actors/flow-execution.labels.d.ts.map +1 -1
  632. package/dist/esm/components/flows-actors/flow-execution.labels.js.map +1 -1
  633. package/dist/esm/components/flows-actors/flow-node-badges.d.ts +3 -0
  634. package/dist/esm/components/flows-actors/flow-node-badges.d.ts.map +1 -1
  635. package/dist/esm/components/flows-actors/flow-node-badges.js +37 -10
  636. package/dist/esm/components/flows-actors/flow-node-badges.js.map +1 -1
  637. package/dist/esm/components/flows-actors/flow-node.d.ts.map +1 -1
  638. package/dist/esm/components/flows-actors/flow-node.js.map +1 -1
  639. package/dist/esm/components/flows-actors/flow-node.labels.d.ts.map +1 -1
  640. package/dist/esm/components/flows-actors/flow-node.labels.js.map +1 -1
  641. package/dist/esm/components/flows-actors/flows-actors-graph-runtime.d.ts.map +1 -1
  642. package/dist/esm/components/flows-actors/flows-actors-graph-runtime.js.map +1 -1
  643. package/dist/esm/components/flows-actors/flows-actors-graph.lazy.d.ts.map +1 -1
  644. package/dist/esm/components/flows-actors/flows-actors-graph.lazy.js +13 -12
  645. package/dist/esm/components/flows-actors/flows-actors-graph.lazy.js.map +1 -1
  646. package/dist/esm/components/flows-actors/flows-actors-ui.utils.d.ts.map +1 -1
  647. package/dist/esm/components/flows-actors/flows-actors-ui.utils.js.map +1 -1
  648. package/dist/esm/components/flows-actors/system-catalog.d.ts.map +1 -1
  649. package/dist/esm/components/flows-actors/system-catalog.js +3 -3
  650. package/dist/esm/components/flows-actors/system-catalog.js.map +1 -1
  651. package/dist/esm/components/flows-actors/system-catalog.labels.d.ts.map +1 -1
  652. package/dist/esm/components/flows-actors/system-catalog.labels.js +0 -1
  653. package/dist/esm/components/flows-actors/system-catalog.labels.js.map +1 -1
  654. package/dist/esm/components/flows-actors/task-detail.d.ts.map +1 -1
  655. package/dist/esm/components/flows-actors/task-detail.js +4 -2
  656. package/dist/esm/components/flows-actors/task-detail.js.map +1 -1
  657. package/dist/esm/components/flows-actors/task-detail.labels.d.ts.map +1 -1
  658. package/dist/esm/components/flows-actors/task-detail.labels.js.map +1 -1
  659. package/dist/esm/components/flows-actors/task-memory.d.ts.map +1 -1
  660. package/dist/esm/components/flows-actors/task-memory.js.map +1 -1
  661. package/dist/esm/components/flows-actors/task-memory.labels.d.ts.map +1 -1
  662. package/dist/esm/components/flows-actors/task-memory.labels.js.map +1 -1
  663. package/dist/esm/components/form/Form.d.ts +5 -4
  664. package/dist/esm/components/form/Form.d.ts.map +1 -1
  665. package/dist/esm/components/form/Form.js +12 -9
  666. package/dist/esm/components/form/Form.js.map +1 -1
  667. package/dist/esm/components/form/automated/AutomatedArrayField.d.ts.map +1 -1
  668. package/dist/esm/components/form/automated/AutomatedArrayField.js +44 -34
  669. package/dist/esm/components/form/automated/AutomatedArrayField.js.map +1 -1
  670. package/dist/esm/components/form/automated/AutomatedForm.d.ts.map +1 -1
  671. package/dist/esm/components/form/automated/AutomatedForm.js.map +1 -1
  672. package/dist/esm/components/form/automated/AutosaveContext.d.ts.map +1 -1
  673. package/dist/esm/components/form/automated/AutosaveContext.js +4 -2
  674. package/dist/esm/components/form/automated/AutosaveContext.js.map +1 -1
  675. package/dist/esm/components/form/automated/FormField.d.ts +12 -1
  676. package/dist/esm/components/form/automated/FormField.d.ts.map +1 -1
  677. package/dist/esm/components/form/automated/FormField.js +126 -30
  678. package/dist/esm/components/form/automated/FormField.js.map +1 -1
  679. package/dist/esm/components/form/automated/FormFieldArray.d.ts.map +1 -1
  680. package/dist/esm/components/form/automated/FormFieldArray.js.map +1 -1
  681. package/dist/esm/components/form/automated/FormFieldComposite.d.ts.map +1 -1
  682. package/dist/esm/components/form/automated/FormFieldComposite.js.map +1 -1
  683. package/dist/esm/components/form/automated/FormFieldRecord.d.ts.map +1 -1
  684. package/dist/esm/components/form/automated/FormFieldRecord.js.map +1 -1
  685. package/dist/esm/components/form/automated/FormTemplateContext.d.ts.map +1 -1
  686. package/dist/esm/components/form/automated/FormTemplateContext.js.map +1 -1
  687. package/dist/esm/components/form/automated/GeneratedAssociationRelationshipField.d.ts.map +1 -1
  688. package/dist/esm/components/form/automated/GeneratedAssociationRelationshipField.js.map +1 -1
  689. package/dist/esm/components/form/automated/GeneratedReferenceRelationshipField.d.ts.map +1 -1
  690. package/dist/esm/components/form/automated/GeneratedReferenceRelationshipField.js.map +1 -1
  691. package/dist/esm/components/form/automated/ResourceAutomatedForm.d.ts.map +1 -1
  692. package/dist/esm/components/form/automated/ResourceAutomatedForm.js +140 -40
  693. package/dist/esm/components/form/automated/ResourceAutomatedForm.js.map +1 -1
  694. package/dist/esm/components/form/automated/ResourceFormActionsContext.d.ts.map +1 -1
  695. package/dist/esm/components/form/automated/ResourceFormActionsContext.js.map +1 -1
  696. package/dist/esm/components/form/automated/automated-form-submit.utils.d.ts +20 -0
  697. package/dist/esm/components/form/automated/automated-form-submit.utils.d.ts.map +1 -1
  698. package/dist/esm/components/form/automated/automated-form-submit.utils.js +46 -0
  699. package/dist/esm/components/form/automated/automated-form-submit.utils.js.map +1 -1
  700. package/dist/esm/components/form/automated/autosave-derivation.frontend.utils.d.ts.map +1 -1
  701. package/dist/esm/components/form/automated/autosave-derivation.frontend.utils.js.map +1 -1
  702. package/dist/esm/components/form/automated/autosave-indicator.d.ts.map +1 -1
  703. package/dist/esm/components/form/automated/autosave-indicator.js.map +1 -1
  704. package/dist/esm/components/form/automated/autosave-indicator.utils.d.ts.map +1 -1
  705. package/dist/esm/components/form/automated/autosave-indicator.utils.js.map +1 -1
  706. package/dist/esm/components/form/automated/create-form-default-values.utils.d.ts.map +1 -1
  707. package/dist/esm/components/form/automated/create-form-default-values.utils.js.map +1 -1
  708. package/dist/esm/components/form/automated/field-clearing-rule.frontend.utils.d.ts +42 -0
  709. package/dist/esm/components/form/automated/field-clearing-rule.frontend.utils.d.ts.map +1 -0
  710. package/dist/esm/components/form/automated/field-clearing-rule.frontend.utils.js +47 -0
  711. package/dist/esm/components/form/automated/field-clearing-rule.frontend.utils.js.map +1 -0
  712. package/dist/esm/components/form/automated/form-field-autocomplete.frontend.utils.d.ts.map +1 -1
  713. package/dist/esm/components/form/automated/form-field-autocomplete.frontend.utils.js.map +1 -1
  714. package/dist/esm/components/form/automated/generated-relationship-field.helpers.d.ts.map +1 -1
  715. package/dist/esm/components/form/automated/generated-relationship-field.helpers.js.map +1 -1
  716. package/dist/esm/components/form/automated/generated-relationship-field.hooks.d.ts +1 -1
  717. package/dist/esm/components/form/automated/generated-relationship-field.hooks.d.ts.map +1 -1
  718. package/dist/esm/components/form/automated/generated-relationship-field.hooks.js.map +1 -1
  719. package/dist/esm/components/form/automated/generated-relationship-field.shared.d.ts.map +1 -1
  720. package/dist/esm/components/form/automated/generated-relationship-field.shared.js.map +1 -1
  721. package/dist/esm/components/form/automated/generated-relationship-field.utils.d.ts.map +1 -1
  722. package/dist/esm/components/form/automated/generated-relationship-field.utils.js.map +1 -1
  723. package/dist/esm/components/form/automated/useArrayItemAutosaveField.d.ts.map +1 -1
  724. package/dist/esm/components/form/automated/useArrayItemAutosaveField.js.map +1 -1
  725. package/dist/esm/components/form/chromes/FormChromeContext.d.ts.map +1 -1
  726. package/dist/esm/components/form/chromes/FormChromeContext.js.map +1 -1
  727. package/dist/esm/components/form/chromes/FormFieldChrome.d.ts.map +1 -1
  728. package/dist/esm/components/form/chromes/FormFieldChrome.js +32 -20
  729. package/dist/esm/components/form/chromes/FormFieldChrome.js.map +1 -1
  730. package/dist/esm/components/form/chromes/field.d.ts.map +1 -1
  731. package/dist/esm/components/form/chromes/field.js.map +1 -1
  732. package/dist/esm/components/form/chromes/form-primitives.d.ts.map +1 -1
  733. package/dist/esm/components/form/chromes/form-primitives.js.map +1 -1
  734. package/dist/esm/components/form/combobox.d.ts.map +1 -1
  735. package/dist/esm/components/form/combobox.js.map +1 -1
  736. package/dist/esm/components/form/controls/boolean/checkbox.d.ts +10 -0
  737. package/dist/esm/components/form/controls/boolean/checkbox.d.ts.map +1 -1
  738. package/dist/esm/components/form/controls/boolean/checkbox.js.map +1 -1
  739. package/dist/esm/components/form/controls/boolean/switch.d.ts.map +1 -1
  740. package/dist/esm/components/form/controls/boolean/switch.js.map +1 -1
  741. package/dist/esm/components/form/controls/boolean/toggle-group-boolean.d.ts.map +1 -1
  742. package/dist/esm/components/form/controls/boolean/toggle-group-boolean.js.map +1 -1
  743. package/dist/esm/components/form/controls/boolean/toggle.d.ts.map +1 -1
  744. package/dist/esm/components/form/controls/boolean/toggle.js.map +1 -1
  745. package/dist/esm/components/form/controls/date-time/calendar.d.ts.map +1 -1
  746. package/dist/esm/components/form/controls/date-time/calendar.js.map +1 -1
  747. package/dist/esm/components/form/controls/date-time/date-range-picker.d.ts.map +1 -1
  748. package/dist/esm/components/form/controls/date-time/date-range-picker.js.map +1 -1
  749. package/dist/esm/components/form/controls/date-time/datepicker.d.ts.map +1 -1
  750. package/dist/esm/components/form/controls/date-time/datepicker.js.map +1 -1
  751. package/dist/esm/components/form/controls/date-time/datetime-picker.d.ts.map +1 -1
  752. package/dist/esm/components/form/controls/date-time/datetime-picker.js.map +1 -1
  753. package/dist/esm/components/form/controls/date-time/datetime-range-picker.d.ts.map +1 -1
  754. package/dist/esm/components/form/controls/date-time/datetime-range-picker.js.map +1 -1
  755. package/dist/esm/components/form/controls/date-time/time-picker.d.ts.map +1 -1
  756. package/dist/esm/components/form/controls/date-time/time-picker.js.map +1 -1
  757. package/dist/esm/components/form/controls/date-time/time-range-picker.d.ts.map +1 -1
  758. package/dist/esm/components/form/controls/date-time/time-range-picker.js.map +1 -1
  759. package/dist/esm/components/form/controls/enum/radio.d.ts.map +1 -1
  760. package/dist/esm/components/form/controls/enum/radio.js.map +1 -1
  761. package/dist/esm/components/form/controls/enum/select-multiple.d.ts.map +1 -1
  762. package/dist/esm/components/form/controls/enum/select-multiple.js.map +1 -1
  763. package/dist/esm/components/form/controls/enum/select.d.ts.map +1 -1
  764. package/dist/esm/components/form/controls/enum/select.js.map +1 -1
  765. package/dist/esm/components/form/controls/enum/toggle-group.d.ts +23 -0
  766. package/dist/esm/components/form/controls/enum/toggle-group.d.ts.map +1 -1
  767. package/dist/esm/components/form/controls/enum/toggle-group.js +20 -0
  768. package/dist/esm/components/form/controls/enum/toggle-group.js.map +1 -1
  769. package/dist/esm/components/form/controls/file/file-readiness.frontend.utils.d.ts +19 -0
  770. package/dist/esm/components/form/controls/file/file-readiness.frontend.utils.d.ts.map +1 -0
  771. package/dist/esm/components/form/controls/file/file-readiness.frontend.utils.js +50 -0
  772. package/dist/esm/components/form/controls/file/file-readiness.frontend.utils.js.map +1 -0
  773. package/dist/esm/components/form/controls/file/file-upload.d.ts.map +1 -1
  774. package/dist/esm/components/form/controls/file/file-upload.js.map +1 -1
  775. package/dist/esm/components/form/controls/file/image-crop.d.ts.map +1 -1
  776. package/dist/esm/components/form/controls/file/image-crop.frontend.utils.d.ts.map +1 -1
  777. package/dist/esm/components/form/controls/file/image-crop.frontend.utils.js.map +1 -1
  778. package/dist/esm/components/form/controls/file/image-crop.js.map +1 -1
  779. package/dist/esm/components/form/controls/form-field-checkbox-group.d.ts.map +1 -1
  780. package/dist/esm/components/form/controls/form-field-checkbox-group.js +33 -32
  781. package/dist/esm/components/form/controls/form-field-checkbox-group.js.map +1 -1
  782. package/dist/esm/components/form/controls/input-group.d.ts.map +1 -1
  783. package/dist/esm/components/form/controls/input-group.js.map +1 -1
  784. package/dist/esm/components/form/controls/input.d.ts.map +1 -1
  785. package/dist/esm/components/form/controls/input.js.map +1 -1
  786. package/dist/esm/components/form/controls/number/slider.d.ts.map +1 -1
  787. package/dist/esm/components/form/controls/number/slider.js.map +1 -1
  788. package/dist/esm/components/form/controls/string/color-input.d.ts.map +1 -1
  789. package/dist/esm/components/form/controls/string/color-input.js.map +1 -1
  790. package/dist/esm/components/form/controls/string/inline-edit-text.d.ts.map +1 -1
  791. package/dist/esm/components/form/controls/string/inline-edit-text.js.map +1 -1
  792. package/dist/esm/components/form/controls/string/input-otp.d.ts.map +1 -1
  793. package/dist/esm/components/form/controls/string/input-otp.js.map +1 -1
  794. package/dist/esm/components/form/controls/string/markdown-editor.d.ts.map +1 -1
  795. package/dist/esm/components/form/controls/string/markdown-editor.js.map +1 -1
  796. package/dist/esm/components/form/controls/string/markdown-editor.labels.d.ts.map +1 -1
  797. package/dist/esm/components/form/controls/string/markdown-editor.labels.js.map +1 -1
  798. package/dist/esm/components/form/controls/string/password-input.d.ts.map +1 -1
  799. package/dist/esm/components/form/controls/string/password-input.js.map +1 -1
  800. package/dist/esm/components/form/controls/string/textarea.d.ts.map +1 -1
  801. package/dist/esm/components/form/controls/string/textarea.js.map +1 -1
  802. package/dist/esm/components/form/feedback/RemoteChangeNotification.d.ts.map +1 -1
  803. package/dist/esm/components/form/feedback/RemoteChangeNotification.js.map +1 -1
  804. package/dist/esm/components/form/fields/accepted-file-kinds-description.frontend.utils.d.ts +15 -0
  805. package/dist/esm/components/form/fields/accepted-file-kinds-description.frontend.utils.d.ts.map +1 -0
  806. package/dist/esm/components/form/fields/accepted-file-kinds-description.frontend.utils.js +53 -0
  807. package/dist/esm/components/form/fields/accepted-file-kinds-description.frontend.utils.js.map +1 -0
  808. package/dist/esm/components/form/fields/form-field-address.d.ts +56 -0
  809. package/dist/esm/components/form/fields/form-field-address.d.ts.map +1 -0
  810. package/dist/esm/components/form/fields/form-field-address.js +178 -0
  811. package/dist/esm/components/form/fields/form-field-address.js.map +1 -0
  812. package/dist/esm/components/form/fields/form-field-address.labels.d.ts +3 -0
  813. package/dist/esm/components/form/fields/form-field-address.labels.d.ts.map +1 -0
  814. package/dist/esm/components/form/fields/form-field-address.labels.js +53 -0
  815. package/dist/esm/components/form/fields/form-field-address.labels.js.map +1 -0
  816. package/dist/esm/components/form/fields/form-field-bigdecimal.d.ts.map +1 -1
  817. package/dist/esm/components/form/fields/form-field-bigdecimal.js.map +1 -1
  818. package/dist/esm/components/form/fields/form-field-bigdecimal.labels.d.ts.map +1 -1
  819. package/dist/esm/components/form/fields/form-field-bigdecimal.labels.js.map +1 -1
  820. package/dist/esm/components/form/fields/form-field-boolean.d.ts.map +1 -1
  821. package/dist/esm/components/form/fields/form-field-boolean.js.map +1 -1
  822. package/dist/esm/components/form/fields/form-field-boolean.labels.d.ts.map +1 -1
  823. package/dist/esm/components/form/fields/form-field-boolean.labels.js.map +1 -1
  824. package/dist/esm/components/form/fields/form-field-code.d.ts.map +1 -1
  825. package/dist/esm/components/form/fields/form-field-code.js.map +1 -1
  826. package/dist/esm/components/form/fields/form-field-code.labels.d.ts.map +1 -1
  827. package/dist/esm/components/form/fields/form-field-code.labels.js.map +1 -1
  828. package/dist/esm/components/form/fields/form-field-date.d.ts.map +1 -1
  829. package/dist/esm/components/form/fields/form-field-date.js.map +1 -1
  830. package/dist/esm/components/form/fields/form-field-date.labels.d.ts.map +1 -1
  831. package/dist/esm/components/form/fields/form-field-date.labels.js.map +1 -1
  832. package/dist/esm/components/form/fields/form-field-datetime.d.ts.map +1 -1
  833. package/dist/esm/components/form/fields/form-field-datetime.js.map +1 -1
  834. package/dist/esm/components/form/fields/form-field-datetime.labels.d.ts.map +1 -1
  835. package/dist/esm/components/form/fields/form-field-datetime.labels.js.map +1 -1
  836. package/dist/esm/components/form/fields/form-field-duration.d.ts.map +1 -1
  837. package/dist/esm/components/form/fields/form-field-duration.js +5 -7
  838. package/dist/esm/components/form/fields/form-field-duration.js.map +1 -1
  839. package/dist/esm/components/form/fields/form-field-duration.labels.d.ts.map +1 -1
  840. package/dist/esm/components/form/fields/form-field-duration.labels.js.map +1 -1
  841. package/dist/esm/components/form/fields/form-field-enum.d.ts +14 -1
  842. package/dist/esm/components/form/fields/form-field-enum.d.ts.map +1 -1
  843. package/dist/esm/components/form/fields/form-field-enum.js +310 -32
  844. package/dist/esm/components/form/fields/form-field-enum.js.map +1 -1
  845. package/dist/esm/components/form/fields/form-field-enum.labels.d.ts.map +1 -1
  846. package/dist/esm/components/form/fields/form-field-enum.labels.js.map +1 -1
  847. package/dist/esm/components/form/fields/form-field-file-provider-constraints.frontend.utils.d.ts +17 -26
  848. package/dist/esm/components/form/fields/form-field-file-provider-constraints.frontend.utils.d.ts.map +1 -1
  849. package/dist/esm/components/form/fields/form-field-file-provider-constraints.frontend.utils.js +19 -46
  850. package/dist/esm/components/form/fields/form-field-file-provider-constraints.frontend.utils.js.map +1 -1
  851. package/dist/esm/components/form/fields/form-field-file.d.ts.map +1 -1
  852. package/dist/esm/components/form/fields/form-field-file.js +228 -124
  853. package/dist/esm/components/form/fields/form-field-file.js.map +1 -1
  854. package/dist/esm/components/form/fields/form-field-file.labels.d.ts.map +1 -1
  855. package/dist/esm/components/form/fields/form-field-file.labels.js +16 -0
  856. package/dist/esm/components/form/fields/form-field-file.labels.js.map +1 -1
  857. package/dist/esm/components/form/fields/form-field-money.d.ts.map +1 -1
  858. package/dist/esm/components/form/fields/form-field-money.js +8 -34
  859. package/dist/esm/components/form/fields/form-field-money.js.map +1 -1
  860. package/dist/esm/components/form/fields/form-field-money.labels.d.ts.map +1 -1
  861. package/dist/esm/components/form/fields/form-field-money.labels.js.map +1 -1
  862. package/dist/esm/components/form/fields/form-field-number.d.ts.map +1 -1
  863. package/dist/esm/components/form/fields/form-field-number.js.map +1 -1
  864. package/dist/esm/components/form/fields/form-field-number.labels.d.ts.map +1 -1
  865. package/dist/esm/components/form/fields/form-field-number.labels.js.map +1 -1
  866. package/dist/esm/components/form/fields/form-field-phone.d.ts.map +1 -1
  867. package/dist/esm/components/form/fields/form-field-phone.js.map +1 -1
  868. package/dist/esm/components/form/fields/form-field-phone.labels.d.ts.map +1 -1
  869. package/dist/esm/components/form/fields/form-field-phone.labels.js.map +1 -1
  870. package/dist/esm/components/form/fields/form-field-range-bigdecimal.d.ts.map +1 -1
  871. package/dist/esm/components/form/fields/form-field-range-bigdecimal.js.map +1 -1
  872. package/dist/esm/components/form/fields/form-field-range-bigdecimal.labels.d.ts.map +1 -1
  873. package/dist/esm/components/form/fields/form-field-range-bigdecimal.labels.js.map +1 -1
  874. package/dist/esm/components/form/fields/form-field-range-date.d.ts.map +1 -1
  875. package/dist/esm/components/form/fields/form-field-range-date.js.map +1 -1
  876. package/dist/esm/components/form/fields/form-field-range-date.labels.d.ts.map +1 -1
  877. package/dist/esm/components/form/fields/form-field-range-date.labels.js.map +1 -1
  878. package/dist/esm/components/form/fields/form-field-range-datetime.d.ts.map +1 -1
  879. package/dist/esm/components/form/fields/form-field-range-datetime.js.map +1 -1
  880. package/dist/esm/components/form/fields/form-field-range-datetime.labels.d.ts.map +1 -1
  881. package/dist/esm/components/form/fields/form-field-range-datetime.labels.js.map +1 -1
  882. package/dist/esm/components/form/fields/form-field-range-money.d.ts.map +1 -1
  883. package/dist/esm/components/form/fields/form-field-range-money.js.map +1 -1
  884. package/dist/esm/components/form/fields/form-field-range-money.labels.d.ts.map +1 -1
  885. package/dist/esm/components/form/fields/form-field-range-money.labels.js.map +1 -1
  886. package/dist/esm/components/form/fields/form-field-range-number.d.ts.map +1 -1
  887. package/dist/esm/components/form/fields/form-field-range-number.js.map +1 -1
  888. package/dist/esm/components/form/fields/form-field-range-number.labels.d.ts.map +1 -1
  889. package/dist/esm/components/form/fields/form-field-range-number.labels.js.map +1 -1
  890. package/dist/esm/components/form/fields/form-field-range-time.d.ts.map +1 -1
  891. package/dist/esm/components/form/fields/form-field-range-time.js.map +1 -1
  892. package/dist/esm/components/form/fields/form-field-range-time.labels.d.ts.map +1 -1
  893. package/dist/esm/components/form/fields/form-field-range-time.labels.js.map +1 -1
  894. package/dist/esm/components/form/fields/form-field-string.d.ts.map +1 -1
  895. package/dist/esm/components/form/fields/form-field-string.js.map +1 -1
  896. package/dist/esm/components/form/fields/form-field-string.labels.d.ts.map +1 -1
  897. package/dist/esm/components/form/fields/form-field-string.labels.js.map +1 -1
  898. package/dist/esm/components/form/fields/form-field-time.d.ts.map +1 -1
  899. package/dist/esm/components/form/fields/form-field-time.js.map +1 -1
  900. package/dist/esm/components/form/fields/form-field-time.labels.d.ts.map +1 -1
  901. package/dist/esm/components/form/fields/form-field-time.labels.js.map +1 -1
  902. package/dist/esm/components/form/fields/useFormField.d.ts.map +1 -1
  903. package/dist/esm/components/form/fields/useFormField.js.map +1 -1
  904. package/dist/esm/components/form/form-context.d.ts.map +1 -1
  905. package/dist/esm/components/form/form-context.js.map +1 -1
  906. package/dist/esm/components/form/form-context.utils.d.ts.map +1 -1
  907. package/dist/esm/components/form/form-context.utils.js.map +1 -1
  908. package/dist/esm/components/form/form-external-validation.d.ts +11 -0
  909. package/dist/esm/components/form/form-external-validation.d.ts.map +1 -0
  910. package/dist/esm/components/form/form-external-validation.js +17 -0
  911. package/dist/esm/components/form/form-external-validation.js.map +1 -0
  912. package/dist/esm/components/form/form-field-types.d.ts.map +1 -1
  913. package/dist/esm/components/form/form-field-types.js.map +1 -1
  914. package/dist/esm/components/form/useFormSchemaContext.d.ts.map +1 -1
  915. package/dist/esm/components/form/useFormSchemaContext.js.map +1 -1
  916. package/dist/esm/components/form/validation-errors/FormErrorSummary.d.ts.map +1 -1
  917. package/dist/esm/components/form/validation-errors/FormErrorSummary.js.map +1 -1
  918. package/dist/esm/components/form/validation-errors/form-error-extraction.utils.d.ts +13 -12
  919. package/dist/esm/components/form/validation-errors/form-error-extraction.utils.d.ts.map +1 -1
  920. package/dist/esm/components/form/validation-errors/form-error-extraction.utils.js +15 -17
  921. package/dist/esm/components/form/validation-errors/form-error-extraction.utils.js.map +1 -1
  922. package/dist/esm/components/form/validation-errors/form-validation.d.ts.map +1 -1
  923. package/dist/esm/components/form/validation-errors/form-validation.js.map +1 -1
  924. package/dist/esm/components/form/validation-errors/getFieldError.d.ts +6 -0
  925. package/dist/esm/components/form/validation-errors/getFieldError.d.ts.map +1 -1
  926. package/dist/esm/components/form/validation-errors/getFieldError.js +12 -1
  927. package/dist/esm/components/form/validation-errors/getFieldError.js.map +1 -1
  928. package/dist/esm/components/form/validation-errors/resource-error-notification-context.utils.d.ts +23 -0
  929. package/dist/esm/components/form/validation-errors/resource-error-notification-context.utils.d.ts.map +1 -0
  930. package/dist/esm/components/form/validation-errors/resource-error-notification-context.utils.js +10 -0
  931. package/dist/esm/components/form/validation-errors/resource-error-notification-context.utils.js.map +1 -0
  932. package/dist/esm/components/form/validation-errors/scroll-to-first-error.utils.d.ts.map +1 -1
  933. package/dist/esm/components/form/validation-errors/scroll-to-first-error.utils.js.map +1 -1
  934. package/dist/esm/components/form/validation-errors/unstarted-field-visit.d.ts +60 -0
  935. package/dist/esm/components/form/validation-errors/unstarted-field-visit.d.ts.map +1 -0
  936. package/dist/esm/components/form/validation-errors/unstarted-field-visit.js +79 -0
  937. package/dist/esm/components/form/validation-errors/unstarted-field-visit.js.map +1 -0
  938. package/dist/esm/components/form/validation-errors/useFieldUniquenessValidation.d.ts.map +1 -1
  939. package/dist/esm/components/form/validation-errors/useFieldUniquenessValidation.js +5 -2
  940. package/dist/esm/components/form/validation-errors/useFieldUniquenessValidation.js.map +1 -1
  941. package/dist/esm/components/form/validation-errors/useServerErrorInjection.d.ts +6 -1
  942. package/dist/esm/components/form/validation-errors/useServerErrorInjection.d.ts.map +1 -1
  943. package/dist/esm/components/form/validation-errors/useServerErrorInjection.js +10 -2
  944. package/dist/esm/components/form/validation-errors/useServerErrorInjection.js.map +1 -1
  945. package/dist/esm/components/form/validation-errors/validate-field-url.frontend.d.ts +32 -0
  946. package/dist/esm/components/form/validation-errors/validate-field-url.frontend.d.ts.map +1 -0
  947. package/dist/esm/components/form/validation-errors/validate-field-url.frontend.js +35 -0
  948. package/dist/esm/components/form/validation-errors/validate-field-url.frontend.js.map +1 -0
  949. package/dist/esm/components/form/validation-errors/zod-issue-resolver.d.ts +17 -0
  950. package/dist/esm/components/form/validation-errors/zod-issue-resolver.d.ts.map +1 -0
  951. package/dist/esm/components/form/validation-errors/zod-issue-resolver.js +73 -0
  952. package/dist/esm/components/form/validation-errors/zod-issue-resolver.js.map +1 -0
  953. package/dist/esm/components/layout/aspect-ratio.d.ts.map +1 -1
  954. package/dist/esm/components/layout/aspect-ratio.js.map +1 -1
  955. package/dist/esm/components/layout/carousel.d.ts.map +1 -1
  956. package/dist/esm/components/layout/carousel.js.map +1 -1
  957. package/dist/esm/components/layout/divider.d.ts.map +1 -1
  958. package/dist/esm/components/layout/divider.js.map +1 -1
  959. package/dist/esm/components/layout/resizable.d.ts.map +1 -1
  960. package/dist/esm/components/layout/resizable.js.map +1 -1
  961. package/dist/esm/components/layout/scroll-area.d.ts.map +1 -1
  962. package/dist/esm/components/layout/scroll-area.js.map +1 -1
  963. package/dist/esm/components/layout/separator.d.ts.map +1 -1
  964. package/dist/esm/components/layout/separator.js.map +1 -1
  965. package/dist/esm/components/navigation/NavigationItemBadge.d.ts.map +1 -1
  966. package/dist/esm/components/navigation/NavigationItemBadge.js.map +1 -1
  967. package/dist/esm/components/navigation/app-level/ApplicationLevel_ActivityBar.d.ts.map +1 -1
  968. package/dist/esm/components/navigation/app-level/ApplicationLevel_ActivityBar.js.map +1 -1
  969. package/dist/esm/components/navigation/app-level/ApplicationLevel_CommandMenu.d.ts.map +1 -1
  970. package/dist/esm/components/navigation/app-level/ApplicationLevel_CommandMenu.js.map +1 -1
  971. package/dist/esm/components/navigation/app-level/ApplicationLevel_ControlPanel.d.ts.map +1 -1
  972. package/dist/esm/components/navigation/app-level/ApplicationLevel_ControlPanel.js.map +1 -1
  973. package/dist/esm/components/navigation/app-level/ApplicationLevel_MenuBar.d.ts.map +1 -1
  974. package/dist/esm/components/navigation/app-level/ApplicationLevel_MenuBar.js.map +1 -1
  975. package/dist/esm/components/navigation/app-level/ApplicationLevel_MenuUserOrg.d.ts.map +1 -1
  976. package/dist/esm/components/navigation/app-level/ApplicationLevel_MenuUserOrg.js.map +1 -1
  977. package/dist/esm/components/navigation/app-level/ApplicationLevel_NavigationBack.d.ts.map +1 -1
  978. package/dist/esm/components/navigation/app-level/ApplicationLevel_NavigationBack.js.map +1 -1
  979. package/dist/esm/components/navigation/app-level/ApplicationLevel_NotificationCenter.d.ts.map +1 -1
  980. package/dist/esm/components/navigation/app-level/ApplicationLevel_NotificationCenter.js.map +1 -1
  981. package/dist/esm/components/navigation/app-level/ApplicationLevel_QuickActionButton.d.ts.map +1 -1
  982. package/dist/esm/components/navigation/app-level/ApplicationLevel_QuickActionButton.js.map +1 -1
  983. package/dist/esm/components/navigation/app-level/ApplicationLevel_QuickSwitcher.d.ts.map +1 -1
  984. package/dist/esm/components/navigation/app-level/ApplicationLevel_QuickSwitcher.js.map +1 -1
  985. package/dist/esm/components/navigation/app-level/ApplicationLevel_Sidebar.d.ts.map +1 -1
  986. package/dist/esm/components/navigation/app-level/ApplicationLevel_Sidebar.js.map +1 -1
  987. package/dist/esm/components/navigation/app-level/ApplicationLevel_StatusBar.d.ts.map +1 -1
  988. package/dist/esm/components/navigation/app-level/ApplicationLevel_StatusBar.js.map +1 -1
  989. package/dist/esm/components/navigation/app-level/ApplicationLevel_Toolbar.d.ts.map +1 -1
  990. package/dist/esm/components/navigation/app-level/ApplicationLevel_Toolbar.js.map +1 -1
  991. package/dist/esm/components/navigation/app-level/ApplicationLevel_UtilityPanel.d.ts.map +1 -1
  992. package/dist/esm/components/navigation/app-level/ApplicationLevel_UtilityPanel.js.map +1 -1
  993. package/dist/esm/components/navigation/app-level/HostedComponentInteractionsProvider.d.ts.map +1 -1
  994. package/dist/esm/components/navigation/app-level/HostedComponentInteractionsProvider.js.map +1 -1
  995. package/dist/esm/components/navigation/app-level/SidebarResourceBrowser.d.ts.map +1 -1
  996. package/dist/esm/components/navigation/app-level/SidebarResourceBrowser.js +26 -10
  997. package/dist/esm/components/navigation/app-level/SidebarResourceBrowser.js.map +1 -1
  998. package/dist/esm/components/navigation/app-level/component-props.application-level.frontend.schemas.d.ts.map +1 -1
  999. package/dist/esm/components/navigation/app-level/component-props.application-level.frontend.schemas.js.map +1 -1
  1000. package/dist/esm/components/navigation/app-level/sidebar-resource-browser-empty-label.d.ts +14 -0
  1001. package/dist/esm/components/navigation/app-level/sidebar-resource-browser-empty-label.d.ts.map +1 -0
  1002. package/dist/esm/components/navigation/app-level/sidebar-resource-browser-empty-label.js +13 -0
  1003. package/dist/esm/components/navigation/app-level/sidebar-resource-browser-empty-label.js.map +1 -0
  1004. package/dist/esm/components/navigation/app-level/useActivityBarBehavior.d.ts.map +1 -1
  1005. package/dist/esm/components/navigation/app-level/useActivityBarBehavior.js.map +1 -1
  1006. package/dist/esm/components/navigation/app-level/useCommandMenuBehavior.d.ts.map +1 -1
  1007. package/dist/esm/components/navigation/app-level/useCommandMenuBehavior.js +16 -12
  1008. package/dist/esm/components/navigation/app-level/useCommandMenuBehavior.js.map +1 -1
  1009. package/dist/esm/components/navigation/app-level/useControlPanelBehavior.d.ts.map +1 -1
  1010. package/dist/esm/components/navigation/app-level/useControlPanelBehavior.js +12 -9
  1011. package/dist/esm/components/navigation/app-level/useControlPanelBehavior.js.map +1 -1
  1012. package/dist/esm/components/navigation/app-level/useMenuBarBehavior.d.ts +9 -0
  1013. package/dist/esm/components/navigation/app-level/useMenuBarBehavior.d.ts.map +1 -1
  1014. package/dist/esm/components/navigation/app-level/useMenuBarBehavior.js +38 -2
  1015. package/dist/esm/components/navigation/app-level/useMenuBarBehavior.js.map +1 -1
  1016. package/dist/esm/components/navigation/app-level/useMenuUserOrgBehavior.d.ts.map +1 -1
  1017. package/dist/esm/components/navigation/app-level/useMenuUserOrgBehavior.js.map +1 -1
  1018. package/dist/esm/components/navigation/app-level/useNavigationBehaviors.d.ts.map +1 -1
  1019. package/dist/esm/components/navigation/app-level/useNavigationBehaviors.js.map +1 -1
  1020. package/dist/esm/components/navigation/app-level/useNotificationCenterBehavior.d.ts.map +1 -1
  1021. package/dist/esm/components/navigation/app-level/useNotificationCenterBehavior.js +34 -15
  1022. package/dist/esm/components/navigation/app-level/useNotificationCenterBehavior.js.map +1 -1
  1023. package/dist/esm/components/navigation/app-level/useQuickActionButtonBehavior.d.ts.map +1 -1
  1024. package/dist/esm/components/navigation/app-level/useQuickActionButtonBehavior.js.map +1 -1
  1025. package/dist/esm/components/navigation/app-level/useQuickSwitcherBehavior.d.ts.map +1 -1
  1026. package/dist/esm/components/navigation/app-level/useQuickSwitcherBehavior.js +3 -1
  1027. package/dist/esm/components/navigation/app-level/useQuickSwitcherBehavior.js.map +1 -1
  1028. package/dist/esm/components/navigation/app-level/useSidebarBehavior.d.ts.map +1 -1
  1029. package/dist/esm/components/navigation/app-level/useSidebarBehavior.js +26 -3
  1030. package/dist/esm/components/navigation/app-level/useSidebarBehavior.js.map +1 -1
  1031. package/dist/esm/components/navigation/app-level/useStatusBarBehavior.d.ts.map +1 -1
  1032. package/dist/esm/components/navigation/app-level/useStatusBarBehavior.js.map +1 -1
  1033. package/dist/esm/components/navigation/app-level/useToolbarBehavior.d.ts.map +1 -1
  1034. package/dist/esm/components/navigation/app-level/useToolbarBehavior.js.map +1 -1
  1035. package/dist/esm/components/navigation/app-level/useUtilityPanelBehavior.d.ts +16 -1
  1036. package/dist/esm/components/navigation/app-level/useUtilityPanelBehavior.d.ts.map +1 -1
  1037. package/dist/esm/components/navigation/app-level/useUtilityPanelBehavior.js +20 -25
  1038. package/dist/esm/components/navigation/app-level/useUtilityPanelBehavior.js.map +1 -1
  1039. package/dist/esm/components/navigation/breadcrumb.d.ts.map +1 -1
  1040. package/dist/esm/components/navigation/breadcrumb.js.map +1 -1
  1041. package/dist/esm/components/navigation/command.d.ts.map +1 -1
  1042. package/dist/esm/components/navigation/command.js.map +1 -1
  1043. package/dist/esm/components/navigation/menu-bar.d.ts +1 -1
  1044. package/dist/esm/components/navigation/menu-bar.d.ts.map +1 -1
  1045. package/dist/esm/components/navigation/menu-bar.js.map +1 -1
  1046. package/dist/esm/components/navigation/navbar.d.ts.map +1 -1
  1047. package/dist/esm/components/navigation/navbar.js.map +1 -1
  1048. package/dist/esm/components/navigation/sidebar.d.ts.map +1 -1
  1049. package/dist/esm/components/navigation/sidebar.js.map +1 -1
  1050. package/dist/esm/components/overlays/containers/OverlayContainer.d.ts.map +1 -1
  1051. package/dist/esm/components/overlays/containers/OverlayContainer.js +36 -33
  1052. package/dist/esm/components/overlays/containers/OverlayContainer.js.map +1 -1
  1053. package/dist/esm/components/overlays/containers/OverlayContainer.labels.d.ts.map +1 -1
  1054. package/dist/esm/components/overlays/containers/OverlayContainer.labels.js.map +1 -1
  1055. package/dist/esm/components/overlays/containers/alert-dialog.d.ts +16 -12
  1056. package/dist/esm/components/overlays/containers/alert-dialog.d.ts.map +1 -1
  1057. package/dist/esm/components/overlays/containers/alert-dialog.js.map +1 -1
  1058. package/dist/esm/components/overlays/containers/alert.d.ts.map +1 -1
  1059. package/dist/esm/components/overlays/containers/alert.js.map +1 -1
  1060. package/dist/esm/components/overlays/containers/dialog.d.ts +3 -1
  1061. package/dist/esm/components/overlays/containers/dialog.d.ts.map +1 -1
  1062. package/dist/esm/components/overlays/containers/dialog.js.map +1 -1
  1063. package/dist/esm/components/overlays/containers/dialog.shared-types.d.ts +25 -7
  1064. package/dist/esm/components/overlays/containers/dialog.shared-types.d.ts.map +1 -1
  1065. package/dist/esm/components/overlays/containers/dialog.shared-types.js.map +1 -1
  1066. package/dist/esm/components/overlays/containers/drawer.d.ts.map +1 -1
  1067. package/dist/esm/components/overlays/containers/drawer.js.map +1 -1
  1068. package/dist/esm/components/overlays/containers/navigation-overlay-container.utils.d.ts +21 -1
  1069. package/dist/esm/components/overlays/containers/navigation-overlay-container.utils.d.ts.map +1 -1
  1070. package/dist/esm/components/overlays/containers/navigation-overlay-container.utils.js +34 -1
  1071. package/dist/esm/components/overlays/containers/navigation-overlay-container.utils.js.map +1 -1
  1072. package/dist/esm/components/overlays/containers/overlay-container-mode-resolution.utils.d.ts.map +1 -1
  1073. package/dist/esm/components/overlays/containers/overlay-container-mode-resolution.utils.js.map +1 -1
  1074. package/dist/esm/components/overlays/containers/sheet.d.ts +6 -4
  1075. package/dist/esm/components/overlays/containers/sheet.d.ts.map +1 -1
  1076. package/dist/esm/components/overlays/containers/sheet.js.map +1 -1
  1077. package/dist/esm/components/overlays/floating/context-menu.d.ts +1 -1
  1078. package/dist/esm/components/overlays/floating/context-menu.d.ts.map +1 -1
  1079. package/dist/esm/components/overlays/floating/context-menu.js.map +1 -1
  1080. package/dist/esm/components/overlays/floating/dropdown-menu.d.ts +1 -1
  1081. package/dist/esm/components/overlays/floating/dropdown-menu.d.ts.map +1 -1
  1082. package/dist/esm/components/overlays/floating/dropdown-menu.js.map +1 -1
  1083. package/dist/esm/components/overlays/floating/hover-card.d.ts.map +1 -1
  1084. package/dist/esm/components/overlays/floating/hover-card.js.map +1 -1
  1085. package/dist/esm/components/overlays/floating/menu.shared-types.d.ts.map +1 -1
  1086. package/dist/esm/components/overlays/floating/menu.shared-types.js.map +1 -1
  1087. package/dist/esm/components/overlays/floating/popover.d.ts.map +1 -1
  1088. package/dist/esm/components/overlays/floating/popover.js.map +1 -1
  1089. package/dist/esm/components/overlays/floating/tooltip.d.ts.map +1 -1
  1090. package/dist/esm/components/overlays/floating/tooltip.js.map +1 -1
  1091. package/dist/esm/components/progression/ProgressionAchievementBadge.d.ts.map +1 -1
  1092. package/dist/esm/components/progression/ProgressionAchievementBadge.js.map +1 -1
  1093. package/dist/esm/components/progression/ProgressionAchievementBadge.labels.d.ts.map +1 -1
  1094. package/dist/esm/components/progression/ProgressionAchievementBadge.labels.js.map +1 -1
  1095. package/dist/esm/components/progression/ProgressionMilestoneTracker.d.ts +55 -4
  1096. package/dist/esm/components/progression/ProgressionMilestoneTracker.d.ts.map +1 -1
  1097. package/dist/esm/components/progression/ProgressionMilestoneTracker.js +265 -32
  1098. package/dist/esm/components/progression/ProgressionMilestoneTracker.js.map +1 -1
  1099. package/dist/esm/components/progression/ProgressionMilestoneTracker.labels.d.ts.map +1 -1
  1100. package/dist/esm/components/progression/ProgressionMilestoneTracker.labels.js +42 -4
  1101. package/dist/esm/components/progression/ProgressionMilestoneTracker.labels.js.map +1 -1
  1102. package/dist/esm/components/resources/CollectionSelectionControls.d.ts +34 -15
  1103. package/dist/esm/components/resources/CollectionSelectionControls.d.ts.map +1 -1
  1104. package/dist/esm/components/resources/CollectionSelectionControls.js +4 -3
  1105. package/dist/esm/components/resources/CollectionSelectionControls.js.map +1 -1
  1106. package/dist/esm/components/resources/CollectionSelectionHeaderRail.d.ts +30 -0
  1107. package/dist/esm/components/resources/CollectionSelectionHeaderRail.d.ts.map +1 -0
  1108. package/dist/esm/components/resources/CollectionSelectionHeaderRail.js +17 -0
  1109. package/dist/esm/components/resources/CollectionSelectionHeaderRail.js.map +1 -0
  1110. package/dist/esm/components/resources/EphemeralFieldsRevealDialog.d.ts.map +1 -1
  1111. package/dist/esm/components/resources/EphemeralFieldsRevealDialog.js.map +1 -1
  1112. package/dist/esm/components/resources/InlineSearchInput.d.ts.map +1 -1
  1113. package/dist/esm/components/resources/InlineSearchInput.js.map +1 -1
  1114. package/dist/esm/components/resources/ResourceCollectionBody_Table.d.ts +10 -1
  1115. package/dist/esm/components/resources/ResourceCollectionBody_Table.d.ts.map +1 -1
  1116. package/dist/esm/components/resources/ResourceCollectionBody_Table.js +9 -5
  1117. package/dist/esm/components/resources/ResourceCollectionBody_Table.js.map +1 -1
  1118. package/dist/esm/components/resources/ResourceCollectionFilterPresets.d.ts +45 -0
  1119. package/dist/esm/components/resources/ResourceCollectionFilterPresets.d.ts.map +1 -0
  1120. package/dist/esm/components/resources/ResourceCollectionFilterPresets.js +81 -0
  1121. package/dist/esm/components/resources/ResourceCollectionFilterPresets.js.map +1 -0
  1122. package/dist/esm/components/resources/ResourceCollectionQuickFilterTabs.d.ts +22 -4
  1123. package/dist/esm/components/resources/ResourceCollectionQuickFilterTabs.d.ts.map +1 -1
  1124. package/dist/esm/components/resources/ResourceCollectionQuickFilterTabs.js +31 -6
  1125. package/dist/esm/components/resources/ResourceCollectionQuickFilterTabs.js.map +1 -1
  1126. package/dist/esm/components/resources/ResourceCollectionToolbar.d.ts +25 -9
  1127. package/dist/esm/components/resources/ResourceCollectionToolbar.d.ts.map +1 -1
  1128. package/dist/esm/components/resources/ResourceCollectionToolbar.js +3 -2
  1129. package/dist/esm/components/resources/ResourceCollectionToolbar.js.map +1 -1
  1130. package/dist/esm/components/resources/ResourceInPlaceOperationRow.d.ts.map +1 -1
  1131. package/dist/esm/components/resources/ResourceInPlaceOperationRow.js +2 -2
  1132. package/dist/esm/components/resources/ResourceInPlaceOperationRow.js.map +1 -1
  1133. package/dist/esm/components/resources/ResourceLayout_Action.d.ts.map +1 -1
  1134. package/dist/esm/components/resources/ResourceLayout_Action.js.map +1 -1
  1135. package/dist/esm/components/resources/ResourceLayout_Action.labels.d.ts.map +1 -1
  1136. package/dist/esm/components/resources/ResourceLayout_Action.labels.js.map +1 -1
  1137. package/dist/esm/components/resources/ResourceLayout_Breadcrumb.d.ts.map +1 -1
  1138. package/dist/esm/components/resources/ResourceLayout_Breadcrumb.js +2 -1
  1139. package/dist/esm/components/resources/ResourceLayout_Breadcrumb.js.map +1 -1
  1140. package/dist/esm/components/resources/ResourceLayout_Breadcrumb.labels.d.ts.map +1 -1
  1141. package/dist/esm/components/resources/ResourceLayout_Breadcrumb.labels.js.map +1 -1
  1142. package/dist/esm/components/resources/ResourceLayout_CollectionActions.d.ts.map +1 -1
  1143. package/dist/esm/components/resources/ResourceLayout_CollectionActions.js +2 -2
  1144. package/dist/esm/components/resources/ResourceLayout_CollectionActions.js.map +1 -1
  1145. package/dist/esm/components/resources/ResourceLayout_ContainerDialogs.d.ts.map +1 -1
  1146. package/dist/esm/components/resources/ResourceLayout_ContainerDialogs.js.map +1 -1
  1147. package/dist/esm/components/resources/ResourceLayout_ContainerDialogs.labels.d.ts.map +1 -1
  1148. package/dist/esm/components/resources/ResourceLayout_ContainerDialogs.labels.js.map +1 -1
  1149. package/dist/esm/components/resources/ResourceLayout_ContainerNested.d.ts.map +1 -1
  1150. package/dist/esm/components/resources/ResourceLayout_ContainerNested.js +3 -3
  1151. package/dist/esm/components/resources/ResourceLayout_ContainerNested.js.map +1 -1
  1152. package/dist/esm/components/resources/ResourceLayout_ContainerNested.labels.d.ts.map +1 -1
  1153. package/dist/esm/components/resources/ResourceLayout_ContainerNested.labels.js +4 -4
  1154. package/dist/esm/components/resources/ResourceLayout_ContainerNested.labels.js.map +1 -1
  1155. package/dist/esm/components/resources/ResourceLayout_Create.d.ts.map +1 -1
  1156. package/dist/esm/components/resources/ResourceLayout_Create.js.map +1 -1
  1157. package/dist/esm/components/resources/ResourceLayout_Create.labels.d.ts.map +1 -1
  1158. package/dist/esm/components/resources/ResourceLayout_Create.labels.js +1 -0
  1159. package/dist/esm/components/resources/ResourceLayout_Create.labels.js.map +1 -1
  1160. package/dist/esm/components/resources/ResourceLayout_DangerZone.d.ts.map +1 -1
  1161. package/dist/esm/components/resources/ResourceLayout_DangerZone.js +13 -18
  1162. package/dist/esm/components/resources/ResourceLayout_DangerZone.js.map +1 -1
  1163. package/dist/esm/components/resources/ResourceLayout_DangerZone.labels.d.ts.map +1 -1
  1164. package/dist/esm/components/resources/ResourceLayout_DangerZone.labels.js.map +1 -1
  1165. package/dist/esm/components/resources/ResourceLayout_FilterChips.d.ts.map +1 -1
  1166. package/dist/esm/components/resources/ResourceLayout_FilterChips.js +13 -2
  1167. package/dist/esm/components/resources/ResourceLayout_FilterChips.js.map +1 -1
  1168. package/dist/esm/components/resources/ResourceLayout_Filters.d.ts.map +1 -1
  1169. package/dist/esm/components/resources/ResourceLayout_Filters.js.map +1 -1
  1170. package/dist/esm/components/resources/ResourceLayout_Filters.labels.d.ts.map +1 -1
  1171. package/dist/esm/components/resources/ResourceLayout_Filters.labels.js +2 -0
  1172. package/dist/esm/components/resources/ResourceLayout_Filters.labels.js.map +1 -1
  1173. package/dist/esm/components/resources/ResourceLayout_FiltersControl.d.ts +7 -1
  1174. package/dist/esm/components/resources/ResourceLayout_FiltersControl.d.ts.map +1 -1
  1175. package/dist/esm/components/resources/ResourceLayout_FiltersControl.js +66 -11
  1176. package/dist/esm/components/resources/ResourceLayout_FiltersControl.js.map +1 -1
  1177. package/dist/esm/components/resources/ResourceLayout_Header.d.ts.map +1 -1
  1178. package/dist/esm/components/resources/ResourceLayout_Header.js +85 -42
  1179. package/dist/esm/components/resources/ResourceLayout_Header.js.map +1 -1
  1180. package/dist/esm/components/resources/ResourceLayout_Header.labels.d.ts.map +1 -1
  1181. package/dist/esm/components/resources/ResourceLayout_Header.labels.js.map +1 -1
  1182. package/dist/esm/components/resources/ResourceLayout_InsertedViews.d.ts.map +1 -1
  1183. package/dist/esm/components/resources/ResourceLayout_InsertedViews.js.map +1 -1
  1184. package/dist/esm/components/resources/ResourceLayout_List.d.ts.map +1 -1
  1185. package/dist/esm/components/resources/ResourceLayout_List.js +130 -46
  1186. package/dist/esm/components/resources/ResourceLayout_List.js.map +1 -1
  1187. package/dist/esm/components/resources/ResourceLayout_List.labels.d.ts.map +1 -1
  1188. package/dist/esm/components/resources/ResourceLayout_List.labels.js +12 -0
  1189. package/dist/esm/components/resources/ResourceLayout_List.labels.js.map +1 -1
  1190. package/dist/esm/components/resources/ResourceLayout_List_Table.d.ts.map +1 -1
  1191. package/dist/esm/components/resources/ResourceLayout_List_Table.js.map +1 -1
  1192. package/dist/esm/components/resources/ResourceLayout_OperationBulk.d.ts +23 -1
  1193. package/dist/esm/components/resources/ResourceLayout_OperationBulk.d.ts.map +1 -1
  1194. package/dist/esm/components/resources/ResourceLayout_OperationBulk.js +52 -16
  1195. package/dist/esm/components/resources/ResourceLayout_OperationBulk.js.map +1 -1
  1196. package/dist/esm/components/resources/ResourceLayout_OperationBulk.labels.d.ts.map +1 -1
  1197. package/dist/esm/components/resources/ResourceLayout_OperationBulk.labels.js +44 -0
  1198. package/dist/esm/components/resources/ResourceLayout_OperationBulk.labels.js.map +1 -1
  1199. package/dist/esm/components/resources/ResourceLayout_OperationsItems.d.ts.map +1 -1
  1200. package/dist/esm/components/resources/ResourceLayout_OperationsItems.js +2 -2
  1201. package/dist/esm/components/resources/ResourceLayout_OperationsItems.js.map +1 -1
  1202. package/dist/esm/components/resources/ResourceLayout_OperationsItems.labels.d.ts.map +1 -1
  1203. package/dist/esm/components/resources/ResourceLayout_OperationsItems.labels.js +78 -0
  1204. package/dist/esm/components/resources/ResourceLayout_OperationsItems.labels.js.map +1 -1
  1205. package/dist/esm/components/resources/ResourceLayout_Pagination.d.ts.map +1 -1
  1206. package/dist/esm/components/resources/ResourceLayout_Pagination.js.map +1 -1
  1207. package/dist/esm/components/resources/ResourceLayout_Pagination.labels.d.ts.map +1 -1
  1208. package/dist/esm/components/resources/ResourceLayout_Pagination.labels.js.map +1 -1
  1209. package/dist/esm/components/resources/ResourceLayout_Read.d.ts.map +1 -1
  1210. package/dist/esm/components/resources/ResourceLayout_Read.js.map +1 -1
  1211. package/dist/esm/components/resources/ResourceLayout_Read.labels.d.ts.map +1 -1
  1212. package/dist/esm/components/resources/ResourceLayout_Read.labels.js.map +1 -1
  1213. package/dist/esm/components/resources/ResourceLayout_ReadSummary.d.ts.map +1 -1
  1214. package/dist/esm/components/resources/ResourceLayout_ReadSummary.js.map +1 -1
  1215. package/dist/esm/components/resources/ResourceLayout_ReadSummary.labels.d.ts.map +1 -1
  1216. package/dist/esm/components/resources/ResourceLayout_ReadSummary.labels.js.map +1 -1
  1217. package/dist/esm/components/resources/ResourceLayout_ReadSummary_TableRow.d.ts.map +1 -1
  1218. package/dist/esm/components/resources/ResourceLayout_ReadSummary_TableRow.js +2 -2
  1219. package/dist/esm/components/resources/ResourceLayout_ReadSummary_TableRow.js.map +1 -1
  1220. package/dist/esm/components/resources/ResourceLayout_Read_Expandable.d.ts.map +1 -1
  1221. package/dist/esm/components/resources/ResourceLayout_Read_Expandable.js.map +1 -1
  1222. package/dist/esm/components/resources/ResourceLayout_Search.d.ts.map +1 -1
  1223. package/dist/esm/components/resources/ResourceLayout_Search.js +48 -25
  1224. package/dist/esm/components/resources/ResourceLayout_Search.js.map +1 -1
  1225. package/dist/esm/components/resources/ResourceLayout_Search.labels.d.ts.map +1 -1
  1226. package/dist/esm/components/resources/ResourceLayout_Search.labels.js.map +1 -1
  1227. package/dist/esm/components/resources/ResourceLayout_Search_Table.d.ts.map +1 -1
  1228. package/dist/esm/components/resources/ResourceLayout_Search_Table.js.map +1 -1
  1229. package/dist/esm/components/resources/ResourceLayout_SemanticOperationFallback.d.ts.map +1 -1
  1230. package/dist/esm/components/resources/ResourceLayout_SemanticOperationFallback.js +60 -44
  1231. package/dist/esm/components/resources/ResourceLayout_SemanticOperationFallback.js.map +1 -1
  1232. package/dist/esm/components/resources/ResourceLayout_SortControl.d.ts.map +1 -1
  1233. package/dist/esm/components/resources/ResourceLayout_SortControl.js.map +1 -1
  1234. package/dist/esm/components/resources/ResourceLayout_Update.d.ts.map +1 -1
  1235. package/dist/esm/components/resources/ResourceLayout_Update.js +18 -65
  1236. package/dist/esm/components/resources/ResourceLayout_Update.js.map +1 -1
  1237. package/dist/esm/components/resources/ResourceLayout_Update.labels.d.ts.map +1 -1
  1238. package/dist/esm/components/resources/ResourceLayout_Update.labels.js.map +1 -1
  1239. package/dist/esm/components/resources/ResourceListItemRenderer.d.ts +26 -6
  1240. package/dist/esm/components/resources/ResourceListItemRenderer.d.ts.map +1 -1
  1241. package/dist/esm/components/resources/ResourceListItemRenderer.js +28 -10
  1242. package/dist/esm/components/resources/ResourceListItemRenderer.js.map +1 -1
  1243. package/dist/esm/components/resources/ResourceOperationActionPopover.d.ts.map +1 -1
  1244. package/dist/esm/components/resources/ResourceOperationActionPopover.js +2 -2
  1245. package/dist/esm/components/resources/ResourceOperationActionPopover.js.map +1 -1
  1246. package/dist/esm/components/resources/ResourceOperationDetachedHost.d.ts +43 -0
  1247. package/dist/esm/components/resources/ResourceOperationDetachedHost.d.ts.map +1 -0
  1248. package/dist/esm/components/resources/ResourceOperationDetachedHost.js +94 -0
  1249. package/dist/esm/components/resources/ResourceOperationDetachedHost.js.map +1 -0
  1250. package/dist/esm/components/resources/ResourceOperationSurface.d.ts.map +1 -1
  1251. package/dist/esm/components/resources/ResourceOperationSurface.js.map +1 -1
  1252. package/dist/esm/components/resources/ResourceOwnedViewEmbeds.d.ts.map +1 -1
  1253. package/dist/esm/components/resources/ResourceOwnedViewEmbeds.js.map +1 -1
  1254. package/dist/esm/components/resources/ResourceViewModeToggle.d.ts.map +1 -1
  1255. package/dist/esm/components/resources/ResourceViewModeToggle.js.map +1 -1
  1256. package/dist/esm/components/resources/card-action-placement.utils.d.ts.map +1 -1
  1257. package/dist/esm/components/resources/card-action-placement.utils.js.map +1 -1
  1258. package/dist/esm/components/resources/collection-card-layout.utils.d.ts +37 -0
  1259. package/dist/esm/components/resources/collection-card-layout.utils.d.ts.map +1 -1
  1260. package/dist/esm/components/resources/collection-card-layout.utils.js +37 -0
  1261. package/dist/esm/components/resources/collection-card-layout.utils.js.map +1 -1
  1262. package/dist/esm/components/resources/collection-view-mode.frontend.d.ts.map +1 -1
  1263. package/dist/esm/components/resources/collection-view-mode.frontend.js.map +1 -1
  1264. package/dist/esm/components/resources/component-props.resources-layout.frontend.schemas.d.ts.map +1 -1
  1265. package/dist/esm/components/resources/component-props.resources-layout.frontend.schemas.js.map +1 -1
  1266. package/dist/esm/components/resources/embeds/ComposedChildrenRegistry.d.ts.map +1 -1
  1267. package/dist/esm/components/resources/embeds/ComposedChildrenRegistry.js.map +1 -1
  1268. package/dist/esm/components/resources/embeds/EmbeddedResourceDescent.d.ts.map +1 -1
  1269. package/dist/esm/components/resources/embeds/EmbeddedResourceDescent.js.map +1 -1
  1270. package/dist/esm/components/resources/embeds/EmbeddedResourceHostContext.d.ts.map +1 -1
  1271. package/dist/esm/components/resources/embeds/EmbeddedResourceHostContext.js.map +1 -1
  1272. package/dist/esm/components/resources/embeds/RelatedResourcePreview.d.ts.map +1 -1
  1273. package/dist/esm/components/resources/embeds/RelatedResourcePreview.js +5 -5
  1274. package/dist/esm/components/resources/embeds/RelatedResourcePreview.js.map +1 -1
  1275. package/dist/esm/components/resources/embeds/RelatedResourceSections.d.ts.map +1 -1
  1276. package/dist/esm/components/resources/embeds/RelatedResourceSections.js.map +1 -1
  1277. package/dist/esm/components/resources/embeds/ResourceEmbeds.d.ts +9 -0
  1278. package/dist/esm/components/resources/embeds/ResourceEmbeds.d.ts.map +1 -1
  1279. package/dist/esm/components/resources/embeds/ResourceEmbeds.js +1 -0
  1280. package/dist/esm/components/resources/embeds/ResourceEmbeds.js.map +1 -1
  1281. package/dist/esm/components/resources/embeds/child-operation-addressability.utils.d.ts.map +1 -1
  1282. package/dist/esm/components/resources/embeds/child-operation-addressability.utils.js.map +1 -1
  1283. package/dist/esm/components/resources/embeds/useEmbeddedResourceContext.d.ts.map +1 -1
  1284. package/dist/esm/components/resources/embeds/useEmbeddedResourceContext.js.map +1 -1
  1285. package/dist/esm/components/resources/inserted-resource-view.frontend.utils.d.ts.map +1 -1
  1286. package/dist/esm/components/resources/inserted-resource-view.frontend.utils.js.map +1 -1
  1287. package/dist/esm/components/resources/resource-operation-custom-view.contracts.d.ts.map +1 -1
  1288. package/dist/esm/components/resources/resource-operation-custom-view.contracts.js.map +1 -1
  1289. package/dist/esm/components/resources/resourceLayout.utils.d.ts +10 -0
  1290. package/dist/esm/components/resources/resourceLayout.utils.d.ts.map +1 -1
  1291. package/dist/esm/components/resources/resourceLayout.utils.js +20 -43
  1292. package/dist/esm/components/resources/resourceLayout.utils.js.map +1 -1
  1293. package/dist/esm/components/resources/skeleton/ArrayField.d.ts.map +1 -1
  1294. package/dist/esm/components/resources/skeleton/ArrayField.js.map +1 -1
  1295. package/dist/esm/components/resources/skeleton/ArrayItemTemplate.d.ts.map +1 -1
  1296. package/dist/esm/components/resources/skeleton/ArrayItemTemplate.js.map +1 -1
  1297. package/dist/esm/components/resources/skeleton/DiscriminatorSwitch.d.ts.map +1 -1
  1298. package/dist/esm/components/resources/skeleton/DiscriminatorSwitch.js.map +1 -1
  1299. package/dist/esm/components/resources/skeleton/DisplayDiscriminatorSwitch.d.ts +42 -0
  1300. package/dist/esm/components/resources/skeleton/DisplayDiscriminatorSwitch.d.ts.map +1 -0
  1301. package/dist/esm/components/resources/skeleton/DisplayDiscriminatorSwitch.js +44 -0
  1302. package/dist/esm/components/resources/skeleton/DisplayDiscriminatorSwitch.js.map +1 -0
  1303. package/dist/esm/components/resources/skeleton/DisplayLayout.d.ts.map +1 -1
  1304. package/dist/esm/components/resources/skeleton/DisplayLayout.js +1 -1
  1305. package/dist/esm/components/resources/skeleton/DisplayLayout.js.map +1 -1
  1306. package/dist/esm/components/resources/skeleton/Divider.d.ts.map +1 -1
  1307. package/dist/esm/components/resources/skeleton/Divider.js.map +1 -1
  1308. package/dist/esm/components/resources/skeleton/FieldScopeContext.d.ts.map +1 -1
  1309. package/dist/esm/components/resources/skeleton/FieldScopeContext.js.map +1 -1
  1310. package/dist/esm/components/resources/skeleton/FormErrorSummarySlot.d.ts.map +1 -1
  1311. package/dist/esm/components/resources/skeleton/FormErrorSummarySlot.js.map +1 -1
  1312. package/dist/esm/components/resources/skeleton/FormLayout.d.ts.map +1 -1
  1313. package/dist/esm/components/resources/skeleton/FormLayout.js.map +1 -1
  1314. package/dist/esm/components/resources/skeleton/FormLayoutSlotContext.d.ts.map +1 -1
  1315. package/dist/esm/components/resources/skeleton/FormLayoutSlotContext.js.map +1 -1
  1316. package/dist/esm/components/resources/skeleton/Group.d.ts.map +1 -1
  1317. package/dist/esm/components/resources/skeleton/Group.js +1 -1
  1318. package/dist/esm/components/resources/skeleton/Group.js.map +1 -1
  1319. package/dist/esm/components/resources/skeleton/ObjectScope.d.ts.map +1 -1
  1320. package/dist/esm/components/resources/skeleton/ObjectScope.js.map +1 -1
  1321. package/dist/esm/components/resources/skeleton/ResourceHeaderTitle.d.ts +20 -0
  1322. package/dist/esm/components/resources/skeleton/ResourceHeaderTitle.d.ts.map +1 -1
  1323. package/dist/esm/components/resources/skeleton/ResourceHeaderTitle.js +9 -3
  1324. package/dist/esm/components/resources/skeleton/ResourceHeaderTitle.js.map +1 -1
  1325. package/dist/esm/components/resources/skeleton/Section.d.ts.map +1 -1
  1326. package/dist/esm/components/resources/skeleton/Section.js.map +1 -1
  1327. package/dist/esm/components/resources/skeleton/Section.shared.d.ts.map +1 -1
  1328. package/dist/esm/components/resources/skeleton/Section.shared.js.map +1 -1
  1329. package/dist/esm/components/resources/skeleton/SectionFieldsContext.d.ts.map +1 -1
  1330. package/dist/esm/components/resources/skeleton/SectionFieldsContext.js.map +1 -1
  1331. package/dist/esm/components/resources/skeleton/SectionHostHeadingContext.d.ts.map +1 -1
  1332. package/dist/esm/components/resources/skeleton/SectionHostHeadingContext.js.map +1 -1
  1333. package/dist/esm/components/resources/skeleton/SectionPresentationContext.d.ts +8 -0
  1334. package/dist/esm/components/resources/skeleton/SectionPresentationContext.d.ts.map +1 -1
  1335. package/dist/esm/components/resources/skeleton/SectionPresentationContext.js.map +1 -1
  1336. package/dist/esm/components/resources/skeleton/SubmitButton.d.ts +12 -1
  1337. package/dist/esm/components/resources/skeleton/SubmitButton.d.ts.map +1 -1
  1338. package/dist/esm/components/resources/skeleton/SubmitButton.js +2 -2
  1339. package/dist/esm/components/resources/skeleton/SubmitButton.js.map +1 -1
  1340. package/dist/esm/components/resources/skeleton/SummaryHeader.d.ts.map +1 -1
  1341. package/dist/esm/components/resources/skeleton/SummaryHeader.js.map +1 -1
  1342. package/dist/esm/components/resources/skeleton/SummaryLayout.d.ts.map +1 -1
  1343. package/dist/esm/components/resources/skeleton/SummaryLayout.js +53 -1
  1344. package/dist/esm/components/resources/skeleton/SummaryLayout.js.map +1 -1
  1345. package/dist/esm/components/resources/skeleton/SummaryMeta.d.ts.map +1 -1
  1346. package/dist/esm/components/resources/skeleton/SummaryMeta.js.map +1 -1
  1347. package/dist/esm/components/resources/skeleton/SummaryTitle.d.ts.map +1 -1
  1348. package/dist/esm/components/resources/skeleton/SummaryTitle.js.map +1 -1
  1349. package/dist/esm/components/resources/skeleton/WizardLayout.d.ts.map +1 -1
  1350. package/dist/esm/components/resources/skeleton/WizardLayout.js +7 -0
  1351. package/dist/esm/components/resources/skeleton/WizardLayout.js.map +1 -1
  1352. package/dist/esm/components/resources/skeleton/WizardLayoutContext.d.ts.map +1 -1
  1353. package/dist/esm/components/resources/skeleton/WizardLayoutContext.js.map +1 -1
  1354. package/dist/esm/components/resources/skeleton/WizardStep.d.ts.map +1 -1
  1355. package/dist/esm/components/resources/skeleton/WizardStep.js.map +1 -1
  1356. package/dist/esm/components/resources/skeleton/WizardStepFieldsContext.d.ts.map +1 -1
  1357. package/dist/esm/components/resources/skeleton/WizardStepFieldsContext.js.map +1 -1
  1358. package/dist/esm/components/resources/skeleton/section-consolidation.shared.d.ts.map +1 -1
  1359. package/dist/esm/components/resources/skeleton/section-consolidation.shared.js.map +1 -1
  1360. package/dist/esm/components/resources/skeleton/section-consolidation.utils.d.ts +2 -2
  1361. package/dist/esm/components/resources/skeleton/section-consolidation.utils.d.ts.map +1 -1
  1362. package/dist/esm/components/resources/skeleton/section-consolidation.utils.js +2 -2
  1363. package/dist/esm/components/resources/skeleton/section-consolidation.utils.js.map +1 -1
  1364. package/dist/esm/components/resources/useInlineSearch.d.ts.map +1 -1
  1365. package/dist/esm/components/resources/useInlineSearch.js.map +1 -1
  1366. package/dist/esm/components/resources/useLongPress.d.ts.map +1 -1
  1367. package/dist/esm/components/resources/useLongPress.js.map +1 -1
  1368. package/dist/esm/components/resources-fields/_presets/resource-reference/ResourceFieldDisplayPreset_ResourceReference_Default.d.ts +1 -1
  1369. package/dist/esm/components/resources-fields/_presets/resource-reference/ResourceFieldDisplayPreset_ResourceReference_Default.d.ts.map +1 -1
  1370. package/dist/esm/components/resources-fields/_presets/resource-reference/ResourceFieldDisplayPreset_ResourceReference_Default.js +30 -7
  1371. package/dist/esm/components/resources-fields/_presets/resource-reference/ResourceFieldDisplayPreset_ResourceReference_Default.js.map +1 -1
  1372. package/dist/esm/components/resources-fields/_presets/resource-reference/ResourceFieldEditPreset_ResourceReference_Default.d.ts.map +1 -1
  1373. package/dist/esm/components/resources-fields/_presets/resource-reference/ResourceFieldEditPreset_ResourceReference_Default.js.map +1 -1
  1374. package/dist/esm/components/resources-fields/_presets/resource-reference/ResourceFieldEditPreset_ResourceReference_Default.labels.d.ts.map +1 -1
  1375. package/dist/esm/components/resources-fields/_presets/resource-reference/ResourceFieldEditPreset_ResourceReference_Default.labels.js.map +1 -1
  1376. package/dist/esm/components/resources-fields/_presets/resource-reference/ResourceFieldEditPreset_ResourceReference_Search.d.ts.map +1 -1
  1377. package/dist/esm/components/resources-fields/_presets/resource-reference/ResourceFieldEditPreset_ResourceReference_Search.js.map +1 -1
  1378. package/dist/esm/components/resources-fields/resource-reference/ResourceFieldDisplay_ResourceReference.d.ts +7 -0
  1379. package/dist/esm/components/resources-fields/resource-reference/ResourceFieldDisplay_ResourceReference.d.ts.map +1 -1
  1380. package/dist/esm/components/resources-fields/resource-reference/ResourceFieldDisplay_ResourceReference.js.map +1 -1
  1381. package/dist/esm/components/resources-fields/resource-reference/ResourceFieldEdit_ResourceReference.d.ts.map +1 -1
  1382. package/dist/esm/components/resources-fields/resource-reference/ResourceFieldEdit_ResourceReference.js.map +1 -1
  1383. package/dist/esm/components/resources-fields/resource-reference/resource-reference.shared.utils.d.ts.map +1 -1
  1384. package/dist/esm/components/resources-fields/resource-reference/resource-reference.shared.utils.js.map +1 -1
  1385. package/dist/esm/components/resources-fields/resource-reference/useResourceSearch.d.ts +3 -3
  1386. package/dist/esm/components/resources-fields/resource-reference/useResourceSearch.d.ts.map +1 -1
  1387. package/dist/esm/components/resources-fields/resource-reference/useResourceSearch.js +12 -13
  1388. package/dist/esm/components/resources-fields/resource-reference/useResourceSearch.js.map +1 -1
  1389. package/dist/esm/components/sections/ContentSectionContainer.d.ts +4 -0
  1390. package/dist/esm/components/sections/ContentSectionContainer.d.ts.map +1 -1
  1391. package/dist/esm/components/sections/ContentSectionContainer.js +12 -5
  1392. package/dist/esm/components/sections/ContentSectionContainer.js.map +1 -1
  1393. package/dist/esm/components/sections/ContentSectionContainer.labels.d.ts.map +1 -1
  1394. package/dist/esm/components/sections/ContentSectionContainer.labels.js.map +1 -1
  1395. package/dist/esm/components/sections/accordion.d.ts.map +1 -1
  1396. package/dist/esm/components/sections/accordion.js.map +1 -1
  1397. package/dist/esm/components/sections/card.d.ts +50 -0
  1398. package/dist/esm/components/sections/card.d.ts.map +1 -1
  1399. package/dist/esm/components/sections/card.js +34 -1
  1400. package/dist/esm/components/sections/card.js.map +1 -1
  1401. package/dist/esm/components/sections/collapsible.d.ts.map +1 -1
  1402. package/dist/esm/components/sections/collapsible.js.map +1 -1
  1403. package/dist/esm/components/sections/content-section.d.ts.map +1 -1
  1404. package/dist/esm/components/sections/content-section.js.map +1 -1
  1405. package/dist/esm/components/sections/pagination.d.ts.map +1 -1
  1406. package/dist/esm/components/sections/pagination.js.map +1 -1
  1407. package/dist/esm/components/sections/section-grouping.shared.d.ts +10 -1
  1408. package/dist/esm/components/sections/section-grouping.shared.d.ts.map +1 -1
  1409. package/dist/esm/components/sections/section-grouping.shared.js +11 -2
  1410. package/dist/esm/components/sections/section-grouping.shared.js.map +1 -1
  1411. package/dist/esm/components/sections/stacked-layout.d.ts.map +1 -1
  1412. package/dist/esm/components/sections/stacked-layout.js.map +1 -1
  1413. package/dist/esm/components/sections/stepper.d.ts.map +1 -1
  1414. package/dist/esm/components/sections/stepper.js.map +1 -1
  1415. package/dist/esm/components/sections/surface.d.ts +4 -2
  1416. package/dist/esm/components/sections/surface.d.ts.map +1 -1
  1417. package/dist/esm/components/sections/surface.js +36 -1
  1418. package/dist/esm/components/sections/surface.js.map +1 -1
  1419. package/dist/esm/components/sections/table.d.ts.map +1 -1
  1420. package/dist/esm/components/sections/table.js.map +1 -1
  1421. package/dist/esm/components/sections/tabs.d.ts +44 -0
  1422. package/dist/esm/components/sections/tabs.d.ts.map +1 -1
  1423. package/dist/esm/components/sections/tabs.js +32 -0
  1424. package/dist/esm/components/sections/tabs.js.map +1 -1
  1425. package/dist/esm/components/settings/AppPage_AppearanceSettings.d.ts.map +1 -1
  1426. package/dist/esm/components/settings/AppPage_AppearanceSettings.js.map +1 -1
  1427. package/dist/esm/components/settings/AppPage_AppearanceSettings.labels.d.ts.map +1 -1
  1428. package/dist/esm/components/settings/AppPage_AppearanceSettings.labels.js.map +1 -1
  1429. package/dist/esm/components/settings/AppPage_BillingSettings.d.ts.map +1 -1
  1430. package/dist/esm/components/settings/AppPage_BillingSettings.js.map +1 -1
  1431. package/dist/esm/components/settings/AppPage_BillingSettings.labels.d.ts.map +1 -1
  1432. package/dist/esm/components/settings/AppPage_BillingSettings.labels.js.map +1 -1
  1433. package/dist/esm/components/settings/AppPage_ConnectedAccountsSettings.d.ts +25 -15
  1434. package/dist/esm/components/settings/AppPage_ConnectedAccountsSettings.d.ts.map +1 -1
  1435. package/dist/esm/components/settings/AppPage_ConnectedAccountsSettings.js +110 -29
  1436. package/dist/esm/components/settings/AppPage_ConnectedAccountsSettings.js.map +1 -1
  1437. package/dist/esm/components/settings/AppPage_ConnectedAccountsSettings.labels.d.ts.map +1 -1
  1438. package/dist/esm/components/settings/AppPage_ConnectedAccountsSettings.labels.js +7 -1
  1439. package/dist/esm/components/settings/AppPage_ConnectedAccountsSettings.labels.js.map +1 -1
  1440. package/dist/esm/components/settings/AppPage_InvitationsSettings.d.ts.map +1 -1
  1441. package/dist/esm/components/settings/AppPage_InvitationsSettings.js.map +1 -1
  1442. package/dist/esm/components/settings/AppPage_InvitationsSettings.labels.d.ts.map +1 -1
  1443. package/dist/esm/components/settings/AppPage_InvitationsSettings.labels.js.map +1 -1
  1444. package/dist/esm/components/settings/SettingsHub.d.ts +16 -8
  1445. package/dist/esm/components/settings/SettingsHub.d.ts.map +1 -1
  1446. package/dist/esm/components/settings/SettingsHub.js +188 -41
  1447. package/dist/esm/components/settings/SettingsHub.js.map +1 -1
  1448. package/dist/esm/components/settings/SettingsHub.labels.d.ts.map +1 -1
  1449. package/dist/esm/components/settings/SettingsHub.labels.js +3 -0
  1450. package/dist/esm/components/settings/SettingsHub.labels.js.map +1 -1
  1451. package/dist/esm/components/settings/SettingsResourceOperationPanel.d.ts.map +1 -1
  1452. package/dist/esm/components/settings/SettingsResourceOperationPanel.js +26 -3
  1453. package/dist/esm/components/settings/SettingsResourceOperationPanel.js.map +1 -1
  1454. package/dist/esm/components/settings/SettingsSectionNavigationHost.d.ts.map +1 -1
  1455. package/dist/esm/components/settings/SettingsSectionNavigationHost.js +7 -0
  1456. package/dist/esm/components/settings/SettingsSectionNavigationHost.js.map +1 -1
  1457. package/dist/esm/components/typography/heading.d.ts.map +1 -1
  1458. package/dist/esm/components/typography/heading.js.map +1 -1
  1459. package/dist/esm/components/typography/label.d.ts.map +1 -1
  1460. package/dist/esm/components/typography/label.js.map +1 -1
  1461. package/dist/esm/components/typography/link.d.ts +1 -0
  1462. package/dist/esm/components/typography/link.d.ts.map +1 -1
  1463. package/dist/esm/components/typography/link.js.map +1 -1
  1464. package/dist/esm/components/typography/text.d.ts +7 -1
  1465. package/dist/esm/components/typography/text.d.ts.map +1 -1
  1466. package/dist/esm/components/typography/text.js.map +1 -1
  1467. package/dist/esm/components/typography/truncated-text.d.ts.map +1 -1
  1468. package/dist/esm/components/typography/truncated-text.js.map +1 -1
  1469. package/dist/esm/components/views/ViewLayout_Header.d.ts +4 -3
  1470. package/dist/esm/components/views/ViewLayout_Header.d.ts.map +1 -1
  1471. package/dist/esm/components/views/ViewLayout_Header.js +10 -7
  1472. package/dist/esm/components/views/ViewLayout_Header.js.map +1 -1
  1473. package/dist/esm/components/views/ViewNotFound.d.ts.map +1 -1
  1474. package/dist/esm/components/views/ViewNotFound.js.map +1 -1
  1475. package/dist/esm/components/views/ViewNotFound.labels.d.ts +16 -0
  1476. package/dist/esm/components/views/ViewNotFound.labels.d.ts.map +1 -1
  1477. package/dist/esm/components/views/ViewNotFound.labels.js +33 -9
  1478. package/dist/esm/components/views/ViewNotFound.labels.js.map +1 -1
  1479. package/dist/esm/components/views/chart-view/ChartEmptyState.d.ts.map +1 -1
  1480. package/dist/esm/components/views/chart-view/ChartEmptyState.js +5 -5
  1481. package/dist/esm/components/views/chart-view/ChartEmptyState.js.map +1 -1
  1482. package/dist/esm/components/views/chart-view/ChartErrorState.d.ts.map +1 -1
  1483. package/dist/esm/components/views/chart-view/ChartErrorState.js +4 -6
  1484. package/dist/esm/components/views/chart-view/ChartErrorState.js.map +1 -1
  1485. package/dist/esm/components/views/chart-view/ChartLoadingSkeleton.d.ts.map +1 -1
  1486. package/dist/esm/components/views/chart-view/ChartLoadingSkeleton.js.map +1 -1
  1487. package/dist/esm/components/views/chart-view/ChartView.d.ts.map +1 -1
  1488. package/dist/esm/components/views/chart-view/ChartView.js +10 -3
  1489. package/dist/esm/components/views/chart-view/ChartView.js.map +1 -1
  1490. package/dist/esm/components/views/chart-view/ChartView.labels.d.ts.map +1 -1
  1491. package/dist/esm/components/views/chart-view/ChartView.labels.js.map +1 -1
  1492. package/dist/esm/components/views/chart-view/ChartView.lazy.d.ts +3 -1
  1493. package/dist/esm/components/views/chart-view/ChartView.lazy.d.ts.map +1 -1
  1494. package/dist/esm/components/views/chart-view/ChartView.lazy.js +22 -2
  1495. package/dist/esm/components/views/chart-view/ChartView.lazy.js.map +1 -1
  1496. package/dist/esm/components/views/chart-view/ChartWidget.d.ts.map +1 -1
  1497. package/dist/esm/components/views/chart-view/ChartWidget.js.map +1 -1
  1498. package/dist/esm/components/views/chart-view/ChartWidget.labels.d.ts.map +1 -1
  1499. package/dist/esm/components/views/chart-view/ChartWidget.labels.js.map +1 -1
  1500. package/dist/esm/components/views/chart-view/WildoEChart.d.ts.map +1 -1
  1501. package/dist/esm/components/views/chart-view/WildoEChart.js.map +1 -1
  1502. package/dist/esm/components/views/chart-view/chart-export.utils.d.ts.map +1 -1
  1503. package/dist/esm/components/views/chart-view/chart-export.utils.js.map +1 -1
  1504. package/dist/esm/components/views/chart-view/chart-runtime.utils.d.ts.map +1 -1
  1505. package/dist/esm/components/views/chart-view/chart-runtime.utils.js.map +1 -1
  1506. package/dist/esm/components/views/chart-view/chart-theme-bridge.d.ts.map +1 -1
  1507. package/dist/esm/components/views/chart-view/chart-theme-bridge.js.map +1 -1
  1508. package/dist/esm/components/views/chart-view/chart-view.utils.d.ts.map +1 -1
  1509. package/dist/esm/components/views/chart-view/chart-view.utils.js.map +1 -1
  1510. package/dist/esm/components/views/chart-view/dev/ChartView.example.d.ts.map +1 -1
  1511. package/dist/esm/components/views/chart-view/dev/ChartView.example.js.map +1 -1
  1512. package/dist/esm/components/views/chart-view/echarts-setup.d.ts.map +1 -1
  1513. package/dist/esm/components/views/chart-view/echarts-setup.js.map +1 -1
  1514. package/dist/esm/components/views/chart-view/enum-color-bridge.d.ts +16 -13
  1515. package/dist/esm/components/views/chart-view/enum-color-bridge.d.ts.map +1 -1
  1516. package/dist/esm/components/views/chart-view/enum-color-bridge.js +33 -30
  1517. package/dist/esm/components/views/chart-view/enum-color-bridge.js.map +1 -1
  1518. package/dist/esm/components/views/chart-view/option-builder/builder-utils.d.ts +11 -4
  1519. package/dist/esm/components/views/chart-view/option-builder/builder-utils.d.ts.map +1 -1
  1520. package/dist/esm/components/views/chart-view/option-builder/builder-utils.js +16 -6
  1521. package/dist/esm/components/views/chart-view/option-builder/builder-utils.js.map +1 -1
  1522. package/dist/esm/components/views/chart-view/option-builder/builders/bar-family.builder.d.ts.map +1 -1
  1523. package/dist/esm/components/views/chart-view/option-builder/builders/bar-family.builder.js +3 -3
  1524. package/dist/esm/components/views/chart-view/option-builder/builders/bar-family.builder.js.map +1 -1
  1525. package/dist/esm/components/views/chart-view/option-builder/builders/composed.builder.d.ts.map +1 -1
  1526. package/dist/esm/components/views/chart-view/option-builder/builders/composed.builder.js +1 -1
  1527. package/dist/esm/components/views/chart-view/option-builder/builders/composed.builder.js.map +1 -1
  1528. package/dist/esm/components/views/chart-view/option-builder/builders/funnel.builder.d.ts.map +1 -1
  1529. package/dist/esm/components/views/chart-view/option-builder/builders/funnel.builder.js +1 -1
  1530. package/dist/esm/components/views/chart-view/option-builder/builders/funnel.builder.js.map +1 -1
  1531. package/dist/esm/components/views/chart-view/option-builder/builders/gauge.builder.d.ts.map +1 -1
  1532. package/dist/esm/components/views/chart-view/option-builder/builders/gauge.builder.js.map +1 -1
  1533. package/dist/esm/components/views/chart-view/option-builder/builders/heatmap.builder.d.ts.map +1 -1
  1534. package/dist/esm/components/views/chart-view/option-builder/builders/heatmap.builder.js.map +1 -1
  1535. package/dist/esm/components/views/chart-view/option-builder/builders/hierarchical-family.builder.d.ts.map +1 -1
  1536. package/dist/esm/components/views/chart-view/option-builder/builders/hierarchical-family.builder.js.map +1 -1
  1537. package/dist/esm/components/views/chart-view/option-builder/builders/line-family.builder.d.ts.map +1 -1
  1538. package/dist/esm/components/views/chart-view/option-builder/builders/line-family.builder.js +2 -2
  1539. package/dist/esm/components/views/chart-view/option-builder/builders/line-family.builder.js.map +1 -1
  1540. package/dist/esm/components/views/chart-view/option-builder/builders/parallel.builder.d.ts.map +1 -1
  1541. package/dist/esm/components/views/chart-view/option-builder/builders/parallel.builder.js.map +1 -1
  1542. package/dist/esm/components/views/chart-view/option-builder/builders/pie-family.builder.d.ts.map +1 -1
  1543. package/dist/esm/components/views/chart-view/option-builder/builders/pie-family.builder.js +1 -1
  1544. package/dist/esm/components/views/chart-view/option-builder/builders/pie-family.builder.js.map +1 -1
  1545. package/dist/esm/components/views/chart-view/option-builder/builders/radar.builder.d.ts.map +1 -1
  1546. package/dist/esm/components/views/chart-view/option-builder/builders/radar.builder.js +1 -1
  1547. package/dist/esm/components/views/chart-view/option-builder/builders/radar.builder.js.map +1 -1
  1548. package/dist/esm/components/views/chart-view/option-builder/builders/sankey.builder.d.ts.map +1 -1
  1549. package/dist/esm/components/views/chart-view/option-builder/builders/sankey.builder.js.map +1 -1
  1550. package/dist/esm/components/views/chart-view/option-builder/builders/scatter-family.builder.d.ts.map +1 -1
  1551. package/dist/esm/components/views/chart-view/option-builder/builders/scatter-family.builder.js +1 -1
  1552. package/dist/esm/components/views/chart-view/option-builder/builders/scatter-family.builder.js.map +1 -1
  1553. package/dist/esm/components/views/chart-view/option-builder/builders/statistical-family.builder.d.ts.map +1 -1
  1554. package/dist/esm/components/views/chart-view/option-builder/builders/statistical-family.builder.js.map +1 -1
  1555. package/dist/esm/components/views/chart-view/option-builder/chart-type-builder.interface.d.ts +5 -0
  1556. package/dist/esm/components/views/chart-view/option-builder/chart-type-builder.interface.d.ts.map +1 -1
  1557. package/dist/esm/components/views/chart-view/option-builder/chart-type-builder.interface.js.map +1 -1
  1558. package/dist/esm/components/views/chart-view/option-builder/echarts-option-builder.d.ts.map +1 -1
  1559. package/dist/esm/components/views/chart-view/option-builder/echarts-option-builder.js +2 -1
  1560. package/dist/esm/components/views/chart-view/option-builder/echarts-option-builder.js.map +1 -1
  1561. package/dist/esm/components/views/composite-view/CompositeLayout.d.ts +4 -0
  1562. package/dist/esm/components/views/composite-view/CompositeLayout.d.ts.map +1 -1
  1563. package/dist/esm/components/views/composite-view/CompositeLayout.js +14 -2
  1564. package/dist/esm/components/views/composite-view/CompositeLayout.js.map +1 -1
  1565. package/dist/esm/components/views/composite-view/CompositeView.d.ts.map +1 -1
  1566. package/dist/esm/components/views/composite-view/CompositeView.js.map +1 -1
  1567. package/dist/esm/components/views/composite-view/CompositeViewContext.d.ts.map +1 -1
  1568. package/dist/esm/components/views/composite-view/CompositeViewContext.js.map +1 -1
  1569. package/dist/esm/components/views/composite-view/useCompositeResourceOperationContextBuilder.d.ts.map +1 -1
  1570. package/dist/esm/components/views/composite-view/useCompositeResourceOperationContextBuilder.js.map +1 -1
  1571. package/dist/esm/components/views/composite-view/useHostRecordDerivedParentContext.d.ts.map +1 -1
  1572. package/dist/esm/components/views/composite-view/useHostRecordDerivedParentContext.js.map +1 -1
  1573. package/dist/esm/components/views/execution-view/ExecutionView.d.ts.map +1 -1
  1574. package/dist/esm/components/views/execution-view/ExecutionView.js.map +1 -1
  1575. package/dist/esm/components/views/execution-view/ExecutionView.labels.d.ts.map +1 -1
  1576. package/dist/esm/components/views/execution-view/ExecutionView.labels.js.map +1 -1
  1577. package/dist/esm/components/views/flows-actors-view/FlowsActorsView.d.ts.map +1 -1
  1578. package/dist/esm/components/views/flows-actors-view/FlowsActorsView.js +77 -34
  1579. package/dist/esm/components/views/flows-actors-view/FlowsActorsView.js.map +1 -1
  1580. package/dist/esm/components/views/flows-actors-view/FlowsActorsView.labels.d.ts.map +1 -1
  1581. package/dist/esm/components/views/flows-actors-view/FlowsActorsView.labels.js +24 -0
  1582. package/dist/esm/components/views/flows-actors-view/FlowsActorsView.labels.js.map +1 -1
  1583. package/dist/esm/components/views/full-custom-view/FullCustomView.d.ts.map +1 -1
  1584. package/dist/esm/components/views/full-custom-view/FullCustomView.js.map +1 -1
  1585. package/dist/esm/components/views/onboarding-view/OnboardingView.d.ts.map +1 -1
  1586. package/dist/esm/components/views/onboarding-view/OnboardingView.js +42 -48
  1587. package/dist/esm/components/views/onboarding-view/OnboardingView.js.map +1 -1
  1588. package/dist/esm/components/views/onboarding-view/OnboardingView.labels.d.ts.map +1 -1
  1589. package/dist/esm/components/views/onboarding-view/OnboardingView.labels.js.map +1 -1
  1590. package/dist/esm/components/views/onboarding-view/onboarding-view.utils.d.ts.map +1 -1
  1591. package/dist/esm/components/views/onboarding-view/onboarding-view.utils.js.map +1 -1
  1592. package/dist/esm/core/app-shell/PortalContainerContext.d.ts.map +1 -1
  1593. package/dist/esm/core/app-shell/PortalContainerContext.js.map +1 -1
  1594. package/dist/esm/core/app-shell/app-shell.schemas.d.ts +31 -4
  1595. package/dist/esm/core/app-shell/app-shell.schemas.d.ts.map +1 -1
  1596. package/dist/esm/core/app-shell/app-shell.schemas.js.map +1 -1
  1597. package/dist/esm/core/app-shell/app-shell.utils.d.ts.map +1 -1
  1598. package/dist/esm/core/app-shell/app-shell.utils.js.map +1 -1
  1599. package/dist/esm/core/app-shell/hosted-components.utils.d.ts.map +1 -1
  1600. package/dist/esm/core/app-shell/hosted-components.utils.js.map +1 -1
  1601. package/dist/esm/core/app-shell/useAppShellLayout.d.ts.map +1 -1
  1602. package/dist/esm/core/app-shell/useAppShellLayout.js.map +1 -1
  1603. package/dist/esm/core/app-shell/usePublicShellLayout.d.ts +2 -1
  1604. package/dist/esm/core/app-shell/usePublicShellLayout.d.ts.map +1 -1
  1605. package/dist/esm/core/app-shell/usePublicShellLayout.js +15 -2
  1606. package/dist/esm/core/app-shell/usePublicShellLayout.js.map +1 -1
  1607. package/dist/esm/core/automated-layout/automated-layout.frontend.schemas.d.ts.map +1 -1
  1608. package/dist/esm/core/automated-layout/automated-layout.frontend.schemas.js.map +1 -1
  1609. package/dist/esm/core/automated-layout/automated-layout.frontend.utils.d.ts +16 -9
  1610. package/dist/esm/core/automated-layout/automated-layout.frontend.utils.d.ts.map +1 -1
  1611. package/dist/esm/core/automated-layout/automated-layout.frontend.utils.js +106 -13
  1612. package/dist/esm/core/automated-layout/automated-layout.frontend.utils.js.map +1 -1
  1613. package/dist/esm/core/automated-layout/composite-value-defaults.frontend.utils.d.ts +39 -0
  1614. package/dist/esm/core/automated-layout/composite-value-defaults.frontend.utils.d.ts.map +1 -0
  1615. package/dist/esm/core/automated-layout/composite-value-defaults.frontend.utils.js +100 -0
  1616. package/dist/esm/core/automated-layout/composite-value-defaults.frontend.utils.js.map +1 -0
  1617. package/dist/esm/core/automated-layout/default-layout-generator.frontend.utils.d.ts +21 -7
  1618. package/dist/esm/core/automated-layout/default-layout-generator.frontend.utils.d.ts.map +1 -1
  1619. package/dist/esm/core/automated-layout/default-layout-generator.frontend.utils.js +157 -120
  1620. package/dist/esm/core/automated-layout/default-layout-generator.frontend.utils.js.map +1 -1
  1621. package/dist/esm/core/billing/BillingContext.d.ts +15 -3
  1622. package/dist/esm/core/billing/BillingContext.d.ts.map +1 -1
  1623. package/dist/esm/core/billing/BillingContext.js +91 -28
  1624. package/dist/esm/core/billing/BillingContext.js.map +1 -1
  1625. package/dist/esm/core/billing/BillingErrorNotifier.d.ts.map +1 -1
  1626. package/dist/esm/core/billing/BillingErrorNotifier.js +9 -5
  1627. package/dist/esm/core/billing/BillingErrorNotifier.js.map +1 -1
  1628. package/dist/esm/core/billing/billing-launcher.d.ts.map +1 -1
  1629. package/dist/esm/core/billing/billing-launcher.js.map +1 -1
  1630. package/dist/esm/core/billing/billing-provider-display.frontend.utils.d.ts.map +1 -1
  1631. package/dist/esm/core/billing/billing-provider-display.frontend.utils.js.map +1 -1
  1632. package/dist/esm/core/billing/useBilling.d.ts.map +1 -1
  1633. package/dist/esm/core/billing/useBilling.js.map +1 -1
  1634. package/dist/esm/core/billing/useBillingAction.d.ts.map +1 -1
  1635. package/dist/esm/core/billing/useBillingAction.js +6 -5
  1636. package/dist/esm/core/billing/useBillingAction.js.map +1 -1
  1637. package/dist/esm/core/billing/useBillingPlanChange.d.ts +37 -0
  1638. package/dist/esm/core/billing/useBillingPlanChange.d.ts.map +1 -0
  1639. package/dist/esm/core/billing/useBillingPlanChange.js +113 -0
  1640. package/dist/esm/core/billing/useBillingPlanChange.js.map +1 -0
  1641. package/dist/esm/core/billing/useSafeBillingActionExecutor.d.ts +3 -0
  1642. package/dist/esm/core/billing/useSafeBillingActionExecutor.d.ts.map +1 -1
  1643. package/dist/esm/core/billing/useSafeBillingActionExecutor.js +7 -5
  1644. package/dist/esm/core/billing/useSafeBillingActionExecutor.js.map +1 -1
  1645. package/dist/esm/core/branding/useBrandIdentity.d.ts.map +1 -1
  1646. package/dist/esm/core/branding/useBrandIdentity.js.map +1 -1
  1647. package/dist/esm/core/branding/useBrandPresentation.d.ts.map +1 -1
  1648. package/dist/esm/core/branding/useBrandPresentation.js.map +1 -1
  1649. package/dist/esm/core/commons/devices.frontend.schemas.d.ts.map +1 -1
  1650. package/dist/esm/core/commons/devices.frontend.schemas.js.map +1 -1
  1651. package/dist/esm/core/commons/local-storage.frontend.schemas.d.ts +15 -0
  1652. package/dist/esm/core/commons/local-storage.frontend.schemas.d.ts.map +1 -1
  1653. package/dist/esm/core/commons/local-storage.frontend.schemas.js +16 -0
  1654. package/dist/esm/core/commons/local-storage.frontend.schemas.js.map +1 -1
  1655. package/dist/esm/core/commons/window-event.frontend.schemas.d.ts.map +1 -1
  1656. package/dist/esm/core/commons/window-event.frontend.schemas.js.map +1 -1
  1657. package/dist/esm/core/companion/companion-exports.frontend.definitions.d.ts.map +1 -1
  1658. package/dist/esm/core/companion/companion-exports.frontend.definitions.js.map +1 -1
  1659. package/dist/esm/core/components-registry/ComponentNotInjected.d.ts.map +1 -1
  1660. package/dist/esm/core/components-registry/ComponentNotInjected.js.map +1 -1
  1661. package/dist/esm/core/components-registry/assert-registry-completeness.frontend.helper.d.ts.map +1 -1
  1662. package/dist/esm/core/components-registry/assert-registry-completeness.frontend.helper.js +23 -3
  1663. package/dist/esm/core/components-registry/assert-registry-completeness.frontend.helper.js.map +1 -1
  1664. package/dist/esm/core/components-registry/component-registry-loader.frontend.service.d.ts.map +1 -1
  1665. package/dist/esm/core/components-registry/component-registry-loader.frontend.service.js.map +1 -1
  1666. package/dist/esm/core/components-registry/component-registry.frontend.schemas.d.ts +24 -2
  1667. package/dist/esm/core/components-registry/component-registry.frontend.schemas.d.ts.map +1 -1
  1668. package/dist/esm/core/components-registry/component-registry.frontend.schemas.js.map +1 -1
  1669. package/dist/esm/core/components-registry/component-registry.frontend.service.d.ts +12 -12
  1670. package/dist/esm/core/components-registry/component-registry.frontend.service.d.ts.map +1 -1
  1671. package/dist/esm/core/components-registry/component-registry.frontend.service.js.map +1 -1
  1672. package/dist/esm/core/components-registry/component-resolver.frontend.helper.d.ts.map +1 -1
  1673. package/dist/esm/core/components-registry/component-resolver.frontend.helper.js.map +1 -1
  1674. package/dist/esm/core/components-registry/provider-component-registry.frontend.service.d.ts +70 -15
  1675. package/dist/esm/core/components-registry/provider-component-registry.frontend.service.d.ts.map +1 -1
  1676. package/dist/esm/core/components-registry/provider-component-registry.frontend.service.js +105 -17
  1677. package/dist/esm/core/components-registry/provider-component-registry.frontend.service.js.map +1 -1
  1678. package/dist/esm/core/components-registry/register-framework-layouts.d.ts.map +1 -1
  1679. package/dist/esm/core/components-registry/register-framework-layouts.js +4 -0
  1680. package/dist/esm/core/components-registry/register-framework-layouts.js.map +1 -1
  1681. package/dist/esm/core/components-registry/useProviderComponent.frontend.hooks.d.ts +12 -5
  1682. package/dist/esm/core/components-registry/useProviderComponent.frontend.hooks.d.ts.map +1 -1
  1683. package/dist/esm/core/components-registry/useProviderComponent.frontend.hooks.js +12 -5
  1684. package/dist/esm/core/components-registry/useProviderComponent.frontend.hooks.js.map +1 -1
  1685. package/dist/esm/core/config/app-configuration-frontend.schemas.d.ts +31 -31
  1686. package/dist/esm/core/config/app-configuration-frontend.schemas.d.ts.map +1 -1
  1687. package/dist/esm/core/config/app-configuration-frontend.schemas.js +10 -0
  1688. package/dist/esm/core/config/app-configuration-frontend.schemas.js.map +1 -1
  1689. package/dist/esm/core/config/app-level-components.frontend.schemas.d.ts.map +1 -1
  1690. package/dist/esm/core/config/app-level-components.frontend.schemas.js.map +1 -1
  1691. package/dist/esm/core/config/chart-view.frontend.schemas.d.ts +14 -14
  1692. package/dist/esm/core/config/chart-view.frontend.schemas.d.ts.map +1 -1
  1693. package/dist/esm/core/config/chart-view.frontend.schemas.js.map +1 -1
  1694. package/dist/esm/core/config/composite-view.schemas.d.ts +22 -0
  1695. package/dist/esm/core/config/composite-view.schemas.d.ts.map +1 -1
  1696. package/dist/esm/core/config/composite-view.schemas.js +10 -0
  1697. package/dist/esm/core/config/composite-view.schemas.js.map +1 -1
  1698. package/dist/esm/core/config/config-merge-utilities.d.ts.map +1 -1
  1699. package/dist/esm/core/config/config-merge-utilities.js.map +1 -1
  1700. package/dist/esm/core/config/engine-settings-destinations.d.ts.map +1 -1
  1701. package/dist/esm/core/config/engine-settings-destinations.js +396 -17
  1702. package/dist/esm/core/config/engine-settings-destinations.js.map +1 -1
  1703. package/dist/esm/core/config/execution-view.schemas.d.ts +3 -3
  1704. package/dist/esm/core/config/execution-view.schemas.d.ts.map +1 -1
  1705. package/dist/esm/core/config/execution-view.schemas.js +1 -1
  1706. package/dist/esm/core/config/execution-view.schemas.js.map +1 -1
  1707. package/dist/esm/core/config/flows-actors-view.schemas.d.ts +3 -2
  1708. package/dist/esm/core/config/flows-actors-view.schemas.d.ts.map +1 -1
  1709. package/dist/esm/core/config/flows-actors-view.schemas.js +1 -1
  1710. package/dist/esm/core/config/flows-actors-view.schemas.js.map +1 -1
  1711. package/dist/esm/core/config/full-custom-view.schemas.d.ts +9 -0
  1712. package/dist/esm/core/config/full-custom-view.schemas.d.ts.map +1 -1
  1713. package/dist/esm/core/config/full-custom-view.schemas.js +16 -0
  1714. package/dist/esm/core/config/full-custom-view.schemas.js.map +1 -1
  1715. package/dist/esm/core/config/inserted-view-launcher.schemas.d.ts.map +1 -1
  1716. package/dist/esm/core/config/inserted-view-launcher.schemas.js.map +1 -1
  1717. package/dist/esm/core/config/inserted-view.frontend.schemas.d.ts.map +1 -1
  1718. package/dist/esm/core/config/inserted-view.frontend.schemas.js.map +1 -1
  1719. package/dist/esm/core/config/launcher-items.frontend.schemas.d.ts +19 -5
  1720. package/dist/esm/core/config/launcher-items.frontend.schemas.d.ts.map +1 -1
  1721. package/dist/esm/core/config/launcher-items.frontend.schemas.js.map +1 -1
  1722. package/dist/esm/core/config/onboarding-view.frontend.schemas.d.ts +18 -10
  1723. package/dist/esm/core/config/onboarding-view.frontend.schemas.d.ts.map +1 -1
  1724. package/dist/esm/core/config/onboarding-view.frontend.schemas.js +17 -21
  1725. package/dist/esm/core/config/onboarding-view.frontend.schemas.js.map +1 -1
  1726. package/dist/esm/core/config/resource-owned-view-resolution.frontend.utils.d.ts.map +1 -1
  1727. package/dist/esm/core/config/resource-owned-view-resolution.frontend.utils.js.map +1 -1
  1728. package/dist/esm/core/config/settings-hub-gating.frontend.utils.d.ts.map +1 -1
  1729. package/dist/esm/core/config/settings-hub-gating.frontend.utils.js.map +1 -1
  1730. package/dist/esm/core/config/settings-hub-presentation.frontend.utils.d.ts +22 -0
  1731. package/dist/esm/core/config/settings-hub-presentation.frontend.utils.d.ts.map +1 -0
  1732. package/dist/esm/core/config/settings-hub-presentation.frontend.utils.js +91 -0
  1733. package/dist/esm/core/config/settings-hub-presentation.frontend.utils.js.map +1 -0
  1734. package/dist/esm/core/config/settings-hub.frontend.schemas.d.ts +29 -10
  1735. package/dist/esm/core/config/settings-hub.frontend.schemas.d.ts.map +1 -1
  1736. package/dist/esm/core/config/settings-hub.frontend.schemas.js +5 -2
  1737. package/dist/esm/core/config/settings-hub.frontend.schemas.js.map +1 -1
  1738. package/dist/esm/core/config/useSettingsHubConfig.d.ts +24 -3
  1739. package/dist/esm/core/config/useSettingsHubConfig.d.ts.map +1 -1
  1740. package/dist/esm/core/config/useSettingsHubConfig.js +30 -9
  1741. package/dist/esm/core/config/useSettingsHubConfig.js.map +1 -1
  1742. package/dist/esm/core/config/useVisibleSettingsHubConfig.d.ts +28 -1
  1743. package/dist/esm/core/config/useVisibleSettingsHubConfig.d.ts.map +1 -1
  1744. package/dist/esm/core/config/useVisibleSettingsHubConfig.js +36 -4
  1745. package/dist/esm/core/config/useVisibleSettingsHubConfig.js.map +1 -1
  1746. package/dist/esm/core/config/verify-feature-references.frontend.d.ts.map +1 -1
  1747. package/dist/esm/core/config/verify-feature-references.frontend.js.map +1 -1
  1748. package/dist/esm/core/config/verify-launcher-content.d.ts.map +1 -1
  1749. package/dist/esm/core/config/verify-launcher-content.js.map +1 -1
  1750. package/dist/esm/core/config/verify-settings-hub-content.d.ts +13 -2
  1751. package/dist/esm/core/config/verify-settings-hub-content.d.ts.map +1 -1
  1752. package/dist/esm/core/config/verify-settings-hub-content.js +33 -2
  1753. package/dist/esm/core/config/verify-settings-hub-content.js.map +1 -1
  1754. package/dist/esm/core/config/view-label-declaration.schemas.d.ts +22 -0
  1755. package/dist/esm/core/config/view-label-declaration.schemas.d.ts.map +1 -0
  1756. package/dist/esm/core/config/view-label-declaration.schemas.js +1 -0
  1757. package/dist/esm/core/config/view-label-declaration.schemas.js.map +1 -0
  1758. package/dist/esm/core/config/views-frontend.schemas.d.ts.map +1 -1
  1759. package/dist/esm/core/config/views-frontend.schemas.js.map +1 -1
  1760. package/dist/esm/core/enums/common-enum-registry.d.ts +28 -5
  1761. package/dist/esm/core/enums/common-enum-registry.d.ts.map +1 -1
  1762. package/dist/esm/core/enums/common-enum-registry.js +41 -7
  1763. package/dist/esm/core/enums/common-enum-registry.js.map +1 -1
  1764. package/dist/esm/core/errors/ErrorBoundary.d.ts.map +1 -1
  1765. package/dist/esm/core/errors/ErrorBoundary.js.map +1 -1
  1766. package/dist/esm/core/errors/ErrorContext.d.ts.map +1 -1
  1767. package/dist/esm/core/errors/ErrorContext.js +12 -29
  1768. package/dist/esm/core/errors/ErrorContext.js.map +1 -1
  1769. package/dist/esm/core/errors/ErrorModalContent.d.ts +18 -0
  1770. package/dist/esm/core/errors/ErrorModalContent.d.ts.map +1 -0
  1771. package/dist/esm/core/errors/ErrorModalContent.js +18 -0
  1772. package/dist/esm/core/errors/ErrorModalContent.js.map +1 -0
  1773. package/dist/esm/core/errors/GlobalErrorHandler.d.ts.map +1 -1
  1774. package/dist/esm/core/errors/GlobalErrorHandler.js +12 -41
  1775. package/dist/esm/core/errors/GlobalErrorHandler.js.map +1 -1
  1776. package/dist/esm/core/errors/RouterErrorBoundary.d.ts.map +1 -1
  1777. package/dist/esm/core/errors/RouterErrorBoundary.js.map +1 -1
  1778. package/dist/esm/core/errors/error-management.frontend.service.d.ts.map +1 -1
  1779. package/dist/esm/core/errors/error-management.frontend.service.js +4 -4
  1780. package/dist/esm/core/errors/error-management.frontend.service.js.map +1 -1
  1781. package/dist/esm/core/errors/errors-builder.frontend.services.d.ts.map +1 -1
  1782. package/dist/esm/core/errors/errors-builder.frontend.services.js +3 -3
  1783. package/dist/esm/core/errors/errors-builder.frontend.services.js.map +1 -1
  1784. package/dist/esm/core/errors/errors.frontend.schemas.d.ts +24 -11
  1785. package/dist/esm/core/errors/errors.frontend.schemas.d.ts.map +1 -1
  1786. package/dist/esm/core/errors/errors.frontend.schemas.js +8 -11
  1787. package/dist/esm/core/errors/errors.frontend.schemas.js.map +1 -1
  1788. package/dist/esm/core/errors/http-error-behavior.frontend.schemas.d.ts.map +1 -1
  1789. package/dist/esm/core/errors/http-error-behavior.frontend.schemas.js.map +1 -1
  1790. package/dist/esm/core/errors/useError.d.ts.map +1 -1
  1791. package/dist/esm/core/errors/useError.js.map +1 -1
  1792. package/dist/esm/core/errors/useUserFacingErrorMessage.d.ts +40 -0
  1793. package/dist/esm/core/errors/useUserFacingErrorMessage.d.ts.map +1 -0
  1794. package/dist/esm/core/errors/useUserFacingErrorMessage.js +48 -0
  1795. package/dist/esm/core/errors/useUserFacingErrorMessage.js.map +1 -0
  1796. package/dist/esm/core/errors/user-facing-error-message.frontend.utils.d.ts +141 -0
  1797. package/dist/esm/core/errors/user-facing-error-message.frontend.utils.d.ts.map +1 -0
  1798. package/dist/esm/core/errors/user-facing-error-message.frontend.utils.js +256 -0
  1799. package/dist/esm/core/errors/user-facing-error-message.frontend.utils.js.map +1 -0
  1800. package/dist/esm/core/errors/withErrorBoundary.d.ts.map +1 -1
  1801. package/dist/esm/core/errors/withErrorBoundary.js.map +1 -1
  1802. package/dist/esm/core/events/EventBusContext.d.ts.map +1 -1
  1803. package/dist/esm/core/events/EventBusContext.js.map +1 -1
  1804. package/dist/esm/core/events/NotificationContext.d.ts +22 -0
  1805. package/dist/esm/core/events/NotificationContext.d.ts.map +1 -1
  1806. package/dist/esm/core/events/NotificationContext.js +239 -70
  1807. package/dist/esm/core/events/NotificationContext.js.map +1 -1
  1808. package/dist/esm/core/events/event-bus.frontend.service.d.ts.map +1 -1
  1809. package/dist/esm/core/events/event-bus.frontend.service.js.map +1 -1
  1810. package/dist/esm/core/events/events.frontend.schemas.d.ts +123 -48
  1811. package/dist/esm/core/events/events.frontend.schemas.d.ts.map +1 -1
  1812. package/dist/esm/core/events/events.frontend.schemas.js +68 -7
  1813. package/dist/esm/core/events/events.frontend.schemas.js.map +1 -1
  1814. package/dist/esm/core/events/notification-display-policy.frontend.schemas.d.ts +0 -13
  1815. package/dist/esm/core/events/notification-display-policy.frontend.schemas.d.ts.map +1 -1
  1816. package/dist/esm/core/events/notification-display-policy.frontend.schemas.js +0 -23
  1817. package/dist/esm/core/events/notification-display-policy.frontend.schemas.js.map +1 -1
  1818. package/dist/esm/core/events/toast.d.ts.map +1 -1
  1819. package/dist/esm/core/events/toast.js.map +1 -1
  1820. package/dist/esm/core/events/useEventBus.d.ts.map +1 -1
  1821. package/dist/esm/core/events/useEventBus.js.map +1 -1
  1822. package/dist/esm/core/events/useNotification.d.ts.map +1 -1
  1823. package/dist/esm/core/events/useNotification.js.map +1 -1
  1824. package/dist/esm/core/execution/ExecutionDirtyMarkerScopeContext.d.ts.map +1 -1
  1825. package/dist/esm/core/execution/ExecutionDirtyMarkerScopeContext.js.map +1 -1
  1826. package/dist/esm/core/execution/ExecutionRuntimeContext.d.ts.map +1 -1
  1827. package/dist/esm/core/execution/ExecutionRuntimeContext.js.map +1 -1
  1828. package/dist/esm/core/execution/execution-anchor.utils.d.ts.map +1 -1
  1829. package/dist/esm/core/execution/execution-anchor.utils.js.map +1 -1
  1830. package/dist/esm/core/execution/execution-dirty-markers.utils.d.ts.map +1 -1
  1831. package/dist/esm/core/execution/execution-dirty-markers.utils.js.map +1 -1
  1832. package/dist/esm/core/execution/execution-failure-handling.utils.d.ts.map +1 -1
  1833. package/dist/esm/core/execution/execution-failure-handling.utils.js.map +1 -1
  1834. package/dist/esm/core/execution/execution-outcome-emission.utils.d.ts.map +1 -1
  1835. package/dist/esm/core/execution/execution-outcome-emission.utils.js +3 -4
  1836. package/dist/esm/core/execution/execution-outcome-emission.utils.js.map +1 -1
  1837. package/dist/esm/core/execution/execution-participation.utils.d.ts.map +1 -1
  1838. package/dist/esm/core/execution/execution-participation.utils.js.map +1 -1
  1839. package/dist/esm/core/execution/useExecution.d.ts +7 -1
  1840. package/dist/esm/core/execution/useExecution.d.ts.map +1 -1
  1841. package/dist/esm/core/execution/useExecution.js.map +1 -1
  1842. package/dist/esm/core/execution/useExecutionDirtyBridge.d.ts.map +1 -1
  1843. package/dist/esm/core/execution/useExecutionDirtyBridge.js.map +1 -1
  1844. package/dist/esm/core/execution/useExecutionParticipationDataPrefetch.d.ts.map +1 -1
  1845. package/dist/esm/core/execution/useExecutionParticipationDataPrefetch.js.map +1 -1
  1846. package/dist/esm/core/execution/useExecutionParticipationPrefetch.d.ts.map +1 -1
  1847. package/dist/esm/core/execution/useExecutionParticipationPrefetch.js.map +1 -1
  1848. package/dist/esm/core/execution/useExecutionParticipationRMM.d.ts.map +1 -1
  1849. package/dist/esm/core/execution/useExecutionParticipationRMM.js.map +1 -1
  1850. package/dist/esm/core/execution/useExecutionResourceOperationContextBuilder.d.ts.map +1 -1
  1851. package/dist/esm/core/execution/useExecutionResourceOperationContextBuilder.js.map +1 -1
  1852. package/dist/esm/core/execution/useExecutionResourceOperationSurface.d.ts.map +1 -1
  1853. package/dist/esm/core/execution/useExecutionResourceOperationSurface.js +8 -1
  1854. package/dist/esm/core/execution/useExecutionResourceOperationSurface.js.map +1 -1
  1855. package/dist/esm/core/external-providers/ProviderFilePickerHost.d.ts +12 -0
  1856. package/dist/esm/core/external-providers/ProviderFilePickerHost.d.ts.map +1 -1
  1857. package/dist/esm/core/external-providers/ProviderFilePickerHost.js +33 -3
  1858. package/dist/esm/core/external-providers/ProviderFilePickerHost.js.map +1 -1
  1859. package/dist/esm/core/external-providers/frontend-provider-display-label.frontend.utils.d.ts.map +1 -1
  1860. package/dist/esm/core/external-providers/frontend-provider-display-label.frontend.utils.js.map +1 -1
  1861. package/dist/esm/core/external-providers/frontend-provider-registry.frontend.service.d.ts +1 -2
  1862. package/dist/esm/core/external-providers/frontend-provider-registry.frontend.service.d.ts.map +1 -1
  1863. package/dist/esm/core/external-providers/frontend-provider-registry.frontend.service.js.map +1 -1
  1864. package/dist/esm/core/external-providers/provider-file-selection.frontend.utils.d.ts.map +1 -1
  1865. package/dist/esm/core/external-providers/provider-file-selection.frontend.utils.js.map +1 -1
  1866. package/dist/esm/core/features/FeatureGate.d.ts.map +1 -1
  1867. package/dist/esm/core/features/FeatureGate.js.map +1 -1
  1868. package/dist/esm/core/features/FeatureRouteGuard.d.ts.map +1 -1
  1869. package/dist/esm/core/features/FeatureRouteGuard.js.map +1 -1
  1870. package/dist/esm/core/features/FeaturesContext.d.ts.map +1 -1
  1871. package/dist/esm/core/features/FeaturesContext.js +30 -3
  1872. package/dist/esm/core/features/FeaturesContext.js.map +1 -1
  1873. package/dist/esm/core/features/feature-gate-surface.example.d.ts +44 -0
  1874. package/dist/esm/core/features/feature-gate-surface.example.d.ts.map +1 -0
  1875. package/dist/esm/core/features/feature-gate-surface.example.js +38 -0
  1876. package/dist/esm/core/features/feature-gate-surface.example.js.map +1 -0
  1877. package/dist/esm/core/features/feature-unavailability.frontend.utils.d.ts.map +1 -1
  1878. package/dist/esm/core/features/feature-unavailability.frontend.utils.js.map +1 -1
  1879. package/dist/esm/core/features/useFeatureAvailability.d.ts.map +1 -1
  1880. package/dist/esm/core/features/useFeatureAvailability.js.map +1 -1
  1881. package/dist/esm/core/features/useFeatureGate.d.ts.map +1 -1
  1882. package/dist/esm/core/features/useFeatureGate.js.map +1 -1
  1883. package/dist/esm/core/features/useFeatures.d.ts.map +1 -1
  1884. package/dist/esm/core/features/useFeatures.js.map +1 -1
  1885. package/dist/esm/core/features/useOperationFeatureAvailability.d.ts.map +1 -1
  1886. package/dist/esm/core/features/useOperationFeatureAvailability.js.map +1 -1
  1887. package/dist/esm/core/flows-actors/FlowsActorsContext.d.ts +42 -3
  1888. package/dist/esm/core/flows-actors/FlowsActorsContext.d.ts.map +1 -1
  1889. package/dist/esm/core/flows-actors/FlowsActorsContext.js +134 -18
  1890. package/dist/esm/core/flows-actors/FlowsActorsContext.js.map +1 -1
  1891. package/dist/esm/core/flows-actors/useFlowsActors.d.ts.map +1 -1
  1892. package/dist/esm/core/flows-actors/useFlowsActors.js.map +1 -1
  1893. package/dist/esm/core/guidance/GuidanceContext.d.ts +34 -1
  1894. package/dist/esm/core/guidance/GuidanceContext.d.ts.map +1 -1
  1895. package/dist/esm/core/guidance/GuidanceContext.js +1004 -117
  1896. package/dist/esm/core/guidance/GuidanceContext.js.map +1 -1
  1897. package/dist/esm/core/guidance/GuidanceRenderer.d.ts +54 -1
  1898. package/dist/esm/core/guidance/GuidanceRenderer.d.ts.map +1 -1
  1899. package/dist/esm/core/guidance/GuidanceRenderer.js +355 -13
  1900. package/dist/esm/core/guidance/GuidanceRenderer.js.map +1 -1
  1901. package/dist/esm/core/guidance/guidance-audience.frontend.utils.d.ts +22 -2
  1902. package/dist/esm/core/guidance/guidance-audience.frontend.utils.d.ts.map +1 -1
  1903. package/dist/esm/core/guidance/guidance-audience.frontend.utils.js +59 -1
  1904. package/dist/esm/core/guidance/guidance-audience.frontend.utils.js.map +1 -1
  1905. package/dist/esm/core/guidance/guidance-resource-compiler.shared.utils.d.ts.map +1 -1
  1906. package/dist/esm/core/guidance/guidance-resource-compiler.shared.utils.js +51 -1
  1907. package/dist/esm/core/guidance/guidance-resource-compiler.shared.utils.js.map +1 -1
  1908. package/dist/esm/core/guidance/renderers/GuidanceAnnouncement.d.ts.map +1 -1
  1909. package/dist/esm/core/guidance/renderers/GuidanceAnnouncement.js.map +1 -1
  1910. package/dist/esm/core/guidance/renderers/GuidanceAnnouncement.labels.d.ts.map +1 -1
  1911. package/dist/esm/core/guidance/renderers/GuidanceAnnouncement.labels.js.map +1 -1
  1912. package/dist/esm/core/guidance/renderers/GuidanceBadge.d.ts.map +1 -1
  1913. package/dist/esm/core/guidance/renderers/GuidanceBadge.js +17 -8
  1914. package/dist/esm/core/guidance/renderers/GuidanceBadge.js.map +1 -1
  1915. package/dist/esm/core/guidance/renderers/GuidanceBadge.labels.d.ts.map +1 -1
  1916. package/dist/esm/core/guidance/renderers/GuidanceBadge.labels.js.map +1 -1
  1917. package/dist/esm/core/guidance/renderers/GuidanceBanner.d.ts.map +1 -1
  1918. package/dist/esm/core/guidance/renderers/GuidanceBanner.js +11 -1
  1919. package/dist/esm/core/guidance/renderers/GuidanceBanner.js.map +1 -1
  1920. package/dist/esm/core/guidance/renderers/GuidanceBanner.labels.d.ts.map +1 -1
  1921. package/dist/esm/core/guidance/renderers/GuidanceBanner.labels.js.map +1 -1
  1922. package/dist/esm/core/guidance/renderers/GuidanceCard.d.ts.map +1 -1
  1923. package/dist/esm/core/guidance/renderers/GuidanceCard.js.map +1 -1
  1924. package/dist/esm/core/guidance/renderers/GuidanceCard.labels.d.ts.map +1 -1
  1925. package/dist/esm/core/guidance/renderers/GuidanceCard.labels.js.map +1 -1
  1926. package/dist/esm/core/guidance/renderers/GuidanceChecklist.d.ts.map +1 -1
  1927. package/dist/esm/core/guidance/renderers/GuidanceChecklist.js +4 -1
  1928. package/dist/esm/core/guidance/renderers/GuidanceChecklist.js.map +1 -1
  1929. package/dist/esm/core/guidance/renderers/GuidanceChecklist.labels.d.ts.map +1 -1
  1930. package/dist/esm/core/guidance/renderers/GuidanceChecklist.labels.js.map +1 -1
  1931. package/dist/esm/core/guidance/renderers/GuidanceChecklistItem.d.ts.map +1 -1
  1932. package/dist/esm/core/guidance/renderers/GuidanceChecklistItem.js.map +1 -1
  1933. package/dist/esm/core/guidance/renderers/GuidanceChecklistItem.labels.d.ts.map +1 -1
  1934. package/dist/esm/core/guidance/renderers/GuidanceChecklistItem.labels.js +4 -0
  1935. package/dist/esm/core/guidance/renderers/GuidanceChecklistItem.labels.js.map +1 -1
  1936. package/dist/esm/core/guidance/renderers/GuidanceModal.d.ts.map +1 -1
  1937. package/dist/esm/core/guidance/renderers/GuidanceModal.js.map +1 -1
  1938. package/dist/esm/core/guidance/renderers/GuidanceModal.labels.d.ts.map +1 -1
  1939. package/dist/esm/core/guidance/renderers/GuidanceModal.labels.js.map +1 -1
  1940. package/dist/esm/core/guidance/renderers/GuidanceSurvey.d.ts.map +1 -1
  1941. package/dist/esm/core/guidance/renderers/GuidanceSurvey.js +28 -5
  1942. package/dist/esm/core/guidance/renderers/GuidanceSurvey.js.map +1 -1
  1943. package/dist/esm/core/guidance/renderers/GuidanceSurvey.labels.d.ts.map +1 -1
  1944. package/dist/esm/core/guidance/renderers/GuidanceSurvey.labels.js +8 -0
  1945. package/dist/esm/core/guidance/renderers/GuidanceSurvey.labels.js.map +1 -1
  1946. package/dist/esm/core/guidance/renderers/GuidanceTooltip.d.ts.map +1 -1
  1947. package/dist/esm/core/guidance/renderers/GuidanceTooltip.js +14 -1
  1948. package/dist/esm/core/guidance/renderers/GuidanceTooltip.js.map +1 -1
  1949. package/dist/esm/core/guidance/renderers/GuidanceTooltip.labels.d.ts.map +1 -1
  1950. package/dist/esm/core/guidance/renderers/GuidanceTooltip.labels.js.map +1 -1
  1951. package/dist/esm/core/guidance/renderers/GuidanceTour.d.ts.map +1 -1
  1952. package/dist/esm/core/guidance/renderers/GuidanceTour.js +26 -3
  1953. package/dist/esm/core/guidance/renderers/GuidanceTour.js.map +1 -1
  1954. package/dist/esm/core/guidance/renderers/GuidanceTour.labels.d.ts.map +1 -1
  1955. package/dist/esm/core/guidance/renderers/GuidanceTour.labels.js.map +1 -1
  1956. package/dist/esm/core/guidance/useGuidance.d.ts.map +1 -1
  1957. package/dist/esm/core/guidance/useGuidance.js.map +1 -1
  1958. package/dist/esm/core/hotkey/DefaultHotkeyHandler.d.ts +8 -4
  1959. package/dist/esm/core/hotkey/DefaultHotkeyHandler.d.ts.map +1 -1
  1960. package/dist/esm/core/hotkey/DefaultHotkeyHandler.js +9 -5
  1961. package/dist/esm/core/hotkey/DefaultHotkeyHandler.js.map +1 -1
  1962. package/dist/esm/core/hotkey/HotkeyRegistryContext.d.ts.map +1 -1
  1963. package/dist/esm/core/hotkey/HotkeyRegistryContext.js +3 -2
  1964. package/dist/esm/core/hotkey/HotkeyRegistryContext.js.map +1 -1
  1965. package/dist/esm/core/hotkey/HotkeyShortcutsHelpDialog.d.ts.map +1 -1
  1966. package/dist/esm/core/hotkey/HotkeyShortcutsHelpDialog.js +2 -1
  1967. package/dist/esm/core/hotkey/HotkeyShortcutsHelpDialog.js.map +1 -1
  1968. package/dist/esm/core/hotkey/hotkey-registry.frontend.schemas.d.ts +25 -1
  1969. package/dist/esm/core/hotkey/hotkey-registry.frontend.schemas.d.ts.map +1 -1
  1970. package/dist/esm/core/hotkey/hotkey-registry.frontend.schemas.js +28 -2
  1971. package/dist/esm/core/hotkey/hotkey-registry.frontend.schemas.js.map +1 -1
  1972. package/dist/esm/core/hotkey/merge-hotkey-emit-shortcuts.d.ts.map +1 -1
  1973. package/dist/esm/core/hotkey/merge-hotkey-emit-shortcuts.js.map +1 -1
  1974. package/dist/esm/core/hotkey/useHotkey.d.ts.map +1 -1
  1975. package/dist/esm/core/hotkey/useHotkey.js.map +1 -1
  1976. package/dist/esm/core/i18n/I18nContext.d.ts +36 -6
  1977. package/dist/esm/core/i18n/I18nContext.d.ts.map +1 -1
  1978. package/dist/esm/core/i18n/I18nContext.js +119 -27
  1979. package/dist/esm/core/i18n/I18nContext.js.map +1 -1
  1980. package/dist/esm/core/i18n/component-label-resolution.utils.d.ts +41 -30
  1981. package/dist/esm/core/i18n/component-label-resolution.utils.d.ts.map +1 -1
  1982. package/dist/esm/core/i18n/component-label-resolution.utils.js +69 -34
  1983. package/dist/esm/core/i18n/component-label-resolution.utils.js.map +1 -1
  1984. package/dist/esm/core/i18n/operation-title-resolution.utils.d.ts +23 -0
  1985. package/dist/esm/core/i18n/operation-title-resolution.utils.d.ts.map +1 -0
  1986. package/dist/esm/core/i18n/operation-title-resolution.utils.js +25 -0
  1987. package/dist/esm/core/i18n/operation-title-resolution.utils.js.map +1 -0
  1988. package/dist/esm/core/i18n/regional-preference-resolution.frontend.utils.d.ts.map +1 -1
  1989. package/dist/esm/core/i18n/regional-preference-resolution.frontend.utils.js.map +1 -1
  1990. package/dist/esm/core/i18n/useI18n.d.ts.map +1 -1
  1991. package/dist/esm/core/i18n/useI18n.js.map +1 -1
  1992. package/dist/esm/core/icons/IconRegistryBridge.d.ts.map +1 -1
  1993. package/dist/esm/core/icons/IconRegistryBridge.js.map +1 -1
  1994. package/dist/esm/core/icons/IconRegistryContext.d.ts.map +1 -1
  1995. package/dist/esm/core/icons/IconRegistryContext.js +10 -0
  1996. package/dist/esm/core/icons/IconRegistryContext.js.map +1 -1
  1997. package/dist/esm/core/icons/icon-registry.frontend.definitions.d.ts.map +1 -1
  1998. package/dist/esm/core/icons/icon-registry.frontend.definitions.js.map +1 -1
  1999. package/dist/esm/core/icons/icon-registry.frontend.schemas.d.ts +8 -0
  2000. package/dist/esm/core/icons/icon-registry.frontend.schemas.d.ts.map +1 -1
  2001. package/dist/esm/core/icons/icon-registry.frontend.schemas.js +8 -0
  2002. package/dist/esm/core/icons/icon-registry.frontend.schemas.js.map +1 -1
  2003. package/dist/esm/core/icons/useIconRegistry.d.ts.map +1 -1
  2004. package/dist/esm/core/icons/useIconRegistry.js.map +1 -1
  2005. package/dist/esm/core/loading/AppLoadingGate.d.ts.map +1 -1
  2006. package/dist/esm/core/loading/AppLoadingGate.js.map +1 -1
  2007. package/dist/esm/core/loading/LoadingBarrier.d.ts.map +1 -1
  2008. package/dist/esm/core/loading/LoadingBarrier.js.map +1 -1
  2009. package/dist/esm/core/loading/LoadingContext.d.ts.map +1 -1
  2010. package/dist/esm/core/loading/LoadingContext.js.map +1 -1
  2011. package/dist/esm/core/loading/LoadingGate.d.ts.map +1 -1
  2012. package/dist/esm/core/loading/LoadingGate.js +41 -7
  2013. package/dist/esm/core/loading/LoadingGate.js.map +1 -1
  2014. package/dist/esm/core/loading/loading-policy.frontend.schemas.d.ts.map +1 -1
  2015. package/dist/esm/core/loading/loading-policy.frontend.schemas.js.map +1 -1
  2016. package/dist/esm/core/loading/loading-scope.frontend.utils.d.ts.map +1 -1
  2017. package/dist/esm/core/loading/loading-scope.frontend.utils.js.map +1 -1
  2018. package/dist/esm/core/loading/loading-types.frontend.schemas.d.ts.map +1 -1
  2019. package/dist/esm/core/loading/loading-types.frontend.schemas.js.map +1 -1
  2020. package/dist/esm/core/loading/resolveLoadingPolicy.d.ts.map +1 -1
  2021. package/dist/esm/core/loading/resolveLoadingPolicy.js.map +1 -1
  2022. package/dist/esm/core/loading/useAppLoading.d.ts.map +1 -1
  2023. package/dist/esm/core/loading/useAppLoading.js.map +1 -1
  2024. package/dist/esm/core/loading/useComponentLoading.d.ts.map +1 -1
  2025. package/dist/esm/core/loading/useComponentLoading.js.map +1 -1
  2026. package/dist/esm/core/loading/useEmitLoadingScope.d.ts.map +1 -1
  2027. package/dist/esm/core/loading/useEmitLoadingScope.js.map +1 -1
  2028. package/dist/esm/core/loading/useLoading.d.ts.map +1 -1
  2029. package/dist/esm/core/loading/useLoading.js.map +1 -1
  2030. package/dist/esm/core/mode/AppModeContext.d.ts.map +1 -1
  2031. package/dist/esm/core/mode/AppModeContext.js.map +1 -1
  2032. package/dist/esm/core/mode/section-visibility.d.ts.map +1 -1
  2033. package/dist/esm/core/mode/section-visibility.js.map +1 -1
  2034. package/dist/esm/core/monitoring/analytics/AnalyticsContext.d.ts +9 -1
  2035. package/dist/esm/core/monitoring/analytics/AnalyticsContext.d.ts.map +1 -1
  2036. package/dist/esm/core/monitoring/analytics/AnalyticsContext.js +131 -59
  2037. package/dist/esm/core/monitoring/analytics/AnalyticsContext.js.map +1 -1
  2038. package/dist/esm/core/monitoring/analytics/AnalyticsEventBridge.d.ts +9 -0
  2039. package/dist/esm/core/monitoring/analytics/AnalyticsEventBridge.d.ts.map +1 -1
  2040. package/dist/esm/core/monitoring/analytics/AnalyticsEventBridge.js +80 -73
  2041. package/dist/esm/core/monitoring/analytics/AnalyticsEventBridge.js.map +1 -1
  2042. package/dist/esm/core/monitoring/analytics/AnalyticsScopeBridge.d.ts +5 -0
  2043. package/dist/esm/core/monitoring/analytics/AnalyticsScopeBridge.d.ts.map +1 -0
  2044. package/dist/esm/core/monitoring/analytics/AnalyticsScopeBridge.js +16 -0
  2045. package/dist/esm/core/monitoring/analytics/AnalyticsScopeBridge.js.map +1 -0
  2046. package/dist/esm/core/monitoring/analytics/analytics-provider-registry.frontend.service.d.ts.map +1 -1
  2047. package/dist/esm/core/monitoring/analytics/analytics-provider-registry.frontend.service.js.map +1 -1
  2048. package/dist/esm/core/monitoring/analytics/analytics-provider.frontend.interface.d.ts.map +1 -1
  2049. package/dist/esm/core/monitoring/analytics/analytics-provider.frontend.interface.js.map +1 -1
  2050. package/dist/esm/core/monitoring/analytics/providers/backend-proxy-analytics.provider.d.ts.map +1 -1
  2051. package/dist/esm/core/monitoring/analytics/providers/backend-proxy-analytics.provider.js.map +1 -1
  2052. package/dist/esm/core/monitoring/analytics/providers/console-analytics.provider.d.ts.map +1 -1
  2053. package/dist/esm/core/monitoring/analytics/providers/console-analytics.provider.js.map +1 -1
  2054. package/dist/esm/core/monitoring/analytics/useAnalytics.d.ts.map +1 -1
  2055. package/dist/esm/core/monitoring/analytics/useAnalytics.js +1 -1
  2056. package/dist/esm/core/monitoring/analytics/useAnalytics.js.map +1 -1
  2057. package/dist/esm/core/monitoring/error-monitoring-bridge.frontend.service.d.ts.map +1 -1
  2058. package/dist/esm/core/monitoring/error-monitoring-bridge.frontend.service.js.map +1 -1
  2059. package/dist/esm/core/monitoring/logger.frontend.service.d.ts.map +1 -1
  2060. package/dist/esm/core/monitoring/logger.frontend.service.js.map +1 -1
  2061. package/dist/esm/core/navigation/NavigationContentAreas.d.ts +66 -2
  2062. package/dist/esm/core/navigation/NavigationContentAreas.d.ts.map +1 -1
  2063. package/dist/esm/core/navigation/NavigationContentAreas.js +482 -73
  2064. package/dist/esm/core/navigation/NavigationContentAreas.js.map +1 -1
  2065. package/dist/esm/core/navigation/NavigationContext.d.ts +42 -0
  2066. package/dist/esm/core/navigation/NavigationContext.d.ts.map +1 -1
  2067. package/dist/esm/core/navigation/NavigationContext.js +8 -0
  2068. package/dist/esm/core/navigation/NavigationContext.js.map +1 -1
  2069. package/dist/esm/core/navigation/NavigationRequestBridge.d.ts.map +1 -1
  2070. package/dist/esm/core/navigation/NavigationRequestBridge.js.map +1 -1
  2071. package/dist/esm/core/navigation/hosted-pane.constants.d.ts.map +1 -1
  2072. package/dist/esm/core/navigation/hosted-pane.constants.js.map +1 -1
  2073. package/dist/esm/core/navigation/launcher-resolution.d.ts.map +1 -1
  2074. package/dist/esm/core/navigation/launcher-resolution.js.map +1 -1
  2075. package/dist/esm/core/navigation/launcher-runtime-availability.d.ts.map +1 -1
  2076. package/dist/esm/core/navigation/launcher-runtime-availability.js.map +1 -1
  2077. package/dist/esm/core/navigation/navigation-clean-break.frontend.utils.d.ts +22 -0
  2078. package/dist/esm/core/navigation/navigation-clean-break.frontend.utils.d.ts.map +1 -1
  2079. package/dist/esm/core/navigation/navigation-clean-break.frontend.utils.js +24 -0
  2080. package/dist/esm/core/navigation/navigation-clean-break.frontend.utils.js.map +1 -1
  2081. package/dist/esm/core/navigation/navigation-policy-resolver.service.d.ts.map +1 -1
  2082. package/dist/esm/core/navigation/navigation-policy-resolver.service.js +79 -17
  2083. package/dist/esm/core/navigation/navigation-policy-resolver.service.js.map +1 -1
  2084. package/dist/esm/core/navigation/navigation.schemas.d.ts +38 -14
  2085. package/dist/esm/core/navigation/navigation.schemas.d.ts.map +1 -1
  2086. package/dist/esm/core/navigation/navigation.schemas.js +10 -4
  2087. package/dist/esm/core/navigation/navigation.schemas.js.map +1 -1
  2088. package/dist/esm/core/navigation/navigation.utils.d.ts +60 -2
  2089. package/dist/esm/core/navigation/navigation.utils.d.ts.map +1 -1
  2090. package/dist/esm/core/navigation/navigation.utils.js +123 -17
  2091. package/dist/esm/core/navigation/navigation.utils.js.map +1 -1
  2092. package/dist/esm/core/navigation/primary-destination-layout.d.ts +58 -0
  2093. package/dist/esm/core/navigation/primary-destination-layout.d.ts.map +1 -1
  2094. package/dist/esm/core/navigation/primary-destination-layout.js +58 -0
  2095. package/dist/esm/core/navigation/primary-destination-layout.js.map +1 -1
  2096. package/dist/esm/core/navigation/split-fit.d.ts +56 -0
  2097. package/dist/esm/core/navigation/split-fit.d.ts.map +1 -0
  2098. package/dist/esm/core/navigation/split-fit.js +61 -0
  2099. package/dist/esm/core/navigation/split-fit.js.map +1 -0
  2100. package/dist/esm/core/navigation/useIsStackEntryActive.d.ts.map +1 -1
  2101. package/dist/esm/core/navigation/useIsStackEntryActive.js.map +1 -1
  2102. package/dist/esm/core/navigation/useLauncherResolutionContext.d.ts +4 -2
  2103. package/dist/esm/core/navigation/useLauncherResolutionContext.d.ts.map +1 -1
  2104. package/dist/esm/core/navigation/useLauncherResolutionContext.js +26 -4
  2105. package/dist/esm/core/navigation/useLauncherResolutionContext.js.map +1 -1
  2106. package/dist/esm/core/navigation/useNavigationController.d.ts +6 -3
  2107. package/dist/esm/core/navigation/useNavigationController.d.ts.map +1 -1
  2108. package/dist/esm/core/navigation/useNavigationController.js +167 -22
  2109. package/dist/esm/core/navigation/useNavigationController.js.map +1 -1
  2110. package/dist/esm/core/navigation/useNavigationState.d.ts.map +1 -1
  2111. package/dist/esm/core/navigation/useNavigationState.js.map +1 -1
  2112. package/dist/esm/core/navigation/useOverlayTitle.d.ts.map +1 -1
  2113. package/dist/esm/core/navigation/useOverlayTitle.js +2 -5
  2114. package/dist/esm/core/navigation/useOverlayTitle.js.map +1 -1
  2115. package/dist/esm/core/navigation/useSynchronousBrowserLocation.d.ts +58 -0
  2116. package/dist/esm/core/navigation/useSynchronousBrowserLocation.d.ts.map +1 -0
  2117. package/dist/esm/core/navigation/useSynchronousBrowserLocation.js +68 -0
  2118. package/dist/esm/core/navigation/useSynchronousBrowserLocation.js.map +1 -0
  2119. package/dist/esm/core/navigation/useTransactionAwareSyncRetry.d.ts.map +1 -1
  2120. package/dist/esm/core/navigation/useTransactionAwareSyncRetry.js.map +1 -1
  2121. package/dist/esm/core/navigation/view-title-resolution.d.ts +18 -0
  2122. package/dist/esm/core/navigation/view-title-resolution.d.ts.map +1 -1
  2123. package/dist/esm/core/navigation/view-title-resolution.js +20 -2
  2124. package/dist/esm/core/navigation/view-title-resolution.js.map +1 -1
  2125. package/dist/esm/core/navigation/zone-content-geometry.d.ts.map +1 -1
  2126. package/dist/esm/core/navigation/zone-content-geometry.js.map +1 -1
  2127. package/dist/esm/core/navigation/zone-emphasis.d.ts +42 -0
  2128. package/dist/esm/core/navigation/zone-emphasis.d.ts.map +1 -0
  2129. package/dist/esm/core/navigation/zone-emphasis.js +50 -0
  2130. package/dist/esm/core/navigation/zone-emphasis.js.map +1 -0
  2131. package/dist/esm/core/navigation/zone-empty-behavior.d.ts +22 -0
  2132. package/dist/esm/core/navigation/zone-empty-behavior.d.ts.map +1 -1
  2133. package/dist/esm/core/navigation/zone-empty-behavior.js +21 -0
  2134. package/dist/esm/core/navigation/zone-empty-behavior.js.map +1 -1
  2135. package/dist/esm/core/navigation/zone-visible-entry.d.ts.map +1 -1
  2136. package/dist/esm/core/navigation/zone-visible-entry.js.map +1 -1
  2137. package/dist/esm/core/requests/api-readiness-checker.frontend.service.d.ts.map +1 -1
  2138. package/dist/esm/core/requests/api-readiness-checker.frontend.service.js.map +1 -1
  2139. package/dist/esm/core/requests/auth-refresh-resilience.frontend.d.ts.map +1 -1
  2140. package/dist/esm/core/requests/auth-refresh-resilience.frontend.js.map +1 -1
  2141. package/dist/esm/core/requests/client-instance-id.frontend.service.d.ts.map +1 -1
  2142. package/dist/esm/core/requests/client-instance-id.frontend.service.js.map +1 -1
  2143. package/dist/esm/core/requests/network-backoff.frontend.utils.d.ts.map +1 -1
  2144. package/dist/esm/core/requests/network-backoff.frontend.utils.js.map +1 -1
  2145. package/dist/esm/core/requests/offline-replay-policy.frontend.d.ts.map +1 -1
  2146. package/dist/esm/core/requests/offline-replay-policy.frontend.js.map +1 -1
  2147. package/dist/esm/core/requests/request-cancellation.frontend.utils.d.ts.map +1 -1
  2148. package/dist/esm/core/requests/request-cancellation.frontend.utils.js.map +1 -1
  2149. package/dist/esm/core/requests/websockets/ConnectionStatusNotifier.d.ts.map +1 -1
  2150. package/dist/esm/core/requests/websockets/ConnectionStatusNotifier.js.map +1 -1
  2151. package/dist/esm/core/requests/websockets/WebSocketContext.d.ts.map +1 -1
  2152. package/dist/esm/core/requests/websockets/WebSocketContext.js.map +1 -1
  2153. package/dist/esm/core/requests/websockets/WebSocketEventBridge.d.ts +1 -0
  2154. package/dist/esm/core/requests/websockets/WebSocketEventBridge.d.ts.map +1 -1
  2155. package/dist/esm/core/requests/websockets/WebSocketEventBridge.js +22 -0
  2156. package/dist/esm/core/requests/websockets/WebSocketEventBridge.js.map +1 -1
  2157. package/dist/esm/core/requests/websockets/useNotificationBadges.d.ts.map +1 -1
  2158. package/dist/esm/core/requests/websockets/useNotificationBadges.js.map +1 -1
  2159. package/dist/esm/core/requests/websockets/useResourceRoom.d.ts.map +1 -1
  2160. package/dist/esm/core/requests/websockets/useResourceRoom.js.map +1 -1
  2161. package/dist/esm/core/requests/websockets/useWebSocket.d.ts.map +1 -1
  2162. package/dist/esm/core/requests/websockets/useWebSocket.js.map +1 -1
  2163. package/dist/esm/core/requests/websockets/websocket-resource-validation.frontend.service.d.ts.map +1 -1
  2164. package/dist/esm/core/requests/websockets/websocket-resource-validation.frontend.service.js.map +1 -1
  2165. package/dist/esm/core/requests/wildo-http-client-manual-calls.frontend.service.d.ts +342 -28
  2166. package/dist/esm/core/requests/wildo-http-client-manual-calls.frontend.service.d.ts.map +1 -1
  2167. package/dist/esm/core/requests/wildo-http-client-manual-calls.frontend.service.js +180 -17
  2168. package/dist/esm/core/requests/wildo-http-client-manual-calls.frontend.service.js.map +1 -1
  2169. package/dist/esm/core/requests/wildo-http-client-resources.frontend.service.d.ts +16 -0
  2170. package/dist/esm/core/requests/wildo-http-client-resources.frontend.service.d.ts.map +1 -1
  2171. package/dist/esm/core/requests/wildo-http-client-resources.frontend.service.js +72 -9
  2172. package/dist/esm/core/requests/wildo-http-client-resources.frontend.service.js.map +1 -1
  2173. package/dist/esm/core/requests/wildo-http-client.frontend.service.d.ts +22 -4
  2174. package/dist/esm/core/requests/wildo-http-client.frontend.service.d.ts.map +1 -1
  2175. package/dist/esm/core/requests/wildo-http-client.frontend.service.js +24 -4
  2176. package/dist/esm/core/requests/wildo-http-client.frontend.service.js.map +1 -1
  2177. package/dist/esm/core/resources/ResourceOperationViewContext.d.ts.map +1 -1
  2178. package/dist/esm/core/resources/ResourceOperationViewContext.js.map +1 -1
  2179. package/dist/esm/core/resources/ResourceOperationViewProvider.d.ts.map +1 -1
  2180. package/dist/esm/core/resources/ResourceOperationViewProvider.js.map +1 -1
  2181. package/dist/esm/core/resources/ResourceReadCacheBridge.d.ts.map +1 -1
  2182. package/dist/esm/core/resources/ResourceReadCacheBridge.js +19 -15
  2183. package/dist/esm/core/resources/ResourceReadCacheBridge.js.map +1 -1
  2184. package/dist/esm/core/resources/ResourceRegistryContext.d.ts.map +1 -1
  2185. package/dist/esm/core/resources/ResourceRegistryContext.js.map +1 -1
  2186. package/dist/esm/core/resources/ScopedResourceRegistryProvider.d.ts.map +1 -1
  2187. package/dist/esm/core/resources/ScopedResourceRegistryProvider.js.map +1 -1
  2188. package/dist/esm/core/resources/bulk-failure-grouping.frontend.utils.d.ts +26 -0
  2189. package/dist/esm/core/resources/bulk-failure-grouping.frontend.utils.d.ts.map +1 -0
  2190. package/dist/esm/core/resources/bulk-failure-grouping.frontend.utils.js +23 -0
  2191. package/dist/esm/core/resources/bulk-failure-grouping.frontend.utils.js.map +1 -0
  2192. package/dist/esm/core/resources/collection-export-url.frontend.utils.d.ts.map +1 -1
  2193. package/dist/esm/core/resources/collection-export-url.frontend.utils.js.map +1 -1
  2194. package/dist/esm/core/resources/collection-filter-presets.frontend.utils.d.ts +41 -0
  2195. package/dist/esm/core/resources/collection-filter-presets.frontend.utils.d.ts.map +1 -0
  2196. package/dist/esm/core/resources/collection-filter-presets.frontend.utils.js +143 -0
  2197. package/dist/esm/core/resources/collection-filter-presets.frontend.utils.js.map +1 -0
  2198. package/dist/esm/core/resources/context-resource-identifiers.frontend.utils.d.ts +7 -0
  2199. package/dist/esm/core/resources/context-resource-identifiers.frontend.utils.d.ts.map +1 -1
  2200. package/dist/esm/core/resources/context-resource-identifiers.frontend.utils.js +7 -1
  2201. package/dist/esm/core/resources/context-resource-identifiers.frontend.utils.js.map +1 -1
  2202. package/dist/esm/core/resources/ephemeral-fields.utils.d.ts.map +1 -1
  2203. package/dist/esm/core/resources/ephemeral-fields.utils.js.map +1 -1
  2204. package/dist/esm/core/resources/file-serve-url.frontend.utils.d.ts.map +1 -1
  2205. package/dist/esm/core/resources/file-serve-url.frontend.utils.js.map +1 -1
  2206. package/dist/esm/core/resources/frontend-resource.utils.d.ts +74 -2
  2207. package/dist/esm/core/resources/frontend-resource.utils.d.ts.map +1 -1
  2208. package/dist/esm/core/resources/frontend-resource.utils.js +152 -19
  2209. package/dist/esm/core/resources/frontend-resource.utils.js.map +1 -1
  2210. package/dist/esm/core/resources/hooks/useOperationEnabled.d.ts +18 -0
  2211. package/dist/esm/core/resources/hooks/useOperationEnabled.d.ts.map +1 -1
  2212. package/dist/esm/core/resources/hooks/useOperationEnabled.js +18 -4
  2213. package/dist/esm/core/resources/hooks/useOperationEnabled.js.map +1 -1
  2214. package/dist/esm/core/resources/in-place/InPlaceOperationContext.d.ts.map +1 -1
  2215. package/dist/esm/core/resources/in-place/InPlaceOperationContext.js.map +1 -1
  2216. package/dist/esm/core/resources/operation-initiator-satisfaction.frontend.utils.d.ts.map +1 -1
  2217. package/dist/esm/core/resources/operation-initiator-satisfaction.frontend.utils.js.map +1 -1
  2218. package/dist/esm/core/resources/operation-semantics.frontend.utils.d.ts +137 -7
  2219. package/dist/esm/core/resources/operation-semantics.frontend.utils.d.ts.map +1 -1
  2220. package/dist/esm/core/resources/operation-semantics.frontend.utils.js +209 -16
  2221. package/dist/esm/core/resources/operation-semantics.frontend.utils.js.map +1 -1
  2222. package/dist/esm/core/resources/relationship-quick-create.frontend.utils.d.ts.map +1 -1
  2223. package/dist/esm/core/resources/relationship-quick-create.frontend.utils.js.map +1 -1
  2224. package/dist/esm/core/resources/relationship-surface-runtime.frontend.utils.d.ts.map +1 -1
  2225. package/dist/esm/core/resources/relationship-surface-runtime.frontend.utils.js.map +1 -1
  2226. package/dist/esm/core/resources/resource-addressability.frontend.utils.d.ts +42 -0
  2227. package/dist/esm/core/resources/resource-addressability.frontend.utils.d.ts.map +1 -1
  2228. package/dist/esm/core/resources/resource-addressability.frontend.utils.js +36 -1
  2229. package/dist/esm/core/resources/resource-addressability.frontend.utils.js.map +1 -1
  2230. package/dist/esm/core/resources/resource-label-field-paths.frontend.utils.d.ts +59 -0
  2231. package/dist/esm/core/resources/resource-label-field-paths.frontend.utils.d.ts.map +1 -0
  2232. package/dist/esm/core/resources/resource-label-field-paths.frontend.utils.js +151 -0
  2233. package/dist/esm/core/resources/resource-label-field-paths.frontend.utils.js.map +1 -0
  2234. package/dist/esm/core/resources/resource-operation-view.frontend.utils.d.ts.map +1 -1
  2235. package/dist/esm/core/resources/resource-operation-view.frontend.utils.js.map +1 -1
  2236. package/dist/esm/core/resources/resource-path.frontend.schemas.d.ts.map +1 -1
  2237. package/dist/esm/core/resources/resource-path.frontend.schemas.js.map +1 -1
  2238. package/dist/esm/core/resources/resource-read-cache.frontend.service.d.ts +26 -0
  2239. package/dist/esm/core/resources/resource-read-cache.frontend.service.d.ts.map +1 -1
  2240. package/dist/esm/core/resources/resource-read-cache.frontend.service.js +30 -0
  2241. package/dist/esm/core/resources/resource-read-cache.frontend.service.js.map +1 -1
  2242. package/dist/esm/core/resources/resources-repository.frontend.service.d.ts.map +1 -1
  2243. package/dist/esm/core/resources/resources-repository.frontend.service.js +2 -2
  2244. package/dist/esm/core/resources/resources-repository.frontend.service.js.map +1 -1
  2245. package/dist/esm/core/resources/resources.frontend.schemas.d.ts +229 -12
  2246. package/dist/esm/core/resources/resources.frontend.schemas.d.ts.map +1 -1
  2247. package/dist/esm/core/resources/resources.frontend.schemas.js +182 -8
  2248. package/dist/esm/core/resources/resources.frontend.schemas.js.map +1 -1
  2249. package/dist/esm/core/resources/rmm/HttpTransportAdapter.d.ts +6 -0
  2250. package/dist/esm/core/resources/rmm/HttpTransportAdapter.d.ts.map +1 -1
  2251. package/dist/esm/core/resources/rmm/HttpTransportAdapter.js +14 -2
  2252. package/dist/esm/core/resources/rmm/HttpTransportAdapter.js.map +1 -1
  2253. package/dist/esm/core/resources/rmm/RMMRegistry.d.ts.map +1 -1
  2254. package/dist/esm/core/resources/rmm/RMMRegistry.js.map +1 -1
  2255. package/dist/esm/core/resources/rmm/RMMRegistryContext.d.ts.map +1 -1
  2256. package/dist/esm/core/resources/rmm/RMMRegistryContext.js.map +1 -1
  2257. package/dist/esm/core/resources/rmm/RMMWebSocketBridge.d.ts.map +1 -1
  2258. package/dist/esm/core/resources/rmm/RMMWebSocketBridge.js +3 -3
  2259. package/dist/esm/core/resources/rmm/RMMWebSocketBridge.js.map +1 -1
  2260. package/dist/esm/core/resources/rmm/ResourceMutationManager.d.ts.map +1 -1
  2261. package/dist/esm/core/resources/rmm/ResourceMutationManager.js +77 -8
  2262. package/dist/esm/core/resources/rmm/ResourceMutationManager.js.map +1 -1
  2263. package/dist/esm/core/resources/rmm/canonical-read.frontend.utils.d.ts.map +1 -1
  2264. package/dist/esm/core/resources/rmm/canonical-read.frontend.utils.js.map +1 -1
  2265. package/dist/esm/core/resources/rmm/field-path.utils.d.ts.map +1 -1
  2266. package/dist/esm/core/resources/rmm/field-path.utils.js.map +1 -1
  2267. package/dist/esm/core/resources/rmm/mutation-error-report.utils.d.ts +18 -0
  2268. package/dist/esm/core/resources/rmm/mutation-error-report.utils.d.ts.map +1 -0
  2269. package/dist/esm/core/resources/rmm/mutation-error-report.utils.js +21 -0
  2270. package/dist/esm/core/resources/rmm/mutation-error-report.utils.js.map +1 -0
  2271. package/dist/esm/core/resources/rmm/rmm-constants.d.ts.map +1 -1
  2272. package/dist/esm/core/resources/rmm/rmm-constants.js.map +1 -1
  2273. package/dist/esm/core/resources/rmm/rmm-noop-snapshot.d.ts.map +1 -1
  2274. package/dist/esm/core/resources/rmm/rmm-noop-snapshot.js.map +1 -1
  2275. package/dist/esm/core/resources/rmm/types.d.ts +14 -0
  2276. package/dist/esm/core/resources/rmm/types.d.ts.map +1 -1
  2277. package/dist/esm/core/resources/rmm/types.js.map +1 -1
  2278. package/dist/esm/core/resources/rmm/update-like-mutation-fallback.frontend.d.ts.map +1 -1
  2279. package/dist/esm/core/resources/rmm/update-like-mutation-fallback.frontend.js.map +1 -1
  2280. package/dist/esm/core/resources/rmm/useListInvalidation.d.ts.map +1 -1
  2281. package/dist/esm/core/resources/rmm/useListInvalidation.js.map +1 -1
  2282. package/dist/esm/core/resources/rmm/useRMMEventHandler.d.ts.map +1 -1
  2283. package/dist/esm/core/resources/rmm/useRMMEventHandler.js.map +1 -1
  2284. package/dist/esm/core/resources/rmm/useRMMSnapshot.d.ts.map +1 -1
  2285. package/dist/esm/core/resources/rmm/useRMMSnapshot.js.map +1 -1
  2286. package/dist/esm/core/resources/rmm/useResourceMutationManager.d.ts.map +1 -1
  2287. package/dist/esm/core/resources/rmm/useResourceMutationManager.js.map +1 -1
  2288. package/dist/esm/core/resources/rmm/useResourceRMM.d.ts.map +1 -1
  2289. package/dist/esm/core/resources/rmm/useResourceRMM.js +2 -3
  2290. package/dist/esm/core/resources/rmm/useResourceRMM.js.map +1 -1
  2291. package/dist/esm/core/resources/useAuthedFileObjectUrl.frontend.hook.d.ts.map +1 -1
  2292. package/dist/esm/core/resources/useAuthedFileObjectUrl.frontend.hook.js.map +1 -1
  2293. package/dist/esm/core/resources/useBulkJobProgress.d.ts +22 -0
  2294. package/dist/esm/core/resources/useBulkJobProgress.d.ts.map +1 -0
  2295. package/dist/esm/core/resources/useBulkJobProgress.js +51 -0
  2296. package/dist/esm/core/resources/useBulkJobProgress.js.map +1 -0
  2297. package/dist/esm/core/resources/useHostlessResourceNavigation.d.ts.map +1 -1
  2298. package/dist/esm/core/resources/useHostlessResourceNavigation.js.map +1 -1
  2299. package/dist/esm/core/resources/useOperationEnabled.d.ts.map +1 -1
  2300. package/dist/esm/core/resources/useOperationEnabled.js.map +1 -1
  2301. package/dist/esm/core/resources/useResourceLabels.d.ts +27 -9
  2302. package/dist/esm/core/resources/useResourceLabels.d.ts.map +1 -1
  2303. package/dist/esm/core/resources/useResourceLabels.js +45 -138
  2304. package/dist/esm/core/resources/useResourceLabels.js.map +1 -1
  2305. package/dist/esm/core/resources/useResourceOperationActions.d.ts +33 -0
  2306. package/dist/esm/core/resources/useResourceOperationActions.d.ts.map +1 -1
  2307. package/dist/esm/core/resources/useResourceOperationActions.js +393 -87
  2308. package/dist/esm/core/resources/useResourceOperationActions.js.map +1 -1
  2309. package/dist/esm/core/resources/useResourceOperationOutcomeEmitter.d.ts +23 -0
  2310. package/dist/esm/core/resources/useResourceOperationOutcomeEmitter.d.ts.map +1 -0
  2311. package/dist/esm/core/resources/useResourceOperationOutcomeEmitter.js +85 -0
  2312. package/dist/esm/core/resources/useResourceOperationOutcomeEmitter.js.map +1 -0
  2313. package/dist/esm/core/resources/useResourceOperationSurface.d.ts +5 -0
  2314. package/dist/esm/core/resources/useResourceOperationSurface.d.ts.map +1 -1
  2315. package/dist/esm/core/resources/useResourceOperationSurface.js.map +1 -1
  2316. package/dist/esm/core/resources/useResourceRegistry.d.ts +18 -0
  2317. package/dist/esm/core/resources/useResourceRegistry.d.ts.map +1 -1
  2318. package/dist/esm/core/resources/useResourceRegistry.js +23 -0
  2319. package/dist/esm/core/resources/useResourceRegistry.js.map +1 -1
  2320. package/dist/esm/core/resources/useResourceSelection.d.ts +36 -1
  2321. package/dist/esm/core/resources/useResourceSelection.d.ts.map +1 -1
  2322. package/dist/esm/core/resources/useResourceSelection.js +32 -1
  2323. package/dist/esm/core/resources/useResourceSelection.js.map +1 -1
  2324. package/dist/esm/core/resources/utils/operation-enabled-condition.frontend.utils.d.ts.map +1 -1
  2325. package/dist/esm/core/resources/utils/operation-enabled-condition.frontend.utils.js.map +1 -1
  2326. package/dist/esm/core/runtime/AppRouter.d.ts.map +1 -1
  2327. package/dist/esm/core/runtime/AppRouter.js +25 -4
  2328. package/dist/esm/core/runtime/AppRouter.js.map +1 -1
  2329. package/dist/esm/core/runtime/ApplicationContext.shared.d.ts.map +1 -1
  2330. package/dist/esm/core/runtime/ApplicationContext.shared.js.map +1 -1
  2331. package/dist/esm/core/runtime/ApplicationMainContext.d.ts +3 -0
  2332. package/dist/esm/core/runtime/ApplicationMainContext.d.ts.map +1 -1
  2333. package/dist/esm/core/runtime/ApplicationMainContext.js +30 -2
  2334. package/dist/esm/core/runtime/ApplicationMainContext.js.map +1 -1
  2335. package/dist/esm/core/runtime/StartupFailureScreen.d.ts +24 -0
  2336. package/dist/esm/core/runtime/StartupFailureScreen.d.ts.map +1 -0
  2337. package/dist/esm/core/runtime/StartupFailureScreen.js +25 -0
  2338. package/dist/esm/core/runtime/StartupFailureScreen.js.map +1 -0
  2339. package/dist/esm/core/runtime/app-config-overrides.frontend.definitions.d.ts.map +1 -1
  2340. package/dist/esm/core/runtime/app-config-overrides.frontend.definitions.js.map +1 -1
  2341. package/dist/esm/core/runtime/domain-module.frontend.definitions.d.ts.map +1 -1
  2342. package/dist/esm/core/runtime/domain-module.frontend.definitions.js.map +1 -1
  2343. package/dist/esm/core/runtime/env-variable-loader.frontend.service.d.ts +16 -0
  2344. package/dist/esm/core/runtime/env-variable-loader.frontend.service.d.ts.map +1 -1
  2345. package/dist/esm/core/runtime/env-variable-loader.frontend.service.js +22 -0
  2346. package/dist/esm/core/runtime/env-variable-loader.frontend.service.js.map +1 -1
  2347. package/dist/esm/core/runtime/frontend-companion-resource-inputs.d.ts.map +1 -1
  2348. package/dist/esm/core/runtime/frontend-companion-resource-inputs.js.map +1 -1
  2349. package/dist/esm/core/runtime/routes.frontend.definitions.d.ts +28 -4
  2350. package/dist/esm/core/runtime/routes.frontend.definitions.d.ts.map +1 -1
  2351. package/dist/esm/core/runtime/routes.frontend.definitions.js +29 -5
  2352. package/dist/esm/core/runtime/routes.frontend.definitions.js.map +1 -1
  2353. package/dist/esm/core/runtime/runtime.frontend.schemas.d.ts.map +1 -1
  2354. package/dist/esm/core/runtime/runtime.frontend.schemas.js.map +1 -1
  2355. package/dist/esm/core/runtime/start-application.frontend.service.d.ts +2 -2
  2356. package/dist/esm/core/runtime/start-application.frontend.service.d.ts.map +1 -1
  2357. package/dist/esm/core/runtime/start-application.frontend.service.js +45 -14
  2358. package/dist/esm/core/runtime/start-application.frontend.service.js.map +1 -1
  2359. package/dist/esm/core/runtime/startup-failure-copy.frontend.d.ts +48 -0
  2360. package/dist/esm/core/runtime/startup-failure-copy.frontend.d.ts.map +1 -0
  2361. package/dist/esm/core/runtime/startup-failure-copy.frontend.js +95 -0
  2362. package/dist/esm/core/runtime/startup-failure-copy.frontend.js.map +1 -0
  2363. package/dist/esm/core/runtime/useApplication.d.ts.map +1 -1
  2364. package/dist/esm/core/runtime/useApplication.js.map +1 -1
  2365. package/dist/esm/core/scope/AppScopeContext.d.ts.map +1 -1
  2366. package/dist/esm/core/scope/AppScopeContext.js.map +1 -1
  2367. package/dist/esm/core/scope/scope.frontend.schemas.d.ts.map +1 -1
  2368. package/dist/esm/core/scope/scope.frontend.schemas.js.map +1 -1
  2369. package/dist/esm/core/scope/scope.utils.frontend.service.d.ts.map +1 -1
  2370. package/dist/esm/core/scope/scope.utils.frontend.service.js.map +1 -1
  2371. package/dist/esm/core/scope/useAppScope.d.ts.map +1 -1
  2372. package/dist/esm/core/scope/useAppScope.js.map +1 -1
  2373. package/dist/esm/core/security/AnonymousSessionContext.d.ts.map +1 -1
  2374. package/dist/esm/core/security/AnonymousSessionContext.js.map +1 -1
  2375. package/dist/esm/core/security/AuthSessionContext.d.ts +88 -3
  2376. package/dist/esm/core/security/AuthSessionContext.d.ts.map +1 -1
  2377. package/dist/esm/core/security/AuthSessionContext.js +607 -116
  2378. package/dist/esm/core/security/AuthSessionContext.js.map +1 -1
  2379. package/dist/esm/core/security/StepUpAuthContext.d.ts +12 -0
  2380. package/dist/esm/core/security/StepUpAuthContext.d.ts.map +1 -1
  2381. package/dist/esm/core/security/StepUpAuthContext.js +58 -12
  2382. package/dist/esm/core/security/StepUpAuthContext.js.map +1 -1
  2383. package/dist/esm/core/security/UserOrgsContext.d.ts +15 -1
  2384. package/dist/esm/core/security/UserOrgsContext.d.ts.map +1 -1
  2385. package/dist/esm/core/security/UserOrgsContext.js +55 -17
  2386. package/dist/esm/core/security/UserOrgsContext.js.map +1 -1
  2387. package/dist/esm/core/security/auth-redirect.frontend.utils.d.ts.map +1 -1
  2388. package/dist/esm/core/security/auth-redirect.frontend.utils.js.map +1 -1
  2389. package/dist/esm/core/security/auth-session.utils.d.ts.map +1 -1
  2390. package/dist/esm/core/security/auth-session.utils.js +21 -4
  2391. package/dist/esm/core/security/auth-session.utils.js.map +1 -1
  2392. package/dist/esm/core/security/consent-gate.frontend.utils.d.ts +102 -0
  2393. package/dist/esm/core/security/consent-gate.frontend.utils.d.ts.map +1 -0
  2394. package/dist/esm/core/security/consent-gate.frontend.utils.js +112 -0
  2395. package/dist/esm/core/security/consent-gate.frontend.utils.js.map +1 -0
  2396. package/dist/esm/core/security/cross-frontend-handoff.frontend.service.d.ts.map +1 -1
  2397. package/dist/esm/core/security/cross-frontend-handoff.frontend.service.js.map +1 -1
  2398. package/dist/esm/core/security/federated-reauthentication.frontend.d.ts +74 -0
  2399. package/dist/esm/core/security/federated-reauthentication.frontend.d.ts.map +1 -0
  2400. package/dist/esm/core/security/federated-reauthentication.frontend.js +135 -0
  2401. package/dist/esm/core/security/federated-reauthentication.frontend.js.map +1 -0
  2402. package/dist/esm/core/security/jwt.frontend.utils.d.ts.map +1 -1
  2403. package/dist/esm/core/security/jwt.frontend.utils.js.map +1 -1
  2404. package/dist/esm/core/security/organization-onboarding.frontend.utils.d.ts +50 -0
  2405. package/dist/esm/core/security/organization-onboarding.frontend.utils.d.ts.map +1 -0
  2406. package/dist/esm/core/security/organization-onboarding.frontend.utils.js +55 -0
  2407. package/dist/esm/core/security/organization-onboarding.frontend.utils.js.map +1 -0
  2408. package/dist/esm/core/security/pending-mfa-session-storage.frontend.utils.d.ts +58 -0
  2409. package/dist/esm/core/security/pending-mfa-session-storage.frontend.utils.d.ts.map +1 -0
  2410. package/dist/esm/core/security/pending-mfa-session-storage.frontend.utils.js +88 -0
  2411. package/dist/esm/core/security/pending-mfa-session-storage.frontend.utils.js.map +1 -0
  2412. package/dist/esm/core/security/registration-outcome.frontend.utils.d.ts +78 -0
  2413. package/dist/esm/core/security/registration-outcome.frontend.utils.d.ts.map +1 -0
  2414. package/dist/esm/core/security/registration-outcome.frontend.utils.js +114 -0
  2415. package/dist/esm/core/security/registration-outcome.frontend.utils.js.map +1 -0
  2416. package/dist/esm/core/security/route-organization-access.frontend.utils.d.ts +75 -0
  2417. package/dist/esm/core/security/route-organization-access.frontend.utils.d.ts.map +1 -0
  2418. package/dist/esm/core/security/route-organization-access.frontend.utils.js +78 -0
  2419. package/dist/esm/core/security/route-organization-access.frontend.utils.js.map +1 -0
  2420. package/dist/esm/core/security/security.frontend.schemas.d.ts +70 -1
  2421. package/dist/esm/core/security/security.frontend.schemas.d.ts.map +1 -1
  2422. package/dist/esm/core/security/security.frontend.schemas.js +68 -0
  2423. package/dist/esm/core/security/security.frontend.schemas.js.map +1 -1
  2424. package/dist/esm/core/security/session-token-storage.frontend.service.d.ts.map +1 -1
  2425. package/dist/esm/core/security/session-token-storage.frontend.service.js.map +1 -1
  2426. package/dist/esm/core/security/useAuthSession.d.ts.map +1 -1
  2427. package/dist/esm/core/security/useAuthSession.js.map +1 -1
  2428. package/dist/esm/core/security/useConsentGateBehavior.d.ts +36 -0
  2429. package/dist/esm/core/security/useConsentGateBehavior.d.ts.map +1 -0
  2430. package/dist/esm/core/security/useConsentGateBehavior.js +59 -0
  2431. package/dist/esm/core/security/useConsentGateBehavior.js.map +1 -0
  2432. package/dist/esm/core/security/useDocumentAcceptanceGateBehavior.d.ts +76 -0
  2433. package/dist/esm/core/security/useDocumentAcceptanceGateBehavior.d.ts.map +1 -0
  2434. package/dist/esm/core/security/useDocumentAcceptanceGateBehavior.js +168 -0
  2435. package/dist/esm/core/security/useDocumentAcceptanceGateBehavior.js.map +1 -0
  2436. package/dist/esm/core/security/useResolvedAuthConfig.d.ts +21 -2
  2437. package/dist/esm/core/security/useResolvedAuthConfig.d.ts.map +1 -1
  2438. package/dist/esm/core/security/useResolvedAuthConfig.js +9 -5
  2439. package/dist/esm/core/security/useResolvedAuthConfig.js.map +1 -1
  2440. package/dist/esm/core/security/useRouteOrganizationAccess.d.ts +13 -0
  2441. package/dist/esm/core/security/useRouteOrganizationAccess.d.ts.map +1 -0
  2442. package/dist/esm/core/security/useRouteOrganizationAccess.js +101 -0
  2443. package/dist/esm/core/security/useRouteOrganizationAccess.js.map +1 -0
  2444. package/dist/esm/core/security/useStepUpAuth.d.ts.map +1 -1
  2445. package/dist/esm/core/security/useStepUpAuth.js.map +1 -1
  2446. package/dist/esm/core/security/useUserOrgs.d.ts.map +1 -1
  2447. package/dist/esm/core/security/useUserOrgs.js.map +1 -1
  2448. package/dist/esm/core/ui/SurfaceErrorBoundary.d.ts +3 -0
  2449. package/dist/esm/core/ui/SurfaceErrorBoundary.d.ts.map +1 -1
  2450. package/dist/esm/core/ui/SurfaceErrorBoundary.js +46 -14
  2451. package/dist/esm/core/ui/SurfaceErrorBoundary.js.map +1 -1
  2452. package/dist/esm/core/ui/SurfaceErrorBoundary.labels.d.ts +3 -0
  2453. package/dist/esm/core/ui/SurfaceErrorBoundary.labels.d.ts.map +1 -0
  2454. package/dist/esm/core/ui/SurfaceErrorBoundary.labels.js +14 -0
  2455. package/dist/esm/core/ui/SurfaceErrorBoundary.labels.js.map +1 -0
  2456. package/dist/esm/core/ui/SurfacePolicyContext.d.ts.map +1 -1
  2457. package/dist/esm/core/ui/SurfacePolicyContext.js.map +1 -1
  2458. package/dist/esm/core/ui/TypographyScopeContext.d.ts.map +1 -1
  2459. package/dist/esm/core/ui/TypographyScopeContext.js.map +1 -1
  2460. package/dist/esm/core/ui/UIContext.d.ts.map +1 -1
  2461. package/dist/esm/core/ui/UIContext.js +22 -5
  2462. package/dist/esm/core/ui/UIContext.js.map +1 -1
  2463. package/dist/esm/core/ui/chart-style-defaults.d.ts.map +1 -1
  2464. package/dist/esm/core/ui/chart-style-defaults.js.map +1 -1
  2465. package/dist/esm/core/ui/cn.d.ts.map +1 -1
  2466. package/dist/esm/core/ui/cn.js.map +1 -1
  2467. package/dist/esm/core/ui/color-conversion.utils.d.ts.map +1 -1
  2468. package/dist/esm/core/ui/color-conversion.utils.js.map +1 -1
  2469. package/dist/esm/core/ui/design-token-class-groups.d.ts.map +1 -1
  2470. package/dist/esm/core/ui/design-token-class-groups.js.map +1 -1
  2471. package/dist/esm/core/ui/design-token-config.utils.d.ts.map +1 -1
  2472. package/dist/esm/core/ui/design-token-config.utils.js.map +1 -1
  2473. package/dist/esm/core/ui/design-token.utils.d.ts.map +1 -1
  2474. package/dist/esm/core/ui/design-token.utils.js +3 -3
  2475. package/dist/esm/core/ui/design-token.utils.js.map +1 -1
  2476. package/dist/esm/core/ui/material-runtime.d.ts.map +1 -1
  2477. package/dist/esm/core/ui/material-runtime.js.map +1 -1
  2478. package/dist/esm/core/ui/surface-a11y.utils.d.ts.map +1 -1
  2479. package/dist/esm/core/ui/surface-a11y.utils.js.map +1 -1
  2480. package/dist/esm/core/ui/theme-preference-storage.shared.d.ts.map +1 -1
  2481. package/dist/esm/core/ui/theme-preference-storage.shared.js.map +1 -1
  2482. package/dist/esm/core/ui/themes/default.theme.d.ts.map +1 -1
  2483. package/dist/esm/core/ui/themes/default.theme.js +109 -13
  2484. package/dist/esm/core/ui/themes/default.theme.js.map +1 -1
  2485. package/dist/esm/core/ui/ui.frontend.schemas.d.ts +2 -5
  2486. package/dist/esm/core/ui/ui.frontend.schemas.d.ts.map +1 -1
  2487. package/dist/esm/core/ui/ui.frontend.schemas.js.map +1 -1
  2488. package/dist/esm/core/ui/useThemePreferenceControl.d.ts.map +1 -1
  2489. package/dist/esm/core/ui/useThemePreferenceControl.js.map +1 -1
  2490. package/dist/esm/core/ui/useUI.d.ts.map +1 -1
  2491. package/dist/esm/core/ui/useUI.js.map +1 -1
  2492. package/dist/esm/index.d.ts +29 -0
  2493. package/dist/esm/index.d.ts.map +1 -1
  2494. package/dist/esm/index.js +41 -0
  2495. package/dist/esm/index.js.map +1 -1
  2496. package/dist/esm/tailwind/index.d.ts.map +1 -1
  2497. package/dist/esm/tailwind/index.js +95 -2
  2498. package/dist/esm/tailwind/index.js.map +1 -1
  2499. package/dist/esm/testing/mock-builders.d.ts.map +1 -1
  2500. package/dist/esm/testing/mock-builders.js +35 -1
  2501. package/dist/esm/testing/mock-builders.js.map +1 -1
  2502. package/dist/esm/testing/mock-factory.d.ts.map +1 -1
  2503. package/dist/esm/testing/mock-factory.js.map +1 -1
  2504. package/dist/esm/testing/rmm-helpers.d.ts +2 -0
  2505. package/dist/esm/testing/rmm-helpers.d.ts.map +1 -1
  2506. package/dist/esm/testing/rmm-helpers.js.map +1 -1
  2507. package/dist/esm/testing/test-providers.d.ts.map +1 -1
  2508. package/dist/esm/testing/test-providers.js.map +1 -1
  2509. package/dist/esm/testing.d.ts.map +1 -1
  2510. package/dist/esm/testing.js.map +1 -1
  2511. package/dist/tsconfig.build.tsbuildinfo +1 -1
  2512. package/package.json +22 -33
@@ -87,18 +87,8 @@ export const ResourceReadCacheBridge = () => {
87
87
  logger.info('Resource read cache disabled by environment', { flag: READ_CACHE_ENVIRONMENT_FLAG });
88
88
  }
89
89
  }, [readCache]);
90
- /*
91
- * The SAFE accessor, because this bridge is mounted ABOVE `AppScopeProvider`.
92
- *
93
- * The provider lives inside the router shell, while the bridges sit beside `RMMRegistryProvider`
94
- * one subtree up — so the throwing `useAppScope()` crashes the whole application here, which is
95
- * exactly what it did the first time. `ScopedResourceRegistryProvider` already solved this the
96
- * same way and for the same reason ("If AppScopeProvider isn't mounted yet, behave exactly like
97
- * the base registry").
98
- *
99
- * The consequence is deliberate and safe: with no scope mounted, `currentOrganizationId` is
100
- * `undefined` and stays that way, so the organization-switch effect below never fires a spurious
101
- * clear — and nothing is being cached at that point either, because the socket has no rooms.
90
+ /* The production bridge lives inside AppScopeProvider so organization changes reach this owner.
91
+ * The safe accessor keeps isolated/headless mounts uncached until their coverage is established.
102
92
  */
103
93
  const appScope = useAppScopeSafe();
104
94
  const currentOrganizationId = appScope?.currentOrganizationId ?? null;
@@ -168,6 +158,10 @@ export const ResourceReadCacheBridge = () => {
168
158
  */
169
159
  contextResourceIdentifiers: { [`${qualifier.scopeKey}Id`]: qualifier.scopeId },
170
160
  }).then((result) => {
161
+ // A reset may retire this claim while its acknowledgement is in flight. Compare the request
162
+ // identity, not just the room name: switching away and back may request the same room again.
163
+ if (requestedRoomsRef.current.get(roomName) !== qualifier)
164
+ return;
171
165
  if (result?.success) {
172
166
  confirmedRoomsRef.current.add(roomName);
173
167
  logDebug('scope room confirmed', { roomName });
@@ -179,7 +173,8 @@ export const ResourceReadCacheBridge = () => {
179
173
  logDebug('scope room not confirmed; entries under it stay unservable', { roomName });
180
174
  }
181
175
  }).catch(() => {
182
- requestedRoomsRef.current.delete(roomName);
176
+ if (requestedRoomsRef.current.get(roomName) === qualifier)
177
+ requestedRoomsRef.current.delete(roomName);
183
178
  });
184
179
  }, [claimResourceRoom]);
185
180
  const claimScopeRoomRef = useRef(claimScopeRoom);
@@ -284,6 +279,15 @@ export const ResourceReadCacheBridge = () => {
284
279
  useEffect(() => {
285
280
  readCache.setApplicationId(currentApplicationId);
286
281
  }, [currentApplicationId, readCache]);
282
+ /*
283
+ * And the ambient ORGANIZATION id, for the hydration window rather than for an unaddressable scope.
284
+ * The value is already read above for the cache-clearing effect; the read path needs it too, or an
285
+ * org-scoped read issued before the route publishes one is cached under a room that hears no
286
+ * org invalidation (#1137). Same effect shape, so the two stay obviously parallel.
287
+ */
288
+ useEffect(() => {
289
+ readCache.setOrganizationId(currentOrganizationId);
290
+ }, [currentOrganizationId, readCache]);
287
291
  /*
288
292
  * A RE-connect invalidates every confirmation. The FIRST connection does not.
289
293
  *
@@ -318,8 +322,8 @@ export const ResourceReadCacheBridge = () => {
318
322
  * An ORGANIZATION SWITCH changes which rows a read returns without changing the request.
319
323
  *
320
324
  * `commitOrganizationScopeValue` is a `setState` plus a WebSocket room re-point — there is no page
321
- * reload, and reads are tenancy-filtered at the repository. So without this, switching organization
322
- * would serve the previous tenant's rows from cache. The rooms are re-claimed under the new
325
+ * reload, and reads are tenancy-filtered at the repository. Clear entries and coverage rather than
326
+ * relying on every cache key or prior room claim to encode the new scope. The rooms are re-claimed under the new
323
327
  * organization by the next read that wants them.
324
328
  */
325
329
  useEffect(() => {
@@ -1 +1 @@
1
- {"version":3,"file":"ResourceReadCacheBridge.js","sourceRoot":"","sources":["../../../../src/core/resources/ResourceReadCacheBridge.tsx"],"names":[],"mappings":"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","sourcesContent":["import React, { useCallback, useContext, useEffect, useRef } from 'react';\nimport {\n CoreWebSocketEvent,\n WebSocketResourceDeliveryTarget,\n buildScopeRoomName,\n type ResourceScopeRoomQualifier,\n type WS_ResourceDeletedPayload,\n type WS_ResourceUpdatedPayload,\n} from '@wildo-ai/saas-models';\n\nimport { useWebSocket } from '~wildo-frontend-lib/core/requests/websockets/useWebSocket';\nimport { useResourceRegistry } from '~wildo-frontend-lib/core/resources/useResourceRegistry';\nimport { useAppScopeSafe } from '~wildo-frontend-lib/core/scope/useAppScope';\nimport { ApplicationContext } from '~wildo-frontend-lib/core/runtime/ApplicationContext.shared';\nimport { LoggerFrontendService } from '~wildo-frontend-lib/core/monitoring/logger.frontend.service';\nimport { envLoader } from '~wildo-frontend-lib/core/runtime/env-variable-loader.frontend.service';\nimport type { ResourceReadCoverageAuthority } from '~wildo-frontend-lib/core/resources/resource-read-cache.frontend.service';\n\nconst logger = LoggerFrontendService.getLogger();\nconst logDebug = logger.debugByType('ResourceReadCacheBridge');\nlogger.setDebugTypeLogging('ResourceReadCacheBridge', false);\n\n/** The owner key every scope-room claim from this bridge is made under. */\nconst CLAIM_OWNER_PREFIX = 'read-cache';\n\n/**\n * The environment flag that removes the read cache from the picture entirely.\n *\n * Mirrors `COMPANION_INTROSPECTION_CACHE` on the companion side, deliberately: the same word, the\n * same value, so an operator who has met one knows the other. Optional, and read through the\n * NON-throwing accessor — a diagnostic toggle must never be able to stop an application booting\n * because it was not declared.\n */\nconst READ_CACHE_ENVIRONMENT_FLAG = 'VITE_RESOURCE_READ_CACHE';\n\n/** The value that turns it off. */\nconst READ_CACHE_DISABLED_VALUE = 'off';\n\n/**\n * Makes cached resource reads SERVABLE, by joining the rooms through which they would be told they\n * are stale — and by dropping them when that stops being true.\n *\n * ## Why the cache cannot do this itself\n *\n * `ResourceReadCacheFrontendService` is a plain service on the HTTP client, deliberately: both read\n * paths reach it and it must outlive any React tree. But the answer to \"would an invalidation for\n * this entry reach us?\" lives in the WebSocket connection, which is React-scoped. So the cache holds\n * the entries and this bridge holds the truth about whether they may be served.\n *\n * ## Scope rooms, which the engine already emits into and nobody joined\n *\n * On a mutation the notifications dispatcher emits twice: into the per-row RESOURCE room, and into\n * the SCOPE rooms. Its own comment says why they are separate — *\"Scope rooms are emitted separately\n * from per-resource rooms because they serve list/cache refresh semantics rather than authoritative\n * per-resource replay semantics.\"* That is exactly this tier's channel, and until now nothing on the\n * client subscribed to it: rooms were claimed only from live `ResourceMutationManager` instances, so\n * a LIST had no way to hear that it had changed.\n *\n * The room set for an entry is computed by `deriveResourceScopeRoomQualifiers` — the SAME function\n * the dispatcher uses to decide where to emit, moved into `@wildo-ai/saas-models` for this purpose.\n * Two implementations of that rule would fail silently: a client subscribed to the wrong room does\n * not error, it simply never hears anything.\n *\n * ## Coverage is refused, not assumed\n *\n * `covers()` answers `true` only while the socket is connected AND every room for the entry is\n * claimed AND confirmed by the server. A subscription the server REFUSED — `verifyResourceAccess`\n * denies a PUBLIC socket outright — leaves the room unconfirmed, so nothing is served from it. The\n * cache then behaves exactly as it did before this tier existed.\n */\nexport const ResourceReadCacheBridge: React.FC = () => {\n const { on, isConnected, connectionCount, claimResourceRoom, releaseResourceRoom } = useWebSocket();\n const { getReadCache } = useResourceRegistry();\n /*\n * Resolved ONCE per render into the cache INSTANCE, and every effect below depends on that\n * instance rather than on `getReadCache`.\n *\n * `ResourceRegistryContext` builds its value object unmemoized, so `getReadCache` is a fresh\n * closure on every provider render. Depending on it re-ran the authority effect each time, and\n * `setCoverageAuthority` clears the cache by design — so the cache was emptied on essentially\n * every render and could never survive long enough to be useful. The instance itself comes from\n * the HTTP-client singleton and is stable for the life of the application.\n *\n * Found by a mutation test: removing the organization-switch clear left every case green, because\n * this effect was already clearing the cache constantly and masking it.\n */\n const readCache = getReadCache();\n\n /*\n * The operator escape hatch, applied before anything can be stored.\n *\n * The blast radius of this tier is every generated application on both persistence adapters, so\n * someone who SUSPECTS the cache has to be able to take it out of the picture without a rebuild\n * and without waiting for a fix. `VITE_RESOURCE_READ_CACHE=off` does that, and the cache then\n * behaves exactly as it did before this tier existed.\n */\n useEffect(() => {\n const disabled = envLoader.readOptionalEnvironmentValue(READ_CACHE_ENVIRONMENT_FLAG)?.toLowerCase()\n === READ_CACHE_DISABLED_VALUE;\n readCache.setEnabled(!disabled);\n if (disabled) {\n logger.info('Resource read cache disabled by environment', { flag: READ_CACHE_ENVIRONMENT_FLAG });\n }\n }, [readCache]);\n /*\n * The SAFE accessor, because this bridge is mounted ABOVE `AppScopeProvider`.\n *\n * The provider lives inside the router shell, while the bridges sit beside `RMMRegistryProvider`\n * one subtree up — so the throwing `useAppScope()` crashes the whole application here, which is\n * exactly what it did the first time. `ScopedResourceRegistryProvider` already solved this the\n * same way and for the same reason (\"If AppScopeProvider isn't mounted yet, behave exactly like\n * the base registry\").\n *\n * The consequence is deliberate and safe: with no scope mounted, `currentOrganizationId` is\n * `undefined` and stays that way, so the organization-switch effect below never fires a spurious\n * clear — and nothing is being cached at that point either, because the socket has no rooms.\n */\n const appScope = useAppScopeSafe();\n const currentOrganizationId = appScope?.currentOrganizationId ?? null;\n /*\n * The application id comes from APP CONFIG, not from the scope and not from the token.\n *\n * Both were checked on the running stack (issue #283): the access token's claims carry `userId`\n * and no `applicationId`, and `AppScopeContext` derives its `currentApplicationId` by decoding\n * that same token — so it is null wherever the claim is absent, which is everywhere. The backend\n * now publishes the id on `appIdentity`, which is the one surface that actually has it.\n *\n * Read through `useContext` rather than `useApplication()` on purpose: that hook THROWS outside\n * its provider, and a bridge that crashes the tree when mounted a level too high is a defect this\n * component has already had once.\n */\n const applicationContext = useContext(ApplicationContext);\n const currentApplicationId = applicationContext?.appIdentity?.applicationId\n ?? appScope?.currentApplicationId\n ?? null;\n\n /** Rooms the server has CONFIRMED. Only these make an entry servable. */\n const confirmedRoomsRef = useRef<Set<string>>(new Set());\n /** Rooms claimed but not yet confirmed, so a burst of reads claims each room once. */\n const requestedRoomsRef = useRef<Map<string, ResourceScopeRoomQualifier & { resourceType: string }>>(new Map());\n /*\n * Rooms a read asked for BEFORE the socket was up, held until it is.\n *\n * This is the difference between a cache that works on a page load and one that does not.\n * `requestCoverage` used to return silently when disconnected, and nothing ever asked again — so\n * every read that completed during the connect window was stored uncovered and stayed uncovered\n * for the surface's whole life. Measured on the running dogfood application (2026-09-10): a single\n * navigation to the todos collection issued FOUR coverage requests for `todos`, all four with\n * `isConnected: false`, and the client emitted no `resource:subscribe` frame at all. Whether a room\n * was ever claimed came down to whether some LATER read happened to re-enter `store()` after the\n * socket came up, which is incidental rather than designed — and on the e2e lane's timing it did\n * not happen, so the scenario timed out against a subscription nobody had asked for.\n */\n const pendingRoomsRef = useRef<Map<string, ResourceScopeRoomQualifier & { resourceType: string }>>(new Map());\n /*\n * LATEST-VALUE refs, read by the authority rather than captured by it.\n *\n * The authority must be installed ONCE per cache instance, because installing it CLEARS the cache\n * (see `setCoverageAuthority`). Capturing `isConnected` or the claim callbacks in the closure would\n * put them in the effect's dependency list and reinstall the authority every time any of them\n * changed — which is exactly what happened on the `isConnected` false -> true edge, wiping the\n * cache at the precise moment it first became coverable. Assigned during render so a read firing\n * from a sibling's effect cannot observe a stale value.\n */\n const isConnectedRef = useRef(isConnected);\n isConnectedRef.current = isConnected;\n\n /*\n * Claim one scope room and record the outcome. The single place a claim is made, so a room queued\n * while disconnected and a room requested while connected travel identical paths.\n */\n const claimScopeRoom = useCallback((\n roomName: string,\n qualifier: ResourceScopeRoomQualifier & { resourceType: string },\n ) => {\n if (requestedRoomsRef.current.has(roomName)) return;\n requestedRoomsRef.current.set(roomName, qualifier);\n\n void claimResourceRoom({\n ownerKey: `${CLAIM_OWNER_PREFIX}:${roomName}`,\n resourceType: qualifier.resourceType,\n scopeKey: qualifier.scopeKey,\n scopeId: qualifier.scopeId,\n /*\n * The scope's own identifier, in the shape the server's authorization expects. The subscribe\n * handler refuses an EMPTY `contextResourceIdentifiers` outright, and `verifyScopeAccess` reads\n * the scope from it — so this is the authorization input, not decoration.\n */\n contextResourceIdentifiers: { [`${qualifier.scopeKey}Id`]: qualifier.scopeId },\n }).then((result) => {\n if (result?.success) {\n confirmedRoomsRef.current.add(roomName);\n logDebug('scope room confirmed', { roomName });\n } else {\n // Refused or unreachable. The room stays unconfirmed, so nothing keyed to it is ever\n // served — the cache degrades to the un-cached path rather than guessing.\n requestedRoomsRef.current.delete(roomName);\n logDebug('scope room not confirmed; entries under it stay unservable', { roomName });\n }\n }).catch(() => {\n requestedRoomsRef.current.delete(roomName);\n });\n }, [claimResourceRoom]);\n\n const claimScopeRoomRef = useRef(claimScopeRoom);\n claimScopeRoomRef.current = claimScopeRoom;\n\n const releaseAllRooms = useCallback(() => {\n for (const [roomName, qualifier] of requestedRoomsRef.current) {\n void releaseResourceRoom({\n ownerKey: `${CLAIM_OWNER_PREFIX}:${roomName}`,\n resourceType: qualifier.resourceType,\n scopeKey: qualifier.scopeKey,\n scopeId: qualifier.scopeId,\n contextResourceIdentifiers: { [`${qualifier.scopeKey}Id`]: qualifier.scopeId },\n });\n }\n requestedRoomsRef.current.clear();\n confirmedRoomsRef.current.clear();\n pendingRoomsRef.current.clear();\n }, [releaseResourceRoom]);\n\n const releaseAllRoomsRef = useRef(releaseAllRooms);\n releaseAllRoomsRef.current = releaseAllRooms;\n\n /*\n * Install the authority, and take it away again on unmount.\n *\n * `setCoverageAuthority` clears the cache on both edges by construction — an authority that is\n * being replaced knows nothing about what the previous one covered, so every held entry is of\n * unknown freshness.\n */\n useEffect(() => {\n const cache = readCache;\n\n const authority: ResourceReadCoverageAuthority = {\n covers: (_resourceType, scopes) => {\n if (!isConnectedRef.current) return false;\n if (scopes.length === 0) return false;\n return scopes.every((scope) => confirmedRoomsRef.current.has(\n buildScopeRoomName(_resourceType, scope.scopeKey, scope.scopeId),\n ));\n },\n requestCoverage: (resourceType, scopes) => {\n for (const scope of scopes) {\n const roomName = buildScopeRoomName(resourceType, scope.scopeKey, scope.scopeId);\n if (requestedRoomsRef.current.has(roomName)) continue;\n\n /*\n * DEFERRED, not dropped. A read completing before the socket is up is the ordinary case on\n * a page load, not an edge — the surface's own first read is usually one of them — and\n * returning here silently left its entry uncovered forever.\n */\n if (!isConnectedRef.current) {\n pendingRoomsRef.current.set(roomName, { ...scope, resourceType });\n logDebug('coverage deferred until the socket is up', { roomName });\n continue;\n }\n\n claimScopeRoomRef.current(roomName, { ...scope, resourceType });\n }\n },\n };\n\n cache.setCoverageAuthority(authority);\n return () => {\n cache.setCoverageAuthority(null);\n releaseAllRoomsRef.current();\n };\n /*\n * `readCache` ALONE, and that is the whole point of the refs above.\n *\n * `isConnected` was in this list until 2026-09-10, and because installing an authority clears\n * the cache, the false -> true edge emptied it at the exact moment it first became coverable.\n * Every entry a page had read up to that point was discarded, and the coverage those reads had\n * asked for had already been dropped by the disconnected early-return. The tier could therefore\n * only ever cache reads that happened to occur AFTER the socket came up — on the dogfood\n * application's todos collection, none did, so it served nothing while reporting nothing.\n *\n * The authority's IDENTITY does not change when the socket connects; only its ability to claim\n * rooms does, and that is now read from a ref. A genuine socket REPLACEMENT is a different event\n * and is still handled, by the `connectionCount` effect below.\n */\n }, [readCache]);\n\n /*\n * Claim what the page already asked for, as soon as the socket can carry it.\n *\n * The other half of the deferral above. Without this the queue would only be a politer way of\n * dropping the request.\n */\n useEffect(() => {\n if (!isConnected) return;\n if (pendingRoomsRef.current.size === 0) return;\n\n const deferred = [...pendingRoomsRef.current.entries()];\n pendingRoomsRef.current.clear();\n logDebug('claiming coverage deferred during the connect window', { rooms: deferred.length });\n for (const [roomName, qualifier] of deferred) claimScopeRoom(roomName, qualifier);\n }, [isConnected, claimScopeRoom]);\n\n /*\n * Hand the cache the ambient application id.\n *\n * An APPLICATION-scoped resource's room is keyed on it, and no URL carries one — so without this\n * the read path cannot name the room it belongs in, and a push addressed there is received by\n * nobody (issue #283). The bridge is the right place because it is a COMPONENT and can read the\n * app scope; the cache service is plain and cannot.\n */\n useEffect(() => {\n readCache.setApplicationId(currentApplicationId);\n }, [currentApplicationId, readCache]);\n\n /*\n * A RE-connect invalidates every confirmation. The FIRST connection does not.\n *\n * Rooms are per-SOCKET, so a REPLACEMENT socket has joined nothing — and the window in which a\n * socket was down is exactly the window in which a mutation could have gone unheard. Both halves\n * point the same way for a reconnect: drop the cache and start the claims again.\n *\n * Neither half holds for connection number one, and treating it the same was the second half of\n * the page-load defect. There is no earlier socket whose rooms could have lapsed, nothing was ever\n * served (`covers()` answers false while disconnected, so a stale entry could not have reached a\n * caller), and the \"window in which a mutation went unheard\" is the page load itself — during\n * which the entries were read from the server and are as fresh as any read. Clearing there simply\n * discarded the first screen's worth of reads and left the tier inert for the surface that\n * triggered them. The residual window — a mutation between a read and its room being joined — is\n * unavoidable in any read-through cache and exists identically for the first read AFTER connection.\n */\n const previousConnectionCountRef = useRef(connectionCount);\n useEffect(() => {\n const previousConnectionCount = previousConnectionCountRef.current;\n previousConnectionCountRef.current = connectionCount;\n if (connectionCount <= 1) return;\n if (connectionCount === previousConnectionCount) return;\n confirmedRoomsRef.current.clear();\n requestedRoomsRef.current.clear();\n pendingRoomsRef.current.clear();\n readCache.clear();\n logDebug('reconnected; coverage and cache reset', { connectionCount });\n }, [connectionCount, readCache]);\n\n /*\n * An ORGANIZATION SWITCH changes which rows a read returns without changing the request.\n *\n * `commitOrganizationScopeValue` is a `setState` plus a WebSocket room re-point — there is no page\n * reload, and reads are tenancy-filtered at the repository. So without this, switching organization\n * would serve the previous tenant's rows from cache. The rooms are re-claimed under the new\n * organization by the next read that wants them.\n */\n useEffect(() => {\n readCache.clear();\n releaseAllRooms();\n logDebug('organization scope changed; cache cleared', { currentOrganizationId });\n }, [currentOrganizationId, readCache, releaseAllRooms]);\n\n /* Invalidate on anything the server says changed, at whatever grade it arrives. */\n useEffect(() => {\n if (!isConnected) return;\n\n const unsubscribeUpdated = on<WS_ResourceUpdatedPayload>(\n CoreWebSocketEvent.RESOURCE_UPDATED,\n (payload) => {\n /*\n * Every grade invalidates, including the SYNC grade that carries a full row.\n *\n * A sync payload is authoritative for ONE row, and a cached entry is usually a LIST whose\n * membership, ordering and pagination the row cannot settle — an added row does not announce\n * where it belongs. Patching the row into the cached list would be a guess; dropping the\n * entry costs one refetch and cannot be wrong.\n */\n readCache.invalidateResourceType(payload.resourceType);\n logDebug('invalidated by resource update', {\n resourceType: payload.resourceType,\n deliveryTarget: payload.deliveryTarget,\n isScopeRoom: payload.deliveryTarget === WebSocketResourceDeliveryTarget.SCOPE_ROOM_NOTIFICATION,\n });\n },\n );\n\n const unsubscribeDeleted = on<WS_ResourceDeletedPayload>(\n CoreWebSocketEvent.RESOURCE_DELETED,\n (payload) => {\n readCache.invalidateResourceType(payload.resourceType);\n },\n );\n\n return () => {\n unsubscribeUpdated();\n unsubscribeDeleted();\n };\n }, [on, isConnected, readCache]);\n\n return null;\n};\n"]}
1
+ {"version":3,"file":"ResourceReadCacheBridge.js","sourceRoot":"","sources":["../../../../../src/core/resources/ResourceReadCacheBridge.tsx"],"names":[],"mappings":"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","sourcesContent":["import React, { useCallback, useContext, useEffect, useRef } from 'react';\nimport {\n CoreWebSocketEvent,\n WebSocketResourceDeliveryTarget,\n buildScopeRoomName,\n type ResourceScopeRoomQualifier,\n type WS_ResourceDeletedPayload,\n type WS_ResourceUpdatedPayload,\n} from '@wildo-ai/saas-models';\n\nimport { useWebSocket } from '~wildo-frontend-lib/core/requests/websockets/useWebSocket';\nimport { useResourceRegistry } from '~wildo-frontend-lib/core/resources/useResourceRegistry';\nimport { useAppScopeSafe } from '~wildo-frontend-lib/core/scope/useAppScope';\nimport { ApplicationContext } from '~wildo-frontend-lib/core/runtime/ApplicationContext.shared';\nimport { LoggerFrontendService } from '~wildo-frontend-lib/core/monitoring/logger.frontend.service';\nimport { envLoader } from '~wildo-frontend-lib/core/runtime/env-variable-loader.frontend.service';\nimport type { ResourceReadCoverageAuthority } from '~wildo-frontend-lib/core/resources/resource-read-cache.frontend.service';\n\nconst logger = LoggerFrontendService.getLogger();\nconst logDebug = logger.debugByType('ResourceReadCacheBridge');\nlogger.setDebugTypeLogging('ResourceReadCacheBridge', false);\n\n/** The owner key every scope-room claim from this bridge is made under. */\nconst CLAIM_OWNER_PREFIX = 'read-cache';\n\n/**\n * The environment flag that removes the read cache from the picture entirely.\n *\n * Mirrors `COMPANION_INTROSPECTION_CACHE` on the companion side, deliberately: the same word, the\n * same value, so an operator who has met one knows the other. Optional, and read through the\n * NON-throwing accessor — a diagnostic toggle must never be able to stop an application booting\n * because it was not declared.\n */\nconst READ_CACHE_ENVIRONMENT_FLAG = 'VITE_RESOURCE_READ_CACHE';\n\n/** The value that turns it off. */\nconst READ_CACHE_DISABLED_VALUE = 'off';\n\n/**\n * Makes cached resource reads SERVABLE, by joining the rooms through which they would be told they\n * are stale — and by dropping them when that stops being true.\n *\n * ## Why the cache cannot do this itself\n *\n * `ResourceReadCacheFrontendService` is a plain service on the HTTP client, deliberately: both read\n * paths reach it and it must outlive any React tree. But the answer to \"would an invalidation for\n * this entry reach us?\" lives in the WebSocket connection, which is React-scoped. So the cache holds\n * the entries and this bridge holds the truth about whether they may be served.\n *\n * ## Scope rooms, which the engine already emits into and nobody joined\n *\n * On a mutation the notifications dispatcher emits twice: into the per-row RESOURCE room, and into\n * the SCOPE rooms. Its own comment says why they are separate — *\"Scope rooms are emitted separately\n * from per-resource rooms because they serve list/cache refresh semantics rather than authoritative\n * per-resource replay semantics.\"* That is exactly this tier's channel, and until now nothing on the\n * client subscribed to it: rooms were claimed only from live `ResourceMutationManager` instances, so\n * a LIST had no way to hear that it had changed.\n *\n * The room set for an entry is computed by `deriveResourceScopeRoomQualifiers` — the SAME function\n * the dispatcher uses to decide where to emit, moved into `@wildo-ai/saas-models` for this purpose.\n * Two implementations of that rule would fail silently: a client subscribed to the wrong room does\n * not error, it simply never hears anything.\n *\n * ## Coverage is refused, not assumed\n *\n * `covers()` answers `true` only while the socket is connected AND every room for the entry is\n * claimed AND confirmed by the server. A subscription the server REFUSED — `verifyResourceAccess`\n * denies a PUBLIC socket outright — leaves the room unconfirmed, so nothing is served from it. The\n * cache then behaves exactly as it did before this tier existed.\n */\nexport const ResourceReadCacheBridge: React.FC = () => {\n const { on, isConnected, connectionCount, claimResourceRoom, releaseResourceRoom } = useWebSocket();\n const { getReadCache } = useResourceRegistry();\n /*\n * Resolved ONCE per render into the cache INSTANCE, and every effect below depends on that\n * instance rather than on `getReadCache`.\n *\n * `ResourceRegistryContext` builds its value object unmemoized, so `getReadCache` is a fresh\n * closure on every provider render. Depending on it re-ran the authority effect each time, and\n * `setCoverageAuthority` clears the cache by design — so the cache was emptied on essentially\n * every render and could never survive long enough to be useful. The instance itself comes from\n * the HTTP-client singleton and is stable for the life of the application.\n *\n * Found by a mutation test: removing the organization-switch clear left every case green, because\n * this effect was already clearing the cache constantly and masking it.\n */\n const readCache = getReadCache();\n\n /*\n * The operator escape hatch, applied before anything can be stored.\n *\n * The blast radius of this tier is every generated application on both persistence adapters, so\n * someone who SUSPECTS the cache has to be able to take it out of the picture without a rebuild\n * and without waiting for a fix. `VITE_RESOURCE_READ_CACHE=off` does that, and the cache then\n * behaves exactly as it did before this tier existed.\n */\n useEffect(() => {\n const disabled = envLoader.readOptionalEnvironmentValue(READ_CACHE_ENVIRONMENT_FLAG)?.toLowerCase()\n === READ_CACHE_DISABLED_VALUE;\n readCache.setEnabled(!disabled);\n if (disabled) {\n logger.info('Resource read cache disabled by environment', { flag: READ_CACHE_ENVIRONMENT_FLAG });\n }\n }, [readCache]);\n /* The production bridge lives inside AppScopeProvider so organization changes reach this owner.\n * The safe accessor keeps isolated/headless mounts uncached until their coverage is established.\n */\n const appScope = useAppScopeSafe();\n const currentOrganizationId = appScope?.currentOrganizationId ?? null;\n /*\n * The application id comes from APP CONFIG, not from the scope and not from the token.\n *\n * Both were checked on the running stack (issue #283): the access token's claims carry `userId`\n * and no `applicationId`, and `AppScopeContext` derives its `currentApplicationId` by decoding\n * that same token — so it is null wherever the claim is absent, which is everywhere. The backend\n * now publishes the id on `appIdentity`, which is the one surface that actually has it.\n *\n * Read through `useContext` rather than `useApplication()` on purpose: that hook THROWS outside\n * its provider, and a bridge that crashes the tree when mounted a level too high is a defect this\n * component has already had once.\n */\n const applicationContext = useContext(ApplicationContext);\n const currentApplicationId = applicationContext?.appIdentity?.applicationId\n ?? appScope?.currentApplicationId\n ?? null;\n\n /** Rooms the server has CONFIRMED. Only these make an entry servable. */\n const confirmedRoomsRef = useRef<Set<string>>(new Set());\n /** Rooms claimed but not yet confirmed, so a burst of reads claims each room once. */\n const requestedRoomsRef = useRef<Map<string, ResourceScopeRoomQualifier & { resourceType: string }>>(new Map());\n /*\n * Rooms a read asked for BEFORE the socket was up, held until it is.\n *\n * This is the difference between a cache that works on a page load and one that does not.\n * `requestCoverage` used to return silently when disconnected, and nothing ever asked again — so\n * every read that completed during the connect window was stored uncovered and stayed uncovered\n * for the surface's whole life. Measured on the running dogfood application (2026-09-10): a single\n * navigation to the todos collection issued FOUR coverage requests for `todos`, all four with\n * `isConnected: false`, and the client emitted no `resource:subscribe` frame at all. Whether a room\n * was ever claimed came down to whether some LATER read happened to re-enter `store()` after the\n * socket came up, which is incidental rather than designed — and on the e2e lane's timing it did\n * not happen, so the scenario timed out against a subscription nobody had asked for.\n */\n const pendingRoomsRef = useRef<Map<string, ResourceScopeRoomQualifier & { resourceType: string }>>(new Map());\n /*\n * LATEST-VALUE refs, read by the authority rather than captured by it.\n *\n * The authority must be installed ONCE per cache instance, because installing it CLEARS the cache\n * (see `setCoverageAuthority`). Capturing `isConnected` or the claim callbacks in the closure would\n * put them in the effect's dependency list and reinstall the authority every time any of them\n * changed — which is exactly what happened on the `isConnected` false -> true edge, wiping the\n * cache at the precise moment it first became coverable. Assigned during render so a read firing\n * from a sibling's effect cannot observe a stale value.\n */\n const isConnectedRef = useRef(isConnected);\n isConnectedRef.current = isConnected;\n\n /*\n * Claim one scope room and record the outcome. The single place a claim is made, so a room queued\n * while disconnected and a room requested while connected travel identical paths.\n */\n const claimScopeRoom = useCallback((\n roomName: string,\n qualifier: ResourceScopeRoomQualifier & { resourceType: string },\n ) => {\n if (requestedRoomsRef.current.has(roomName)) return;\n requestedRoomsRef.current.set(roomName, qualifier);\n\n void claimResourceRoom({\n ownerKey: `${CLAIM_OWNER_PREFIX}:${roomName}`,\n resourceType: qualifier.resourceType,\n scopeKey: qualifier.scopeKey,\n scopeId: qualifier.scopeId,\n /*\n * The scope's own identifier, in the shape the server's authorization expects. The subscribe\n * handler refuses an EMPTY `contextResourceIdentifiers` outright, and `verifyScopeAccess` reads\n * the scope from it — so this is the authorization input, not decoration.\n */\n contextResourceIdentifiers: { [`${qualifier.scopeKey}Id`]: qualifier.scopeId },\n }).then((result) => {\n // A reset may retire this claim while its acknowledgement is in flight. Compare the request\n // identity, not just the room name: switching away and back may request the same room again.\n if (requestedRoomsRef.current.get(roomName) !== qualifier) return;\n if (result?.success) {\n confirmedRoomsRef.current.add(roomName);\n logDebug('scope room confirmed', { roomName });\n } else {\n // Refused or unreachable. The room stays unconfirmed, so nothing keyed to it is ever\n // served — the cache degrades to the un-cached path rather than guessing.\n requestedRoomsRef.current.delete(roomName);\n logDebug('scope room not confirmed; entries under it stay unservable', { roomName });\n }\n }).catch(() => {\n if (requestedRoomsRef.current.get(roomName) === qualifier) requestedRoomsRef.current.delete(roomName);\n });\n }, [claimResourceRoom]);\n\n const claimScopeRoomRef = useRef(claimScopeRoom);\n claimScopeRoomRef.current = claimScopeRoom;\n\n const releaseAllRooms = useCallback(() => {\n for (const [roomName, qualifier] of requestedRoomsRef.current) {\n void releaseResourceRoom({\n ownerKey: `${CLAIM_OWNER_PREFIX}:${roomName}`,\n resourceType: qualifier.resourceType,\n scopeKey: qualifier.scopeKey,\n scopeId: qualifier.scopeId,\n contextResourceIdentifiers: { [`${qualifier.scopeKey}Id`]: qualifier.scopeId },\n });\n }\n requestedRoomsRef.current.clear();\n confirmedRoomsRef.current.clear();\n pendingRoomsRef.current.clear();\n }, [releaseResourceRoom]);\n\n const releaseAllRoomsRef = useRef(releaseAllRooms);\n releaseAllRoomsRef.current = releaseAllRooms;\n\n /*\n * Install the authority, and take it away again on unmount.\n *\n * `setCoverageAuthority` clears the cache on both edges by construction — an authority that is\n * being replaced knows nothing about what the previous one covered, so every held entry is of\n * unknown freshness.\n */\n useEffect(() => {\n const cache = readCache;\n\n const authority: ResourceReadCoverageAuthority = {\n covers: (_resourceType, scopes) => {\n if (!isConnectedRef.current) return false;\n if (scopes.length === 0) return false;\n return scopes.every((scope) => confirmedRoomsRef.current.has(\n buildScopeRoomName(_resourceType, scope.scopeKey, scope.scopeId),\n ));\n },\n requestCoverage: (resourceType, scopes) => {\n for (const scope of scopes) {\n const roomName = buildScopeRoomName(resourceType, scope.scopeKey, scope.scopeId);\n if (requestedRoomsRef.current.has(roomName)) continue;\n\n /*\n * DEFERRED, not dropped. A read completing before the socket is up is the ordinary case on\n * a page load, not an edge — the surface's own first read is usually one of them — and\n * returning here silently left its entry uncovered forever.\n */\n if (!isConnectedRef.current) {\n pendingRoomsRef.current.set(roomName, { ...scope, resourceType });\n logDebug('coverage deferred until the socket is up', { roomName });\n continue;\n }\n\n claimScopeRoomRef.current(roomName, { ...scope, resourceType });\n }\n },\n };\n\n cache.setCoverageAuthority(authority);\n return () => {\n cache.setCoverageAuthority(null);\n releaseAllRoomsRef.current();\n };\n /*\n * `readCache` ALONE, and that is the whole point of the refs above.\n *\n * `isConnected` was in this list until 2026-09-10, and because installing an authority clears\n * the cache, the false -> true edge emptied it at the exact moment it first became coverable.\n * Every entry a page had read up to that point was discarded, and the coverage those reads had\n * asked for had already been dropped by the disconnected early-return. The tier could therefore\n * only ever cache reads that happened to occur AFTER the socket came up — on the dogfood\n * application's todos collection, none did, so it served nothing while reporting nothing.\n *\n * The authority's IDENTITY does not change when the socket connects; only its ability to claim\n * rooms does, and that is now read from a ref. A genuine socket REPLACEMENT is a different event\n * and is still handled, by the `connectionCount` effect below.\n */\n }, [readCache]);\n\n /*\n * Claim what the page already asked for, as soon as the socket can carry it.\n *\n * The other half of the deferral above. Without this the queue would only be a politer way of\n * dropping the request.\n */\n useEffect(() => {\n if (!isConnected) return;\n if (pendingRoomsRef.current.size === 0) return;\n\n const deferred = [...pendingRoomsRef.current.entries()];\n pendingRoomsRef.current.clear();\n logDebug('claiming coverage deferred during the connect window', { rooms: deferred.length });\n for (const [roomName, qualifier] of deferred) claimScopeRoom(roomName, qualifier);\n }, [isConnected, claimScopeRoom]);\n\n /*\n * Hand the cache the ambient application id.\n *\n * An APPLICATION-scoped resource's room is keyed on it, and no URL carries one — so without this\n * the read path cannot name the room it belongs in, and a push addressed there is received by\n * nobody (issue #283). The bridge is the right place because it is a COMPONENT and can read the\n * app scope; the cache service is plain and cannot.\n */\n useEffect(() => {\n readCache.setApplicationId(currentApplicationId);\n }, [currentApplicationId, readCache]);\n\n /*\n * And the ambient ORGANIZATION id, for the hydration window rather than for an unaddressable scope.\n * The value is already read above for the cache-clearing effect; the read path needs it too, or an\n * org-scoped read issued before the route publishes one is cached under a room that hears no\n * org invalidation (#1137). Same effect shape, so the two stay obviously parallel.\n */\n useEffect(() => {\n readCache.setOrganizationId(currentOrganizationId);\n }, [currentOrganizationId, readCache]);\n\n /*\n * A RE-connect invalidates every confirmation. The FIRST connection does not.\n *\n * Rooms are per-SOCKET, so a REPLACEMENT socket has joined nothing — and the window in which a\n * socket was down is exactly the window in which a mutation could have gone unheard. Both halves\n * point the same way for a reconnect: drop the cache and start the claims again.\n *\n * Neither half holds for connection number one, and treating it the same was the second half of\n * the page-load defect. There is no earlier socket whose rooms could have lapsed, nothing was ever\n * served (`covers()` answers false while disconnected, so a stale entry could not have reached a\n * caller), and the \"window in which a mutation went unheard\" is the page load itself — during\n * which the entries were read from the server and are as fresh as any read. Clearing there simply\n * discarded the first screen's worth of reads and left the tier inert for the surface that\n * triggered them. The residual window — a mutation between a read and its room being joined — is\n * unavoidable in any read-through cache and exists identically for the first read AFTER connection.\n */\n const previousConnectionCountRef = useRef(connectionCount);\n useEffect(() => {\n const previousConnectionCount = previousConnectionCountRef.current;\n previousConnectionCountRef.current = connectionCount;\n if (connectionCount <= 1) return;\n if (connectionCount === previousConnectionCount) return;\n confirmedRoomsRef.current.clear();\n requestedRoomsRef.current.clear();\n pendingRoomsRef.current.clear();\n readCache.clear();\n logDebug('reconnected; coverage and cache reset', { connectionCount });\n }, [connectionCount, readCache]);\n\n /*\n * An ORGANIZATION SWITCH changes which rows a read returns without changing the request.\n *\n * `commitOrganizationScopeValue` is a `setState` plus a WebSocket room re-point — there is no page\n * reload, and reads are tenancy-filtered at the repository. Clear entries and coverage rather than\n * relying on every cache key or prior room claim to encode the new scope. The rooms are re-claimed under the new\n * organization by the next read that wants them.\n */\n useEffect(() => {\n readCache.clear();\n releaseAllRooms();\n logDebug('organization scope changed; cache cleared', { currentOrganizationId });\n }, [currentOrganizationId, readCache, releaseAllRooms]);\n\n /* Invalidate on anything the server says changed, at whatever grade it arrives. */\n useEffect(() => {\n if (!isConnected) return;\n\n const unsubscribeUpdated = on<WS_ResourceUpdatedPayload>(\n CoreWebSocketEvent.RESOURCE_UPDATED,\n (payload) => {\n /*\n * Every grade invalidates, including the SYNC grade that carries a full row.\n *\n * A sync payload is authoritative for ONE row, and a cached entry is usually a LIST whose\n * membership, ordering and pagination the row cannot settle — an added row does not announce\n * where it belongs. Patching the row into the cached list would be a guess; dropping the\n * entry costs one refetch and cannot be wrong.\n */\n readCache.invalidateResourceType(payload.resourceType);\n logDebug('invalidated by resource update', {\n resourceType: payload.resourceType,\n deliveryTarget: payload.deliveryTarget,\n isScopeRoom: payload.deliveryTarget === WebSocketResourceDeliveryTarget.SCOPE_ROOM_NOTIFICATION,\n });\n },\n );\n\n const unsubscribeDeleted = on<WS_ResourceDeletedPayload>(\n CoreWebSocketEvent.RESOURCE_DELETED,\n (payload) => {\n readCache.invalidateResourceType(payload.resourceType);\n },\n );\n\n return () => {\n unsubscribeUpdated();\n unsubscribeDeleted();\n };\n }, [on, isConnected, readCache]);\n\n return null;\n};\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"ResourceRegistryContext.d.ts","sourceRoot":"","sources":["../../../../src/core/resources/ResourceRegistryContext.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gCAAgC,EAAE,MAAM,yEAAyE,CAAC;AAChI,OAAO,EAEL,mCAAmC,EAIpC,MAAM,uBAAuB,CAAC;AAE/B,OAAO,KAAK,EAAE,EAAiB,SAAS,EAAmC,MAAM,OAAO,CAAC;AAEzF,OAAO,EACL,+BAA+B,EAC/B,4BAA4B,EAC7B,MAAM,gFAAgF,CAAC;AACxF,OAAO,EAAE,cAAc,EAAE,mBAAmB,EAAE,iBAAiB,EAAE,MAAM,sEAAsE,CAAC;AAC9I,OAAO,EAAE,kCAAkC,EAAE,MAAM,yCAAyC,CAAC;AAC7F,OAAO,KAAK,EAAE,gCAAgC,EAAE,uCAAuC,EAAE,yBAAyB,EAAE,MAAM,+DAA+D,CAAC;AAE1L,OAAO,EAAkC,KAAK,8BAA8B,EAAE,MAAM,qFAAqF,CAAC;AAE1K;;;;;;;;;;;GAWG;AAEH,MAAM,MAAM,gBAAgB,GAAG,MAAM,CAAC;AACtC,MAAM,MAAM,uBAAuB,GAAG,mCAAmC,CAAC,GAAG,EAAE,GAAG,CAAC,GAAG,gBAAgB,CAAC;AAEvG,MAAM,WAAW,2BAA2B;IAE1C,QAAQ,EAAE,yBAAyB,CAAC;IAGpC;;;;;;;;;;;OAWG;IACH,WAAW,EAAE,CAAC,SAAS,GAAG,GAAG,EAC3B,aAAa,EAAE,uBAAuB,EACtC,UAAU,EAAE,+BAA+B,GAAG,4BAA4B,EAC1E,OAAO,CAAC,EAAE,cAAc,KACrB,OAAO,CAAC,SAAS,CAAC,CAAC;IAGxB;;;OAGG;IACH,wBAAwB,EAAE,CAAC,WAAW,GAAG,GAAG,EAC1C,MAAM,EAAE,IAAI,CAAC,8BAA8B,CAAC,WAAW,CAAC,EAAE,mBAAmB,GAAG,aAAa,CAAC,KAC3F,OAAO,CAAC,OAAO,CAAC,CAAC;IAEtB;;OAEG;IACH,wBAAwB,EAAE,CACxB,SAAS,EAAE,uCAAuC,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,KAC9D;QAAE,kBAAkB,EAAE,OAAO,CAAC;QAAC,gBAAgB,EAAE,OAAO,CAAA;KAAE,CAAC;IAGhE,WAAW,EAAE,CAAC,YAAY,EAAE,MAAM,KAAK,OAAO,CAAC;IAC/C,wBAAwB,EAAE,CAAC,YAAY,EAAE,MAAM,KAAK,gCAAgC,GAAG,SAAS,CAAC;IACjG,oBAAoB,EAAE,MAAM,yBAAyB,CAAC;IACtD,yBAAyB,EAAE,MAAM,MAAM,EAAE,CAAC;IAC1C,0BAA0B,EAAE,MAAM,MAAM,EAAE,CAAC;IAE3C;;;;;;OAMG;IACH,YAAY,EAAE,MAAM,gCAAgC,CAAC;IAGrD,YAAY,EAAE,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,KAAK,IAAI,CAAC;IAC7C,sBAAsB,EAAE,CAAC,OAAO,EAAE,mBAAmB,KAAK,IAAI,CAAC;IAC/D,oBAAoB,EAAE,CAAC,OAAO,EAAE,iBAAiB,GAAG,IAAI,KAAK,IAAI,CAAC;IAClE,kBAAkB,EAAE,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,KAAK,IAAI,CAAC;CACpD;AAED,MAAM,WAAW,6BAA6B;IAC5C,QAAQ,EAAE,SAAS,CAAC;IACpB,mBAAmB,EAAE,kCAAkC,CAAC;CACzD;AAED;;;;GAIG;AACH,eAAO,MAAM,uBAAuB,EAAE,KAAK,CAAC,OAAO,CAAC,2BAA2B,GAAG,SAAS,CAAqE,CAAC;AAEjK;;;GAGG;AACH,eAAO,MAAM,wBAAwB,EAAE,KAAK,CAAC,EAAE,CAAC,6BAA6B,CAqO5E,CAAC"}
1
+ {"version":3,"file":"ResourceRegistryContext.d.ts","sourceRoot":"","sources":["../../../../../src/core/resources/ResourceRegistryContext.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gCAAgC,EAAE,MAAM,yEAAyE,CAAC;AAChI,OAAO,EAEL,mCAAmC,EAIpC,MAAM,uBAAuB,CAAC;AAE/B,OAAO,KAAK,EAAE,EAAiB,SAAS,EAAmC,MAAM,OAAO,CAAC;AAEzF,OAAO,EACL,+BAA+B,EAC/B,4BAA4B,EAC7B,MAAM,gFAAgF,CAAC;AACxF,OAAO,EAAE,cAAc,EAAE,mBAAmB,EAAE,iBAAiB,EAAE,MAAM,sEAAsE,CAAC;AAC9I,OAAO,EAAE,kCAAkC,EAAE,MAAM,yCAAyC,CAAC;AAC7F,OAAO,KAAK,EAAE,gCAAgC,EAAE,uCAAuC,EAAE,yBAAyB,EAAE,MAAM,+DAA+D,CAAC;AAE1L,OAAO,EAAkC,KAAK,8BAA8B,EAAE,MAAM,qFAAqF,CAAC;AAE1K;;;;;;;;;;;GAWG;AAEH,MAAM,MAAM,gBAAgB,GAAG,MAAM,CAAC;AACtC,MAAM,MAAM,uBAAuB,GAAG,mCAAmC,CAAC,GAAG,EAAE,GAAG,CAAC,GAAG,gBAAgB,CAAC;AAEvG,MAAM,WAAW,2BAA2B;IAE1C,QAAQ,EAAE,yBAAyB,CAAC;IAGpC;;;;;;;;;;;OAWG;IACH,WAAW,EAAE,CAAC,SAAS,GAAG,GAAG,EAC3B,aAAa,EAAE,uBAAuB,EACtC,UAAU,EAAE,+BAA+B,GAAG,4BAA4B,EAC1E,OAAO,CAAC,EAAE,cAAc,KACrB,OAAO,CAAC,SAAS,CAAC,CAAC;IAGxB;;;OAGG;IACH,wBAAwB,EAAE,CAAC,WAAW,GAAG,GAAG,EAC1C,MAAM,EAAE,IAAI,CAAC,8BAA8B,CAAC,WAAW,CAAC,EAAE,mBAAmB,GAAG,aAAa,CAAC,KAC3F,OAAO,CAAC,OAAO,CAAC,CAAC;IAEtB;;OAEG;IACH,wBAAwB,EAAE,CACxB,SAAS,EAAE,uCAAuC,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,KAC9D;QAAE,kBAAkB,EAAE,OAAO,CAAC;QAAC,gBAAgB,EAAE,OAAO,CAAA;KAAE,CAAC;IAGhE,WAAW,EAAE,CAAC,YAAY,EAAE,MAAM,KAAK,OAAO,CAAC;IAC/C,wBAAwB,EAAE,CAAC,YAAY,EAAE,MAAM,KAAK,gCAAgC,GAAG,SAAS,CAAC;IACjG,oBAAoB,EAAE,MAAM,yBAAyB,CAAC;IACtD,yBAAyB,EAAE,MAAM,MAAM,EAAE,CAAC;IAC1C,0BAA0B,EAAE,MAAM,MAAM,EAAE,CAAC;IAE3C;;;;;;OAMG;IACH,YAAY,EAAE,MAAM,gCAAgC,CAAC;IAGrD,YAAY,EAAE,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,KAAK,IAAI,CAAC;IAC7C,sBAAsB,EAAE,CAAC,OAAO,EAAE,mBAAmB,KAAK,IAAI,CAAC;IAC/D,oBAAoB,EAAE,CAAC,OAAO,EAAE,iBAAiB,GAAG,IAAI,KAAK,IAAI,CAAC;IAClE,kBAAkB,EAAE,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,KAAK,IAAI,CAAC;CACpD;AAED,MAAM,WAAW,6BAA6B;IAC5C,QAAQ,EAAE,SAAS,CAAC;IACpB,mBAAmB,EAAE,kCAAkC,CAAC;CACzD;AAED;;;;GAIG;AACH,eAAO,MAAM,uBAAuB,EAAE,KAAK,CAAC,OAAO,CAAC,2BAA2B,GAAG,SAAS,CAAqE,CAAC;AAEjK;;;GAGG;AACH,eAAO,MAAM,wBAAwB,EAAE,KAAK,CAAC,EAAE,CAAC,6BAA6B,CAqO5E,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"ResourceRegistryContext.js","sourceRoot":"","sources":["../../../../src/core/resources/ResourceRegistryContext.tsx"],"names":[],"mappings":"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","sourcesContent":["import type { ResourceReadCacheFrontendService } from '~wildo-frontend-lib/core/resources/resource-read-cache.frontend.service';\nimport {\n CoreResourceOperation,\n ResourceConfiguration_OperationPath,\n ResourcesConfig_OperationPathUtils,\n validateRequiredForeignKeyFillability,\n ForeignKeyFillabilityViolationSeverity,\n} from '@wildo-ai/saas-models';\n\nimport React, { createContext, ReactNode, useCallback, useEffect, useMemo } from 'react';\nimport { envLoader } from '~wildo-frontend-lib/core/runtime/env-variable-loader.frontend.service';\nimport {\n ResourceOperationCallParameters,\n ResourceSearchCallParameters\n} from '~wildo-frontend-lib/core/requests/wildo-http-client-resources.frontend.service';\nimport { RequestOptions, TokenRenewalHandler, StepUpAuthHandler } from '~wildo-frontend-lib/core/requests/wildo-http-client.frontend.service';\nimport { ResourcesRepositoryFrontendService } from './resources-repository.frontend.service';\nimport type { AnyFrontendResourceConfiguration, FrontendResourceConfiguration_Operation, FrontendResourcesRegistry } from '~wildo-frontend-lib/core/resources/resources.frontend.schemas';\nimport { resolveEffectiveCoreOperationFromOperation } from '~wildo-frontend-lib/core/resources/operation-semantics.frontend.utils';\nimport { OperationEnabledConditionUtils, type EvaluateEnabledConditionParams } from '~wildo-frontend-lib/core/resources/utils/operation-enabled-condition.frontend.utils';\n\n/**\n * Resource Registry Context\n * Manages resource configurations and operations\n *\n * ARCHITECTURE NOTE (Scopes):\n * - The base provider is `ResourceRegistryProvider`, which exposes `doOperation()` and the registry.\n * - The app can optionally wrap it with `ScopedResourceRegistryProvider` (in `core/resources/ScopedResourceRegistryProvider.tsx`).\n * That wrapper **overrides `doOperation()`** to automatically inject the current `AppScope` into\n * `parameters.contextualParameters` for nested callers (strictly relevant-only).\n * - This means `useResourceRegistry().doOperation(...)` may be the base implementation OR a scoped override,\n * depending on provider hierarchy.\n */\n\nexport type OperationPathKey = string;\nexport type OperationPathIdentifier = ResourceConfiguration_OperationPath<any, any> | OperationPathKey;\n\nexport interface ResourceRegistryContextType {\n // State\n registry: FrontendResourcesRegistry;\n\n // Main execution method\n /**\n * Execute a resource operation (API_CALL or SEARCH).\n *\n * IMPORTANT:\n * This function can be transparently overridden by a nested provider (see note above),\n * so callers usually should NOT manually inject global scope/context unless they are intentionally\n * overriding/adding to the contextual parameters for a specific call.\n *\n * Merge semantics (when scoped):\n * - scoped provider injects relevant AppScope fields\n * - explicit `parameters.contextualParameters` passed by the caller override injected values\n */\n doOperation: <TResponse = any>(\n operationPath: OperationPathIdentifier,\n parameters: ResourceOperationCallParameters | ResourceSearchCallParameters,\n options?: RequestOptions\n ) => Promise<TResponse>;\n\n // EnabledCondition helpers\n /**\n * Evaluate `operation.enabledCondition()` with the current registry + doOperation.\n * This is used by UI to decide whether an operation should be shown/enabled.\n */\n evaluateOperationEnabled: <TMainSchema = any>(\n params: Omit<EvaluateEnabledConditionParams<TMainSchema>, 'resourcesRegistry' | 'doOperation'>\n ) => Promise<boolean>;\n\n /**\n * Static context-needs extraction for an operation (enabledCondition + prefix ops).\n */\n getOperationContextNeeds: (\n operation: FrontendResourceConfiguration_Operation<any, any, any>\n ) => { needsObjectContext: boolean; needsUserContext: boolean };\n\n // Helpers\n hasResource: (resourceName: string) => boolean;\n getResourceConfiguration: (resourceName: string) => AnyFrontendResourceConfiguration | undefined;\n getResourcesRegistry: () => FrontendResourcesRegistry;\n getAvailableResourceTypes: () => string[];\n getAvailableOperationPaths: () => string[];\n\n /**\n * The engine-wide resource READ cache.\n *\n * Exposed so the WebSocket layer can install its coverage authority and invalidate through it.\n * The CACHE is exposed rather than the HTTP client that owns it: a consumer of this context has no\n * business reaching the transport, and narrowing the surface keeps it that way.\n */\n getReadCache: () => ResourceReadCacheFrontendService;\n \n // Auth token management\n setAuthToken: (token: string | null) => void;\n setTokenRenewalHandler: (handler: TokenRenewalHandler) => void;\n setStepUpAuthHandler: (handler: StepUpAuthHandler | null) => void;\n setConsumableToken: (token: string | null) => void;\n}\n\nexport interface ResourceRegistryProviderProps {\n children: ReactNode;\n resourcesRepository: ResourcesRepositoryFrontendService;\n}\n\n/**\n * Resource Registry Context\n * Exported for use in separate hook file (Fast Refresh compatibility)\n * @internal - Use useResourceRegistry() hook instead of accessing this directly\n */\nexport const ResourceRegistryContext: React.Context<ResourceRegistryContextType | undefined> = createContext<ResourceRegistryContextType | undefined>(undefined);\n\n/**\n * ResourceRegistryProvider - Simplified version without location dependency\n * isActive computation is now handled by NavigationProvider which is more appropriate\n */\nexport const ResourceRegistryProvider: React.FC<ResourceRegistryProviderProps> = ({ children, resourcesRepository }) => {\n // Get the registry and resources HTTP client from the repository service\n const registry = resourcesRepository.getResourcesRegistry();\n const resourcesHttpClient = resourcesRepository.getResourcesHttpClient();\n // The base application HTTP client (exposed app-wide as `useApplication().httpClient`)\n // is a SEPARATE instance from the resources client above. Resource-integrated file\n // operations (`FormFieldFile` upload / metadata / delete) run through it, so it must\n // receive the SAME auth token / renewal handler / step-up handler / consumable token\n // that the resources client gets — otherwise those file requests go out unauthenticated\n // (401). File upload was the first authenticated consumer of this base client, so this\n // wiring gap was previously invisible.\n const applicationHttpClient = resourcesRepository.getApplicationHttpClient();\n\n // Dev-only mirror of the backend startup guardrail: surface required-FK\n // fillability violations in the browser console so a frontend-focused dev sees\n // them where the create form actually lives. The backend is the AUTHORITATIVE\n // gate (it hard-fails on FAIL severity), so here we only warn — never throw,\n // and always fail-open so a validator edge case can't affect app load.\n useEffect(() => {\n if (!envLoader.isDevelopment()) {\n return;\n }\n try {\n const violations = validateRequiredForeignKeyFillability(registry.resourceConfigurations as any);\n for (const violation of violations) {\n const label = violation.severity === ForeignKeyFillabilityViolationSeverity.FAIL ? 'FAIL' : 'WARN';\n // eslint-disable-next-line no-console\n console.warn(`[required-fk-fillability:${label}] ${violation.kind}: ${violation.message}`);\n }\n } catch {\n // Fail-open — never let the guardrail affect app load.\n }\n }, [registry]);\n\n /**\n * Main operation execution method - handles both regular and search operations\n */\n const doOperation = useCallback(async <TResponse = any>(\n operationPath: OperationPathIdentifier,\n parameters: ResourceOperationCallParameters | ResourceSearchCallParameters,\n options?: RequestOptions\n ): Promise<TResponse> => {\n // Convert OperationPath object to string key if needed\n const operationPathKey = typeof operationPath === 'string' \n ? operationPath \n : ResourcesConfig_OperationPathUtils.createOperationPathKey(operationPath);\n\n const operation = resourcesHttpClient.getOperationDetails(operationPathKey);\n const isSearchOperation = operation\n ? resolveEffectiveCoreOperationFromOperation(operation) === CoreResourceOperation.SEARCH\n : ResourcesConfig_OperationPathUtils.parseOperationPathKey(operationPathKey).operationIdentifier === CoreResourceOperation.SEARCH;\n\n if (isSearchOperation) {\n // Call search-specific method\n return resourcesHttpClient.executeSearchOperation<TResponse>(\n operationPathKey,\n parameters as ResourceSearchCallParameters,\n options\n );\n } else {\n // Call regular operation method\n return resourcesHttpClient.doOperation<TResponse>(\n operationPathKey,\n parameters as ResourceOperationCallParameters,\n options\n );\n }\n }, [resourcesHttpClient]);\n\n /**\n * Evaluate if an operation is enabled (enabledCondition).\n * Centralized here so all consumers automatically benefit from any doOperation overrides\n * (e.g. ScopedResourceRegistryProvider injecting AppScope).\n */\n const evaluateOperationEnabled = useCallback(\n async <TMainSchema = any>(\n params: Omit<EvaluateEnabledConditionParams<TMainSchema>, 'resourcesRegistry' | 'doOperation'>\n ): Promise<boolean> => {\n return OperationEnabledConditionUtils.evaluateEnabledCondition({\n ...(params as any),\n resourcesRegistry: registry,\n doOperation,\n });\n },\n [registry, doOperation]\n );\n\n const getOperationContextNeeds = useCallback((\n operation: FrontendResourceConfiguration_Operation<any, any, any>\n ) => {\n return OperationEnabledConditionUtils.getOperationContextNeeds(operation);\n }, []);\n\n /**\n * Check if resource is available\n */\n const hasResource = useCallback((resourceName: string): boolean => {\n return resourceName in registry.resourceConfigurations;\n }, [registry]);\n\n /**\n * Get resource configuration\n */\n const getResourceConfiguration = useCallback((resourceName: string): AnyFrontendResourceConfiguration | undefined => {\n return registry.resourceConfigurations[resourceName];\n }, [registry]);\n\n /**\n * Get the full resources registry\n */\n const getResourcesRegistry = useCallback((): FrontendResourcesRegistry => {\n return registry;\n }, [registry]);\n\n /**\n * Get available resource types\n */\n const getAvailableResourceTypes = useCallback((): string[] => {\n return Object.keys(registry.resourceConfigurations);\n }, [registry]);\n\n /**\n * Get available operation paths\n */\n const getAvailableOperationPaths = useCallback((): string[] => {\n return resourcesHttpClient.getAvailableOperationPaths();\n }, [resourcesHttpClient]);\n \n /**\n * Set authentication token for resource operations\n */\n const setAuthToken = useCallback((token: string | null): void => {\n if (token) {\n resourcesHttpClient.setAuthToken(token);\n applicationHttpClient.setAuthToken(token);\n } else {\n resourcesHttpClient.clearAuthToken();\n applicationHttpClient.clearAuthToken();\n }\n }, [resourcesHttpClient, applicationHttpClient]);\n\n /**\n * Set token renewal handler for resource operations.\n * Called by AuthSessionContext to enable automatic token refresh on 401s\n * from the resources HTTP client (not just the manual calls client).\n */\n const setTokenRenewalHandler = useCallback((handler: TokenRenewalHandler): void => {\n resourcesHttpClient.setTokenRenewalHandler(handler);\n applicationHttpClient.setTokenRenewalHandler(handler);\n }, [resourcesHttpClient, applicationHttpClient]);\n\n const setStepUpAuthHandler = useCallback((handler: StepUpAuthHandler | null): void => {\n resourcesHttpClient.setStepUpAuthHandler(handler);\n applicationHttpClient.setStepUpAuthHandler(handler);\n }, [resourcesHttpClient, applicationHttpClient]);\n\n const setConsumableToken = useCallback((token: string | null): void => {\n resourcesHttpClient.setConsumableToken(token);\n applicationHttpClient.setConsumableToken(token);\n }, [resourcesHttpClient, applicationHttpClient]);\n\n /*\n * Stable across renders, like every other member below.\n *\n * It used to be an inline arrow in the value object, which made it a NEW identity every render.\n * `ResourceReadCacheBridge` depended on it in an effect whose job includes installing the cache's\n * coverage authority — and installing an authority CLEARS the cache — so the read cache was emptied\n * on essentially every render and could never do its job (issue #248).\n */\n const getReadCache = useCallback(\n (): ResourceReadCacheFrontendService => resourcesHttpClient.getReadCache(),\n [resourcesHttpClient],\n );\n\n /*\n * MEMOIZED, and that is load-bearing rather than tidy.\n *\n * This value reaches 75 consumer files through `useResourceRegistry()`. Rebuilt every render, it\n * re-rendered all of them and handed each a NEW identity for every function on it — so any consumer\n * placing one in a dependency array got an effect that fired on every render. That is not\n * hypothetical: it emptied the resource read cache continuously until #248 was fixed, and it\n * defeated `ScopedResourceRegistryProvider`'s own `useMemo`, which depends on this object as\n * `base`.\n *\n * Every member is itself a `useCallback` over the repository's stable service instances, so this\n * memo only changes when the registry or a client actually does.\n */\n const value: ResourceRegistryContextType = useMemo(() => ({\n // State\n registry,\n\n // Main execution method\n doOperation,\n\n // EnabledCondition helpers\n evaluateOperationEnabled,\n getOperationContextNeeds,\n\n // Helpers\n hasResource,\n getResourceConfiguration,\n getResourcesRegistry,\n getAvailableResourceTypes,\n getAvailableOperationPaths,\n getReadCache,\n\n // Auth\n setAuthToken,\n setTokenRenewalHandler,\n setStepUpAuthHandler,\n setConsumableToken,\n }), [\n registry,\n doOperation,\n evaluateOperationEnabled,\n getOperationContextNeeds,\n hasResource,\n getResourceConfiguration,\n getResourcesRegistry,\n getAvailableResourceTypes,\n getAvailableOperationPaths,\n getReadCache,\n setAuthToken,\n setTokenRenewalHandler,\n setStepUpAuthHandler,\n setConsumableToken,\n ]);\n\n return <ResourceRegistryContext.Provider value={value}>{children}</ResourceRegistryContext.Provider>;\n};\n\n// useResourceRegistry hook is now in separate file: ./useResourceRegistry.ts\n// This separation is required for React Fast Refresh compatibility\n"]}
1
+ {"version":3,"file":"ResourceRegistryContext.js","sourceRoot":"","sources":["../../../../../src/core/resources/ResourceRegistryContext.tsx"],"names":[],"mappings":"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","sourcesContent":["import type { ResourceReadCacheFrontendService } from '~wildo-frontend-lib/core/resources/resource-read-cache.frontend.service';\nimport {\n CoreResourceOperation,\n ResourceConfiguration_OperationPath,\n ResourcesConfig_OperationPathUtils,\n validateRequiredForeignKeyFillability,\n ForeignKeyFillabilityViolationSeverity,\n} from '@wildo-ai/saas-models';\n\nimport React, { createContext, ReactNode, useCallback, useEffect, useMemo } from 'react';\nimport { envLoader } from '~wildo-frontend-lib/core/runtime/env-variable-loader.frontend.service';\nimport {\n ResourceOperationCallParameters,\n ResourceSearchCallParameters\n} from '~wildo-frontend-lib/core/requests/wildo-http-client-resources.frontend.service';\nimport { RequestOptions, TokenRenewalHandler, StepUpAuthHandler } from '~wildo-frontend-lib/core/requests/wildo-http-client.frontend.service';\nimport { ResourcesRepositoryFrontendService } from './resources-repository.frontend.service';\nimport type { AnyFrontendResourceConfiguration, FrontendResourceConfiguration_Operation, FrontendResourcesRegistry } from '~wildo-frontend-lib/core/resources/resources.frontend.schemas';\nimport { resolveEffectiveCoreOperationFromOperation } from '~wildo-frontend-lib/core/resources/operation-semantics.frontend.utils';\nimport { OperationEnabledConditionUtils, type EvaluateEnabledConditionParams } from '~wildo-frontend-lib/core/resources/utils/operation-enabled-condition.frontend.utils';\n\n/**\n * Resource Registry Context\n * Manages resource configurations and operations\n *\n * ARCHITECTURE NOTE (Scopes):\n * - The base provider is `ResourceRegistryProvider`, which exposes `doOperation()` and the registry.\n * - The app can optionally wrap it with `ScopedResourceRegistryProvider` (in `core/resources/ScopedResourceRegistryProvider.tsx`).\n * That wrapper **overrides `doOperation()`** to automatically inject the current `AppScope` into\n * `parameters.contextualParameters` for nested callers (strictly relevant-only).\n * - This means `useResourceRegistry().doOperation(...)` may be the base implementation OR a scoped override,\n * depending on provider hierarchy.\n */\n\nexport type OperationPathKey = string;\nexport type OperationPathIdentifier = ResourceConfiguration_OperationPath<any, any> | OperationPathKey;\n\nexport interface ResourceRegistryContextType {\n // State\n registry: FrontendResourcesRegistry;\n\n // Main execution method\n /**\n * Execute a resource operation (API_CALL or SEARCH).\n *\n * IMPORTANT:\n * This function can be transparently overridden by a nested provider (see note above),\n * so callers usually should NOT manually inject global scope/context unless they are intentionally\n * overriding/adding to the contextual parameters for a specific call.\n *\n * Merge semantics (when scoped):\n * - scoped provider injects relevant AppScope fields\n * - explicit `parameters.contextualParameters` passed by the caller override injected values\n */\n doOperation: <TResponse = any>(\n operationPath: OperationPathIdentifier,\n parameters: ResourceOperationCallParameters | ResourceSearchCallParameters,\n options?: RequestOptions\n ) => Promise<TResponse>;\n\n // EnabledCondition helpers\n /**\n * Evaluate `operation.enabledCondition()` with the current registry + doOperation.\n * This is used by UI to decide whether an operation should be shown/enabled.\n */\n evaluateOperationEnabled: <TMainSchema = any>(\n params: Omit<EvaluateEnabledConditionParams<TMainSchema>, 'resourcesRegistry' | 'doOperation'>\n ) => Promise<boolean>;\n\n /**\n * Static context-needs extraction for an operation (enabledCondition + prefix ops).\n */\n getOperationContextNeeds: (\n operation: FrontendResourceConfiguration_Operation<any, any, any>\n ) => { needsObjectContext: boolean; needsUserContext: boolean };\n\n // Helpers\n hasResource: (resourceName: string) => boolean;\n getResourceConfiguration: (resourceName: string) => AnyFrontendResourceConfiguration | undefined;\n getResourcesRegistry: () => FrontendResourcesRegistry;\n getAvailableResourceTypes: () => string[];\n getAvailableOperationPaths: () => string[];\n\n /**\n * The engine-wide resource READ cache.\n *\n * Exposed so the WebSocket layer can install its coverage authority and invalidate through it.\n * The CACHE is exposed rather than the HTTP client that owns it: a consumer of this context has no\n * business reaching the transport, and narrowing the surface keeps it that way.\n */\n getReadCache: () => ResourceReadCacheFrontendService;\n \n // Auth token management\n setAuthToken: (token: string | null) => void;\n setTokenRenewalHandler: (handler: TokenRenewalHandler) => void;\n setStepUpAuthHandler: (handler: StepUpAuthHandler | null) => void;\n setConsumableToken: (token: string | null) => void;\n}\n\nexport interface ResourceRegistryProviderProps {\n children: ReactNode;\n resourcesRepository: ResourcesRepositoryFrontendService;\n}\n\n/**\n * Resource Registry Context\n * Exported for use in separate hook file (Fast Refresh compatibility)\n * @internal - Use useResourceRegistry() hook instead of accessing this directly\n */\nexport const ResourceRegistryContext: React.Context<ResourceRegistryContextType | undefined> = createContext<ResourceRegistryContextType | undefined>(undefined);\n\n/**\n * ResourceRegistryProvider - Simplified version without location dependency\n * isActive computation is now handled by NavigationProvider which is more appropriate\n */\nexport const ResourceRegistryProvider: React.FC<ResourceRegistryProviderProps> = ({ children, resourcesRepository }) => {\n // Get the registry and resources HTTP client from the repository service\n const registry = resourcesRepository.getResourcesRegistry();\n const resourcesHttpClient = resourcesRepository.getResourcesHttpClient();\n // The base application HTTP client (exposed app-wide as `useApplication().httpClient`)\n // is a SEPARATE instance from the resources client above. Resource-integrated file\n // operations (`FormFieldFile` upload / metadata / delete) run through it, so it must\n // receive the SAME auth token / renewal handler / step-up handler / consumable token\n // that the resources client gets — otherwise those file requests go out unauthenticated\n // (401). File upload was the first authenticated consumer of this base client, so this\n // wiring gap was previously invisible.\n const applicationHttpClient = resourcesRepository.getApplicationHttpClient();\n\n // Dev-only mirror of the backend startup guardrail: surface required-FK\n // fillability violations in the browser console so a frontend-focused dev sees\n // them where the create form actually lives. The backend is the AUTHORITATIVE\n // gate (it hard-fails on FAIL severity), so here we only warn — never throw,\n // and always fail-open so a validator edge case can't affect app load.\n useEffect(() => {\n if (!envLoader.isDevelopment()) {\n return;\n }\n try {\n const violations = validateRequiredForeignKeyFillability(registry.resourceConfigurations as any);\n for (const violation of violations) {\n const label = violation.severity === ForeignKeyFillabilityViolationSeverity.FAIL ? 'FAIL' : 'WARN';\n // eslint-disable-next-line no-console\n console.warn(`[required-fk-fillability:${label}] ${violation.kind}: ${violation.message}`);\n }\n } catch {\n // Fail-open — never let the guardrail affect app load.\n }\n }, [registry]);\n\n /**\n * Main operation execution method - handles both regular and search operations\n */\n const doOperation = useCallback(async <TResponse = any>(\n operationPath: OperationPathIdentifier,\n parameters: ResourceOperationCallParameters | ResourceSearchCallParameters,\n options?: RequestOptions\n ): Promise<TResponse> => {\n // Convert OperationPath object to string key if needed\n const operationPathKey = typeof operationPath === 'string' \n ? operationPath \n : ResourcesConfig_OperationPathUtils.createOperationPathKey(operationPath);\n\n const operation = resourcesHttpClient.getOperationDetails(operationPathKey);\n const isSearchOperation = operation\n ? resolveEffectiveCoreOperationFromOperation(operation) === CoreResourceOperation.SEARCH\n : ResourcesConfig_OperationPathUtils.parseOperationPathKey(operationPathKey).operationIdentifier === CoreResourceOperation.SEARCH;\n\n if (isSearchOperation) {\n // Call search-specific method\n return resourcesHttpClient.executeSearchOperation<TResponse>(\n operationPathKey,\n parameters as ResourceSearchCallParameters,\n options\n );\n } else {\n // Call regular operation method\n return resourcesHttpClient.doOperation<TResponse>(\n operationPathKey,\n parameters as ResourceOperationCallParameters,\n options\n );\n }\n }, [resourcesHttpClient]);\n\n /**\n * Evaluate if an operation is enabled (enabledCondition).\n * Centralized here so all consumers automatically benefit from any doOperation overrides\n * (e.g. ScopedResourceRegistryProvider injecting AppScope).\n */\n const evaluateOperationEnabled = useCallback(\n async <TMainSchema = any>(\n params: Omit<EvaluateEnabledConditionParams<TMainSchema>, 'resourcesRegistry' | 'doOperation'>\n ): Promise<boolean> => {\n return OperationEnabledConditionUtils.evaluateEnabledCondition({\n ...(params as any),\n resourcesRegistry: registry,\n doOperation,\n });\n },\n [registry, doOperation]\n );\n\n const getOperationContextNeeds = useCallback((\n operation: FrontendResourceConfiguration_Operation<any, any, any>\n ) => {\n return OperationEnabledConditionUtils.getOperationContextNeeds(operation);\n }, []);\n\n /**\n * Check if resource is available\n */\n const hasResource = useCallback((resourceName: string): boolean => {\n return resourceName in registry.resourceConfigurations;\n }, [registry]);\n\n /**\n * Get resource configuration\n */\n const getResourceConfiguration = useCallback((resourceName: string): AnyFrontendResourceConfiguration | undefined => {\n return registry.resourceConfigurations[resourceName];\n }, [registry]);\n\n /**\n * Get the full resources registry\n */\n const getResourcesRegistry = useCallback((): FrontendResourcesRegistry => {\n return registry;\n }, [registry]);\n\n /**\n * Get available resource types\n */\n const getAvailableResourceTypes = useCallback((): string[] => {\n return Object.keys(registry.resourceConfigurations);\n }, [registry]);\n\n /**\n * Get available operation paths\n */\n const getAvailableOperationPaths = useCallback((): string[] => {\n return resourcesHttpClient.getAvailableOperationPaths();\n }, [resourcesHttpClient]);\n \n /**\n * Set authentication token for resource operations\n */\n const setAuthToken = useCallback((token: string | null): void => {\n if (token) {\n resourcesHttpClient.setAuthToken(token);\n applicationHttpClient.setAuthToken(token);\n } else {\n resourcesHttpClient.clearAuthToken();\n applicationHttpClient.clearAuthToken();\n }\n }, [resourcesHttpClient, applicationHttpClient]);\n\n /**\n * Set token renewal handler for resource operations.\n * Called by AuthSessionContext to enable automatic token refresh on 401s\n * from the resources HTTP client (not just the manual calls client).\n */\n const setTokenRenewalHandler = useCallback((handler: TokenRenewalHandler): void => {\n resourcesHttpClient.setTokenRenewalHandler(handler);\n applicationHttpClient.setTokenRenewalHandler(handler);\n }, [resourcesHttpClient, applicationHttpClient]);\n\n const setStepUpAuthHandler = useCallback((handler: StepUpAuthHandler | null): void => {\n resourcesHttpClient.setStepUpAuthHandler(handler);\n applicationHttpClient.setStepUpAuthHandler(handler);\n }, [resourcesHttpClient, applicationHttpClient]);\n\n const setConsumableToken = useCallback((token: string | null): void => {\n resourcesHttpClient.setConsumableToken(token);\n applicationHttpClient.setConsumableToken(token);\n }, [resourcesHttpClient, applicationHttpClient]);\n\n /*\n * Stable across renders, like every other member below.\n *\n * It used to be an inline arrow in the value object, which made it a NEW identity every render.\n * `ResourceReadCacheBridge` depended on it in an effect whose job includes installing the cache's\n * coverage authority — and installing an authority CLEARS the cache — so the read cache was emptied\n * on essentially every render and could never do its job (issue #248).\n */\n const getReadCache = useCallback(\n (): ResourceReadCacheFrontendService => resourcesHttpClient.getReadCache(),\n [resourcesHttpClient],\n );\n\n /*\n * MEMOIZED, and that is load-bearing rather than tidy.\n *\n * This value reaches 75 consumer files through `useResourceRegistry()`. Rebuilt every render, it\n * re-rendered all of them and handed each a NEW identity for every function on it — so any consumer\n * placing one in a dependency array got an effect that fired on every render. That is not\n * hypothetical: it emptied the resource read cache continuously until #248 was fixed, and it\n * defeated `ScopedResourceRegistryProvider`'s own `useMemo`, which depends on this object as\n * `base`.\n *\n * Every member is itself a `useCallback` over the repository's stable service instances, so this\n * memo only changes when the registry or a client actually does.\n */\n const value: ResourceRegistryContextType = useMemo(() => ({\n // State\n registry,\n\n // Main execution method\n doOperation,\n\n // EnabledCondition helpers\n evaluateOperationEnabled,\n getOperationContextNeeds,\n\n // Helpers\n hasResource,\n getResourceConfiguration,\n getResourcesRegistry,\n getAvailableResourceTypes,\n getAvailableOperationPaths,\n getReadCache,\n\n // Auth\n setAuthToken,\n setTokenRenewalHandler,\n setStepUpAuthHandler,\n setConsumableToken,\n }), [\n registry,\n doOperation,\n evaluateOperationEnabled,\n getOperationContextNeeds,\n hasResource,\n getResourceConfiguration,\n getResourcesRegistry,\n getAvailableResourceTypes,\n getAvailableOperationPaths,\n getReadCache,\n setAuthToken,\n setTokenRenewalHandler,\n setStepUpAuthHandler,\n setConsumableToken,\n ]);\n\n return <ResourceRegistryContext.Provider value={value}>{children}</ResourceRegistryContext.Provider>;\n};\n\n// useResourceRegistry hook is now in separate file: ./useResourceRegistry.ts\n// This separation is required for React Fast Refresh compatibility\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"ScopedResourceRegistryProvider.d.ts","sourceRoot":"","sources":["../../../../src/core/resources/ScopedResourceRegistryProvider.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAwB,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AAYpE,MAAM,WAAW,mCAAmC;IAClD,QAAQ,EAAE,SAAS,CAAC;CACrB;AA4CD;;;;;GAKG;AACH,wBAAgB,8BAA8B,CAAC,EAAE,QAAQ,EAAE,EAAE,mCAAmC,GAAG,KAAK,CAAC,YAAY,CAgFpH"}
1
+ {"version":3,"file":"ScopedResourceRegistryProvider.d.ts","sourceRoot":"","sources":["../../../../../src/core/resources/ScopedResourceRegistryProvider.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAwB,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AAYpE,MAAM,WAAW,mCAAmC;IAClD,QAAQ,EAAE,SAAS,CAAC;CACrB;AA4CD;;;;;GAKG;AACH,wBAAgB,8BAA8B,CAAC,EAAE,QAAQ,EAAE,EAAE,mCAAmC,GAAG,KAAK,CAAC,YAAY,CAgFpH"}
@@ -1 +1 @@
1
- {"version":3,"file":"ScopedResourceRegistryProvider.js","sourceRoot":"","sources":["../../../../src/core/resources/ScopedResourceRegistryProvider.tsx"],"names":[],"mappings":"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","sourcesContent":["import React, { useCallback, useMemo, type ReactNode } from 'react';\nimport {\n ResourcesConfig_OperationPathUtils,\n ResourceOperationVariantType,\n type ResourceConfiguration_Operation,\n type ResourceConfiguration_OperationPath,\n} from '@wildo-ai/saas-models';\nimport { OperationEnabledConditionUtils, type EvaluateEnabledConditionParams } from '~wildo-frontend-lib/core/resources/utils/operation-enabled-condition.frontend.utils';\nimport { ResourceRegistryContext, type ResourceRegistryContextType } from './ResourceRegistryContext';\nimport { useResourceRegistry } from './useResourceRegistry';\nimport { useAppScopeSafe } from '~wildo-frontend-lib/core/scope/useAppScope';\n\nexport interface ScopedResourceRegistryProviderProps {\n children: ReactNode;\n}\n\nfunction toOperationPathKey(operationPath: ResourceConfiguration_OperationPath<any, any> | string): string {\n return typeof operationPath === 'string'\n ? operationPath\n : ResourcesConfig_OperationPathUtils.createOperationPathKey(operationPath);\n}\n\nfunction findOperationInRegistry(\n registry: ResourceRegistryContextType['registry'],\n operationPath: ResourceConfiguration_OperationPath<any, any>\n): ResourceConfiguration_Operation<any, any, any> | null {\n const resourceConfig = registry.resourceConfigurations[operationPath.resourceIdentifier];\n if (!resourceConfig) {\n return null;\n }\n\n return resourceConfig.operations.find((op: any) => {\n const opPath = ResourcesConfig_OperationPathUtils.extractOperationPath(op);\n\n if (opPath.operationIdentifier !== operationPath.operationIdentifier) return false;\n if (opPath.variantType !== operationPath.variantType) return false;\n\n if (operationPath.isOperationDefault) {\n if (!opPath.isOperationDefault) return false;\n } else {\n const expectedVariantKey = operationPath.variantKey;\n const actualVariantKey = opPath.variantKey;\n if ((actualVariantKey ?? undefined) !== (expectedVariantKey ?? undefined)) return false;\n }\n\n if (\n opPath.variantType === ResourceOperationVariantType.API_CALL\n || opPath.variantType === ResourceOperationVariantType.API_CALL_WITH_CALLBACK\n ) {\n const opIsBulk = opPath.isBulkOperation === true;\n const pathIsBulk = operationPath.isBulkOperation === true;\n return opIsBulk === pathIsBulk;\n }\n\n return true;\n }) || null;\n}\n\n/**\n * Nested provider that re-exposes ResourceRegistryContext with a scoped `doOperation()`.\n *\n * This is intentionally placed INSIDE `AppScopeProvider` so it can inject the current scope\n * into all resource calls, while keeping the root `ResourceRegistryProvider` unchanged.\n */\nexport function ScopedResourceRegistryProvider({ children }: ScopedResourceRegistryProviderProps): React.ReactElement {\n const base = useResourceRegistry();\n const appScope = useAppScopeSafe();\n\n const doOperation = useCallback<ResourceRegistryContextType['doOperation']>(\n async (operationPath, parameters, options) => {\n // If AppScopeProvider isn't mounted yet, behave exactly like the base registry.\n if (!appScope) {\n return base.doOperation(operationPath, parameters, options);\n }\n\n const operationPathKey = toOperationPathKey(operationPath as any);\n\n // Parse target operation to decide which contextual params are relevant.\n // If parsing fails for any reason, fall back to base behavior.\n let parsedPath: ResourceConfiguration_OperationPath<any, any> | null = null;\n try {\n parsedPath = ResourcesConfig_OperationPathUtils.parseOperationPathKey(operationPathKey);\n } catch {\n parsedPath = null;\n }\n\n const operation = parsedPath ? findOperationInRegistry(base.registry, parsedPath) : null;\n\n // If operation was not found in registry, fall back to unscoped behavior.\n // This prevents fragile optional-chaining on initiatorInfos below.\n if (!operation) {\n return base.doOperation(operationPath, parameters, options);\n }\n\n const injectedScopeParams: Record<string, string | string[]> = appScope.buildContextualParameters();\n const existingContextualParameters =\n (parameters as any)?.contextualParameters as Record<string, string | string[]> | undefined;\n const mergedContextualParameters = {\n ...injectedScopeParams,\n ...(existingContextualParameters || {}),\n };\n\n const mergedParameters = {\n ...(parameters as any),\n contextualParameters: mergedContextualParameters,\n };\n\n return base.doOperation(operationPath, mergedParameters, options);\n },\n [appScope, base]\n );\n\n /**\n * IMPORTANT:\n * `ResourceRegistryProvider`'s `evaluateOperationEnabled` closes over its own `doOperation`.\n * If we only override `doOperation` in context, enabledCondition evaluation would still run with\n * the unscoped doOperation (missing AppScope injection).\n *\n * So we override `evaluateOperationEnabled` as well, wiring it to the scoped `doOperation`.\n */\n const evaluateOperationEnabled = useCallback<ResourceRegistryContextType['evaluateOperationEnabled']>(\n async (params) => {\n return OperationEnabledConditionUtils.evaluateEnabledCondition({\n ...(params as any),\n resourcesRegistry: base.registry,\n doOperation,\n } satisfies EvaluateEnabledConditionParams<any>);\n },\n [base.registry, doOperation]\n );\n\n const value = useMemo<ResourceRegistryContextType>(() => {\n return {\n ...base,\n doOperation,\n evaluateOperationEnabled,\n };\n }, [base, doOperation, evaluateOperationEnabled]);\n\n return (\n <ResourceRegistryContext.Provider value={value}>\n {children}\n </ResourceRegistryContext.Provider>\n );\n}\n\n"]}
1
+ {"version":3,"file":"ScopedResourceRegistryProvider.js","sourceRoot":"","sources":["../../../../../src/core/resources/ScopedResourceRegistryProvider.tsx"],"names":[],"mappings":"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","sourcesContent":["import React, { useCallback, useMemo, type ReactNode } from 'react';\nimport {\n ResourcesConfig_OperationPathUtils,\n ResourceOperationVariantType,\n type ResourceConfiguration_Operation,\n type ResourceConfiguration_OperationPath,\n} from '@wildo-ai/saas-models';\nimport { OperationEnabledConditionUtils, type EvaluateEnabledConditionParams } from '~wildo-frontend-lib/core/resources/utils/operation-enabled-condition.frontend.utils';\nimport { ResourceRegistryContext, type ResourceRegistryContextType } from './ResourceRegistryContext';\nimport { useResourceRegistry } from './useResourceRegistry';\nimport { useAppScopeSafe } from '~wildo-frontend-lib/core/scope/useAppScope';\n\nexport interface ScopedResourceRegistryProviderProps {\n children: ReactNode;\n}\n\nfunction toOperationPathKey(operationPath: ResourceConfiguration_OperationPath<any, any> | string): string {\n return typeof operationPath === 'string'\n ? operationPath\n : ResourcesConfig_OperationPathUtils.createOperationPathKey(operationPath);\n}\n\nfunction findOperationInRegistry(\n registry: ResourceRegistryContextType['registry'],\n operationPath: ResourceConfiguration_OperationPath<any, any>\n): ResourceConfiguration_Operation<any, any, any> | null {\n const resourceConfig = registry.resourceConfigurations[operationPath.resourceIdentifier];\n if (!resourceConfig) {\n return null;\n }\n\n return resourceConfig.operations.find((op: any) => {\n const opPath = ResourcesConfig_OperationPathUtils.extractOperationPath(op);\n\n if (opPath.operationIdentifier !== operationPath.operationIdentifier) return false;\n if (opPath.variantType !== operationPath.variantType) return false;\n\n if (operationPath.isOperationDefault) {\n if (!opPath.isOperationDefault) return false;\n } else {\n const expectedVariantKey = operationPath.variantKey;\n const actualVariantKey = opPath.variantKey;\n if ((actualVariantKey ?? undefined) !== (expectedVariantKey ?? undefined)) return false;\n }\n\n if (\n opPath.variantType === ResourceOperationVariantType.API_CALL\n || opPath.variantType === ResourceOperationVariantType.API_CALL_WITH_CALLBACK\n ) {\n const opIsBulk = opPath.isBulkOperation === true;\n const pathIsBulk = operationPath.isBulkOperation === true;\n return opIsBulk === pathIsBulk;\n }\n\n return true;\n }) || null;\n}\n\n/**\n * Nested provider that re-exposes ResourceRegistryContext with a scoped `doOperation()`.\n *\n * This is intentionally placed INSIDE `AppScopeProvider` so it can inject the current scope\n * into all resource calls, while keeping the root `ResourceRegistryProvider` unchanged.\n */\nexport function ScopedResourceRegistryProvider({ children }: ScopedResourceRegistryProviderProps): React.ReactElement {\n const base = useResourceRegistry();\n const appScope = useAppScopeSafe();\n\n const doOperation = useCallback<ResourceRegistryContextType['doOperation']>(\n async (operationPath, parameters, options) => {\n // If AppScopeProvider isn't mounted yet, behave exactly like the base registry.\n if (!appScope) {\n return base.doOperation(operationPath, parameters, options);\n }\n\n const operationPathKey = toOperationPathKey(operationPath as any);\n\n // Parse target operation to decide which contextual params are relevant.\n // If parsing fails for any reason, fall back to base behavior.\n let parsedPath: ResourceConfiguration_OperationPath<any, any> | null = null;\n try {\n parsedPath = ResourcesConfig_OperationPathUtils.parseOperationPathKey(operationPathKey);\n } catch {\n parsedPath = null;\n }\n\n const operation = parsedPath ? findOperationInRegistry(base.registry, parsedPath) : null;\n\n // If operation was not found in registry, fall back to unscoped behavior.\n // This prevents fragile optional-chaining on initiatorInfos below.\n if (!operation) {\n return base.doOperation(operationPath, parameters, options);\n }\n\n const injectedScopeParams: Record<string, string | string[]> = appScope.buildContextualParameters();\n const existingContextualParameters =\n (parameters as any)?.contextualParameters as Record<string, string | string[]> | undefined;\n const mergedContextualParameters = {\n ...injectedScopeParams,\n ...(existingContextualParameters || {}),\n };\n\n const mergedParameters = {\n ...(parameters as any),\n contextualParameters: mergedContextualParameters,\n };\n\n return base.doOperation(operationPath, mergedParameters, options);\n },\n [appScope, base]\n );\n\n /**\n * IMPORTANT:\n * `ResourceRegistryProvider`'s `evaluateOperationEnabled` closes over its own `doOperation`.\n * If we only override `doOperation` in context, enabledCondition evaluation would still run with\n * the unscoped doOperation (missing AppScope injection).\n *\n * So we override `evaluateOperationEnabled` as well, wiring it to the scoped `doOperation`.\n */\n const evaluateOperationEnabled = useCallback<ResourceRegistryContextType['evaluateOperationEnabled']>(\n async (params) => {\n return OperationEnabledConditionUtils.evaluateEnabledCondition({\n ...(params as any),\n resourcesRegistry: base.registry,\n doOperation,\n } satisfies EvaluateEnabledConditionParams<any>);\n },\n [base.registry, doOperation]\n );\n\n const value = useMemo<ResourceRegistryContextType>(() => {\n return {\n ...base,\n doOperation,\n evaluateOperationEnabled,\n };\n }, [base, doOperation, evaluateOperationEnabled]);\n\n return (\n <ResourceRegistryContext.Provider value={value}>\n {children}\n </ResourceRegistryContext.Provider>\n );\n}\n\n"]}
@@ -0,0 +1,26 @@
1
+ /**
2
+ * Group a bulk run's refusals by REASON (#1461).
3
+ *
4
+ * A count tells a person something went wrong; it does not tell them what to do. Twelve rows
5
+ * refused for one reason are one thing to fix, while twelve ids are twelve lookups — so the reason
6
+ * is the unit the panel is built from, and the ids sit under it as the secondary detail they are.
7
+ *
8
+ * Reasons arrive as the refusal's REFERENCE, because a reference is what a locale turns into words;
9
+ * the resolver is passed in so this function stays free of i18n and can be tested for what it
10
+ * actually decides. A reference with no authored words falls back to the reference itself, which is
11
+ * a missing label looking missing rather than an invented sentence
12
+ * (`.claude/rules/display-text-comes-from-i18n.md`).
13
+ */
14
+ import type { BulkJobFailure } from './useBulkJobProgress';
15
+ export interface BulkFailureReasonGroup {
16
+ /** Stable key for the group — the refusal reference, or a fixed key when the row carried none. */
17
+ key: string;
18
+ /** What to show as the reason: resolved words, else the reference, else the unnamed-refusal key. */
19
+ reason: string;
20
+ /** The rows refused for this reason, in the order the run met them. */
21
+ resourceIds: string[];
22
+ }
23
+ /** The group key for a refusal that carried no reference at all — an error the engine could not name. */
24
+ export declare const UNNAMED_BULK_FAILURE_REASON_KEY: "unnamedRefusal";
25
+ export declare function groupBulkFailuresByReason(failures: readonly BulkJobFailure[], resolveReason: (reference: string) => string | undefined): BulkFailureReasonGroup[];
26
+ //# sourceMappingURL=bulk-failure-grouping.frontend.utils.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"bulk-failure-grouping.frontend.utils.d.ts","sourceRoot":"","sources":["../../../../../src/core/resources/bulk-failure-grouping.frontend.utils.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AACH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAE3D,MAAM,WAAW,sBAAsB;IACrC,kGAAkG;IAClG,GAAG,EAAE,MAAM,CAAC;IACZ,oGAAoG;IACpG,MAAM,EAAE,MAAM,CAAC;IACf,uEAAuE;IACvE,WAAW,EAAE,MAAM,EAAE,CAAC;CACvB;AAED,yGAAyG;AACzG,eAAO,MAAM,+BAA+B,EAAG,gBAAyB,CAAC;AAEzE,wBAAgB,yBAAyB,CACvC,QAAQ,EAAE,SAAS,cAAc,EAAE,EACnC,aAAa,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,MAAM,GAAG,SAAS,GACvD,sBAAsB,EAAE,CAqB1B"}
@@ -0,0 +1,23 @@
1
+ /** The group key for a refusal that carried no reference at all — an error the engine could not name. */
2
+ export const UNNAMED_BULK_FAILURE_REASON_KEY = 'unnamedRefusal';
3
+ export function groupBulkFailuresByReason(failures, resolveReason) {
4
+ const groups = new Map();
5
+ for (const failure of failures) {
6
+ const key = failure.customMessageReference ?? UNNAMED_BULK_FAILURE_REASON_KEY;
7
+ const existing = groups.get(key);
8
+ if (existing) {
9
+ existing.resourceIds.push(failure.resourceId);
10
+ continue;
11
+ }
12
+ groups.set(key, {
13
+ key,
14
+ reason: (failure.customMessageReference ? resolveReason(failure.customMessageReference) : undefined) ?? key,
15
+ resourceIds: [failure.resourceId],
16
+ });
17
+ }
18
+ // Most-refused first: the reason accounting for most rows is the one worth reading first, and a
19
+ // panel that listed them in arrival order would bury it behind whichever row happened to fail
20
+ // earliest.
21
+ return [...groups.values()].sort((left, right) => right.resourceIds.length - left.resourceIds.length);
22
+ }
23
+ //# sourceMappingURL=bulk-failure-grouping.frontend.utils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"bulk-failure-grouping.frontend.utils.js","sourceRoot":"","sources":["../../../../../src/core/resources/bulk-failure-grouping.frontend.utils.ts"],"names":[],"mappings":"AAwBA,yGAAyG;AACzG,MAAM,CAAC,MAAM,+BAA+B,GAAG,gBAAyB,CAAC;AAEzE,MAAM,UAAU,yBAAyB,CACvC,QAAmC,EACnC,aAAwD;IAExD,MAAM,MAAM,GAAG,IAAI,GAAG,EAAkC,CAAC;IAEzD,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE,CAAC;QAC/B,MAAM,GAAG,GAAG,OAAO,CAAC,sBAAsB,IAAI,+BAA+B,CAAC;QAC9E,MAAM,QAAQ,GAAG,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QACjC,IAAI,QAAQ,EAAE,CAAC;YACb,QAAQ,CAAC,WAAW,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;YAC9C,SAAS;QACX,CAAC;QACD,MAAM,CAAC,GAAG,CAAC,GAAG,EAAE;YACd,GAAG;YACH,MAAM,EAAE,CAAC,OAAO,CAAC,sBAAsB,CAAC,CAAC,CAAC,aAAa,CAAC,OAAO,CAAC,sBAAsB,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,IAAI,GAAG;YAC3G,WAAW,EAAE,CAAC,OAAO,CAAC,UAAU,CAAC;SAClC,CAAC,CAAC;IACL,CAAC;IAED,gGAAgG;IAChG,8FAA8F;IAC9F,YAAY;IACZ,OAAO,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,WAAW,CAAC,MAAM,GAAG,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;AACxG,CAAC","sourcesContent":["/**\n * Group a bulk run's refusals by REASON (#1461).\n *\n * A count tells a person something went wrong; it does not tell them what to do. Twelve rows\n * refused for one reason are one thing to fix, while twelve ids are twelve lookups — so the reason\n * is the unit the panel is built from, and the ids sit under it as the secondary detail they are.\n *\n * Reasons arrive as the refusal's REFERENCE, because a reference is what a locale turns into words;\n * the resolver is passed in so this function stays free of i18n and can be tested for what it\n * actually decides. A reference with no authored words falls back to the reference itself, which is\n * a missing label looking missing rather than an invented sentence\n * (`.claude/rules/display-text-comes-from-i18n.md`).\n */\nimport type { BulkJobFailure } from './useBulkJobProgress';\n\nexport interface BulkFailureReasonGroup {\n /** Stable key for the group — the refusal reference, or a fixed key when the row carried none. */\n key: string;\n /** What to show as the reason: resolved words, else the reference, else the unnamed-refusal key. */\n reason: string;\n /** The rows refused for this reason, in the order the run met them. */\n resourceIds: string[];\n}\n\n/** The group key for a refusal that carried no reference at all — an error the engine could not name. */\nexport const UNNAMED_BULK_FAILURE_REASON_KEY = 'unnamedRefusal' as const;\n\nexport function groupBulkFailuresByReason(\n failures: readonly BulkJobFailure[],\n resolveReason: (reference: string) => string | undefined,\n): BulkFailureReasonGroup[] {\n const groups = new Map<string, BulkFailureReasonGroup>();\n\n for (const failure of failures) {\n const key = failure.customMessageReference ?? UNNAMED_BULK_FAILURE_REASON_KEY;\n const existing = groups.get(key);\n if (existing) {\n existing.resourceIds.push(failure.resourceId);\n continue;\n }\n groups.set(key, {\n key,\n reason: (failure.customMessageReference ? resolveReason(failure.customMessageReference) : undefined) ?? key,\n resourceIds: [failure.resourceId],\n });\n }\n\n // Most-refused first: the reason accounting for most rows is the one worth reading first, and a\n // panel that listed them in arrival order would bury it behind whichever row happened to fail\n // earliest.\n return [...groups.values()].sort((left, right) => right.resourceIds.length - left.resourceIds.length);\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"collection-export-url.frontend.utils.d.ts","sourceRoot":"","sources":["../../../../src/core/resources/collection-export-url.frontend.utils.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AACH,OAAO,EAML,KAAK,8BAA8B,EACnC,KAAK,gCAAgC,EACrC,KAAK,YAAY,EAClB,MAAM,uBAAuB,CAAC;AAG/B,OAAO,KAAK,EACV,6BAA6B,EAC7B,uCAAuC,EACvC,yBAAyB,EAC1B,MAAM,+DAA+D,CAAC;AACvE,OAAO,KAAK,EAAE,0CAA0C,EAAE,MAAM,mEAAmE,CAAC;AAEpI,MAAM,WAAW,8BAA8B;IAC7C,QAAQ,EAAE,yBAAyB,CAAC;IACpC,cAAc,EAAE,6BAA6B,CAAC;IAC9C,gEAAgE;IAChE,eAAe,EAAE,uCAAuC,CAAC;IACzD,YAAY,EAAE,YAAY,CAAC;IAC3B;;;;OAIG;IACH,0BAA0B,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACnD;;;;OAIG;IACH,oBAAoB,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAAC,CAAC;IACtD,2BAA2B,CAAC,EAAE,0CAA0C,EAAE,CAAC;IAC3E,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,8BAA8B,CAAC;IACvC,QAAQ,EAAE,gCAAgC,CAAC;IAC3C;;;;OAIG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAAC,CAAC;CAC5D;AAED;;;;GAIG;AACH,wBAAgB,wBAAwB,CAAC,MAAM,EAAE,8BAA8B,GAAG,MAAM,GAAG,IAAI,CA8C9F;AAED;;;;;;;;GAQG;AACH,wBAAsB,wBAAwB,CAAC,MAAM,EAAE;IACrD,GAAG,EAAE,MAAM,CAAC;IACZ,YAAY,EAAE,YAAY,CAAC;IAC3B,MAAM,EAAE,8BAA8B,CAAC;IACvC,OAAO,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;CACzC,GAAG,OAAO,CAAC,IAAI,CAAC,CAgBhB"}
1
+ {"version":3,"file":"collection-export-url.frontend.utils.d.ts","sourceRoot":"","sources":["../../../../../src/core/resources/collection-export-url.frontend.utils.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AACH,OAAO,EAML,KAAK,8BAA8B,EACnC,KAAK,gCAAgC,EACrC,KAAK,YAAY,EAClB,MAAM,uBAAuB,CAAC;AAG/B,OAAO,KAAK,EACV,6BAA6B,EAC7B,uCAAuC,EACvC,yBAAyB,EAC1B,MAAM,+DAA+D,CAAC;AACvE,OAAO,KAAK,EAAE,0CAA0C,EAAE,MAAM,mEAAmE,CAAC;AAEpI,MAAM,WAAW,8BAA8B;IAC7C,QAAQ,EAAE,yBAAyB,CAAC;IACpC,cAAc,EAAE,6BAA6B,CAAC;IAC9C,gEAAgE;IAChE,eAAe,EAAE,uCAAuC,CAAC;IACzD,YAAY,EAAE,YAAY,CAAC;IAC3B;;;;OAIG;IACH,0BAA0B,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACnD;;;;OAIG;IACH,oBAAoB,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAAC,CAAC;IACtD,2BAA2B,CAAC,EAAE,0CAA0C,EAAE,CAAC;IAC3E,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,8BAA8B,CAAC;IACvC,QAAQ,EAAE,gCAAgC,CAAC;IAC3C;;;;OAIG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAAC,CAAC;CAC5D;AAED;;;;GAIG;AACH,wBAAgB,wBAAwB,CAAC,MAAM,EAAE,8BAA8B,GAAG,MAAM,GAAG,IAAI,CA8C9F;AAED;;;;;;;;GAQG;AACH,wBAAsB,wBAAwB,CAAC,MAAM,EAAE;IACrD,GAAG,EAAE,MAAM,CAAC;IACZ,YAAY,EAAE,YAAY,CAAC;IAC3B,MAAM,EAAE,8BAA8B,CAAC;IACvC,OAAO,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;CACzC,GAAG,OAAO,CAAC,IAAI,CAAC,CAgBhB"}
@@ -1 +1 @@
1
- {"version":3,"file":"collection-export-url.frontend.utils.js","sourceRoot":"","sources":["../../../../src/core/resources/collection-export-url.frontend.utils.ts"],"names":[],"mappings":"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","sourcesContent":["/**\n * The API URL of a listing's export companion, and the download that follows it.\n *\n * ## Why the export cannot go through the ordinary action executor\n *\n * Every other resource action ends in `doOperation()`, which parses a JSON result and hands it to\n * the refresh/notification pipeline. An export answers BYTES with a `Content-Disposition`, so there\n * is no result to parse and nothing to refresh — the browser has to be handed a file. That is the\n * same shape the generated-file REGENERATE action already needed special handling for, one step\n * further: regenerate returns JSON and the bytes are fetched later; an export IS the bytes.\n */\nimport {\n buildCollectionExportFilename,\n COLLECTION_EXPORT_FORMAT_QUERY_PARAM,\n COLLECTION_EXPORT_ROW_SCOPE_QUERY_PARAM,\n MAIN_API_BASE_PATH,\n ResourcesConfigOperationsUrlsBuilderUtils,\n type ResourceCollectionExportFormat,\n type ResourceCollectionExportRowScope,\n type ResourceType,\n} from '@wildo-ai/saas-models';\nimport { NavigationUtils } from '~wildo-frontend-lib/core/navigation/navigation.utils';\nimport { frontendResourceUtils } from '~wildo-frontend-lib/core/resources/frontend-resource.utils';\nimport type {\n FrontendResourceConfiguration,\n FrontendResourceConfiguration_Operation,\n FrontendResourcesRegistry,\n} from '~wildo-frontend-lib/core/resources/resources.frontend.schemas';\nimport type { FrontendResource_ParentResourceRequirement } from '~wildo-frontend-lib/core/resources/resource-path.frontend.schemas';\n\nexport interface BuildCollectionExportUrlParams {\n registry: FrontendResourcesRegistry;\n resourceConfig: FrontendResourceConfiguration;\n /** The DERIVED export operation, not the listing it exports. */\n exportOperation: FrontendResourceConfiguration_Operation;\n resourceType: ResourceType;\n /**\n * `string | number` rather than `string`: the transport normalizer emits numeric ids as numbers,\n * and narrowing here would push a cast onto every caller for a value that is stringified into a\n * URL segment anyway.\n */\n contextResourceIdentifiers: Record<string, string>;\n /**\n * `string | number`: the parameter map resolved for URL substitution can carry numeric ids, and\n * narrowing here would push a cast onto every caller for a value that is stringified into a URL\n * segment anyway.\n */\n contextualParameters: Record<string, string | number>;\n parentResourcesRequirements?: FrontendResource_ParentResourceRequirement[];\n apiBaseUrl: string;\n format: ResourceCollectionExportFormat;\n rowScope: ResourceCollectionExportRowScope;\n /**\n * The query the LISTING is currently showing — filters, sort, page. Forwarded verbatim so\n * \"export what I am looking at\" needs no second grammar, and so a `VISIBLE_PAGE` export returns\n * the page on screen rather than a different one.\n */\n listingQuery?: Record<string, string | number | undefined>;\n}\n\n/**\n * `null` when the route cannot be fully resolved from the current context — the caller then hides\n * the action rather than offering a download that would 404. Deliberately the same posture the file\n * serve URL takes: an unresolved placeholder is a missing parent id, not an error to raise.\n */\nexport function buildCollectionExportUrl(params: BuildCollectionExportUrlParams): string | null {\n const {\n registry, resourceConfig, exportOperation, resourceType,\n contextResourceIdentifiers, contextualParameters, parentResourcesRequirements,\n apiBaseUrl, format, rowScope, listingQuery,\n } = params;\n\n if (!resourceConfig?.resourceFieldIdentifier || !exportOperation) return null;\n\n try {\n const routePaths = ResourcesConfigOperationsUrlsBuilderUtils.buildOperationFrontendRoutePaths(\n resourceConfig,\n exportOperation,\n registry.allResourceFieldIdentifiers,\n );\n if (routePaths.length === 0) return null;\n\n const routePath = frontendResourceUtils.selectMatchingRoutePath(\n routePaths,\n contextResourceIdentifiers,\n resourceConfig.resourceIdentifier,\n resourceConfig.resourceFieldIdentifier,\n parentResourcesRequirements,\n registry.allResourceFieldIdentifiers,\n );\n\n // A collection-level route: the parent chain only, and no id of this resource's own.\n const resolved = NavigationUtils.resolveUrlPath(routePath.url, contextualParameters);\n if (NavigationUtils.hasUnresolvedPlaceholders(resolved)) return null;\n\n const query = new URLSearchParams();\n query.set(COLLECTION_EXPORT_FORMAT_QUERY_PARAM, format);\n query.set(COLLECTION_EXPORT_ROW_SCOPE_QUERY_PARAM, rowScope);\n for (const [key, value] of Object.entries(listingQuery ?? {})) {\n if (value === undefined || value === '') continue;\n // Never forwarded: the caller's own selectors are set above, and a listing query carrying\n // them would otherwise decide the format twice.\n if (key === COLLECTION_EXPORT_FORMAT_QUERY_PARAM || key === COLLECTION_EXPORT_ROW_SCOPE_QUERY_PARAM) continue;\n query.set(key, String(value));\n }\n\n // Frontend route paths omit `/api/v1`; re-add it to match the registered backend route.\n return `${apiBaseUrl}${MAIN_API_BASE_PATH}${resolved}?${query.toString()}`;\n } catch {\n return null;\n }\n}\n\n/**\n * Fetch the export through the AUTHENTICATED client and hand the bytes to the browser.\n *\n * A plain `<a href>` or `window.open` would issue an UNAUTHENTICATED request — the access token\n * lives in the http client, not in a cookie the browser would attach — so the download must go\n * through `getBlob` and be released as an object URL. The object URL is revoked immediately after\n * the click: leaving it alive pins the whole file in memory for the life of the document, and an\n * export is exactly the payload where that matters.\n */\nexport async function downloadCollectionExport(params: {\n url: string;\n resourceType: ResourceType;\n format: ResourceCollectionExportFormat;\n getBlob: (url: string) => Promise<Blob>;\n}): Promise<void> {\n const blob = await params.getBlob(params.url);\n const objectUrl = URL.createObjectURL(blob);\n try {\n const link = document.createElement('a');\n link.href = objectUrl;\n // The server already names the file in `Content-Disposition`, but a blob download does not see\n // that header — the name has to be supplied here. Same builder as the server's, so the two\n // agree instead of drifting.\n link.download = buildCollectionExportFilename(String(params.resourceType), params.format, new Date());\n document.body.appendChild(link);\n link.click();\n link.remove();\n } finally {\n URL.revokeObjectURL(objectUrl);\n }\n}\n"]}
1
+ {"version":3,"file":"collection-export-url.frontend.utils.js","sourceRoot":"","sources":["../../../../../src/core/resources/collection-export-url.frontend.utils.ts"],"names":[],"mappings":"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","sourcesContent":["/**\n * The API URL of a listing's export companion, and the download that follows it.\n *\n * ## Why the export cannot go through the ordinary action executor\n *\n * Every other resource action ends in `doOperation()`, which parses a JSON result and hands it to\n * the refresh/notification pipeline. An export answers BYTES with a `Content-Disposition`, so there\n * is no result to parse and nothing to refresh — the browser has to be handed a file. That is the\n * same shape the generated-file REGENERATE action already needed special handling for, one step\n * further: regenerate returns JSON and the bytes are fetched later; an export IS the bytes.\n */\nimport {\n buildCollectionExportFilename,\n COLLECTION_EXPORT_FORMAT_QUERY_PARAM,\n COLLECTION_EXPORT_ROW_SCOPE_QUERY_PARAM,\n MAIN_API_BASE_PATH,\n ResourcesConfigOperationsUrlsBuilderUtils,\n type ResourceCollectionExportFormat,\n type ResourceCollectionExportRowScope,\n type ResourceType,\n} from '@wildo-ai/saas-models';\nimport { NavigationUtils } from '~wildo-frontend-lib/core/navigation/navigation.utils';\nimport { frontendResourceUtils } from '~wildo-frontend-lib/core/resources/frontend-resource.utils';\nimport type {\n FrontendResourceConfiguration,\n FrontendResourceConfiguration_Operation,\n FrontendResourcesRegistry,\n} from '~wildo-frontend-lib/core/resources/resources.frontend.schemas';\nimport type { FrontendResource_ParentResourceRequirement } from '~wildo-frontend-lib/core/resources/resource-path.frontend.schemas';\n\nexport interface BuildCollectionExportUrlParams {\n registry: FrontendResourcesRegistry;\n resourceConfig: FrontendResourceConfiguration;\n /** The DERIVED export operation, not the listing it exports. */\n exportOperation: FrontendResourceConfiguration_Operation;\n resourceType: ResourceType;\n /**\n * `string | number` rather than `string`: the transport normalizer emits numeric ids as numbers,\n * and narrowing here would push a cast onto every caller for a value that is stringified into a\n * URL segment anyway.\n */\n contextResourceIdentifiers: Record<string, string>;\n /**\n * `string | number`: the parameter map resolved for URL substitution can carry numeric ids, and\n * narrowing here would push a cast onto every caller for a value that is stringified into a URL\n * segment anyway.\n */\n contextualParameters: Record<string, string | number>;\n parentResourcesRequirements?: FrontendResource_ParentResourceRequirement[];\n apiBaseUrl: string;\n format: ResourceCollectionExportFormat;\n rowScope: ResourceCollectionExportRowScope;\n /**\n * The query the LISTING is currently showing — filters, sort, page. Forwarded verbatim so\n * \"export what I am looking at\" needs no second grammar, and so a `VISIBLE_PAGE` export returns\n * the page on screen rather than a different one.\n */\n listingQuery?: Record<string, string | number | undefined>;\n}\n\n/**\n * `null` when the route cannot be fully resolved from the current context — the caller then hides\n * the action rather than offering a download that would 404. Deliberately the same posture the file\n * serve URL takes: an unresolved placeholder is a missing parent id, not an error to raise.\n */\nexport function buildCollectionExportUrl(params: BuildCollectionExportUrlParams): string | null {\n const {\n registry, resourceConfig, exportOperation, resourceType,\n contextResourceIdentifiers, contextualParameters, parentResourcesRequirements,\n apiBaseUrl, format, rowScope, listingQuery,\n } = params;\n\n if (!resourceConfig?.resourceFieldIdentifier || !exportOperation) return null;\n\n try {\n const routePaths = ResourcesConfigOperationsUrlsBuilderUtils.buildOperationFrontendRoutePaths(\n resourceConfig,\n exportOperation,\n registry.allResourceFieldIdentifiers,\n );\n if (routePaths.length === 0) return null;\n\n const routePath = frontendResourceUtils.selectMatchingRoutePath(\n routePaths,\n contextResourceIdentifiers,\n resourceConfig.resourceIdentifier,\n resourceConfig.resourceFieldIdentifier,\n parentResourcesRequirements,\n registry.allResourceFieldIdentifiers,\n );\n\n // A collection-level route: the parent chain only, and no id of this resource's own.\n const resolved = NavigationUtils.resolveUrlPath(routePath.url, contextualParameters);\n if (NavigationUtils.hasUnresolvedPlaceholders(resolved)) return null;\n\n const query = new URLSearchParams();\n query.set(COLLECTION_EXPORT_FORMAT_QUERY_PARAM, format);\n query.set(COLLECTION_EXPORT_ROW_SCOPE_QUERY_PARAM, rowScope);\n for (const [key, value] of Object.entries(listingQuery ?? {})) {\n if (value === undefined || value === '') continue;\n // Never forwarded: the caller's own selectors are set above, and a listing query carrying\n // them would otherwise decide the format twice.\n if (key === COLLECTION_EXPORT_FORMAT_QUERY_PARAM || key === COLLECTION_EXPORT_ROW_SCOPE_QUERY_PARAM) continue;\n query.set(key, String(value));\n }\n\n // Frontend route paths omit `/api/v1`; re-add it to match the registered backend route.\n return `${apiBaseUrl}${MAIN_API_BASE_PATH}${resolved}?${query.toString()}`;\n } catch {\n return null;\n }\n}\n\n/**\n * Fetch the export through the AUTHENTICATED client and hand the bytes to the browser.\n *\n * A plain `<a href>` or `window.open` would issue an UNAUTHENTICATED request — the access token\n * lives in the http client, not in a cookie the browser would attach — so the download must go\n * through `getBlob` and be released as an object URL. The object URL is revoked immediately after\n * the click: leaving it alive pins the whole file in memory for the life of the document, and an\n * export is exactly the payload where that matters.\n */\nexport async function downloadCollectionExport(params: {\n url: string;\n resourceType: ResourceType;\n format: ResourceCollectionExportFormat;\n getBlob: (url: string) => Promise<Blob>;\n}): Promise<void> {\n const blob = await params.getBlob(params.url);\n const objectUrl = URL.createObjectURL(blob);\n try {\n const link = document.createElement('a');\n link.href = objectUrl;\n // The server already names the file in `Content-Disposition`, but a blob download does not see\n // that header — the name has to be supplied here. Same builder as the server's, so the two\n // agree instead of drifting.\n link.download = buildCollectionExportFilename(String(params.resourceType), params.format, new Date());\n document.body.appendChild(link);\n link.click();\n link.remove();\n } finally {\n URL.revokeObjectURL(objectUrl);\n }\n}\n"]}
@@ -0,0 +1,41 @@
1
+ /**
2
+ * Applying and reading back a collection's PRESET FILTERS.
3
+ *
4
+ * A preset has no state of its own — it is a write into the collection's existing filter values,
5
+ * and its ON/OFF is derived by reading them back. Everything here is therefore a pure function of
6
+ * `(preset, currentFilters, now)`, which is what lets the pills stay in step with the filters
7
+ * panel, the chips and the quick-filter tabs without any of the four knowing about the others.
8
+ *
9
+ * `now` is a parameter rather than a `new Date()` inside these functions, for two reasons that
10
+ * both matter: a single click must resolve every field of a preset against ONE instant (two
11
+ * `new Date()` calls either side of midnight would produce a window that excludes the row the user
12
+ * is looking at), and a relative window is otherwise untestable.
13
+ */
14
+ import { type CollectionFilterPreset } from '../../core/resources/resources.frontend.schemas';
15
+ /** The `{ startDate, endDate }` pair the framework's date-range filter carries. */
16
+ export interface CollectionFilterDateRange {
17
+ startDate: Date;
18
+ endDate: Date;
19
+ }
20
+ /**
21
+ * The CONCRETE filter assignment a preset makes at instant `now` — literals unchanged, relative
22
+ * ranges resolved to their `{ startDate, endDate }` window.
23
+ */
24
+ export declare function resolveCollectionFilterPresetAssignment(preset: CollectionFilterPreset, now: Date): Record<string, unknown>;
25
+ /**
26
+ * Is this preset currently ON?
27
+ *
28
+ * ON means every key it assigns holds its value — nothing weaker. A preset that assigns two fields
29
+ * and finds only one of them set is OFF, because a half-applied narrowing is not the one the pill
30
+ * names, and showing it as on would make the next click REMOVE a filter the user set by hand.
31
+ */
32
+ export declare function isCollectionFilterPresetActive(preset: CollectionFilterPreset, currentFilters: Record<string, unknown>, now: Date): boolean;
33
+ /**
34
+ * The filter values after clicking this preset — applied when it was off, removed when it was on.
35
+ *
36
+ * Removing DELETES the keys rather than setting them to `undefined`, matching what the filters
37
+ * panel and the chips do when a filter is cleared; a key present with `undefined` counts as an
38
+ * active filter in `countActiveFilters` and would inflate the trigger's badge.
39
+ */
40
+ export declare function toggleCollectionFilterPreset(preset: CollectionFilterPreset, currentFilters: Record<string, unknown>, now: Date): Record<string, unknown>;
41
+ //# sourceMappingURL=collection-filter-presets.frontend.utils.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"collection-filter-presets.frontend.utils.d.ts","sourceRoot":"","sources":["../../../../../src/core/resources/collection-filter-presets.frontend.utils.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,OAAO,EAEL,KAAK,sBAAsB,EAE5B,MAAM,+DAA+D,CAAC;AAEvE,mFAAmF;AACnF,MAAM,WAAW,yBAAyB;IACxC,SAAS,EAAE,IAAI,CAAC;IAChB,OAAO,EAAE,IAAI,CAAC;CACf;AA6DD;;;GAGG;AACH,wBAAgB,uCAAuC,CACrD,MAAM,EAAE,sBAAsB,EAC9B,GAAG,EAAE,IAAI,GACR,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAQzB;AAuCD;;;;;;GAMG;AACH,wBAAgB,8BAA8B,CAC5C,MAAM,EAAE,sBAAsB,EAC9B,cAAc,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EACvC,GAAG,EAAE,IAAI,GACR,OAAO,CAKT;AAED;;;;;;GAMG;AACH,wBAAgB,4BAA4B,CAC1C,MAAM,EAAE,sBAAsB,EAC9B,cAAc,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EACvC,GAAG,EAAE,IAAI,GACR,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAUzB"}