@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
@@ -22,6 +22,7 @@ import { normalizeContextResourceIdentifiersForTransport, } from '../../../core/
22
22
  * - resource:updated → RESOURCE_REFRESH
23
23
  * - resource:deleted → RESOURCE_REFRESH
24
24
  * - badge:update → BADGE_COUNT_CHANGED
25
+ * - bulk-job:progress → BULK_JOB_PROGRESS
25
26
  * - guidance:state-changed → GUIDANCE_FLOW_ACTIVATED/COMPLETED/DISMISSED
26
27
  *
27
28
  * Business logic components can then subscribe to EventBus events without
@@ -214,6 +215,7 @@ export const WebSocketEventBridge = () => {
214
215
  variantKey: payload.variantKey,
215
216
  });
216
217
  const eventPayload = {
218
+ serverNotification: payload.deliveryPolicy,
217
219
  resourceType: payload.resourceType,
218
220
  operationIdentifier: payload.operationIdentifier,
219
221
  variantType: resolvedOperation.variantType ?? payload.variantType,
@@ -228,6 +230,8 @@ export const WebSocketEventBridge = () => {
228
230
  notificationIdentifier: payload.notificationIdentifier,
229
231
  action: payload.action,
230
232
  frontendDisplayHints: payload.frontendDisplayHints,
233
+ // How many rows a BULK action changed — the count its outcome message states.
234
+ ...(payload.isBulkOperation ? { affectedCount: payload.affectedIds.length } : {}),
231
235
  },
232
236
  // Populate resultSummary from WS notification context identifiers
233
237
  // (enables analytics RESOURCE_OPERATION filter evaluation)
@@ -295,6 +299,23 @@ export const WebSocketEventBridge = () => {
295
299
  };
296
300
  eventBus.emit(FrontendEvents.BADGE_COUNT_CHANGED, eventPayload);
297
301
  });
302
+ // Bridge: bulk-job:progress → EventBus BULK_JOB_PROGRESS
303
+ //
304
+ // Carried through unchanged: the counts are the server's, and the surface that draws the bar is
305
+ // the one that decides what to say about them. Addressed to the USER rather than to a resource
306
+ // room, because a bulk run spans many rows and no row's room is the right place (#1461).
307
+ const unsubBulkJobProgress = on(CoreWebSocketEvent.BULK_JOB_PROGRESS, (payload) => {
308
+ eventBus.emit(FrontendEvents.BULK_JOB_PROGRESS, {
309
+ jobId: payload.jobId,
310
+ resourceType: payload.resourceType,
311
+ operationIdentifier: payload.operationIdentifier,
312
+ attemptedCount: payload.attemptedCount,
313
+ processedCount: payload.processedCount,
314
+ failedCount: payload.failedCount,
315
+ finished: payload.finished,
316
+ ...(payload.failures ? { failures: payload.failures } : {}),
317
+ });
318
+ });
298
319
  // Bridge: resource:editing:start → EventBus RESOURCE_EDITING_START
