@wildo-ai/saas-frontend-lib 1.1.9 → 1.1.11

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 (1566) hide show
  1. package/dist/esm/companion-exports.d.ts +2 -1
  2. package/dist/esm/companion-exports.d.ts.map +1 -1
  3. package/dist/esm/companion-exports.js +2 -1
  4. package/dist/esm/companion-exports.js.map +1 -1
  5. package/dist/esm/components/actions/action-bar.d.ts +45 -1
  6. package/dist/esm/components/actions/action-bar.d.ts.map +1 -1
  7. package/dist/esm/components/actions/action-bar.js +84 -0
  8. package/dist/esm/components/actions/action-bar.js.map +1 -1
  9. package/dist/esm/components/actions/button.d.ts +22 -0
  10. package/dist/esm/components/actions/button.d.ts.map +1 -1
  11. package/dist/esm/components/actions/button.js +45 -0
  12. package/dist/esm/components/actions/button.js.map +1 -1
  13. package/dist/esm/components/ai-elements/chat/conversation-thread.d.ts +109 -0
  14. package/dist/esm/components/ai-elements/chat/conversation-thread.d.ts.map +1 -0
  15. package/dist/esm/components/ai-elements/chat/conversation-thread.js +22 -0
  16. package/dist/esm/components/ai-elements/chat/conversation-thread.js.map +1 -0
  17. package/dist/esm/components/ai-elements/decision/approval.d.ts +103 -7
  18. package/dist/esm/components/ai-elements/decision/approval.d.ts.map +1 -1
  19. package/dist/esm/components/ai-elements/decision/approval.js.map +1 -1
  20. package/dist/esm/components/ai-elements/execution/tool.d.ts +6 -0
  21. package/dist/esm/components/ai-elements/execution/tool.d.ts.map +1 -1
  22. package/dist/esm/components/ai-elements/execution/tool.js.map +1 -1
  23. package/dist/esm/components/ai-elements/graph/canvas.d.ts +60 -1
  24. package/dist/esm/components/ai-elements/graph/canvas.d.ts.map +1 -1
  25. package/dist/esm/components/ai-elements/graph/canvas.js +26 -0
  26. package/dist/esm/components/ai-elements/graph/canvas.js.map +1 -1
  27. package/dist/esm/components/ai-elements/graph/node.d.ts +39 -4
  28. package/dist/esm/components/ai-elements/graph/node.d.ts.map +1 -1
  29. package/dist/esm/components/ai-elements/graph/node.js +18 -0
  30. package/dist/esm/components/ai-elements/graph/node.js.map +1 -1
  31. package/dist/esm/components/app/AppLayout_AuthenticatedRoute.d.ts +6 -0
  32. package/dist/esm/components/app/AppLayout_AuthenticatedRoute.d.ts.map +1 -1
  33. package/dist/esm/components/app/AppLayout_AuthenticatedRoute.js +29 -8
  34. package/dist/esm/components/app/AppLayout_AuthenticatedRoute.js.map +1 -1
  35. package/dist/esm/components/app/AppLayout_DecisionInbox.d.ts +17 -0
  36. package/dist/esm/components/app/AppLayout_DecisionInbox.d.ts.map +1 -0
  37. package/dist/esm/components/app/AppLayout_DecisionInbox.js +24 -0
  38. package/dist/esm/components/app/AppLayout_DecisionInbox.js.map +1 -0
  39. package/dist/esm/components/app/AppLayout_MainContainer.d.ts.map +1 -1
  40. package/dist/esm/components/app/AppLayout_MainContainer.js +3 -0
  41. package/dist/esm/components/app/AppLayout_MainContainer.js.map +1 -1
  42. package/dist/esm/components/app/PublicLayout_LegalNotice.d.ts +18 -0
  43. package/dist/esm/components/app/PublicLayout_LegalNotice.d.ts.map +1 -0
  44. package/dist/esm/components/app/PublicLayout_LegalNotice.js +8 -0
  45. package/dist/esm/components/app/PublicLayout_LegalNotice.js.map +1 -0
  46. package/dist/esm/components/app/PublicLayout_LegalNotice.labels.d.ts +3 -0
  47. package/dist/esm/components/app/PublicLayout_LegalNotice.labels.d.ts.map +1 -0
  48. package/dist/esm/components/app/PublicLayout_LegalNotice.labels.js +38 -0
  49. package/dist/esm/components/app/PublicLayout_LegalNotice.labels.js.map +1 -0
  50. package/dist/esm/components/auth/Auth_ChatIdentityLink.d.ts +15 -0
  51. package/dist/esm/components/auth/Auth_ChatIdentityLink.d.ts.map +1 -0
  52. package/dist/esm/components/auth/Auth_ChatIdentityLink.js +219 -0
  53. package/dist/esm/components/auth/Auth_ChatIdentityLink.js.map +1 -0
  54. package/dist/esm/components/auth/Auth_ChatIdentityLink.labels.d.ts +3 -0
  55. package/dist/esm/components/auth/Auth_ChatIdentityLink.labels.d.ts.map +1 -0
  56. package/dist/esm/components/auth/Auth_ChatIdentityLink.labels.js +49 -0
  57. package/dist/esm/components/auth/Auth_ChatIdentityLink.labels.js.map +1 -0
  58. package/dist/esm/components/auth/Auth_Invitation.d.ts.map +1 -1
  59. package/dist/esm/components/auth/Auth_Invitation.js +3 -2
  60. package/dist/esm/components/auth/Auth_Invitation.js.map +1 -1
  61. package/dist/esm/components/auth/Auth_Invitation.labels.js +2 -2
  62. package/dist/esm/components/auth/Auth_Invitation.labels.js.map +1 -1
  63. package/dist/esm/components/auth/Auth_Main.d.ts.map +1 -1
  64. package/dist/esm/components/auth/Auth_Main.js +40 -7
  65. package/dist/esm/components/auth/Auth_Main.js.map +1 -1
  66. package/dist/esm/components/auth/Auth_Main.labels.d.ts.map +1 -1
  67. package/dist/esm/components/auth/Auth_Main.labels.js +9 -0
  68. package/dist/esm/components/auth/Auth_Main.labels.js.map +1 -1
  69. package/dist/esm/components/auth/Auth_OAuthConsent.d.ts.map +1 -1
  70. package/dist/esm/components/auth/Auth_OAuthConsent.js +3 -2
  71. package/dist/esm/components/auth/Auth_OAuthConsent.js.map +1 -1
  72. package/dist/esm/components/auth/Auth_PasswordLost.labels.js +2 -2
  73. package/dist/esm/components/auth/Auth_PasswordLost.labels.js.map +1 -1
  74. package/dist/esm/components/auth/Auth_Register.d.ts.map +1 -1
  75. package/dist/esm/components/auth/Auth_Register.js +8 -1
  76. package/dist/esm/components/auth/Auth_Register.js.map +1 -1
  77. package/dist/esm/components/auth/Auth_Register.labels.js +2 -2
  78. package/dist/esm/components/auth/Auth_Register.labels.js.map +1 -1
  79. package/dist/esm/components/auth/StepUpAuthDialog.d.ts +1 -1
  80. package/dist/esm/components/auth/StepUpAuthDialog.js +3 -3
  81. package/dist/esm/components/auth/StepUpAuthDialog.js.map +1 -1
  82. package/dist/esm/components/auth/admin-config/AppPage_SecuritySettings.d.ts.map +1 -1
  83. package/dist/esm/components/auth/admin-config/AppPage_SecuritySettings.js +94 -6
  84. package/dist/esm/components/auth/admin-config/AppPage_SecuritySettings.js.map +1 -1
  85. package/dist/esm/components/auth/admin-config/AppPage_SecuritySettings.labels.d.ts.map +1 -1
  86. package/dist/esm/components/auth/admin-config/AppPage_SecuritySettings.labels.js +21 -1
  87. package/dist/esm/components/auth/admin-config/AppPage_SecuritySettings.labels.js.map +1 -1
  88. package/dist/esm/components/auth/admin-config/ResourceLayoutPreset_Create_SamlWizard.d.ts.map +1 -1
  89. package/dist/esm/components/auth/admin-config/ResourceLayoutPreset_Create_SamlWizard.js +16 -13
  90. package/dist/esm/components/auth/admin-config/ResourceLayoutPreset_Create_SamlWizard.js.map +1 -1
  91. package/dist/esm/components/auth/admin-config/SsoConnectionSamlReadSection.js +3 -3
  92. package/dist/esm/components/auth/admin-config/SsoConnectionSamlReadSection.js.map +1 -1
  93. package/dist/esm/components/auth/enrollment/PasskeyEnrollmentMethod.d.ts.map +1 -1
  94. package/dist/esm/components/auth/enrollment/PasskeyEnrollmentMethod.js +1 -1
  95. package/dist/esm/components/auth/enrollment/PasskeyEnrollmentMethod.js.map +1 -1
  96. package/dist/esm/components/auth/methods/OrgSamlAuthMethod.d.ts +1 -1
  97. package/dist/esm/components/auth/methods/OrgSamlAuthMethod.d.ts.map +1 -1
  98. package/dist/esm/components/auth/methods/OrgSamlAuthMethod.js +3 -4
  99. package/dist/esm/components/auth/methods/OrgSamlAuthMethod.js.map +1 -1
  100. package/dist/esm/components/auth/pages/AuthPage_ChatIdentityLink.d.ts +11 -0
  101. package/dist/esm/components/auth/pages/AuthPage_ChatIdentityLink.d.ts.map +1 -0
  102. package/dist/esm/components/auth/pages/AuthPage_ChatIdentityLink.js +25 -0
  103. package/dist/esm/components/auth/pages/AuthPage_ChatIdentityLink.js.map +1 -0
  104. package/dist/esm/components/auth/utils/AuthPrivacyNoticeLink.d.ts +39 -0
  105. package/dist/esm/components/auth/utils/AuthPrivacyNoticeLink.d.ts.map +1 -0
  106. package/dist/esm/components/auth/utils/AuthPrivacyNoticeLink.js +45 -0
  107. package/dist/esm/components/auth/utils/AuthPrivacyNoticeLink.js.map +1 -0
  108. package/dist/esm/components/auth/utils/PasswordStrengthIndicator.js +1 -1
  109. package/dist/esm/components/auth/utils/PasswordStrengthIndicator.js.map +1 -1
  110. package/dist/esm/components/compliance/GovernedDocumentAcceptanceControl.d.ts.map +1 -1
  111. package/dist/esm/components/compliance/GovernedDocumentAcceptanceControl.js +2 -1
  112. package/dist/esm/components/compliance/GovernedDocumentAcceptanceControl.js.map +1 -1
  113. package/dist/esm/components/data-display/AutomaticDisplayer.d.ts.map +1 -1
  114. package/dist/esm/components/data-display/AutomaticDisplayer.js +21 -35
  115. package/dist/esm/components/data-display/AutomaticDisplayer.js.map +1 -1
  116. package/dist/esm/components/data-display/DisplayField.d.ts.map +1 -1
  117. package/dist/esm/components/data-display/DisplayField.js +98 -70
  118. package/dist/esm/components/data-display/DisplayField.js.map +1 -1
  119. package/dist/esm/components/data-display/DisplayFieldEditable.d.ts.map +1 -1
  120. package/dist/esm/components/data-display/DisplayFieldEditable.js +48 -8
  121. package/dist/esm/components/data-display/DisplayFieldEditable.js.map +1 -1
  122. package/dist/esm/components/data-display/DisplayFieldEditableArray.d.ts +3 -1
  123. package/dist/esm/components/data-display/DisplayFieldEditableArray.d.ts.map +1 -1
  124. package/dist/esm/components/data-display/DisplayFieldEditableArray.js +30 -4
  125. package/dist/esm/components/data-display/DisplayFieldEditableArray.js.map +1 -1
  126. package/dist/esm/components/data-display/DisplayFieldReadOnly.d.ts.map +1 -1
  127. package/dist/esm/components/data-display/DisplayFieldReadOnly.js +2 -2
  128. package/dist/esm/components/data-display/DisplayFieldReadOnly.js.map +1 -1
  129. package/dist/esm/components/data-display/DisplayValueDispatcher.d.ts +1 -1
  130. package/dist/esm/components/data-display/DisplayValueDispatcher.d.ts.map +1 -1
  131. package/dist/esm/components/data-display/DisplayValueDispatcher.js +45 -94
  132. package/dist/esm/components/data-display/DisplayValueDispatcher.js.map +1 -1
  133. package/dist/esm/components/data-display/ResourceAutomaticDisplayer.d.ts.map +1 -1
  134. package/dist/esm/components/data-display/ResourceAutomaticDisplayer.js +14 -8
  135. package/dist/esm/components/data-display/ResourceAutomaticDisplayer.js.map +1 -1
  136. package/dist/esm/components/data-display/ResourceSummaryDisplayer.d.ts +41 -3
  137. package/dist/esm/components/data-display/ResourceSummaryDisplayer.d.ts.map +1 -1
  138. package/dist/esm/components/data-display/ResourceSummaryDisplayer.js +49 -5
  139. package/dist/esm/components/data-display/ResourceSummaryDisplayer.js.map +1 -1
  140. package/dist/esm/components/data-display/SummaryContext.d.ts +2 -2
  141. package/dist/esm/components/data-display/SummaryContext.js.map +1 -1
  142. package/dist/esm/components/data-display/automatic-displayer.utils.d.ts +22 -1
  143. package/dist/esm/components/data-display/automatic-displayer.utils.d.ts.map +1 -1
  144. package/dist/esm/components/data-display/automatic-displayer.utils.js +29 -0
  145. package/dist/esm/components/data-display/automatic-displayer.utils.js.map +1 -1
  146. package/dist/esm/components/data-display/badge.d.ts +9 -0
  147. package/dist/esm/components/data-display/badge.d.ts.map +1 -1
  148. package/dist/esm/components/data-display/badge.js.map +1 -1
  149. package/dist/esm/components/data-display/chromes/DisplayFieldChrome.d.ts +14 -2
  150. package/dist/esm/components/data-display/chromes/DisplayFieldChrome.d.ts.map +1 -1
  151. package/dist/esm/components/data-display/chromes/DisplayFieldChrome.js +42 -12
  152. package/dist/esm/components/data-display/chromes/DisplayFieldChrome.js.map +1 -1
  153. package/dist/esm/components/data-display/chromes/display-chrome-mode-resolution.d.ts +10 -0
  154. package/dist/esm/components/data-display/chromes/display-chrome-mode-resolution.d.ts.map +1 -0
  155. package/dist/esm/components/data-display/chromes/display-chrome-mode-resolution.js +18 -0
  156. package/dist/esm/components/data-display/chromes/display-chrome-mode-resolution.js.map +1 -0
  157. package/dist/esm/components/data-display/chromes/field-tile-boundaries.d.ts +38 -0
  158. package/dist/esm/components/data-display/chromes/field-tile-boundaries.d.ts.map +1 -0
  159. package/dist/esm/components/data-display/chromes/field-tile-boundaries.js +30 -0
  160. package/dist/esm/components/data-display/chromes/field-tile-boundaries.js.map +1 -0
  161. package/dist/esm/components/data-display/chromes/field-tiles.utils.d.ts +22 -0
  162. package/dist/esm/components/data-display/chromes/field-tiles.utils.d.ts.map +1 -0
  163. package/dist/esm/components/data-display/chromes/field-tiles.utils.js +52 -0
  164. package/dist/esm/components/data-display/chromes/field-tiles.utils.js.map +1 -0
  165. package/dist/esm/components/data-display/display-field-resolved-props.d.ts +4 -0
  166. package/dist/esm/components/data-display/display-field-resolved-props.d.ts.map +1 -1
  167. package/dist/esm/components/data-display/display-field-resolved-props.js.map +1 -1
  168. package/dist/esm/components/data-display/display-layout-template.utils.d.ts +18 -0
  169. package/dist/esm/components/data-display/display-layout-template.utils.d.ts.map +1 -0
  170. package/dist/esm/components/data-display/display-layout-template.utils.js +18 -0
  171. package/dist/esm/components/data-display/display-layout-template.utils.js.map +1 -0
  172. package/dist/esm/components/data-display/display-value-emptiness.utils.d.ts +44 -0
  173. package/dist/esm/components/data-display/display-value-emptiness.utils.d.ts.map +1 -0
  174. package/dist/esm/components/data-display/display-value-emptiness.utils.js +61 -0
  175. package/dist/esm/components/data-display/display-value-emptiness.utils.js.map +1 -0
  176. package/dist/esm/components/data-display/empty-value-mark.d.ts +31 -0
  177. package/dist/esm/components/data-display/empty-value-mark.d.ts.map +1 -0
  178. package/dist/esm/components/data-display/empty-value-mark.js +49 -0
  179. package/dist/esm/components/data-display/empty-value-mark.js.map +1 -0
  180. package/dist/esm/components/data-display/external-data-provenance/DisplayFieldProvenanceNote.d.ts +3 -2
  181. package/dist/esm/components/data-display/external-data-provenance/DisplayFieldProvenanceNote.d.ts.map +1 -1
  182. package/dist/esm/components/data-display/external-data-provenance/DisplayFieldProvenanceNote.js +4 -4
  183. package/dist/esm/components/data-display/external-data-provenance/DisplayFieldProvenanceNote.js.map +1 -1
  184. package/dist/esm/components/data-display/external-data-provenance/external-data-provenance.frontend.d.ts +6 -3
  185. package/dist/esm/components/data-display/external-data-provenance/external-data-provenance.frontend.d.ts.map +1 -1
  186. package/dist/esm/components/data-display/external-data-provenance/external-data-provenance.frontend.js +22 -12
  187. package/dist/esm/components/data-display/external-data-provenance/external-data-provenance.frontend.js.map +1 -1
  188. package/dist/esm/components/data-display/external-data-provenance/useExternalDataFieldProvenance.js +2 -2
  189. package/dist/esm/components/data-display/external-data-provenance/useExternalDataFieldProvenance.js.map +1 -1
  190. package/dist/esm/components/data-display/reference-display-target.d.ts +98 -0
  191. package/dist/esm/components/data-display/reference-display-target.d.ts.map +1 -0
  192. package/dist/esm/components/data-display/reference-display-target.js +154 -0
  193. package/dist/esm/components/data-display/reference-display-target.js.map +1 -0
  194. package/dist/esm/components/data-display/summary-value-naming.context.d.ts +15 -0
  195. package/dist/esm/components/data-display/summary-value-naming.context.d.ts.map +1 -0
  196. package/dist/esm/components/data-display/summary-value-naming.context.js +18 -0
  197. package/dist/esm/components/data-display/summary-value-naming.context.js.map +1 -0
  198. package/dist/esm/components/data-display/tone-marker.d.ts +38 -0
  199. package/dist/esm/components/data-display/tone-marker.d.ts.map +1 -0
  200. package/dist/esm/components/data-display/tone-marker.js +56 -0
  201. package/dist/esm/components/data-display/tone-marker.js.map +1 -0
  202. package/dist/esm/components/data-display/useFileActivation.d.ts.map +1 -1
  203. package/dist/esm/components/data-display/useFileActivation.js +2 -9
  204. package/dist/esm/components/data-display/useFileActivation.js.map +1 -1
  205. package/dist/esm/components/feedback/features/feature-limit-indicator.d.ts.map +1 -1
  206. package/dist/esm/components/feedback/features/feature-limit-indicator.js +12 -4
  207. package/dist/esm/components/feedback/features/feature-limit-indicator.js.map +1 -1
  208. package/dist/esm/components/feedback/operations-confirm-critical.d.ts +8 -0
  209. package/dist/esm/components/feedback/operations-confirm-critical.d.ts.map +1 -1
  210. package/dist/esm/components/feedback/operations-confirm-critical.js.map +1 -1
  211. package/dist/esm/components/files/Files_UploadGrantDrop.d.ts +0 -5
  212. package/dist/esm/components/files/Files_UploadGrantDrop.d.ts.map +1 -1
  213. package/dist/esm/components/files/Files_UploadGrantDrop.js +5 -17
  214. package/dist/esm/components/files/Files_UploadGrantDrop.js.map +1 -1
  215. package/dist/esm/components/flows-actors/actor.d.ts +21 -4
  216. package/dist/esm/components/flows-actors/actor.d.ts.map +1 -1
  217. package/dist/esm/components/flows-actors/actor.js +114 -192
  218. package/dist/esm/components/flows-actors/actor.js.map +1 -1
  219. package/dist/esm/components/flows-actors/actor.labels.d.ts.map +1 -1
  220. package/dist/esm/components/flows-actors/actor.labels.js +5 -10
  221. package/dist/esm/components/flows-actors/actor.labels.js.map +1 -1
  222. package/dist/esm/components/flows-actors/agent-config.labels.js +1 -1
  223. package/dist/esm/components/flows-actors/agent-config.labels.js.map +1 -1
  224. package/dist/esm/components/flows-actors/approval-modification-refusal.utils.d.ts.map +1 -1
  225. package/dist/esm/components/flows-actors/approval-modification-refusal.utils.js +1 -0
  226. package/dist/esm/components/flows-actors/approval-modification-refusal.utils.js.map +1 -1
  227. package/dist/esm/components/flows-actors/approval.d.ts +26 -16
  228. package/dist/esm/components/flows-actors/approval.d.ts.map +1 -1
  229. package/dist/esm/components/flows-actors/approval.js +208 -70
  230. package/dist/esm/components/flows-actors/approval.js.map +1 -1
  231. package/dist/esm/components/flows-actors/approval.labels.d.ts.map +1 -1
  232. package/dist/esm/components/flows-actors/approval.labels.js +67 -22
  233. package/dist/esm/components/flows-actors/approval.labels.js.map +1 -1
  234. package/dist/esm/components/flows-actors/artifact-browser.labels.js +1 -1
  235. package/dist/esm/components/flows-actors/artifact-browser.labels.js.map +1 -1
  236. package/dist/esm/components/flows-actors/execution-plan.d.ts +19 -7
  237. package/dist/esm/components/flows-actors/execution-plan.d.ts.map +1 -1
  238. package/dist/esm/components/flows-actors/execution-plan.js +55 -41
  239. package/dist/esm/components/flows-actors/execution-plan.js.map +1 -1
  240. package/dist/esm/components/flows-actors/execution-plan.labels.d.ts.map +1 -1
  241. package/dist/esm/components/flows-actors/execution-plan.labels.js +25 -8
  242. package/dist/esm/components/flows-actors/execution-plan.labels.js.map +1 -1
  243. package/dist/esm/components/flows-actors/execution-usage.d.ts +69 -0
  244. package/dist/esm/components/flows-actors/execution-usage.d.ts.map +1 -0
  245. package/dist/esm/components/flows-actors/execution-usage.js +189 -0
  246. package/dist/esm/components/flows-actors/execution-usage.js.map +1 -0
  247. package/dist/esm/components/flows-actors/execution-usage.labels.d.ts +3 -0
  248. package/dist/esm/components/flows-actors/execution-usage.labels.d.ts.map +1 -0
  249. package/dist/esm/components/flows-actors/execution-usage.labels.js +27 -0
  250. package/dist/esm/components/flows-actors/execution-usage.labels.js.map +1 -0
  251. package/dist/esm/components/flows-actors/flow-execution.d.ts +23 -6
  252. package/dist/esm/components/flows-actors/flow-execution.d.ts.map +1 -1
  253. package/dist/esm/components/flows-actors/flow-execution.js +56 -208
  254. package/dist/esm/components/flows-actors/flow-execution.js.map +1 -1
  255. package/dist/esm/components/flows-actors/flow-execution.labels.d.ts.map +1 -1
  256. package/dist/esm/components/flows-actors/flow-execution.labels.js +3 -10
  257. package/dist/esm/components/flows-actors/flow-execution.labels.js.map +1 -1
  258. package/dist/esm/components/flows-actors/flow-node-badges.d.ts +54 -21
  259. package/dist/esm/components/flows-actors/flow-node-badges.d.ts.map +1 -1
  260. package/dist/esm/components/flows-actors/flow-node-badges.js +80 -6
  261. package/dist/esm/components/flows-actors/flow-node-badges.js.map +1 -1
  262. package/dist/esm/components/flows-actors/flow-node.labels.d.ts.map +1 -1
  263. package/dist/esm/components/flows-actors/flow-node.labels.js +0 -8
  264. package/dist/esm/components/flows-actors/flow-node.labels.js.map +1 -1
  265. package/dist/esm/components/flows-actors/flow-step-visuals.d.ts +31 -0
  266. package/dist/esm/components/flows-actors/flow-step-visuals.d.ts.map +1 -0
  267. package/dist/esm/components/flows-actors/flow-step-visuals.js +98 -0
  268. package/dist/esm/components/flows-actors/flow-step-visuals.js.map +1 -0
  269. package/dist/esm/components/flows-actors/flows-actors-graph-runtime.d.ts +18 -19
  270. package/dist/esm/components/flows-actors/flows-actors-graph-runtime.d.ts.map +1 -1
  271. package/dist/esm/components/flows-actors/flows-actors-graph-runtime.js +18 -19
  272. package/dist/esm/components/flows-actors/flows-actors-graph-runtime.js.map +1 -1
  273. package/dist/esm/components/flows-actors/flows-actors-graph.lazy.d.ts +27 -42
  274. package/dist/esm/components/flows-actors/flows-actors-graph.lazy.d.ts.map +1 -1
  275. package/dist/esm/components/flows-actors/flows-actors-graph.lazy.js +28 -43
  276. package/dist/esm/components/flows-actors/flows-actors-graph.lazy.js.map +1 -1
  277. package/dist/esm/components/flows-actors/flows-actors-ui.utils.d.ts +15 -10
  278. package/dist/esm/components/flows-actors/flows-actors-ui.utils.d.ts.map +1 -1
  279. package/dist/esm/components/flows-actors/flows-actors-ui.utils.js +16 -42
  280. package/dist/esm/components/flows-actors/flows-actors-ui.utils.js.map +1 -1
  281. package/dist/esm/components/flows-actors/graph-viewer.d.ts +112 -0
  282. package/dist/esm/components/flows-actors/graph-viewer.d.ts.map +1 -0
  283. package/dist/esm/components/flows-actors/graph-viewer.js +431 -0
  284. package/dist/esm/components/flows-actors/graph-viewer.js.map +1 -0
  285. package/dist/esm/components/flows-actors/graph-viewer.labels.d.ts +3 -0
  286. package/dist/esm/components/flows-actors/graph-viewer.labels.d.ts.map +1 -0
  287. package/dist/esm/components/flows-actors/graph-viewer.labels.js +67 -0
  288. package/dist/esm/components/flows-actors/graph-viewer.labels.js.map +1 -0
  289. package/dist/esm/components/flows-actors/graph-viewer.models.d.ts +16 -0
  290. package/dist/esm/components/flows-actors/graph-viewer.models.d.ts.map +1 -0
  291. package/dist/esm/components/flows-actors/graph-viewer.models.js +18 -0
  292. package/dist/esm/components/flows-actors/graph-viewer.models.js.map +1 -0
  293. package/dist/esm/components/flows-actors/human-decision-form.d.ts +57 -0
  294. package/dist/esm/components/flows-actors/human-decision-form.d.ts.map +1 -0
  295. package/dist/esm/components/flows-actors/human-decision-form.js +128 -0
  296. package/dist/esm/components/flows-actors/human-decision-form.js.map +1 -0
  297. package/dist/esm/components/flows-actors/system-catalog.d.ts +6 -1
  298. package/dist/esm/components/flows-actors/system-catalog.d.ts.map +1 -1
  299. package/dist/esm/components/flows-actors/system-catalog.js +22 -20
  300. package/dist/esm/components/flows-actors/system-catalog.js.map +1 -1
  301. package/dist/esm/components/flows-actors/system-catalog.labels.d.ts.map +1 -1
  302. package/dist/esm/components/flows-actors/system-catalog.labels.js +3 -2
  303. package/dist/esm/components/flows-actors/system-catalog.labels.js.map +1 -1
  304. package/dist/esm/components/flows-actors/task-detail.d.ts +17 -3
  305. package/dist/esm/components/flows-actors/task-detail.d.ts.map +1 -1
  306. package/dist/esm/components/flows-actors/task-detail.js +32 -25
  307. package/dist/esm/components/flows-actors/task-detail.js.map +1 -1
  308. package/dist/esm/components/flows-actors/task-memory.d.ts.map +1 -1
  309. package/dist/esm/components/flows-actors/task-memory.js +3 -2
  310. package/dist/esm/components/flows-actors/task-memory.js.map +1 -1
  311. package/dist/esm/components/form/Form.d.ts +2 -0
  312. package/dist/esm/components/form/Form.d.ts.map +1 -1
  313. package/dist/esm/components/form/Form.js +4 -0
  314. package/dist/esm/components/form/Form.js.map +1 -1
  315. package/dist/esm/components/form/automated/AutomatedArrayField.d.ts +16 -1
  316. package/dist/esm/components/form/automated/AutomatedArrayField.d.ts.map +1 -1
  317. package/dist/esm/components/form/automated/AutomatedArrayField.js +101 -21
  318. package/dist/esm/components/form/automated/AutomatedArrayField.js.map +1 -1
  319. package/dist/esm/components/form/automated/AutomatedForm.d.ts +19 -2
  320. package/dist/esm/components/form/automated/AutomatedForm.d.ts.map +1 -1
  321. package/dist/esm/components/form/automated/AutomatedForm.js +40 -6
  322. package/dist/esm/components/form/automated/AutomatedForm.js.map +1 -1
  323. package/dist/esm/components/form/automated/AutosaveContext.d.ts +22 -1
  324. package/dist/esm/components/form/automated/AutosaveContext.d.ts.map +1 -1
  325. package/dist/esm/components/form/automated/AutosaveContext.js +53 -0
  326. package/dist/esm/components/form/automated/AutosaveContext.js.map +1 -1
  327. package/dist/esm/components/form/automated/FormField.d.ts +1 -1
  328. package/dist/esm/components/form/automated/FormField.d.ts.map +1 -1
  329. package/dist/esm/components/form/automated/FormField.js +127 -53
  330. package/dist/esm/components/form/automated/FormField.js.map +1 -1
  331. package/dist/esm/components/form/automated/FormFieldComposite.d.ts.map +1 -1
  332. package/dist/esm/components/form/automated/FormFieldComposite.js +12 -10
  333. package/dist/esm/components/form/automated/FormFieldComposite.js.map +1 -1
  334. package/dist/esm/components/form/automated/FormFieldRecord.d.ts.map +1 -1
  335. package/dist/esm/components/form/automated/FormFieldRecord.js +16 -7
  336. package/dist/esm/components/form/automated/FormFieldRecord.js.map +1 -1
  337. package/dist/esm/components/form/automated/FormTemplateContext.d.ts +27 -0
  338. package/dist/esm/components/form/automated/FormTemplateContext.d.ts.map +1 -1
  339. package/dist/esm/components/form/automated/FormTemplateContext.js +0 -48
  340. package/dist/esm/components/form/automated/FormTemplateContext.js.map +1 -1
  341. package/dist/esm/components/form/automated/ResourceAutomatedForm.d.ts +4 -3
  342. package/dist/esm/components/form/automated/ResourceAutomatedForm.d.ts.map +1 -1
  343. package/dist/esm/components/form/automated/ResourceAutomatedForm.js +616 -149
  344. package/dist/esm/components/form/automated/ResourceAutomatedForm.js.map +1 -1
  345. package/dist/esm/components/form/automated/automated-form-submit.utils.d.ts +105 -5
  346. package/dist/esm/components/form/automated/automated-form-submit.utils.d.ts.map +1 -1
  347. package/dist/esm/components/form/automated/automated-form-submit.utils.js +225 -6
  348. package/dist/esm/components/form/automated/automated-form-submit.utils.js.map +1 -1
  349. package/dist/esm/components/form/automated/bulk-field-clear-context.d.ts +59 -0
  350. package/dist/esm/components/form/automated/bulk-field-clear-context.d.ts.map +1 -0
  351. package/dist/esm/components/form/automated/bulk-field-clear-context.js +77 -0
  352. package/dist/esm/components/form/automated/bulk-field-clear-context.js.map +1 -0
  353. package/dist/esm/components/form/automated/generated-relationship-field.hooks.d.ts +1 -1
  354. package/dist/esm/components/form/automated/unplaced-request-fields.context.d.ts +19 -0
  355. package/dist/esm/components/form/automated/unplaced-request-fields.context.d.ts.map +1 -0
  356. package/dist/esm/components/form/automated/unplaced-request-fields.context.js +13 -0
  357. package/dist/esm/components/form/automated/unplaced-request-fields.context.js.map +1 -0
  358. package/dist/esm/components/form/automated/useArrayItemAutosaveField.d.ts +7 -0
  359. package/dist/esm/components/form/automated/useArrayItemAutosaveField.d.ts.map +1 -1
  360. package/dist/esm/components/form/automated/useArrayItemAutosaveField.js +10 -2
  361. package/dist/esm/components/form/automated/useArrayItemAutosaveField.js.map +1 -1
  362. package/dist/esm/components/form/automated/useReferenceRecordLabels.d.ts +16 -0
  363. package/dist/esm/components/form/automated/useReferenceRecordLabels.d.ts.map +1 -0
  364. package/dist/esm/components/form/automated/useReferenceRecordLabels.js +66 -0
  365. package/dist/esm/components/form/automated/useReferenceRecordLabels.js.map +1 -0
  366. package/dist/esm/components/form/automated/useRequestFieldOffer.d.ts +18 -0
  367. package/dist/esm/components/form/automated/useRequestFieldOffer.d.ts.map +1 -0
  368. package/dist/esm/components/form/automated/useRequestFieldOffer.js +107 -0
  369. package/dist/esm/components/form/automated/useRequestFieldOffer.js.map +1 -0
  370. package/dist/esm/components/form/chromes/FormFieldChrome.d.ts +7 -1
  371. package/dist/esm/components/form/chromes/FormFieldChrome.d.ts.map +1 -1
  372. package/dist/esm/components/form/chromes/FormFieldChrome.js +6 -3
  373. package/dist/esm/components/form/chromes/FormFieldChrome.js.map +1 -1
  374. package/dist/esm/components/form/controls/date-time/date-range-picker.d.ts +11 -0
  375. package/dist/esm/components/form/controls/date-time/date-range-picker.d.ts.map +1 -1
  376. package/dist/esm/components/form/controls/date-time/date-range-picker.js.map +1 -1
  377. package/dist/esm/components/form/controls/date-time/datepicker.d.ts +21 -0
  378. package/dist/esm/components/form/controls/date-time/datepicker.d.ts.map +1 -1
  379. package/dist/esm/components/form/controls/date-time/datepicker.js.map +1 -1
  380. package/dist/esm/components/form/controls/date-time/datetime-picker.d.ts +9 -0
  381. package/dist/esm/components/form/controls/date-time/datetime-picker.d.ts.map +1 -1
  382. package/dist/esm/components/form/controls/date-time/datetime-picker.js.map +1 -1
  383. package/dist/esm/components/form/controls/date-time/datetime-range-picker.d.ts +9 -0
  384. package/dist/esm/components/form/controls/date-time/datetime-range-picker.d.ts.map +1 -1
  385. package/dist/esm/components/form/controls/date-time/datetime-range-picker.js.map +1 -1
  386. package/dist/esm/components/form/controls/date-time/time-range-picker.d.ts +1 -0
  387. package/dist/esm/components/form/controls/date-time/time-range-picker.d.ts.map +1 -1
  388. package/dist/esm/components/form/controls/date-time/time-range-picker.js.map +1 -1
  389. package/dist/esm/components/form/controls/enum/radio.d.ts +10 -0
  390. package/dist/esm/components/form/controls/enum/radio.d.ts.map +1 -1
  391. package/dist/esm/components/form/controls/enum/radio.js.map +1 -1
  392. package/dist/esm/components/form/controls/enum/toggle-group.d.ts +14 -10
  393. package/dist/esm/components/form/controls/enum/toggle-group.d.ts.map +1 -1
  394. package/dist/esm/components/form/controls/enum/toggle-group.js +14 -6
  395. package/dist/esm/components/form/controls/enum/toggle-group.js.map +1 -1
  396. package/dist/esm/components/form/controls/form-field-checkbox-group.d.ts.map +1 -1
  397. package/dist/esm/components/form/controls/form-field-checkbox-group.js +7 -3
  398. package/dist/esm/components/form/controls/form-field-checkbox-group.js.map +1 -1
  399. package/dist/esm/components/form/controls/string/chips-input.d.ts +65 -0
  400. package/dist/esm/components/form/controls/string/chips-input.d.ts.map +1 -0
  401. package/dist/esm/components/form/controls/string/chips-input.js +9 -0
  402. package/dist/esm/components/form/controls/string/chips-input.js.map +1 -0
  403. package/dist/esm/components/form/fields/form-field-address.d.ts.map +1 -1
  404. package/dist/esm/components/form/fields/form-field-address.js +7 -5
  405. package/dist/esm/components/form/fields/form-field-address.js.map +1 -1
  406. package/dist/esm/components/form/fields/form-field-address.labels.js +1 -1
  407. package/dist/esm/components/form/fields/form-field-address.labels.js.map +1 -1
  408. package/dist/esm/components/form/fields/form-field-bigdecimal.js +2 -2
  409. package/dist/esm/components/form/fields/form-field-bigdecimal.js.map +1 -1
  410. package/dist/esm/components/form/fields/form-field-boolean.js +2 -2
  411. package/dist/esm/components/form/fields/form-field-boolean.js.map +1 -1
  412. package/dist/esm/components/form/fields/form-field-code.labels.js +1 -1
  413. package/dist/esm/components/form/fields/form-field-code.labels.js.map +1 -1
  414. package/dist/esm/components/form/fields/form-field-date.d.ts.map +1 -1
  415. package/dist/esm/components/form/fields/form-field-date.js +16 -11
  416. package/dist/esm/components/form/fields/form-field-date.js.map +1 -1
  417. package/dist/esm/components/form/fields/form-field-datetime.d.ts.map +1 -1
  418. package/dist/esm/components/form/fields/form-field-datetime.js +10 -5
  419. package/dist/esm/components/form/fields/form-field-datetime.js.map +1 -1
  420. package/dist/esm/components/form/fields/form-field-duration.d.ts.map +1 -1
  421. package/dist/esm/components/form/fields/form-field-duration.js +5 -7
  422. package/dist/esm/components/form/fields/form-field-duration.js.map +1 -1
  423. package/dist/esm/components/form/fields/form-field-duration.labels.d.ts.map +1 -1
  424. package/dist/esm/components/form/fields/form-field-duration.labels.js +8 -2
  425. package/dist/esm/components/form/fields/form-field-duration.labels.js.map +1 -1
  426. package/dist/esm/components/form/fields/form-field-enum.d.ts.map +1 -1
  427. package/dist/esm/components/form/fields/form-field-enum.js +31 -31
  428. package/dist/esm/components/form/fields/form-field-enum.js.map +1 -1
  429. package/dist/esm/components/form/fields/form-field-file.d.ts.map +1 -1
  430. package/dist/esm/components/form/fields/form-field-file.js +13 -12
  431. package/dist/esm/components/form/fields/form-field-file.js.map +1 -1
  432. package/dist/esm/components/form/fields/form-field-file.labels.js +6 -6
  433. package/dist/esm/components/form/fields/form-field-file.labels.js.map +1 -1
  434. package/dist/esm/components/form/fields/form-field-money.d.ts.map +1 -1
  435. package/dist/esm/components/form/fields/form-field-money.js +5 -4
  436. package/dist/esm/components/form/fields/form-field-money.js.map +1 -1
  437. package/dist/esm/components/form/fields/form-field-money.labels.d.ts.map +1 -1
  438. package/dist/esm/components/form/fields/form-field-money.labels.js +8 -2
  439. package/dist/esm/components/form/fields/form-field-money.labels.js.map +1 -1
  440. package/dist/esm/components/form/fields/form-field-number.js +2 -2
  441. package/dist/esm/components/form/fields/form-field-number.js.map +1 -1
  442. package/dist/esm/components/form/fields/form-field-range-bigdecimal.js +2 -2
  443. package/dist/esm/components/form/fields/form-field-range-bigdecimal.js.map +1 -1
  444. package/dist/esm/components/form/fields/form-field-range-date.d.ts.map +1 -1
  445. package/dist/esm/components/form/fields/form-field-range-date.js +7 -2
  446. package/dist/esm/components/form/fields/form-field-range-date.js.map +1 -1
  447. package/dist/esm/components/form/fields/form-field-range-datetime.d.ts.map +1 -1
  448. package/dist/esm/components/form/fields/form-field-range-datetime.js +5 -2
  449. package/dist/esm/components/form/fields/form-field-range-datetime.js.map +1 -1
  450. package/dist/esm/components/form/fields/form-field-range-money.d.ts.map +1 -1
  451. package/dist/esm/components/form/fields/form-field-range-money.js +6 -19
  452. package/dist/esm/components/form/fields/form-field-range-money.js.map +1 -1
  453. package/dist/esm/components/form/fields/form-field-range-money.labels.d.ts.map +1 -1
  454. package/dist/esm/components/form/fields/form-field-range-money.labels.js +8 -2
  455. package/dist/esm/components/form/fields/form-field-range-money.labels.js.map +1 -1
  456. package/dist/esm/components/form/fields/form-field-range-number.js +2 -2
  457. package/dist/esm/components/form/fields/form-field-range-number.js.map +1 -1
  458. package/dist/esm/components/form/fields/form-field-range-time.js +2 -2
  459. package/dist/esm/components/form/fields/form-field-range-time.js.map +1 -1
  460. package/dist/esm/components/form/fields/form-field-resource-reference.d.ts +56 -0
  461. package/dist/esm/components/form/fields/form-field-resource-reference.d.ts.map +1 -0
  462. package/dist/esm/components/form/fields/form-field-resource-reference.js +51 -0
  463. package/dist/esm/components/form/fields/form-field-resource-reference.js.map +1 -0
  464. package/dist/esm/components/form/fields/form-field-string-organization-role.d.ts +36 -6
  465. package/dist/esm/components/form/fields/form-field-string-organization-role.d.ts.map +1 -1
  466. package/dist/esm/components/form/fields/form-field-string-organization-role.js +30 -11
  467. package/dist/esm/components/form/fields/form-field-string-organization-role.js.map +1 -1
  468. package/dist/esm/components/form/fields/form-field-string.d.ts +5 -0
  469. package/dist/esm/components/form/fields/form-field-string.d.ts.map +1 -1
  470. package/dist/esm/components/form/fields/form-field-string.js +9 -7
  471. package/dist/esm/components/form/fields/form-field-string.js.map +1 -1
  472. package/dist/esm/components/form/fields/form-field-time.d.ts.map +1 -1
  473. package/dist/esm/components/form/fields/form-field-time.js +6 -3
  474. package/dist/esm/components/form/fields/form-field-time.js.map +1 -1
  475. package/dist/esm/components/form/fields/themed-native-select.d.ts +29 -0
  476. package/dist/esm/components/form/fields/themed-native-select.d.ts.map +1 -0
  477. package/dist/esm/components/form/fields/themed-native-select.js +36 -0
  478. package/dist/esm/components/form/fields/themed-native-select.js.map +1 -0
  479. package/dist/esm/components/form/form-context.d.ts +11 -0
  480. package/dist/esm/components/form/form-context.d.ts.map +1 -1
  481. package/dist/esm/components/form/form-context.js +11 -0
  482. package/dist/esm/components/form/form-context.js.map +1 -1
  483. package/dist/esm/components/form/form-context.utils.d.ts +2 -0
  484. package/dist/esm/components/form/form-context.utils.d.ts.map +1 -1
  485. package/dist/esm/components/form/form-context.utils.js +6 -2
  486. package/dist/esm/components/form/form-context.utils.js.map +1 -1
  487. package/dist/esm/components/form/validation-errors/FormErrorSummary.d.ts.map +1 -1
  488. package/dist/esm/components/form/validation-errors/FormErrorSummary.js +17 -15
  489. package/dist/esm/components/form/validation-errors/FormErrorSummary.js.map +1 -1
  490. package/dist/esm/components/form/validation-errors/field-reveal.d.ts +41 -0
  491. package/dist/esm/components/form/validation-errors/field-reveal.d.ts.map +1 -0
  492. package/dist/esm/components/form/validation-errors/field-reveal.js +108 -0
  493. package/dist/esm/components/form/validation-errors/field-reveal.js.map +1 -0
  494. package/dist/esm/components/form/validation-errors/form-level-error-recheck.d.ts +3 -0
  495. package/dist/esm/components/form/validation-errors/form-level-error-recheck.d.ts.map +1 -0
  496. package/dist/esm/components/form/validation-errors/form-level-error-recheck.js +37 -0
  497. package/dist/esm/components/form/validation-errors/form-level-error-recheck.js.map +1 -0
  498. package/dist/esm/components/form/validation-errors/getFieldError.d.ts +6 -0
  499. package/dist/esm/components/form/validation-errors/getFieldError.d.ts.map +1 -1
  500. package/dist/esm/components/form/validation-errors/getFieldError.js +9 -2
  501. package/dist/esm/components/form/validation-errors/getFieldError.js.map +1 -1
  502. package/dist/esm/components/form/validation-errors/scroll-to-first-error.utils.d.ts +8 -1
  503. package/dist/esm/components/form/validation-errors/scroll-to-first-error.utils.d.ts.map +1 -1
  504. package/dist/esm/components/form/validation-errors/scroll-to-first-error.utils.js +46 -3
  505. package/dist/esm/components/form/validation-errors/scroll-to-first-error.utils.js.map +1 -1
  506. package/dist/esm/components/form/validation-errors/useServerErrorInjection.d.ts.map +1 -1
  507. package/dist/esm/components/form/validation-errors/useServerErrorInjection.js +8 -3
  508. package/dist/esm/components/form/validation-errors/useServerErrorInjection.js.map +1 -1
  509. package/dist/esm/components/form/validation-errors/validate-fields-and-show-errors.d.ts +32 -0
  510. package/dist/esm/components/form/validation-errors/validate-fields-and-show-errors.d.ts.map +1 -0
  511. package/dist/esm/components/form/validation-errors/validate-fields-and-show-errors.js +60 -0
  512. package/dist/esm/components/form/validation-errors/validate-fields-and-show-errors.js.map +1 -0
  513. package/dist/esm/components/form/validation-errors/zod-issue-resolver.d.ts +10 -0
  514. package/dist/esm/components/form/validation-errors/zod-issue-resolver.d.ts.map +1 -1
  515. package/dist/esm/components/form/validation-errors/zod-issue-resolver.js +12 -3
  516. package/dist/esm/components/form/validation-errors/zod-issue-resolver.js.map +1 -1
  517. package/dist/esm/components/navigation/app-level/ApplicationLevel_QuickActionButton.d.ts +7 -0
  518. package/dist/esm/components/navigation/app-level/ApplicationLevel_QuickActionButton.d.ts.map +1 -1
  519. package/dist/esm/components/navigation/app-level/ApplicationLevel_QuickActionButton.js.map +1 -1
  520. package/dist/esm/components/navigation/app-level/ApplicationLevel_UtilityPanel.d.ts +6 -0
  521. package/dist/esm/components/navigation/app-level/ApplicationLevel_UtilityPanel.d.ts.map +1 -1
  522. package/dist/esm/components/navigation/app-level/ApplicationLevel_UtilityPanel.js.map +1 -1
  523. package/dist/esm/components/navigation/app-level/SidebarResourceBrowser.d.ts.map +1 -1
  524. package/dist/esm/components/navigation/app-level/SidebarResourceBrowser.js +11 -28
  525. package/dist/esm/components/navigation/app-level/SidebarResourceBrowser.js.map +1 -1
  526. package/dist/esm/components/navigation/app-level/engine-launcher-entries.d.ts +46 -0
  527. package/dist/esm/components/navigation/app-level/engine-launcher-entries.d.ts.map +1 -0
  528. package/dist/esm/components/navigation/app-level/engine-launcher-entries.js +165 -0
  529. package/dist/esm/components/navigation/app-level/engine-launcher-entries.js.map +1 -0
  530. package/dist/esm/components/navigation/app-level/useCommandMenuBehavior.d.ts.map +1 -1
  531. package/dist/esm/components/navigation/app-level/useCommandMenuBehavior.js +8 -3
  532. package/dist/esm/components/navigation/app-level/useCommandMenuBehavior.js.map +1 -1
  533. package/dist/esm/components/navigation/app-level/useMenuUserOrgBehavior.d.ts.map +1 -1
  534. package/dist/esm/components/navigation/app-level/useMenuUserOrgBehavior.js +41 -20
  535. package/dist/esm/components/navigation/app-level/useMenuUserOrgBehavior.js.map +1 -1
  536. package/dist/esm/components/navigation/app-level/useNavigationBehaviors.d.ts +1 -2
  537. package/dist/esm/components/navigation/app-level/useNavigationBehaviors.d.ts.map +1 -1
  538. package/dist/esm/components/navigation/app-level/useNavigationBehaviors.js +1 -15
  539. package/dist/esm/components/navigation/app-level/useNavigationBehaviors.js.map +1 -1
  540. package/dist/esm/components/navigation/app-level/useOwnOrganizationSearch.d.ts +32 -0
  541. package/dist/esm/components/navigation/app-level/useOwnOrganizationSearch.d.ts.map +1 -0
  542. package/dist/esm/components/navigation/app-level/useOwnOrganizationSearch.js +91 -0
  543. package/dist/esm/components/navigation/app-level/useOwnOrganizationSearch.js.map +1 -0
  544. package/dist/esm/components/navigation/app-level/useQuickSwitcherBehavior.d.ts.map +1 -1
  545. package/dist/esm/components/navigation/app-level/useQuickSwitcherBehavior.js +3 -1
  546. package/dist/esm/components/navigation/app-level/useQuickSwitcherBehavior.js.map +1 -1
  547. package/dist/esm/components/navigation/app-level/useSidebarBehavior.d.ts +18 -1
  548. package/dist/esm/components/navigation/app-level/useSidebarBehavior.d.ts.map +1 -1
  549. package/dist/esm/components/navigation/app-level/useSidebarBehavior.js +66 -9
  550. package/dist/esm/components/navigation/app-level/useSidebarBehavior.js.map +1 -1
  551. package/dist/esm/components/navigation/app-level/useUtilityPanelBehavior.d.ts +15 -10
  552. package/dist/esm/components/navigation/app-level/useUtilityPanelBehavior.d.ts.map +1 -1
  553. package/dist/esm/components/navigation/app-level/useUtilityPanelBehavior.js +89 -12
  554. package/dist/esm/components/navigation/app-level/useUtilityPanelBehavior.js.map +1 -1
  555. package/dist/esm/components/progression/ProgressionMilestoneTracker.labels.js +2 -2
  556. package/dist/esm/components/progression/ProgressionMilestoneTracker.labels.js.map +1 -1
  557. package/dist/esm/components/resources/CollectionSelectAllCheckbox.d.ts +39 -0
  558. package/dist/esm/components/resources/CollectionSelectAllCheckbox.d.ts.map +1 -0
  559. package/dist/esm/components/resources/CollectionSelectAllCheckbox.js +21 -0
  560. package/dist/esm/components/resources/CollectionSelectAllCheckbox.js.map +1 -0
  561. package/dist/esm/components/resources/CollectionSelectionControls.d.ts +4 -3
  562. package/dist/esm/components/resources/CollectionSelectionControls.d.ts.map +1 -1
  563. package/dist/esm/components/resources/CollectionSelectionControls.js.map +1 -1
  564. package/dist/esm/components/resources/ResourceCollectionBody_Table.d.ts +7 -2
  565. package/dist/esm/components/resources/ResourceCollectionBody_Table.d.ts.map +1 -1
  566. package/dist/esm/components/resources/ResourceCollectionBody_Table.js +38 -14
  567. package/dist/esm/components/resources/ResourceCollectionBody_Table.js.map +1 -1
  568. package/dist/esm/components/resources/ResourceCollectionFilterPresets.d.ts +4 -4
  569. package/dist/esm/components/resources/ResourceCollectionFilterPresets.d.ts.map +1 -1
  570. package/dist/esm/components/resources/ResourceCollectionFilterPresets.js +20 -13
  571. package/dist/esm/components/resources/ResourceCollectionFilterPresets.js.map +1 -1
  572. package/dist/esm/components/resources/ResourceCollectionQuickFilterTabs.d.ts +4 -3
  573. package/dist/esm/components/resources/ResourceCollectionQuickFilterTabs.d.ts.map +1 -1
  574. package/dist/esm/components/resources/ResourceCollectionQuickFilterTabs.js +40 -6
  575. package/dist/esm/components/resources/ResourceCollectionQuickFilterTabs.js.map +1 -1
  576. package/dist/esm/components/resources/ResourceCollectionToolbar.d.ts +65 -23
  577. package/dist/esm/components/resources/ResourceCollectionToolbar.d.ts.map +1 -1
  578. package/dist/esm/components/resources/ResourceCollectionToolbar.js +73 -10
  579. package/dist/esm/components/resources/ResourceCollectionToolbar.js.map +1 -1
  580. package/dist/esm/components/resources/ResourceLayout_Action.labels.d.ts.map +1 -1
  581. package/dist/esm/components/resources/ResourceLayout_Action.labels.js +5 -0
  582. package/dist/esm/components/resources/ResourceLayout_Action.labels.js.map +1 -1
  583. package/dist/esm/components/resources/ResourceLayout_Breadcrumb.d.ts +18 -0
  584. package/dist/esm/components/resources/ResourceLayout_Breadcrumb.d.ts.map +1 -1
  585. package/dist/esm/components/resources/ResourceLayout_Breadcrumb.js +57 -48
  586. package/dist/esm/components/resources/ResourceLayout_Breadcrumb.js.map +1 -1
  587. package/dist/esm/components/resources/ResourceLayout_CollectionActions.d.ts +1 -1
  588. package/dist/esm/components/resources/ResourceLayout_CollectionActions.d.ts.map +1 -1
  589. package/dist/esm/components/resources/ResourceLayout_CollectionActions.js +1 -1
  590. package/dist/esm/components/resources/ResourceLayout_CollectionActions.js.map +1 -1
  591. package/dist/esm/components/resources/ResourceLayout_ContainerNested.d.ts.map +1 -1
  592. package/dist/esm/components/resources/ResourceLayout_ContainerNested.js +7 -1
  593. package/dist/esm/components/resources/ResourceLayout_ContainerNested.js.map +1 -1
  594. package/dist/esm/components/resources/ResourceLayout_Create.d.ts.map +1 -1
  595. package/dist/esm/components/resources/ResourceLayout_Create.js +3 -4
  596. package/dist/esm/components/resources/ResourceLayout_Create.js.map +1 -1
  597. package/dist/esm/components/resources/ResourceLayout_Create.labels.d.ts.map +1 -1
  598. package/dist/esm/components/resources/ResourceLayout_Create.labels.js +10 -0
  599. package/dist/esm/components/resources/ResourceLayout_Create.labels.js.map +1 -1
  600. package/dist/esm/components/resources/ResourceLayout_DangerZone.d.ts +5 -3
  601. package/dist/esm/components/resources/ResourceLayout_DangerZone.d.ts.map +1 -1
  602. package/dist/esm/components/resources/ResourceLayout_DangerZone.js +4 -3
  603. package/dist/esm/components/resources/ResourceLayout_DangerZone.js.map +1 -1
  604. package/dist/esm/components/resources/ResourceLayout_FilterChips.d.ts +8 -1
  605. package/dist/esm/components/resources/ResourceLayout_FilterChips.d.ts.map +1 -1
  606. package/dist/esm/components/resources/ResourceLayout_FilterChips.js +83 -11
  607. package/dist/esm/components/resources/ResourceLayout_FilterChips.js.map +1 -1
  608. package/dist/esm/components/resources/ResourceLayout_Filters.labels.js +1 -1
  609. package/dist/esm/components/resources/ResourceLayout_Filters.labels.js.map +1 -1
  610. package/dist/esm/components/resources/ResourceLayout_FiltersControl.d.ts +5 -8
  611. package/dist/esm/components/resources/ResourceLayout_FiltersControl.d.ts.map +1 -1
  612. package/dist/esm/components/resources/ResourceLayout_FiltersControl.js +68 -19
  613. package/dist/esm/components/resources/ResourceLayout_FiltersControl.js.map +1 -1
  614. package/dist/esm/components/resources/ResourceLayout_Header.d.ts.map +1 -1
  615. package/dist/esm/components/resources/ResourceLayout_Header.js +150 -44
  616. package/dist/esm/components/resources/ResourceLayout_Header.js.map +1 -1
  617. package/dist/esm/components/resources/ResourceLayout_InsertedViews.d.ts.map +1 -1
  618. package/dist/esm/components/resources/ResourceLayout_InsertedViews.js +62 -40
  619. package/dist/esm/components/resources/ResourceLayout_InsertedViews.js.map +1 -1
  620. package/dist/esm/components/resources/ResourceLayout_List.d.ts.map +1 -1
  621. package/dist/esm/components/resources/ResourceLayout_List.js +68 -70
  622. package/dist/esm/components/resources/ResourceLayout_List.js.map +1 -1
  623. package/dist/esm/components/resources/ResourceLayout_List.labels.d.ts.map +1 -1
  624. package/dist/esm/components/resources/ResourceLayout_List.labels.js +4 -10
  625. package/dist/esm/components/resources/ResourceLayout_List.labels.js.map +1 -1
  626. package/dist/esm/components/resources/ResourceLayout_OperationBulk.d.ts +8 -9
  627. package/dist/esm/components/resources/ResourceLayout_OperationBulk.d.ts.map +1 -1
  628. package/dist/esm/components/resources/ResourceLayout_OperationBulk.js +67 -25
  629. package/dist/esm/components/resources/ResourceLayout_OperationBulk.js.map +1 -1
  630. package/dist/esm/components/resources/ResourceLayout_OperationBulk.labels.js +8 -8
  631. package/dist/esm/components/resources/ResourceLayout_OperationBulk.labels.js.map +1 -1
  632. package/dist/esm/components/resources/ResourceLayout_OperationsItems.d.ts +8 -2
  633. package/dist/esm/components/resources/ResourceLayout_OperationsItems.d.ts.map +1 -1
  634. package/dist/esm/components/resources/ResourceLayout_OperationsItems.js +12 -7
  635. package/dist/esm/components/resources/ResourceLayout_OperationsItems.js.map +1 -1
  636. package/dist/esm/components/resources/ResourceLayout_OperationsItems.labels.d.ts.map +1 -1
  637. package/dist/esm/components/resources/ResourceLayout_OperationsItems.labels.js +11 -6
  638. package/dist/esm/components/resources/ResourceLayout_OperationsItems.labels.js.map +1 -1
  639. package/dist/esm/components/resources/ResourceLayout_Read.d.ts +2 -0
  640. package/dist/esm/components/resources/ResourceLayout_Read.d.ts.map +1 -1
  641. package/dist/esm/components/resources/ResourceLayout_Read.js +23 -5
  642. package/dist/esm/components/resources/ResourceLayout_Read.js.map +1 -1
  643. package/dist/esm/components/resources/ResourceLayout_ReadSummary.d.ts.map +1 -1
  644. package/dist/esm/components/resources/ResourceLayout_ReadSummary.js +5 -3
  645. package/dist/esm/components/resources/ResourceLayout_ReadSummary.js.map +1 -1
  646. package/dist/esm/components/resources/ResourceLayout_ReadSummary_TableRow.d.ts.map +1 -1
  647. package/dist/esm/components/resources/ResourceLayout_ReadSummary_TableRow.js +18 -7
  648. package/dist/esm/components/resources/ResourceLayout_ReadSummary_TableRow.js.map +1 -1
  649. package/dist/esm/components/resources/ResourceLayout_RecordSharing.d.ts +56 -0
  650. package/dist/esm/components/resources/ResourceLayout_RecordSharing.d.ts.map +1 -0
  651. package/dist/esm/components/resources/ResourceLayout_RecordSharing.js +184 -0
  652. package/dist/esm/components/resources/ResourceLayout_RecordSharing.js.map +1 -0
  653. package/dist/esm/components/resources/ResourceLayout_RecordSharing.labels.d.ts +3 -0
  654. package/dist/esm/components/resources/ResourceLayout_RecordSharing.labels.d.ts.map +1 -0
  655. package/dist/esm/components/resources/ResourceLayout_RecordSharing.labels.js +106 -0
  656. package/dist/esm/components/resources/ResourceLayout_RecordSharing.labels.js.map +1 -0
  657. package/dist/esm/components/resources/ResourceLayout_Search.d.ts.map +1 -1
  658. package/dist/esm/components/resources/ResourceLayout_Search.js +55 -42
  659. package/dist/esm/components/resources/ResourceLayout_Search.js.map +1 -1
  660. package/dist/esm/components/resources/ResourceLayout_Search.labels.d.ts.map +1 -1
  661. package/dist/esm/components/resources/ResourceLayout_Search.labels.js +0 -6
  662. package/dist/esm/components/resources/ResourceLayout_Search.labels.js.map +1 -1
  663. package/dist/esm/components/resources/ResourceLayout_SemanticOperationFallback.d.ts +8 -0
  664. package/dist/esm/components/resources/ResourceLayout_SemanticOperationFallback.d.ts.map +1 -1
  665. package/dist/esm/components/resources/ResourceLayout_SemanticOperationFallback.js +2 -3
  666. package/dist/esm/components/resources/ResourceLayout_SemanticOperationFallback.js.map +1 -1
  667. package/dist/esm/components/resources/ResourceLayout_SortControl.d.ts.map +1 -1
  668. package/dist/esm/components/resources/ResourceLayout_SortControl.js +3 -2
  669. package/dist/esm/components/resources/ResourceLayout_SortControl.js.map +1 -1
  670. package/dist/esm/components/resources/ResourceListItemRenderer.d.ts +29 -5
  671. package/dist/esm/components/resources/ResourceListItemRenderer.d.ts.map +1 -1
  672. package/dist/esm/components/resources/ResourceListItemRenderer.js +123 -41
  673. package/dist/esm/components/resources/ResourceListItemRenderer.js.map +1 -1
  674. package/dist/esm/components/resources/ResourceViewModeToggle.d.ts +6 -1
  675. package/dist/esm/components/resources/ResourceViewModeToggle.d.ts.map +1 -1
  676. package/dist/esm/components/resources/ResourceViewModeToggle.js +9 -7
  677. package/dist/esm/components/resources/ResourceViewModeToggle.js.map +1 -1
  678. package/dist/esm/components/resources/collection-card-layout.utils.d.ts +37 -15
  679. package/dist/esm/components/resources/collection-card-layout.utils.d.ts.map +1 -1
  680. package/dist/esm/components/resources/collection-card-layout.utils.js +37 -15
  681. package/dist/esm/components/resources/collection-card-layout.utils.js.map +1 -1
  682. package/dist/esm/components/resources/collection-selection-bar-density.d.ts +113 -0
  683. package/dist/esm/components/resources/collection-selection-bar-density.d.ts.map +1 -0
  684. package/dist/esm/components/resources/collection-selection-bar-density.js +175 -0
  685. package/dist/esm/components/resources/collection-selection-bar-density.js.map +1 -0
  686. package/dist/esm/components/resources/embeds/EmbeddedResourceDescent.d.ts +2 -1
  687. package/dist/esm/components/resources/embeds/EmbeddedResourceDescent.d.ts.map +1 -1
  688. package/dist/esm/components/resources/embeds/EmbeddedResourceDescent.js.map +1 -1
  689. package/dist/esm/components/resources/embeds/RelatedResourceSections.d.ts.map +1 -1
  690. package/dist/esm/components/resources/embeds/RelatedResourceSections.js +14 -2
  691. package/dist/esm/components/resources/embeds/RelatedResourceSections.js.map +1 -1
  692. package/dist/esm/components/resources/embeds/ResourceEmbeds.d.ts +61 -1
  693. package/dist/esm/components/resources/embeds/ResourceEmbeds.d.ts.map +1 -1
  694. package/dist/esm/components/resources/embeds/ResourceEmbeds.js +151 -15
  695. package/dist/esm/components/resources/embeds/ResourceEmbeds.js.map +1 -1
  696. package/dist/esm/components/resources/embeds/child-operation-addressability.utils.d.ts +11 -0
  697. package/dist/esm/components/resources/embeds/child-operation-addressability.utils.d.ts.map +1 -1
  698. package/dist/esm/components/resources/embeds/child-operation-addressability.utils.js +13 -0
  699. package/dist/esm/components/resources/embeds/child-operation-addressability.utils.js.map +1 -1
  700. package/dist/esm/components/resources/embeds/useEmbeddedResourceContext.d.ts +24 -1
  701. package/dist/esm/components/resources/embeds/useEmbeddedResourceContext.d.ts.map +1 -1
  702. package/dist/esm/components/resources/embeds/useEmbeddedResourceContext.js +47 -3
  703. package/dist/esm/components/resources/embeds/useEmbeddedResourceContext.js.map +1 -1
  704. package/dist/esm/components/resources/resource-filter-field-type.frontend.schemas.d.ts +35 -0
  705. package/dist/esm/components/resources/resource-filter-field-type.frontend.schemas.d.ts.map +1 -0
  706. package/dist/esm/components/resources/resource-filter-field-type.frontend.schemas.js +36 -0
  707. package/dist/esm/components/resources/resource-filter-field-type.frontend.schemas.js.map +1 -0
  708. package/dist/esm/components/resources/resource-header-geometry.d.ts +19 -0
  709. package/dist/esm/components/resources/resource-header-geometry.d.ts.map +1 -0
  710. package/dist/esm/components/resources/resource-header-geometry.js +19 -0
  711. package/dist/esm/components/resources/resource-header-geometry.js.map +1 -0
  712. package/dist/esm/components/resources/resourceLayout.utils.d.ts +28 -2
  713. package/dist/esm/components/resources/resourceLayout.utils.d.ts.map +1 -1
  714. package/dist/esm/components/resources/resourceLayout.utils.js +45 -12
  715. package/dist/esm/components/resources/resourceLayout.utils.js.map +1 -1
  716. package/dist/esm/components/resources/skeleton/ArrayField.d.ts.map +1 -1
  717. package/dist/esm/components/resources/skeleton/ArrayField.js +10 -0
  718. package/dist/esm/components/resources/skeleton/ArrayField.js.map +1 -1
  719. package/dist/esm/components/resources/skeleton/DisplayLayout.d.ts +20 -4
  720. package/dist/esm/components/resources/skeleton/DisplayLayout.d.ts.map +1 -1
  721. package/dist/esm/components/resources/skeleton/DisplayLayout.js +19 -2
  722. package/dist/esm/components/resources/skeleton/DisplayLayout.js.map +1 -1
  723. package/dist/esm/components/resources/skeleton/FieldTiles.d.ts +48 -0
  724. package/dist/esm/components/resources/skeleton/FieldTiles.d.ts.map +1 -0
  725. package/dist/esm/components/resources/skeleton/FieldTiles.js +51 -0
  726. package/dist/esm/components/resources/skeleton/FieldTiles.js.map +1 -0
  727. package/dist/esm/components/resources/skeleton/FormLayout.d.ts.map +1 -1
  728. package/dist/esm/components/resources/skeleton/FormLayout.js +2 -1
  729. package/dist/esm/components/resources/skeleton/FormLayout.js.map +1 -1
  730. package/dist/esm/components/resources/skeleton/Group.d.ts.map +1 -1
  731. package/dist/esm/components/resources/skeleton/Group.js +5 -2
  732. package/dist/esm/components/resources/skeleton/Group.js.map +1 -1
  733. package/dist/esm/components/resources/skeleton/ResourceHeaderTitle.d.ts +77 -14
  734. package/dist/esm/components/resources/skeleton/ResourceHeaderTitle.d.ts.map +1 -1
  735. package/dist/esm/components/resources/skeleton/ResourceHeaderTitle.js +98 -25
  736. package/dist/esm/components/resources/skeleton/ResourceHeaderTitle.js.map +1 -1
  737. package/dist/esm/components/resources/skeleton/Section.d.ts +7 -0
  738. package/dist/esm/components/resources/skeleton/Section.d.ts.map +1 -1
  739. package/dist/esm/components/resources/skeleton/Section.js +9 -3
  740. package/dist/esm/components/resources/skeleton/Section.js.map +1 -1
  741. package/dist/esm/components/resources/skeleton/SummaryLayout.d.ts +3 -3
  742. package/dist/esm/components/resources/skeleton/SummaryLayout.js +3 -3
  743. package/dist/esm/components/resources/skeleton/SummaryLayout.js.map +1 -1
  744. package/dist/esm/components/resources/skeleton/WizardLayout.d.ts +7 -5
  745. package/dist/esm/components/resources/skeleton/WizardLayout.d.ts.map +1 -1
  746. package/dist/esm/components/resources/skeleton/WizardLayout.js +176 -65
  747. package/dist/esm/components/resources/skeleton/WizardLayout.js.map +1 -1
  748. package/dist/esm/components/resources/skeleton/WizardLayoutContext.d.ts +9 -1
  749. package/dist/esm/components/resources/skeleton/WizardLayoutContext.d.ts.map +1 -1
  750. package/dist/esm/components/resources/skeleton/WizardLayoutContext.js +7 -0
  751. package/dist/esm/components/resources/skeleton/WizardLayoutContext.js.map +1 -1
  752. package/dist/esm/components/resources/skeleton/WizardStep.d.ts +1 -1
  753. package/dist/esm/components/resources/skeleton/WizardStep.d.ts.map +1 -1
  754. package/dist/esm/components/resources/skeleton/WizardStep.js +9 -5
  755. package/dist/esm/components/resources/skeleton/WizardStep.js.map +1 -1
  756. package/dist/esm/components/resources/skeleton/section-consolidation.utils.d.ts.map +1 -1
  757. package/dist/esm/components/resources/skeleton/section-consolidation.utils.js +31 -2
  758. package/dist/esm/components/resources/skeleton/section-consolidation.utils.js.map +1 -1
  759. package/dist/esm/components/resources-fields/_presets/resource-reference/ResourceFieldDisplayPreset_ResourceReference_Default.d.ts.map +1 -1
  760. package/dist/esm/components/resources-fields/_presets/resource-reference/ResourceFieldDisplayPreset_ResourceReference_Default.js +176 -61
  761. package/dist/esm/components/resources-fields/_presets/resource-reference/ResourceFieldDisplayPreset_ResourceReference_Default.js.map +1 -1
  762. package/dist/esm/components/resources-fields/_presets/resource-reference/ResourceFieldEditPreset_ResourceReference_Default.d.ts.map +1 -1
  763. package/dist/esm/components/resources-fields/_presets/resource-reference/ResourceFieldEditPreset_ResourceReference_Default.js +14 -7
  764. package/dist/esm/components/resources-fields/_presets/resource-reference/ResourceFieldEditPreset_ResourceReference_Default.js.map +1 -1
  765. package/dist/esm/components/resources-fields/_presets/resource-reference/ResourceFieldEditPreset_ResourceReference_Default.labels.d.ts.map +1 -1
  766. package/dist/esm/components/resources-fields/_presets/resource-reference/ResourceFieldEditPreset_ResourceReference_Default.labels.js +18 -1
  767. package/dist/esm/components/resources-fields/_presets/resource-reference/ResourceFieldEditPreset_ResourceReference_Default.labels.js.map +1 -1
  768. package/dist/esm/components/resources-fields/resource-reference/resource-reference.shared.utils.d.ts +8 -0
  769. package/dist/esm/components/resources-fields/resource-reference/resource-reference.shared.utils.d.ts.map +1 -1
  770. package/dist/esm/components/resources-fields/resource-reference/resource-reference.shared.utils.js +3 -0
  771. package/dist/esm/components/resources-fields/resource-reference/resource-reference.shared.utils.js.map +1 -1
  772. package/dist/esm/components/resources-fields/resource-reference/useResourceSearch.d.ts.map +1 -1
  773. package/dist/esm/components/resources-fields/resource-reference/useResourceSearch.js +48 -17
  774. package/dist/esm/components/resources-fields/resource-reference/useResourceSearch.js.map +1 -1
  775. package/dist/esm/components/sections/ContentSectionContainer.d.ts.map +1 -1
  776. package/dist/esm/components/sections/ContentSectionContainer.js +226 -74
  777. package/dist/esm/components/sections/ContentSectionContainer.js.map +1 -1
  778. package/dist/esm/components/sections/ContentSectionContainer.labels.d.ts.map +1 -1
  779. package/dist/esm/components/sections/ContentSectionContainer.labels.js +2 -3
  780. package/dist/esm/components/sections/ContentSectionContainer.labels.js.map +1 -1
  781. package/dist/esm/components/sections/content-section.d.ts +2 -2
  782. package/dist/esm/components/sections/content-section.js.map +1 -1
  783. package/dist/esm/components/sections/section-grouping.shared.d.ts +19 -0
  784. package/dist/esm/components/sections/section-grouping.shared.d.ts.map +1 -1
  785. package/dist/esm/components/sections/section-grouping.shared.js +24 -0
  786. package/dist/esm/components/sections/section-grouping.shared.js.map +1 -1
  787. package/dist/esm/components/sections/section-legend-voice.context.d.ts +19 -0
  788. package/dist/esm/components/sections/section-legend-voice.context.d.ts.map +1 -0
  789. package/dist/esm/components/sections/section-legend-voice.context.js +21 -0
  790. package/dist/esm/components/sections/section-legend-voice.context.js.map +1 -0
  791. package/dist/esm/components/sections/section-legend-voice.d.ts +41 -0
  792. package/dist/esm/components/sections/section-legend-voice.d.ts.map +1 -0
  793. package/dist/esm/components/sections/section-legend-voice.js +67 -0
  794. package/dist/esm/components/sections/section-legend-voice.js.map +1 -0
  795. package/dist/esm/components/sections/stepper.d.ts +14 -0
  796. package/dist/esm/components/sections/stepper.d.ts.map +1 -1
  797. package/dist/esm/components/sections/stepper.js.map +1 -1
  798. package/dist/esm/components/sections/surface.d.ts.map +1 -1
  799. package/dist/esm/components/sections/surface.js +10 -2
  800. package/dist/esm/components/sections/surface.js.map +1 -1
  801. package/dist/esm/components/settings/AppPage_AgentWorkEvaluationExportSettings.d.ts +39 -0
  802. package/dist/esm/components/settings/AppPage_AgentWorkEvaluationExportSettings.d.ts.map +1 -0
  803. package/dist/esm/components/settings/AppPage_AgentWorkEvaluationExportSettings.js +187 -0
  804. package/dist/esm/components/settings/AppPage_AgentWorkEvaluationExportSettings.js.map +1 -0
  805. package/dist/esm/components/settings/AppPage_AgentWorkEvaluationExportSettings.labels.d.ts +3 -0
  806. package/dist/esm/components/settings/AppPage_AgentWorkEvaluationExportSettings.labels.d.ts.map +1 -0
  807. package/dist/esm/components/settings/AppPage_AgentWorkEvaluationExportSettings.labels.js +34 -0
  808. package/dist/esm/components/settings/AppPage_AgentWorkEvaluationExportSettings.labels.js.map +1 -0
  809. package/dist/esm/components/settings/AppPage_AgentWorkOverrideRateSettings.d.ts +1 -1
  810. package/dist/esm/components/settings/AppPage_AgentWorkOverrideRateSettings.js +1 -1
  811. package/dist/esm/components/settings/AppPage_AgentWorkOverrideRateSettings.js.map +1 -1
  812. package/dist/esm/components/settings/AppPage_AgentWorkOverrideRateSettings.labels.js +8 -8
  813. package/dist/esm/components/settings/AppPage_AgentWorkOverrideRateSettings.labels.js.map +1 -1
  814. package/dist/esm/components/settings/AppPage_AutonomousAgentsSettings.d.ts +43 -0
  815. package/dist/esm/components/settings/AppPage_AutonomousAgentsSettings.d.ts.map +1 -0
  816. package/dist/esm/components/settings/AppPage_AutonomousAgentsSettings.js +142 -0
  817. package/dist/esm/components/settings/AppPage_AutonomousAgentsSettings.js.map +1 -0
  818. package/dist/esm/components/settings/AppPage_AutonomousAgentsSettings.labels.d.ts +3 -0
  819. package/dist/esm/components/settings/AppPage_AutonomousAgentsSettings.labels.d.ts.map +1 -0
  820. package/dist/esm/components/settings/AppPage_AutonomousAgentsSettings.labels.js +62 -0
  821. package/dist/esm/components/settings/AppPage_AutonomousAgentsSettings.labels.js.map +1 -0
  822. package/dist/esm/components/settings/AppPage_ConnectedAccountsSettings.d.ts +25 -8
  823. package/dist/esm/components/settings/AppPage_ConnectedAccountsSettings.d.ts.map +1 -1
  824. package/dist/esm/components/settings/AppPage_ConnectedAccountsSettings.js +275 -71
  825. package/dist/esm/components/settings/AppPage_ConnectedAccountsSettings.js.map +1 -1
  826. package/dist/esm/components/settings/AppPage_ConnectedAccountsSettings.labels.d.ts.map +1 -1
  827. package/dist/esm/components/settings/AppPage_ConnectedAccountsSettings.labels.js +91 -14
  828. package/dist/esm/components/settings/AppPage_ConnectedAccountsSettings.labels.js.map +1 -1
  829. package/dist/esm/components/settings/AppPage_InvitationsSettings.d.ts +13 -8
  830. package/dist/esm/components/settings/AppPage_InvitationsSettings.d.ts.map +1 -1
  831. package/dist/esm/components/settings/AppPage_InvitationsSettings.js +95 -23
  832. package/dist/esm/components/settings/AppPage_InvitationsSettings.js.map +1 -1
  833. package/dist/esm/components/settings/AppPage_InvitationsSettings.labels.d.ts.map +1 -1
  834. package/dist/esm/components/settings/AppPage_InvitationsSettings.labels.js +25 -2
  835. package/dist/esm/components/settings/AppPage_InvitationsSettings.labels.js.map +1 -1
  836. package/dist/esm/components/settings/AppPage_ModelCostBreakdownSettings.d.ts +67 -0
  837. package/dist/esm/components/settings/AppPage_ModelCostBreakdownSettings.d.ts.map +1 -0
  838. package/dist/esm/components/settings/AppPage_ModelCostBreakdownSettings.js +177 -0
  839. package/dist/esm/components/settings/AppPage_ModelCostBreakdownSettings.js.map +1 -0
  840. package/dist/esm/components/settings/AppPage_ModelCostBreakdownSettings.labels.d.ts +3 -0
  841. package/dist/esm/components/settings/AppPage_ModelCostBreakdownSettings.labels.d.ts.map +1 -0
  842. package/dist/esm/components/settings/AppPage_ModelCostBreakdownSettings.labels.js +45 -0
  843. package/dist/esm/components/settings/AppPage_ModelCostBreakdownSettings.labels.js.map +1 -0
  844. package/dist/esm/components/settings/AppPage_RepresentativeActivitySettings.d.ts +35 -0
  845. package/dist/esm/components/settings/AppPage_RepresentativeActivitySettings.d.ts.map +1 -0
  846. package/dist/esm/components/settings/AppPage_RepresentativeActivitySettings.js +137 -0
  847. package/dist/esm/components/settings/AppPage_RepresentativeActivitySettings.js.map +1 -0
  848. package/dist/esm/components/settings/AppPage_RepresentativeActivitySettings.labels.d.ts +3 -0
  849. package/dist/esm/components/settings/AppPage_RepresentativeActivitySettings.labels.d.ts.map +1 -0
  850. package/dist/esm/components/settings/AppPage_RepresentativeActivitySettings.labels.js +38 -0
  851. package/dist/esm/components/settings/AppPage_RepresentativeActivitySettings.labels.js.map +1 -0
  852. package/dist/esm/components/settings/SettingsHub.d.ts +3 -3
  853. package/dist/esm/components/settings/SettingsHub.d.ts.map +1 -1
  854. package/dist/esm/components/settings/SettingsHub.js +98 -48
  855. package/dist/esm/components/settings/SettingsHub.js.map +1 -1
  856. package/dist/esm/components/settings/SettingsHub.labels.d.ts.map +1 -1
  857. package/dist/esm/components/settings/SettingsHub.labels.js +2 -0
  858. package/dist/esm/components/settings/SettingsHub.labels.js.map +1 -1
  859. package/dist/esm/components/settings/SettingsResourceOperationPanel.d.ts.map +1 -1
  860. package/dist/esm/components/settings/SettingsResourceOperationPanel.js +21 -1
  861. package/dist/esm/components/settings/SettingsResourceOperationPanel.js.map +1 -1
  862. package/dist/esm/components/settings/useOwnerProviderConnections.d.ts +24 -5
  863. package/dist/esm/components/settings/useOwnerProviderConnections.d.ts.map +1 -1
  864. package/dist/esm/components/settings/useOwnerProviderConnections.js +67 -9
  865. package/dist/esm/components/settings/useOwnerProviderConnections.js.map +1 -1
  866. package/dist/esm/components/views/chart-view/ChartView.js +3 -3
  867. package/dist/esm/components/views/chart-view/ChartView.js.map +1 -1
  868. package/dist/esm/components/views/chart-view/chart-export.utils.d.ts.map +1 -1
  869. package/dist/esm/components/views/chart-view/chart-export.utils.js +2 -9
  870. package/dist/esm/components/views/chart-view/chart-export.utils.js.map +1 -1
  871. package/dist/esm/components/views/chart-view/enum-color-bridge.d.ts +1 -0
  872. package/dist/esm/components/views/chart-view/enum-color-bridge.d.ts.map +1 -1
  873. package/dist/esm/components/views/chart-view/enum-color-bridge.js +10 -1
  874. package/dist/esm/components/views/chart-view/enum-color-bridge.js.map +1 -1
  875. package/dist/esm/components/views/chart-view/option-builder/builder-utils.d.ts +8 -6
  876. package/dist/esm/components/views/chart-view/option-builder/builder-utils.d.ts.map +1 -1
  877. package/dist/esm/components/views/chart-view/option-builder/builder-utils.js +10 -8
  878. package/dist/esm/components/views/chart-view/option-builder/builder-utils.js.map +1 -1
  879. package/dist/esm/components/views/chart-view/option-builder/builders/bar-family.builder.js +2 -2
  880. package/dist/esm/components/views/chart-view/option-builder/builders/bar-family.builder.js.map +1 -1
  881. package/dist/esm/components/views/chart-view/option-builder/builders/composed.builder.js +1 -1
  882. package/dist/esm/components/views/chart-view/option-builder/builders/composed.builder.js.map +1 -1
  883. package/dist/esm/components/views/chart-view/option-builder/builders/line-family.builder.js +1 -1
  884. package/dist/esm/components/views/chart-view/option-builder/builders/line-family.builder.js.map +1 -1
  885. package/dist/esm/components/views/chart-view/option-builder/builders/scatter-family.builder.js +1 -1
  886. package/dist/esm/components/views/chart-view/option-builder/builders/scatter-family.builder.js.map +1 -1
  887. package/dist/esm/components/views/chart-view/option-builder/chart-type-builder.interface.d.ts +6 -0
  888. package/dist/esm/components/views/chart-view/option-builder/chart-type-builder.interface.d.ts.map +1 -1
  889. package/dist/esm/components/views/chart-view/option-builder/chart-type-builder.interface.js.map +1 -1
  890. package/dist/esm/components/views/chart-view/option-builder/echarts-option-builder.d.ts +3 -1
  891. package/dist/esm/components/views/chart-view/option-builder/echarts-option-builder.d.ts.map +1 -1
  892. package/dist/esm/components/views/chart-view/option-builder/echarts-option-builder.js +4 -1
  893. package/dist/esm/components/views/chart-view/option-builder/echarts-option-builder.js.map +1 -1
  894. package/dist/esm/components/views/composite-view/CompositeLayout.d.ts +0 -1
  895. package/dist/esm/components/views/composite-view/CompositeLayout.d.ts.map +1 -1
  896. package/dist/esm/components/views/composite-view/CompositeLayout.js.map +1 -1
  897. package/dist/esm/components/views/composite-view/useCompositeResourceOperationContextBuilder.d.ts.map +1 -1
  898. package/dist/esm/components/views/composite-view/useCompositeResourceOperationContextBuilder.js +24 -1
  899. package/dist/esm/components/views/composite-view/useCompositeResourceOperationContextBuilder.js.map +1 -1
  900. package/dist/esm/components/views/flows-actors-view/AgentReplyReportAction.d.ts +29 -0
  901. package/dist/esm/components/views/flows-actors-view/AgentReplyReportAction.d.ts.map +1 -0
  902. package/dist/esm/components/views/flows-actors-view/AgentReplyReportAction.js +104 -0
  903. package/dist/esm/components/views/flows-actors-view/AgentReplyReportAction.js.map +1 -0
  904. package/dist/esm/components/views/flows-actors-view/FlowsActorsView.d.ts +16 -5
  905. package/dist/esm/components/views/flows-actors-view/FlowsActorsView.d.ts.map +1 -1
  906. package/dist/esm/components/views/flows-actors-view/FlowsActorsView.js +219 -230
  907. package/dist/esm/components/views/flows-actors-view/FlowsActorsView.js.map +1 -1
  908. package/dist/esm/components/views/flows-actors-view/FlowsActorsView.labels.d.ts +5 -0
  909. package/dist/esm/components/views/flows-actors-view/FlowsActorsView.labels.d.ts.map +1 -1
  910. package/dist/esm/components/views/flows-actors-view/FlowsActorsView.labels.js +15 -13
  911. package/dist/esm/components/views/flows-actors-view/FlowsActorsView.labels.js.map +1 -1
  912. package/dist/esm/components/views/flows-actors-view/held-conversation-selection.d.ts +13 -0
  913. package/dist/esm/components/views/flows-actors-view/held-conversation-selection.d.ts.map +1 -0
  914. package/dist/esm/components/views/flows-actors-view/held-conversation-selection.js +44 -0
  915. package/dist/esm/components/views/flows-actors-view/held-conversation-selection.js.map +1 -0
  916. package/dist/esm/core/app-shell/AppShellBuildingBlocks.d.ts.map +1 -1
  917. package/dist/esm/core/app-shell/AppShellBuildingBlocks.js +6 -2
  918. package/dist/esm/core/app-shell/AppShellBuildingBlocks.js.map +1 -1
  919. package/dist/esm/core/app-shell/app-shell.schemas.d.ts +64 -9
  920. package/dist/esm/core/app-shell/app-shell.schemas.d.ts.map +1 -1
  921. package/dist/esm/core/app-shell/app-shell.schemas.js.map +1 -1
  922. package/dist/esm/core/app-shell/hosted-components.utils.d.ts +11 -1
  923. package/dist/esm/core/app-shell/hosted-components.utils.d.ts.map +1 -1
  924. package/dist/esm/core/app-shell/hosted-components.utils.js +25 -0
  925. package/dist/esm/core/app-shell/hosted-components.utils.js.map +1 -1
  926. package/dist/esm/core/app-shell/shell-layout.d.ts +138 -0
  927. package/dist/esm/core/app-shell/shell-layout.d.ts.map +1 -0
  928. package/dist/esm/core/app-shell/shell-layout.js +143 -0
  929. package/dist/esm/core/app-shell/shell-layout.js.map +1 -0
  930. package/dist/esm/core/app-shell/shell-motion/shell-layout-stylesheet.d.ts +13 -0
  931. package/dist/esm/core/app-shell/shell-motion/shell-layout-stylesheet.d.ts.map +1 -0
  932. package/dist/esm/core/app-shell/shell-motion/shell-layout-stylesheet.js +49 -0
  933. package/dist/esm/core/app-shell/shell-motion/shell-layout-stylesheet.js.map +1 -0
  934. package/dist/esm/core/app-shell/shell-motion/shell-motion-origins.d.ts +95 -0
  935. package/dist/esm/core/app-shell/shell-motion/shell-motion-origins.d.ts.map +1 -0
  936. package/dist/esm/core/app-shell/shell-motion/shell-motion-origins.js +316 -0
  937. package/dist/esm/core/app-shell/shell-motion/shell-motion-origins.js.map +1 -0
  938. package/dist/esm/core/app-shell/shell-motion/shell-motion-vocabulary.d.ts +217 -0
  939. package/dist/esm/core/app-shell/shell-motion/shell-motion-vocabulary.d.ts.map +1 -0
  940. package/dist/esm/core/app-shell/shell-motion/shell-motion-vocabulary.js +197 -0
  941. package/dist/esm/core/app-shell/shell-motion/shell-motion-vocabulary.js.map +1 -0
  942. package/dist/esm/core/app-shell/shell-motion/shell-view-transition.d.ts +46 -0
  943. package/dist/esm/core/app-shell/shell-motion/shell-view-transition.d.ts.map +1 -0
  944. package/dist/esm/core/app-shell/shell-motion/shell-view-transition.js +139 -0
  945. package/dist/esm/core/app-shell/shell-motion/shell-view-transition.js.map +1 -0
  946. package/dist/esm/core/app-shell/shell-motion/use-shell-motion.d.ts +108 -0
  947. package/dist/esm/core/app-shell/shell-motion/use-shell-motion.d.ts.map +1 -0
  948. package/dist/esm/core/app-shell/shell-motion/use-shell-motion.js +423 -0
  949. package/dist/esm/core/app-shell/shell-motion/use-shell-motion.js.map +1 -0
  950. package/dist/esm/core/app-shell/useAppShellLayout.d.ts.map +1 -1
  951. package/dist/esm/core/app-shell/useAppShellLayout.js +6 -1
  952. package/dist/esm/core/app-shell/useAppShellLayout.js.map +1 -1
  953. package/dist/esm/core/app-shell/usePublicShellLayout.d.ts.map +1 -1
  954. package/dist/esm/core/app-shell/usePublicShellLayout.js +11 -4
  955. package/dist/esm/core/app-shell/usePublicShellLayout.js.map +1 -1
  956. package/dist/esm/core/automated-layout/automated-layout.frontend.utils.d.ts +18 -1
  957. package/dist/esm/core/automated-layout/automated-layout.frontend.utils.d.ts.map +1 -1
  958. package/dist/esm/core/automated-layout/automated-layout.frontend.utils.js +26 -4
  959. package/dist/esm/core/automated-layout/automated-layout.frontend.utils.js.map +1 -1
  960. package/dist/esm/core/automated-layout/composite-value-defaults.frontend.utils.d.ts.map +1 -1
  961. package/dist/esm/core/automated-layout/composite-value-defaults.frontend.utils.js +3 -22
  962. package/dist/esm/core/automated-layout/composite-value-defaults.frontend.utils.js.map +1 -1
  963. package/dist/esm/core/automated-layout/default-layout-generator.frontend.utils.d.ts +19 -3
  964. package/dist/esm/core/automated-layout/default-layout-generator.frontend.utils.d.ts.map +1 -1
  965. package/dist/esm/core/automated-layout/default-layout-generator.frontend.utils.js +100 -13
  966. package/dist/esm/core/automated-layout/default-layout-generator.frontend.utils.js.map +1 -1
  967. package/dist/esm/core/automated-layout/summary-value-naming.utils.d.ts +67 -0
  968. package/dist/esm/core/automated-layout/summary-value-naming.utils.d.ts.map +1 -0
  969. package/dist/esm/core/automated-layout/summary-value-naming.utils.js +100 -0
  970. package/dist/esm/core/automated-layout/summary-value-naming.utils.js.map +1 -0
  971. package/dist/esm/core/billing/BillingContext.d.ts +0 -17
  972. package/dist/esm/core/billing/BillingContext.d.ts.map +1 -1
  973. package/dist/esm/core/billing/BillingContext.js +6 -1
  974. package/dist/esm/core/billing/BillingContext.js.map +1 -1
  975. package/dist/esm/core/branding/OrganizationBrandingPublisher.d.ts +2 -0
  976. package/dist/esm/core/branding/OrganizationBrandingPublisher.d.ts.map +1 -0
  977. package/dist/esm/core/branding/OrganizationBrandingPublisher.js +78 -0
  978. package/dist/esm/core/branding/OrganizationBrandingPublisher.js.map +1 -0
  979. package/dist/esm/core/branding/useBrandIdentity.d.ts +21 -0
  980. package/dist/esm/core/branding/useBrandIdentity.d.ts.map +1 -1
  981. package/dist/esm/core/branding/useBrandIdentity.js +31 -5
  982. package/dist/esm/core/branding/useBrandIdentity.js.map +1 -1
  983. package/dist/esm/core/branding/useBrandPresentation.d.ts +5 -0
  984. package/dist/esm/core/branding/useBrandPresentation.d.ts.map +1 -1
  985. package/dist/esm/core/branding/useBrandPresentation.js +1 -0
  986. package/dist/esm/core/branding/useBrandPresentation.js.map +1 -1
  987. package/dist/esm/core/branding/useDisplayableImageUrl.d.ts +4 -0
  988. package/dist/esm/core/branding/useDisplayableImageUrl.d.ts.map +1 -0
  989. package/dist/esm/core/branding/useDisplayableImageUrl.js +66 -0
  990. package/dist/esm/core/branding/useDisplayableImageUrl.js.map +1 -0
  991. package/dist/esm/core/branding/useOrganizationDocumentTitle.d.ts +2 -0
  992. package/dist/esm/core/branding/useOrganizationDocumentTitle.d.ts.map +1 -0
  993. package/dist/esm/core/branding/useOrganizationDocumentTitle.js +23 -0
  994. package/dist/esm/core/branding/useOrganizationDocumentTitle.js.map +1 -0
  995. package/dist/esm/core/commons/save-blob-as-file.frontend.utils.d.ts +16 -0
  996. package/dist/esm/core/commons/save-blob-as-file.frontend.utils.d.ts.map +1 -0
  997. package/dist/esm/core/commons/save-blob-as-file.frontend.utils.js +35 -0
  998. package/dist/esm/core/commons/save-blob-as-file.frontend.utils.js.map +1 -0
  999. package/dist/esm/core/components-registry/assert-registry-completeness.frontend.helper.d.ts.map +1 -1
  1000. package/dist/esm/core/components-registry/assert-registry-completeness.frontend.helper.js +8 -0
  1001. package/dist/esm/core/components-registry/assert-registry-completeness.frontend.helper.js.map +1 -1
  1002. package/dist/esm/core/components-registry/component-resolver.frontend.helper.d.ts.map +1 -1
  1003. package/dist/esm/core/components-registry/component-resolver.frontend.helper.js +34 -5
  1004. package/dist/esm/core/components-registry/component-resolver.frontend.helper.js.map +1 -1
  1005. package/dist/esm/core/components-registry/register-framework-layouts.d.ts.map +1 -1
  1006. package/dist/esm/core/components-registry/register-framework-layouts.js +4 -0
  1007. package/dist/esm/core/components-registry/register-framework-layouts.js.map +1 -1
  1008. package/dist/esm/core/config/app-configuration-frontend.schemas.d.ts +36 -0
  1009. package/dist/esm/core/config/app-configuration-frontend.schemas.d.ts.map +1 -1
  1010. package/dist/esm/core/config/app-configuration-frontend.schemas.js +29 -2
  1011. package/dist/esm/core/config/app-configuration-frontend.schemas.js.map +1 -1
  1012. package/dist/esm/core/config/app-level-components.frontend.schemas.d.ts +10 -16
  1013. package/dist/esm/core/config/app-level-components.frontend.schemas.d.ts.map +1 -1
  1014. package/dist/esm/core/config/app-level-components.frontend.schemas.js +10 -16
  1015. package/dist/esm/core/config/app-level-components.frontend.schemas.js.map +1 -1
  1016. package/dist/esm/core/config/chart-view.frontend.schemas.d.ts +12 -8
  1017. package/dist/esm/core/config/chart-view.frontend.schemas.d.ts.map +1 -1
  1018. package/dist/esm/core/config/chart-view.frontend.schemas.js +10 -0
  1019. package/dist/esm/core/config/chart-view.frontend.schemas.js.map +1 -1
  1020. package/dist/esm/core/config/composite-view.schemas.d.ts +2 -2
  1021. package/dist/esm/core/config/config-merge-utilities.d.ts +31 -3
  1022. package/dist/esm/core/config/config-merge-utilities.d.ts.map +1 -1
  1023. package/dist/esm/core/config/config-merge-utilities.js +61 -7
  1024. package/dist/esm/core/config/config-merge-utilities.js.map +1 -1
  1025. package/dist/esm/core/config/decision-inbox-capability.frontend.utils.d.ts +83 -0
  1026. package/dist/esm/core/config/decision-inbox-capability.frontend.utils.d.ts.map +1 -0
  1027. package/dist/esm/core/config/decision-inbox-capability.frontend.utils.js +100 -0
  1028. package/dist/esm/core/config/decision-inbox-capability.frontend.utils.js.map +1 -0
  1029. package/dist/esm/core/config/directory-provisioning-capabilities.frontend.utils.d.ts +69 -0
  1030. package/dist/esm/core/config/directory-provisioning-capabilities.frontend.utils.d.ts.map +1 -0
  1031. package/dist/esm/core/config/directory-provisioning-capabilities.frontend.utils.js +65 -0
  1032. package/dist/esm/core/config/directory-provisioning-capabilities.frontend.utils.js.map +1 -0
  1033. package/dist/esm/core/config/engine-settings-destinations.d.ts +13 -1
  1034. package/dist/esm/core/config/engine-settings-destinations.d.ts.map +1 -1
  1035. package/dist/esm/core/config/engine-settings-destinations.js +588 -155
  1036. package/dist/esm/core/config/engine-settings-destinations.js.map +1 -1
  1037. package/dist/esm/core/config/execution-view.schemas.d.ts +17 -3
  1038. package/dist/esm/core/config/execution-view.schemas.d.ts.map +1 -1
  1039. package/dist/esm/core/config/execution-view.schemas.js +1 -1
  1040. package/dist/esm/core/config/execution-view.schemas.js.map +1 -1
  1041. package/dist/esm/core/config/flows-actors-view.schemas.d.ts +12 -2
  1042. package/dist/esm/core/config/flows-actors-view.schemas.d.ts.map +1 -1
  1043. package/dist/esm/core/config/flows-actors-view.schemas.js +13 -1
  1044. package/dist/esm/core/config/flows-actors-view.schemas.js.map +1 -1
  1045. package/dist/esm/core/config/inserted-view-launcher.schemas.d.ts +12 -11
  1046. package/dist/esm/core/config/inserted-view-launcher.schemas.d.ts.map +1 -1
  1047. package/dist/esm/core/config/inserted-view-launcher.schemas.js +14 -13
  1048. package/dist/esm/core/config/inserted-view-launcher.schemas.js.map +1 -1
  1049. package/dist/esm/core/config/launcher-items.frontend.schemas.d.ts +77 -27
  1050. package/dist/esm/core/config/launcher-items.frontend.schemas.d.ts.map +1 -1
  1051. package/dist/esm/core/config/launcher-items.frontend.schemas.js +18 -13
  1052. package/dist/esm/core/config/launcher-items.frontend.schemas.js.map +1 -1
  1053. package/dist/esm/core/config/relationship-side-capabilities.frontend.utils.d.ts +79 -0
  1054. package/dist/esm/core/config/relationship-side-capabilities.frontend.utils.d.ts.map +1 -0
  1055. package/dist/esm/core/config/relationship-side-capabilities.frontend.utils.js +95 -0
  1056. package/dist/esm/core/config/relationship-side-capabilities.frontend.utils.js.map +1 -0
  1057. package/dist/esm/core/config/settings-hub-gating.frontend.utils.d.ts +19 -7
  1058. package/dist/esm/core/config/settings-hub-gating.frontend.utils.d.ts.map +1 -1
  1059. package/dist/esm/core/config/settings-hub-gating.frontend.utils.js +45 -10
  1060. package/dist/esm/core/config/settings-hub-gating.frontend.utils.js.map +1 -1
  1061. package/dist/esm/core/config/settings-hub-presentation.frontend.utils.d.ts +2 -2
  1062. package/dist/esm/core/config/settings-hub-presentation.frontend.utils.d.ts.map +1 -1
  1063. package/dist/esm/core/config/settings-hub-presentation.frontend.utils.js +38 -5
  1064. package/dist/esm/core/config/settings-hub-presentation.frontend.utils.js.map +1 -1
  1065. package/dist/esm/core/config/settings-hub.frontend.schemas.d.ts +94 -10
  1066. package/dist/esm/core/config/settings-hub.frontend.schemas.d.ts.map +1 -1
  1067. package/dist/esm/core/config/settings-hub.frontend.schemas.js +40 -3
  1068. package/dist/esm/core/config/settings-hub.frontend.schemas.js.map +1 -1
  1069. package/dist/esm/core/config/useSettingsHubConfig.d.ts.map +1 -1
  1070. package/dist/esm/core/config/useSettingsHubConfig.js +4 -1
  1071. package/dist/esm/core/config/useSettingsHubConfig.js.map +1 -1
  1072. package/dist/esm/core/config/useVisibleSettingsHubConfig.d.ts +2 -2
  1073. package/dist/esm/core/config/useVisibleSettingsHubConfig.d.ts.map +1 -1
  1074. package/dist/esm/core/config/useVisibleSettingsHubConfig.js +7 -8
  1075. package/dist/esm/core/config/useVisibleSettingsHubConfig.js.map +1 -1
  1076. package/dist/esm/core/config/verify-launcher-content.d.ts +16 -2
  1077. package/dist/esm/core/config/verify-launcher-content.d.ts.map +1 -1
  1078. package/dist/esm/core/config/verify-launcher-content.js +64 -4
  1079. package/dist/esm/core/config/verify-launcher-content.js.map +1 -1
  1080. package/dist/esm/core/config/verify-settings-hub-content.d.ts +4 -0
  1081. package/dist/esm/core/config/verify-settings-hub-content.d.ts.map +1 -1
  1082. package/dist/esm/core/config/verify-settings-hub-content.js +34 -0
  1083. package/dist/esm/core/config/verify-settings-hub-content.js.map +1 -1
  1084. package/dist/esm/core/enums/common-enum-registry.d.ts +16 -23
  1085. package/dist/esm/core/enums/common-enum-registry.d.ts.map +1 -1
  1086. package/dist/esm/core/enums/common-enum-registry.js +26 -29
  1087. package/dist/esm/core/enums/common-enum-registry.js.map +1 -1
  1088. package/dist/esm/core/errors/GlobalErrorHandler.d.ts.map +1 -1
  1089. package/dist/esm/core/errors/GlobalErrorHandler.js +71 -9
  1090. package/dist/esm/core/errors/GlobalErrorHandler.js.map +1 -1
  1091. package/dist/esm/core/errors/error-management.frontend.service.d.ts +0 -4
  1092. package/dist/esm/core/errors/error-management.frontend.service.d.ts.map +1 -1
  1093. package/dist/esm/core/errors/error-management.frontend.service.js +5 -8
  1094. package/dist/esm/core/errors/error-management.frontend.service.js.map +1 -1
  1095. package/dist/esm/core/errors/errors.frontend.schemas.d.ts +21 -10
  1096. package/dist/esm/core/errors/errors.frontend.schemas.d.ts.map +1 -1
  1097. package/dist/esm/core/errors/errors.frontend.schemas.js.map +1 -1
  1098. package/dist/esm/core/errors/user-facing-error-message.frontend.utils.d.ts +35 -0
  1099. package/dist/esm/core/errors/user-facing-error-message.frontend.utils.d.ts.map +1 -1
  1100. package/dist/esm/core/errors/user-facing-error-message.frontend.utils.js +44 -5
  1101. package/dist/esm/core/errors/user-facing-error-message.frontend.utils.js.map +1 -1
  1102. package/dist/esm/core/events/EventBusContext.js.map +1 -1
  1103. package/dist/esm/core/events/NotificationContext.d.ts +13 -1
  1104. package/dist/esm/core/events/NotificationContext.d.ts.map +1 -1
  1105. package/dist/esm/core/events/NotificationContext.js +89 -22
  1106. package/dist/esm/core/events/NotificationContext.js.map +1 -1
  1107. package/dist/esm/core/events/events.frontend.schemas.d.ts +68 -4
  1108. package/dist/esm/core/events/events.frontend.schemas.d.ts.map +1 -1
  1109. package/dist/esm/core/events/events.frontend.schemas.js +67 -3
  1110. package/dist/esm/core/events/events.frontend.schemas.js.map +1 -1
  1111. package/dist/esm/core/events/useNotificationPreferenceKinds.d.ts +9 -0
  1112. package/dist/esm/core/events/useNotificationPreferenceKinds.d.ts.map +1 -0
  1113. package/dist/esm/core/events/useNotificationPreferenceKinds.js +50 -0
  1114. package/dist/esm/core/events/useNotificationPreferenceKinds.js.map +1 -0
  1115. package/dist/esm/core/execution/useExecution.js +1 -1
  1116. package/dist/esm/core/execution/useExecution.js.map +1 -1
  1117. package/dist/esm/core/execution/useExecutionParticipationRMM.d.ts.map +1 -1
  1118. package/dist/esm/core/execution/useExecutionParticipationRMM.js +4 -0
  1119. package/dist/esm/core/execution/useExecutionParticipationRMM.js.map +1 -1
  1120. package/dist/esm/core/execution/useExecutionResourceOperationSurface.d.ts.map +1 -1
  1121. package/dist/esm/core/execution/useExecutionResourceOperationSurface.js +3 -3
  1122. package/dist/esm/core/execution/useExecutionResourceOperationSurface.js.map +1 -1
  1123. package/dist/esm/core/external-providers/chat-sign-in-completion.frontend.d.ts +52 -0
  1124. package/dist/esm/core/external-providers/chat-sign-in-completion.frontend.d.ts.map +1 -0
  1125. package/dist/esm/core/external-providers/chat-sign-in-completion.frontend.js +88 -0
  1126. package/dist/esm/core/external-providers/chat-sign-in-completion.frontend.js.map +1 -0
  1127. package/dist/esm/core/external-providers/frontend-provider-registry.frontend.service.d.ts +20 -2
  1128. package/dist/esm/core/external-providers/frontend-provider-registry.frontend.service.d.ts.map +1 -1
  1129. package/dist/esm/core/external-providers/frontend-provider-registry.frontend.service.js +18 -1
  1130. package/dist/esm/core/external-providers/frontend-provider-registry.frontend.service.js.map +1 -1
  1131. package/dist/esm/core/external-providers/provider-scope-reauthorization-offers.frontend.d.ts +7 -5
  1132. package/dist/esm/core/external-providers/provider-scope-reauthorization-offers.frontend.d.ts.map +1 -1
  1133. package/dist/esm/core/external-providers/provider-scope-reauthorization-offers.frontend.js +9 -6
  1134. package/dist/esm/core/external-providers/provider-scope-reauthorization-offers.frontend.js.map +1 -1
  1135. package/dist/esm/core/features/FeaturesContext.d.ts +9 -1
  1136. package/dist/esm/core/features/FeaturesContext.d.ts.map +1 -1
  1137. package/dist/esm/core/features/FeaturesContext.js +38 -12
  1138. package/dist/esm/core/features/FeaturesContext.js.map +1 -1
  1139. package/dist/esm/core/features/useOperationFeatureAvailability.d.ts.map +1 -1
  1140. package/dist/esm/core/features/useOperationFeatureAvailability.js +4 -0
  1141. package/dist/esm/core/features/useOperationFeatureAvailability.js.map +1 -1
  1142. package/dist/esm/core/flows-actors/FlowsActorsContext.d.ts +90 -33
  1143. package/dist/esm/core/flows-actors/FlowsActorsContext.d.ts.map +1 -1
  1144. package/dist/esm/core/flows-actors/FlowsActorsContext.js +153 -100
  1145. package/dist/esm/core/flows-actors/FlowsActorsContext.js.map +1 -1
  1146. package/dist/esm/core/flows-actors/conversation-history.model.d.ts +41 -0
  1147. package/dist/esm/core/flows-actors/conversation-history.model.d.ts.map +1 -0
  1148. package/dist/esm/core/flows-actors/conversation-history.model.js +65 -0
  1149. package/dist/esm/core/flows-actors/conversation-history.model.js.map +1 -0
  1150. package/dist/esm/core/flows-actors/conversation-thread.model.d.ts +144 -0
  1151. package/dist/esm/core/flows-actors/conversation-thread.model.d.ts.map +1 -0
  1152. package/dist/esm/core/flows-actors/conversation-thread.model.js +315 -0
  1153. package/dist/esm/core/flows-actors/conversation-thread.model.js.map +1 -0
  1154. package/dist/esm/core/flows-actors/execution-usages-batch.frontend.utils.d.ts +29 -0
  1155. package/dist/esm/core/flows-actors/execution-usages-batch.frontend.utils.d.ts.map +1 -0
  1156. package/dist/esm/core/flows-actors/execution-usages-batch.frontend.utils.js +67 -0
  1157. package/dist/esm/core/flows-actors/execution-usages-batch.frontend.utils.js.map +1 -0
  1158. package/dist/esm/core/flows-actors/graph-view.layout.d.ts +77 -0
  1159. package/dist/esm/core/flows-actors/graph-view.layout.d.ts.map +1 -0
  1160. package/dist/esm/core/flows-actors/graph-view.layout.js +169 -0
  1161. package/dist/esm/core/flows-actors/graph-view.layout.js.map +1 -0
  1162. package/dist/esm/core/flows-actors/graph-view.model.d.ts +245 -0
  1163. package/dist/esm/core/flows-actors/graph-view.model.d.ts.map +1 -0
  1164. package/dist/esm/core/flows-actors/graph-view.model.js +414 -0
  1165. package/dist/esm/core/flows-actors/graph-view.model.js.map +1 -0
  1166. package/dist/esm/core/flows-actors/model-cost-money.frontend.utils.d.ts +12 -0
  1167. package/dist/esm/core/flows-actors/model-cost-money.frontend.utils.d.ts.map +1 -0
  1168. package/dist/esm/core/flows-actors/model-cost-money.frontend.utils.js +20 -0
  1169. package/dist/esm/core/flows-actors/model-cost-money.frontend.utils.js.map +1 -0
  1170. package/dist/esm/core/flows-actors/usePendingDecisions.d.ts +36 -11
  1171. package/dist/esm/core/flows-actors/usePendingDecisions.d.ts.map +1 -1
  1172. package/dist/esm/core/flows-actors/usePendingDecisions.js +114 -29
  1173. package/dist/esm/core/flows-actors/usePendingDecisions.js.map +1 -1
  1174. package/dist/esm/core/guidance/GuidanceContext.d.ts.map +1 -1
  1175. package/dist/esm/core/guidance/GuidanceContext.js +1 -2
  1176. package/dist/esm/core/guidance/GuidanceContext.js.map +1 -1
  1177. package/dist/esm/core/guidance/renderers/GuidanceChecklist.labels.js +2 -2
  1178. package/dist/esm/core/guidance/renderers/GuidanceChecklist.labels.js.map +1 -1
  1179. package/dist/esm/core/hotkey/DefaultHotkeyHandler.d.ts +3 -9
  1180. package/dist/esm/core/hotkey/DefaultHotkeyHandler.d.ts.map +1 -1
  1181. package/dist/esm/core/hotkey/DefaultHotkeyHandler.js +3 -15
  1182. package/dist/esm/core/hotkey/DefaultHotkeyHandler.js.map +1 -1
  1183. package/dist/esm/core/hotkey/merge-hotkey-emit-shortcuts.d.ts +2 -2
  1184. package/dist/esm/core/hotkey/merge-hotkey-emit-shortcuts.js +2 -2
  1185. package/dist/esm/core/hotkey/merge-hotkey-emit-shortcuts.js.map +1 -1
  1186. package/dist/esm/core/i18n/I18nContext.d.ts +52 -3
  1187. package/dist/esm/core/i18n/I18nContext.d.ts.map +1 -1
  1188. package/dist/esm/core/i18n/I18nContext.js +80 -7
  1189. package/dist/esm/core/i18n/I18nContext.js.map +1 -1
  1190. package/dist/esm/core/i18n/regional-preference-resolution.frontend.utils.d.ts +82 -1
  1191. package/dist/esm/core/i18n/regional-preference-resolution.frontend.utils.d.ts.map +1 -1
  1192. package/dist/esm/core/i18n/regional-preference-resolution.frontend.utils.js +121 -6
  1193. package/dist/esm/core/i18n/regional-preference-resolution.frontend.utils.js.map +1 -1
  1194. package/dist/esm/core/i18n/useI18n.d.ts +3 -1
  1195. package/dist/esm/core/i18n/useI18n.d.ts.map +1 -1
  1196. package/dist/esm/core/i18n/useI18n.js +3 -1
  1197. package/dist/esm/core/i18n/useI18n.js.map +1 -1
  1198. package/dist/esm/core/icons/IconRegistryBridge.d.ts +38 -4
  1199. package/dist/esm/core/icons/IconRegistryBridge.d.ts.map +1 -1
  1200. package/dist/esm/core/icons/IconRegistryBridge.js +103 -63
  1201. package/dist/esm/core/icons/IconRegistryBridge.js.map +1 -1
  1202. package/dist/esm/core/icons/IconRegistryContext.d.ts.map +1 -1
  1203. package/dist/esm/core/icons/IconRegistryContext.js +41 -0
  1204. package/dist/esm/core/icons/IconRegistryContext.js.map +1 -1
  1205. package/dist/esm/core/icons/icon-registry.frontend.schemas.d.ts +44 -0
  1206. package/dist/esm/core/icons/icon-registry.frontend.schemas.d.ts.map +1 -1
  1207. package/dist/esm/core/icons/icon-registry.frontend.schemas.js +46 -0
  1208. package/dist/esm/core/icons/icon-registry.frontend.schemas.js.map +1 -1
  1209. package/dist/esm/core/monitoring/analytics/providers/backend-proxy-analytics.provider.js +2 -2
  1210. package/dist/esm/core/monitoring/analytics/providers/backend-proxy-analytics.provider.js.map +1 -1
  1211. package/dist/esm/core/navigation/NavigationContentAreas.d.ts +64 -20
  1212. package/dist/esm/core/navigation/NavigationContentAreas.d.ts.map +1 -1
  1213. package/dist/esm/core/navigation/NavigationContentAreas.js +82 -51
  1214. package/dist/esm/core/navigation/NavigationContentAreas.js.map +1 -1
  1215. package/dist/esm/core/navigation/NavigationContext.d.ts.map +1 -1
  1216. package/dist/esm/core/navigation/NavigationContext.js +130 -23
  1217. package/dist/esm/core/navigation/NavigationContext.js.map +1 -1
  1218. package/dist/esm/core/navigation/NavigationRequestBridge.d.ts +4 -0
  1219. package/dist/esm/core/navigation/NavigationRequestBridge.d.ts.map +1 -1
  1220. package/dist/esm/core/navigation/NavigationRequestBridge.js +17 -1
  1221. package/dist/esm/core/navigation/NavigationRequestBridge.js.map +1 -1
  1222. package/dist/esm/core/navigation/ZoneChromeContext.d.ts +80 -0
  1223. package/dist/esm/core/navigation/ZoneChromeContext.d.ts.map +1 -0
  1224. package/dist/esm/core/navigation/ZoneChromeContext.js +130 -0
  1225. package/dist/esm/core/navigation/ZoneChromeContext.js.map +1 -0
  1226. package/dist/esm/core/navigation/launcher-resolution.d.ts +102 -2
  1227. package/dist/esm/core/navigation/launcher-resolution.d.ts.map +1 -1
  1228. package/dist/esm/core/navigation/launcher-resolution.js +194 -9
  1229. package/dist/esm/core/navigation/launcher-resolution.js.map +1 -1
  1230. package/dist/esm/core/navigation/launcher-runtime-availability.d.ts +35 -5
  1231. package/dist/esm/core/navigation/launcher-runtime-availability.d.ts.map +1 -1
  1232. package/dist/esm/core/navigation/launcher-runtime-availability.js +147 -18
  1233. package/dist/esm/core/navigation/launcher-runtime-availability.js.map +1 -1
  1234. package/dist/esm/core/navigation/navigation-cascade.d.ts +44 -14
  1235. package/dist/esm/core/navigation/navigation-cascade.d.ts.map +1 -1
  1236. package/dist/esm/core/navigation/navigation-cascade.js +87 -19
  1237. package/dist/esm/core/navigation/navigation-cascade.js.map +1 -1
  1238. package/dist/esm/core/navigation/navigation-commit.d.ts +45 -0
  1239. package/dist/esm/core/navigation/navigation-commit.d.ts.map +1 -0
  1240. package/dist/esm/core/navigation/navigation-commit.js +68 -0
  1241. package/dist/esm/core/navigation/navigation-commit.js.map +1 -0
  1242. package/dist/esm/core/navigation/navigation-controller-internals.d.ts +54 -3
  1243. package/dist/esm/core/navigation/navigation-controller-internals.d.ts.map +1 -1
  1244. package/dist/esm/core/navigation/navigation-controller-internals.js +91 -3
  1245. package/dist/esm/core/navigation/navigation-controller-internals.js.map +1 -1
  1246. package/dist/esm/core/navigation/navigation-policy-resolver.service.d.ts +3 -3
  1247. package/dist/esm/core/navigation/navigation-policy-resolver.service.js +3 -3
  1248. package/dist/esm/core/navigation/navigation-policy-resolver.service.js.map +1 -1
  1249. package/dist/esm/core/navigation/navigation.utils.d.ts +95 -22
  1250. package/dist/esm/core/navigation/navigation.utils.d.ts.map +1 -1
  1251. package/dist/esm/core/navigation/navigation.utils.js +190 -63
  1252. package/dist/esm/core/navigation/navigation.utils.js.map +1 -1
  1253. package/dist/esm/core/navigation/sidebar-resource-browser-operation.d.ts +8 -0
  1254. package/dist/esm/core/navigation/sidebar-resource-browser-operation.d.ts.map +1 -0
  1255. package/dist/esm/core/navigation/sidebar-resource-browser-operation.js +27 -0
  1256. package/dist/esm/core/navigation/sidebar-resource-browser-operation.js.map +1 -0
  1257. package/dist/esm/core/navigation/useCurrentOrganizationHoldsUnrevokedScimToken.d.ts +64 -0
  1258. package/dist/esm/core/navigation/useCurrentOrganizationHoldsUnrevokedScimToken.d.ts.map +1 -0
  1259. package/dist/esm/core/navigation/useCurrentOrganizationHoldsUnrevokedScimToken.js +212 -0
  1260. package/dist/esm/core/navigation/useCurrentOrganizationHoldsUnrevokedScimToken.js.map +1 -0
  1261. package/dist/esm/core/navigation/useLauncherResolutionContext.d.ts +1 -1
  1262. package/dist/esm/core/navigation/useLauncherResolutionContext.d.ts.map +1 -1
  1263. package/dist/esm/core/navigation/useLauncherResolutionContext.js +17 -2
  1264. package/dist/esm/core/navigation/useLauncherResolutionContext.js.map +1 -1
  1265. package/dist/esm/core/navigation/useNavigationController.d.ts +1 -0
  1266. package/dist/esm/core/navigation/useNavigationController.d.ts.map +1 -1
  1267. package/dist/esm/core/navigation/useNavigationController.js +51 -67
  1268. package/dist/esm/core/navigation/useNavigationController.js.map +1 -1
  1269. package/dist/esm/core/navigation/useNavigationRouterSync.d.ts.map +1 -1
  1270. package/dist/esm/core/navigation/useNavigationRouterSync.js +17 -1
  1271. package/dist/esm/core/navigation/useNavigationRouterSync.js.map +1 -1
  1272. package/dist/esm/core/navigation/useZoneEntryOrganizationHold.d.ts +17 -0
  1273. package/dist/esm/core/navigation/useZoneEntryOrganizationHold.d.ts.map +1 -0
  1274. package/dist/esm/core/navigation/useZoneEntryOrganizationHold.js +32 -0
  1275. package/dist/esm/core/navigation/useZoneEntryOrganizationHold.js.map +1 -0
  1276. package/dist/esm/core/navigation/zone-collapse.d.ts +2 -1
  1277. package/dist/esm/core/navigation/zone-collapse.d.ts.map +1 -1
  1278. package/dist/esm/core/navigation/zone-collapse.js +2 -1
  1279. package/dist/esm/core/navigation/zone-collapse.js.map +1 -1
  1280. package/dist/esm/core/navigation/zone-entry-organization.d.ts +34 -0
  1281. package/dist/esm/core/navigation/zone-entry-organization.d.ts.map +1 -0
  1282. package/dist/esm/core/navigation/zone-entry-organization.js +77 -0
  1283. package/dist/esm/core/navigation/zone-entry-organization.js.map +1 -0
  1284. package/dist/esm/core/requests/auth-refresh-resilience.frontend.d.ts +15 -0
  1285. package/dist/esm/core/requests/auth-refresh-resilience.frontend.d.ts.map +1 -1
  1286. package/dist/esm/core/requests/auth-refresh-resilience.frontend.js +24 -0
  1287. package/dist/esm/core/requests/auth-refresh-resilience.frontend.js.map +1 -1
  1288. package/dist/esm/core/requests/automatic-resend-safety.frontend.d.ts +74 -0
  1289. package/dist/esm/core/requests/automatic-resend-safety.frontend.d.ts.map +1 -0
  1290. package/dist/esm/core/requests/automatic-resend-safety.frontend.js +52 -0
  1291. package/dist/esm/core/requests/automatic-resend-safety.frontend.js.map +1 -0
  1292. package/dist/esm/core/requests/websockets/WebSocketContext.d.ts.map +1 -1
  1293. package/dist/esm/core/requests/websockets/WebSocketContext.js +31 -0
  1294. package/dist/esm/core/requests/websockets/WebSocketContext.js.map +1 -1
  1295. package/dist/esm/core/requests/websockets/WebSocketEventBridge.d.ts.map +1 -1
  1296. package/dist/esm/core/requests/websockets/WebSocketEventBridge.js +2 -0
  1297. package/dist/esm/core/requests/websockets/WebSocketEventBridge.js.map +1 -1
  1298. package/dist/esm/core/requests/wildo-http-client-manual-calls.frontend.service.d.ts +162 -98
  1299. package/dist/esm/core/requests/wildo-http-client-manual-calls.frontend.service.d.ts.map +1 -1
  1300. package/dist/esm/core/requests/wildo-http-client-manual-calls.frontend.service.js +283 -157
  1301. package/dist/esm/core/requests/wildo-http-client-manual-calls.frontend.service.js.map +1 -1
  1302. package/dist/esm/core/requests/wildo-http-client-resources.frontend.service.d.ts +9 -13
  1303. package/dist/esm/core/requests/wildo-http-client-resources.frontend.service.d.ts.map +1 -1
  1304. package/dist/esm/core/requests/wildo-http-client-resources.frontend.service.js +45 -97
  1305. package/dist/esm/core/requests/wildo-http-client-resources.frontend.service.js.map +1 -1
  1306. package/dist/esm/core/requests/wildo-http-client.frontend.service.d.ts +25 -5
  1307. package/dist/esm/core/requests/wildo-http-client.frontend.service.d.ts.map +1 -1
  1308. package/dist/esm/core/requests/wildo-http-client.frontend.service.js +56 -11
  1309. package/dist/esm/core/requests/wildo-http-client.frontend.service.js.map +1 -1
  1310. package/dist/esm/core/resources/ScopedResourceRegistryProvider.d.ts.map +1 -1
  1311. package/dist/esm/core/resources/ScopedResourceRegistryProvider.js +1 -2
  1312. package/dist/esm/core/resources/ScopedResourceRegistryProvider.js.map +1 -1
  1313. package/dist/esm/core/resources/calendar-date-fields.frontend.utils.d.ts +14 -0
  1314. package/dist/esm/core/resources/calendar-date-fields.frontend.utils.d.ts.map +1 -0
  1315. package/dist/esm/core/resources/calendar-date-fields.frontend.utils.js +29 -0
  1316. package/dist/esm/core/resources/calendar-date-fields.frontend.utils.js.map +1 -0
  1317. package/dist/esm/core/resources/caller-identity-record.frontend.utils.d.ts +23 -0
  1318. package/dist/esm/core/resources/caller-identity-record.frontend.utils.d.ts.map +1 -0
  1319. package/dist/esm/core/resources/caller-identity-record.frontend.utils.js +26 -0
  1320. package/dist/esm/core/resources/caller-identity-record.frontend.utils.js.map +1 -0
  1321. package/dist/esm/core/resources/collection-export-url.frontend.utils.d.ts +1 -1
  1322. package/dist/esm/core/resources/collection-export-url.frontend.utils.d.ts.map +1 -1
  1323. package/dist/esm/core/resources/collection-export-url.frontend.utils.js +34 -16
  1324. package/dist/esm/core/resources/collection-export-url.frontend.utils.js.map +1 -1
  1325. package/dist/esm/core/resources/collection-filter-presets.frontend.utils.d.ts +54 -11
  1326. package/dist/esm/core/resources/collection-filter-presets.frontend.utils.d.ts.map +1 -1
  1327. package/dist/esm/core/resources/collection-filter-presets.frontend.utils.js +131 -63
  1328. package/dist/esm/core/resources/collection-filter-presets.frontend.utils.js.map +1 -1
  1329. package/dist/esm/core/resources/date-filter-window.frontend.utils.d.ts +58 -0
  1330. package/dist/esm/core/resources/date-filter-window.frontend.utils.d.ts.map +1 -0
  1331. package/dist/esm/core/resources/date-filter-window.frontend.utils.js +70 -0
  1332. package/dist/esm/core/resources/date-filter-window.frontend.utils.js.map +1 -0
  1333. package/dist/esm/core/resources/frontend-resource.utils.d.ts +146 -7
  1334. package/dist/esm/core/resources/frontend-resource.utils.d.ts.map +1 -1
  1335. package/dist/esm/core/resources/frontend-resource.utils.js +194 -22
  1336. package/dist/esm/core/resources/frontend-resource.utils.js.map +1 -1
  1337. package/dist/esm/core/resources/hooks/useOperationEnabled.d.ts +18 -4
  1338. package/dist/esm/core/resources/hooks/useOperationEnabled.d.ts.map +1 -1
  1339. package/dist/esm/core/resources/hooks/useOperationEnabled.js +26 -6
  1340. package/dist/esm/core/resources/hooks/useOperationEnabled.js.map +1 -1
  1341. package/dist/esm/core/resources/operation-semantics.frontend.utils.d.ts +95 -2
  1342. package/dist/esm/core/resources/operation-semantics.frontend.utils.d.ts.map +1 -1
  1343. package/dist/esm/core/resources/operation-semantics.frontend.utils.js +126 -13
  1344. package/dist/esm/core/resources/operation-semantics.frontend.utils.js.map +1 -1
  1345. package/dist/esm/core/resources/read-through-organization-unit.frontend.utils.d.ts +45 -0
  1346. package/dist/esm/core/resources/read-through-organization-unit.frontend.utils.d.ts.map +1 -0
  1347. package/dist/esm/core/resources/read-through-organization-unit.frontend.utils.js +46 -0
  1348. package/dist/esm/core/resources/read-through-organization-unit.frontend.utils.js.map +1 -0
  1349. package/dist/esm/core/resources/referenced-record-scope.frontend.utils.d.ts +46 -0
  1350. package/dist/esm/core/resources/referenced-record-scope.frontend.utils.d.ts.map +1 -0
  1351. package/dist/esm/core/resources/referenced-record-scope.frontend.utils.js +86 -0
  1352. package/dist/esm/core/resources/referenced-record-scope.frontend.utils.js.map +1 -0
  1353. package/dist/esm/core/resources/relationship-quick-create.frontend.utils.d.ts.map +1 -1
  1354. package/dist/esm/core/resources/relationship-quick-create.frontend.utils.js +5 -1
  1355. package/dist/esm/core/resources/relationship-quick-create.frontend.utils.js.map +1 -1
  1356. package/dist/esm/core/resources/resource-addressability.frontend.utils.d.ts +28 -1
  1357. package/dist/esm/core/resources/resource-addressability.frontend.utils.d.ts.map +1 -1
  1358. package/dist/esm/core/resources/resource-addressability.frontend.utils.js +43 -3
  1359. package/dist/esm/core/resources/resource-addressability.frontend.utils.js.map +1 -1
  1360. package/dist/esm/core/resources/resource-discriminators.frontend.utils.d.ts +26 -0
  1361. package/dist/esm/core/resources/resource-discriminators.frontend.utils.d.ts.map +1 -0
  1362. package/dist/esm/core/resources/resource-discriminators.frontend.utils.js +37 -0
  1363. package/dist/esm/core/resources/resource-discriminators.frontend.utils.js.map +1 -0
  1364. package/dist/esm/core/resources/resources-repository.frontend.service.d.ts +40 -8
  1365. package/dist/esm/core/resources/resources-repository.frontend.service.d.ts.map +1 -1
  1366. package/dist/esm/core/resources/resources-repository.frontend.service.js +333 -73
  1367. package/dist/esm/core/resources/resources-repository.frontend.service.js.map +1 -1
  1368. package/dist/esm/core/resources/resources.frontend.schemas.d.ts +175 -65
  1369. package/dist/esm/core/resources/resources.frontend.schemas.d.ts.map +1 -1
  1370. package/dist/esm/core/resources/resources.frontend.schemas.js +245 -75
  1371. package/dist/esm/core/resources/resources.frontend.schemas.js.map +1 -1
  1372. package/dist/esm/core/resources/rmm/HttpTransportAdapter.d.ts +9 -1
  1373. package/dist/esm/core/resources/rmm/HttpTransportAdapter.d.ts.map +1 -1
  1374. package/dist/esm/core/resources/rmm/HttpTransportAdapter.js +57 -22
  1375. package/dist/esm/core/resources/rmm/HttpTransportAdapter.js.map +1 -1
  1376. package/dist/esm/core/resources/rmm/RMMRegistry.d.ts.map +1 -1
  1377. package/dist/esm/core/resources/rmm/RMMRegistry.js +1 -0
  1378. package/dist/esm/core/resources/rmm/RMMRegistry.js.map +1 -1
  1379. package/dist/esm/core/resources/rmm/ResourceMutationManager.d.ts +3 -0
  1380. package/dist/esm/core/resources/rmm/ResourceMutationManager.d.ts.map +1 -1
  1381. package/dist/esm/core/resources/rmm/ResourceMutationManager.js +94 -35
  1382. package/dist/esm/core/resources/rmm/ResourceMutationManager.js.map +1 -1
  1383. package/dist/esm/core/resources/rmm/types.d.ts +58 -6
  1384. package/dist/esm/core/resources/rmm/types.d.ts.map +1 -1
  1385. package/dist/esm/core/resources/rmm/types.js +17 -0
  1386. package/dist/esm/core/resources/rmm/types.js.map +1 -1
  1387. package/dist/esm/core/resources/rmm/update-like-mutation-fallback.frontend.d.ts +43 -6
  1388. package/dist/esm/core/resources/rmm/update-like-mutation-fallback.frontend.d.ts.map +1 -1
  1389. package/dist/esm/core/resources/rmm/update-like-mutation-fallback.frontend.js +49 -6
  1390. package/dist/esm/core/resources/rmm/update-like-mutation-fallback.frontend.js.map +1 -1
  1391. package/dist/esm/core/resources/rmm/useResourceMutationManager.d.ts.map +1 -1
  1392. package/dist/esm/core/resources/rmm/useResourceMutationManager.js +2 -0
  1393. package/dist/esm/core/resources/rmm/useResourceMutationManager.js.map +1 -1
  1394. package/dist/esm/core/resources/rmm/useResourceRMM.d.ts +2 -0
  1395. package/dist/esm/core/resources/rmm/useResourceRMM.d.ts.map +1 -1
  1396. package/dist/esm/core/resources/rmm/useResourceRMM.js +10 -3
  1397. package/dist/esm/core/resources/rmm/useResourceRMM.js.map +1 -1
  1398. package/dist/esm/core/resources/temporal-day-groups.frontend.utils.d.ts +22 -0
  1399. package/dist/esm/core/resources/temporal-day-groups.frontend.utils.d.ts.map +1 -0
  1400. package/dist/esm/core/resources/temporal-day-groups.frontend.utils.js +31 -0
  1401. package/dist/esm/core/resources/temporal-day-groups.frontend.utils.js.map +1 -0
  1402. package/dist/esm/core/resources/ui-behavior-presentation.frontend.utils.d.ts +36 -0
  1403. package/dist/esm/core/resources/ui-behavior-presentation.frontend.utils.d.ts.map +1 -0
  1404. package/dist/esm/core/resources/ui-behavior-presentation.frontend.utils.js +88 -0
  1405. package/dist/esm/core/resources/ui-behavior-presentation.frontend.utils.js.map +1 -0
  1406. package/dist/esm/core/resources/useBulkJobProgress.d.ts +6 -0
  1407. package/dist/esm/core/resources/useBulkJobProgress.d.ts.map +1 -1
  1408. package/dist/esm/core/resources/useBulkJobProgress.js +1 -0
  1409. package/dist/esm/core/resources/useBulkJobProgress.js.map +1 -1
  1410. package/dist/esm/core/resources/useCollectionFilterPresetScope.d.ts +14 -0
  1411. package/dist/esm/core/resources/useCollectionFilterPresetScope.d.ts.map +1 -0
  1412. package/dist/esm/core/resources/useCollectionFilterPresetScope.js +29 -0
  1413. package/dist/esm/core/resources/useCollectionFilterPresetScope.js.map +1 -0
  1414. package/dist/esm/core/resources/useHostlessResourceNavigation.d.ts +7 -6
  1415. package/dist/esm/core/resources/useHostlessResourceNavigation.d.ts.map +1 -1
  1416. package/dist/esm/core/resources/useHostlessResourceNavigation.js +35 -21
  1417. package/dist/esm/core/resources/useHostlessResourceNavigation.js.map +1 -1
  1418. package/dist/esm/core/resources/useOperationDirectExecution.d.ts.map +1 -1
  1419. package/dist/esm/core/resources/useOperationDirectExecution.js +25 -10
  1420. package/dist/esm/core/resources/useOperationDirectExecution.js.map +1 -1
  1421. package/dist/esm/core/resources/useRecordSharing.d.ts +58 -0
  1422. package/dist/esm/core/resources/useRecordSharing.d.ts.map +1 -0
  1423. package/dist/esm/core/resources/useRecordSharing.js +220 -0
  1424. package/dist/esm/core/resources/useRecordSharing.js.map +1 -0
  1425. package/dist/esm/core/resources/useResourceLabels.d.ts +4 -1
  1426. package/dist/esm/core/resources/useResourceLabels.d.ts.map +1 -1
  1427. package/dist/esm/core/resources/useResourceLabels.js +31 -32
  1428. package/dist/esm/core/resources/useResourceLabels.js.map +1 -1
  1429. package/dist/esm/core/resources/useResourceOperationActions.d.ts +23 -4
  1430. package/dist/esm/core/resources/useResourceOperationActions.d.ts.map +1 -1
  1431. package/dist/esm/core/resources/useResourceOperationActions.js +219 -51
  1432. package/dist/esm/core/resources/useResourceOperationActions.js.map +1 -1
  1433. package/dist/esm/core/resources/useResourceOperationOutcomeEmitter.d.ts +10 -1
  1434. package/dist/esm/core/resources/useResourceOperationOutcomeEmitter.d.ts.map +1 -1
  1435. package/dist/esm/core/resources/useResourceOperationOutcomeEmitter.js +7 -2
  1436. package/dist/esm/core/resources/useResourceOperationOutcomeEmitter.js.map +1 -1
  1437. package/dist/esm/core/resources/useResourceOperationSurface.d.ts +5 -5
  1438. package/dist/esm/core/resources/useResourceOperationSurface.d.ts.map +1 -1
  1439. package/dist/esm/core/resources/useResourceOperationSurface.js +5 -4
  1440. package/dist/esm/core/resources/useResourceOperationSurface.js.map +1 -1
  1441. package/dist/esm/core/resources/useResourceSelection.d.ts +6 -0
  1442. package/dist/esm/core/resources/useResourceSelection.d.ts.map +1 -1
  1443. package/dist/esm/core/resources/useResourceSelection.js.map +1 -1
  1444. package/dist/esm/core/resources/utils/operation-enabled-condition.frontend.utils.d.ts +47 -0
  1445. package/dist/esm/core/resources/utils/operation-enabled-condition.frontend.utils.d.ts.map +1 -1
  1446. package/dist/esm/core/resources/utils/operation-enabled-condition.frontend.utils.js +117 -4
  1447. package/dist/esm/core/resources/utils/operation-enabled-condition.frontend.utils.js.map +1 -1
  1448. package/dist/esm/core/runtime/AppRouter.d.ts.map +1 -1
  1449. package/dist/esm/core/runtime/AppRouter.js +5 -2
  1450. package/dist/esm/core/runtime/AppRouter.js.map +1 -1
  1451. package/dist/esm/core/runtime/ApplicationMainContext.d.ts +10 -1
  1452. package/dist/esm/core/runtime/ApplicationMainContext.d.ts.map +1 -1
  1453. package/dist/esm/core/runtime/ApplicationMainContext.js +17 -2
  1454. package/dist/esm/core/runtime/ApplicationMainContext.js.map +1 -1
  1455. package/dist/esm/core/runtime/domain-module.frontend.definitions.d.ts +5 -0
  1456. package/dist/esm/core/runtime/domain-module.frontend.definitions.d.ts.map +1 -1
  1457. package/dist/esm/core/runtime/domain-module.frontend.definitions.js +4 -2
  1458. package/dist/esm/core/runtime/domain-module.frontend.definitions.js.map +1 -1
  1459. package/dist/esm/core/runtime/routes.frontend.definitions.d.ts +19 -3
  1460. package/dist/esm/core/runtime/routes.frontend.definitions.d.ts.map +1 -1
  1461. package/dist/esm/core/runtime/routes.frontend.definitions.js +23 -7
  1462. package/dist/esm/core/runtime/routes.frontend.definitions.js.map +1 -1
  1463. package/dist/esm/core/runtime/start-application.frontend.service.d.ts.map +1 -1
  1464. package/dist/esm/core/runtime/start-application.frontend.service.js +3 -1
  1465. package/dist/esm/core/runtime/start-application.frontend.service.js.map +1 -1
  1466. package/dist/esm/core/scope/AppScopeContext.d.ts +7 -2
  1467. package/dist/esm/core/scope/AppScopeContext.d.ts.map +1 -1
  1468. package/dist/esm/core/scope/AppScopeContext.js +56 -10
  1469. package/dist/esm/core/scope/AppScopeContext.js.map +1 -1
  1470. package/dist/esm/core/security/ApplicationRoleTablesContext.d.ts +23 -0
  1471. package/dist/esm/core/security/ApplicationRoleTablesContext.d.ts.map +1 -0
  1472. package/dist/esm/core/security/ApplicationRoleTablesContext.js +27 -0
  1473. package/dist/esm/core/security/ApplicationRoleTablesContext.js.map +1 -0
  1474. package/dist/esm/core/security/AuthSessionContext.d.ts +26 -8
  1475. package/dist/esm/core/security/AuthSessionContext.d.ts.map +1 -1
  1476. package/dist/esm/core/security/AuthSessionContext.js +81 -17
  1477. package/dist/esm/core/security/AuthSessionContext.js.map +1 -1
  1478. package/dist/esm/core/security/RouteOrganizationDecisionContext.d.ts +13 -0
  1479. package/dist/esm/core/security/RouteOrganizationDecisionContext.d.ts.map +1 -0
  1480. package/dist/esm/core/security/RouteOrganizationDecisionContext.js +12 -0
  1481. package/dist/esm/core/security/RouteOrganizationDecisionContext.js.map +1 -0
  1482. package/dist/esm/core/security/StepUpAuthContext.js +5 -5
  1483. package/dist/esm/core/security/StepUpAuthContext.js.map +1 -1
  1484. package/dist/esm/core/security/UserOrgsContext.d.ts +13 -0
  1485. package/dist/esm/core/security/UserOrgsContext.d.ts.map +1 -1
  1486. package/dist/esm/core/security/UserOrgsContext.js +272 -103
  1487. package/dist/esm/core/security/UserOrgsContext.js.map +1 -1
  1488. package/dist/esm/core/security/auth-redirect.frontend.utils.d.ts +1 -0
  1489. package/dist/esm/core/security/auth-redirect.frontend.utils.d.ts.map +1 -1
  1490. package/dist/esm/core/security/auth-redirect.frontend.utils.js +3 -2
  1491. package/dist/esm/core/security/auth-redirect.frontend.utils.js.map +1 -1
  1492. package/dist/esm/core/security/effective-permissions.frontend.utils.d.ts +43 -0
  1493. package/dist/esm/core/security/effective-permissions.frontend.utils.d.ts.map +1 -0
  1494. package/dist/esm/core/security/effective-permissions.frontend.utils.js +73 -0
  1495. package/dist/esm/core/security/effective-permissions.frontend.utils.js.map +1 -0
  1496. package/dist/esm/core/security/route-organization-access.frontend.utils.d.ts +175 -5
  1497. package/dist/esm/core/security/route-organization-access.frontend.utils.d.ts.map +1 -1
  1498. package/dist/esm/core/security/route-organization-access.frontend.utils.js +147 -6
  1499. package/dist/esm/core/security/route-organization-access.frontend.utils.js.map +1 -1
  1500. package/dist/esm/core/security/security.frontend.schemas.d.ts +17 -5
  1501. package/dist/esm/core/security/security.frontend.schemas.d.ts.map +1 -1
  1502. package/dist/esm/core/security/security.frontend.schemas.js +0 -5
  1503. package/dist/esm/core/security/security.frontend.schemas.js.map +1 -1
  1504. package/dist/esm/core/security/useApplicationRoleTables.d.ts +3 -0
  1505. package/dist/esm/core/security/useApplicationRoleTables.d.ts.map +1 -0
  1506. package/dist/esm/core/security/useApplicationRoleTables.js +11 -0
  1507. package/dist/esm/core/security/useApplicationRoleTables.js.map +1 -0
  1508. package/dist/esm/core/security/useRouteOrganizationAccess.d.ts +9 -0
  1509. package/dist/esm/core/security/useRouteOrganizationAccess.d.ts.map +1 -1
  1510. package/dist/esm/core/security/useRouteOrganizationAccess.js +31 -10
  1511. package/dist/esm/core/security/useRouteOrganizationAccess.js.map +1 -1
  1512. package/dist/esm/core/security/useRouteOrganizationFollow.d.ts +24 -0
  1513. package/dist/esm/core/security/useRouteOrganizationFollow.d.ts.map +1 -0
  1514. package/dist/esm/core/security/useRouteOrganizationFollow.js +76 -0
  1515. package/dist/esm/core/security/useRouteOrganizationFollow.js.map +1 -0
  1516. package/dist/esm/core/ui/UIContext.d.ts +25 -2
  1517. package/dist/esm/core/ui/UIContext.d.ts.map +1 -1
  1518. package/dist/esm/core/ui/UIContext.js +49 -37
  1519. package/dist/esm/core/ui/UIContext.js.map +1 -1
  1520. package/dist/esm/core/ui/design-token.utils.d.ts +0 -11
  1521. package/dist/esm/core/ui/design-token.utils.d.ts.map +1 -1
  1522. package/dist/esm/core/ui/design-token.utils.js +51 -83
  1523. package/dist/esm/core/ui/design-token.utils.js.map +1 -1
  1524. package/dist/esm/core/ui/themes/default.theme.d.ts.map +1 -1
  1525. package/dist/esm/core/ui/themes/default.theme.js +151 -59
  1526. package/dist/esm/core/ui/themes/default.theme.js.map +1 -1
  1527. package/dist/esm/core/ui/themes/focus-indicator.d.ts +221 -0
  1528. package/dist/esm/core/ui/themes/focus-indicator.d.ts.map +1 -0
  1529. package/dist/esm/core/ui/themes/focus-indicator.js +229 -0
  1530. package/dist/esm/core/ui/themes/focus-indicator.js.map +1 -0
  1531. package/dist/esm/core/ui/ui.frontend.schemas.d.ts +7 -0
  1532. package/dist/esm/core/ui/ui.frontend.schemas.d.ts.map +1 -1
  1533. package/dist/esm/core/ui/useThemePreferenceControl.d.ts.map +1 -1
  1534. package/dist/esm/core/ui/useThemePreferenceControl.js +1 -2
  1535. package/dist/esm/core/ui/useThemePreferenceControl.js.map +1 -1
  1536. package/dist/esm/index.d.ts +34 -0
  1537. package/dist/esm/index.d.ts.map +1 -1
  1538. package/dist/esm/index.js +45 -7
  1539. package/dist/esm/index.js.map +1 -1
  1540. package/dist/esm/tailwind/index.d.ts.map +1 -1
  1541. package/dist/esm/tailwind/index.js +3 -0
  1542. package/dist/esm/tailwind/index.js.map +1 -1
  1543. package/dist/esm/testing/app-shell-placement-coverage.d.ts.map +1 -1
  1544. package/dist/esm/testing/app-shell-placement-coverage.js +6 -2
  1545. package/dist/esm/testing/app-shell-placement-coverage.js.map +1 -1
  1546. package/dist/esm/testing/mock-builders.d.ts +13 -1
  1547. package/dist/esm/testing/mock-builders.d.ts.map +1 -1
  1548. package/dist/esm/testing/mock-builders.js +35 -1
  1549. package/dist/esm/testing/mock-builders.js.map +1 -1
  1550. package/dist/esm/testing/rmm-helpers.d.ts +5 -3
  1551. package/dist/esm/testing/rmm-helpers.d.ts.map +1 -1
  1552. package/dist/esm/testing/rmm-helpers.js +3 -0
  1553. package/dist/esm/testing/rmm-helpers.js.map +1 -1
  1554. package/dist/esm/testing/test-providers.d.ts.map +1 -1
  1555. package/dist/esm/testing/test-providers.js +3 -0
  1556. package/dist/esm/testing/test-providers.js.map +1 -1
  1557. package/package.json +7 -6
  1558. package/dist/esm/components/flows-actors/flow-node.d.ts +0 -28
  1559. package/dist/esm/components/flows-actors/flow-node.d.ts.map +0 -1
  1560. package/dist/esm/components/flows-actors/flow-node.js +0 -115
  1561. package/dist/esm/components/flows-actors/flow-node.js.map +0 -1
  1562. package/dist/esm/components/resources/CollectionSelectionHeaderRail.d.ts +0 -30
  1563. package/dist/esm/components/resources/CollectionSelectionHeaderRail.d.ts.map +0 -1
  1564. package/dist/esm/components/resources/CollectionSelectionHeaderRail.js +0 -17
  1565. package/dist/esm/components/resources/CollectionSelectionHeaderRail.js.map +0 -1
  1566. package/dist/tsconfig.build.tsbuildinfo +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"useUtilityPanelBehavior.js","sourceRoot":"","sources":["../../../../../../src/components/navigation/app-level/useUtilityPanelBehavior.ts"],"names":[],"mappings":"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","sourcesContent":["import { useMemo, useState } from 'react';\n\nimport { CorePresetNames, HorizontalPlacement } from '@wildo-ai/presets-components-models';\nimport { ComponentRegistryService } from '~wildo-frontend-lib/core/components-registry/component-registry.frontend.service';\nimport type { ComponentRegistryRef } from '~wildo-frontend-lib/core/components-registry/component-registry.frontend.schemas';\nimport { ApplicationLevelComponentType } from '~wildo-frontend-lib/core/config/app-level-components.frontend.schemas';\nimport { LauncherItemTargetKind } from '~wildo-frontend-lib/core/config/launcher-items.frontend.schemas';\nimport type { UtilityPanelItem } from '~wildo-frontend-lib/core/config/launcher-items.frontend.schemas';\nimport { useUI } from '~wildo-frontend-lib/core/ui/useUI';\n\nimport {\n type UtilityPanelBehavior,\n type UtilityPanelDisplayItem,\n type UtilityPanelPlacement,\n isUtilityPanelConfigObject,\n} from '~wildo-frontend-lib/core/app-shell/app-shell.schemas';\n\n/**\n * Whether the panel can host a `componentRef`: is something registered under it, in the preset the\n * panel renders? The SAME predicate the preset's `ComponentRegistryService.resolve(ref, DEFAULT)`\n * answers, so resolution and render cannot disagree (#549).\n *\n * It used to be ENUM MEMBERSHIP — \"is this a `FrontendComponentType`?\" — which was wrong twice: an\n * application component registered through a domain module's `componentRegistrations` is never an\n * enum member, so the panel refused every one of them; and an enum member with no registered preset\n * passed, then rendered nothing. The registry, which is string-keyed and always was, is the thing\n * that knows.\n */\nexport function isUtilityPanelComponentRegistered(componentRef: ComponentRegistryRef): boolean {\n return ComponentRegistryService.isRegistered(componentRef, CorePresetNames.DEFAULT);\n}\n\n/**\n * Normalize configured panel items for display, and REPORT every item the panel cannot host.\n *\n * Pure and exported so the resolution can be pinned directly: the hook around it only supplies the\n * declared view refs and the configured items, and a test that had to render the whole panel to\n * check a ref would be pinning the provider tree rather than this decision.\n *\n * `declaredViewRefs` is the application's own `flowsActorsViews`, passed in rather than read here so\n * this stays a function of its arguments — and validated against the SAME list the view host itself\n * reads, so a ref that passes here cannot fail there.\n */\nexport function resolveUtilityPanelItems(\n items: readonly UtilityPanelItem[],\n declaredViewRefs: readonly string[],\n /** Injected so a caller can resolve against a registry snapshot; defaults to the live registry. */\n isComponentRegistered: (componentRef: ComponentRegistryRef) => boolean = isUtilityPanelComponentRegistered,\n): UtilityPanelDisplayItem[] {\n return items.map((item): UtilityPanelDisplayItem => {\n /**\n * A VIEW item names an application-scoped view rendered INLINE. An unknown ref is reported here\n * rather than reaching the view host, which would render its \"not available yet\" empty state —\n * indistinguishable from a working panel whose content has not loaded.\n */\n if (item.kind === LauncherItemTargetKind.VIEW) {\n const declared = declaredViewRefs.includes(item.viewRef);\n if (!declared && typeof console !== 'undefined') {\n console.warn(\n `[utility-panel] item \"${item.label}\" names viewRef \"${item.viewRef}\", which no declared application-scoped view carries. `\n + \"Declare it in the application's `flowsActorsViews`, or the panel has nothing to host for this item.\",\n );\n }\n return {\n kind: LauncherItemTargetKind.VIEW,\n viewRef: item.viewRef,\n resolvedViewRef: declared ? item.viewRef : null,\n icon: item.icon,\n label: item.label,\n };\n }\n\n const registered = isComponentRegistered(item.componentRef);\n /**\n * Warned rather than swallowed. A panel item naming a component nothing can resolve is a\n * configuration error, and this is the only place it can be noticed — the render path has no way\n * to tell the author, and the placeholder this replaced actively hid it.\n */\n if (!registered && typeof console !== 'undefined') {\n console.warn(\n `[utility-panel] item \"${item.label}\" names componentRef \"${item.componentRef}\", which has no component registered under the default preset. `\n + \"Register it — an application component through its domain module's `componentRegistrations`, an engine one through its preset — or nothing will render for this item.\",\n );\n }\n return {\n kind: LauncherItemTargetKind.CUSTOM_COMPONENT,\n componentRef: item.componentRef,\n resolvedComponentRef: registered ? item.componentRef : null,\n icon: item.icon,\n label: item.label,\n };\n });\n}\n\n/**\n * Behavior hook for UtilityPanel — manages panel open/close state and\n * provides resolved items from config.\n *\n * **The panel does not navigate (#504).** It resolves an open/close state and a list of components,\n * and the preset renders each one inline. \"For now, components render inline OR USE STANDARD\n * NAVIGATION\" was the misleading half of the previous note: no item uses standard navigation,\n * because no item navigates.\n *\n * That matters for what the deferred work is. A dedicated utility-panel navigation zone contains\n * in-panel navigation — and there is none to contain, so adding the zone first would add a member to\n * a closed vocabulary with no producer and no reader. The zone becomes real the moment a panel item\n * pushes a view; until then it would be scaffolding for a feature nobody has asked this surface to\n * grow.\n */\nexport function useUtilityPanelBehavior(\n position: UtilityPanelPlacement = HorizontalPlacement.END,\n itemsOverride?: UtilityPanelItem[],\n): UtilityPanelBehavior {\n const { UIConfig, appComponentsConfiguration, flowsActorsViews } = useUI();\n\n const [isOpen, setIsOpen] = useState(false);\n\n const currentBreakpoint = UIConfig?.currentBreakpoint;\n\n const utilityPanelConfig = appComponentsConfiguration?.[ApplicationLevelComponentType.UTILITY_PANEL];\n const configObj = isUtilityPanelConfigObject(utilityPanelConfig) ? utilityPanelConfig : undefined;\n\n const items = useMemo(\n (): UtilityPanelDisplayItem[] => resolveUtilityPanelItems(\n itemsOverride ?? configObj?.items ?? [],\n flowsActorsViews?.map((view) => view.ref) ?? [],\n ),\n [configObj, itemsOverride, flowsActorsViews],\n );\n\n const resolvedPosition = useMemo((): UtilityPanelPlacement => {\n return configObj?.position ?? position;\n }, [configObj, position]);\n\n return {\n isOpen,\n setIsOpen,\n items,\n itemCount: items.length,\n position: resolvedPosition,\n currentBreakpoint,\n };\n}\n"]}