299
320
  const unsubEditingStart = on(CoreWebSocketEvent.RESOURCE_EDITING_START, (payload) => {
300
321
  if (payload.initiatorUserId) {
@@ -463,6 +484,7 @@ export const WebSocketEventBridge = () => {
463
484
  unsubUpdated();
464
485
  unsubDeleted();
465
486
  unsubBadge();
487
+ unsubBulkJobProgress();
466
488
  unsubEditingStart();
467
489
  unsubEditingEnd();
468
490
  unsubCustom();
@@ -1 +1 @@
1
- {"version":3,"file":"WebSocketEventBridge.js","sourceRoot":"","sources":["../../../../../src/core/requests/websockets/WebSocketEventBridge.tsx"],"names":[],"mappings":"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","sourcesContent":["import React, { useEffect, useMemo } from 'react';\nimport { useWebSocket } from './useWebSocket';\nimport { useEventBus } from '~wildo-frontend-lib/core/events/useEventBus';\nimport { useResourceRegistry } from '~wildo-frontend-lib/core/resources/useResourceRegistry';\nimport { WebSocketResourceValidationService } from './websocket-resource-validation.frontend.service';\nimport { \n FrontendEvents, \n FrontendEventResourceOperation, \n FrontendEventBadgeCountChanged,\n FrontendEventResourceEditing,\n FrontendEventResourceCustom,\n FrontendEventNotifyCustom,\n type FrontendEvent_AnalyticsMomentAchieved,\n type FrontendEvent_MilestoneAchieved,\n type FrontendEvent_ProgressionUpdated,\n type FrontendEvent_LifecycleStageChanged,\n} from '~wildo-frontend-lib/core/events/events.frontend.schemas';\nimport {\n AnalyticsTriggerSource,\n CoreResourceOperation,\n CoreWebSocketEvent,\n WS_ResourceDeletedPayload,\n WS_ResourceNotificationPayload,\n WS_ResourceUpdatedPayload,\n WS_BadgeUpdatePayload,\n WS_ResourceEditingPayload,\n WS_ResourceCustomEventPayload,\n WS_UserNotificationPayload,\n WS_AnalyticsMomentAchievedPayload,\n NotificationLevel,\n ResourceAction,\n ResourceOperationVariantType,\n ResourcesConfig_OperationPathUtils,\n OnboardingStatus,\n WebSocketResourceDeliveryTarget,\n type WS_GuidanceStateChangedPayload,\n type WS_MilestoneAchievedPayload,\n type WS_ProgressionUpdatedPayload,\n type WS_LifecycleStageChangedPayload,\n} from '@wildo-ai/saas-models';\nimport { getOperationsForCoreSemantic } from '~wildo-frontend-lib/core/resources/operation-semantics.frontend.utils';\nimport { frontendResourceUtils, FrontendResourceUtils } from '~wildo-frontend-lib/core/resources/frontend-resource.utils';\nimport { isFrontendOperationAddressableForCurrentContext } from '~wildo-frontend-lib/core/resources/resource-addressability.frontend.utils';\nimport { operationInitiatorParametersSatisfied } from '~wildo-frontend-lib/core/resources/operation-initiator-satisfaction.frontend.utils';\nimport {\n normalizeContextResourceIdentifiersForTransport,\n type ContextResourceIdentifiersInput,\n} from '~wildo-frontend-lib/core/resources/context-resource-identifiers.frontend.utils';\n\n/**\n * WebSocketEventBridge\n * \n * Bridges WebSocket events from the Socket.IO connection to the Frontend EventBus.\n * This component should be mounted once at the app root level, after both\n * WebSocketProvider and EventBusProvider.\n * \n * Events bridged:\n * - resource:notification → RESOURCE_REFRESH, NOTIFY_RESOURCE_*\n * - resource:updated → RESOURCE_REFRESH\n * - resource:deleted → RESOURCE_REFRESH\n * - badge:update → BADGE_COUNT_CHANGED\n * - guidance:state-changed → GUIDANCE_FLOW_ACTIVATED/COMPLETED/DISMISSED\n * \n * Business logic components can then subscribe to EventBus events without\n * knowing the event source (HTTP response, WebSocket, or other).\n */\nexport const WebSocketEventBridge: React.FC = () => {\n const { on, isConnected } = useWebSocket();\n const eventBus = useEventBus();\n const { getResourcesRegistry } = useResourceRegistry();\n const registry = useMemo(() => getResourcesRegistry(), [getResourcesRegistry]);\n\n // Initialize the validation service used by websocket payloads that carry\n // resource-shaped data.\n const validationService = useMemo(() => {\n return new WebSocketResourceValidationService(registry);\n }, [registry]);\n\n useEffect(() => {\n if (!isConnected) {\n return;\n }\n\n // Helper: Map action to default notification level (fallback when notificationLevel not provided)\n const actionToNotificationLevel = (action: ResourceAction | string): NotificationLevel => {\n switch (action) {\n case ResourceAction.CREATED: return NotificationLevel.SUCCESS;\n case ResourceAction.UPDATED: return NotificationLevel.INFO;\n case ResourceAction.DELETED: return NotificationLevel.WARNING;\n default: return NotificationLevel.INFO;\n }\n };\n\n const resolveOperationFromPayload = (params: {\n resourceType: string;\n operationIdentifier: string;\n operationPathKey?: string;\n variantType?: ResourceOperationVariantType;\n isOperationDefault?: boolean;\n isBulkOperation?: boolean;\n variantKey?: string;\n }) => {\n const operations = registry.resourceConfigurations[params.resourceType]?.operations ?? [];\n if (params.operationPathKey) {\n const pathOperation = operations.find((operation) => {\n try {\n return ResourcesConfig_OperationPathUtils.createOperationPathKeyFromOperation(operation) === params.operationPathKey;\n } catch {\n return false;\n }\n });\n if (pathOperation) {\n return pathOperation;\n }\n }\n\n const matchingOperations = operations.filter((operation) => (\n String(operation.operationIdentifier) === params.operationIdentifier\n && (params.variantType == null || operation.variantType === params.variantType)\n && (params.variantKey == null || operation.variantKey === params.variantKey)\n && (params.isBulkOperation == null || (operation.isBulkOperation === true) === params.isBulkOperation)\n && (\n params.isOperationDefault == null\n || Boolean(operation.isOperationDefault) === params.isOperationDefault\n )\n ));\n\n if (matchingOperations.length === 1) {\n return matchingOperations[0];\n }\n\n if (matchingOperations.length > 1) {\n console.warn('[WebSocketEventBridge] Ambiguous operation identity in notification payload; emitting minimal operation context.', {\n resourceType: params.resourceType,\n operationIdentifier: params.operationIdentifier,\n variantType: params.variantType,\n variantKey: params.variantKey,\n isOperationDefault: params.isOperationDefault,\n isBulkOperation: params.isBulkOperation,\n candidateVariants: matchingOperations.map((operation) => ({\n variantType: operation.variantType,\n variantKey: operation.variantKey,\n isOperationDefault: operation.isOperationDefault,\n isBulkOperation: operation.isBulkOperation,\n })),\n });\n }\n\n // Some websocket producers only carry operation identity fields, not the\n // full authored operation object. Rebuild the minimum shape the EventBus\n // contracts expect so downstream consumers can still reason about variant,\n // default-ness, and bulk semantics consistently.\n return {\n operationIdentifier: params.operationIdentifier,\n variantType: params.variantType,\n isOperationDefault: params.isOperationDefault,\n isBulkOperation: params.isBulkOperation,\n variantKey: params.variantKey,\n };\n };\n\n const emitRefreshPayloads = ({\n resourceType,\n resourceIds,\n contextResourceIdentifiers,\n shouldEmitReadRefresh,\n }: {\n resourceType: string;\n resourceIds?: Array<string | null | undefined>;\n contextResourceIdentifiers?: ContextResourceIdentifiersInput;\n shouldEmitReadRefresh: boolean;\n }): void => {\n const resourceConfig = registry.resourceConfigurations[resourceType];\n const flattenedContextIdentifiers = normalizeContextResourceIdentifiersForTransport(\n contextResourceIdentifiers,\n );\n const normalizedContextIdentifiers = Object.fromEntries(\n Object.entries(flattenedContextIdentifiers).flatMap(([identifierKey, resourceIdentifier]) => {\n const normalizedKey = registry.fieldIdentifierToResourceType?.[identifierKey] ?? identifierKey;\n return normalizedKey === identifierKey\n ? [[identifierKey, resourceIdentifier]]\n : [\n [identifierKey, resourceIdentifier],\n [normalizedKey, resourceIdentifier],\n ];\n }),\n );\n const baseContextIdentifiers = {\n ...normalizedContextIdentifiers,\n };\n delete baseContextIdentifiers[resourceType];\n const baseContextualParameters = FrontendResourceUtils.buildContextualParameters(\n baseContextIdentifiers,\n registry,\n );\n\n // This bridge owns generic cache/list/read invalidation only. It does not\n // try to replay authoritative resource data into local state; richer sync\n // semantics stay in the dedicated RMM websocket bridge. The consumers here\n // are generic RESOURCE_REFRESH listeners such as non-RMM readers, list\n // surfaces, and cache invalidation hooks.\n const listOperations = getOperationsForCoreSemantic(\n resourceConfig?.operations ?? [],\n CoreResourceOperation.LIST,\n ).filter((listOperation) =>\n operationInitiatorParametersSatisfied({\n operation: listOperation,\n contextResourceIdentifiers: baseContextIdentifiers,\n contextualParameters: baseContextualParameters,\n })\n );\n const listRefreshTargets = listOperations.length > 0\n ? listOperations\n : [null];\n const baseParentResourcesRequirements = frontendResourceUtils.buildParentResourcesRequirements(\n resourceType as any,\n baseContextIdentifiers,\n registry,\n );\n\n for (const listOperation of listRefreshTargets) {\n eventBus.emit(FrontendEvents.RESOURCE_REFRESH, {\n resourceType,\n operationIdentifier: String(listOperation?.operationIdentifier ?? CoreResourceOperation.LIST),\n variantType: listOperation?.variantType,\n isOperationDefault: listOperation?.isOperationDefault ?? true,\n isBulkOperation: listOperation?.isBulkOperation ?? false,\n variantKey: listOperation?.variantKey,\n contextResourceIdentifiers: baseContextIdentifiers,\n parentResourcesRequirements: baseParentResourcesRequirements,\n operation: (listOperation ?? { operationIdentifier: CoreResourceOperation.LIST }) as any,\n });\n }\n\n const validReadResourceIds = Array.from(new Set(\n (resourceIds ?? []).filter((resourceId): resourceId is string => typeof resourceId === 'string' && resourceId.length > 0),\n ));\n\n if (!shouldEmitReadRefresh || validReadResourceIds.length === 0) {\n return;\n }\n\n const readOperations = getOperationsForCoreSemantic(\n resourceConfig?.operations ?? [],\n CoreResourceOperation.READ,\n {\n requireAddressable: true,\n },\n );\n const emittedReadOperationKeys = new Set<string>();\n\n for (const resourceId of validReadResourceIds) {\n const readContextIdentifiers = {\n ...baseContextIdentifiers,\n [resourceType]: resourceId,\n };\n const readContextualParameters = FrontendResourceUtils.buildContextualParameters(\n readContextIdentifiers,\n registry,\n );\n const readParentResourcesRequirements = frontendResourceUtils.buildParentResourcesRequirements(\n resourceType as any,\n readContextIdentifiers,\n registry,\n );\n const addressableReadOperations = readOperations.filter((readOperation) =>\n resourceConfig\n ? isFrontendOperationAddressableForCurrentContext({\n resourceConfig,\n operation: readOperation,\n registry,\n hasResourceId: true,\n contextResourceIdentifiers: readContextIdentifiers,\n contextualParameters: readContextualParameters,\n })\n : true\n );\n const readRefreshTargets = addressableReadOperations.length > 0\n ? addressableReadOperations\n : [null];\n\n for (const readOperation of readRefreshTargets) {\n const readOperationContext = readOperation\n ?? ({ operationIdentifier: CoreResourceOperation.READ } as any);\n const readOperationKey = [\n resourceId,\n String(readOperationContext.operationIdentifier),\n readOperationContext.variantType ?? '',\n readOperationContext.variantKey ?? '',\n readOperationContext.isBulkOperation ?? false,\n ].join(':');\n if (emittedReadOperationKeys.has(readOperationKey)) {\n continue;\n }\n emittedReadOperationKeys.add(readOperationKey);\n\n eventBus.emit(FrontendEvents.RESOURCE_REFRESH, {\n resourceType,\n operationIdentifier: String(readOperationContext.operationIdentifier ?? CoreResourceOperation.READ),\n variantType: readOperation?.variantType,\n isOperationDefault: readOperation?.isOperationDefault ?? true,\n isBulkOperation: readOperation?.isBulkOperation ?? false,\n variantKey: readOperation?.variantKey,\n contextResourceIdentifiers: readContextIdentifiers,\n parentResourcesRequirements: readParentResourcesRequirements,\n operation: readOperationContext,\n });\n }\n }\n };\n\n // Bridge: resource:notification → EventBus\n const unsubNotification = on<WS_ResourceNotificationPayload>(\n CoreWebSocketEvent.RESOURCE_NOTIFICATION,\n (payload) => {\n const resolvedOperation = resolveOperationFromPayload({\n resourceType: payload.resourceType,\n operationIdentifier: payload.operationIdentifier,\n operationPathKey: payload.operationPathKey,\n variantType: payload.variantType,\n isOperationDefault: payload.isOperationDefault,\n isBulkOperation: payload.isBulkOperation,\n variantKey: payload.variantKey,\n });\n const eventPayload: FrontendEventResourceOperation = {\n resourceType: payload.resourceType,\n operationIdentifier: payload.operationIdentifier,\n variantType: resolvedOperation.variantType ?? payload.variantType,\n isOperationDefault: resolvedOperation.isOperationDefault ?? payload.isOperationDefault,\n isBulkOperation: resolvedOperation.isBulkOperation ?? payload.isBulkOperation,\n variantKey: typeof resolvedOperation.variantKey === 'string' ? resolvedOperation.variantKey : payload.variantKey,\n contextResourceIdentifiers: payload.contextResourceIdentifiers ?? {},\n parentResourcesRequirements: [],\n operation: resolvedOperation as any,\n // Include notification context for i18n message resolution\n additionalContext: {\n notificationIdentifier: payload.notificationIdentifier,\n action: payload.action,\n frontendDisplayHints: payload.frontendDisplayHints,\n },\n // Populate resultSummary from WS notification context identifiers\n // (enables analytics RESOURCE_OPERATION filter evaluation)\n resultSummary: payload.contextResourceIdentifiers\n ? { ...payload.contextResourceIdentifiers }\n : undefined,\n };\n\n // Use notificationLevel from payload if provided, otherwise derive from action\n const level = payload.notificationLevel ?? actionToNotificationLevel(payload.action);\n if (level !== NotificationLevel.ERROR) {\n emitRefreshPayloads({\n resourceType: payload.resourceType,\n resourceIds: payload.affectedIds,\n contextResourceIdentifiers: payload.contextResourceIdentifiers ?? {},\n shouldEmitReadRefresh: payload.affectedIds.length > 0 && !(payload.isBulkOperation ?? false),\n });\n }\n\n // Emit notification event with proper typing (use switch to ensure type safety)\n switch (level) {\n case NotificationLevel.SUCCESS:\n eventBus.emit(FrontendEvents.NOTIFY_RESOURCE_SUCCESS, eventPayload);\n break;\n case NotificationLevel.WARNING:\n eventBus.emit(FrontendEvents.NOTIFY_RESOURCE_WARNING, eventPayload);\n break;\n case NotificationLevel.ERROR:\n eventBus.emit(FrontendEvents.NOTIFY_RESOURCE_ERROR, eventPayload);\n break;\n case NotificationLevel.INFO:\n default:\n eventBus.emit(FrontendEvents.NOTIFY_RESOURCE_INFO, eventPayload);\n }\n }\n );\n\n // Bridge: resource:updated → EventBus RESOURCE_REFRESH\n const unsubUpdated = on<WS_ResourceUpdatedPayload>(\n CoreWebSocketEvent.RESOURCE_UPDATED,\n (payload) => {\n // RESOURCE_UPDATED always triggers generic refresh fan-out here so\n // non-RMM consumers still invalidate list/read surfaces. Resource-room\n // sync replay and authoritative refetch decisions remain owned by\n // RMMWebSocketBridge.\n emitRefreshPayloads({\n resourceType: payload.resourceType,\n resourceIds: payload.deliveryTarget === WebSocketResourceDeliveryTarget.SCOPE_ROOM_NOTIFICATION\n ? payload.affectedIds ?? []\n : [payload.resourceId],\n contextResourceIdentifiers: payload.contextResourceIdentifiers ?? {},\n shouldEmitReadRefresh: payload.deliveryTarget === WebSocketResourceDeliveryTarget.SCOPE_ROOM_NOTIFICATION\n ? (payload.affectedIds?.length ?? 0) > 0\n : Boolean(payload.resourceId),\n });\n }\n );\n\n // Bridge: resource:deleted → EventBus RESOURCE_REFRESH\n const unsubDeleted = on<WS_ResourceDeletedPayload>(\n CoreWebSocketEvent.RESOURCE_DELETED,\n (payload) => {\n emitRefreshPayloads({\n resourceType: payload.resourceType,\n resourceIds: [payload.resourceId],\n contextResourceIdentifiers: payload.contextResourceIdentifiers ?? {},\n shouldEmitReadRefresh: Boolean(payload.resourceId),\n });\n }\n );\n\n // Bridge: badge:update → EventBus BADGE_COUNT_CHANGED\n const unsubBadge = on<WS_BadgeUpdatePayload>(\n CoreWebSocketEvent.BADGE_UPDATE,\n (payload) => {\n const eventPayload: FrontendEventBadgeCountChanged = {\n badgeReference: payload.badgeReference,\n badgeCount: payload.badgeCount,\n };\n\n eventBus.emit(FrontendEvents.BADGE_COUNT_CHANGED, eventPayload);\n }\n );\n\n // Bridge: resource:editing:start → EventBus RESOURCE_EDITING_START\n const unsubEditingStart = on<WS_ResourceEditingPayload>(\n CoreWebSocketEvent.RESOURCE_EDITING_START,\n (payload) => {\n if (payload.initiatorUserId) {\n const eventPayload: FrontendEventResourceEditing = {\n resourceType: payload.resourceType,\n resourceId: payload.resourceId,\n userId: payload.initiatorUserId,\n timestamp: payload.timestamp,\n };\n eventBus.emit(FrontendEvents.RESOURCE_EDITING_START, eventPayload);\n }\n }\n );\n\n // Bridge: resource:editing:end → EventBus RESOURCE_EDITING_END\n const unsubEditingEnd = on<WS_ResourceEditingPayload>(\n CoreWebSocketEvent.RESOURCE_EDITING_END,\n (payload) => {\n if (payload.initiatorUserId) {\n const eventPayload: FrontendEventResourceEditing = {\n resourceType: payload.resourceType,\n resourceId: payload.resourceId,\n userId: payload.initiatorUserId,\n timestamp: payload.timestamp,\n };\n eventBus.emit(FrontendEvents.RESOURCE_EDITING_END, eventPayload);\n }\n }\n );\n\n // Bridge: resource:custom → EventBus RESOURCE_CUSTOM_EVENT\n const unsubCustom = on<WS_ResourceCustomEventPayload>(\n CoreWebSocketEvent.RESOURCE_CUSTOM,\n (payload) => {\n // Validate resource data if a custom-event payload includes\n // resource-shaped data. RMM sync-grade replay already validates its\n // dedicated payloads elsewhere.\n let validatedResourceData = payload.resourceData;\n \n // If the custom event carries resource-shaped data, validate that\n // dedicated payload field. `data` remains the event-specific message\n // body and may not share the resource DTO contract.\n if (payload.resourceData && typeof payload.resourceData === 'object' && !Array.isArray(payload.resourceData)) {\n try {\n validatedResourceData = validationService.validateWebSocketResourceData(\n payload.resourceData,\n {\n resourceType: payload.resourceType,\n operationIdentifier: undefined, // Custom events don't have operation identifier\n dataMode: payload.dataMode,\n }\n );\n } catch (error) {\n // If validation fails, log error but don't block the event\n // (backward compatibility - validation is opt-in)\n console.warn('[WebSocketEventBridge] Resource data validation failed:', error);\n // Continue with original data\n validatedResourceData = payload.resourceData;\n }\n }\n\n const eventPayload: FrontendEventResourceCustom = {\n resourceType: payload.resourceType,\n resourceId: payload.resourceId,\n eventName: payload.eventName,\n data: payload.data,\n resourceData: validatedResourceData,\n dataMode: payload.dataMode,\n userId: payload.initiatorUserId,\n timestamp: payload.timestamp,\n };\n eventBus.emit(FrontendEvents.RESOURCE_CUSTOM_EVENT, eventPayload);\n }\n );\n\n // Bridge: user:notification → EventBus NOTIFY_CUSTOM_*\n // Handles direct backend-initiated notifications (not tied to resource operations)\n const unsubUserNotification = on<WS_UserNotificationPayload>(\n CoreWebSocketEvent.USER_NOTIFICATION,\n (payload) => {\n const eventPayload: FrontendEventNotifyCustom = {\n identifier: payload.identifier ?? '',\n data: {\n ...payload.data,\n // Mark as backend notification for display policy handling\n _backendNotification: true,\n // Pass display target for NotificationContext to use\n displayTarget: payload.displayTarget,\n // Pass message and title if provided\n message: payload.message,\n title: payload.title,\n organizationId: payload.organizationId,\n },\n };\n\n // Emit notification event with proper typing (use switch to ensure type safety)\n switch (payload.notificationLevel) {\n case NotificationLevel.INFO:\n eventBus.emit(FrontendEvents.NOTIFY_CUSTOM_INFO, eventPayload);\n break;\n case NotificationLevel.SUCCESS:\n eventBus.emit(FrontendEvents.NOTIFY_CUSTOM_SUCCESS, eventPayload);\n break;\n case NotificationLevel.WARNING:\n eventBus.emit(FrontendEvents.NOTIFY_CUSTOM_WARNING, eventPayload);\n break;\n case NotificationLevel.ERROR:\n eventBus.emit(FrontendEvents.NOTIFY_CUSTOM_ERROR, eventPayload);\n break;\n default:\n eventBus.emit(FrontendEvents.NOTIFY_CUSTOM_INFO, eventPayload);\n }\n }\n );\n\n // Bridge: analytics:moment-achieved → EventBus ANALYTICS_MOMENT_ACHIEVED\n const unsubAnalyticsMoment = on<WS_AnalyticsMomentAchievedPayload>(\n CoreWebSocketEvent.ANALYTICS_MOMENT_ACHIEVED,\n (payload) => {\n const eventPayload: FrontendEvent_AnalyticsMomentAchieved = {\n momentIdentifier: payload.momentIdentifier,\n role: payload.role,\n scope: payload.scope,\n triggerSource: AnalyticsTriggerSource.BACKEND,\n };\n eventBus.emit(FrontendEvents.ANALYTICS_MOMENT_ACHIEVED, eventPayload);\n }\n );\n\n // Bridge: guidance:state-changed → EventBus GUIDANCE_FLOW_*\n const unsubGuidance = on<WS_GuidanceStateChangedPayload>(\n CoreWebSocketEvent.GUIDANCE_STATE_CHANGED,\n (payload) => {\n const eventPayload = {\n flowRef: payload.flowRef,\n triggerSource: payload.triggerSource,\n scope: payload.scope,\n renderMode: payload.renderMode,\n };\n switch (payload.status) {\n case OnboardingStatus.IN_PROGRESS:\n eventBus.emit(FrontendEvents.GUIDANCE_FLOW_ACTIVATED, eventPayload);\n break;\n case OnboardingStatus.COMPLETED:\n eventBus.emit(FrontendEvents.GUIDANCE_FLOW_COMPLETED, eventPayload);\n break;\n case OnboardingStatus.DISMISSED:\n eventBus.emit(FrontendEvents.GUIDANCE_FLOW_DISMISSED, eventPayload);\n break;\n }\n }\n );\n\n // Bridge: progression:milestone-achieved → EventBus MILESTONE_ACHIEVED\n const unsubMilestone = on<WS_MilestoneAchievedPayload>(\n CoreWebSocketEvent.MILESTONE_ACHIEVED,\n (payload) => {\n const eventPayload: FrontendEvent_MilestoneAchieved = {\n milestoneRef: payload.milestoneRef,\n category: payload.category,\n points: payload.points,\n achievedAt: payload.achievedAt,\n scope: payload.scope,\n reward: payload.reward,\n lifecycleTransition: payload.lifecycleTransition,\n totalPoints: payload.totalPoints,\n };\n eventBus.emit(FrontendEvents.MILESTONE_ACHIEVED, eventPayload);\n }\n );\n\n // Bridge: progression:updated → EventBus PROGRESSION_UPDATED\n const unsubProgression = on<WS_ProgressionUpdatedPayload>(\n CoreWebSocketEvent.PROGRESSION_UPDATED,\n (payload) => {\n const eventPayload: FrontendEvent_ProgressionUpdated = {\n scope: payload.scope,\n operationCounts: payload.operationCounts,\n totalPoints: payload.totalPoints,\n updatedAt: payload.updatedAt,\n };\n eventBus.emit(FrontendEvents.PROGRESSION_UPDATED, eventPayload);\n }\n );\n\n // Bridge: lifecycle:stage-changed → EventBus LIFECYCLE_STAGE_CHANGED\n const unsubLifecycle = on<WS_LifecycleStageChangedPayload>(\n CoreWebSocketEvent.LIFECYCLE_STAGE_CHANGED,\n (payload) => {\n const eventPayload: FrontendEvent_LifecycleStageChanged = {\n previousStage: payload.previousStage,\n newStage: payload.newStage,\n scope: payload.scope,\n trigger: payload.trigger,\n changedAt: payload.changedAt,\n activationCriteriaMet: payload.activationCriteriaMet,\n };\n eventBus.emit(FrontendEvents.LIFECYCLE_STAGE_CHANGED, eventPayload);\n }\n );\n\n // Cleanup\n return () => {\n unsubNotification();\n unsubUpdated();\n unsubDeleted();\n unsubBadge();\n unsubEditingStart();\n unsubEditingEnd();\n unsubCustom();\n unsubUserNotification();\n unsubAnalyticsMoment();\n unsubGuidance();\n unsubMilestone();\n unsubProgression();\n unsubLifecycle();\n };\n }, [isConnected, on, eventBus, registry, validationService]);\n\n // This component renders nothing\n return null;\n};\n\nexport default WebSocketEventBridge;\n"]}
1
+ {"version":3,"file":"WebSocketEventBridge.js","sourceRoot":"","sources":["../../../../../../src/core/requests/websockets/WebSocketEventBridge.tsx"],"names":[],"mappings":"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","sourcesContent":["import React, { useEffect, useMemo } from 'react';\nimport { useWebSocket } from './useWebSocket';\nimport { useEventBus } from '~wildo-frontend-lib/core/events/useEventBus';\nimport { useResourceRegistry } from '~wildo-frontend-lib/core/resources/useResourceRegistry';\nimport { WebSocketResourceValidationService } from './websocket-resource-validation.frontend.service';\nimport { \n FrontendEvents, \n FrontendEventResourceOperation, \n FrontendEventBadgeCountChanged,\n FrontendEventResourceEditing,\n FrontendEventResourceCustom,\n FrontendEventNotifyCustom,\n type FrontendEvent_AnalyticsMomentAchieved,\n type FrontendEvent_MilestoneAchieved,\n type FrontendEvent_ProgressionUpdated,\n type FrontendEvent_LifecycleStageChanged,\n} from '~wildo-frontend-lib/core/events/events.frontend.schemas';\nimport {\n AnalyticsTriggerSource,\n CoreResourceOperation,\n CoreWebSocketEvent,\n WS_ResourceDeletedPayload,\n WS_ResourceNotificationPayload,\n WS_ResourceUpdatedPayload,\n WS_BadgeUpdatePayload,\n WS_BulkJobProgressPayload,\n WS_ResourceEditingPayload,\n WS_ResourceCustomEventPayload,\n WS_UserNotificationPayload,\n WS_AnalyticsMomentAchievedPayload,\n NotificationLevel,\n ResourceAction,\n ResourceOperationVariantType,\n ResourcesConfig_OperationPathUtils,\n OnboardingStatus,\n WebSocketResourceDeliveryTarget,\n type WS_GuidanceStateChangedPayload,\n type WS_MilestoneAchievedPayload,\n type WS_ProgressionUpdatedPayload,\n type WS_LifecycleStageChangedPayload,\n} from '@wildo-ai/saas-models';\nimport { getOperationsForCoreSemantic } from '~wildo-frontend-lib/core/resources/operation-semantics.frontend.utils';\nimport { frontendResourceUtils, FrontendResourceUtils } from '~wildo-frontend-lib/core/resources/frontend-resource.utils';\nimport { isFrontendOperationAddressableForCurrentContext } from '~wildo-frontend-lib/core/resources/resource-addressability.frontend.utils';\nimport { operationInitiatorParametersSatisfied } from '~wildo-frontend-lib/core/resources/operation-initiator-satisfaction.frontend.utils';\nimport {\n normalizeContextResourceIdentifiersForTransport,\n type ContextResourceIdentifiersInput,\n} from '~wildo-frontend-lib/core/resources/context-resource-identifiers.frontend.utils';\n\n/**\n * WebSocketEventBridge\n * \n * Bridges WebSocket events from the Socket.IO connection to the Frontend EventBus.\n * This component should be mounted once at the app root level, after both\n * WebSocketProvider and EventBusProvider.\n * \n * Events bridged:\n * - resource:notification → RESOURCE_REFRESH, NOTIFY_RESOURCE_*\n * - resource:updated → RESOURCE_REFRESH\n * - resource:deleted → RESOURCE_REFRESH\n * - badge:update → BADGE_COUNT_CHANGED\n * - bulk-job:progress → BULK_JOB_PROGRESS\n * - guidance:state-changed → GUIDANCE_FLOW_ACTIVATED/COMPLETED/DISMISSED\n * \n * Business logic components can then subscribe to EventBus events without\n * knowing the event source (HTTP response, WebSocket, or other).\n */\nexport const WebSocketEventBridge: React.FC = () => {\n const { on, isConnected } = useWebSocket();\n const eventBus = useEventBus();\n const { getResourcesRegistry } = useResourceRegistry();\n const registry = useMemo(() => getResourcesRegistry(), [getResourcesRegistry]);\n\n // Initialize the validation service used by websocket payloads that carry\n // resource-shaped data.\n const validationService = useMemo(() => {\n return new WebSocketResourceValidationService(registry);\n }, [registry]);\n\n useEffect(() => {\n if (!isConnected) {\n return;\n }\n\n // Helper: Map action to default notification level (fallback when notificationLevel not provided)\n const actionToNotificationLevel = (action: ResourceAction | string): NotificationLevel => {\n switch (action) {\n case ResourceAction.CREATED: return NotificationLevel.SUCCESS;\n case ResourceAction.UPDATED: return NotificationLevel.INFO;\n case ResourceAction.DELETED: return NotificationLevel.WARNING;\n default: return NotificationLevel.INFO;\n }\n };\n\n const resolveOperationFromPayload = (params: {\n resourceType: string;\n operationIdentifier: string;\n operationPathKey?: string;\n variantType?: ResourceOperationVariantType;\n isOperationDefault?: boolean;\n isBulkOperation?: boolean;\n variantKey?: string;\n }) => {\n const operations = registry.resourceConfigurations[params.resourceType]?.operations ?? [];\n if (params.operationPathKey) {\n const pathOperation = operations.find((operation) => {\n try {\n return ResourcesConfig_OperationPathUtils.createOperationPathKeyFromOperation(operation) === params.operationPathKey;\n } catch {\n return false;\n }\n });\n if (pathOperation) {\n return pathOperation;\n }\n }\n\n const matchingOperations = operations.filter((operation) => (\n String(operation.operationIdentifier) === params.operationIdentifier\n && (params.variantType == null || operation.variantType === params.variantType)\n && (params.variantKey == null || operation.variantKey === params.variantKey)\n && (params.isBulkOperation == null || (operation.isBulkOperation === true) === params.isBulkOperation)\n && (\n params.isOperationDefault == null\n || Boolean(operation.isOperationDefault) === params.isOperationDefault\n )\n ));\n\n if (matchingOperations.length === 1) {\n return matchingOperations[0];\n }\n\n if (matchingOperations.length > 1) {\n console.warn('[WebSocketEventBridge] Ambiguous operation identity in notification payload; emitting minimal operation context.', {\n resourceType: params.resourceType,\n operationIdentifier: params.operationIdentifier,\n variantType: params.variantType,\n variantKey: params.variantKey,\n isOperationDefault: params.isOperationDefault,\n isBulkOperation: params.isBulkOperation,\n candidateVariants: matchingOperations.map((operation) => ({\n variantType: operation.variantType,\n variantKey: operation.variantKey,\n isOperationDefault: operation.isOperationDefault,\n isBulkOperation: operation.isBulkOperation,\n })),\n });\n }\n\n // Some websocket producers only carry operation identity fields, not the\n // full authored operation object. Rebuild the minimum shape the EventBus\n // contracts expect so downstream consumers can still reason about variant,\n // default-ness, and bulk semantics consistently.\n return {\n operationIdentifier: params.operationIdentifier,\n variantType: params.variantType,\n isOperationDefault: params.isOperationDefault,\n isBulkOperation: params.isBulkOperation,\n variantKey: params.variantKey,\n };\n };\n\n const emitRefreshPayloads = ({\n resourceType,\n resourceIds,\n contextResourceIdentifiers,\n shouldEmitReadRefresh,\n }: {\n resourceType: string;\n resourceIds?: Array<string | null | undefined>;\n contextResourceIdentifiers?: ContextResourceIdentifiersInput;\n shouldEmitReadRefresh: boolean;\n }): void => {\n const resourceConfig = registry.resourceConfigurations[resourceType];\n const flattenedContextIdentifiers = normalizeContextResourceIdentifiersForTransport(\n contextResourceIdentifiers,\n );\n const normalizedContextIdentifiers = Object.fromEntries(\n Object.entries(flattenedContextIdentifiers).flatMap(([identifierKey, resourceIdentifier]) => {\n const normalizedKey = registry.fieldIdentifierToResourceType?.[identifierKey] ?? identifierKey;\n return normalizedKey === identifierKey\n ? [[identifierKey, resourceIdentifier]]\n : [\n [identifierKey, resourceIdentifier],\n [normalizedKey, resourceIdentifier],\n ];\n }),\n );\n const baseContextIdentifiers = {\n ...normalizedContextIdentifiers,\n };\n delete baseContextIdentifiers[resourceType];\n const baseContextualParameters = FrontendResourceUtils.buildContextualParameters(\n baseContextIdentifiers,\n registry,\n );\n\n // This bridge owns generic cache/list/read invalidation only. It does not\n // try to replay authoritative resource data into local state; richer sync\n // semantics stay in the dedicated RMM websocket bridge. The consumers here\n // are generic RESOURCE_REFRESH listeners such as non-RMM readers, list\n // surfaces, and cache invalidation hooks.\n const listOperations = getOperationsForCoreSemantic(\n resourceConfig?.operations ?? [],\n CoreResourceOperation.LIST,\n ).filter((listOperation) =>\n operationInitiatorParametersSatisfied({\n operation: listOperation,\n contextResourceIdentifiers: baseContextIdentifiers,\n contextualParameters: baseContextualParameters,\n })\n );\n const listRefreshTargets = listOperations.length > 0\n ? listOperations\n : [null];\n const baseParentResourcesRequirements = frontendResourceUtils.buildParentResourcesRequirements(\n resourceType as any,\n baseContextIdentifiers,\n registry,\n );\n\n for (const listOperation of listRefreshTargets) {\n eventBus.emit(FrontendEvents.RESOURCE_REFRESH, {\n resourceType,\n operationIdentifier: String(listOperation?.operationIdentifier ?? CoreResourceOperation.LIST),\n variantType: listOperation?.variantType,\n isOperationDefault: listOperation?.isOperationDefault ?? true,\n isBulkOperation: listOperation?.isBulkOperation ?? false,\n variantKey: listOperation?.variantKey,\n contextResourceIdentifiers: baseContextIdentifiers,\n parentResourcesRequirements: baseParentResourcesRequirements,\n operation: (listOperation ?? { operationIdentifier: CoreResourceOperation.LIST }) as any,\n });\n }\n\n const validReadResourceIds = Array.from(new Set(\n (resourceIds ?? []).filter((resourceId): resourceId is string => typeof resourceId === 'string' && resourceId.length > 0),\n ));\n\n if (!shouldEmitReadRefresh || validReadResourceIds.length === 0) {\n return;\n }\n\n const readOperations = getOperationsForCoreSemantic(\n resourceConfig?.operations ?? [],\n CoreResourceOperation.READ,\n {\n requireAddressable: true,\n },\n );\n const emittedReadOperationKeys = new Set<string>();\n\n for (const resourceId of validReadResourceIds) {\n const readContextIdentifiers = {\n ...baseContextIdentifiers,\n [resourceType]: resourceId,\n };\n const readContextualParameters = FrontendResourceUtils.buildContextualParameters(\n readContextIdentifiers,\n registry,\n );\n const readParentResourcesRequirements = frontendResourceUtils.buildParentResourcesRequirements(\n resourceType as any,\n readContextIdentifiers,\n registry,\n );\n const addressableReadOperations = readOperations.filter((readOperation) =>\n resourceConfig\n ? isFrontendOperationAddressableForCurrentContext({\n resourceConfig,\n operation: readOperation,\n registry,\n hasResourceId: true,\n contextResourceIdentifiers: readContextIdentifiers,\n contextualParameters: readContextualParameters,\n })\n : true\n );\n const readRefreshTargets = addressableReadOperations.length > 0\n ? addressableReadOperations\n : [null];\n\n for (const readOperation of readRefreshTargets) {\n const readOperationContext = readOperation\n ?? ({ operationIdentifier: CoreResourceOperation.READ } as any);\n const readOperationKey = [\n resourceId,\n String(readOperationContext.operationIdentifier),\n readOperationContext.variantType ?? '',\n readOperationContext.variantKey ?? '',\n readOperationContext.isBulkOperation ?? false,\n ].join(':');\n if (emittedReadOperationKeys.has(readOperationKey)) {\n continue;\n }\n emittedReadOperationKeys.add(readOperationKey);\n\n eventBus.emit(FrontendEvents.RESOURCE_REFRESH, {\n resourceType,\n operationIdentifier: String(readOperationContext.operationIdentifier ?? CoreResourceOperation.READ),\n variantType: readOperation?.variantType,\n isOperationDefault: readOperation?.isOperationDefault ?? true,\n isBulkOperation: readOperation?.isBulkOperation ?? false,\n variantKey: readOperation?.variantKey,\n contextResourceIdentifiers: readContextIdentifiers,\n parentResourcesRequirements: readParentResourcesRequirements,\n operation: readOperationContext,\n });\n }\n }\n };\n\n // Bridge: resource:notification → EventBus\n const unsubNotification = on<WS_ResourceNotificationPayload>(\n CoreWebSocketEvent.RESOURCE_NOTIFICATION,\n (payload) => {\n const resolvedOperation = resolveOperationFromPayload({\n resourceType: payload.resourceType,\n operationIdentifier: payload.operationIdentifier,\n operationPathKey: payload.operationPathKey,\n variantType: payload.variantType,\n isOperationDefault: payload.isOperationDefault,\n isBulkOperation: payload.isBulkOperation,\n variantKey: payload.variantKey,\n });\n const eventPayload: FrontendEventResourceOperation = {\n serverNotification: payload.deliveryPolicy,\n resourceType: payload.resourceType,\n operationIdentifier: payload.operationIdentifier,\n variantType: resolvedOperation.variantType ?? payload.variantType,\n isOperationDefault: resolvedOperation.isOperationDefault ?? payload.isOperationDefault,\n isBulkOperation: resolvedOperation.isBulkOperation ?? payload.isBulkOperation,\n variantKey: typeof resolvedOperation.variantKey === 'string' ? resolvedOperation.variantKey : payload.variantKey,\n contextResourceIdentifiers: payload.contextResourceIdentifiers ?? {},\n parentResourcesRequirements: [],\n operation: resolvedOperation as any,\n // Include notification context for i18n message resolution\n additionalContext: {\n notificationIdentifier: payload.notificationIdentifier,\n action: payload.action,\n frontendDisplayHints: payload.frontendDisplayHints,\n // How many rows a BULK action changed — the count its outcome message states.\n ...(payload.isBulkOperation ? { affectedCount: payload.affectedIds.length } : {}),\n },\n // Populate resultSummary from WS notification context identifiers\n // (enables analytics RESOURCE_OPERATION filter evaluation)\n resultSummary: payload.contextResourceIdentifiers\n ? { ...payload.contextResourceIdentifiers }\n : undefined,\n };\n\n // Use notificationLevel from payload if provided, otherwise derive from action\n const level = payload.notificationLevel ?? actionToNotificationLevel(payload.action);\n if (level !== NotificationLevel.ERROR) {\n emitRefreshPayloads({\n resourceType: payload.resourceType,\n resourceIds: payload.affectedIds,\n contextResourceIdentifiers: payload.contextResourceIdentifiers ?? {},\n shouldEmitReadRefresh: payload.affectedIds.length > 0 && !(payload.isBulkOperation ?? false),\n });\n }\n\n // Emit notification event with proper typing (use switch to ensure type safety)\n switch (level) {\n case NotificationLevel.SUCCESS:\n eventBus.emit(FrontendEvents.NOTIFY_RESOURCE_SUCCESS, eventPayload);\n break;\n case NotificationLevel.WARNING:\n eventBus.emit(FrontendEvents.NOTIFY_RESOURCE_WARNING, eventPayload);\n break;\n case NotificationLevel.ERROR:\n eventBus.emit(FrontendEvents.NOTIFY_RESOURCE_ERROR, eventPayload);\n break;\n case NotificationLevel.INFO:\n default:\n eventBus.emit(FrontendEvents.NOTIFY_RESOURCE_INFO, eventPayload);\n }\n }\n );\n\n // Bridge: resource:updated → EventBus RESOURCE_REFRESH\n const unsubUpdated = on<WS_ResourceUpdatedPayload>(\n CoreWebSocketEvent.RESOURCE_UPDATED,\n (payload) => {\n // RESOURCE_UPDATED always triggers generic refresh fan-out here so\n // non-RMM consumers still invalidate list/read surfaces. Resource-room\n // sync replay and authoritative refetch decisions remain owned by\n // RMMWebSocketBridge.\n emitRefreshPayloads({\n resourceType: payload.resourceType,\n resourceIds: payload.deliveryTarget === WebSocketResourceDeliveryTarget.SCOPE_ROOM_NOTIFICATION\n ? payload.affectedIds ?? []\n : [payload.resourceId],\n contextResourceIdentifiers: payload.contextResourceIdentifiers ?? {},\n shouldEmitReadRefresh: payload.deliveryTarget === WebSocketResourceDeliveryTarget.SCOPE_ROOM_NOTIFICATION\n ? (payload.affectedIds?.length ?? 0) > 0\n : Boolean(payload.resourceId),\n });\n }\n );\n\n // Bridge: resource:deleted → EventBus RESOURCE_REFRESH\n const unsubDeleted = on<WS_ResourceDeletedPayload>(\n CoreWebSocketEvent.RESOURCE_DELETED,\n (payload) => {\n emitRefreshPayloads({\n resourceType: payload.resourceType,\n resourceIds: [payload.resourceId],\n contextResourceIdentifiers: payload.contextResourceIdentifiers ?? {},\n shouldEmitReadRefresh: Boolean(payload.resourceId),\n });\n }\n );\n\n // Bridge: badge:update → EventBus BADGE_COUNT_CHANGED\n const unsubBadge = on<WS_BadgeUpdatePayload>(\n CoreWebSocketEvent.BADGE_UPDATE,\n (payload) => {\n const eventPayload: FrontendEventBadgeCountChanged = {\n badgeReference: payload.badgeReference,\n badgeCount: payload.badgeCount,\n };\n\n eventBus.emit(FrontendEvents.BADGE_COUNT_CHANGED, eventPayload);\n }\n );\n\n // Bridge: bulk-job:progress → EventBus BULK_JOB_PROGRESS\n //\n // Carried through unchanged: the counts are the server's, and the surface that draws the bar is\n // the one that decides what to say about them. Addressed to the USER rather than to a resource\n // room, because a bulk run spans many rows and no row's room is the right place (#1461).\n const unsubBulkJobProgress = on<WS_BulkJobProgressPayload>(\n CoreWebSocketEvent.BULK_JOB_PROGRESS,\n (payload) => {\n eventBus.emit(FrontendEvents.BULK_JOB_PROGRESS, {\n jobId: payload.jobId,\n resourceType: payload.resourceType,\n operationIdentifier: payload.operationIdentifier,\n attemptedCount: payload.attemptedCount,\n processedCount: payload.processedCount,\n failedCount: payload.failedCount,\n finished: payload.finished,\n ...(payload.failures ? { failures: payload.failures } : {}),\n });\n }\n );\n\n // Bridge: resource:editing:start → EventBus RESOURCE_EDITING_START\n const unsubEditingStart = on<WS_ResourceEditingPayload>(\n CoreWebSocketEvent.RESOURCE_EDITING_START,\n (payload) => {\n if (payload.initiatorUserId) {\n const eventPayload: FrontendEventResourceEditing = {\n resourceType: payload.resourceType,\n resourceId: payload.resourceId,\n userId: payload.initiatorUserId,\n timestamp: payload.timestamp,\n };\n eventBus.emit(FrontendEvents.RESOURCE_EDITING_START, eventPayload);\n }\n }\n );\n\n // Bridge: resource:editing:end → EventBus RESOURCE_EDITING_END\n const unsubEditingEnd = on<WS_ResourceEditingPayload>(\n CoreWebSocketEvent.RESOURCE_EDITING_END,\n (payload) => {\n if (payload.initiatorUserId) {\n const eventPayload: FrontendEventResourceEditing = {\n resourceType: payload.resourceType,\n resourceId: payload.resourceId,\n userId: payload.initiatorUserId,\n timestamp: payload.timestamp,\n };\n eventBus.emit(FrontendEvents.RESOURCE_EDITING_END, eventPayload);\n }\n }\n );\n\n // Bridge: resource:custom → EventBus RESOURCE_CUSTOM_EVENT\n const unsubCustom = on<WS_ResourceCustomEventPayload>(\n CoreWebSocketEvent.RESOURCE_CUSTOM,\n (payload) => {\n // Validate resource data if a custom-event payload includes\n // resource-shaped data. RMM sync-grade replay already validates its\n // dedicated payloads elsewhere.\n let validatedResourceData = payload.resourceData;\n \n // If the custom event carries resource-shaped data, validate that\n // dedicated payload field. `data` remains the event-specific message\n // body and may not share the resource DTO contract.\n if (payload.resourceData && typeof payload.resourceData === 'object' && !Array.isArray(payload.resourceData)) {\n try {\n validatedResourceData = validationService.validateWebSocketResourceData(\n payload.resourceData,\n {\n resourceType: payload.resourceType,\n operationIdentifier: undefined, // Custom events don't have operation identifier\n dataMode: payload.dataMode,\n }\n );\n } catch (error) {\n // If validation fails, log error but don't block the event\n // (backward compatibility - validation is opt-in)\n console.warn('[WebSocketEventBridge] Resource data validation failed:', error);\n // Continue with original data\n validatedResourceData = payload.resourceData;\n }\n }\n\n const eventPayload: FrontendEventResourceCustom = {\n resourceType: payload.resourceType,\n resourceId: payload.resourceId,\n eventName: payload.eventName,\n data: payload.data,\n resourceData: validatedResourceData,\n dataMode: payload.dataMode,\n userId: payload.initiatorUserId,\n timestamp: payload.timestamp,\n };\n eventBus.emit(FrontendEvents.RESOURCE_CUSTOM_EVENT, eventPayload);\n }\n );\n\n // Bridge: user:notification → EventBus NOTIFY_CUSTOM_*\n // Handles direct backend-initiated notifications (not tied to resource operations)\n const unsubUserNotification = on<WS_UserNotificationPayload>(\n CoreWebSocketEvent.USER_NOTIFICATION,\n (payload) => {\n const eventPayload: FrontendEventNotifyCustom = {\n identifier: payload.identifier ?? '',\n data: {\n ...payload.data,\n // Mark as backend notification for display policy handling\n _backendNotification: true,\n // Pass display target for NotificationContext to use\n displayTarget: payload.displayTarget,\n // Pass message and title if provided\n message: payload.message,\n title: payload.title,\n organizationId: payload.organizationId,\n },\n };\n\n // Emit notification event with proper typing (use switch to ensure type safety)\n switch (payload.notificationLevel) {\n case NotificationLevel.INFO:\n eventBus.emit(FrontendEvents.NOTIFY_CUSTOM_INFO, eventPayload);\n break;\n case NotificationLevel.SUCCESS:\n eventBus.emit(FrontendEvents.NOTIFY_CUSTOM_SUCCESS, eventPayload);\n break;\n case NotificationLevel.WARNING:\n eventBus.emit(FrontendEvents.NOTIFY_CUSTOM_WARNING, eventPayload);\n break;\n case NotificationLevel.ERROR:\n eventBus.emit(FrontendEvents.NOTIFY_CUSTOM_ERROR, eventPayload);\n break;\n default:\n eventBus.emit(FrontendEvents.NOTIFY_CUSTOM_INFO, eventPayload);\n }\n }\n );\n\n // Bridge: analytics:moment-achieved → EventBus ANALYTICS_MOMENT_ACHIEVED\n const unsubAnalyticsMoment = on<WS_AnalyticsMomentAchievedPayload>(\n CoreWebSocketEvent.ANALYTICS_MOMENT_ACHIEVED,\n (payload) => {\n const eventPayload: FrontendEvent_AnalyticsMomentAchieved = {\n momentIdentifier: payload.momentIdentifier,\n role: payload.role,\n scope: payload.scope,\n triggerSource: AnalyticsTriggerSource.BACKEND,\n };\n eventBus.emit(FrontendEvents.ANALYTICS_MOMENT_ACHIEVED, eventPayload);\n }\n );\n\n // Bridge: guidance:state-changed → EventBus GUIDANCE_FLOW_*\n const unsubGuidance = on<WS_GuidanceStateChangedPayload>(\n CoreWebSocketEvent.GUIDANCE_STATE_CHANGED,\n (payload) => {\n const eventPayload = {\n flowRef: payload.flowRef,\n triggerSource: payload.triggerSource,\n scope: payload.scope,\n renderMode: payload.renderMode,\n };\n switch (payload.status) {\n case OnboardingStatus.IN_PROGRESS:\n eventBus.emit(FrontendEvents.GUIDANCE_FLOW_ACTIVATED, eventPayload);\n break;\n case OnboardingStatus.COMPLETED:\n eventBus.emit(FrontendEvents.GUIDANCE_FLOW_COMPLETED, eventPayload);\n break;\n case OnboardingStatus.DISMISSED:\n eventBus.emit(FrontendEvents.GUIDANCE_FLOW_DISMISSED, eventPayload);\n break;\n }\n }\n );\n\n // Bridge: progression:milestone-achieved → EventBus MILESTONE_ACHIEVED\n const unsubMilestone = on<WS_MilestoneAchievedPayload>(\n CoreWebSocketEvent.MILESTONE_ACHIEVED,\n (payload) => {\n const eventPayload: FrontendEvent_MilestoneAchieved = {\n milestoneRef: payload.milestoneRef,\n category: payload.category,\n points: payload.points,\n achievedAt: payload.achievedAt,\n scope: payload.scope,\n reward: payload.reward,\n lifecycleTransition: payload.lifecycleTransition,\n totalPoints: payload.totalPoints,\n };\n eventBus.emit(FrontendEvents.MILESTONE_ACHIEVED, eventPayload);\n }\n );\n\n // Bridge: progression:updated → EventBus PROGRESSION_UPDATED\n const unsubProgression = on<WS_ProgressionUpdatedPayload>(\n CoreWebSocketEvent.PROGRESSION_UPDATED,\n (payload) => {\n const eventPayload: FrontendEvent_ProgressionUpdated = {\n scope: payload.scope,\n operationCounts: payload.operationCounts,\n totalPoints: payload.totalPoints,\n updatedAt: payload.updatedAt,\n };\n eventBus.emit(FrontendEvents.PROGRESSION_UPDATED, eventPayload);\n }\n );\n\n // Bridge: lifecycle:stage-changed → EventBus LIFECYCLE_STAGE_CHANGED\n const unsubLifecycle = on<WS_LifecycleStageChangedPayload>(\n CoreWebSocketEvent.LIFECYCLE_STAGE_CHANGED,\n (payload) => {\n const eventPayload: FrontendEvent_LifecycleStageChanged = {\n previousStage: payload.previousStage,\n newStage: payload.newStage,\n scope: payload.scope,\n trigger: payload.trigger,\n changedAt: payload.changedAt,\n activationCriteriaMet: payload.activationCriteriaMet,\n };\n eventBus.emit(FrontendEvents.LIFECYCLE_STAGE_CHANGED, eventPayload);\n }\n );\n\n // Cleanup\n return () => {\n unsubNotification();\n unsubUpdated();\n unsubDeleted();\n unsubBadge();\n unsubBulkJobProgress();\n unsubEditingStart();\n unsubEditingEnd();\n unsubCustom();\n unsubUserNotification();\n unsubAnalyticsMoment();\n unsubGuidance();\n unsubMilestone();\n unsubProgression();\n unsubLifecycle();\n };\n }, [isConnected, on, eventBus, registry, validationService]);\n\n // This component renders nothing\n return null;\n};\n\nexport default WebSocketEventBridge;\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"useNotificationBadges.d.ts","sourceRoot":"","sources":["../../../../../src/core/requests/websockets/useNotificationBadges.ts"],"names":[],"mappings":"AA0BA,OAAO,EACL,2BAA2B,EAI5B,MAAM,uBAAuB,CAAC;AAO/B,6DAA6D;AAC7D,MAAM,WAAW,kBAAkB;IACjC,0EAA0E;IAC1E,KAAK,EAAE,MAAM,CAAC;IACd,wEAAwE;IACxE,KAAK,EAAE,OAAO,CAAC;CAChB;AAED,MAAM,WAAW,2BAA2B;IAC1C,6DAA6D;IAC7D,aAAa,EAAE,CAAC,UAAU,EAAE,2BAA2B,KAAK,kBAAkB,CAAC;CAChF;AAED,eAAO,MAAM,qBAAqB,QAAO,2BAyDxC,CAAC;AAEF,eAAe,qBAAqB,CAAC"}
1
+ {"version":3,"file":"useNotificationBadges.d.ts","sourceRoot":"","sources":["../../../../../../src/core/requests/websockets/useNotificationBadges.ts"],"names":[],"mappings":"AA0BA,OAAO,EACL,2BAA2B,EAI5B,MAAM,uBAAuB,CAAC;AAO/B,6DAA6D;AAC7D,MAAM,WAAW,kBAAkB;IACjC,0EAA0E;IAC1E,KAAK,EAAE,MAAM,CAAC;IACd,wEAAwE;IACxE,KAAK,EAAE,OAAO,CAAC;CAChB;AAED,MAAM,WAAW,2BAA2B;IAC1C,6DAA6D;IAC7D,aAAa,EAAE,CAAC,UAAU,EAAE,2BAA2B,KAAK,kBAAkB,CAAC;CAChF;AAED,eAAO,MAAM,qBAAqB,QAAO,2BAyDxC,CAAC;AAEF,eAAe,qBAAqB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"useNotificationBadges.js","sourceRoot":"","sources":["../../../../../src/core/requests/websockets/useNotificationBadges.ts"],"names":[],"mappings":"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","sourcesContent":["/**\n * useNotificationBadges — the single frontend badge-count store (R6b).\n *\n * Replaces the retracted dual mechanism (`useBadge`/`useUserBadges` + the\n * launcher's own `badgeCounts` state). Subscribes ONCE to `BADGE_COUNT_CHANGED`\n * and indexes counts by badge KEY — `<scope>:<identifier>`, reduced from the pushed\n * `badgeReference` (`<scope>:<scopeId>:<identifier>`) by `notificationBadgeKeyFromReference`.\n * The backend already scopes every push to the connected user (seed on connect, R6a; recompute on\n * mutation, R5), so the store never needs the session's own scope ids to receive.\n *\n * ## Why the key and not the identifier\n *\n * It used to `split(':')` by hand, take part `[2]`, and index on that — discarding the scope. Two\n * definitions declaring one identifier at different scopes therefore collapsed onto one entry: the\n * second was unreachable and rendered the first's count. The key is the definition's own identity,\n * built by the SAME function `NavigationItemBadge` resolves a `notificationBadgeRef` with and the\n * backend refuses duplicates of at boot, so the store's key and the lookup key cannot drift apart.\n *\n * `scopeId` stays out of the key deliberately: it says WHOSE badge, which a navigation declaration\n * cannot name, and a session only ever receives pushes for its own scope ids.\n *\n * Call it ONCE at a host (e.g. the sidebar behavior) and thread `getBadgeState`\n * down, so there is a single subscription + one shared pulse-timer state.\n */\nimport { useCallback, useEffect, useRef, useState } from 'react';\n\nimport {\n NotificationBadgeDefinition,\n NotificationBadgePulse,\n notificationBadgeIdentityKey,\n notificationBadgeKeyFromReference,\n} from '@wildo-ai/saas-models';\nimport { FrontendEvents, type FrontendEventBadgeCountChanged } from '~wildo-frontend-lib/core/events/events.frontend.schemas';\nimport { useEventBus } from '~wildo-frontend-lib/core/events/useEventBus';\n\n/** How long an `ON_INCREASE` badge visibly pulses after a count rise (ms). */\nconst PULSE_WINDOW_MS = 2000;\n\n/** Resolved, render-ready badge state for one definition. */\nexport interface ResolvedBadgeState {\n /** Current count (0 until the first push for this identifier arrives). */\n count: number;\n /** Already-resolved \"pulse now\", per the definition's pulse trigger. */\n pulse: boolean;\n}\n\nexport interface UseNotificationBadgesResult {\n /** Resolve the live count + pulse for a badge definition. */\n getBadgeState: (definition: NotificationBadgeDefinition) => ResolvedBadgeState;\n}\n\nexport const useNotificationBadges = (): UseNotificationBadgesResult => {\n const { on } = useEventBus();\n\n const [countsByBadgeKey, setCountsByBadgeKey] = useState<Record<string, number>>({});\n // Transient `ON_INCREASE` pulse flags, keyed by badge key.\n const [pulsingByBadgeKey, setPulsingByBadgeKey] = useState<Record<string, boolean>>({});\n // Previous counts (ref, not state) so an increase can be detected without\n // re-subscribing on every count change.\n const previousCountsRef = useRef<Record<string, number>>({});\n\n useEffect(() => {\n return on(FrontendEvents.BADGE_COUNT_CHANGED, (payload: FrontendEventBadgeCountChanged) => {\n // A malformed reference, or one naming a scope no badge resource backs, is dropped rather\n // than indexed under a key nothing can resolve.\n const badgeKey = notificationBadgeKeyFromReference(payload.badgeReference);\n if (!badgeKey) {\n return;\n }\n const previous = previousCountsRef.current[badgeKey] ?? 0;\n previousCountsRef.current[badgeKey] = payload.badgeCount;\n\n setCountsByBadgeKey((prev) => ({ ...prev, [badgeKey]: payload.badgeCount }));\n\n if (payload.badgeCount > previous) {\n setPulsingByBadgeKey((prev) => ({ ...prev, [badgeKey]: true }));\n // Clear the transient pulse after the window (fresh render shows a static badge).\n setTimeout(() => {\n setPulsingByBadgeKey((prev) => ({ ...prev, [badgeKey]: false }));\n }, PULSE_WINDOW_MS);\n }\n });\n }, [on]);\n\n const getBadgeState = useCallback(\n (definition: NotificationBadgeDefinition): ResolvedBadgeState => {\n const badgeKey = notificationBadgeIdentityKey(definition);\n const count = countsByBadgeKey[badgeKey] ?? 0;\n\n let pulse = false;\n switch (definition.display.pulse) {\n case NotificationBadgePulse.WHILE_ACTIVE:\n pulse = count > 0;\n break;\n case NotificationBadgePulse.ON_INCREASE:\n pulse = !!pulsingByBadgeKey[badgeKey];\n break;\n case NotificationBadgePulse.NONE:\n default:\n pulse = false;\n }\n\n return { count, pulse };\n },\n [countsByBadgeKey, pulsingByBadgeKey],\n );\n\n return { getBadgeState };\n};\n\nexport default useNotificationBadges;\n"]}
1
+ {"version":3,"file":"useNotificationBadges.js","sourceRoot":"","sources":["../../../../../../src/core/requests/websockets/useNotificationBadges.ts"],"names":[],"mappings":"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","sourcesContent":["/**\n * useNotificationBadges — the single frontend badge-count store (R6b).\n *\n * Replaces the retracted dual mechanism (`useBadge`/`useUserBadges` + the\n * launcher's own `badgeCounts` state). Subscribes ONCE to `BADGE_COUNT_CHANGED`\n * and indexes counts by badge KEY — `<scope>:<identifier>`, reduced from the pushed\n * `badgeReference` (`<scope>:<scopeId>:<identifier>`) by `notificationBadgeKeyFromReference`.\n * The backend already scopes every push to the connected user (seed on connect, R6a; recompute on\n * mutation, R5), so the store never needs the session's own scope ids to receive.\n *\n * ## Why the key and not the identifier\n *\n * It used to `split(':')` by hand, take part `[2]`, and index on that — discarding the scope. Two\n * definitions declaring one identifier at different scopes therefore collapsed onto one entry: the\n * second was unreachable and rendered the first's count. The key is the definition's own identity,\n * built by the SAME function `NavigationItemBadge` resolves a `notificationBadgeRef` with and the\n * backend refuses duplicates of at boot, so the store's key and the lookup key cannot drift apart.\n *\n * `scopeId` stays out of the key deliberately: it says WHOSE badge, which a navigation declaration\n * cannot name, and a session only ever receives pushes for its own scope ids.\n *\n * Call it ONCE at a host (e.g. the sidebar behavior) and thread `getBadgeState`\n * down, so there is a single subscription + one shared pulse-timer state.\n */\nimport { useCallback, useEffect, useRef, useState } from 'react';\n\nimport {\n NotificationBadgeDefinition,\n NotificationBadgePulse,\n notificationBadgeIdentityKey,\n notificationBadgeKeyFromReference,\n} from '@wildo-ai/saas-models';\nimport { FrontendEvents, type FrontendEventBadgeCountChanged } from '~wildo-frontend-lib/core/events/events.frontend.schemas';\nimport { useEventBus } from '~wildo-frontend-lib/core/events/useEventBus';\n\n/** How long an `ON_INCREASE` badge visibly pulses after a count rise (ms). */\nconst PULSE_WINDOW_MS = 2000;\n\n/** Resolved, render-ready badge state for one definition. */\nexport interface ResolvedBadgeState {\n /** Current count (0 until the first push for this identifier arrives). */\n count: number;\n /** Already-resolved \"pulse now\", per the definition's pulse trigger. */\n pulse: boolean;\n}\n\nexport interface UseNotificationBadgesResult {\n /** Resolve the live count + pulse for a badge definition. */\n getBadgeState: (definition: NotificationBadgeDefinition) => ResolvedBadgeState;\n}\n\nexport const useNotificationBadges = (): UseNotificationBadgesResult => {\n const { on } = useEventBus();\n\n const [countsByBadgeKey, setCountsByBadgeKey] = useState<Record<string, number>>({});\n // Transient `ON_INCREASE` pulse flags, keyed by badge key.\n const [pulsingByBadgeKey, setPulsingByBadgeKey] = useState<Record<string, boolean>>({});\n // Previous counts (ref, not state) so an increase can be detected without\n // re-subscribing on every count change.\n const previousCountsRef = useRef<Record<string, number>>({});\n\n useEffect(() => {\n return on(FrontendEvents.BADGE_COUNT_CHANGED, (payload: FrontendEventBadgeCountChanged) => {\n // A malformed reference, or one naming a scope no badge resource backs, is dropped rather\n // than indexed under a key nothing can resolve.\n const badgeKey = notificationBadgeKeyFromReference(payload.badgeReference);\n if (!badgeKey) {\n return;\n }\n const previous = previousCountsRef.current[badgeKey] ?? 0;\n previousCountsRef.current[badgeKey] = payload.badgeCount;\n\n setCountsByBadgeKey((prev) => ({ ...prev, [badgeKey]: payload.badgeCount }));\n\n if (payload.badgeCount > previous) {\n setPulsingByBadgeKey((prev) => ({ ...prev, [badgeKey]: true }));\n // Clear the transient pulse after the window (fresh render shows a static badge).\n setTimeout(() => {\n setPulsingByBadgeKey((prev) => ({ ...prev, [badgeKey]: false }));\n }, PULSE_WINDOW_MS);\n }\n });\n }, [on]);\n\n const getBadgeState = useCallback(\n (definition: NotificationBadgeDefinition): ResolvedBadgeState => {\n const badgeKey = notificationBadgeIdentityKey(definition);\n const count = countsByBadgeKey[badgeKey] ?? 0;\n\n let pulse = false;\n switch (definition.display.pulse) {\n case NotificationBadgePulse.WHILE_ACTIVE:\n pulse = count > 0;\n break;\n case NotificationBadgePulse.ON_INCREASE:\n pulse = !!pulsingByBadgeKey[badgeKey];\n break;\n case NotificationBadgePulse.NONE:\n default:\n pulse = false;\n }\n\n return { count, pulse };\n },\n [countsByBadgeKey, pulsingByBadgeKey],\n );\n\n return { getBadgeState };\n};\n\nexport default useNotificationBadges;\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"useResourceRoom.d.ts","sourceRoot":"","sources":["../../../../../src/core/requests/websockets/useResourceRoom.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAIH,OAAO,EAEL,yBAAyB,EACzB,yBAAyB,EACzB,yBAAyB,EACzB,6BAA6B,EAE9B,MAAM,uBAAuB,CAAC;AAE/B,MAAM,WAAW,sBAAsB;IACrC,+CAA+C;IAC/C,YAAY,EAAE,MAAM,CAAC;IAErB,uCAAuC;IACvC,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB,wCAAwC;IACxC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB,uDAAuD;IACvD,0BAA0B,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAEnD,yCAAyC;IACzC,aAAa,CAAC,EAAE,OAAO,CAAC;IAExB,gCAAgC;IAChC,SAAS,CAAC,EAAE,CAAC,OAAO,EAAE,yBAAyB,KAAK,IAAI,CAAC;IACzD,SAAS,CAAC,EAAE,CAAC,OAAO,EAAE,yBAAyB,KAAK,IAAI,CAAC;IACzD,cAAc,CAAC,EAAE,CAAC,OAAO,EAAE,yBAAyB,KAAK,IAAI,CAAC;IAC9D,YAAY,CAAC,EAAE,CAAC,OAAO,EAAE,yBAAyB,KAAK,IAAI,CAAC;IAC5D,aAAa,CAAC,EAAE,CAAC,OAAO,EAAE,6BAA6B,KAAK,IAAI,CAAC;CAClE;AAED,MAAM,WAAW,qBAAqB;IACpC,+CAA+C;IAC/C,YAAY,EAAE,OAAO,CAAC;IAEtB,gCAAgC;IAChC,SAAS,EAAE,OAAO,CAAC;IAEnB,uDAAuD;IACvD,YAAY,EAAE,MAAM,EAAE,CAAC;IAEvB,4BAA4B;IAC5B,SAAS,EAAE,MAAM,OAAO,CAAC,OAAO,CAAC,CAAC;IAElC,gCAAgC;IAChC,WAAW,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IAEjC,mCAAmC;IACnC,YAAY,EAAE,MAAM,OAAO,CAAC,OAAO,CAAC,CAAC;IAErC,kCAAkC;IAClC,WAAW,EAAE,MAAM,IAAI,CAAC;IAExB,sCAAsC;IACtC,eAAe,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,OAAO,EAAE,WAAW,CAAC,EAAE,OAAO,KAAK,IAAI,CAAC;CACrF;AAED,eAAO,MAAM,eAAe,GAAI,SAAS,sBAAsB,KAAG,qBAsRjE,CAAC;AAEF,eAAe,eAAe,CAAC"}
1
+ {"version":3,"file":"useResourceRoom.d.ts","sourceRoot":"","sources":["../../../../../../src/core/requests/websockets/useResourceRoom.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAIH,OAAO,EAEL,yBAAyB,EACzB,yBAAyB,EACzB,yBAAyB,EACzB,6BAA6B,EAE9B,MAAM,uBAAuB,CAAC;AAE/B,MAAM,WAAW,sBAAsB;IACrC,+CAA+C;IAC/C,YAAY,EAAE,MAAM,CAAC;IAErB,uCAAuC;IACvC,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB,wCAAwC;IACxC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB,uDAAuD;IACvD,0BAA0B,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAEnD,yCAAyC;IACzC,aAAa,CAAC,EAAE,OAAO,CAAC;IAExB,gCAAgC;IAChC,SAAS,CAAC,EAAE,CAAC,OAAO,EAAE,yBAAyB,KAAK,IAAI,CAAC;IACzD,SAAS,CAAC,EAAE,CAAC,OAAO,EAAE,yBAAyB,KAAK,IAAI,CAAC;IACzD,cAAc,CAAC,EAAE,CAAC,OAAO,EAAE,yBAAyB,KAAK,IAAI,CAAC;IAC9D,YAAY,CAAC,EAAE,CAAC,OAAO,EAAE,yBAAyB,KAAK,IAAI,CAAC;IAC5D,aAAa,CAAC,EAAE,CAAC,OAAO,EAAE,6BAA6B,KAAK,IAAI,CAAC;CAClE;AAED,MAAM,WAAW,qBAAqB;IACpC,+CAA+C;IAC/C,YAAY,EAAE,OAAO,CAAC;IAEtB,gCAAgC;IAChC,SAAS,EAAE,OAAO,CAAC;IAEnB,uDAAuD;IACvD,YAAY,EAAE,MAAM,EAAE,CAAC;IAEvB,4BAA4B;IAC5B,SAAS,EAAE,MAAM,OAAO,CAAC,OAAO,CAAC,CAAC;IAElC,gCAAgC;IAChC,WAAW,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IAEjC,mCAAmC;IACnC,YAAY,EAAE,MAAM,OAAO,CAAC,OAAO,CAAC,CAAC;IAErC,kCAAkC;IAClC,WAAW,EAAE,MAAM,IAAI,CAAC;IAExB,sCAAsC;IACtC,eAAe,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,OAAO,EAAE,WAAW,CAAC,EAAE,OAAO,KAAK,IAAI,CAAC;CACrF;AAED,eAAO,MAAM,eAAe,GAAI,SAAS,sBAAsB,KAAG,qBAsRjE,CAAC;AAEF,eAAe,eAAe,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"useResourceRoom.js","sourceRoot":"","sources":["../../../../../src/core/requests/websockets/useResourceRoom.ts"],"names":[],"mappings":"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","sourcesContent":["/**\n * useResourceRoom Hook\n * \n * React hook for subscribing to resource-centric WebSocket rooms.\n * Handles subscription/unsubscription lifecycle automatically.\n * \n * Features:\n * - Subscribe to a specific resource by type+id (for editing, viewing)\n * - Subscribe to a scope/collection (for list views)\n * - Track editing state of other users\n * - Send custom collaboration events\n */\n\nimport { useEffect, useState, useCallback, useRef } from 'react';\nimport { useWebSocket } from './useWebSocket';\nimport {\n CoreWebSocketEvent,\n WS_ResourceDeletedPayload,\n WS_ResourceUpdatedPayload,\n WS_ResourceEditingPayload,\n WS_ResourceCustomEventPayload,\n WebSocketResourceDeliveryTarget,\n} from '@wildo-ai/saas-models';\n\nexport interface UseResourceRoomOptions {\n /** Resource type (e.g., 'todo', 'document') */\n resourceType: string;\n \n /** For single resource subscription */\n resourceId?: string;\n \n /** For collection/scope subscription */\n scopeKey?: string;\n scopeId?: string;\n \n /** Context identifiers for authorization (required) */\n contextResourceIdentifiers: Record<string, string>;\n \n /** Whether to auto-subscribe on mount */\n autoSubscribe?: boolean;\n \n /** Callbacks for room events */\n onUpdated?: (payload: WS_ResourceUpdatedPayload) => void;\n onDeleted?: (payload: WS_ResourceDeletedPayload) => void;\n onEditingStart?: (payload: WS_ResourceEditingPayload) => void;\n onEditingEnd?: (payload: WS_ResourceEditingPayload) => void;\n onCustomEvent?: (payload: WS_ResourceCustomEventPayload) => void;\n}\n\nexport interface UseResourceRoomResult {\n /** Whether currently subscribed to the room */\n isSubscribed: boolean;\n \n /** Whether currently editing */\n isEditing: boolean;\n \n /** List of user IDs currently editing this resource */\n editingUsers: string[];\n \n /** Subscribe to the room */\n subscribe: () => Promise<boolean>;\n \n /** Unsubscribe from the room */\n unsubscribe: () => Promise<void>;\n \n /** Start editing (acquire lock) */\n startEditing: () => Promise<boolean>;\n \n /** Stop editing (release lock) */\n stopEditing: () => void;\n \n /** Send custom collaboration event */\n sendCustomEvent: (eventName: string, data?: unknown, includeSelf?: boolean) => void;\n}\n\nexport const useResourceRoom = (options: UseResourceRoomOptions): UseResourceRoomResult => {\n const {\n resourceType,\n resourceId,\n scopeKey,\n scopeId,\n contextResourceIdentifiers,\n autoSubscribe = true,\n onUpdated,\n onDeleted,\n onEditingStart,\n onEditingEnd,\n onCustomEvent,\n } = options;\n\n const ws = useWebSocket();\n \n const [isSubscribed, setIsSubscribed] = useState(false);\n const [isEditing, setIsEditing] = useState(false);\n const [editingUsers, setEditingUsers] = useState<string[]>([]);\n \n // Track if we're the one editing\n const isEditingRef = useRef(false);\n const isSubscribedRef = useRef(false);\n const roomOwnerKeyRef = useRef(`useResourceRoom:${Math.random().toString(36).slice(2)}`);\n const unsubscribeRef = useRef<() => Promise<void>>(async () => undefined);\n isSubscribedRef.current = isSubscribed;\n \n // Build room identifier for dependency tracking\n const roomKey = resourceId \n ? `${resourceType}:${resourceId}` \n : `${resourceType}:${scopeKey}:${scopeId}`;\n\n /**\n * Subscribe to the resource room\n * Also initializes the editing users list from server state\n */\n const subscribe = useCallback(async (): Promise<boolean> => {\n if (isSubscribed) return true;\n \n const result = await ws.claimResourceRoom({\n ownerKey: roomOwnerKeyRef.current,\n resourceType,\n resourceId,\n scopeKey,\n scopeId,\n contextResourceIdentifiers,\n });\n \n setIsSubscribed(result.success);\n \n // Initialize editing users from subscription response\n if (result.success && result.editingUsers) {\n setEditingUsers(result.editingUsers);\n }\n \n return result.success;\n }, [ws, resourceType, resourceId, scopeKey, scopeId, contextResourceIdentifiers, isSubscribed]);\n\n /**\n * Unsubscribe from the resource room\n */\n const unsubscribe = useCallback(async (): Promise<void> => {\n if (!isSubscribed) return;\n \n await ws.releaseResourceRoom({\n ownerKey: roomOwnerKeyRef.current,\n resourceType,\n resourceId,\n scopeKey,\n scopeId,\n contextResourceIdentifiers,\n });\n \n setIsSubscribed(false);\n setEditingUsers([]);\n }, [ws, resourceType, resourceId, scopeKey, scopeId, contextResourceIdentifiers, isSubscribed]);\n unsubscribeRef.current = unsubscribe;\n\n /**\n * Start editing\n */\n const startEditing = useCallback(async (): Promise<boolean> => {\n if (!resourceId) {\n console.warn('Cannot start editing without resourceId');\n return false;\n }\n \n const success = await ws.startEditing({\n resourceType,\n resourceId,\n contextResourceIdentifiers,\n });\n \n if (success) {\n setIsEditing(true);\n isEditingRef.current = true;\n }\n \n return success;\n }, [ws, resourceType, resourceId, contextResourceIdentifiers]);\n\n /**\n * Stop editing\n */\n const stopEditing = useCallback((): void => {\n if (!resourceId || !isEditing) return;\n \n ws.stopEditing({\n resourceType,\n resourceId,\n });\n \n setIsEditing(false);\n isEditingRef.current = false;\n }, [ws, resourceType, resourceId, isEditing]);\n\n /**\n * Send custom collaboration event\n */\n const sendCustomEvent = useCallback((\n eventName: string, \n data?: unknown, \n includeSelf?: boolean\n ): void => {\n if (!resourceId) {\n console.warn('Cannot send custom event without resourceId');\n return;\n }\n \n ws.sendCustomEvent({\n resourceType,\n resourceId,\n eventName,\n data,\n contextResourceIdentifiers,\n includeSelf,\n });\n }, [ws, resourceType, resourceId, contextResourceIdentifiers]);\n\n // Setup event listeners\n useEffect(() => {\n if (!ws.isConnected || !isSubscribed) {\n return;\n }\n\n // Listen for resource updates\n const unsubUpdated = ws.on<WS_ResourceUpdatedPayload>(\n CoreWebSocketEvent.RESOURCE_UPDATED,\n (payload) => {\n // Only handle events for our resource/scope\n if (payload.resourceType !== resourceType) return;\n if (resourceId) {\n if (payload.resourceId !== resourceId) return;\n if (\n payload.deliveryTarget !== WebSocketResourceDeliveryTarget.RESOURCE_ROOM_SYNC\n && payload.deliveryTarget !== WebSocketResourceDeliveryTarget.RESOURCE_ROOM_NOTIFICATION\n ) {\n return;\n }\n } else if (payload.deliveryTarget !== WebSocketResourceDeliveryTarget.SCOPE_ROOM_NOTIFICATION) {\n return;\n }\n \n onUpdated?.(payload);\n }\n );\n\n // Listen for resource deletions\n const unsubDeleted = ws.on<WS_ResourceDeletedPayload>(\n CoreWebSocketEvent.RESOURCE_DELETED,\n (payload) => {\n if (payload.resourceType !== resourceType) return;\n if (!resourceId) return;\n if (payload.resourceId !== resourceId) return;\n \n onDeleted?.(payload);\n }\n );\n\n // Listen for editing start\n const unsubEditingStart = ws.on<WS_ResourceEditingPayload>(\n CoreWebSocketEvent.RESOURCE_EDITING_START,\n (payload) => {\n if (payload.resourceType !== resourceType) return;\n if (!resourceId || payload.resourceId !== resourceId) return;\n \n if (payload.initiatorUserId) {\n setEditingUsers(prev => {\n if (prev.includes(payload.initiatorUserId!)) return prev;\n return [...prev, payload.initiatorUserId!];\n });\n }\n \n onEditingStart?.(payload);\n }\n );\n\n // Listen for editing end\n const unsubEditingEnd = ws.on<WS_ResourceEditingPayload>(\n CoreWebSocketEvent.RESOURCE_EDITING_END,\n (payload) => {\n if (payload.resourceType !== resourceType) return;\n if (!resourceId || payload.resourceId !== resourceId) return;\n \n if (payload.initiatorUserId) {\n setEditingUsers(prev => prev.filter(id => id !== payload.initiatorUserId));\n }\n \n onEditingEnd?.(payload);\n }\n );\n\n // Listen for custom events\n const unsubCustom = ws.on<WS_ResourceCustomEventPayload>(\n CoreWebSocketEvent.RESOURCE_CUSTOM,\n (payload) => {\n if (payload.resourceType !== resourceType) return;\n if (!resourceId || payload.resourceId !== resourceId) return;\n \n onCustomEvent?.(payload);\n }\n );\n\n return () => {\n unsubUpdated();\n unsubDeleted();\n unsubEditingStart();\n unsubEditingEnd();\n unsubCustom();\n };\n }, [\n ws, \n isSubscribed, \n resourceType, \n resourceId, \n onUpdated, \n onDeleted, \n onEditingStart, \n onEditingEnd, \n onCustomEvent\n ]);\n\n // Auto-subscribe on mount\n useEffect(() => {\n if (autoSubscribe && ws.isConnected && !isSubscribed) {\n subscribe();\n }\n }, [autoSubscribe, ws.isConnected, isSubscribed, subscribe]);\n\n // Cleanup on unmount\n useEffect(() => {\n return () => {\n if (isEditingRef.current && resourceId) {\n ws.stopEditing({ resourceType, resourceId });\n }\n };\n }, [ws, resourceType, resourceId]);\n\n // Unsubscribe when options change\n useEffect(() => {\n return () => {\n if (isSubscribedRef.current) {\n void unsubscribeRef.current();\n }\n };\n }, [roomKey]); // eslint-disable-line react-hooks/exhaustive-deps\n\n return {\n isSubscribed,\n isEditing,\n editingUsers,\n subscribe,\n unsubscribe,\n startEditing,\n stopEditing,\n sendCustomEvent,\n };\n};\n\nexport default useResourceRoom;\n"]}
1
+ {"version":3,"file":"useResourceRoom.js","sourceRoot":"","sources":["../../../../../../src/core/requests/websockets/useResourceRoom.ts"],"names":[],"mappings":"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","sourcesContent":["/**\n * useResourceRoom Hook\n * \n * React hook for subscribing to resource-centric WebSocket rooms.\n * Handles subscription/unsubscription lifecycle automatically.\n * \n * Features:\n * - Subscribe to a specific resource by type+id (for editing, viewing)\n * - Subscribe to a scope/collection (for list views)\n * - Track editing state of other users\n * - Send custom collaboration events\n */\n\nimport { useEffect, useState, useCallback, useRef } from 'react';\nimport { useWebSocket } from './useWebSocket';\nimport {\n CoreWebSocketEvent,\n WS_ResourceDeletedPayload,\n WS_ResourceUpdatedPayload,\n WS_ResourceEditingPayload,\n WS_ResourceCustomEventPayload,\n WebSocketResourceDeliveryTarget,\n} from '@wildo-ai/saas-models';\n\nexport interface UseResourceRoomOptions {\n /** Resource type (e.g., 'todo', 'document') */\n resourceType: string;\n \n /** For single resource subscription */\n resourceId?: string;\n \n /** For collection/scope subscription */\n scopeKey?: string;\n scopeId?: string;\n \n /** Context identifiers for authorization (required) */\n contextResourceIdentifiers: Record<string, string>;\n \n /** Whether to auto-subscribe on mount */\n autoSubscribe?: boolean;\n \n /** Callbacks for room events */\n onUpdated?: (payload: WS_ResourceUpdatedPayload) => void;\n onDeleted?: (payload: WS_ResourceDeletedPayload) => void;\n onEditingStart?: (payload: WS_ResourceEditingPayload) => void;\n onEditingEnd?: (payload: WS_ResourceEditingPayload) => void;\n onCustomEvent?: (payload: WS_ResourceCustomEventPayload) => void;\n}\n\nexport interface UseResourceRoomResult {\n /** Whether currently subscribed to the room */\n isSubscribed: boolean;\n \n /** Whether currently editing */\n isEditing: boolean;\n \n /** List of user IDs currently editing this resource */\n editingUsers: string[];\n \n /** Subscribe to the room */\n subscribe: () => Promise<boolean>;\n \n /** Unsubscribe from the room */\n unsubscribe: () => Promise<void>;\n \n /** Start editing (acquire lock) */\n startEditing: () => Promise<boolean>;\n \n /** Stop editing (release lock) */\n stopEditing: () => void;\n \n /** Send custom collaboration event */\n sendCustomEvent: (eventName: string, data?: unknown, includeSelf?: boolean) => void;\n}\n\nexport const useResourceRoom = (options: UseResourceRoomOptions): UseResourceRoomResult => {\n const {\n resourceType,\n resourceId,\n scopeKey,\n scopeId,\n contextResourceIdentifiers,\n autoSubscribe = true,\n onUpdated,\n onDeleted,\n onEditingStart,\n onEditingEnd,\n onCustomEvent,\n } = options;\n\n const ws = useWebSocket();\n \n const [isSubscribed, setIsSubscribed] = useState(false);\n const [isEditing, setIsEditing] = useState(false);\n const [editingUsers, setEditingUsers] = useState<string[]>([]);\n \n // Track if we're the one editing\n const isEditingRef = useRef(false);\n const isSubscribedRef = useRef(false);\n const roomOwnerKeyRef = useRef(`useResourceRoom:${Math.random().toString(36).slice(2)}`);\n const unsubscribeRef = useRef<() => Promise<void>>(async () => undefined);\n isSubscribedRef.current = isSubscribed;\n \n // Build room identifier for dependency tracking\n const roomKey = resourceId \n ? `${resourceType}:${resourceId}` \n : `${resourceType}:${scopeKey}:${scopeId}`;\n\n /**\n * Subscribe to the resource room\n * Also initializes the editing users list from server state\n */\n const subscribe = useCallback(async (): Promise<boolean> => {\n if (isSubscribed) return true;\n \n const result = await ws.claimResourceRoom({\n ownerKey: roomOwnerKeyRef.current,\n resourceType,\n resourceId,\n scopeKey,\n scopeId,\n contextResourceIdentifiers,\n });\n \n setIsSubscribed(result.success);\n \n // Initialize editing users from subscription response\n if (result.success && result.editingUsers) {\n setEditingUsers(result.editingUsers);\n }\n \n return result.success;\n }, [ws, resourceType, resourceId, scopeKey, scopeId, contextResourceIdentifiers, isSubscribed]);\n\n /**\n * Unsubscribe from the resource room\n */\n const unsubscribe = useCallback(async (): Promise<void> => {\n if (!isSubscribed) return;\n \n await ws.releaseResourceRoom({\n ownerKey: roomOwnerKeyRef.current,\n resourceType,\n resourceId,\n scopeKey,\n scopeId,\n contextResourceIdentifiers,\n });\n \n setIsSubscribed(false);\n setEditingUsers([]);\n }, [ws, resourceType, resourceId, scopeKey, scopeId, contextResourceIdentifiers, isSubscribed]);\n unsubscribeRef.current = unsubscribe;\n\n /**\n * Start editing\n */\n const startEditing = useCallback(async (): Promise<boolean> => {\n if (!resourceId) {\n console.warn('Cannot start editing without resourceId');\n return false;\n }\n \n const success = await ws.startEditing({\n resourceType,\n resourceId,\n contextResourceIdentifiers,\n });\n \n if (success) {\n setIsEditing(true);\n isEditingRef.current = true;\n }\n \n return success;\n }, [ws, resourceType, resourceId, contextResourceIdentifiers]);\n\n /**\n * Stop editing\n */\n const stopEditing = useCallback((): void => {\n if (!resourceId || !isEditing) return;\n \n ws.stopEditing({\n resourceType,\n resourceId,\n });\n \n setIsEditing(false);\n isEditingRef.current = false;\n }, [ws, resourceType, resourceId, isEditing]);\n\n /**\n * Send custom collaboration event\n */\n const sendCustomEvent = useCallback((\n eventName: string, \n data?: unknown, \n includeSelf?: boolean\n ): void => {\n if (!resourceId) {\n console.warn('Cannot send custom event without resourceId');\n return;\n }\n \n ws.sendCustomEvent({\n resourceType,\n resourceId,\n eventName,\n data,\n contextResourceIdentifiers,\n includeSelf,\n });\n }, [ws, resourceType, resourceId, contextResourceIdentifiers]);\n\n // Setup event listeners\n useEffect(() => {\n if (!ws.isConnected || !isSubscribed) {\n return;\n }\n\n // Listen for resource updates\n const unsubUpdated = ws.on<WS_ResourceUpdatedPayload>(\n CoreWebSocketEvent.RESOURCE_UPDATED,\n (payload) => {\n // Only handle events for our resource/scope\n if (payload.resourceType !== resourceType) return;\n if (resourceId) {\n if (payload.resourceId !== resourceId) return;\n if (\n payload.deliveryTarget !== WebSocketResourceDeliveryTarget.RESOURCE_ROOM_SYNC\n && payload.deliveryTarget !== WebSocketResourceDeliveryTarget.RESOURCE_ROOM_NOTIFICATION\n ) {\n return;\n }\n } else if (payload.deliveryTarget !== WebSocketResourceDeliveryTarget.SCOPE_ROOM_NOTIFICATION) {\n return;\n }\n \n onUpdated?.(payload);\n }\n );\n\n // Listen for resource deletions\n const unsubDeleted = ws.on<WS_ResourceDeletedPayload>(\n CoreWebSocketEvent.RESOURCE_DELETED,\n (payload) => {\n if (payload.resourceType !== resourceType) return;\n if (!resourceId) return;\n if (payload.resourceId !== resourceId) return;\n \n onDeleted?.(payload);\n }\n );\n\n // Listen for editing start\n const unsubEditingStart = ws.on<WS_ResourceEditingPayload>(\n CoreWebSocketEvent.RESOURCE_EDITING_START,\n (payload) => {\n if (payload.resourceType !== resourceType) return;\n if (!resourceId || payload.resourceId !== resourceId) return;\n \n if (payload.initiatorUserId) {\n setEditingUsers(prev => {\n if (prev.includes(payload.initiatorUserId!)) return prev;\n return [...prev, payload.initiatorUserId!];\n });\n }\n \n onEditingStart?.(payload);\n }\n );\n\n // Listen for editing end\n const unsubEditingEnd = ws.on<WS_ResourceEditingPayload>(\n CoreWebSocketEvent.RESOURCE_EDITING_END,\n (payload) => {\n if (payload.resourceType !== resourceType) return;\n if (!resourceId || payload.resourceId !== resourceId) return;\n \n if (payload.initiatorUserId) {\n setEditingUsers(prev => prev.filter(id => id !== payload.initiatorUserId));\n }\n \n onEditingEnd?.(payload);\n }\n );\n\n // Listen for custom events\n const unsubCustom = ws.on<WS_ResourceCustomEventPayload>(\n CoreWebSocketEvent.RESOURCE_CUSTOM,\n (payload) => {\n if (payload.resourceType !== resourceType) return;\n if (!resourceId || payload.resourceId !== resourceId) return;\n \n onCustomEvent?.(payload);\n }\n );\n\n return () => {\n unsubUpdated();\n unsubDeleted();\n unsubEditingStart();\n unsubEditingEnd();\n unsubCustom();\n };\n }, [\n ws, \n isSubscribed, \n resourceType, \n resourceId, \n onUpdated, \n onDeleted, \n onEditingStart, \n onEditingEnd, \n onCustomEvent\n ]);\n\n // Auto-subscribe on mount\n useEffect(() => {\n if (autoSubscribe && ws.isConnected && !isSubscribed) {\n subscribe();\n }\n }, [autoSubscribe, ws.isConnected, isSubscribed, subscribe]);\n\n // Cleanup on unmount\n useEffect(() => {\n return () => {\n if (isEditingRef.current && resourceId) {\n ws.stopEditing({ resourceType, resourceId });\n }\n };\n }, [ws, resourceType, resourceId]);\n\n // Unsubscribe when options change\n useEffect(() => {\n return () => {\n if (isSubscribedRef.current) {\n void unsubscribeRef.current();\n }\n };\n }, [roomKey]); // eslint-disable-line react-hooks/exhaustive-deps\n\n return {\n isSubscribed,\n isEditing,\n editingUsers,\n subscribe,\n unsubscribe,\n startEditing,\n stopEditing,\n sendCustomEvent,\n };\n};\n\nexport default useResourceRoom;\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"useWebSocket.d.ts","sourceRoot":"","sources":["../../../../../src/core/requests/websockets/useWebSocket.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,EAAoB,KAAK,oBAAoB,EAAE,MAAM,oBAAoB,CAAC;AAEjF;;;;GAIG;AACH,eAAO,MAAM,YAAY,QAAO,oBAM/B,CAAC"}
1
+ {"version":3,"file":"useWebSocket.d.ts","sourceRoot":"","sources":["../../../../../../src/core/requests/websockets/useWebSocket.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,EAAoB,KAAK,oBAAoB,EAAE,MAAM,oBAAoB,CAAC;AAEjF;;;;GAIG;AACH,eAAO,MAAM,YAAY,QAAO,oBAM/B,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"useWebSocket.js","sourceRoot":"","sources":["../../../../../src/core/requests/websockets/useWebSocket.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,OAAO,CAAC;AACnC,OAAO,EAAE,gBAAgB,EAA6B,MAAM,oBAAoB,CAAC;AAEjF;;;;GAIG;AACH,MAAM,CAAC,MAAM,YAAY,GAAG,GAAyB,EAAE;IACrD,MAAM,OAAO,GAAG,UAAU,CAAC,gBAAgB,CAAC,CAAC;IAC7C,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,MAAM,IAAI,KAAK,CAAC,sDAAsD,CAAC,CAAC;IAC1E,CAAC;IACD,OAAO,OAAO,CAAC;AACjB,CAAC,CAAC","sourcesContent":["/**\n * useWebSocket Hook\n * \n * Separated from WebSocketContext.tsx for React Fast Refresh compatibility.\n */\n\nimport { useContext } from 'react';\nimport { WebSocketContext, type WebSocketContextType } from './WebSocketContext';\n\n/**\n * Hook to access the WebSocket context\n * @returns WebSocketContextType with WebSocket connection management\n * @throws Error if used outside of WebSocketProvider\n */\nexport const useWebSocket = (): WebSocketContextType => {\n const context = useContext(WebSocketContext);\n if (!context) {\n throw new Error('useWebSocket must be used within a WebSocketProvider');\n }\n return context;\n};\n\n\n\n"]}
1
+ {"version":3,"file":"useWebSocket.js","sourceRoot":"","sources":["../../../../../../src/core/requests/websockets/useWebSocket.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,OAAO,CAAC;AACnC,OAAO,EAAE,gBAAgB,EAA6B,MAAM,oBAAoB,CAAC;AAEjF;;;;GAIG;AACH,MAAM,CAAC,MAAM,YAAY,GAAG,GAAyB,EAAE;IACrD,MAAM,OAAO,GAAG,UAAU,CAAC,gBAAgB,CAAC,CAAC;IAC7C,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,MAAM,IAAI,KAAK,CAAC,sDAAsD,CAAC,CAAC;IAC1E,CAAC;IACD,OAAO,OAAO,CAAC;AACjB,CAAC,CAAC","sourcesContent":["/**\n * useWebSocket Hook\n * \n * Separated from WebSocketContext.tsx for React Fast Refresh compatibility.\n */\n\nimport { useContext } from 'react';\nimport { WebSocketContext, type WebSocketContextType } from './WebSocketContext';\n\n/**\n * Hook to access the WebSocket context\n * @returns WebSocketContextType with WebSocket connection management\n * @throws Error if used outside of WebSocketProvider\n */\nexport const useWebSocket = (): WebSocketContextType => {\n const context = useContext(WebSocketContext);\n if (!context) {\n throw new Error('useWebSocket must be used within a WebSocketProvider');\n }\n return context;\n};\n\n\n\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"websocket-resource-validation.frontend.service.d.ts","sourceRoot":"","sources":["../../../../../src/core/requests/websockets/websocket-resource-validation.frontend.service.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAGH,OAAO,EAEL,QAAQ,EACR,4BAA4B,EAI7B,MAAM,uBAAuB,CAAC;AAC/B,OAAO,KAAK,EAAE,yBAAyB,EAA2C,MAAM,+DAA+D,CAAC;AAIxJ;;GAEG;AACH,MAAM,WAAW,uBAAuB;IACtC,oBAAoB;IACpB,YAAY,EAAE,MAAM,CAAC;IACrB,2BAA2B;IAC3B,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,8EAA8E;IAC9E,WAAW,CAAC,EAAE,4BAA4B,CAAC;IAC3C,qEAAqE;IACrE,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,mEAAmE;IACnE,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B,iEAAiE;IACjE,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,0CAA0C;IAC1C,QAAQ,CAAC,EAAE,QAAQ,CAAC;IACpB,wCAAwC;IACxC,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,kEAAkE;IAClE,gBAAgB,CAAC,EAAE,gBAAgB,GAAG,oBAAoB,CAAC;CAC5D;AAMD;;GAEG;AACH,qBAAa,kCAAkC;IAC7C,OAAO,CAAC,iBAAiB,CAA4B;IACrD,OAAO,CAAC,YAAY,CAAuB;gBAE/B,iBAAiB,EAAE,yBAAyB;IAKxD;;OAEG;IACH,OAAO,CAAC,UAAU;IAuBlB;;OAEG;IACH,OAAO,CAAC,aAAa;IAkCrB,OAAO,CAAC,sBAAsB;IAsB9B,OAAO,CAAC,gBAAgB;IAwBxB;;;;;OAKG;IACH,OAAO,CAAC,iBAAiB;IAOzB;;;;;;;OAOG;IACH,OAAO,CAAC,oBAAoB;IA2B5B;;;;;;;;;;OAUG;IACI,6BAA6B,CAAC,KAAK,GAAG,GAAG,EAC9C,YAAY,EAAE,GAAG,EACjB,OAAO,EAAE,uBAAuB,GAC/B,KAAK;IAoCR;;;;;;;;OAQG;IACI,kCAAkC,CAAC,KAAK,GAAG,GAAG,EACnD,iBAAiB,EAAE,GAAG,EAAE,EACxB,OAAO,EAAE,uBAAuB,GAC/B,KAAK,EAAE;CA0BX"}
1
+ {"version":3,"file":"websocket-resource-validation.frontend.service.d.ts","sourceRoot":"","sources":["../../../../../../src/core/requests/websockets/websocket-resource-validation.frontend.service.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAGH,OAAO,EAEL,QAAQ,EACR,4BAA4B,EAI7B,MAAM,uBAAuB,CAAC;AAC/B,OAAO,KAAK,EAAE,yBAAyB,EAA2C,MAAM,+DAA+D,CAAC;AAIxJ;;GAEG;AACH,MAAM,WAAW,uBAAuB;IACtC,oBAAoB;IACpB,YAAY,EAAE,MAAM,CAAC;IACrB,2BAA2B;IAC3B,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,8EAA8E;IAC9E,WAAW,CAAC,EAAE,4BAA4B,CAAC;IAC3C,qEAAqE;IACrE,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,mEAAmE;IACnE,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B,iEAAiE;IACjE,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,0CAA0C;IAC1C,QAAQ,CAAC,EAAE,QAAQ,CAAC;IACpB,wCAAwC;IACxC,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,kEAAkE;IAClE,gBAAgB,CAAC,EAAE,gBAAgB,GAAG,oBAAoB,CAAC;CAC5D;AAMD;;GAEG;AACH,qBAAa,kCAAkC;IAC7C,OAAO,CAAC,iBAAiB,CAA4B;IACrD,OAAO,CAAC,YAAY,CAAuB;gBAE/B,iBAAiB,EAAE,yBAAyB;IAKxD;;OAEG;IACH,OAAO,CAAC,UAAU;IAuBlB;;OAEG;IACH,OAAO,CAAC,aAAa;IAkCrB,OAAO,CAAC,sBAAsB;IAsB9B,OAAO,CAAC,gBAAgB;IAwBxB;;;;;OAKG;IACH,OAAO,CAAC,iBAAiB;IAOzB;;;;;;;OAOG;IACH,OAAO,CAAC,oBAAoB;IA2B5B;;;;;;;;;;OAUG;IACI,6BAA6B,CAAC,KAAK,GAAG,GAAG,EAC9C,YAAY,EAAE,GAAG,EACjB,OAAO,EAAE,uBAAuB,GAC/B,KAAK;IAoCR;;;;;;;;OAQG;IACI,kCAAkC,CAAC,KAAK,GAAG,GAAG,EACnD,iBAAiB,EAAE,GAAG,EAAE,EACxB,OAAO,EAAE,uBAAuB,GAC/B,KAAK,EAAE;CA0BX"}
@@ -1 +1 @@
1
- {"version":3,"file":"websocket-resource-validation.frontend.service.js","sourceRoot":"","sources":["../../../../../src/core/requests/websockets/websocket-resource-validation.frontend.service.ts"],"names":[],"mappings":"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","sourcesContent":["/**\n * WebSocket Resource Validation Service\n * \n * Provides DTO validation for resource data received via WebSocket messages.\n * Similar to HTTP client validation, but for WebSocket payloads.\n * \n * Note: RMM resource-room sync payloads now do include replay-grade resource\n * data and use this service on a strict canonical-read validation path. Looser\n * websocket consumers such as some custom-event flows may still opt into the\n * older backward-compatible pass-through behavior when they do not request a\n * strict validation target.\n */\n\nimport { z } from 'zod';\nimport {\n CoreResourceOperation,\n DataMode,\n ResourceOperationVariantType,\n ResourceOperationsUtils,\n ResourcesConfigOperationsDtosBuilderUtils,\n ResourcesConfig_OperationPathUtils,\n} from '@wildo-ai/saas-models';\nimport type { FrontendResourcesRegistry, FrontendResourceConfiguration_Operation } from '~wildo-frontend-lib/core/resources/resources.frontend.schemas';\nimport { ErrorBuilderFrontend } from '~wildo-frontend-lib/core/errors/errors-builder.frontend.services';\nimport { ErrorType, ErrorCustomMessageReference } from '@wildo-ai/saas-models';\n\n/**\n * WebSocket message context for validation\n */\nexport interface WebSocketMessageContext {\n /** Resource type */\n resourceType: string;\n /** Operation identifier */\n operationIdentifier?: string;\n /** Concrete operation variant type when no operation path key is available */\n variantType?: ResourceOperationVariantType;\n /** Concrete named variant when no operation path key is available */\n variantKey?: string;\n /** Concrete defaultness when no operation path key is available */\n isOperationDefault?: boolean;\n /** Concrete bulk flag when no operation path key is available */\n isBulkOperation?: boolean;\n /** Data mode (if available in message) */\n dataMode?: DataMode;\n /** Operation path key (if available) */\n operationPathKey?: string;\n /** Which contract should be used to resolve the validation DTO */\n validationTarget?: 'canonical-read' | 'operation-response';\n}\n\nfunction optionalValue<T>(value: T | null | undefined): T | undefined {\n return value == null ? undefined : value;\n}\n\n/**\n * Service for validating resource data in WebSocket messages\n */\nexport class WebSocketResourceValidationService {\n private resourcesRegistry: FrontendResourcesRegistry;\n private errorBuilder: ErrorBuilderFrontend;\n\n constructor(resourcesRegistry: FrontendResourcesRegistry) {\n this.resourcesRegistry = resourcesRegistry;\n this.errorBuilder = new ErrorBuilderFrontend();\n }\n\n /**\n * Build a WildoError for WebSocket validation failures\n */\n private buildError(\n customMessageReference: ErrorCustomMessageReference,\n context?: WebSocketMessageContext,\n additionalContext?: Record<string, any>\n ): Error {\n const wildoError = this.errorBuilder.buildWildoError_Frontend(\n ErrorType.INTERNAL,\n { \n customMessageReference, \n operationPathKey: context?.operationPathKey,\n context: {\n ...additionalContext,\n resourceType: context?.resourceType,\n operationIdentifier: context?.operationIdentifier,\n }\n }\n );\n // Attach the WildoError to the Error for downstream handling\n const error = new Error(customMessageReference);\n (error as any).wildoError = wildoError;\n return error;\n }\n\n /**\n * Find an operation in the registry based on context\n */\n private findOperation(\n context: WebSocketMessageContext,\n ): FrontendResourceConfiguration_Operation | null {\n const resourceConfig = this.resourcesRegistry.resourceConfigurations[context.resourceType];\n if (!resourceConfig) {\n return null;\n }\n\n if (!context.operationIdentifier) {\n // If no operation identifier, return null (can't determine operation)\n return null;\n }\n\n const matchingOperations = resourceConfig.operations.filter((op) => (\n String(op.operationIdentifier) === context.operationIdentifier\n && (optionalValue(context.variantType) === undefined || op.variantType === context.variantType)\n && (optionalValue(context.variantKey) === undefined || op.variantKey === context.variantKey)\n && (optionalValue(context.isOperationDefault) === undefined || Boolean(op.isOperationDefault) === context.isOperationDefault)\n && (optionalValue(context.isBulkOperation) === undefined || (op.isBulkOperation === true) === context.isBulkOperation)\n ));\n if (matchingOperations.length === 1) {\n return matchingOperations[0]!;\n }\n\n const defaultNonBulkOperations = matchingOperations.filter((op) => (\n op.isOperationDefault === true && op.isBulkOperation !== true\n ));\n if (defaultNonBulkOperations.length === 1) {\n return defaultNonBulkOperations[0]!;\n }\n\n return null;\n }\n\n private findOperationByPathKey(\n resourceType: string,\n operationPathKey?: string,\n ): FrontendResourceConfiguration_Operation | null {\n if (!operationPathKey) {\n return null;\n }\n\n const resourceConfig = this.resourcesRegistry.resourceConfigurations[resourceType];\n if (!resourceConfig) {\n return null;\n }\n\n try {\n return resourceConfig.operations.find((operation) => (\n ResourcesConfig_OperationPathUtils.createOperationPathKeyFromOperation(operation) === operationPathKey\n )) ?? null;\n } catch {\n return null;\n }\n }\n\n private resolveOperation(context: WebSocketMessageContext): FrontendResourceConfiguration_Operation | null {\n const resourceConfig = this.resourcesRegistry.resourceConfigurations[context.resourceType];\n if (!resourceConfig) {\n return null;\n }\n\n const operationFromPath = this.findOperationByPathKey(context.resourceType, context.operationPathKey);\n if (operationFromPath) {\n if (\n context.validationTarget === 'canonical-read'\n && ResourceOperationsUtils.getCoreResourceOperationFromOperation(operationFromPath) !== CoreResourceOperation.READ\n ) {\n return null;\n }\n return operationFromPath;\n }\n\n if (context.validationTarget === 'canonical-read') {\n return null;\n }\n\n return this.findOperation(context);\n }\n\n /**\n * Select the appropriate response DTO based on dataMode\n * @param operation - The operation configuration\n * @param dataMode - The data mode (RAW, SUMMARY, CONTEXT)\n * @returns The selected Zod schema for validation, or null if no DTO is available\n */\n private selectResponseDto(\n operation: FrontendResourceConfiguration_Operation,\n dataMode?: DataMode\n ): z.ZodSchema<any> | null {\n return ResourcesConfigOperationsDtosBuilderUtils.selectResponseDto(operation, dataMode);\n }\n\n /**\n * Validate resource data against the selected DTO\n * @param resourceData - The resource data to validate\n * @param schema - The Zod schema to validate against\n * @param context - WebSocket message context for error reporting\n * @returns Validated resource data\n * @throws Error if validation fails\n */\n private validateResourceData<TData>(\n resourceData: any,\n schema: z.ZodSchema<any> | null,\n context?: WebSocketMessageContext\n ): TData {\n // If no schema is available, return data as-is (backward compatibility)\n if (!schema) {\n return resourceData as TData;\n }\n\n try {\n return schema.parse(resourceData) as TData;\n } catch (error) {\n if (error instanceof z.ZodError) {\n throw this.buildError(\n ErrorCustomMessageReference.FRONTEND_RESOURCE_RESPONSE_VALIDATION_FAILED,\n context,\n {\n validationErrors: error.issues,\n resourceData: resourceData\n }\n );\n }\n throw error;\n }\n }\n\n /**\n * Validate resource data from a WebSocket message\n * \n * This method should be called when resource data is included in WebSocket payloads\n * (e.g., in custom events or when Phase 7.1 is implemented).\n * \n * @param resourceData - The resource data to validate\n * @param context - WebSocket message context\n * @returns Validated resource data\n * @throws Error if validation fails\n */\n public validateWebSocketResourceData<TData = any>(\n resourceData: any,\n context: WebSocketMessageContext\n ): TData {\n const operation = this.resolveOperation(context);\n const requiresStrictValidation = context.validationTarget != null;\n\n if (!operation) {\n if (requiresStrictValidation) {\n throw this.buildError(\n ErrorCustomMessageReference.FRONTEND_RESOURCE_RESPONSE_VALIDATION_FAILED,\n context,\n {\n message: 'Unable to resolve websocket validation operation',\n resourceData,\n },\n );\n }\n return resourceData as TData;\n }\n\n // Select appropriate DTO based on dataMode\n const responseDto = this.selectResponseDto(operation, context.dataMode);\n if (!responseDto && requiresStrictValidation) {\n throw this.buildError(\n ErrorCustomMessageReference.FRONTEND_RESOURCE_RESPONSE_VALIDATION_FAILED,\n context,\n {\n message: 'Unable to resolve websocket validation DTO',\n resourceData,\n operationIdentifier: operation.operationIdentifier,\n },\n );\n }\n\n // Validate and return\n return this.validateResourceData<TData>(resourceData, responseDto, context);\n }\n\n /**\n * Validate resource data array from a WebSocket message\n * Useful for bulk operations or list updates\n * \n * @param resourceDataArray - Array of resource data to validate\n * @param context - WebSocket message context\n * @returns Validated array of resource data\n * @throws Error if validation fails\n */\n public validateWebSocketResourceDataArray<TData = any>(\n resourceDataArray: any[],\n context: WebSocketMessageContext\n ): TData[] {\n return resourceDataArray.map((item, index) => {\n try {\n return this.validateWebSocketResourceData<TData>(item, context);\n } catch (error) {\n // Enhance error with array index context\n if (error instanceof Error && (error as any).wildoError) {\n const enhancedContext: WebSocketMessageContext = {\n ...context,\n operationPathKey: context.operationPathKey \n ? `${context.operationPathKey}[${index}]`\n : `[${index}]`\n };\n throw this.buildError(\n ErrorCustomMessageReference.FRONTEND_RESOURCE_RESPONSE_VALIDATION_FAILED,\n enhancedContext,\n {\n arrayIndex: index,\n originalError: error\n }\n );\n }\n throw error;\n }\n });\n }\n}\n"]}
1
+ {"version":3,"file":"websocket-resource-validation.frontend.service.js","sourceRoot":"","sources":["../../../../../../src/core/requests/websockets/websocket-resource-validation.frontend.service.ts"],"names":[],"mappings":"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","sourcesContent":["/**\n * WebSocket Resource Validation Service\n * \n * Provides DTO validation for resource data received via WebSocket messages.\n * Similar to HTTP client validation, but for WebSocket payloads.\n * \n * Note: RMM resource-room sync payloads now do include replay-grade resource\n * data and use this service on a strict canonical-read validation path. Looser\n * websocket consumers such as some custom-event flows may still opt into the\n * older backward-compatible pass-through behavior when they do not request a\n * strict validation target.\n */\n\nimport { z } from 'zod';\nimport {\n CoreResourceOperation,\n DataMode,\n ResourceOperationVariantType,\n ResourceOperationsUtils,\n ResourcesConfigOperationsDtosBuilderUtils,\n ResourcesConfig_OperationPathUtils,\n} from '@wildo-ai/saas-models';\nimport type { FrontendResourcesRegistry, FrontendResourceConfiguration_Operation } from '~wildo-frontend-lib/core/resources/resources.frontend.schemas';\nimport { ErrorBuilderFrontend } from '~wildo-frontend-lib/core/errors/errors-builder.frontend.services';\nimport { ErrorType, ErrorCustomMessageReference } from '@wildo-ai/saas-models';\n\n/**\n * WebSocket message context for validation\n */\nexport interface WebSocketMessageContext {\n /** Resource type */\n resourceType: string;\n /** Operation identifier */\n operationIdentifier?: string;\n /** Concrete operation variant type when no operation path key is available */\n variantType?: ResourceOperationVariantType;\n /** Concrete named variant when no operation path key is available */\n variantKey?: string;\n /** Concrete defaultness when no operation path key is available */\n isOperationDefault?: boolean;\n /** Concrete bulk flag when no operation path key is available */\n isBulkOperation?: boolean;\n /** Data mode (if available in message) */\n dataMode?: DataMode;\n /** Operation path key (if available) */\n operationPathKey?: string;\n /** Which contract should be used to resolve the validation DTO */\n validationTarget?: 'canonical-read' | 'operation-response';\n}\n\nfunction optionalValue<T>(value: T | null | undefined): T | undefined {\n return value == null ? undefined : value;\n}\n\n/**\n * Service for validating resource data in WebSocket messages\n */\nexport class WebSocketResourceValidationService {\n private resourcesRegistry: FrontendResourcesRegistry;\n private errorBuilder: ErrorBuilderFrontend;\n\n constructor(resourcesRegistry: FrontendResourcesRegistry) {\n this.resourcesRegistry = resourcesRegistry;\n this.errorBuilder = new ErrorBuilderFrontend();\n }\n\n /**\n * Build a WildoError for WebSocket validation failures\n */\n private buildError(\n customMessageReference: ErrorCustomMessageReference,\n context?: WebSocketMessageContext,\n additionalContext?: Record<string, any>\n ): Error {\n const wildoError = this.errorBuilder.buildWildoError_Frontend(\n ErrorType.INTERNAL,\n { \n customMessageReference, \n operationPathKey: context?.operationPathKey,\n context: {\n ...additionalContext,\n resourceType: context?.resourceType,\n operationIdentifier: context?.operationIdentifier,\n }\n }\n );\n // Attach the WildoError to the Error for downstream handling\n const error = new Error(customMessageReference);\n (error as any).wildoError = wildoError;\n return error;\n }\n\n /**\n * Find an operation in the registry based on context\n */\n private findOperation(\n context: WebSocketMessageContext,\n ): FrontendResourceConfiguration_Operation | null {\n const resourceConfig = this.resourcesRegistry.resourceConfigurations[context.resourceType];\n if (!resourceConfig) {\n return null;\n }\n\n if (!context.operationIdentifier) {\n // If no operation identifier, return null (can't determine operation)\n return null;\n }\n\n const matchingOperations = resourceConfig.operations.filter((op) => (\n String(op.operationIdentifier) === context.operationIdentifier\n && (optionalValue(context.variantType) === undefined || op.variantType === context.variantType)\n && (optionalValue(context.variantKey) === undefined || op.variantKey === context.variantKey)\n && (optionalValue(context.isOperationDefault) === undefined || Boolean(op.isOperationDefault) === context.isOperationDefault)\n && (optionalValue(context.isBulkOperation) === undefined || (op.isBulkOperation === true) === context.isBulkOperation)\n ));\n if (matchingOperations.length === 1) {\n return matchingOperations[0]!;\n }\n\n const defaultNonBulkOperations = matchingOperations.filter((op) => (\n op.isOperationDefault === true && op.isBulkOperation !== true\n ));\n if (defaultNonBulkOperations.length === 1) {\n return defaultNonBulkOperations[0]!;\n }\n\n return null;\n }\n\n private findOperationByPathKey(\n resourceType: string,\n operationPathKey?: string,\n ): FrontendResourceConfiguration_Operation | null {\n if (!operationPathKey) {\n return null;\n }\n\n const resourceConfig = this.resourcesRegistry.resourceConfigurations[resourceType];\n if (!resourceConfig) {\n return null;\n }\n\n try {\n return resourceConfig.operations.find((operation) => (\n ResourcesConfig_OperationPathUtils.createOperationPathKeyFromOperation(operation) === operationPathKey\n )) ?? null;\n } catch {\n return null;\n }\n }\n\n private resolveOperation(context: WebSocketMessageContext): FrontendResourceConfiguration_Operation | null {\n const resourceConfig = this.resourcesRegistry.resourceConfigurations[context.resourceType];\n if (!resourceConfig) {\n return null;\n }\n\n const operationFromPath = this.findOperationByPathKey(context.resourceType, context.operationPathKey);\n if (operationFromPath) {\n if (\n context.validationTarget === 'canonical-read'\n && ResourceOperationsUtils.getCoreResourceOperationFromOperation(operationFromPath) !== CoreResourceOperation.READ\n ) {\n return null;\n }\n return operationFromPath;\n }\n\n if (context.validationTarget === 'canonical-read') {\n return null;\n }\n\n return this.findOperation(context);\n }\n\n /**\n * Select the appropriate response DTO based on dataMode\n * @param operation - The operation configuration\n * @param dataMode - The data mode (RAW, SUMMARY, CONTEXT)\n * @returns The selected Zod schema for validation, or null if no DTO is available\n */\n private selectResponseDto(\n operation: FrontendResourceConfiguration_Operation,\n dataMode?: DataMode\n ): z.ZodSchema<any> | null {\n return ResourcesConfigOperationsDtosBuilderUtils.selectResponseDto(operation, dataMode);\n }\n\n /**\n * Validate resource data against the selected DTO\n * @param resourceData - The resource data to validate\n * @param schema - The Zod schema to validate against\n * @param context - WebSocket message context for error reporting\n * @returns Validated resource data\n * @throws Error if validation fails\n */\n private validateResourceData<TData>(\n resourceData: any,\n schema: z.ZodSchema<any> | null,\n context?: WebSocketMessageContext\n ): TData {\n // If no schema is available, return data as-is (backward compatibility)\n if (!schema) {\n return resourceData as TData;\n }\n\n try {\n return schema.parse(resourceData) as TData;\n } catch (error) {\n if (error instanceof z.ZodError) {\n throw this.buildError(\n ErrorCustomMessageReference.FRONTEND_RESOURCE_RESPONSE_VALIDATION_FAILED,\n context,\n {\n validationErrors: error.issues,\n resourceData: resourceData\n }\n );\n }\n throw error;\n }\n }\n\n /**\n * Validate resource data from a WebSocket message\n * \n * This method should be called when resource data is included in WebSocket payloads\n * (e.g., in custom events or when Phase 7.1 is implemented).\n * \n * @param resourceData - The resource data to validate\n * @param context - WebSocket message context\n * @returns Validated resource data\n * @throws Error if validation fails\n */\n public validateWebSocketResourceData<TData = any>(\n resourceData: any,\n context: WebSocketMessageContext\n ): TData {\n const operation = this.resolveOperation(context);\n const requiresStrictValidation = context.validationTarget != null;\n\n if (!operation) {\n if (requiresStrictValidation) {\n throw this.buildError(\n ErrorCustomMessageReference.FRONTEND_RESOURCE_RESPONSE_VALIDATION_FAILED,\n context,\n {\n message: 'Unable to resolve websocket validation operation',\n resourceData,\n },\n );\n }\n return resourceData as TData;\n }\n\n // Select appropriate DTO based on dataMode\n const responseDto = this.selectResponseDto(operation, context.dataMode);\n if (!responseDto && requiresStrictValidation) {\n throw this.buildError(\n ErrorCustomMessageReference.FRONTEND_RESOURCE_RESPONSE_VALIDATION_FAILED,\n context,\n {\n message: 'Unable to resolve websocket validation DTO',\n resourceData,\n operationIdentifier: operation.operationIdentifier,\n },\n );\n }\n\n // Validate and return\n return this.validateResourceData<TData>(resourceData, responseDto, context);\n }\n\n /**\n * Validate resource data array from a WebSocket message\n * Useful for bulk operations or list updates\n * \n * @param resourceDataArray - Array of resource data to validate\n * @param context - WebSocket message context\n * @returns Validated array of resource data\n * @throws Error if validation fails\n */\n public validateWebSocketResourceDataArray<TData = any>(\n resourceDataArray: any[],\n context: WebSocketMessageContext\n ): TData[] {\n return resourceDataArray.map((item, index) => {\n try {\n return this.validateWebSocketResourceData<TData>(item, context);\n } catch (error) {\n // Enhance error with array index context\n if (error instanceof Error && (error as any).wildoError) {\n const enhancedContext: WebSocketMessageContext = {\n ...context,\n operationPathKey: context.operationPathKey \n ? `${context.operationPathKey}[${index}]`\n : `[${index}]`\n };\n throw this.buildError(\n ErrorCustomMessageReference.FRONTEND_RESOURCE_RESPONSE_VALIDATION_FAILED,\n enhancedContext,\n {\n arrayIndex: index,\n originalError: error\n }\n );\n }\n throw error;\n }\n });\n }\n}\n"]}