1
+ {"version":3,"file":"useUtilityPanelBehavior.js","sourceRoot":"","sources":["../../../../../../src/components/navigation/app-level/useUtilityPanelBehavior.ts"],"names":[],"mappings":"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","sourcesContent":["import { useContext, useEffect, useMemo, useRef, useState } from 'react';\n\nimport { CorePresetNames, FrontendComponentType, HorizontalPlacement, NavigationViewLabelFamily } from '@wildo-ai/presets-components-models';\nimport { ComponentRegistryService } from '~wildo-frontend-lib/core/components-registry/component-registry.frontend.service';\nimport type { ComponentRegistryRef } from '~wildo-frontend-lib/core/components-registry/component-registry.frontend.schemas';\nimport { ApplicationLevelComponentType } from '~wildo-frontend-lib/core/config/app-level-components.frontend.schemas';\nimport { LauncherItemTargetKind } from '~wildo-frontend-lib/core/config/launcher-items.frontend.schemas';\nimport type { UtilityPanelItem } from '~wildo-frontend-lib/core/config/launcher-items.frontend.schemas';\nimport { useUI } from '~wildo-frontend-lib/core/ui/useUI';\nimport { useI18n } from '~wildo-frontend-lib/core/i18n/useI18n';\nimport { resolveComponentLabel } from '~wildo-frontend-lib/core/i18n/component-label-resolution.utils';\nimport { buildApplicationViewTranslationRef, buildNavigationViewLabelKey } from '~wildo-frontend-lib/core/navigation/view-title-resolution';\nimport { NavigationContext } from '~wildo-frontend-lib/core/navigation/NavigationContext';\nimport { NAVIGATION_STRUCTURAL_ZONES, type NavigationState } from '~wildo-frontend-lib/core/navigation/navigation.schemas';\n\nimport {\n type UtilityPanelBehavior,\n type UtilityPanelDisplayItem,\n type UtilityPanelPlacement,\n isUtilityPanelConfigObject,\n} from '~wildo-frontend-lib/core/app-shell/app-shell.schemas';\n\n/**\n * Whether the panel can host a `componentRef`: is something registered under it, in the preset the\n * panel renders? The SAME predicate the preset's `ComponentRegistryService.resolve(ref, DEFAULT)`\n * answers, so resolution and render cannot disagree (#549).\n *\n * It used to be ENUM MEMBERSHIP — \"is this a `FrontendComponentType`?\" — which was wrong twice: an\n * application component registered through a domain module's `componentRegistrations` is never an\n * enum member, so the panel refused every one of them; and an enum member with no registered preset\n * passed, then rendered nothing. The registry, which is string-keyed and always was, is the thing\n * that knows.\n */\nexport function isUtilityPanelComponentRegistered(componentRef: ComponentRegistryRef): boolean {\n return ComponentRegistryService.isRegistered(componentRef, CorePresetNames.DEFAULT);\n}\n\n/**\n * Normalize configured panel items for display, and REPORT every item the panel cannot host.\n *\n * Pure and exported so the resolution can be pinned directly: the hook around it only supplies the\n * declared view refs and the configured items, and a test that had to render the whole panel to\n * check a ref would be pinning the provider tree rather than this decision.\n *\n * `declaredViewRefs` is the application's own `flowsActorsViews`, passed in rather than read here so\n * this stays a function of its arguments — and validated against the SAME list the view host itself\n * reads, so a ref that passes here cannot fail there.\n */\nexport function resolveUtilityPanelItems(\n items: readonly UtilityPanelItem[],\n declaredViewRefs: readonly string[],\n /** Injected so a caller can resolve against a registry snapshot; defaults to the live registry. */\n isComponentRegistered: (componentRef: ComponentRegistryRef) => boolean = isUtilityPanelComponentRegistered,\n): UtilityPanelDisplayItem[] {\n return items.map((item): UtilityPanelDisplayItem => {\n /**\n * A VIEW item names an application-scoped view rendered INLINE. An unknown ref is reported here\n * rather than reaching the view host, which would render its \"not available yet\" empty state —\n * indistinguishable from a working panel whose content has not loaded.\n */\n if (item.kind === LauncherItemTargetKind.VIEW) {\n const declared = declaredViewRefs.includes(item.viewRef);\n if (!declared && typeof console !== 'undefined') {\n console.warn(\n `[utility-panel] item \"${item.label}\" names viewRef \"${item.viewRef}\", which no declared application-scoped view carries. `\n + \"Declare it in the application's `flowsActorsViews`, or the panel has nothing to host for this item.\",\n );\n }\n return {\n kind: LauncherItemTargetKind.VIEW,\n viewRef: item.viewRef,\n resolvedViewRef: declared ? item.viewRef : null,\n icon: item.icon,\n label: item.label,\n };\n }\n\n const registered = isComponentRegistered(item.componentRef);\n /**\n * Warned rather than swallowed. A panel item naming a component nothing can resolve is a\n * configuration error, and this is the only place it can be noticed — the render path has no way\n * to tell the author, and the placeholder this replaced actively hid it.\n */\n if (!registered && typeof console !== 'undefined') {\n console.warn(\n `[utility-panel] item \"${item.label}\" names componentRef \"${item.componentRef}\", which has no component registered under the default preset. `\n + \"Register it — an application component through its domain module's `componentRegistrations`, an engine one through its preset — or nothing will render for this item.\",\n );\n }\n return {\n kind: LauncherItemTargetKind.CUSTOM_COMPONENT,\n componentRef: item.componentRef,\n resolvedComponentRef: registered ? item.componentRef : null,\n icon: item.icon,\n label: item.label,\n };\n });\n}\n\n/**\n * What the workspace beneath the panel shows, as one comparable value: every structural zone's entries by their ids, and\n * its active tab. An entry's id is minted by a navigation and kept by a refresh of the same entry, so this changes when\n * the person goes somewhere — a link in the panel, the command palette, Back — and not when a page re-reads its data.\n * It also changes when a window resize crosses a collapse threshold and the layout moves entries between zones\n * (`useResponsiveZoneMigration`): the panel then closes over a re-flowed workspace, which is accepted.\n * The OVERLAY is left out: it is drawn ABOVE the panel, so what opens there is seen without closing anything.\n *\n * `undefined` when there is no navigation to follow (the panel rendered outside a `NavigationProvider`, as in a test).\n */\nexport function utilityPanelWorkspaceSignature(state: NavigationState | undefined): string | undefined {\n if (!state) return undefined;\n return NAVIGATION_STRUCTURAL_ZONES\n .map((zone) => `${zone}:${state.zones[zone].stack.map((entry) => entry.id).join(',')}#${state.zones[zone].activeTabId ?? ''}`)\n .join('|');\n}\n\n/**\n * Behavior hook for UtilityPanel — manages panel open/close state and\n * provides resolved items from config.\n *\n * **The panel holds no navigation of its own.** It resolves an open/close state and a list of items, and the preset\n * renders each one inline. A link inside an item opens the workspace, and the panel then closes (see the rule beside\n * `isOpen` below), so there is no in-panel stack and no navigation zone for it.\n */\nexport function useUtilityPanelBehavior(\n position: UtilityPanelPlacement = HorizontalPlacement.END,\n itemsOverride?: UtilityPanelItem[],\n): UtilityPanelBehavior {\n const { UIConfig, appComponentsConfiguration, flowsActorsViews } = useUI();\n\n const [isOpen, setIsOpen] = useState(false);\n\n /*\n * THE PANEL STEPS ASIDE WHEN THE WORKSPACE BENEATH IT CHANGES (Wonder Todos, 2026-10-11).\n *\n * The panel is a modal sheet laid over the workspace, and its items do not navigate inside it: a record an item links\n * to (the assistant's record cards) opens as the PAGE, where every addressable record lives. Left open, the sheet then\n * covered the very record the person had just asked to see. So while it is open the panel follows what the workspace\n * shows, and closes the moment that changes — whoever changed it, since the sheet covers the result either way.\n *\n * This is the rule the navigation system already applies to its own floating layer: from an overlay an ADDRESSABLE\n * target \"leaves the overlay and becomes the page\", an app-level navigation clears the overlay, and an ephemeral\n * overlay closes when the zone it came from changes. The panel is simply not a navigation entry, so it applies the\n * rule itself, from the same state.\n *\n * Rejected: a navigation zone for the panel (`COMPANION`, or a fourth member), which this declaration used to name\n * as the work owed \"the moment a panel item navigates\". It would show the record INSIDE a 36rem sheet, as a second\n * home for a surface that already has one, and the person asked to see the record in the main interface. Also\n * rejected: closing only for a link clicked inside the panel. That needs the panel to tag the requests its items\n * emit, and leaves the sheet covering a page the command palette or Back just replaced.\n *\n * What it costs is nothing the person keeps: a hosted assistant reopens on the conversation it showed\n * (`FlowsActorsView`'s held selection), and a turn still running keeps running, since its live state is app-wide.\n */\n const navigation = useContext(NavigationContext);\n const workspace = utilityPanelWorkspaceSignature(navigation?.state);\n const openedOverWorkspace = useRef<string | undefined>(undefined);\n useEffect(() => {\n if (!isOpen) {\n openedOverWorkspace.current = undefined;\n return;\n }\n if (openedOverWorkspace.current === undefined) {\n openedOverWorkspace.current = workspace;\n return;\n }\n if (workspace !== openedOverWorkspace.current) setIsOpen(false);\n }, [isOpen, workspace]);\n\n const currentBreakpoint = UIConfig?.currentBreakpoint;\n\n const utilityPanelConfig = appComponentsConfiguration?.[ApplicationLevelComponentType.UTILITY_PANEL];\n const configObj = isUtilityPanelConfigObject(utilityPanelConfig) ? utilityPanelConfig : undefined;\n\n const items = useMemo(\n (): UtilityPanelDisplayItem[] => resolveUtilityPanelItems(\n itemsOverride ?? configObj?.items ?? [],\n flowsActorsViews?.map((view) => view.ref) ?? [],\n ),\n [configObj, itemsOverride, flowsActorsViews],\n );\n\n const resolvedPosition = useMemo((): UtilityPanelPlacement => {\n return configObj?.position ?? position;\n }, [configObj, position]);\n\n /*\n * The panel's NAME — the trigger's accessible name and tooltip, and the sheet's title. A panel holding ONE view is\n * named by that view's own title (`views.flows_actors.app.<ref>.title`, generated like every view title), so the\n * trigger says what it opens (\"Todo Assistant\") rather than the generic \"Toggle utility panel\". ONE custom\n * component is named by its authored `label`, the only name it has. Several items share the panel's generic title.\n */\n const singleItem = items.length === 1 ? items[0] : undefined;\n const viewTranslationRef = singleItem?.kind === LauncherItemTargetKind.VIEW\n ? buildApplicationViewTranslationRef(singleItem.viewRef)\n : undefined;\n const panelLabelKeys = useMemo(\n () => (viewTranslationRef\n ? [buildNavigationViewLabelKey({ family: NavigationViewLabelFamily.FLOWS_ACTORS, translationRef: viewTranslationRef })]\n : []),\n [viewTranslationRef],\n );\n const { tComponent, tView, isReady: isPanelNameReady } = useI18n({ component: FrontendComponentType.APPLICATION_LEVEL_UTILITY_PANEL, keys: panelLabelKeys });\n const panelName = viewTranslationRef\n ? tView(NavigationViewLabelFamily.FLOWS_ACTORS, viewTranslationRef, 'title')\n : singleItem?.kind === LauncherItemTargetKind.CUSTOM_COMPONENT\n ? singleItem.label\n : resolveComponentLabel({ tComponent, componentType: FrontendComponentType.APPLICATION_LEVEL_UTILITY_PANEL, key: 'title' });\n\n // The icon the application configured is the one it sees: the panel's own, else its single item's. The item's\n // icon used to be resolved and then never drawn for a VIEW item, so a configured `'brain'` reached no pixel.\n const triggerIcon = configObj?.icon ?? (items.length === 1 ? items[0].icon : undefined);\n\n return {\n isOpen,\n setIsOpen,\n items,\n itemCount: items.length,\n position: resolvedPosition,\n triggerIcon,\n panelName,\n isPanelNameReady,\n currentBreakpoint,\n };\n}\n"]}
@@ -58,8 +58,8 @@ export const ProgressionMilestoneTrackerLabels = [
58
58
  kind: LabelKind.LABEL,
59
59
  purpose: 'How many milestones are completed out of the total',
60
60
  params: [
61
- { key: 'completed', meaning: 'count of milestones already achieved' },
62
- { key: 'total', meaning: 'total number of milestones being tracked' },
61
+ { key: 'completed', meaning: 'count of milestones already achieved', isCount: true },
62
+ { key: 'total', meaning: 'total number of milestones being tracked', isCount: true },
63
63
  ],
64
64
  },
65
65
  ];
@@ -1 +1 @@
1
- {"version":3,"file":"ProgressionMilestoneTracker.labels.js","sourceRoot":"","sources":["../../../../../src/components/progression/ProgressionMilestoneTracker.labels.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,SAAS,EAA4B,uBAAuB,EAAE,MAAM,qCAAqC,CAAC;AAE1I,2EAA2E;AAC3E,6EAA6E;AAC7E,+EAA+E;AAE/E,MAAM,CAAC,MAAM,iCAAiC,GAA0B;IACtE,EAAE,GAAG,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS,CAAC,OAAO,EAAE,OAAO,EAAE,yCAAyC,EAAE;IAC7F,EAAE,GAAG,EAAE,aAAa,EAAE,IAAI,EAAE,SAAS,CAAC,WAAW,EAAE,OAAO,EAAE,sDAAsD,EAAE;IACpH;;;;;;;;;;;;OAYG;IACH,EAAE,GAAG,EAAE,UAAU,EAAE,IAAI,EAAE,SAAS,CAAC,KAAK,EAAE,OAAO,EAAE,qDAAqD,EAAE;IAC1G,EAAE,GAAG,EAAE,QAAQ,EAAE,IAAI,EAAE,SAAS,CAAC,KAAK,EAAE,OAAO,EAAE,gDAAgD,EAAE;IACnG,EAAE,GAAG,EAAE,YAAY,EAAE,IAAI,EAAE,SAAS,CAAC,KAAK,EAAE,OAAO,EAAE,iDAAiD,EAAE;IACxG;;;;;OAKG;IACH;QACE,GAAG,EAAE,iBAAiB;QACtB,IAAI,EAAE,SAAS,CAAC,KAAK;QACrB,OAAO,EAAE,gDAAgD;QACzD,MAAM,EAAE,CAAC,EAAE,GAAG,EAAE,QAAQ,EAAE,OAAO,EAAE,sCAAsC,EAAE,CAAC;KAC7E;IACD;QACE,GAAG,EAAE,aAAa;QAClB,IAAI,EAAE,SAAS,CAAC,KAAK;QACrB,OAAO,EAAE,8EAA8E;QACvF,MAAM,EAAE,CAAC,EAAE,GAAG,EAAE,QAAQ,EAAE,OAAO,EAAE,iCAAiC,EAAE,CAAC;KACxE;IACD;QACE,GAAG,EAAE,QAAQ;QACb,IAAI,EAAE,SAAS,CAAC,OAAO;QACvB,OAAO,EAAE,kEAAkE;KAC5E;IACD;QACE,GAAG,EAAE,eAAe;QACpB,IAAI,EAAE,SAAS,CAAC,KAAK;QACrB,OAAO,EAAE,iEAAiE;QAC1E,MAAM,EAAE;YACN,EAAE,GAAG,EAAE,SAAS,EAAE,OAAO,EAAE,6BAA6B,EAAE;YAC1D,EAAE,GAAG,EAAE,OAAO,EAAE,OAAO,EAAE,oCAAoC,EAAE;SAChE;KACF;IACD;QACE,GAAG,EAAE,iBAAiB;QACtB,IAAI,EAAE,SAAS,CAAC,KAAK;QACrB,OAAO,EAAE,oDAAoD;QAC7D,MAAM,EAAE;YACN,EAAE,GAAG,EAAE,WAAW,EAAE,OAAO,EAAE,sCAAsC,EAAE;YACrE,EAAE,GAAG,EAAE,OAAO,EAAE,OAAO,EAAE,0CAA0C,EAAE;SACtE;KACF;CACF,CAAC;AACF,uBAAuB,CAAC,qBAAqB,CAAC,6BAA6B,EAAE,iCAAiC,CAAC,CAAC","sourcesContent":["import { FrontendComponentType, LabelKind, type LabellingUnitaryDef, registerComponentLabels } from '@wildo-ai/presets-components-models';\n\n// Companion-only label metadata for this component: keys + params + (where\n// authored) per-key purpose / kind / variable meaning. Statically scanned by\n// the dev companion; NOT imported at runtime, so it never ships in the bundle.\n\nexport const ProgressionMilestoneTrackerLabels: LabellingUnitaryDef[] = [\n { ref: 'title', kind: LabelKind.HEADING, purpose: 'Heading for the milestone-tracker panel' },\n { ref: 'description', kind: LabelKind.DESCRIPTION, purpose: 'Supporting text explaining the milestone progression' },\n /*\n * `emptyState` was REMOVED, not renamed.\n *\n * It was registered, translated in every locale, and could never render: the component returns\n * `null` when there are no milestone definitions, and that is the right behaviour — a host that\n * declares no milestones wants no panel, not a panel announcing its own emptiness. The same\n * defect class this file's `achieved`/`locked`/`inProgress` note describes, one key further on:\n * three dead keys were found and revived, the fourth was dead because the surface itself was\n * correct.\n *\n * A registered key nothing can reach costs a translator a string in every locale and tells the\n * next reader the surface has a state it does not have.\n */\n { ref: 'achieved', kind: LabelKind.LABEL, purpose: 'Status label for a milestone the user has completed' },\n { ref: 'locked', kind: LabelKind.LABEL, purpose: 'Status label for a milestone not yet reachable' },\n { ref: 'inProgress', kind: LabelKind.LABEL, purpose: 'Status label for a milestone currently underway' },\n /*\n * `milestonePoints` and `totalPoints` were ONE key, `pointsDisplay`, whose own purpose line read\n * \"Points awarded by a milestone, OR the total points earned\". Two semantically different numbers\n * behind one key: a translator sees a single string and cannot phrase both, and several languages\n * need different wording for \"this is worth N\" and \"you have N\".\n */\n {\n ref: 'milestonePoints',\n kind: LabelKind.LABEL,\n purpose: 'Points a single milestone awards when achieved',\n params: [{ key: 'points', meaning: 'reward points for this one milestone' }],\n },\n {\n ref: 'totalPoints',\n kind: LabelKind.LABEL,\n purpose: 'Running total of points the person has earned across all achieved milestones',\n params: [{ key: 'points', meaning: 'cumulative points earned so far' }],\n },\n {\n ref: 'nextUp',\n kind: LabelKind.HEADING,\n purpose: 'Heading above the single milestone the person should pursue next',\n },\n {\n ref: 'countProgress',\n kind: LabelKind.LABEL,\n purpose: 'How far a counted milestone has progressed toward its threshold',\n params: [\n { key: 'current', meaning: 'occurrences recorded so far' },\n { key: 'total', meaning: 'occurrences the milestone requires' },\n ],\n },\n {\n ref: 'progressDisplay',\n kind: LabelKind.LABEL,\n purpose: 'How many milestones are completed out of the total',\n params: [\n { key: 'completed', meaning: 'count of milestones already achieved' },\n { key: 'total', meaning: 'total number of milestones being tracked' },\n ],\n },\n];\nregisterComponentLabels(FrontendComponentType.PROGRESSION_MILESTONE_TRACKER, ProgressionMilestoneTrackerLabels);\n"]}
1
+ {"version":3,"file":"ProgressionMilestoneTracker.labels.js","sourceRoot":"","sources":["../../../../../src/components/progression/ProgressionMilestoneTracker.labels.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,SAAS,EAA4B,uBAAuB,EAAE,MAAM,qCAAqC,CAAC;AAE1I,2EAA2E;AAC3E,6EAA6E;AAC7E,+EAA+E;AAE/E,MAAM,CAAC,MAAM,iCAAiC,GAA0B;IACtE,EAAE,GAAG,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS,CAAC,OAAO,EAAE,OAAO,EAAE,yCAAyC,EAAE;IAC7F,EAAE,GAAG,EAAE,aAAa,EAAE,IAAI,EAAE,SAAS,CAAC,WAAW,EAAE,OAAO,EAAE,sDAAsD,EAAE;IACpH;;;;;;;;;;;;OAYG;IACH,EAAE,GAAG,EAAE,UAAU,EAAE,IAAI,EAAE,SAAS,CAAC,KAAK,EAAE,OAAO,EAAE,qDAAqD,EAAE;IAC1G,EAAE,GAAG,EAAE,QAAQ,EAAE,IAAI,EAAE,SAAS,CAAC,KAAK,EAAE,OAAO,EAAE,gDAAgD,EAAE;IACnG,EAAE,GAAG,EAAE,YAAY,EAAE,IAAI,EAAE,SAAS,CAAC,KAAK,EAAE,OAAO,EAAE,iDAAiD,EAAE;IACxG;;;;;OAKG;IACH;QACE,GAAG,EAAE,iBAAiB;QACtB,IAAI,EAAE,SAAS,CAAC,KAAK;QACrB,OAAO,EAAE,gDAAgD;QACzD,MAAM,EAAE,CAAC,EAAE,GAAG,EAAE,QAAQ,EAAE,OAAO,EAAE,sCAAsC,EAAE,CAAC;KAC7E;IACD;QACE,GAAG,EAAE,aAAa;QAClB,IAAI,EAAE,SAAS,CAAC,KAAK;QACrB,OAAO,EAAE,8EAA8E;QACvF,MAAM,EAAE,CAAC,EAAE,GAAG,EAAE,QAAQ,EAAE,OAAO,EAAE,iCAAiC,EAAE,CAAC;KACxE;IACD;QACE,GAAG,EAAE,QAAQ;QACb,IAAI,EAAE,SAAS,CAAC,OAAO;QACvB,OAAO,EAAE,kEAAkE;KAC5E;IACD;QACE,GAAG,EAAE,eAAe;QACpB,IAAI,EAAE,SAAS,CAAC,KAAK;QACrB,OAAO,EAAE,iEAAiE;QAC1E,MAAM,EAAE;YACN,EAAE,GAAG,EAAE,SAAS,EAAE,OAAO,EAAE,6BAA6B,EAAE;YAC1D,EAAE,GAAG,EAAE,OAAO,EAAE,OAAO,EAAE,oCAAoC,EAAE;SAChE;KACF;IACD;QACE,GAAG,EAAE,iBAAiB;QACtB,IAAI,EAAE,SAAS,CAAC,KAAK;QACrB,OAAO,EAAE,oDAAoD;QAC7D,MAAM,EAAE;YACN,EAAE,GAAG,EAAE,WAAW,EAAE,OAAO,EAAE,sCAAsC,EAAE,OAAO,EAAE,IAAI,EAAE;YACpF,EAAE,GAAG,EAAE,OAAO,EAAE,OAAO,EAAE,0CAA0C,EAAE,OAAO,EAAE,IAAI,EAAE;SACrF;KACF;CACF,CAAC;AACF,uBAAuB,CAAC,qBAAqB,CAAC,6BAA6B,EAAE,iCAAiC,CAAC,CAAC","sourcesContent":["import { FrontendComponentType, LabelKind, type LabellingUnitaryDef, registerComponentLabels } from '@wildo-ai/presets-components-models';\n\n// Companion-only label metadata for this component: keys + params + (where\n// authored) per-key purpose / kind / variable meaning. Statically scanned by\n// the dev companion; NOT imported at runtime, so it never ships in the bundle.\n\nexport const ProgressionMilestoneTrackerLabels: LabellingUnitaryDef[] = [\n { ref: 'title', kind: LabelKind.HEADING, purpose: 'Heading for the milestone-tracker panel' },\n { ref: 'description', kind: LabelKind.DESCRIPTION, purpose: 'Supporting text explaining the milestone progression' },\n /*\n * `emptyState` was REMOVED, not renamed.\n *\n * It was registered, translated in every locale, and could never render: the component returns\n * `null` when there are no milestone definitions, and that is the right behaviour — a host that\n * declares no milestones wants no panel, not a panel announcing its own emptiness. The same\n * defect class this file's `achieved`/`locked`/`inProgress` note describes, one key further on:\n * three dead keys were found and revived, the fourth was dead because the surface itself was\n * correct.\n *\n * A registered key nothing can reach costs a translator a string in every locale and tells the\n * next reader the surface has a state it does not have.\n */\n { ref: 'achieved', kind: LabelKind.LABEL, purpose: 'Status label for a milestone the user has completed' },\n { ref: 'locked', kind: LabelKind.LABEL, purpose: 'Status label for a milestone not yet reachable' },\n { ref: 'inProgress', kind: LabelKind.LABEL, purpose: 'Status label for a milestone currently underway' },\n /*\n * `milestonePoints` and `totalPoints` were ONE key, `pointsDisplay`, whose own purpose line read\n * \"Points awarded by a milestone, OR the total points earned\". Two semantically different numbers\n * behind one key: a translator sees a single string and cannot phrase both, and several languages\n * need different wording for \"this is worth N\" and \"you have N\".\n */\n {\n ref: 'milestonePoints',\n kind: LabelKind.LABEL,\n purpose: 'Points a single milestone awards when achieved',\n params: [{ key: 'points', meaning: 'reward points for this one milestone' }],\n },\n {\n ref: 'totalPoints',\n kind: LabelKind.LABEL,\n purpose: 'Running total of points the person has earned across all achieved milestones',\n params: [{ key: 'points', meaning: 'cumulative points earned so far' }],\n },\n {\n ref: 'nextUp',\n kind: LabelKind.HEADING,\n purpose: 'Heading above the single milestone the person should pursue next',\n },\n {\n ref: 'countProgress',\n kind: LabelKind.LABEL,\n purpose: 'How far a counted milestone has progressed toward its threshold',\n params: [\n { key: 'current', meaning: 'occurrences recorded so far' },\n { key: 'total', meaning: 'occurrences the milestone requires' },\n ],\n },\n {\n ref: 'progressDisplay',\n kind: LabelKind.LABEL,\n purpose: 'How many milestones are completed out of the total',\n params: [\n { key: 'completed', meaning: 'count of milestones already achieved', isCount: true },\n { key: 'total', meaning: 'total number of milestones being tracked', isCount: true },\n ],\n },\n];\nregisterComponentLabels(FrontendComponentType.PROGRESSION_MILESTONE_TRACKER, ProgressionMilestoneTrackerLabels);\n"]}
@@ -0,0 +1,39 @@
1
+ /**
2
+ * CollectionSelectAllCheckbox — the select-all of a CARDS collection, leading the toolbar's action row
3
+ * in the same column as the rows' checkboxes.
4
+ *
5
+ * ## Where it stands, and why there
6
+ *
7
+ * A checkbox means "all of these" only when it stands above the column of checkboxes it commands.
8
+ * It sat first in a toolbar row ~200px to the right of that column (so it read as a toolbar
9
+ * control), then in a band of its own above the cards (`CollectionSelectionHeaderRail`, a 32px row
10
+ * with a caption for one control). It now leads the action row, inset by
11
+ * {@link CARDS_SELECT_ALL_INSET_CLASS} so it lands exactly above the rows' checkboxes: the column
12
+ * alignment the band existed for, without the band. This is the contextual-toolbar shape Gmail and
13
+ * GitHub use — the select-all at the start of the bar that turns into the selection bar.
14
+ *
15
+ * ## Three states
16
+ *
17
+ * `true` when every row on the page is selected, `'indeterminate'` when some are, `false` when none
18
+ * are. Activating it from indeterminate selects the whole page, the common convention.
19
+ *
20
+ * The caption is gone, so the words move to the accessible name and the tooltip. TABLE mode does not
21
+ * render this: its `__select` header cell is already the select-all of its own column.
22
+ */
23
+ import React from 'react';
24
+ /** The page's selection state as the select-all shows it. */
25
+ export type CollectionSelectAllState = boolean | 'indeterminate';
26
+ export interface CollectionSelectAllCheckboxProps {
27
+ /** `true` = every row on the page selected, `'indeterminate'` = some, `false` = none. */
28
+ state: CollectionSelectAllState;
29
+ /** Select every row on the page, or clear them when all are selected. */
30
+ onToggle: () => void;
31
+ className?: string;
32
+ }
33
+ /**
34
+ * The select-all's state from the page's rows. Named once because both collection hosts (LIST and
35
+ * SEARCH) compute it, and two spellings of "some but not all" is how the two would disagree.
36
+ */
37
+ export declare function resolveCollectionSelectAllState(pageRowCount: number, selectedOnPage: number): CollectionSelectAllState;
38
+ export declare function CollectionSelectAllCheckbox({ state, onToggle, className }: CollectionSelectAllCheckboxProps): React.JSX.Element;
39
+ //# sourceMappingURL=CollectionSelectAllCheckbox.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CollectionSelectAllCheckbox.d.ts","sourceRoot":"","sources":["../../../../../src/components/resources/CollectionSelectAllCheckbox.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,OAAO,KAAK,MAAM,OAAO,CAAC;AAO1B,6DAA6D;AAC7D,MAAM,MAAM,wBAAwB,GAAG,OAAO,GAAG,eAAe,CAAC;AAEjE,MAAM,WAAW,gCAAgC;IAC/C,yFAAyF;IACzF,KAAK,EAAE,wBAAwB,CAAC;IAChC,yEAAyE;IACzE,QAAQ,EAAE,MAAM,IAAI,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED;;;GAGG;AACH,wBAAgB,+BAA+B,CAAC,YAAY,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,GAAG,wBAAwB,CAGtH;AAED,wBAAgB,2BAA2B,CAAC,EAAE,KAAK,EAAE,QAAQ,EAAE,SAAS,EAAE,EAAE,gCAAgC,GAAG,KAAK,CAAC,GAAG,CAAC,OAAO,CAQ/H"}
@@ -0,0 +1,21 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ import { cn } from '../../core/ui/cn.js';
3
+ import { FrontendComponentType } from '@wildo-ai/presets-components-models';
4
+ import { useI18n } from '../../core/i18n/useI18n.js';
5
+ import { CheckboxRoot } from '../../components/form/controls/boolean/checkbox.js';
6
+ import { CARDS_SELECT_ALL_INSET_CLASS } from '../../components/resources/collection-card-layout.utils.js';
7
+ /**
8
+ * The select-all's state from the page's rows. Named once because both collection hosts (LIST and
9
+ * SEARCH) compute it, and two spellings of "some but not all" is how the two would disagree.
10
+ */
11
+ export function resolveCollectionSelectAllState(pageRowCount, selectedOnPage) {
12
+ if (pageRowCount === 0 || selectedOnPage === 0)
13
+ return false;
14
+ return selectedOnPage >= pageRowCount ? true : 'indeterminate';
15
+ }
16
+ export function CollectionSelectAllCheckbox({ state, onToggle, className }) {
17
+ const { tComponent } = useI18n({ component: FrontendComponentType.RESOURCES_LAYOUTS_LIST });
18
+ const label = tComponent(FrontendComponentType.RESOURCES_LAYOUTS_LIST, 'selectAll');
19
+ return (_jsx("span", { className: cn('inline-flex shrink-0 items-center', CARDS_SELECT_ALL_INSET_CLASS, className), "data-slot": "collection-select-all", title: label, children: _jsx(CheckboxRoot, { checked: state, onCheckedChange: () => onToggle(), "aria-label": label }) }));
20
+ }
21
+ //# sourceMappingURL=CollectionSelectAllCheckbox.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CollectionSelectAllCheckbox.js","sourceRoot":"","sources":["../../../../../src/components/resources/CollectionSelectAllCheckbox.tsx"],"names":[],"mappings":";AAuBA,OAAO,EAAE,EAAE,EAAE,MAAM,gCAAgC,CAAC;AACpD,OAAO,EAAE,qBAAqB,EAAE,MAAM,qCAAqC,CAAC;AAC5E,OAAO,EAAE,OAAO,EAAE,MAAM,uCAAuC,CAAC;AAChE,OAAO,EAAE,YAAY,EAAE,MAAM,+DAA+D,CAAC;AAC7F,OAAO,EAAE,4BAA4B,EAAE,MAAM,uEAAuE,CAAC;AAarH;;;GAGG;AACH,MAAM,UAAU,+BAA+B,CAAC,YAAoB,EAAE,cAAsB;IAC1F,IAAI,YAAY,KAAK,CAAC,IAAI,cAAc,KAAK,CAAC;QAAE,OAAO,KAAK,CAAC;IAC7D,OAAO,cAAc,IAAI,YAAY,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,eAAe,CAAC;AACjE,CAAC;AAED,MAAM,UAAU,2BAA2B,CAAC,EAAE,KAAK,EAAE,QAAQ,EAAE,SAAS,EAAoC;IAC1G,MAAM,EAAE,UAAU,EAAE,GAAG,OAAO,CAAC,EAAE,SAAS,EAAE,qBAAqB,CAAC,sBAAsB,EAAE,CAAC,CAAC;IAC5F,MAAM,KAAK,GAAG,UAAU,CAAC,qBAAqB,CAAC,sBAAsB,EAAE,WAAW,CAAC,CAAC;IACpF,OAAO,CACL,eAAM,SAAS,EAAE,EAAE,CAAC,mCAAmC,EAAE,4BAA4B,EAAE,SAAS,CAAC,eAAY,uBAAuB,EAAC,KAAK,EAAE,KAAK,YAC/I,KAAC,YAAY,IAAC,OAAO,EAAE,KAAK,EAAE,eAAe,EAAE,GAAG,EAAE,CAAC,QAAQ,EAAE,gBAAc,KAAK,GAAI,GACjF,CACR,CAAC;AACJ,CAAC","sourcesContent":["/**\n * CollectionSelectAllCheckbox — the select-all of a CARDS collection, leading the toolbar's action row\n * in the same column as the rows' checkboxes.\n *\n * ## Where it stands, and why there\n *\n * A checkbox means \"all of these\" only when it stands above the column of checkboxes it commands.\n * It sat first in a toolbar row ~200px to the right of that column (so it read as a toolbar\n * control), then in a band of its own above the cards (`CollectionSelectionHeaderRail`, a 32px row\n * with a caption for one control). It now leads the action row, inset by\n * {@link CARDS_SELECT_ALL_INSET_CLASS} so it lands exactly above the rows' checkboxes: the column\n * alignment the band existed for, without the band. This is the contextual-toolbar shape Gmail and\n * GitHub use — the select-all at the start of the bar that turns into the selection bar.\n *\n * ## Three states\n *\n * `true` when every row on the page is selected, `'indeterminate'` when some are, `false` when none\n * are. Activating it from indeterminate selects the whole page, the common convention.\n *\n * The caption is gone, so the words move to the accessible name and the tooltip. TABLE mode does not\n * render this: its `__select` header cell is already the select-all of its own column.\n */\nimport React from 'react';\nimport { cn } from '~wildo-frontend-lib/core/ui/cn';\nimport { FrontendComponentType } from '@wildo-ai/presets-components-models';\nimport { useI18n } from '~wildo-frontend-lib/core/i18n/useI18n';\nimport { CheckboxRoot } from '~wildo-frontend-lib/components/form/controls/boolean/checkbox';\nimport { CARDS_SELECT_ALL_INSET_CLASS } from '~wildo-frontend-lib/components/resources/collection-card-layout.utils';\n\n/** The page's selection state as the select-all shows it. */\nexport type CollectionSelectAllState = boolean | 'indeterminate';\n\nexport interface CollectionSelectAllCheckboxProps {\n /** `true` = every row on the page selected, `'indeterminate'` = some, `false` = none. */\n state: CollectionSelectAllState;\n /** Select every row on the page, or clear them when all are selected. */\n onToggle: () => void;\n className?: string;\n}\n\n/**\n * The select-all's state from the page's rows. Named once because both collection hosts (LIST and\n * SEARCH) compute it, and two spellings of \"some but not all\" is how the two would disagree.\n */\nexport function resolveCollectionSelectAllState(pageRowCount: number, selectedOnPage: number): CollectionSelectAllState {\n if (pageRowCount === 0 || selectedOnPage === 0) return false;\n return selectedOnPage >= pageRowCount ? true : 'indeterminate';\n}\n\nexport function CollectionSelectAllCheckbox({ state, onToggle, className }: CollectionSelectAllCheckboxProps): React.JSX.Element {\n const { tComponent } = useI18n({ component: FrontendComponentType.RESOURCES_LAYOUTS_LIST });\n const label = tComponent(FrontendComponentType.RESOURCES_LAYOUTS_LIST, 'selectAll');\n return (\n <span className={cn('inline-flex shrink-0 items-center', CARDS_SELECT_ALL_INSET_CLASS, className)} data-slot=\"collection-select-all\" title={label}>\n <CheckboxRoot checked={state} onCheckedChange={() => onToggle()} aria-label={label} />\n </span>\n );\n}\n"]}
@@ -10,9 +10,10 @@
10
10
  * **It no longer carries the select-all checkbox**, and that is the point of the split. A checkbox
11
11
  * means "all of these" only when it stands above the column of checkboxes it commands; here it sat
12
12
  * in a toolbar row of its own, ~200px to the right of the rows' checkboxes, and in TABLE mode it
13
- * was a second select-all beside the table header's. The checkbox now lives with the rows in both
14
- * displays — the table's `__select` header cell, and `CollectionSelectionHeaderRail` for cards —
15
- * while the COUNT stays here, beside the bulk actions that consume it.
13
+ * was a second select-all beside the table header's. The checkbox now stands in the rows' column in
14
+ * both displays — the table's `__select` header cell, and `CollectionSelectAllCheckbox` leading the
15
+ * cards toolbar's action row, inset onto that column — while the COUNT stays here, beside the bulk
16
+ * actions that consume it (on one line: with rows selected, that row is the selection bar).
16
17
  *
17
18
  * Shared by `ResourceCollectionToolbar` (LIST) and `ResourceLayout_Search` so the two collection
18
19
  * surfaces render selection identically.
@@ -1 +1 @@
1
- {"version":3,"file":"CollectionSelectionControls.d.ts","sourceRoot":"","sources":["../../../../../src/components/resources/CollectionSelectionControls.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAEH,OAAO,KAAK,MAAM,OAAO,CAAC;AAQ1B,MAAM,WAAW,gCAAgC;IAC/C,0CAA0C;IAC1C,KAAK,EAAE,MAAM,CAAC;IACd,iCAAiC;IACjC,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB;;;;;;;;OAQG;IACH,aAAa,CAAC,EAAE;QAAE,YAAY,EAAE,MAAM,CAAC;QAAC,mBAAmB,EAAE,MAAM,IAAI,CAAA;KAAE,CAAC;IAC1E;;;OAGG;IACH,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,wBAAgB,2BAA2B,CAAC,EAC1C,KAAK,EACL,OAAO,EACP,aAAa,EACb,kBAAkB,EAClB,SAAS,GACV,EAAE,gCAAgC,GAAG,KAAK,CAAC,GAAG,CAAC,OAAO,CAoDtD"}
1
+ {"version":3,"file":"CollectionSelectionControls.d.ts","sourceRoot":"","sources":["../../../../../src/components/resources/CollectionSelectionControls.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AAEH,OAAO,KAAK,MAAM,OAAO,CAAC;AAQ1B,MAAM,WAAW,gCAAgC;IAC/C,0CAA0C;IAC1C,KAAK,EAAE,MAAM,CAAC;IACd,iCAAiC;IACjC,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB;;;;;;;;OAQG;IACH,aAAa,CAAC,EAAE;QAAE,YAAY,EAAE,MAAM,CAAC;QAAC,mBAAmB,EAAE,MAAM,IAAI,CAAA;KAAE,CAAC;IAC1E;;;OAGG;IACH,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,wBAAgB,2BAA2B,CAAC,EAC1C,KAAK,EACL,OAAO,EACP,aAAa,EACb,kBAAkB,EAClB,SAAS,GACV,EAAE,gCAAgC,GAAG,KAAK,CAAC,GAAG,CAAC,OAAO,CAoDtD"}
@@ -1 +1 @@
1
- {"version":3,"file":"CollectionSelectionControls.js","sourceRoot":"","sources":["../../../../../src/components/resources/CollectionSelectionControls.tsx"],"names":[],"mappings":";AAqBA,OAAO,EAAE,EAAE,EAAE,MAAM,gCAAgC,CAAC;AACpD,OAAO,EAAE,qBAAqB,EAAE,UAAU,EAAE,MAAM,qCAAqC,CAAC;AACxF,OAAO,EAAE,OAAO,EAAE,MAAM,uCAAuC,CAAC;AAChE,OAAO,EAAE,eAAe,EAAE,MAAM,gDAAgD,CAAC;AACjF,OAAO,EAAE,qBAAqB,EAAE,QAAQ,EAAE,MAAM,+DAA+D,CAAC;AAChH,OAAO,EAAE,MAAM,EAAE,sBAAsB,EAAE,MAAM,+CAA+C,CAAC;AAyB/F,MAAM,UAAU,2BAA2B,CAAC,EAC1C,KAAK,EACL,OAAO,EACP,aAAa,EACb,kBAAkB,EAClB,SAAS,GACwB;IACjC,MAAM,EAAE,UAAU,EAAE,GAAG,OAAO,CAAC,EAAE,SAAS,EAAE,qBAAqB,CAAC,sBAAsB,EAAE,CAAC,CAAC;IAC5F,MAAM,EAAE,UAAU,EAAE,GAAG,eAAe,EAAE,CAAC;IAEzC,OAAO,CACL,eAAK,SAAS,EAAE,EAAE,CAAC,kCAAkC,EAAE,SAAS,CAAC,eAAY,sBAAsB,aAKjG,eACE,IAAI,EAAC,QAAQ,eACH,QAAQ,EAClB,SAAS,EAAE,EAAE,CACX,6DAA6D,EAC7D,KAAK,KAAK,CAAC,IAAI,SAAS,CACzB,YAEA,KAAK,GAAG,CAAC;oBACR,CAAC,CAAC,UAAU,CACR,qBAAqB,CAAC,sBAAsB,EAC5C,kBAAkB,CAAC,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,eAAe,EAC5D,EAAE,KAAK,EAAE,CACV;oBACH,CAAC,CAAC,EAAE,GACD,EAIN,aAAa,IAAI,CAAC,kBAAkB,IAAI,CACvC,KAAC,MAAM,IACL,IAAI,EAAC,QAAQ,EACb,OAAO,EAAE,sBAAsB,CAAC,IAAI,EACpC,IAAI,EAAE,UAAU,CAAC,EAAE,EACnB,OAAO,EAAE,aAAa,CAAC,mBAAmB,YAEzC,UAAU,CAAC,qBAAqB,CAAC,sBAAsB,EAAE,mBAAmB,EAAE,EAAE,KAAK,EAAE,aAAa,CAAC,YAAY,EAAE,CAAC,GAC9G,CACV,EACA,KAAK,GAAG,CAAC,IAAI,CACZ,KAAC,MAAM,IACL,IAAI,EAAC,QAAQ,EACb,OAAO,EAAE,sBAAsB,CAAC,KAAK,EACrC,IAAI,EAAE,UAAU,CAAC,OAAO,EACxB,OAAO,EAAE,OAAO,gBACJ,UAAU,CAAC,qBAAqB,CAAC,sBAAsB,EAAE,gBAAgB,CAAC,YAErF,UAAU,CAAC,qBAAqB,CAAC,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,CAAC,EAAE,EAAE,CAAC,GACzD,CACV,IACG,CACP,CAAC;AACJ,CAAC","sourcesContent":["/**\n * CollectionSelectionControls — the LOCAL, in-header SUMMARY of a collection's selection: a live\n * \"N selected\" count and a clear button.\n *\n * Sits in the collection's own header/controls zone (beside search/filter/sort), NOT as a global\n * floating overlay — selection is a property of one list, so its chrome lives inside that list.\n * Bulk ACTIONS render separately in the trailing zone (near/contextually-replacing the Create\n * action); this component owns only the selection STATE display.\n *\n * **It no longer carries the select-all checkbox**, and that is the point of the split. A checkbox\n * means \"all of these\" only when it stands above the column of checkboxes it commands; here it sat\n * in a toolbar row of its own, ~200px to the right of the rows' checkboxes, and in TABLE mode it\n * was a second select-all beside the table header's. The checkbox now lives with the rows in both\n * displays — the table's `__select` header cell, and `CollectionSelectionHeaderRail` for cards —\n * while the COUNT stays here, beside the bulk actions that consume it.\n *\n * Shared by `ResourceCollectionToolbar` (LIST) and `ResourceLayout_Search` so the two collection\n * surfaces render selection identically.\n */\n\nimport React from 'react';\nimport { cn } from '~wildo-frontend-lib/core/ui/cn';\nimport { FrontendComponentType, ButtonSize } from '@wildo-ai/presets-components-models';\nimport { useI18n } from '~wildo-frontend-lib/core/i18n/useI18n';\nimport { useIconRegistry } from '~wildo-frontend-lib/core/icons/useIconRegistry';\nimport { StandardIconReference, IconSize } from '~wildo-frontend-lib/core/icons/icon-registry.frontend.schemas';\nimport { Button, ButtonVariants_Variant } from '~wildo-frontend-lib/components/actions/button';\n\nexport interface CollectionSelectionControlsProps {\n /** Number of currently-selected items. */\n count: number;\n /** Clear the whole selection. */\n onClear: () => void;\n /**\n * Offered only when the person has selected EVERY row on the page and the listing matches more\n * rows than the page holds — the moment the page selection stops meaning what they want.\n *\n * Presenting it earlier would be noise: with a partial page selection, \"select all matching\" is\n * not the obvious next step, it is a different intent (spec-cite: N/A — this is the\n * select-page-then-offer-all pattern PatternFly's bulk selection and Gmail both use; the words\n * are this repository's).\n */\n matchAllOffer?: { matchedCount: number; onSelectAllMatching: () => void };\n /**\n * True once the selection IS the query. The count then describes rows nobody has loaded, so the\n * surface says so rather than showing a number that reads like a tally of ticks.\n */\n isMatchAllSelected?: boolean;\n className?: string;\n}\n\nexport function CollectionSelectionControls({\n count,\n onClear,\n matchAllOffer,\n isMatchAllSelected,\n className,\n}: CollectionSelectionControlsProps): React.JSX.Element {\n const { tComponent } = useI18n({ component: FrontendComponentType.RESOURCES_LAYOUTS_LIST });\n const { renderIcon } = useIconRegistry();\n\n return (\n <div className={cn('flex items-center gap-element-sm', className)} data-slot=\"collection-selection\">\n {/* ALWAYS-mounted live region (empty + sr-only at count 0) so the FIRST\n selection (0→1) is announced — a region inserted together with its text\n in one commit is not announced by most screen readers. Only the text +\n class change as the count changes. */}\n <span\n role=\"status\"\n aria-live=\"polite\"\n className={cn(\n 'text-sm font-medium text-muted-foreground whitespace-nowrap',\n count === 0 && 'sr-only',\n )}\n >\n {count > 0\n ? tComponent(\n FrontendComponentType.RESOURCES_LAYOUTS_LIST,\n isMatchAllSelected ? 'allMatchingSelected' : 'selectedCount',\n { count },\n )\n : ''}\n </span>\n {/* The offer sits inside the same live region's row so the escalation reads as one statement:\n \"12 selected — select all 2,340 matching\". It disappears the moment it is taken, because\n the count beside it then says the same thing. */}\n {matchAllOffer && !isMatchAllSelected && (\n <Button\n type=\"button\"\n variant={ButtonVariants_Variant.LINK}\n size={ButtonSize.SM}\n onClick={matchAllOffer.onSelectAllMatching}\n >\n {tComponent(FrontendComponentType.RESOURCES_LAYOUTS_LIST, 'selectAllMatching', { count: matchAllOffer.matchedCount })}\n </Button>\n )}\n {count > 0 && (\n <Button\n type=\"button\"\n variant={ButtonVariants_Variant.GHOST}\n size={ButtonSize.ICON_SM}\n onClick={onClear}\n aria-label={tComponent(FrontendComponentType.RESOURCES_LAYOUTS_LIST, 'clearSelection')}\n >\n {renderIcon(StandardIconReference.X_MARK, { size: IconSize.XS })}\n </Button>\n )}\n </div>\n );\n}\n"]}
1
+ {"version":3,"file":"CollectionSelectionControls.js","sourceRoot":"","sources":["../../../../../src/components/resources/CollectionSelectionControls.tsx"],"names":[],"mappings":";AAsBA,OAAO,EAAE,EAAE,EAAE,MAAM,gCAAgC,CAAC;AACpD,OAAO,EAAE,qBAAqB,EAAE,UAAU,EAAE,MAAM,qCAAqC,CAAC;AACxF,OAAO,EAAE,OAAO,EAAE,MAAM,uCAAuC,CAAC;AAChE,OAAO,EAAE,eAAe,EAAE,MAAM,gDAAgD,CAAC;AACjF,OAAO,EAAE,qBAAqB,EAAE,QAAQ,EAAE,MAAM,+DAA+D,CAAC;AAChH,OAAO,EAAE,MAAM,EAAE,sBAAsB,EAAE,MAAM,+CAA+C,CAAC;AAyB/F,MAAM,UAAU,2BAA2B,CAAC,EAC1C,KAAK,EACL,OAAO,EACP,aAAa,EACb,kBAAkB,EAClB,SAAS,GACwB;IACjC,MAAM,EAAE,UAAU,EAAE,GAAG,OAAO,CAAC,EAAE,SAAS,EAAE,qBAAqB,CAAC,sBAAsB,EAAE,CAAC,CAAC;IAC5F,MAAM,EAAE,UAAU,EAAE,GAAG,eAAe,EAAE,CAAC;IAEzC,OAAO,CACL,eAAK,SAAS,EAAE,EAAE,CAAC,kCAAkC,EAAE,SAAS,CAAC,eAAY,sBAAsB,aAKjG,eACE,IAAI,EAAC,QAAQ,eACH,QAAQ,EAClB,SAAS,EAAE,EAAE,CACX,6DAA6D,EAC7D,KAAK,KAAK,CAAC,IAAI,SAAS,CACzB,YAEA,KAAK,GAAG,CAAC;oBACR,CAAC,CAAC,UAAU,CACR,qBAAqB,CAAC,sBAAsB,EAC5C,kBAAkB,CAAC,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,eAAe,EAC5D,EAAE,KAAK,EAAE,CACV;oBACH,CAAC,CAAC,EAAE,GACD,EAIN,aAAa,IAAI,CAAC,kBAAkB,IAAI,CACvC,KAAC,MAAM,IACL,IAAI,EAAC,QAAQ,EACb,OAAO,EAAE,sBAAsB,CAAC,IAAI,EACpC,IAAI,EAAE,UAAU,CAAC,EAAE,EACnB,OAAO,EAAE,aAAa,CAAC,mBAAmB,YAEzC,UAAU,CAAC,qBAAqB,CAAC,sBAAsB,EAAE,mBAAmB,EAAE,EAAE,KAAK,EAAE,aAAa,CAAC,YAAY,EAAE,CAAC,GAC9G,CACV,EACA,KAAK,GAAG,CAAC,IAAI,CACZ,KAAC,MAAM,IACL,IAAI,EAAC,QAAQ,EACb,OAAO,EAAE,sBAAsB,CAAC,KAAK,EACrC,IAAI,EAAE,UAAU,CAAC,OAAO,EACxB,OAAO,EAAE,OAAO,gBACJ,UAAU,CAAC,qBAAqB,CAAC,sBAAsB,EAAE,gBAAgB,CAAC,YAErF,UAAU,CAAC,qBAAqB,CAAC,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,CAAC,EAAE,EAAE,CAAC,GACzD,CACV,IACG,CACP,CAAC;AACJ,CAAC","sourcesContent":["/**\n * CollectionSelectionControls — the LOCAL, in-header SUMMARY of a collection's selection: a live\n * \"N selected\" count and a clear button.\n *\n * Sits in the collection's own header/controls zone (beside search/filter/sort), NOT as a global\n * floating overlay — selection is a property of one list, so its chrome lives inside that list.\n * Bulk ACTIONS render separately in the trailing zone (near/contextually-replacing the Create\n * action); this component owns only the selection STATE display.\n *\n * **It no longer carries the select-all checkbox**, and that is the point of the split. A checkbox\n * means \"all of these\" only when it stands above the column of checkboxes it commands; here it sat\n * in a toolbar row of its own, ~200px to the right of the rows' checkboxes, and in TABLE mode it\n * was a second select-all beside the table header's. The checkbox now stands in the rows' column in\n * both displays — the table's `__select` header cell, and `CollectionSelectAllCheckbox` leading the\n * cards toolbar's action row, inset onto that column — while the COUNT stays here, beside the bulk\n * actions that consume it (on one line: with rows selected, that row is the selection bar).\n *\n * Shared by `ResourceCollectionToolbar` (LIST) and `ResourceLayout_Search` so the two collection\n * surfaces render selection identically.\n */\n\nimport React from 'react';\nimport { cn } from '~wildo-frontend-lib/core/ui/cn';\nimport { FrontendComponentType, ButtonSize } from '@wildo-ai/presets-components-models';\nimport { useI18n } from '~wildo-frontend-lib/core/i18n/useI18n';\nimport { useIconRegistry } from '~wildo-frontend-lib/core/icons/useIconRegistry';\nimport { StandardIconReference, IconSize } from '~wildo-frontend-lib/core/icons/icon-registry.frontend.schemas';\nimport { Button, ButtonVariants_Variant } from '~wildo-frontend-lib/components/actions/button';\n\nexport interface CollectionSelectionControlsProps {\n /** Number of currently-selected items. */\n count: number;\n /** Clear the whole selection. */\n onClear: () => void;\n /**\n * Offered only when the person has selected EVERY row on the page and the listing matches more\n * rows than the page holds — the moment the page selection stops meaning what they want.\n *\n * Presenting it earlier would be noise: with a partial page selection, \"select all matching\" is\n * not the obvious next step, it is a different intent (spec-cite: N/A — this is the\n * select-page-then-offer-all pattern PatternFly's bulk selection and Gmail both use; the words\n * are this repository's).\n */\n matchAllOffer?: { matchedCount: number; onSelectAllMatching: () => void };\n /**\n * True once the selection IS the query. The count then describes rows nobody has loaded, so the\n * surface says so rather than showing a number that reads like a tally of ticks.\n */\n isMatchAllSelected?: boolean;\n className?: string;\n}\n\nexport function CollectionSelectionControls({\n count,\n onClear,\n matchAllOffer,\n isMatchAllSelected,\n className,\n}: CollectionSelectionControlsProps): React.JSX.Element {\n const { tComponent } = useI18n({ component: FrontendComponentType.RESOURCES_LAYOUTS_LIST });\n const { renderIcon } = useIconRegistry();\n\n return (\n <div className={cn('flex items-center gap-element-sm', className)} data-slot=\"collection-selection\">\n {/* ALWAYS-mounted live region (empty + sr-only at count 0) so the FIRST\n selection (0→1) is announced — a region inserted together with its text\n in one commit is not announced by most screen readers. Only the text +\n class change as the count changes. */}\n <span\n role=\"status\"\n aria-live=\"polite\"\n className={cn(\n 'text-sm font-medium text-muted-foreground whitespace-nowrap',\n count === 0 && 'sr-only',\n )}\n >\n {count > 0\n ? tComponent(\n FrontendComponentType.RESOURCES_LAYOUTS_LIST,\n isMatchAllSelected ? 'allMatchingSelected' : 'selectedCount',\n { count },\n )\n : ''}\n </span>\n {/* The offer sits inside the same live region's row so the escalation reads as one statement:\n \"12 selected — select all 2,340 matching\". It disappears the moment it is taken, because\n the count beside it then says the same thing. */}\n {matchAllOffer && !isMatchAllSelected && (\n <Button\n type=\"button\"\n variant={ButtonVariants_Variant.LINK}\n size={ButtonSize.SM}\n onClick={matchAllOffer.onSelectAllMatching}\n >\n {tComponent(FrontendComponentType.RESOURCES_LAYOUTS_LIST, 'selectAllMatching', { count: matchAllOffer.matchedCount })}\n </Button>\n )}\n {count > 0 && (\n <Button\n type=\"button\"\n variant={ButtonVariants_Variant.GHOST}\n size={ButtonSize.ICON_SM}\n onClick={onClear}\n aria-label={tComponent(FrontendComponentType.RESOURCES_LAYOUTS_LIST, 'clearSelection')}\n >\n {renderIcon(StandardIconReference.X_MARK, { size: IconSize.XS })}\n </Button>\n )}\n </div>\n );\n}\n"]}
@@ -12,7 +12,7 @@
12
12
  * without duplicating the data/fetch layer.
13
13
  */
14
14
  import React from 'react';
15
- import type { AnyFrontendResourceConfiguration } from '../../core/resources/resources.frontend.schemas';
15
+ import type { AnyFrontendResourceConfiguration, FrontendResourceOperationContext } from '../../core/resources/resources.frontend.schemas';
16
16
  import type { SortState } from '../../components/resources/ResourceLayout_SortControl';
17
17
  import type { NavigationZone } from '../../core/navigation/navigation.schemas';
18
18
  type TableItem = Record<string, any>;
@@ -30,6 +30,11 @@ export interface ResourceCollectionBody_TableProps {
30
30
  navigationZone: NavigationZone;
31
31
  /** Ordered summary fields → one column each. */
32
32
  summaryFields: string[];
33
+ /**
34
+ * The collection's resource identifiers (its route scope and parents). Each cell reads in its ROW's scope, built
35
+ * from these and the row (`FieldValueRenderer`), so a reference in a cell is fetched where the row lives (#2347).
36
+ */
37
+ contextResourceIdentifiers: FrontendResourceOperationContext['contextResourceIdentifiers'] | undefined;
33
38
  /** Pre-resolved i18n field labels (column headers). */
34
39
  fieldLabelsMap: Record<string, string>;
35
40
  /** Sortable field names (sortable column headers). */
@@ -70,6 +75,6 @@ export interface ResourceCollectionBody_TableProps {
70
75
  */
71
76
  canOpenRow?: (item: TableItem) => boolean;
72
77
  }
73
- export declare const ResourceCollectionBody_Table: ({ items, resourceType, resourceConfig, navigationZone, summaryFields, fieldLabelsMap, sortFields, sortStates, onSortChange, selectable, isRowSelected, onToggleRow, allSelected, onToggleAll, renderRowActions, onRowClick, canOpenRow, }: ResourceCollectionBody_TableProps) => React.JSX.Element;
78
+ export declare const ResourceCollectionBody_Table: ({ items, resourceType, resourceConfig, navigationZone, summaryFields, contextResourceIdentifiers, fieldLabelsMap, sortFields, sortStates, onSortChange, selectable, isRowSelected, onToggleRow, allSelected, onToggleAll, renderRowActions, onRowClick, canOpenRow, }: ResourceCollectionBody_TableProps) => React.JSX.Element;
74
79
  export {};
75
80
  //# sourceMappingURL=ResourceCollectionBody_Table.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"ResourceCollectionBody_Table.d.ts","sourceRoot":"","sources":["../../../../../src/components/resources/ResourceCollectionBody_Table.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,OAAO,KAA+B,MAAM,OAAO,CAAC;AAmBpD,OAAO,KAAK,EAAE,gCAAgC,EAAE,MAAM,+DAA+D,CAAC;AACtH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,qEAAqE,CAAC;AAIrG,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,wDAAwD,CAAC;AAE7F,KAAK,SAAS,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;AAErC,MAAM,WAAW,iCAAiC;IAChD,2CAA2C;IAC3C,KAAK,EAAE,SAAS,EAAE,CAAC;IACnB,gDAAgD;IAChD,YAAY,EAAE,MAAM,CAAC;IACrB,mFAAmF;IACnF,cAAc,EAAE,gCAAgC,CAAC;IACjD;;;OAGG;IACH,cAAc,EAAE,cAAc,CAAC;IAC/B,gDAAgD;IAChD,aAAa,EAAE,MAAM,EAAE,CAAC;IACxB,uDAAuD;IACvD,cAAc,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACvC,sDAAsD;IACtD,UAAU,EAAE,SAAS,MAAM,EAAE,CAAC;IAC9B,gFAAgF;IAChF,UAAU,EAAE,SAAS,SAAS,EAAE,CAAC;IACjC,uEAAuE;IACvE,YAAY,EAAE,CAAC,KAAK,EAAE,SAAS,EAAE,KAAK,IAAI,CAAC;IAC3C;;;;;OAKG;IACH,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,wDAAwD;IACxD,aAAa,CAAC,EAAE,CAAC,IAAI,EAAE,SAAS,KAAK,OAAO,CAAC;IAC7C,4CAA4C;IAC5C,WAAW,CAAC,EAAE,CAAC,IAAI,EAAE,SAAS,KAAK,IAAI,CAAC;IACxC,2EAA2E;IAC3E,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,qEAAqE;IACrE,WAAW,CAAC,EAAE,MAAM,IAAI,CAAC;IACzB;;;OAGG;IACH,gBAAgB,CAAC,EAAE,CAAC,IAAI,EAAE,SAAS,KAAK,KAAK,CAAC,SAAS,CAAC;IACxD,6DAA6D;IAC7D,UAAU,EAAE,CAAC,IAAI,EAAE,SAAS,KAAK,IAAI,CAAC;IACtC;;;;;;;OAOG;IACH,UAAU,CAAC,EAAE,CAAC,IAAI,EAAE,SAAS,KAAK,OAAO,CAAC;CAC3C;AAED,eAAO,MAAM,4BAA4B,GAAI,2OAkB1C,iCAAiC,KAAG,KAAK,CAAC,GAAG,CAAC,OA2OhD,CAAC"}
1
+ {"version":3,"file":"ResourceCollectionBody_Table.d.ts","sourceRoot":"","sources":["../../../../../src/components/resources/ResourceCollectionBody_Table.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,OAAO,KAA+B,MAAM,OAAO,CAAC;AAoBpD,OAAO,KAAK,EAAE,gCAAgC,EAAE,gCAAgC,EAAE,MAAM,+DAA+D,CAAC;AACxJ,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,qEAAqE,CAAC;AAIrG,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,wDAAwD,CAAC;AAE7F,KAAK,SAAS,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;AAyBrC,MAAM,WAAW,iCAAiC;IAChD,2CAA2C;IAC3C,KAAK,EAAE,SAAS,EAAE,CAAC;IACnB,gDAAgD;IAChD,YAAY,EAAE,MAAM,CAAC;IACrB,mFAAmF;IACnF,cAAc,EAAE,gCAAgC,CAAC;IACjD;;;OAGG;IACH,cAAc,EAAE,cAAc,CAAC;IAC/B,gDAAgD;IAChD,aAAa,EAAE,MAAM,EAAE,CAAC;IACxB;;;OAGG;IACH,0BAA0B,EAAE,gCAAgC,CAAC,4BAA4B,CAAC,GAAG,SAAS,CAAC;IACvG,uDAAuD;IACvD,cAAc,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACvC,sDAAsD;IACtD,UAAU,EAAE,SAAS,MAAM,EAAE,CAAC;IAC9B,gFAAgF;IAChF,UAAU,EAAE,SAAS,SAAS,EAAE,CAAC;IACjC,uEAAuE;IACvE,YAAY,EAAE,CAAC,KAAK,EAAE,SAAS,EAAE,KAAK,IAAI,CAAC;IAC3C;;;;;OAKG;IACH,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,wDAAwD;IACxD,aAAa,CAAC,EAAE,CAAC,IAAI,EAAE,SAAS,KAAK,OAAO,CAAC;IAC7C,4CAA4C;IAC5C,WAAW,CAAC,EAAE,CAAC,IAAI,EAAE,SAAS,KAAK,IAAI,CAAC;IACxC,2EAA2E;IAC3E,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,qEAAqE;IACrE,WAAW,CAAC,EAAE,MAAM,IAAI,CAAC;IACzB;;;OAGG;IACH,gBAAgB,CAAC,EAAE,CAAC,IAAI,EAAE,SAAS,KAAK,KAAK,CAAC,SAAS,CAAC;IACxD,6DAA6D;IAC7D,UAAU,EAAE,CAAC,IAAI,EAAE,SAAS,KAAK,IAAI,CAAC;IACtC;;;;;;;OAOG;IACH,UAAU,CAAC,EAAE,CAAC,IAAI,EAAE,SAAS,KAAK,OAAO,CAAC;CAC3C;AAED,eAAO,MAAM,4BAA4B,GAAI,uQAmB1C,iCAAiC,KAAG,KAAK,CAAC,GAAG,CAAC,OAoPhD,CAAC"}
@@ -13,22 +13,42 @@ import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-run
13
13
  * without duplicating the data/fetch layer.
14
14
  */
15
15
  import { useMemo } from 'react';
16
- import { useReactTable, getCoreRowModel, flexRender, } from '@tanstack/react-table';
16
+ import { useReactTable, getCoreRowModel, } from '@tanstack/react-table';
17
17
  import { useI18n } from '../../core/i18n/useI18n.js';
18
18
  import { cn } from '../../core/ui/cn.js';
19
+ import { focusIndicatorClasses, FocusIndicatorShape } from '../../core/ui/themes/focus-indicator.js';
19
20
  import { useIconRegistry } from '../../core/icons/useIconRegistry.js';
20
21
  import { StandardIconReference, IconSize } from '../../core/icons/icon-registry.frontend.schemas.js';
21
22
  import { useUI } from '../../core/ui/useUI.js';
22
- import { ButtonSize, FrontendComponentType, InteractiveVariant, UIBehavior } from '@wildo-ai/presets-components-models';
23
+ import { ButtonSize, FrontendComponentType, InteractiveVariant, TypographyVariant, UIBehavior } from '@wildo-ai/presets-components-models';
23
24
  import { Button, ButtonVariants_Variant } from '../../components/actions/button.js';
24
25
  import { CheckboxRoot } from '../../components/form/controls/boolean/checkbox.js';
25
26
  import { TableCell } from '../../components/sections/table.js';
26
27
  import { FieldValueRenderer } from '../../components/resources/ResourceListItemRenderer.js';
27
- import { AutomatedLayoutFrontendUtils } from '../../core/automated-layout/automated-layout.frontend.utils.js';
28
28
  import { ResourceInPlaceOperationRow } from '../../components/resources/ResourceInPlaceOperationRow.js';
29
29
  import { useInPlaceOperation } from '../../core/resources/in-place/InPlaceOperationContext.js';
30
30
  import { FrontendResourceUtils } from '../../core/resources/frontend-resource.utils.js';
31
- export const ResourceCollectionBody_Table = ({ items, resourceType, resourceConfig, navigationZone, summaryFields, fieldLabelsMap, sortFields, sortStates, onSortChange, selectable = false, isRowSelected, onToggleRow, allSelected = false, onToggleAll, renderRowActions, onRowClick, canOpenRow, }) => {
31
+ /**
32
+ * Render a column's header or cell template by CALLING it, never by mounting it.
33
+ *
34
+ * TanStack's `flexRender` mounts any function it is given as a component (`React.createElement(fn, props)`),
35
+ * so the function's identity becomes the element's TYPE. This table builds its column definitions in a
36
+ * `useMemo` over the host's inputs (sort, selection, the row-actions renderer…), and every rebuild hands
37
+ * each cell a NEW function — a new component type — so React unmounted every cell's subtree and mounted a
38
+ * fresh one. For a value cell that was only wasted work; for the row ACTIONS it was the whole state of the
39
+ * row's action bar: the anchored panel a click had just opened, the confirmation it had just raised. The
40
+ * action "did nothing" because what it did was discarded in the next render (#2057).
41
+ *
42
+ * Calling the template returns the element it describes — `<FieldValueRenderer>`, `<CheckboxRoot>`, the
43
+ * host's row actions — whose types are stable, so React reconciles each cell in place across rebuilds. It is
44
+ * safe because none of these templates calls a hook: each is a plain render function over its context.
45
+ */
46
+ function renderColumnTemplate(template, context) {
47
+ if (template === undefined)
48
+ return null;
49
+ return typeof template === 'function' ? template(context) : template;
50
+ }
51
+ export const ResourceCollectionBody_Table = ({ items, resourceType, resourceConfig, navigationZone, summaryFields, contextResourceIdentifiers, fieldLabelsMap, sortFields, sortStates, onSortChange, selectable = false, isRowSelected, onToggleRow, allSelected = false, onToggleAll, renderRowActions, onRowClick, canOpenRow, }) => {
32
52
  const { tComponent, tResourceFieldEnumValue } = useI18n({
33
53
  component: FrontendComponentType.RESOURCES_LAYOUTS_LIST,
34
54
  resource: resourceType,
@@ -37,10 +57,12 @@ export const ResourceCollectionBody_Table = ({ items, resourceType, resourceConf
37
57
  const inPlaceHost = useInPlaceOperation();
38
58
  const { getRecipe } = useUI();
39
59
  const interactiveRecipe = getRecipe(UIBehavior.INTERACTIVE, InteractiveVariant.GHOST);
60
+ // Column headings name what is below them: the EYEBROW voice, as a record's fact tiles name their values.
61
+ const eyebrowRecipe = getRecipe(UIBehavior.TYPOGRAPHY, TypographyVariant.EYEBROW);
40
62
  const schemaShape = useMemo(() => {
41
- const mainSchema = resourceConfig?.mainSchema;
42
- // Polymorphic resources feed a discriminated-union schema; resolve the union-aware field shape (else getObjectShape returns null for the union → no field labels).
43
- return mainSchema ? (AutomatedLayoutFrontendUtils.getObjectLikeFieldShape(mainSchema, { commonOnly: false }) ?? null) : null;
63
+ // Columns span every row, so every field some row can hold (#2455): a variant column is typed too. A family's
64
+ // `mainSchema` is its base object since #2414, not a discriminated union.
65
+ return FrontendResourceUtils.resolveFieldShapeOfAnyVariant(resourceConfig) ?? null;
44
66
  }, [resourceConfig]);
45
67
  const sortableFieldsSet = useMemo(() => new Set(sortFields), [sortFields]);
46
68
  const columns = useMemo(() => {
@@ -84,7 +106,7 @@ export const ResourceCollectionBody_Table = ({ items, resourceType, resourceConf
84
106
  }
85
107
  }, children: [label, isActiveSort && (_jsxs("span", { className: "inline-flex items-center gap-0.5 text-muted-foreground", "aria-hidden": "true", children: [renderIcon(direction === 'asc' ? StandardIconReference.CHEVRON_UP : StandardIconReference.CHEVRON_DOWN, { size: IconSize.XS }), sortStates.length > 1 && (_jsx("span", { className: "text-[10px] font-semibold tabular-nums", children: ruleIndex + 1 }))] }))] }));
86
108
  },
87
- cell: ({ row }) => (_jsx(FieldValueRenderer, { value: row.original[fieldName], fieldSchema: fieldSchema, fieldLabel: undefined, resourceType: resourceType, record: row.original, fieldName: fieldName, tResourceFieldEnumValue: tResourceFieldEnumValue })),
109
+ cell: ({ row }) => (_jsx(FieldValueRenderer, { value: row.original[fieldName], fieldSchema: fieldSchema, fieldLabel: undefined, resourceType: resourceType, record: row.original, collectionContextResourceIdentifiers: contextResourceIdentifiers, fieldName: fieldName, tResourceFieldEnumValue: tResourceFieldEnumValue })),
88
110
  });
89
111
  }
90
112
  // Trailing per-row actions column (at the END of the row). Right-aligned,
@@ -99,7 +121,7 @@ export const ResourceCollectionBody_Table = ({ items, resourceType, resourceConf
99
121
  });
100
122
  }
101
123
  return cols;
102
- }, [selectable, allSelected, onToggleAll, isRowSelected, onToggleRow, renderRowActions, summaryFields, schemaShape, sortableFieldsSet, fieldLabelsMap, sortStates, onSortChange, resourceType, tResourceFieldEnumValue, tComponent, renderIcon]);
124
+ }, [selectable, allSelected, onToggleAll, isRowSelected, onToggleRow, renderRowActions, summaryFields, contextResourceIdentifiers, schemaShape, sortableFieldsSet, fieldLabelsMap, sortStates, onSortChange, resourceType, tResourceFieldEnumValue, tComponent, renderIcon]);
103
125
  const table = useReactTable({
104
126
  data: items,
105
127
  columns,
@@ -110,9 +132,9 @@ export const ResourceCollectionBody_Table = ({ items, resourceType, resourceConf
110
132
  // Sorting is server-side (the host re-fetches on sort change).
111
133
  manualSorting: true,
112
134
  });
113
- return (_jsx(_Fragment, { children: _jsx("div", { className: "rounded-lg border border-border overflow-hidden", children: _jsx("div", { className: "overflow-x-auto", children: _jsxs("table", { "data-slot": "table", className: "w-full text-sm", "aria-label": tComponent(FrontendComponentType.RESOURCES_LAYOUTS_LIST, 'listLabel'), children: [_jsx("thead", { className: "bg-muted/50 border-b border-border", children: table.getHeaderGroups().map(headerGroup => (_jsx("tr", { children: headerGroup.headers.map(header => (_jsx("th", { className: "px-card-sm py-element-sm text-start text-xs font-medium text-muted-foreground uppercase tracking-wider", style: { width: header.getSize() !== 150 ? header.getSize() : undefined }, children: header.isPlaceholder
135
+ return (_jsx(_Fragment, { children: _jsx("div", { className: "rounded-lg border border-border overflow-hidden", children: _jsx("div", { className: "overflow-x-auto", children: _jsxs("table", { "data-slot": "table", className: "w-full text-sm", "aria-label": tComponent(FrontendComponentType.RESOURCES_LAYOUTS_LIST, 'listLabel'), children: [_jsx("thead", { className: "bg-muted/50 border-b border-border", children: table.getHeaderGroups().map(headerGroup => (_jsx("tr", { children: headerGroup.headers.map(header => (_jsx("th", { className: cn("px-card-sm py-element-sm text-start", eyebrowRecipe.base), style: { width: header.getSize() !== 150 ? header.getSize() : undefined }, children: header.isPlaceholder
114
136
  ? null
115
- : flexRender(header.column.columnDef.header, header.getContext()) }, header.id))) }, headerGroup.id))) }), _jsx("tbody", { className: "divide-y divide-border", children: table.getRowModel().rows.map(row => {
137
+ : renderColumnTemplate(header.column.columnDef.header, header.getContext()) }, header.id))) }, headerGroup.id))) }), _jsx("tbody", { className: "divide-y divide-border", children: table.getRowModel().rows.map(row => {
116
138
  // A row being TRANSFORMED by an INLINE action replaces its cells with the operation
117
139
  // body, spanning the full width, and every other row stays exactly where it is.
118
140
  //
@@ -125,10 +147,12 @@ export const ResourceCollectionBody_Table = ({ items, resourceType, resourceConf
125
147
  return (_jsx("tr", { role: "row", children: _jsx("td", { colSpan: row.getVisibleCells().length, className: "p-0", children: _jsx(ResourceInPlaceOperationRow, { navigationZone: navigationZone }) }) }, row.id));
126
148
  }
127
149
  const rowIsOpenable = canOpenRow ? canOpenRow(row.original) : true;
128
- return (_jsx("tr", { className: cn(
150
+ return (_jsx("tr", { "data-slot": "resource-list-item", className: cn(
129
151
  // Hover tint and pointer travel together with the behaviour: a row that opens
130
152
  // nothing must not advertise that it does.
131
- rowIsOpenable && (interactiveRecipe.states.hover || 'hover:bg-muted/30'), 'transition-colors motion-reduce:transition-none', rowIsOpenable && 'cursor-pointer', isRowSelected?.(row.original) && 'bg-primary/5'), onClick: rowIsOpenable ? () => onRowClick(row.original) : undefined, role: "row", "aria-selected": selectable ? (isRowSelected?.(row.original) ?? false) : undefined, tabIndex: rowIsOpenable ? 0 : undefined, onKeyDown: rowIsOpenable ? (e) => {
153
+ rowIsOpenable && (interactiveRecipe.states.hover || 'hover:bg-muted/30'), 'transition-colors motion-reduce:transition-none', rowIsOpenable && 'cursor-pointer',
154
+ // The table container clips (`rounded-lg overflow-hidden`): the contract's INSET outline.
155
+ rowIsOpenable && focusIndicatorClasses(FocusIndicatorShape.INSET), isRowSelected?.(row.original) && 'bg-primary/5'), onClick: rowIsOpenable ? () => onRowClick(row.original) : undefined, role: "row", "aria-selected": selectable ? (isRowSelected?.(row.original) ?? false) : undefined, tabIndex: rowIsOpenable ? 0 : undefined, onKeyDown: rowIsOpenable ? (e) => {
132
156
  if (e.key === 'Enter' || e.key === ' ') {
133
157
  e.preventDefault();
134
158
  onRowClick(row.original);
@@ -139,7 +163,7 @@ export const ResourceCollectionBody_Table = ({ items, resourceType, resourceConf
139
163
  // their controls (mouse OR keyboard) don't also trigger the
140
164
  // row's navigation (the <tr> has an Enter/Space onKeyDown).
141
165
  const isControlColumn = cell.column.id === '__select' || cell.column.id === '__actions';
142
- return (_jsx(TableCell, { className: "px-card-sm py-element-sm text-foreground", truncate: !isControlColumn, onClick: isControlColumn ? (e) => e.stopPropagation() : undefined, onKeyDown: isControlColumn ? (e) => e.stopPropagation() : undefined, children: flexRender(cell.column.columnDef.cell, cell.getContext()) }, cell.id));
166
+ return (_jsx(TableCell, { className: "px-card-sm py-element-sm text-foreground", truncate: !isControlColumn, onClick: isControlColumn ? (e) => e.stopPropagation() : undefined, onKeyDown: isControlColumn ? (e) => e.stopPropagation() : undefined, children: renderColumnTemplate(cell.column.columnDef.cell, cell.getContext()) }, cell.id));
143
167
  }) }, row.id));
144
168
  }) })] }) }) }) }));
145
169
  };
@@ -1 +1 @@
1
- {"version":3,"file":"ResourceCollectionBody_Table.js","sourceRoot":"","sources":["../../../../../src/components/resources/ResourceCollectionBody_Table.tsx"],"names":[],"mappings":"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","sourcesContent":["/**\n * ResourceCollectionBody_Table — the TABLE rendering of a resource collection.\n *\n * Presentational: it receives the already-fetched `items` plus the collection's\n * sort/selection state + handlers from the host, derives columns from the\n * resource's summary fields (schema-aware cells via {@link FieldValueRenderer}),\n * and renders a TanStack table with sortable headers (server-side), a selection\n * checkbox column, and a floating selected-count summary.\n *\n * Extracted from the former standalone `List_Table` preset so a single host can\n * swap between this body and the cards body at runtime (the cards↔table toggle)\n * without duplicating the data/fetch layer.\n */\n\nimport React, { useCallback, useMemo } from 'react';\nimport {\n useReactTable,\n getCoreRowModel,\n flexRender,\n type ColumnDef,\n} from '@tanstack/react-table';\nimport { z } from 'zod';\nimport { useI18n } from '~wildo-frontend-lib/core/i18n/useI18n';\nimport { cn } from '~wildo-frontend-lib/core/ui/cn';\nimport { useIconRegistry } from '~wildo-frontend-lib/core/icons/useIconRegistry';\nimport { StandardIconReference, IconSize } from '~wildo-frontend-lib/core/icons/icon-registry.frontend.schemas';\nimport { useUI } from '~wildo-frontend-lib/core/ui/useUI';\nimport { ButtonSize, FrontendComponentType, InteractiveVariant, UIBehavior } from '@wildo-ai/presets-components-models';\nimport { Button, ButtonVariants_Variant } from '~wildo-frontend-lib/components/actions/button';\nimport { CheckboxRoot } from '~wildo-frontend-lib/components/form/controls/boolean/checkbox';\nimport { TableCell } from '~wildo-frontend-lib/components/sections/table';\nimport { FieldValueRenderer } from '~wildo-frontend-lib/components/resources/ResourceListItemRenderer';\nimport { AutomatedLayoutFrontendUtils } from '~wildo-frontend-lib/core/automated-layout/automated-layout.frontend.utils';\nimport type { AnyFrontendResourceConfiguration } from '~wildo-frontend-lib/core/resources/resources.frontend.schemas';\nimport type { SortState } from '~wildo-frontend-lib/components/resources/ResourceLayout_SortControl';\nimport { ResourceInPlaceOperationRow } from '~wildo-frontend-lib/components/resources/ResourceInPlaceOperationRow';\nimport { useInPlaceOperation } from '~wildo-frontend-lib/core/resources/in-place/InPlaceOperationContext';\nimport { FrontendResourceUtils } from '~wildo-frontend-lib/core/resources/frontend-resource.utils';\nimport type { NavigationZone } from '~wildo-frontend-lib/core/navigation/navigation.schemas';\n\ntype TableItem = Record<string, any>;\n\nexport interface ResourceCollectionBody_TableProps {\n /** The fetched items to render as rows. */\n items: TableItem[];\n /** Resource type for i18n + cell formatting. */\n resourceType: string;\n /** Resource configuration — provides the main schema for column type detection. */\n resourceConfig: AnyFrontendResourceConfiguration;\n /**\n * The zone this table is rendered in — forwarded to the in-place operation body so a transformed\n * row hosts its operation in the same zone as every other host on this surface.\n */\n navigationZone: NavigationZone;\n /** Ordered summary fields → one column each. */\n summaryFields: string[];\n /** Pre-resolved i18n field labels (column headers). */\n fieldLabelsMap: Record<string, string>;\n /** Sortable field names (sortable column headers). */\n sortFields: readonly string[];\n /** Active sort rules, highest priority first (drives the header indicators). */\n sortStates: readonly SortState[];\n /** Sort change handler (owned by the host; also resets pagination). */\n onSortChange: (sorts: SortState[]) => void;\n /**\n * Item-based selection, driven by the host's shared selection model (the SAME\n * model the CARDS checkboxes use, so a selection survives the cards↔table\n * toggle and feeds the bulk bar). When `selectable` is false the select column\n * is omitted entirely.\n */\n selectable?: boolean;\n /** Whether a given row's item is currently selected. */\n isRowSelected?: (item: TableItem) => boolean;\n /** Toggle a single row's item selection. */\n onToggleRow?: (item: TableItem) => void;\n /** Whether EVERY current-page item is selected (header checkbox state). */\n allSelected?: boolean;\n /** Toggle selection of every current-page item (header checkbox). */\n onToggleAll?: () => void;\n /**\n * Per-row actions rendered in a trailing column at the END of each row (parity\n * with the cards' per-item operations). Omit to render no actions column.\n */\n renderRowActions?: (item: TableItem) => React.ReactNode;\n /** Row click handler — navigates to the item's READ view. */\n onRowClick: (item: TableItem) => void;\n /**\n * Can THIS row be opened? Omitted means every row can.\n *\n * The row's whole interactive presentation — pointer, focusability, Enter/Space — is read off this\n * rather than off the presence of `onRowClick`, because `onRowClick` is one prop for the table\n * while openability is a property of the row. Without it the table promised a click on rows whose\n * READ resolves to no view, and answered nothing: the card's defect, one surface over.\n */\n canOpenRow?: (item: TableItem) => boolean;\n}\n\nexport const ResourceCollectionBody_Table = ({\n items,\n resourceType,\n resourceConfig,\n navigationZone,\n summaryFields,\n fieldLabelsMap,\n sortFields,\n sortStates,\n onSortChange,\n selectable = false,\n isRowSelected,\n onToggleRow,\n allSelected = false,\n onToggleAll,\n renderRowActions,\n onRowClick,\n canOpenRow,\n}: ResourceCollectionBody_TableProps): React.JSX.Element => {\n const { tComponent, tResourceFieldEnumValue } = useI18n({\n component: FrontendComponentType.RESOURCES_LAYOUTS_LIST,\n resource: resourceType,\n });\n const { renderIcon } = useIconRegistry();\n const inPlaceHost = useInPlaceOperation();\n const { getRecipe } = useUI();\n const interactiveRecipe = getRecipe(UIBehavior.INTERACTIVE, InteractiveVariant.GHOST);\n\n const schemaShape = useMemo(() => {\n const mainSchema = resourceConfig?.mainSchema;\n // Polymorphic resources feed a discriminated-union schema; resolve the union-aware field shape (else getObjectShape returns null for the union → no field labels).\n return mainSchema ? (AutomatedLayoutFrontendUtils.getObjectLikeFieldShape(mainSchema, { commonOnly: false }) ?? null) : null;\n }, [resourceConfig]);\n\n const sortableFieldsSet = useMemo(() => new Set(sortFields), [sortFields]);\n\n const columns = useMemo<ColumnDef<TableItem>[]>(() => {\n const cols: ColumnDef<TableItem>[] = [];\n\n // Select column — only when the view is selectable. Item-based (the host's\n // shared selection), not TanStack's internal row-selection model.\n if (selectable) {\n cols.push({\n id: '__select',\n header: () => (\n <CheckboxRoot\n checked={allSelected}\n onCheckedChange={() => onToggleAll?.()}\n aria-label={tComponent(FrontendComponentType.RESOURCES_LAYOUTS_LIST, 'selectAll')}\n />\n ),\n cell: ({ row }) => (\n <CheckboxRoot\n checked={isRowSelected?.(row.original) ?? false}\n onCheckedChange={() => onToggleRow?.(row.original)}\n aria-label={tComponent(FrontendComponentType.RESOURCES_LAYOUTS_LIST, 'selectRow', { row: row.index + 1 })}\n />\n ),\n size: 40,\n enableSorting: false,\n });\n }\n\n for (const fieldName of summaryFields) {\n const fieldSchema = schemaShape?.[fieldName] as z.ZodTypeAny | undefined;\n const isSortable = sortableFieldsSet.has(fieldName);\n const label = fieldLabelsMap[fieldName] || fieldName;\n\n cols.push({\n id: fieldName,\n accessorFn: (row) => row[fieldName],\n header: () => {\n if (!isSortable) return <span>{label}</span>;\n\n const ruleIndex = sortStates.findIndex((s) => s.field === fieldName);\n const isActiveSort = ruleIndex >= 0;\n const direction = isActiveSort ? sortStates[ruleIndex].direction : null;\n\n return (\n <Button\n type=\"button\"\n variant={ButtonVariants_Variant.GHOST}\n size={ButtonSize.SM}\n className=\"inline-flex items-center gap-1 text-start -ms-2 h-auto py-0.5 px-2 font-medium\"\n onClick={() => {\n // Cycle THIS column within the multi-sort, keeping the other rules\n // (priority = order added). Owned by the host (also resets page):\n // unsorted → append asc → desc → removed.\n if (ruleIndex < 0) {\n onSortChange([...sortStates, { field: fieldName, direction: 'asc' }]);\n } else if (sortStates[ruleIndex].direction === 'asc') {\n onSortChange(sortStates.map((s, i) => (i === ruleIndex ? { ...s, direction: 'desc' } : s)));\n } else {\n onSortChange(sortStates.filter((_, i) => i !== ruleIndex));\n }\n }}\n >\n {label}\n {isActiveSort && (\n <span className=\"inline-flex items-center gap-0.5 text-muted-foreground\" aria-hidden=\"true\">\n {renderIcon(\n direction === 'asc' ? StandardIconReference.CHEVRON_UP : StandardIconReference.CHEVRON_DOWN,\n { size: IconSize.XS },\n )}\n {sortStates.length > 1 && (\n <span className=\"text-[10px] font-semibold tabular-nums\">{ruleIndex + 1}</span>\n )}\n </span>\n )}\n </Button>\n );\n },\n cell: ({ row }) => (\n <FieldValueRenderer\n value={row.original[fieldName]}\n fieldSchema={fieldSchema}\n fieldLabel={undefined}\n resourceType={resourceType}\n record={row.original as Record<string, unknown>}\n fieldName={fieldName}\n tResourceFieldEnumValue={tResourceFieldEnumValue}\n />\n ),\n });\n }\n\n // Trailing per-row actions column (at the END of the row). Right-aligned,\n // non-sortable, header label sr-only. The host supplies the same operations\n // bar the cards use via `renderRowActions`.\n if (renderRowActions) {\n cols.push({\n id: '__actions',\n header: () => (\n <span className=\"sr-only\">{tComponent(FrontendComponentType.RESOURCES_LAYOUTS_LIST, 'actionsColumn')}</span>\n ),\n cell: ({ row }) => (\n <div className=\"flex justify-end\">{renderRowActions(row.original)}</div>\n ),\n enableSorting: false,\n });\n }\n\n return cols;\n }, [selectable, allSelected, onToggleAll, isRowSelected, onToggleRow, renderRowActions, summaryFields, schemaShape, sortableFieldsSet, fieldLabelsMap, sortStates, onSortChange, resourceType, tResourceFieldEnumValue, tComponent, renderIcon]);\n\n const table = useReactTable({\n data: items,\n columns,\n getCoreRowModel: getCoreRowModel(),\n // Stable row id: resource id when present, else the row index (NOT a random\n // value — a fresh id per render would break keys + force re-renders).\n getRowId: (row, index) => String(row.id ?? row._id ?? index),\n // Sorting is server-side (the host re-fetches on sort change).\n manualSorting: true,\n });\n\n return (\n <>\n <div className=\"rounded-lg border border-border overflow-hidden\">\n <div className=\"overflow-x-auto\">\n {/* `data-slot=\"table\"`: this IS a data table, which is what a surface's embedded-table padding keys on. */}\n <table data-slot=\"table\" className=\"w-full text-sm\" aria-label={tComponent(FrontendComponentType.RESOURCES_LAYOUTS_LIST, 'listLabel')}>\n <thead className=\"bg-muted/50 border-b border-border\">\n {table.getHeaderGroups().map(headerGroup => (\n <tr key={headerGroup.id}>\n {headerGroup.headers.map(header => (\n <th\n key={header.id}\n className=\"px-card-sm py-element-sm text-start text-xs font-medium text-muted-foreground uppercase tracking-wider\"\n style={{ width: header.getSize() !== 150 ? header.getSize() : undefined }}\n >\n {header.isPlaceholder\n ? null\n : flexRender(header.column.columnDef.header, header.getContext())}\n </th>\n ))}\n </tr>\n ))}\n </thead>\n <tbody className=\"divide-y divide-border\">\n {table.getRowModel().rows.map(row => {\n // A row being TRANSFORMED by an INLINE action replaces its cells with the operation\n // body, spanning the full width, and every other row stays exactly where it is.\n //\n // This is the SIBLING of the cards-mode swap in `ResourceLayout_List`, and it exists\n // because the two bodies are two call sites of one invariant: a view that offers a\n // cards↔table toggle would otherwise transform the row in one mode and open an\n // overlay in the other, from the same button.\n const rowId = FrontendResourceUtils.getResourceObjectId(\n row.original,\n resourceConfig.resourceFieldIdentifier as string,\n );\n if (inPlaceHost.isElementActive(rowId)) {\n return (\n <tr key={row.id} role=\"row\">\n <td colSpan={row.getVisibleCells().length} className=\"p-0\">\n <ResourceInPlaceOperationRow navigationZone={navigationZone} />\n </td>\n </tr>\n );\n }\n\n const rowIsOpenable = canOpenRow ? canOpenRow(row.original) : true;\n\n return (\n <tr\n key={row.id}\n className={cn(\n // Hover tint and pointer travel together with the behaviour: a row that opens\n // nothing must not advertise that it does.\n rowIsOpenable && (interactiveRecipe.states.hover || 'hover:bg-muted/30'),\n 'transition-colors motion-reduce:transition-none',\n rowIsOpenable && 'cursor-pointer',\n isRowSelected?.(row.original) && 'bg-primary/5',\n )}\n onClick={rowIsOpenable ? () => onRowClick(row.original) : undefined}\n role=\"row\"\n aria-selected={selectable ? (isRowSelected?.(row.original) ?? false) : undefined}\n tabIndex={rowIsOpenable ? 0 : undefined}\n onKeyDown={rowIsOpenable ? (e) => {\n if (e.key === 'Enter' || e.key === ' ') {\n e.preventDefault();\n onRowClick(row.original);\n }\n } : undefined}\n >\n {row.getVisibleCells().map(cell => {\n // Control columns (select checkbox, per-row actions) never\n // truncate and stop BOTH click and keydown propagation so\n // their controls (mouse OR keyboard) don't also trigger the\n // row's navigation (the <tr> has an Enter/Space onKeyDown).\n const isControlColumn = cell.column.id === '__select' || cell.column.id === '__actions';\n return (\n <TableCell\n key={cell.id}\n className=\"px-card-sm py-element-sm text-foreground\"\n truncate={!isControlColumn}\n onClick={isControlColumn ? (e) => e.stopPropagation() : undefined}\n onKeyDown={isControlColumn ? (e) => e.stopPropagation() : undefined}\n >\n {flexRender(cell.column.columnDef.cell, cell.getContext())}\n </TableCell>\n );\n })}\n </tr>\n );\n })}\n </tbody>\n </table>\n </div>\n </div>\n </>\n );\n};\n"]}
1
+ {"version":3,"file":"ResourceCollectionBody_Table.js","sourceRoot":"","sources":["../../../../../src/components/resources/ResourceCollectionBody_Table.tsx"],"names":[],"mappings":"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","sourcesContent":["/**\n * ResourceCollectionBody_Table — the TABLE rendering of a resource collection.\n *\n * Presentational: it receives the already-fetched `items` plus the collection's\n * sort/selection state + handlers from the host, derives columns from the\n * resource's summary fields (schema-aware cells via {@link FieldValueRenderer}),\n * and renders a TanStack table with sortable headers (server-side), a selection\n * checkbox column, and a floating selected-count summary.\n *\n * Extracted from the former standalone `List_Table` preset so a single host can\n * swap between this body and the cards body at runtime (the cards↔table toggle)\n * without duplicating the data/fetch layer.\n */\n\nimport React, { useCallback, useMemo } from 'react';\nimport {\n useReactTable,\n getCoreRowModel,\n type ColumnDef,\n type ColumnDefTemplate,\n} from '@tanstack/react-table';\nimport { z } from 'zod';\nimport { useI18n } from '~wildo-frontend-lib/core/i18n/useI18n';\nimport { cn } from '~wildo-frontend-lib/core/ui/cn';\nimport { focusIndicatorClasses, FocusIndicatorShape } from '~wildo-frontend-lib/core/ui/themes/focus-indicator';\nimport { useIconRegistry } from '~wildo-frontend-lib/core/icons/useIconRegistry';\nimport { StandardIconReference, IconSize } from '~wildo-frontend-lib/core/icons/icon-registry.frontend.schemas';\nimport { useUI } from '~wildo-frontend-lib/core/ui/useUI';\nimport { ButtonSize, FrontendComponentType, InteractiveVariant, TypographyVariant, UIBehavior } from '@wildo-ai/presets-components-models';\nimport { Button, ButtonVariants_Variant } from '~wildo-frontend-lib/components/actions/button';\nimport { CheckboxRoot } from '~wildo-frontend-lib/components/form/controls/boolean/checkbox';\nimport { TableCell } from '~wildo-frontend-lib/components/sections/table';\nimport { FieldValueRenderer } from '~wildo-frontend-lib/components/resources/ResourceListItemRenderer';\nimport { AutomatedLayoutFrontendUtils } from '~wildo-frontend-lib/core/automated-layout/automated-layout.frontend.utils';\nimport type { AnyFrontendResourceConfiguration, FrontendResourceOperationContext } from '~wildo-frontend-lib/core/resources/resources.frontend.schemas';\nimport type { SortState } from '~wildo-frontend-lib/components/resources/ResourceLayout_SortControl';\nimport { ResourceInPlaceOperationRow } from '~wildo-frontend-lib/components/resources/ResourceInPlaceOperationRow';\nimport { useInPlaceOperation } from '~wildo-frontend-lib/core/resources/in-place/InPlaceOperationContext';\nimport { FrontendResourceUtils } from '~wildo-frontend-lib/core/resources/frontend-resource.utils';\nimport type { NavigationZone } from '~wildo-frontend-lib/core/navigation/navigation.schemas';\n\ntype TableItem = Record<string, any>;\n\n/**\n * Render a column's header or cell template by CALLING it, never by mounting it.\n *\n * TanStack's `flexRender` mounts any function it is given as a component (`React.createElement(fn, props)`),\n * so the function's identity becomes the element's TYPE. This table builds its column definitions in a\n * `useMemo` over the host's inputs (sort, selection, the row-actions renderer…), and every rebuild hands\n * each cell a NEW function — a new component type — so React unmounted every cell's subtree and mounted a\n * fresh one. For a value cell that was only wasted work; for the row ACTIONS it was the whole state of the\n * row's action bar: the anchored panel a click had just opened, the confirmation it had just raised. The\n * action \"did nothing\" because what it did was discarded in the next render (#2057).\n *\n * Calling the template returns the element it describes — `<FieldValueRenderer>`, `<CheckboxRoot>`, the\n * host's row actions — whose types are stable, so React reconciles each cell in place across rebuilds. It is\n * safe because none of these templates calls a hook: each is a plain render function over its context.\n */\nfunction renderColumnTemplate<TContext extends object>(\n template: ColumnDefTemplate<TContext> | undefined,\n context: TContext,\n): React.ReactNode {\n if (template === undefined) return null;\n return typeof template === 'function' ? template(context) : template;\n}\n\nexport interface ResourceCollectionBody_TableProps {\n /** The fetched items to render as rows. */\n items: TableItem[];\n /** Resource type for i18n + cell formatting. */\n resourceType: string;\n /** Resource configuration — provides the main schema for column type detection. */\n resourceConfig: AnyFrontendResourceConfiguration;\n /**\n * The zone this table is rendered in — forwarded to the in-place operation body so a transformed\n * row hosts its operation in the same zone as every other host on this surface.\n */\n navigationZone: NavigationZone;\n /** Ordered summary fields → one column each. */\n summaryFields: string[];\n /**\n * The collection's resource identifiers (its route scope and parents). Each cell reads in its ROW's scope, built\n * from these and the row (`FieldValueRenderer`), so a reference in a cell is fetched where the row lives (#2347).\n */\n contextResourceIdentifiers: FrontendResourceOperationContext['contextResourceIdentifiers'] | undefined;\n /** Pre-resolved i18n field labels (column headers). */\n fieldLabelsMap: Record<string, string>;\n /** Sortable field names (sortable column headers). */\n sortFields: readonly string[];\n /** Active sort rules, highest priority first (drives the header indicators). */\n sortStates: readonly SortState[];\n /** Sort change handler (owned by the host; also resets pagination). */\n onSortChange: (sorts: SortState[]) => void;\n /**\n * Item-based selection, driven by the host's shared selection model (the SAME\n * model the CARDS checkboxes use, so a selection survives the cards↔table\n * toggle and feeds the bulk bar). When `selectable` is false the select column\n * is omitted entirely.\n */\n selectable?: boolean;\n /** Whether a given row's item is currently selected. */\n isRowSelected?: (item: TableItem) => boolean;\n /** Toggle a single row's item selection. */\n onToggleRow?: (item: TableItem) => void;\n /** Whether EVERY current-page item is selected (header checkbox state). */\n allSelected?: boolean;\n /** Toggle selection of every current-page item (header checkbox). */\n onToggleAll?: () => void;\n /**\n * Per-row actions rendered in a trailing column at the END of each row (parity\n * with the cards' per-item operations). Omit to render no actions column.\n */\n renderRowActions?: (item: TableItem) => React.ReactNode;\n /** Row click handler — navigates to the item's READ view. */\n onRowClick: (item: TableItem) => void;\n /**\n * Can THIS row be opened? Omitted means every row can.\n *\n * The row's whole interactive presentation — pointer, focusability, Enter/Space — is read off this\n * rather than off the presence of `onRowClick`, because `onRowClick` is one prop for the table\n * while openability is a property of the row. Without it the table promised a click on rows whose\n * READ resolves to no view, and answered nothing: the card's defect, one surface over.\n */\n canOpenRow?: (item: TableItem) => boolean;\n}\n\nexport const ResourceCollectionBody_Table = ({\n items,\n resourceType,\n resourceConfig,\n navigationZone,\n summaryFields,\n contextResourceIdentifiers,\n fieldLabelsMap,\n sortFields,\n sortStates,\n onSortChange,\n selectable = false,\n isRowSelected,\n onToggleRow,\n allSelected = false,\n onToggleAll,\n renderRowActions,\n onRowClick,\n canOpenRow,\n}: ResourceCollectionBody_TableProps): React.JSX.Element => {\n const { tComponent, tResourceFieldEnumValue } = useI18n({\n component: FrontendComponentType.RESOURCES_LAYOUTS_LIST,\n resource: resourceType,\n });\n const { renderIcon } = useIconRegistry();\n const inPlaceHost = useInPlaceOperation();\n const { getRecipe } = useUI();\n const interactiveRecipe = getRecipe(UIBehavior.INTERACTIVE, InteractiveVariant.GHOST);\n // Column headings name what is below them: the EYEBROW voice, as a record's fact tiles name their values.\n const eyebrowRecipe = getRecipe(UIBehavior.TYPOGRAPHY, TypographyVariant.EYEBROW);\n\n const schemaShape = useMemo(() => {\n // Columns span every row, so every field some row can hold (#2455): a variant column is typed too. A family's\n // `mainSchema` is its base object since #2414, not a discriminated union.\n return FrontendResourceUtils.resolveFieldShapeOfAnyVariant(resourceConfig) ?? null;\n }, [resourceConfig]);\n\n const sortableFieldsSet = useMemo(() => new Set(sortFields), [sortFields]);\n\n const columns = useMemo<ColumnDef<TableItem>[]>(() => {\n const cols: ColumnDef<TableItem>[] = [];\n\n // Select column — only when the view is selectable. Item-based (the host's\n // shared selection), not TanStack's internal row-selection model.\n if (selectable) {\n cols.push({\n id: '__select',\n header: () => (\n <CheckboxRoot\n checked={allSelected}\n onCheckedChange={() => onToggleAll?.()}\n aria-label={tComponent(FrontendComponentType.RESOURCES_LAYOUTS_LIST, 'selectAll')}\n />\n ),\n cell: ({ row }) => (\n <CheckboxRoot\n checked={isRowSelected?.(row.original) ?? false}\n onCheckedChange={() => onToggleRow?.(row.original)}\n aria-label={tComponent(FrontendComponentType.RESOURCES_LAYOUTS_LIST, 'selectRow', { row: row.index + 1 })}\n />\n ),\n size: 40,\n enableSorting: false,\n });\n }\n\n for (const fieldName of summaryFields) {\n const fieldSchema = schemaShape?.[fieldName] as z.ZodTypeAny | undefined;\n const isSortable = sortableFieldsSet.has(fieldName);\n const label = fieldLabelsMap[fieldName] || fieldName;\n\n cols.push({\n id: fieldName,\n accessorFn: (row) => row[fieldName],\n header: () => {\n if (!isSortable) return <span>{label}</span>;\n\n const ruleIndex = sortStates.findIndex((s) => s.field === fieldName);\n const isActiveSort = ruleIndex >= 0;\n const direction = isActiveSort ? sortStates[ruleIndex].direction : null;\n\n return (\n <Button\n type=\"button\"\n variant={ButtonVariants_Variant.GHOST}\n size={ButtonSize.SM}\n className=\"inline-flex items-center gap-1 text-start -ms-2 h-auto py-0.5 px-2 font-medium\"\n onClick={() => {\n // Cycle THIS column within the multi-sort, keeping the other rules\n // (priority = order added). Owned by the host (also resets page):\n // unsorted → append asc → desc → removed.\n if (ruleIndex < 0) {\n onSortChange([...sortStates, { field: fieldName, direction: 'asc' }]);\n } else if (sortStates[ruleIndex].direction === 'asc') {\n onSortChange(sortStates.map((s, i) => (i === ruleIndex ? { ...s, direction: 'desc' } : s)));\n } else {\n onSortChange(sortStates.filter((_, i) => i !== ruleIndex));\n }\n }}\n >\n {label}\n {isActiveSort && (\n <span className=\"inline-flex items-center gap-0.5 text-muted-foreground\" aria-hidden=\"true\">\n {renderIcon(\n direction === 'asc' ? StandardIconReference.CHEVRON_UP : StandardIconReference.CHEVRON_DOWN,\n { size: IconSize.XS },\n )}\n {sortStates.length > 1 && (\n <span className=\"text-[10px] font-semibold tabular-nums\">{ruleIndex + 1}</span>\n )}\n </span>\n )}\n </Button>\n );\n },\n cell: ({ row }) => (\n <FieldValueRenderer\n value={row.original[fieldName]}\n fieldSchema={fieldSchema}\n fieldLabel={undefined}\n resourceType={resourceType}\n record={row.original as Record<string, unknown>}\n collectionContextResourceIdentifiers={contextResourceIdentifiers}\n fieldName={fieldName}\n tResourceFieldEnumValue={tResourceFieldEnumValue}\n />\n ),\n });\n }\n\n // Trailing per-row actions column (at the END of the row). Right-aligned,\n // non-sortable, header label sr-only. The host supplies the same operations\n // bar the cards use via `renderRowActions`.\n if (renderRowActions) {\n cols.push({\n id: '__actions',\n header: () => (\n <span className=\"sr-only\">{tComponent(FrontendComponentType.RESOURCES_LAYOUTS_LIST, 'actionsColumn')}</span>\n ),\n cell: ({ row }) => (\n <div className=\"flex justify-end\">{renderRowActions(row.original)}</div>\n ),\n enableSorting: false,\n });\n }\n\n return cols;\n }, [selectable, allSelected, onToggleAll, isRowSelected, onToggleRow, renderRowActions, summaryFields, contextResourceIdentifiers, schemaShape, sortableFieldsSet, fieldLabelsMap, sortStates, onSortChange, resourceType, tResourceFieldEnumValue, tComponent, renderIcon]);\n\n const table = useReactTable({\n data: items,\n columns,\n getCoreRowModel: getCoreRowModel(),\n // Stable row id: resource id when present, else the row index (NOT a random\n // value — a fresh id per render would break keys + force re-renders).\n getRowId: (row, index) => String(row.id ?? row._id ?? index),\n // Sorting is server-side (the host re-fetches on sort change).\n manualSorting: true,\n });\n\n return (\n <>\n <div className=\"rounded-lg border border-border overflow-hidden\">\n <div className=\"overflow-x-auto\">\n {/* `data-slot=\"table\"`: this IS a data table, which is what a surface's embedded-table padding keys on. */}\n <table data-slot=\"table\" className=\"w-full text-sm\" aria-label={tComponent(FrontendComponentType.RESOURCES_LAYOUTS_LIST, 'listLabel')}>\n <thead className=\"bg-muted/50 border-b border-border\">\n {table.getHeaderGroups().map(headerGroup => (\n <tr key={headerGroup.id}>\n {headerGroup.headers.map(header => (\n <th\n key={header.id}\n className={cn(\"px-card-sm py-element-sm text-start\", eyebrowRecipe.base)}\n style={{ width: header.getSize() !== 150 ? header.getSize() : undefined }}\n >\n {header.isPlaceholder\n ? null\n : renderColumnTemplate(header.column.columnDef.header, header.getContext())}\n </th>\n ))}\n </tr>\n ))}\n </thead>\n <tbody className=\"divide-y divide-border\">\n {table.getRowModel().rows.map(row => {\n // A row being TRANSFORMED by an INLINE action replaces its cells with the operation\n // body, spanning the full width, and every other row stays exactly where it is.\n //\n // This is the SIBLING of the cards-mode swap in `ResourceLayout_List`, and it exists\n // because the two bodies are two call sites of one invariant: a view that offers a\n // cards↔table toggle would otherwise transform the row in one mode and open an\n // overlay in the other, from the same button.\n const rowId = FrontendResourceUtils.getResourceObjectId(\n row.original,\n resourceConfig.resourceFieldIdentifier as string,\n );\n if (inPlaceHost.isElementActive(rowId)) {\n return (\n <tr key={row.id} role=\"row\">\n <td colSpan={row.getVisibleCells().length} className=\"p-0\">\n <ResourceInPlaceOperationRow navigationZone={navigationZone} />\n </td>\n </tr>\n );\n }\n\n const rowIsOpenable = canOpenRow ? canOpenRow(row.original) : true;\n\n return (\n <tr\n key={row.id}\n // One record in a collection, whichever way it is drawn: the card carries the same marker, and\n // automation (`wildo frontend look --record`, the browser lanes) finds \"a row\" by it. Without it\n // a collection shown as a TABLE read as having no rows to open.\n data-slot=\"resource-list-item\"\n className={cn(\n // Hover tint and pointer travel together with the behaviour: a row that opens\n // nothing must not advertise that it does.\n rowIsOpenable && (interactiveRecipe.states.hover || 'hover:bg-muted/30'),\n 'transition-colors motion-reduce:transition-none',\n rowIsOpenable && 'cursor-pointer',\n // The table container clips (`rounded-lg overflow-hidden`): the contract's INSET outline.\n rowIsOpenable && focusIndicatorClasses(FocusIndicatorShape.INSET),\n isRowSelected?.(row.original) && 'bg-primary/5',\n )}\n onClick={rowIsOpenable ? () => onRowClick(row.original) : undefined}\n role=\"row\"\n aria-selected={selectable ? (isRowSelected?.(row.original) ?? false) : undefined}\n tabIndex={rowIsOpenable ? 0 : undefined}\n onKeyDown={rowIsOpenable ? (e) => {\n if (e.key === 'Enter' || e.key === ' ') {\n e.preventDefault();\n onRowClick(row.original);\n }\n } : undefined}\n >\n {row.getVisibleCells().map(cell => {\n // Control columns (select checkbox, per-row actions) never\n // truncate and stop BOTH click and keydown propagation so\n // their controls (mouse OR keyboard) don't also trigger the\n // row's navigation (the <tr> has an Enter/Space onKeyDown).\n const isControlColumn = cell.column.id === '__select' || cell.column.id === '__actions';\n return (\n <TableCell\n key={cell.id}\n className=\"px-card-sm py-element-sm text-foreground\"\n truncate={!isControlColumn}\n onClick={isControlColumn ? (e) => e.stopPropagation() : undefined}\n onKeyDown={isControlColumn ? (e) => e.stopPropagation() : undefined}\n >\n {renderColumnTemplate(cell.column.columnDef.cell, cell.getContext())}\n </TableCell>\n );\n })}\n </tr>\n );\n })}\n </tbody>\n </table>\n </div>\n </div>\n </>\n );\n};\n"]}
@@ -13,12 +13,12 @@
13
13
  * ## Why a toggle GROUP rather than N buttons
14
14
  *
15
15
  * `ToggleGroup` in `MULTIPLE` mode already answers everything a pill row needs and the framework
16
- * already owns it: pressed state through `data-state=on` (so every theme's `selected` recipe
17
- * applies — including the one that had to be made distinguishable from `hover`) and roving focus
18
- * with arrow keys. A hand-rolled row of `<button aria-pressed>` would be more code answering fewer
16
+ * already owns it: pressed state through `data-state=on` (so every theme's `selectable.chip`
17
+ * selected state applies, with the check mark the group draws on a chip that is on) and roving
18
+ * focus with arrow keys. A hand-rolled row of `<button aria-pressed>` would be more code answering fewer
19
19
  * of those questions.
20
20
  *
21
- * It renders with `ToggleGroupAppearance.PILLS` — separate, fully-rounded chips — and not as the
21
+ * It renders with `ToggleGroupAppearance.CHIPS` — separate chips — and not as the
22
22
  * group's default SEGMENTED control. The first version used the segmented look, and the row read
23
23
  * as ONE three-way choice, which is the wrong promise for narrowings meant to combine.
24
24
  *
@@ -1 +1 @@
1
- {"version":3,"file":"ResourceCollectionFilterPresets.d.ts","sourceRoot":"","sources":["../../../../../src/components/resources/ResourceCollectionFilterPresets.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AAEH,OAAO,KAA+B,MAAM,OAAO,CAAC;AAMpD,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,+DAA+D,CAAC;AAK5G,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,iCAAiC,CAAC;AAEpE,MAAM,WAAW,oCAAoC;IACnD,+CAA+C;IAC/C,YAAY,EAAE,MAAM,CAAC;IACrB,gDAAgD;IAChD,OAAO,EAAE,SAAS,sBAAsB,EAAE,CAAC;IAC3C,6FAA6F;IAC7F,cAAc,EAAE,YAAY,CAAC;IAC7B,8CAA8C;IAC9C,eAAe,EAAE,CAAC,OAAO,EAAE,YAAY,KAAK,IAAI,CAAC;IACjD,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,eAAO,MAAM,+BAA+B,GAAI,wEAM7C,oCAAoC,KAAG,KAAK,CAAC,GAAG,CAAC,OAAO,GAAG,IAuE7D,CAAC"}
1
+ {"version":3,"file":"ResourceCollectionFilterPresets.d.ts","sourceRoot":"","sources":["../../../../../src/components/resources/ResourceCollectionFilterPresets.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AAEH,OAAO,KAA+B,MAAM,OAAO,CAAC;AAKpD,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,+DAA+D,CAAC;AAM5G,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,iCAAiC,CAAC;AAGpE,MAAM,WAAW,oCAAoC;IACnD,+CAA+C;IAC/C,YAAY,EAAE,MAAM,CAAC;IACrB,gDAAgD;IAChD,OAAO,EAAE,SAAS,sBAAsB,EAAE,CAAC;IAC3C,6FAA6F;IAC7F,cAAc,EAAE,YAAY,CAAC;IAC7B,8CAA8C;IAC9C,eAAe,EAAE,CAAC,OAAO,EAAE,YAAY,KAAK,IAAI,CAAC;IACjD,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,eAAO,MAAM,+BAA+B,GAAI,wEAM7C,oCAAoC,KAAG,KAAK,CAAC,GAAG,CAAC,OAAO,GAAG,IA8E7D,CAAC"}