@wildo-ai/presets-components 1.1.4 → 1.1.6

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 (780) hide show
  1. package/dist/esm/components/actions/action-bar.d.ts.map +1 -1
  2. package/dist/esm/components/actions/action-bar.js +65 -8
  3. package/dist/esm/components/actions/action-bar.js.map +1 -1
  4. package/dist/esm/components/actions/action-bar.labels.d.ts.map +1 -1
  5. package/dist/esm/components/actions/action-button.d.ts.map +1 -1
  6. package/dist/esm/components/actions/action-button.js +3 -3
  7. package/dist/esm/components/actions/action-button.js.map +1 -1
  8. package/dist/esm/components/actions/action-button.labels.d.ts.map +1 -1
  9. package/dist/esm/components/actions/button-group.d.ts.map +1 -1
  10. package/dist/esm/components/actions/button.d.ts.map +1 -1
  11. package/dist/esm/components/actions/button.js +62 -3
  12. package/dist/esm/components/actions/button.js.map +1 -1
  13. package/dist/esm/components/actions/button.labels.d.ts.map +1 -1
  14. package/dist/esm/components/ai-elements/artifacts/artifact-browser.d.ts.map +1 -1
  15. package/dist/esm/components/ai-elements/artifacts/artifact.d.ts.map +1 -1
  16. package/dist/esm/components/ai-elements/artifacts/artifact.labels.d.ts.map +1 -1
  17. package/dist/esm/components/ai-elements/artifacts/code-block.d.ts.map +1 -1
  18. package/dist/esm/components/ai-elements/artifacts/code-block.js +1 -1
  19. package/dist/esm/components/ai-elements/artifacts/code-block.js.map +1 -1
  20. package/dist/esm/components/ai-elements/artifacts/code-block.labels.d.ts.map +1 -1
  21. package/dist/esm/components/ai-elements/artifacts/diff-block.d.ts +4 -0
  22. package/dist/esm/components/ai-elements/artifacts/diff-block.d.ts.map +1 -0
  23. package/dist/esm/components/ai-elements/artifacts/diff-block.js +165 -0
  24. package/dist/esm/components/ai-elements/artifacts/diff-block.js.map +1 -0
  25. package/dist/esm/components/ai-elements/artifacts/diff-block.labels.d.ts +3 -0
  26. package/dist/esm/components/ai-elements/artifacts/diff-block.labels.d.ts.map +1 -0
  27. package/dist/esm/components/ai-elements/artifacts/diff-block.labels.js +63 -0
  28. package/dist/esm/components/ai-elements/artifacts/diff-block.labels.js.map +1 -0
  29. package/dist/esm/components/ai-elements/artifacts/image.d.ts.map +1 -1
  30. package/dist/esm/components/ai-elements/artifacts/image.labels.d.ts.map +1 -1
  31. package/dist/esm/components/ai-elements/artifacts/shiki-highlighter-runtime.d.ts.map +1 -1
  32. package/dist/esm/components/ai-elements/artifacts/shiki-highlighter.lazy.d.ts.map +1 -1
  33. package/dist/esm/components/ai-elements/artifacts/web-preview.d.ts.map +1 -1
  34. package/dist/esm/components/ai-elements/artifacts/web-preview.labels.d.ts.map +1 -1
  35. package/dist/esm/components/ai-elements/chat/conversation.d.ts.map +1 -1
  36. package/dist/esm/components/ai-elements/chat/conversation.labels.d.ts.map +1 -1
  37. package/dist/esm/components/ai-elements/chat/message.d.ts.map +1 -1
  38. package/dist/esm/components/ai-elements/chat/message.labels.d.ts.map +1 -1
  39. package/dist/esm/components/ai-elements/chat/prompt-input.d.ts.map +1 -1
  40. package/dist/esm/components/ai-elements/chat/prompt-input.labels.d.ts.map +1 -1
  41. package/dist/esm/components/ai-elements/chat/sources.d.ts.map +1 -1
  42. package/dist/esm/components/ai-elements/chat/sources.labels.d.ts.map +1 -1
  43. package/dist/esm/components/ai-elements/chat/suggestion.d.ts.map +1 -1
  44. package/dist/esm/components/ai-elements/chat/suggestion.js +8 -1
  45. package/dist/esm/components/ai-elements/chat/suggestion.js.map +1 -1
  46. package/dist/esm/components/ai-elements/chat/suggestion.labels.d.ts.map +1 -1
  47. package/dist/esm/components/ai-elements/decision/approval-argument-fields.d.ts +68 -0
  48. package/dist/esm/components/ai-elements/decision/approval-argument-fields.d.ts.map +1 -0
  49. package/dist/esm/components/ai-elements/decision/approval-argument-fields.js +208 -0
  50. package/dist/esm/components/ai-elements/decision/approval-argument-fields.js.map +1 -0
  51. package/dist/esm/components/ai-elements/decision/approval.d.ts +124 -17
  52. package/dist/esm/components/ai-elements/decision/approval.d.ts.map +1 -1
  53. package/dist/esm/components/ai-elements/decision/approval.js +105 -13
  54. package/dist/esm/components/ai-elements/decision/approval.js.map +1 -1
  55. package/dist/esm/components/ai-elements/decision/decision-request.d.ts.map +1 -1
  56. package/dist/esm/components/ai-elements/decision/decision-request.labels.d.ts.map +1 -1
  57. package/dist/esm/components/ai-elements/execution/confirmation.d.ts.map +1 -1
  58. package/dist/esm/components/ai-elements/execution/confirmation.labels.d.ts.map +1 -1
  59. package/dist/esm/components/ai-elements/execution/queue.d.ts.map +1 -1
  60. package/dist/esm/components/ai-elements/execution/queue.labels.d.ts.map +1 -1
  61. package/dist/esm/components/ai-elements/execution/task.d.ts.map +1 -1
  62. package/dist/esm/components/ai-elements/execution/task.js +1 -1
  63. package/dist/esm/components/ai-elements/execution/task.js.map +1 -1
  64. package/dist/esm/components/ai-elements/execution/task.labels.d.ts.map +1 -1
  65. package/dist/esm/components/ai-elements/execution/tool.d.ts.map +1 -1
  66. package/dist/esm/components/ai-elements/execution/tool.js +8 -1
  67. package/dist/esm/components/ai-elements/execution/tool.js.map +1 -1
  68. package/dist/esm/components/ai-elements/execution/tool.labels.d.ts.map +1 -1
  69. package/dist/esm/components/ai-elements/graph/canvas.d.ts.map +1 -1
  70. package/dist/esm/components/ai-elements/graph/canvas.labels.d.ts.map +1 -1
  71. package/dist/esm/components/ai-elements/graph/connection.d.ts.map +1 -1
  72. package/dist/esm/components/ai-elements/graph/connection.labels.d.ts.map +1 -1
  73. package/dist/esm/components/ai-elements/graph/controls.d.ts.map +1 -1
  74. package/dist/esm/components/ai-elements/graph/controls.labels.d.ts.map +1 -1
  75. package/dist/esm/components/ai-elements/graph/edge.d.ts.map +1 -1
  76. package/dist/esm/components/ai-elements/graph/edge.labels.d.ts.map +1 -1
  77. package/dist/esm/components/ai-elements/graph/graph-runtime.d.ts +3 -1
  78. package/dist/esm/components/ai-elements/graph/graph-runtime.d.ts.map +1 -1
  79. package/dist/esm/components/ai-elements/graph/graph-runtime.js +3 -1
  80. package/dist/esm/components/ai-elements/graph/graph-runtime.js.map +1 -1
  81. package/dist/esm/components/ai-elements/graph/graph.lazy.d.ts.map +1 -1
  82. package/dist/esm/components/ai-elements/graph/graph.lazy.js +15 -15
  83. package/dist/esm/components/ai-elements/graph/graph.lazy.js.map +1 -1
  84. package/dist/esm/components/ai-elements/graph/node.d.ts.map +1 -1
  85. package/dist/esm/components/ai-elements/graph/node.labels.d.ts.map +1 -1
  86. package/dist/esm/components/ai-elements/graph/panel.d.ts.map +1 -1
  87. package/dist/esm/components/ai-elements/graph/panel.labels.d.ts.map +1 -1
  88. package/dist/esm/components/ai-elements/graph/toolbar.d.ts.map +1 -1
  89. package/dist/esm/components/ai-elements/graph/toolbar.labels.d.ts.map +1 -1
  90. package/dist/esm/components/ai-elements/meta/agent.d.ts +0 -1
  91. package/dist/esm/components/ai-elements/meta/agent.d.ts.map +1 -1
  92. package/dist/esm/components/ai-elements/meta/agent.js +23 -18
  93. package/dist/esm/components/ai-elements/meta/agent.js.map +1 -1
  94. package/dist/esm/components/ai-elements/meta/context.d.ts.map +1 -1
  95. package/dist/esm/components/ai-elements/meta/context.labels.d.ts.map +1 -1
  96. package/dist/esm/components/ai-elements/meta/context.lazy.d.ts.map +1 -1
  97. package/dist/esm/components/ai-elements/meta/context.lazy.js +13 -11
  98. package/dist/esm/components/ai-elements/meta/context.lazy.js.map +1 -1
  99. package/dist/esm/components/ai-elements/meta/model-selector.d.ts.map +1 -1
  100. package/dist/esm/components/ai-elements/meta/model-selector.labels.d.ts.map +1 -1
  101. package/dist/esm/components/ai-elements/meta/open-in-chat.d.ts.map +1 -1
  102. package/dist/esm/components/ai-elements/meta/open-in-chat.labels.d.ts.map +1 -1
  103. package/dist/esm/components/ai-elements/shared/loader.d.ts.map +1 -1
  104. package/dist/esm/components/ai-elements/shared/loader.labels.d.ts.map +1 -1
  105. package/dist/esm/components/ai-elements/shared/shimmer.d.ts.map +1 -1
  106. package/dist/esm/components/ai-elements/shared/shimmer.labels.d.ts.map +1 -1
  107. package/dist/esm/components/ai-elements/stream/execution-stream.d.ts.map +1 -1
  108. package/dist/esm/components/ai-elements/stream/execution-stream.labels.d.ts.map +1 -1
  109. package/dist/esm/components/ai-elements/trace/chain-of-thought.d.ts +6 -0
  110. package/dist/esm/components/ai-elements/trace/chain-of-thought.d.ts.map +1 -1
  111. package/dist/esm/components/ai-elements/trace/chain-of-thought.js +13 -1
  112. package/dist/esm/components/ai-elements/trace/chain-of-thought.js.map +1 -1
  113. package/dist/esm/components/ai-elements/trace/chain-of-thought.labels.d.ts.map +1 -1
  114. package/dist/esm/components/ai-elements/trace/checkpoint.d.ts.map +1 -1
  115. package/dist/esm/components/ai-elements/trace/checkpoint.labels.d.ts.map +1 -1
  116. package/dist/esm/components/ai-elements/trace/inline-citation.d.ts.map +1 -1
  117. package/dist/esm/components/ai-elements/trace/inline-citation.labels.d.ts.map +1 -1
  118. package/dist/esm/components/ai-elements/trace/plan.d.ts.map +1 -1
  119. package/dist/esm/components/ai-elements/trace/plan.labels.d.ts.map +1 -1
  120. package/dist/esm/components/ai-elements/trace/reasoning.d.ts.map +1 -1
  121. package/dist/esm/components/ai-elements/trace/reasoning.labels.d.ts.map +1 -1
  122. package/dist/esm/components/app/app-layout-consent-gate.d.ts +23 -0
  123. package/dist/esm/components/app/app-layout-consent-gate.d.ts.map +1 -0
  124. package/dist/esm/components/app/app-layout-consent-gate.js +133 -0
  125. package/dist/esm/components/app/app-layout-consent-gate.js.map +1 -0
  126. package/dist/esm/components/app/app-layout-document-acceptance-gate.d.ts +19 -0
  127. package/dist/esm/components/app/app-layout-document-acceptance-gate.d.ts.map +1 -0
  128. package/dist/esm/components/app/app-layout-document-acceptance-gate.js +56 -0
  129. package/dist/esm/components/app/app-layout-document-acceptance-gate.js.map +1 -0
  130. package/dist/esm/components/app/app-layout-main-container.d.ts +9 -0
  131. package/dist/esm/components/app/app-layout-main-container.d.ts.map +1 -1
  132. package/dist/esm/components/app/app-layout-main-container.js +17 -23
  133. package/dist/esm/components/app/app-layout-main-container.js.map +1 -1
  134. package/dist/esm/components/app/app-layout-main-container.labels.d.ts.map +1 -1
  135. package/dist/esm/components/app/app-layout-main-container.labels.js +48 -0
  136. package/dist/esm/components/app/app-layout-main-container.labels.js.map +1 -1
  137. package/dist/esm/components/app/public-layout-main-container.d.ts +1 -1
  138. package/dist/esm/components/app/public-layout-main-container.d.ts.map +1 -1
  139. package/dist/esm/components/app/public-layout-main-container.js +9 -8
  140. package/dist/esm/components/app/public-layout-main-container.js.map +1 -1
  141. package/dist/esm/components/app/public-layout-main-container.labels.d.ts.map +1 -1
  142. package/dist/esm/components/app/public-layout-terms.d.ts +46 -0
  143. package/dist/esm/components/app/public-layout-terms.d.ts.map +1 -0
  144. package/dist/esm/components/app/public-layout-terms.js +137 -0
  145. package/dist/esm/components/app/public-layout-terms.js.map +1 -0
  146. package/dist/esm/components/billing/billing-format.utils.d.ts.map +1 -1
  147. package/dist/esm/components/billing/billing-invoice-history.d.ts +1 -1
  148. package/dist/esm/components/billing/billing-invoice-history.d.ts.map +1 -1
  149. package/dist/esm/components/billing/billing-invoice-history.js +3 -1
  150. package/dist/esm/components/billing/billing-invoice-history.js.map +1 -1
  151. package/dist/esm/components/billing/billing-invoice-history.labels.d.ts.map +1 -1
  152. package/dist/esm/components/billing/billing-invoice-history.labels.js +1 -0
  153. package/dist/esm/components/billing/billing-invoice-history.labels.js.map +1 -1
  154. package/dist/esm/components/billing/billing-plan-change-preview.d.ts +5 -0
  155. package/dist/esm/components/billing/billing-plan-change-preview.d.ts.map +1 -0
  156. package/dist/esm/components/billing/billing-plan-change-preview.js +25 -0
  157. package/dist/esm/components/billing/billing-plan-change-preview.js.map +1 -0
  158. package/dist/esm/components/billing/billing-plan-change-preview.labels.d.ts +3 -0
  159. package/dist/esm/components/billing/billing-plan-change-preview.labels.d.ts.map +1 -0
  160. package/dist/esm/components/billing/billing-plan-change-preview.labels.js +22 -0
  161. package/dist/esm/components/billing/billing-plan-change-preview.labels.js.map +1 -0
  162. package/dist/esm/components/billing/billing-portal-link.d.ts +1 -1
  163. package/dist/esm/components/billing/billing-portal-link.d.ts.map +1 -1
  164. package/dist/esm/components/billing/billing-portal-link.js +3 -1
  165. package/dist/esm/components/billing/billing-portal-link.js.map +1 -1
  166. package/dist/esm/components/billing/billing-portal-link.labels.d.ts.map +1 -1
  167. package/dist/esm/components/billing/billing-portal-link.labels.js +1 -0
  168. package/dist/esm/components/billing/billing-portal-link.labels.js.map +1 -1
  169. package/dist/esm/components/billing/billing-pricing-table.d.ts +1 -1
  170. package/dist/esm/components/billing/billing-pricing-table.d.ts.map +1 -1
  171. package/dist/esm/components/billing/billing-pricing-table.js +10 -4
  172. package/dist/esm/components/billing/billing-pricing-table.js.map +1 -1
  173. package/dist/esm/components/billing/billing-pricing-table.labels.d.ts.map +1 -1
  174. package/dist/esm/components/billing/billing-pricing-table.labels.js +8 -1
  175. package/dist/esm/components/billing/billing-pricing-table.labels.js.map +1 -1
  176. package/dist/esm/components/billing/billing-subscription-status.d.ts +1 -1
  177. package/dist/esm/components/billing/billing-subscription-status.d.ts.map +1 -1
  178. package/dist/esm/components/billing/billing-subscription-status.js +3 -1
  179. package/dist/esm/components/billing/billing-subscription-status.js.map +1 -1
  180. package/dist/esm/components/billing/billing-subscription-status.labels.d.ts.map +1 -1
  181. package/dist/esm/components/billing/billing-subscription-status.labels.js +1 -0
  182. package/dist/esm/components/billing/billing-subscription-status.labels.js.map +1 -1
  183. package/dist/esm/components/billing/billing-usage-dashboard.d.ts +1 -1
  184. package/dist/esm/components/billing/billing-usage-dashboard.d.ts.map +1 -1
  185. package/dist/esm/components/billing/billing-usage-dashboard.js +10 -7
  186. package/dist/esm/components/billing/billing-usage-dashboard.js.map +1 -1
  187. package/dist/esm/components/billing/billing-usage-dashboard.labels.d.ts.map +1 -1
  188. package/dist/esm/components/billing/billing-usage-dashboard.labels.js +4 -1
  189. package/dist/esm/components/billing/billing-usage-dashboard.labels.js.map +1 -1
  190. package/dist/esm/components/data-display/avatar.d.ts.map +1 -1
  191. package/dist/esm/components/data-display/avatar.labels.d.ts.map +1 -1
  192. package/dist/esm/components/data-display/badge.d.ts.map +1 -1
  193. package/dist/esm/components/data-display/badge.js +16 -15
  194. package/dist/esm/components/data-display/badge.js.map +1 -1
  195. package/dist/esm/components/data-display/badge.labels.d.ts.map +1 -1
  196. package/dist/esm/components/data-display/description-list.d.ts +2 -1
  197. package/dist/esm/components/data-display/description-list.d.ts.map +1 -1
  198. package/dist/esm/components/data-display/description-list.js +24 -8
  199. package/dist/esm/components/data-display/description-list.js.map +1 -1
  200. package/dist/esm/components/data-display/description-list.labels.d.ts.map +1 -1
  201. package/dist/esm/components/data-display/duration.d.ts +15 -0
  202. package/dist/esm/components/data-display/duration.d.ts.map +1 -0
  203. package/dist/esm/components/data-display/duration.js +50 -0
  204. package/dist/esm/components/data-display/duration.js.map +1 -0
  205. package/dist/esm/components/data-display/duration.labels.d.ts +15 -0
  206. package/dist/esm/components/data-display/duration.labels.d.ts.map +1 -0
  207. package/dist/esm/components/data-display/duration.labels.js +35 -0
  208. package/dist/esm/components/data-display/duration.labels.js.map +1 -0
  209. package/dist/esm/components/data-display/formatters/display-field-address.d.ts +21 -0
  210. package/dist/esm/components/data-display/formatters/display-field-address.d.ts.map +1 -0
  211. package/dist/esm/components/data-display/formatters/display-field-address.js +75 -0
  212. package/dist/esm/components/data-display/formatters/display-field-address.js.map +1 -0
  213. package/dist/esm/components/data-display/formatters/display-field-address.labels.d.ts +3 -0
  214. package/dist/esm/components/data-display/formatters/display-field-address.labels.d.ts.map +1 -0
  215. package/dist/esm/components/data-display/formatters/display-field-address.labels.js +13 -0
  216. package/dist/esm/components/data-display/formatters/display-field-address.labels.js.map +1 -0
  217. package/dist/esm/components/data-display/formatters/display-field-bigdecimal.d.ts.map +1 -1
  218. package/dist/esm/components/data-display/formatters/display-field-bigdecimal.js +6 -2
  219. package/dist/esm/components/data-display/formatters/display-field-bigdecimal.js.map +1 -1
  220. package/dist/esm/components/data-display/formatters/display-field-bigdecimal.labels.d.ts.map +1 -1
  221. package/dist/esm/components/data-display/formatters/display-field-boolean.d.ts.map +1 -1
  222. package/dist/esm/components/data-display/formatters/display-field-boolean.js +2 -2
  223. package/dist/esm/components/data-display/formatters/display-field-boolean.js.map +1 -1
  224. package/dist/esm/components/data-display/formatters/display-field-boolean.labels.d.ts.map +1 -1
  225. package/dist/esm/components/data-display/formatters/display-field-code.d.ts.map +1 -1
  226. package/dist/esm/components/data-display/formatters/display-field-code.js +2 -2
  227. package/dist/esm/components/data-display/formatters/display-field-code.js.map +1 -1
  228. package/dist/esm/components/data-display/formatters/display-field-code.labels.d.ts.map +1 -1
  229. package/dist/esm/components/data-display/formatters/display-field-date.d.ts +3 -3
  230. package/dist/esm/components/data-display/formatters/display-field-date.d.ts.map +1 -1
  231. package/dist/esm/components/data-display/formatters/display-field-date.js +17 -4
  232. package/dist/esm/components/data-display/formatters/display-field-date.js.map +1 -1
  233. package/dist/esm/components/data-display/formatters/display-field-date.labels.d.ts.map +1 -1
  234. package/dist/esm/components/data-display/formatters/display-field-datetime.d.ts +3 -3
  235. package/dist/esm/components/data-display/formatters/display-field-datetime.d.ts.map +1 -1
  236. package/dist/esm/components/data-display/formatters/display-field-datetime.js +17 -4
  237. package/dist/esm/components/data-display/formatters/display-field-datetime.js.map +1 -1
  238. package/dist/esm/components/data-display/formatters/display-field-datetime.labels.d.ts.map +1 -1
  239. package/dist/esm/components/data-display/formatters/display-field-duration.d.ts.map +1 -1
  240. package/dist/esm/components/data-display/formatters/display-field-duration.labels.d.ts.map +1 -1
  241. package/dist/esm/components/data-display/formatters/display-field-enum.d.ts.map +1 -1
  242. package/dist/esm/components/data-display/formatters/display-field-enum.js +29 -11
  243. package/dist/esm/components/data-display/formatters/display-field-enum.js.map +1 -1
  244. package/dist/esm/components/data-display/formatters/display-field-enum.labels.d.ts.map +1 -1
  245. package/dist/esm/components/data-display/formatters/display-field-file-audio.d.ts.map +1 -1
  246. package/dist/esm/components/data-display/formatters/display-field-file-audio.js +2 -1
  247. package/dist/esm/components/data-display/formatters/display-field-file-audio.js.map +1 -1
  248. package/dist/esm/components/data-display/formatters/display-field-file-audio.labels.d.ts.map +1 -1
  249. package/dist/esm/components/data-display/formatters/display-field-file-document.d.ts +4 -1
  250. package/dist/esm/components/data-display/formatters/display-field-file-document.d.ts.map +1 -1
  251. package/dist/esm/components/data-display/formatters/display-field-file-document.js +18 -5
  252. package/dist/esm/components/data-display/formatters/display-field-file-document.js.map +1 -1
  253. package/dist/esm/components/data-display/formatters/display-field-file-document.labels.d.ts.map +1 -1
  254. package/dist/esm/components/data-display/formatters/display-field-file-document.labels.js +20 -0
  255. package/dist/esm/components/data-display/formatters/display-field-file-document.labels.js.map +1 -1
  256. package/dist/esm/components/data-display/formatters/display-field-file-gallery.d.ts.map +1 -1
  257. package/dist/esm/components/data-display/formatters/display-field-file-gallery.labels.d.ts.map +1 -1
  258. package/dist/esm/components/data-display/formatters/display-field-file-image.d.ts.map +1 -1
  259. package/dist/esm/components/data-display/formatters/display-field-file-image.js +3 -1
  260. package/dist/esm/components/data-display/formatters/display-field-file-image.js.map +1 -1
  261. package/dist/esm/components/data-display/formatters/display-field-file-image.labels.d.ts.map +1 -1
  262. package/dist/esm/components/data-display/formatters/display-field-file-video.d.ts.map +1 -1
  263. package/dist/esm/components/data-display/formatters/display-field-file-video.labels.d.ts.map +1 -1
  264. package/dist/esm/components/data-display/formatters/display-field-file.d.ts.map +1 -1
  265. package/dist/esm/components/data-display/formatters/display-field-file.js +14 -15
  266. package/dist/esm/components/data-display/formatters/display-field-file.js.map +1 -1
  267. package/dist/esm/components/data-display/formatters/display-field-file.labels.d.ts.map +1 -1
  268. package/dist/esm/components/data-display/formatters/display-field-file.labels.js +2 -0
  269. package/dist/esm/components/data-display/formatters/display-field-file.labels.js.map +1 -1
  270. package/dist/esm/components/data-display/formatters/display-field-format.utils.d.ts.map +1 -1
  271. package/dist/esm/components/data-display/formatters/display-field-i18n.utils.d.ts.map +1 -1
  272. package/dist/esm/components/data-display/formatters/display-field-money.d.ts.map +1 -1
  273. package/dist/esm/components/data-display/formatters/display-field-money.labels.d.ts.map +1 -1
  274. package/dist/esm/components/data-display/formatters/display-field-number.d.ts.map +1 -1
  275. package/dist/esm/components/data-display/formatters/display-field-number.js +8 -3
  276. package/dist/esm/components/data-display/formatters/display-field-number.js.map +1 -1
  277. package/dist/esm/components/data-display/formatters/display-field-number.labels.d.ts.map +1 -1
  278. package/dist/esm/components/data-display/formatters/display-field-number.labels.js +5 -2
  279. package/dist/esm/components/data-display/formatters/display-field-number.labels.js.map +1 -1
  280. package/dist/esm/components/data-display/formatters/display-field-phone.d.ts.map +1 -1
  281. package/dist/esm/components/data-display/formatters/display-field-phone.labels.d.ts.map +1 -1
  282. package/dist/esm/components/data-display/formatters/display-field-range-bigdecimal.d.ts.map +1 -1
  283. package/dist/esm/components/data-display/formatters/display-field-range-bigdecimal.labels.d.ts.map +1 -1
  284. package/dist/esm/components/data-display/formatters/display-field-range-date.d.ts.map +1 -1
  285. package/dist/esm/components/data-display/formatters/display-field-range-date.labels.d.ts.map +1 -1
  286. package/dist/esm/components/data-display/formatters/display-field-range-datetime.d.ts.map +1 -1
  287. package/dist/esm/components/data-display/formatters/display-field-range-datetime.labels.d.ts.map +1 -1
  288. package/dist/esm/components/data-display/formatters/display-field-range-money.d.ts.map +1 -1
  289. package/dist/esm/components/data-display/formatters/display-field-range-money.labels.d.ts.map +1 -1
  290. package/dist/esm/components/data-display/formatters/display-field-range-number.d.ts.map +1 -1
  291. package/dist/esm/components/data-display/formatters/display-field-range-number.labels.d.ts.map +1 -1
  292. package/dist/esm/components/data-display/formatters/display-field-range-time.d.ts.map +1 -1
  293. package/dist/esm/components/data-display/formatters/display-field-range-time.labels.d.ts.map +1 -1
  294. package/dist/esm/components/data-display/formatters/display-field-string.d.ts +1 -1
  295. package/dist/esm/components/data-display/formatters/display-field-string.d.ts.map +1 -1
  296. package/dist/esm/components/data-display/formatters/display-field-string.js +129 -15
  297. package/dist/esm/components/data-display/formatters/display-field-string.js.map +1 -1
  298. package/dist/esm/components/data-display/formatters/display-field-string.labels.d.ts.map +1 -1
  299. package/dist/esm/components/data-display/formatters/display-field-time.d.ts.map +1 -1
  300. package/dist/esm/components/data-display/formatters/display-field-time.labels.d.ts.map +1 -1
  301. package/dist/esm/components/data-display/identifier.d.ts +19 -0
  302. package/dist/esm/components/data-display/identifier.d.ts.map +1 -0
  303. package/dist/esm/components/data-display/identifier.js +21 -0
  304. package/dist/esm/components/data-display/identifier.js.map +1 -0
  305. package/dist/esm/components/data-display/kbd.d.ts +17 -0
  306. package/dist/esm/components/data-display/kbd.d.ts.map +1 -0
  307. package/dist/esm/components/data-display/kbd.js +18 -0
  308. package/dist/esm/components/data-display/kbd.js.map +1 -0
  309. package/dist/esm/components/data-display/markdown-content.d.ts.map +1 -1
  310. package/dist/esm/components/data-display/markdown-stream-runtime.d.ts.map +1 -1
  311. package/dist/esm/components/data-display/markdown-stream.lazy.d.ts.map +1 -1
  312. package/dist/esm/components/data-display/markdown-stream.lazy.js +13 -2
  313. package/dist/esm/components/data-display/markdown-stream.lazy.js.map +1 -1
  314. package/dist/esm/components/data-display/notification-indicator.d.ts.map +1 -1
  315. package/dist/esm/components/data-display/notification-indicator.js +3 -11
  316. package/dist/esm/components/data-display/notification-indicator.js.map +1 -1
  317. package/dist/esm/components/data-display/notification-indicator.labels.d.ts.map +1 -1
  318. package/dist/esm/components/data-display/pdf-viewer/pdf-viewer-worker.d.ts +63 -0
  319. package/dist/esm/components/data-display/pdf-viewer/pdf-viewer-worker.d.ts.map +1 -0
  320. package/dist/esm/components/data-display/pdf-viewer/pdf-viewer-worker.js +75 -0
  321. package/dist/esm/components/data-display/pdf-viewer/pdf-viewer-worker.js.map +1 -0
  322. package/dist/esm/components/data-display/pdf-viewer/pdf-viewer-worker.vite.d.ts +32 -0
  323. package/dist/esm/components/data-display/pdf-viewer/pdf-viewer-worker.vite.d.ts.map +1 -0
  324. package/dist/esm/components/data-display/pdf-viewer/pdf-viewer-worker.vite.js +36 -0
  325. package/dist/esm/components/data-display/pdf-viewer/pdf-viewer-worker.vite.js.map +1 -0
  326. package/dist/esm/components/data-display/pdf-viewer/pdf-viewer.d.ts +46 -6
  327. package/dist/esm/components/data-display/pdf-viewer/pdf-viewer.d.ts.map +1 -1
  328. package/dist/esm/components/data-display/pdf-viewer/pdf-viewer.js +70 -46
  329. package/dist/esm/components/data-display/pdf-viewer/pdf-viewer.js.map +1 -1
  330. package/dist/esm/components/data-display/pdf-viewer/pdf-viewer.lazy.d.ts +12 -2
  331. package/dist/esm/components/data-display/pdf-viewer/pdf-viewer.lazy.d.ts.map +1 -1
  332. package/dist/esm/components/data-display/pdf-viewer/pdf-viewer.lazy.js +3 -2
  333. package/dist/esm/components/data-display/pdf-viewer/pdf-viewer.lazy.js.map +1 -1
  334. package/dist/esm/components/data-display/timeline.d.ts +3 -0
  335. package/dist/esm/components/data-display/timeline.d.ts.map +1 -0
  336. package/dist/esm/components/data-display/timeline.js +92 -0
  337. package/dist/esm/components/data-display/timeline.js.map +1 -0
  338. package/dist/esm/components/data-display/untrusted-html-content.d.ts +55 -0
  339. package/dist/esm/components/data-display/untrusted-html-content.d.ts.map +1 -0
  340. package/dist/esm/components/data-display/untrusted-html-content.js +67 -0
  341. package/dist/esm/components/data-display/untrusted-html-content.js.map +1 -0
  342. package/dist/esm/components/feedback/celebration-overlay.d.ts +13 -4
  343. package/dist/esm/components/feedback/celebration-overlay.d.ts.map +1 -1
  344. package/dist/esm/components/feedback/celebration-overlay.js +146 -22
  345. package/dist/esm/components/feedback/celebration-overlay.js.map +1 -1
  346. package/dist/esm/components/feedback/celebration-overlay.labels.d.ts.map +1 -1
  347. package/dist/esm/components/feedback/danger-zone.d.ts.map +1 -1
  348. package/dist/esm/components/feedback/danger-zone.labels.d.ts.map +1 -1
  349. package/dist/esm/components/feedback/empty-state.d.ts.map +1 -1
  350. package/dist/esm/components/feedback/empty-state.js.map +1 -1
  351. package/dist/esm/components/feedback/empty-state.labels.d.ts.map +1 -1
  352. package/dist/esm/components/feedback/error-display.d.ts.map +1 -1
  353. package/dist/esm/components/feedback/error-display.labels.d.ts.map +1 -1
  354. package/dist/esm/components/feedback/features/feature-limit-indicator.d.ts.map +1 -1
  355. package/dist/esm/components/feedback/features/feature-limit-indicator.labels.d.ts.map +1 -1
  356. package/dist/esm/components/feedback/features/feature-lock-badge.d.ts.map +1 -1
  357. package/dist/esm/components/feedback/features/feature-lock-badge.labels.d.ts.map +1 -1
  358. package/dist/esm/components/feedback/features/feature-unavailable-dialog.d.ts.map +1 -1
  359. package/dist/esm/components/feedback/features/feature-unavailable-dialog.labels.d.ts.map +1 -1
  360. package/dist/esm/components/feedback/features/feature-unavailable-prompt.d.ts.map +1 -1
  361. package/dist/esm/components/feedback/features/feature-unavailable-prompt.js.map +1 -1
  362. package/dist/esm/components/feedback/features/feature-unavailable-prompt.labels.d.ts.map +1 -1
  363. package/dist/esm/components/feedback/loading-overlay.d.ts.map +1 -1
  364. package/dist/esm/components/feedback/loading-overlay.labels.d.ts.map +1 -1
  365. package/dist/esm/components/feedback/loading-spinner.d.ts.map +1 -1
  366. package/dist/esm/components/feedback/loading-spinner.labels.d.ts.map +1 -1
  367. package/dist/esm/components/feedback/notification-center.d.ts.map +1 -1
  368. package/dist/esm/components/feedback/notification-center.js +5 -5
  369. package/dist/esm/components/feedback/notification-center.js.map +1 -1
  370. package/dist/esm/components/feedback/operations-confirm-critical.d.ts +1 -1
  371. package/dist/esm/components/feedback/operations-confirm-critical.d.ts.map +1 -1
  372. package/dist/esm/components/feedback/operations-confirm-critical.js +9 -7
  373. package/dist/esm/components/feedback/operations-confirm-critical.js.map +1 -1
  374. package/dist/esm/components/feedback/operations-confirm-critical.labels.d.ts.map +1 -1
  375. package/dist/esm/components/feedback/progress.d.ts.map +1 -1
  376. package/dist/esm/components/feedback/progress.labels.d.ts.map +1 -1
  377. package/dist/esm/components/feedback/skeleton.d.ts.map +1 -1
  378. package/dist/esm/components/feedback/skeleton.labels.d.ts.map +1 -1
  379. package/dist/esm/components/feedback/toast.d.ts.map +1 -1
  380. package/dist/esm/components/feedback/toast.labels.d.ts.map +1 -1
  381. package/dist/esm/components/form/autosave-indicator.d.ts.map +1 -1
  382. package/dist/esm/components/form/autosave-indicator.labels.d.ts.map +1 -1
  383. package/dist/esm/components/form/chromes/field.d.ts.map +1 -1
  384. package/dist/esm/components/form/chromes/field.js +11 -3
  385. package/dist/esm/components/form/chromes/field.js.map +1 -1
  386. package/dist/esm/components/form/chromes/field.labels.d.ts.map +1 -1
  387. package/dist/esm/components/form/chromes/form-primitive.d.ts.map +1 -1
  388. package/dist/esm/components/form/chromes/form-primitive.labels.d.ts.map +1 -1
  389. package/dist/esm/components/form/chromes/form-primitive.labels.js +37 -0
  390. package/dist/esm/components/form/chromes/form-primitive.labels.js.map +1 -1
  391. package/dist/esm/components/form/combobox.d.ts.map +1 -1
  392. package/dist/esm/components/form/combobox.js +14 -13
  393. package/dist/esm/components/form/combobox.js.map +1 -1
  394. package/dist/esm/components/form/combobox.labels.d.ts.map +1 -1
  395. package/dist/esm/components/form/controls/address/providers/google-places-address-lookup.adapter.d.ts +42 -0
  396. package/dist/esm/components/form/controls/address/providers/google-places-address-lookup.adapter.d.ts.map +1 -0
  397. package/dist/esm/components/form/controls/address/providers/google-places-address-lookup.adapter.js +120 -0
  398. package/dist/esm/components/form/controls/address/providers/google-places-address-lookup.adapter.js.map +1 -0
  399. package/dist/esm/components/form/controls/address/providers/google-places-address-lookup.d.ts +16 -0
  400. package/dist/esm/components/form/controls/address/providers/google-places-address-lookup.d.ts.map +1 -0
  401. package/dist/esm/components/form/controls/address/providers/google-places-address-lookup.js +8 -0
  402. package/dist/esm/components/form/controls/address/providers/google-places-address-lookup.js.map +1 -0
  403. package/dist/esm/components/form/controls/boolean/checkbox.d.ts.map +1 -1
  404. package/dist/esm/components/form/controls/boolean/checkbox.js +2 -2
  405. package/dist/esm/components/form/controls/boolean/checkbox.js.map +1 -1
  406. package/dist/esm/components/form/controls/boolean/checkbox.labels.d.ts.map +1 -1
  407. package/dist/esm/components/form/controls/boolean/switch.d.ts.map +1 -1
  408. package/dist/esm/components/form/controls/boolean/switch.labels.d.ts.map +1 -1
  409. package/dist/esm/components/form/controls/boolean/toggle-group-boolean.d.ts.map +1 -1
  410. package/dist/esm/components/form/controls/boolean/toggle-group-boolean.labels.d.ts.map +1 -1
  411. package/dist/esm/components/form/controls/boolean/toggle.d.ts.map +1 -1
  412. package/dist/esm/components/form/controls/boolean/toggle.labels.d.ts.map +1 -1
  413. package/dist/esm/components/form/controls/code-editor/cm6-editor-appearance.d.ts.map +1 -1
  414. package/dist/esm/components/form/controls/code-editor/cm6-editor.d.ts.map +1 -1
  415. package/dist/esm/components/form/controls/code-editor/cm6-editor.lazy.d.ts.map +1 -1
  416. package/dist/esm/components/form/controls/code-editor/cm6-editor.lazy.js +11 -2
  417. package/dist/esm/components/form/controls/code-editor/cm6-editor.lazy.js.map +1 -1
  418. package/dist/esm/components/form/controls/code-editor/form-field-code.d.ts.map +1 -1
  419. package/dist/esm/components/form/controls/code-editor/markdown-editor.d.ts.map +1 -1
  420. package/dist/esm/components/form/controls/date-time/calendar.d.ts.map +1 -1
  421. package/dist/esm/components/form/controls/date-time/calendar.labels.d.ts.map +1 -1
  422. package/dist/esm/components/form/controls/date-time/date-range-picker.d.ts.map +1 -1
  423. package/dist/esm/components/form/controls/date-time/date-range-picker.labels.d.ts.map +1 -1
  424. package/dist/esm/components/form/controls/date-time/datepicker.d.ts.map +1 -1
  425. package/dist/esm/components/form/controls/date-time/datepicker.labels.d.ts.map +1 -1
  426. package/dist/esm/components/form/controls/date-time/datetime-picker.d.ts.map +1 -1
  427. package/dist/esm/components/form/controls/date-time/datetime-picker.labels.d.ts.map +1 -1
  428. package/dist/esm/components/form/controls/date-time/datetime-range-picker.d.ts.map +1 -1
  429. package/dist/esm/components/form/controls/date-time/datetime-range-picker.labels.d.ts.map +1 -1
  430. package/dist/esm/components/form/controls/date-time/datetime-range-picker.labels.js +11 -2
  431. package/dist/esm/components/form/controls/date-time/datetime-range-picker.labels.js.map +1 -1
  432. package/dist/esm/components/form/controls/date-time/time-picker.d.ts.map +1 -1
  433. package/dist/esm/components/form/controls/date-time/time-picker.labels.d.ts.map +1 -1
  434. package/dist/esm/components/form/controls/date-time/time-range-picker.d.ts.map +1 -1
  435. package/dist/esm/components/form/controls/date-time/time-range-picker.labels.d.ts.map +1 -1
  436. package/dist/esm/components/form/controls/date-time/time-range-picker.labels.js +11 -2
  437. package/dist/esm/components/form/controls/date-time/time-range-picker.labels.js.map +1 -1
  438. package/dist/esm/components/form/controls/enum/radio.d.ts +1 -1
  439. package/dist/esm/components/form/controls/enum/radio.d.ts.map +1 -1
  440. package/dist/esm/components/form/controls/enum/radio.js +13 -12
  441. package/dist/esm/components/form/controls/enum/radio.js.map +1 -1
  442. package/dist/esm/components/form/controls/enum/radio.labels.d.ts.map +1 -1
  443. package/dist/esm/components/form/controls/enum/select-multiple.d.ts.map +1 -1
  444. package/dist/esm/components/form/controls/enum/select-multiple.js +5 -3
  445. package/dist/esm/components/form/controls/enum/select-multiple.js.map +1 -1
  446. package/dist/esm/components/form/controls/enum/select-multiple.labels.d.ts.map +1 -1
  447. package/dist/esm/components/form/controls/enum/select.d.ts.map +1 -1
  448. package/dist/esm/components/form/controls/enum/select.labels.d.ts.map +1 -1
  449. package/dist/esm/components/form/controls/enum/toggle-group.d.ts.map +1 -1
  450. package/dist/esm/components/form/controls/enum/toggle-group.js +96 -5
  451. package/dist/esm/components/form/controls/enum/toggle-group.js.map +1 -1
  452. package/dist/esm/components/form/controls/enum/toggle-group.labels.d.ts.map +1 -1
  453. package/dist/esm/components/form/controls/file/file-upload.d.ts.map +1 -1
  454. package/dist/esm/components/form/controls/file/file-upload.labels.d.ts.map +1 -1
  455. package/dist/esm/components/form/controls/file/image-crop.d.ts.map +1 -1
  456. package/dist/esm/components/form/controls/file/image-crop.labels.d.ts.map +1 -1
  457. package/dist/esm/components/form/controls/file/providers/dropbox-picker.d.ts +44 -0
  458. package/dist/esm/components/form/controls/file/providers/dropbox-picker.d.ts.map +1 -0
  459. package/dist/esm/components/form/controls/file/providers/dropbox-picker.js +137 -0
  460. package/dist/esm/components/form/controls/file/providers/dropbox-picker.js.map +1 -0
  461. package/dist/esm/components/form/controls/file/providers/dropbox-picker.lazy.d.ts +22 -0
  462. package/dist/esm/components/form/controls/file/providers/dropbox-picker.lazy.d.ts.map +1 -0
  463. package/dist/esm/components/form/controls/file/providers/dropbox-picker.lazy.js +27 -0
  464. package/dist/esm/components/form/controls/file/providers/dropbox-picker.lazy.js.map +1 -0
  465. package/dist/esm/components/form/controls/file/providers/google-drive-picker.d.ts +3 -1
  466. package/dist/esm/components/form/controls/file/providers/google-drive-picker.d.ts.map +1 -1
  467. package/dist/esm/components/form/controls/file/providers/google-drive-picker.js +3 -1
  468. package/dist/esm/components/form/controls/file/providers/google-drive-picker.js.map +1 -1
  469. package/dist/esm/components/form/controls/file/providers/google-drive-picker.lazy.d.ts +6 -0
  470. package/dist/esm/components/form/controls/file/providers/google-drive-picker.lazy.d.ts.map +1 -1
  471. package/dist/esm/components/form/controls/file/providers/google-drive-picker.lazy.js +8 -1
  472. package/dist/esm/components/form/controls/file/providers/google-drive-picker.lazy.js.map +1 -1
  473. package/dist/esm/components/form/controls/file/providers/onedrive-picker.d.ts +6 -2
  474. package/dist/esm/components/form/controls/file/providers/onedrive-picker.d.ts.map +1 -1
  475. package/dist/esm/components/form/controls/file/providers/onedrive-picker.js +6 -2
  476. package/dist/esm/components/form/controls/file/providers/onedrive-picker.js.map +1 -1
  477. package/dist/esm/components/form/controls/file/providers/onedrive-picker.lazy.d.ts +6 -0
  478. package/dist/esm/components/form/controls/file/providers/onedrive-picker.lazy.d.ts.map +1 -1
  479. package/dist/esm/components/form/controls/file/providers/onedrive-picker.lazy.js +8 -1
  480. package/dist/esm/components/form/controls/file/providers/onedrive-picker.lazy.js.map +1 -1
  481. package/dist/esm/components/form/controls/input-group.d.ts.map +1 -1
  482. package/dist/esm/components/form/controls/input-group.labels.d.ts.map +1 -1
  483. package/dist/esm/components/form/controls/input.d.ts.map +1 -1
  484. package/dist/esm/components/form/controls/input.labels.d.ts.map +1 -1
  485. package/dist/esm/components/form/controls/number/slider.d.ts.map +1 -1
  486. package/dist/esm/components/form/controls/number/slider.labels.d.ts.map +1 -1
  487. package/dist/esm/components/form/controls/number/slider.labels.js +9 -2
  488. package/dist/esm/components/form/controls/number/slider.labels.js.map +1 -1
  489. package/dist/esm/components/form/controls/string/color-input.d.ts.map +1 -1
  490. package/dist/esm/components/form/controls/string/color-input.labels.d.ts.map +1 -1
  491. package/dist/esm/components/form/controls/string/color-picker-surface.d.ts.map +1 -1
  492. package/dist/esm/components/form/controls/string/color-picker-surface.js.map +1 -1
  493. package/dist/esm/components/form/controls/string/inline-edit-text.d.ts.map +1 -1
  494. package/dist/esm/components/form/controls/string/input-otp.d.ts.map +1 -1
  495. package/dist/esm/components/form/controls/string/input-otp.labels.d.ts.map +1 -1
  496. package/dist/esm/components/form/controls/string/password-input.d.ts.map +1 -1
  497. package/dist/esm/components/form/controls/string/password-input.labels.d.ts.map +1 -1
  498. package/dist/esm/components/form/controls/string/password-input.labels.js +9 -2
  499. package/dist/esm/components/form/controls/string/password-input.labels.js.map +1 -1
  500. package/dist/esm/components/form/controls/string/textarea.d.ts.map +1 -1
  501. package/dist/esm/components/form/controls/string/textarea.labels.d.ts.map +1 -1
  502. package/dist/esm/components/layout/aspect-ratio.d.ts.map +1 -1
  503. package/dist/esm/components/layout/aspect-ratio.labels.d.ts.map +1 -1
  504. package/dist/esm/components/layout/carousel.d.ts.map +1 -1
  505. package/dist/esm/components/layout/carousel.labels.d.ts.map +1 -1
  506. package/dist/esm/components/layout/divider.d.ts.map +1 -1
  507. package/dist/esm/components/layout/divider.labels.d.ts.map +1 -1
  508. package/dist/esm/components/layout/resizable.d.ts.map +1 -1
  509. package/dist/esm/components/layout/resizable.labels.d.ts.map +1 -1
  510. package/dist/esm/components/layout/scroll-area.d.ts.map +1 -1
  511. package/dist/esm/components/layout/scroll-area.labels.d.ts.map +1 -1
  512. package/dist/esm/components/layout/separator.d.ts.map +1 -1
  513. package/dist/esm/components/layout/separator.labels.d.ts.map +1 -1
  514. package/dist/esm/components/navigation/app-level/activity-bar.d.ts.map +1 -1
  515. package/dist/esm/components/navigation/app-level/activity-bar.js +2 -2
  516. package/dist/esm/components/navigation/app-level/activity-bar.js.map +1 -1
  517. package/dist/esm/components/navigation/app-level/activity-bar.labels.d.ts.map +1 -1
  518. package/dist/esm/components/navigation/app-level/command-menu.d.ts.map +1 -1
  519. package/dist/esm/components/navigation/app-level/command-menu.js +2 -2
  520. package/dist/esm/components/navigation/app-level/command-menu.js.map +1 -1
  521. package/dist/esm/components/navigation/app-level/command-menu.labels.d.ts.map +1 -1
  522. package/dist/esm/components/navigation/app-level/control-panel.d.ts.map +1 -1
  523. package/dist/esm/components/navigation/app-level/control-panel.labels.d.ts.map +1 -1
  524. package/dist/esm/components/navigation/app-level/menu-user-org.d.ts.map +1 -1
  525. package/dist/esm/components/navigation/app-level/menu-user-org.js +10 -4
  526. package/dist/esm/components/navigation/app-level/menu-user-org.js.map +1 -1
  527. package/dist/esm/components/navigation/app-level/menu-user-org.labels.d.ts.map +1 -1
  528. package/dist/esm/components/navigation/app-level/menu-user-org.labels.js +7 -0
  529. package/dist/esm/components/navigation/app-level/menu-user-org.labels.js.map +1 -1
  530. package/dist/esm/components/navigation/app-level/menubar.d.ts.map +1 -1
  531. package/dist/esm/components/navigation/app-level/menubar.js +36 -14
  532. package/dist/esm/components/navigation/app-level/menubar.js.map +1 -1
  533. package/dist/esm/components/navigation/app-level/menubar.labels.d.ts.map +1 -1
  534. package/dist/esm/components/navigation/app-level/navigation-back.d.ts.map +1 -1
  535. package/dist/esm/components/navigation/app-level/navigation-back.js +31 -5
  536. package/dist/esm/components/navigation/app-level/navigation-back.js.map +1 -1
  537. package/dist/esm/components/navigation/app-level/navigation-back.labels.d.ts.map +1 -1
  538. package/dist/esm/components/navigation/app-level/notification-center.d.ts.map +1 -1
  539. package/dist/esm/components/navigation/app-level/notification-center.js.map +1 -1
  540. package/dist/esm/components/navigation/app-level/notification-center.labels.d.ts.map +1 -1
  541. package/dist/esm/components/navigation/app-level/notification-center.labels.js +15 -0
  542. package/dist/esm/components/navigation/app-level/notification-center.labels.js.map +1 -1
  543. package/dist/esm/components/navigation/app-level/quick-action-button.d.ts.map +1 -1
  544. package/dist/esm/components/navigation/app-level/quick-action-button.labels.d.ts.map +1 -1
  545. package/dist/esm/components/navigation/app-level/quick-action-button.labels.js +4 -0
  546. package/dist/esm/components/navigation/app-level/quick-action-button.labels.js.map +1 -1
  547. package/dist/esm/components/navigation/app-level/quick-switcher.d.ts.map +1 -1
  548. package/dist/esm/components/navigation/app-level/quick-switcher.labels.d.ts.map +1 -1
  549. package/dist/esm/components/navigation/app-level/sidebar.d.ts.map +1 -1
  550. package/dist/esm/components/navigation/app-level/sidebar.js +41 -25
  551. package/dist/esm/components/navigation/app-level/sidebar.js.map +1 -1
  552. package/dist/esm/components/navigation/app-level/sidebar.labels.d.ts.map +1 -1
  553. package/dist/esm/components/navigation/app-level/sidebar.labels.js +1 -0
  554. package/dist/esm/components/navigation/app-level/sidebar.labels.js.map +1 -1
  555. package/dist/esm/components/navigation/app-level/status-bar.d.ts.map +1 -1
  556. package/dist/esm/components/navigation/app-level/status-bar.js +2 -2
  557. package/dist/esm/components/navigation/app-level/status-bar.js.map +1 -1
  558. package/dist/esm/components/navigation/app-level/status-bar.labels.d.ts.map +1 -1
  559. package/dist/esm/components/navigation/app-level/toolbar.d.ts.map +1 -1
  560. package/dist/esm/components/navigation/app-level/toolbar.js +2 -2
  561. package/dist/esm/components/navigation/app-level/toolbar.js.map +1 -1
  562. package/dist/esm/components/navigation/app-level/toolbar.labels.d.ts.map +1 -1
  563. package/dist/esm/components/navigation/app-level/utility-panel.d.ts.map +1 -1
  564. package/dist/esm/components/navigation/app-level/utility-panel.js +24 -6
  565. package/dist/esm/components/navigation/app-level/utility-panel.js.map +1 -1
  566. package/dist/esm/components/navigation/app-level/utility-panel.labels.d.ts.map +1 -1
  567. package/dist/esm/components/navigation/app-level/utility-panel.labels.js.map +1 -1
  568. package/dist/esm/components/navigation/breadcrumb.d.ts.map +1 -1
  569. package/dist/esm/components/navigation/breadcrumb.js +1 -1
  570. package/dist/esm/components/navigation/breadcrumb.js.map +1 -1
  571. package/dist/esm/components/navigation/breadcrumb.labels.d.ts.map +1 -1
  572. package/dist/esm/components/navigation/command.d.ts.map +1 -1
  573. package/dist/esm/components/navigation/command.js +2 -2
  574. package/dist/esm/components/navigation/command.js.map +1 -1
  575. package/dist/esm/components/navigation/command.labels.d.ts.map +1 -1
  576. package/dist/esm/components/navigation/menu-bar.d.ts.map +1 -1
  577. package/dist/esm/components/navigation/menu-bar.labels.d.ts.map +1 -1
  578. package/dist/esm/components/navigation/navbar.d.ts.map +1 -1
  579. package/dist/esm/components/navigation/navbar.labels.d.ts.map +1 -1
  580. package/dist/esm/components/navigation/sidebar.d.ts.map +1 -1
  581. package/dist/esm/components/navigation/sidebar.labels.d.ts.map +1 -1
  582. package/dist/esm/components/overlays/containers/alert-dialog.d.ts.map +1 -1
  583. package/dist/esm/components/overlays/containers/alert-dialog.js +11 -1
  584. package/dist/esm/components/overlays/containers/alert-dialog.js.map +1 -1
  585. package/dist/esm/components/overlays/containers/alert-dialog.labels.d.ts.map +1 -1
  586. package/dist/esm/components/overlays/containers/alert.d.ts.map +1 -1
  587. package/dist/esm/components/overlays/containers/alert.labels.d.ts.map +1 -1
  588. package/dist/esm/components/overlays/containers/dialog.d.ts.map +1 -1
  589. package/dist/esm/components/overlays/containers/dialog.js +11 -1
  590. package/dist/esm/components/overlays/containers/dialog.js.map +1 -1
  591. package/dist/esm/components/overlays/containers/dialog.labels.d.ts.map +1 -1
  592. package/dist/esm/components/overlays/containers/drawer.d.ts.map +1 -1
  593. package/dist/esm/components/overlays/containers/drawer.labels.d.ts.map +1 -1
  594. package/dist/esm/components/overlays/containers/sheet.d.ts.map +1 -1
  595. package/dist/esm/components/overlays/containers/sheet.labels.d.ts.map +1 -1
  596. package/dist/esm/components/overlays/floating/context-menu.d.ts.map +1 -1
  597. package/dist/esm/components/overlays/floating/context-menu.labels.d.ts.map +1 -1
  598. package/dist/esm/components/overlays/floating/dropdown-menu.d.ts.map +1 -1
  599. package/dist/esm/components/overlays/floating/dropdown-menu.labels.d.ts.map +1 -1
  600. package/dist/esm/components/overlays/floating/hover-card.d.ts.map +1 -1
  601. package/dist/esm/components/overlays/floating/hover-card.labels.d.ts.map +1 -1
  602. package/dist/esm/components/overlays/floating/popover.d.ts.map +1 -1
  603. package/dist/esm/components/overlays/floating/popover.labels.d.ts.map +1 -1
  604. package/dist/esm/components/overlays/floating/tooltip.d.ts.map +1 -1
  605. package/dist/esm/components/overlays/floating/tooltip.labels.d.ts.map +1 -1
  606. package/dist/esm/components/sections/accordion.d.ts.map +1 -1
  607. package/dist/esm/components/sections/accordion.labels.d.ts.map +1 -1
  608. package/dist/esm/components/sections/card.d.ts.map +1 -1
  609. package/dist/esm/components/sections/card.js +71 -6
  610. package/dist/esm/components/sections/card.js.map +1 -1
  611. package/dist/esm/components/sections/card.labels.d.ts.map +1 -1
  612. package/dist/esm/components/sections/collapsible.d.ts.map +1 -1
  613. package/dist/esm/components/sections/collapsible.labels.d.ts.map +1 -1
  614. package/dist/esm/components/sections/content-section.d.ts.map +1 -1
  615. package/dist/esm/components/sections/content-section.js +36 -6
  616. package/dist/esm/components/sections/content-section.js.map +1 -1
  617. package/dist/esm/components/sections/disclosure-nesting.d.ts.map +1 -1
  618. package/dist/esm/components/sections/option-gesture.d.ts +15 -0
  619. package/dist/esm/components/sections/option-gesture.d.ts.map +1 -0
  620. package/dist/esm/components/sections/option-gesture.js +66 -0
  621. package/dist/esm/components/sections/option-gesture.js.map +1 -0
  622. package/dist/esm/components/sections/pagination.d.ts.map +1 -1
  623. package/dist/esm/components/sections/pagination.labels.d.ts.map +1 -1
  624. package/dist/esm/components/sections/stacked-layout.d.ts.map +1 -1
  625. package/dist/esm/components/sections/stacked-layout.labels.d.ts.map +1 -1
  626. package/dist/esm/components/sections/stepper.d.ts.map +1 -1
  627. package/dist/esm/components/sections/stepper.js +5 -3
  628. package/dist/esm/components/sections/stepper.js.map +1 -1
  629. package/dist/esm/components/sections/stepper.labels.d.ts.map +1 -1
  630. package/dist/esm/components/sections/table.d.ts.map +1 -1
  631. package/dist/esm/components/sections/table.labels.d.ts.map +1 -1
  632. package/dist/esm/components/sections/tabs.d.ts.map +1 -1
  633. package/dist/esm/components/sections/tabs.js +60 -15
  634. package/dist/esm/components/sections/tabs.js.map +1 -1
  635. package/dist/esm/components/sections/tabs.labels.d.ts.map +1 -1
  636. package/dist/esm/components/typography/heading.d.ts.map +1 -1
  637. package/dist/esm/components/typography/heading.labels.d.ts.map +1 -1
  638. package/dist/esm/components/typography/label.d.ts.map +1 -1
  639. package/dist/esm/components/typography/label.labels.d.ts.map +1 -1
  640. package/dist/esm/components/typography/link.d.ts.map +1 -1
  641. package/dist/esm/components/typography/link.js +9 -3
  642. package/dist/esm/components/typography/link.js.map +1 -1
  643. package/dist/esm/components/typography/link.labels.d.ts.map +1 -1
  644. package/dist/esm/components/typography/text.d.ts +1 -1
  645. package/dist/esm/components/typography/text.d.ts.map +1 -1
  646. package/dist/esm/components/typography/text.js +3 -2
  647. package/dist/esm/components/typography/text.js.map +1 -1
  648. package/dist/esm/components/typography/text.labels.d.ts.map +1 -1
  649. package/dist/esm/components/typography/truncated-text.d.ts.map +1 -1
  650. package/dist/esm/config/billing-shell.presets.d.ts.map +1 -1
  651. package/dist/esm/config/index.d.ts.map +1 -1
  652. package/dist/esm/config/preset-design-system.d.ts.map +1 -1
  653. package/dist/esm/config/preset-design-system.js +37 -60
  654. package/dist/esm/config/preset-design-system.js.map +1 -1
  655. package/dist/esm/config/preset-error-pages.d.ts.map +1 -1
  656. package/dist/esm/config/preset-kits.d.ts.map +1 -1
  657. package/dist/esm/config/preset-navigation.d.ts.map +1 -1
  658. package/dist/esm/config/preset-navigation.js +23 -7
  659. package/dist/esm/config/preset-navigation.js.map +1 -1
  660. package/dist/esm/config/preset-resources.d.ts.map +1 -1
  661. package/dist/esm/config/preset-shell.d.ts.map +1 -1
  662. package/dist/esm/config/preset-utils.d.ts.map +1 -1
  663. package/dist/esm/config/presets.d.ts.map +1 -1
  664. package/dist/esm/config/resources/agent-work.resource-presets.d.ts +4 -0
  665. package/dist/esm/config/resources/agent-work.resource-presets.d.ts.map +1 -0
  666. package/dist/esm/config/resources/agent-work.resource-presets.js +115 -0
  667. package/dist/esm/config/resources/agent-work.resource-presets.js.map +1 -0
  668. package/dist/esm/config/resources/api-key-rotation-window.d.ts +22 -0
  669. package/dist/esm/config/resources/api-key-rotation-window.d.ts.map +1 -0
  670. package/dist/esm/config/resources/api-key-rotation-window.js +45 -0
  671. package/dist/esm/config/resources/api-key-rotation-window.js.map +1 -0
  672. package/dist/esm/config/resources/application.resource-presets.d.ts +2 -0
  673. package/dist/esm/config/resources/application.resource-presets.d.ts.map +1 -1
  674. package/dist/esm/config/resources/application.resource-presets.js +268 -26
  675. package/dist/esm/config/resources/application.resource-presets.js.map +1 -1
  676. package/dist/esm/config/resources/billing.resource-presets.d.ts +4 -3
  677. package/dist/esm/config/resources/billing.resource-presets.d.ts.map +1 -1
  678. package/dist/esm/config/resources/billing.resource-presets.js +241 -111
  679. package/dist/esm/config/resources/billing.resource-presets.js.map +1 -1
  680. package/dist/esm/config/resources/conversation-threads.resource-presets.d.ts +4 -0
  681. package/dist/esm/config/resources/conversation-threads.resource-presets.d.ts.map +1 -0
  682. package/dist/esm/config/resources/conversation-threads.resource-presets.js +105 -0
  683. package/dist/esm/config/resources/conversation-threads.resource-presets.js.map +1 -0
  684. package/dist/esm/config/resources/guidance.resource-presets.d.ts.map +1 -1
  685. package/dist/esm/config/resources/guidance.resource-presets.js +39 -16
  686. package/dist/esm/config/resources/guidance.resource-presets.js.map +1 -1
  687. package/dist/esm/config/resources/identity.resource-presets.d.ts +0 -13
  688. package/dist/esm/config/resources/identity.resource-presets.d.ts.map +1 -1
  689. package/dist/esm/config/resources/identity.resource-presets.js +71 -17
  690. package/dist/esm/config/resources/identity.resource-presets.js.map +1 -1
  691. package/dist/esm/config/resources/inbound-deliveries.resource-presets.d.ts +6 -0
  692. package/dist/esm/config/resources/inbound-deliveries.resource-presets.d.ts.map +1 -0
  693. package/dist/esm/config/resources/inbound-deliveries.resource-presets.js +112 -0
  694. package/dist/esm/config/resources/inbound-deliveries.resource-presets.js.map +1 -0
  695. package/dist/esm/config/resources/inbound-email.resource-presets.d.ts +4 -0
  696. package/dist/esm/config/resources/inbound-email.resource-presets.d.ts.map +1 -0
  697. package/dist/esm/config/resources/inbound-email.resource-presets.js +182 -0
  698. package/dist/esm/config/resources/inbound-email.resource-presets.js.map +1 -0
  699. package/dist/esm/config/resources/index.d.ts.map +1 -1
  700. package/dist/esm/config/resources/index.js +9 -2
  701. package/dist/esm/config/resources/index.js.map +1 -1
  702. package/dist/esm/config/resources/legal-holds.resource-presets.d.ts +4 -0
  703. package/dist/esm/config/resources/legal-holds.resource-presets.d.ts.map +1 -0
  704. package/dist/esm/config/resources/legal-holds.resource-presets.js +76 -0
  705. package/dist/esm/config/resources/legal-holds.resource-presets.js.map +1 -0
  706. package/dist/esm/config/resources/organizations.resource-presets.d.ts.map +1 -1
  707. package/dist/esm/config/resources/organizations.resource-presets.js +216 -35
  708. package/dist/esm/config/resources/organizations.resource-presets.js.map +1 -1
  709. package/dist/esm/config/resources/resource.config.utils.d.ts +20 -0
  710. package/dist/esm/config/resources/resource.config.utils.d.ts.map +1 -1
  711. package/dist/esm/config/resources/resource.config.utils.js +20 -0
  712. package/dist/esm/config/resources/resource.config.utils.js.map +1 -1
  713. package/dist/esm/config/resources/retention-enforcement.resource-presets.d.ts +5 -0
  714. package/dist/esm/config/resources/retention-enforcement.resource-presets.d.ts.map +1 -0
  715. package/dist/esm/config/resources/retention-enforcement.resource-presets.js +74 -0
  716. package/dist/esm/config/resources/retention-enforcement.resource-presets.js.map +1 -0
  717. package/dist/esm/config/resources/security.resource-presets.d.ts +11 -3
  718. package/dist/esm/config/resources/security.resource-presets.d.ts.map +1 -1
  719. package/dist/esm/config/resources/security.resource-presets.js +685 -99
  720. package/dist/esm/config/resources/security.resource-presets.js.map +1 -1
  721. package/dist/esm/config/resources/service-providers.resource-presets.d.ts +4 -0
  722. package/dist/esm/config/resources/service-providers.resource-presets.d.ts.map +1 -0
  723. package/dist/esm/config/resources/service-providers.resource-presets.js +321 -0
  724. package/dist/esm/config/resources/service-providers.resource-presets.js.map +1 -0
  725. package/dist/esm/config/resources/webhooks.resource-presets.d.ts +4 -3
  726. package/dist/esm/config/resources/webhooks.resource-presets.d.ts.map +1 -1
  727. package/dist/esm/config/resources/webhooks.resource-presets.js +102 -26
  728. package/dist/esm/config/resources/webhooks.resource-presets.js.map +1 -1
  729. package/dist/esm/index.d.ts +7 -1
  730. package/dist/esm/index.d.ts.map +1 -1
  731. package/dist/esm/index.js +7 -1
  732. package/dist/esm/index.js.map +1 -1
  733. package/dist/esm/lottie/lottie.content.definitions.d.ts.map +1 -1
  734. package/dist/esm/lottie/lottie.definitions.d.ts.map +1 -1
  735. package/dist/esm/mermaid-stub.d.ts.map +1 -1
  736. package/dist/esm/registration/register-common-enums.d.ts.map +1 -1
  737. package/dist/esm/registration/register-common-enums.js +63 -34
  738. package/dist/esm/registration/register-common-enums.js.map +1 -1
  739. package/dist/esm/registration/register-default-animations.d.ts.map +1 -1
  740. package/dist/esm/registration/register-default-icons.d.ts.map +1 -1
  741. package/dist/esm/registration/register-default-icons.js +3 -1
  742. package/dist/esm/registration/register-default-icons.js.map +1 -1
  743. package/dist/esm/registration/register-default-presets.d.ts.map +1 -1
  744. package/dist/esm/registration/register-default-presets.js +32 -4
  745. package/dist/esm/registration/register-default-presets.js.map +1 -1
  746. package/dist/esm/registration/register-provider-components.d.ts.map +1 -1
  747. package/dist/esm/registration/register-provider-components.js +11 -0
  748. package/dist/esm/registration/register-provider-components.js.map +1 -1
  749. package/dist/esm/shiki-subset.d.ts +11 -3
  750. package/dist/esm/shiki-subset.d.ts.map +1 -1
  751. package/dist/esm/shiki-subset.js +10 -2
  752. package/dist/esm/shiki-subset.js.map +1 -1
  753. package/dist/esm/theme-exports.d.ts.map +1 -1
  754. package/dist/esm/themes/cozy.theme.d.ts.map +1 -1
  755. package/dist/esm/themes/cozy.theme.js +19 -5
  756. package/dist/esm/themes/cozy.theme.js.map +1 -1
  757. package/dist/esm/themes/dense.theme.d.ts.map +1 -1
  758. package/dist/esm/themes/dense.theme.js +76 -10
  759. package/dist/esm/themes/dense.theme.js.map +1 -1
  760. package/dist/esm/themes/editorial.theme.d.ts.map +1 -1
  761. package/dist/esm/themes/editorial.theme.js +19 -5
  762. package/dist/esm/themes/editorial.theme.js.map +1 -1
  763. package/dist/esm/themes/glass.theme.d.ts.map +1 -1
  764. package/dist/esm/themes/glass.theme.js +5 -1
  765. package/dist/esm/themes/glass.theme.js.map +1 -1
  766. package/dist/esm/themes/neo-brutalist.theme.d.ts.map +1 -1
  767. package/dist/esm/themes/neo-brutalist.theme.js +9 -2
  768. package/dist/esm/themes/neo-brutalist.theme.js.map +1 -1
  769. package/dist/esm/themes/terminal.theme.d.ts.map +1 -1
  770. package/dist/esm/themes/terminal.theme.js +19 -5
  771. package/dist/esm/themes/terminal.theme.js.map +1 -1
  772. package/dist/esm/themes/trading.theme.d.ts.map +1 -1
  773. package/dist/esm/themes/trading.theme.js +22 -6
  774. package/dist/esm/themes/trading.theme.js.map +1 -1
  775. package/dist/tsconfig.build.tsbuildinfo +1 -1
  776. package/package.json +31 -45
  777. package/dist/esm/components/form/controls/form-field-checkbox-group.d.ts +0 -16
  778. package/dist/esm/components/form/controls/form-field-checkbox-group.d.ts.map +0 -1
  779. package/dist/esm/components/form/controls/form-field-checkbox-group.js +0 -143
  780. package/dist/esm/components/form/controls/form-field-checkbox-group.js.map +0 -1
@@ -1,7 +1,8 @@
1
1
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
2
  import { resourceUIBehavior, resourceUIBehaviorFrom, SummaryFlow, } from '@wildo-ai/saas-frontend-lib';
3
- import { DisplayField, DisplayLayout, FormField, FormLayout, Section, SummaryLayout, } from '@wildo-ai/saas-frontend-lib';
3
+ import { DisplayField, DisplayLayout, FormField, FormLayout, Section, SummaryLayout, SummaryTitlePlacement, } from '@wildo-ai/saas-frontend-lib';
4
4
  import { BadgeSemanticVariant, EnumDisplayMode, NumberDisplayMode, SectionMode, } from '@wildo-ai/zod-decorators';
5
+ import { LabellingTypes } from '@wildo-ai/presets-components-models';
5
6
  import { BookOpen, Compass, Trophy } from 'lucide-react';
6
7
  import { CoreResourceType as R, CoreResourceOperation as Op, userGuidanceStateResourceConfiguration_InitializationFactory as userGuidanceStateFactory, organizationGuidanceStateResourceConfiguration_InitializationFactory as orgGuidanceStateFactory, userProgressionStateResourceConfiguration_InitializationFactory as userProgressionStateFactory, organizationProgressionStateResourceConfiguration_InitializationFactory as orgProgressionStateFactory, userLifecycleStateResourceConfiguration_InitializationFactory as userLifecycleStateFactory, organizationLifecycleStateResourceConfiguration_InitializationFactory as orgLifecycleStateFactory, GuidanceStateSchema, ProgressionStateSchema, LifecycleStateSchema, LifecycleStage, } from '@wildo-ai/saas-models';
7
8
  import { notAddressable, apiOnly } from './resource.config.utils.js';
@@ -22,11 +23,15 @@ import { notAddressable, apiOnly } from './resource.config.utils.js';
22
23
  * Layout templates are implemented inline in each resource config, following the billing preset pattern.
23
24
  */
24
25
  const guidanceEmptyState = { primaryAction: false };
25
- function guidanceLabel(kind) {
26
- return ({ currentObject }) => {
27
- const n = currentObject.flows ? Object.keys(currentObject.flows).length : 0;
28
- return n > 0 ? `${kind} · ${n} flow${n === 1 ? '' : 's'}` : kind;
29
- };
26
+ /**
27
+ * The name of a guidance, progression or lifecycle STATE record. Each is a singleton per user or organization with
28
+ * no name of its own, so it is named by its resource's own words — the READ title — never by a value. Its stage is
29
+ * its state (the badge) and its flows are rows. These names used to be English written in code ("User guidance ·
30
+ * 3 flows", with an English plural) or the raw stage value, which no translator could reach. A missing word shows
31
+ * its key.
32
+ */
33
+ function stateRecordName({ t, resourceType }) {
34
+ return t(`${LabellingTypes.RESOURCES}.${resourceType}.operations.read.title`);
30
35
  }
31
36
  function lifecycleStageFields(schemaShape) {
32
37
  return {
@@ -50,13 +55,19 @@ export function buildGuidanceMainPresets() {
50
55
  [R.USER_PROGRESSION_STATE]: resourceUIBehavior(userProgressionStateFactory, ProgressionStateSchema, ({ schema, schemaShape, opsVariantResolver }) => ({
51
56
  icon: Trophy,
52
57
  emptyState: guidanceEmptyState,
53
- getFrontendResourceLabel: ({ currentObject }) => `${currentObject.totalPoints} pts`,
58
+ // Points are a value (a row); "pts" was English written in code. The record is named by its resource.
59
+ getFrontendResourceLabel: stateRecordName,
54
60
  layout: {
55
61
  refs: {
56
62
  sections: ['overview', 'activity', 'milestones'],
57
63
  },
58
64
  display: () => (_jsxs(DisplayLayout, { children: [_jsx(Section, { name: "overview", appearance: SectionMode.CARD, children: _jsx(DisplayField, { name: "totalPoints" }) }), _jsxs(Section, { name: "activity", children: [_jsx(DisplayField, { name: "categoriesProgress" }), _jsx(DisplayField, { name: "operationCounts" })] }), _jsx(Section, { name: "milestones", children: _jsx(DisplayField, { name: "milestonesAchieved" }) })] })),
59
- summary: () => (_jsx(SummaryLayout, { flow: SummaryFlow.ROW, children: _jsx(DisplayField, { name: "totalPoints" }) })),
65
+ summary: () => (
66
+ // TEMPLATE_OWNED with no title, because this card's LABEL is `${totalPoints} pts` — the
67
+ // same value the row renders. Left at AUTO the framework puts the label at the head of
68
+ // the row and the card says it twice: "1250 pts · Total points: 1250". The FIELD wins,
69
+ // because it carries its own i18n label and the bare value does not.
70
+ _jsx(SummaryLayout, { flow: SummaryFlow.ROW, titlePlacement: SummaryTitlePlacement.TEMPLATE_OWNED, children: _jsx(DisplayField, { name: "totalPoints" }) })),
60
71
  },
61
72
  fields: {
62
73
  totalPoints: schemaShape.totalPoints.numberUI({
@@ -72,13 +83,19 @@ export function buildGuidanceMainPresets() {
72
83
  [R.ORGANIZATION_PROGRESSION_STATE]: resourceUIBehavior(orgProgressionStateFactory, ProgressionStateSchema, ({ schema, schemaShape, opsVariantResolver }) => ({
73
84
  icon: Trophy,
74
85
  emptyState: guidanceEmptyState,
75
- getFrontendResourceLabel: ({ currentObject }) => `${currentObject.totalPoints} pts`,
86
+ // Points are a value (a row); "pts" was English written in code. The record is named by its resource.
87
+ getFrontendResourceLabel: stateRecordName,
76
88
  layout: {
77
89
  refs: {
78
90
  sections: ['overview', 'activity', 'milestones'],
79
91
  },
80
92
  display: () => (_jsxs(DisplayLayout, { children: [_jsx(Section, { name: "overview", appearance: SectionMode.CARD, children: _jsx(DisplayField, { name: "totalPoints" }) }), _jsxs(Section, { name: "activity", children: [_jsx(DisplayField, { name: "categoriesProgress" }), _jsx(DisplayField, { name: "operationCounts" })] }), _jsx(Section, { name: "milestones", children: _jsx(DisplayField, { name: "milestonesAchieved" }) })] })),
81
- summary: () => (_jsx(SummaryLayout, { flow: SummaryFlow.ROW, children: _jsx(DisplayField, { name: "totalPoints" }) })),
93
+ summary: () => (
94
+ // TEMPLATE_OWNED with no title, because this card's LABEL is `${totalPoints} pts` — the
95
+ // same value the row renders. Left at AUTO the framework puts the label at the head of
96
+ // the row and the card says it twice: "1250 pts · Total points: 1250". The FIELD wins,
97
+ // because it carries its own i18n label and the bare value does not.
98
+ _jsx(SummaryLayout, { flow: SummaryFlow.ROW, titlePlacement: SummaryTitlePlacement.TEMPLATE_OWNED, children: _jsx(DisplayField, { name: "totalPoints" }) })),
82
99
  },
83
100
  fields: {
84
101
  totalPoints: schemaShape.totalPoints.numberUI({
@@ -94,13 +111,16 @@ export function buildGuidanceMainPresets() {
94
111
  [R.ORGANIZATION_LIFECYCLE_STATE]: resourceUIBehavior(orgLifecycleStateFactory, LifecycleStateSchema, ({ schema, schemaShape, opsVariantResolver }) => ({
95
112
  icon: Compass,
96
113
  emptyState: guidanceEmptyState,
97
- getFrontendResourceLabel: ({ currentObject }) => String(currentObject.currentStage),
114
+ getFrontendResourceLabel: stateRecordName,
98
115
  layout: {
99
116
  refs: {
100
117
  sections: ['overview', 'engagement', 'history'],
101
118
  },
102
119
  display: () => (_jsxs(DisplayLayout, { children: [_jsxs(Section, { name: "overview", appearance: SectionMode.CARD, children: [_jsx(DisplayField, { name: "currentStage" }), _jsx(DisplayField, { name: "stageEnteredAt" }), _jsx(DisplayField, { name: "lastActiveAt" })] }), _jsxs(Section, { name: "engagement", children: [_jsx(DisplayField, { name: "stagesVisited" }), _jsx(DisplayField, { name: "activationCriteriaMet" }), _jsx(DisplayField, { name: "engagement" })] }), _jsx(Section, { name: "history", children: _jsx(DisplayField, { name: "stageHistory" }) })] })),
103
- summary: () => (_jsx(SummaryLayout, { flow: SummaryFlow.ROW, children: _jsx(DisplayField, { name: "currentStage" }) })),
120
+ summary: () => (
121
+ // Same as the progression siblings above: the card's LABEL *is* `currentStage`, so at AUTO
122
+ // the stage was printed twice on one line — once bare, once with its field label.
123
+ _jsx(SummaryLayout, { flow: SummaryFlow.ROW, titlePlacement: SummaryTitlePlacement.TEMPLATE_OWNED, children: _jsx(DisplayField, { name: "currentStage" }) })),
104
124
  },
105
125
  fields: lifecycleStageFields(schemaShape),
106
126
  views: [
@@ -115,7 +135,7 @@ export function buildGuidancePlatformPresets() {
115
135
  [R.USER_GUIDANCE_STATE]: resourceUIBehavior(userGuidanceStateFactory, GuidanceStateSchema, ({ schema, schemaShape, opsVariantResolver }) => ({
116
136
  icon: BookOpen,
117
137
  emptyState: guidanceEmptyState,
118
- getFrontendResourceLabel: guidanceLabel('User guidance'),
138
+ getFrontendResourceLabel: stateRecordName,
119
139
  layout: {
120
140
  refs: {
121
141
  sections: ['overview'],
@@ -136,7 +156,7 @@ export function buildGuidancePlatformPresets() {
136
156
  [R.ORGANIZATION_GUIDANCE_STATE]: resourceUIBehavior(orgGuidanceStateFactory, GuidanceStateSchema, ({ schema, schemaShape, opsVariantResolver }) => ({
137
157
  icon: BookOpen,
138
158
  emptyState: guidanceEmptyState,
139
- getFrontendResourceLabel: guidanceLabel('Organization guidance'),
159
+ getFrontendResourceLabel: stateRecordName,
140
160
  layout: {
141
161
  refs: {
142
162
  sections: ['overview'],
@@ -157,13 +177,16 @@ export function buildGuidancePlatformPresets() {
157
177
  [R.USER_LIFECYCLE_STATE]: resourceUIBehavior(userLifecycleStateFactory, LifecycleStateSchema, ({ schema, schemaShape, opsVariantResolver }) => ({
158
178
  icon: Compass,
159
179
  emptyState: guidanceEmptyState,
160
- getFrontendResourceLabel: ({ currentObject }) => String(currentObject.currentStage),
180
+ getFrontendResourceLabel: stateRecordName,
161
181
  layout: {
162
182
  refs: {
163
183
  sections: ['overview', 'engagement', 'history'],
164
184
  },
165
185
  display: () => (_jsxs(DisplayLayout, { children: [_jsxs(Section, { name: "overview", appearance: SectionMode.CARD, children: [_jsx(DisplayField, { name: "currentStage" }), _jsx(DisplayField, { name: "stageEnteredAt" }), _jsx(DisplayField, { name: "lastActiveAt" })] }), _jsxs(Section, { name: "engagement", children: [_jsx(DisplayField, { name: "stagesVisited" }), _jsx(DisplayField, { name: "activationCriteriaMet" }), _jsx(DisplayField, { name: "engagement" })] }), _jsx(Section, { name: "history", children: _jsx(DisplayField, { name: "stageHistory" }) })] })),
166
- summary: () => (_jsx(SummaryLayout, { flow: SummaryFlow.ROW, children: _jsx(DisplayField, { name: "currentStage" }) })),
186
+ summary: () => (
187
+ // Same as the progression siblings above: the card's LABEL *is* `currentStage`, so at AUTO
188
+ // the stage was printed twice on one line — once bare, once with its field label.
189
+ _jsx(SummaryLayout, { flow: SummaryFlow.ROW, titlePlacement: SummaryTitlePlacement.TEMPLATE_OWNED, children: _jsx(DisplayField, { name: "currentStage" }) })),
167
190
  },
168
191
  fields: lifecycleStageFields(schemaShape),
169
192
  views: [
@@ -1 +1 @@
1
- {"version":3,"file":"guidance.resource-presets.js","sourceRoot":"","sources":["../../../../../src/config/resources/guidance.resource-presets.tsx"],"names":[],"mappings":"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","sourcesContent":["import React from 'react';\nimport type { ResourceUIBehavior } from '@wildo-ai/saas-frontend-lib';\nimport {\n resourceUIBehavior,\n resourceUIBehaviorFrom,\n SummaryFlow,\n} from '@wildo-ai/saas-frontend-lib';\nimport {\n DisplayField,\n DisplayLayout,\n FormField,\n FormLayout,\n Section,\n SummaryLayout,\n} from '@wildo-ai/saas-frontend-lib';\nimport {\n BadgeSemanticVariant,\n EnumDisplayMode,\n NumberDisplayMode,\n SectionMode,\n} from '@wildo-ai/zod-decorators';\nimport { BookOpen, Compass, Trophy } from 'lucide-react';\nimport {\n CoreResourceType as R,\n CoreResourceOperation as Op,\n userGuidanceStateResourceConfiguration_InitializationFactory as userGuidanceStateFactory,\n organizationGuidanceStateResourceConfiguration_InitializationFactory as orgGuidanceStateFactory,\n userProgressionStateResourceConfiguration_InitializationFactory as userProgressionStateFactory,\n organizationProgressionStateResourceConfiguration_InitializationFactory as orgProgressionStateFactory,\n userLifecycleStateResourceConfiguration_InitializationFactory as userLifecycleStateFactory,\n organizationLifecycleStateResourceConfiguration_InitializationFactory as orgLifecycleStateFactory,\n GuidanceStateSchema,\n ProgressionStateSchema,\n LifecycleStateSchema,\n LifecycleStage,\n} from '@wildo-ai/saas-models';\nimport { notAddressable, apiOnly } from './resource.config.utils';\n\n/**\n * Guidance & Lifecycle — Resource frontend presets\n *\n * **Main:** USER_PROGRESSION_STATE (read-only achievements / points), ORGANIZATION_PROGRESSION_STATE,\n * ORGANIZATION_LIFECYCLE_STATE — these are consumed by UI surfaces visible to end users or org admins.\n *\n * **Platform:** USER_GUIDANCE_STATE, ORGANIZATION_GUIDANCE_STATE, USER_LIFECYCLE_STATE — system-managed\n * state that drives the guidance engine. End users never view or manage these directly; they are\n * consumed by the companion, internal dashboards, and the guidance rendering pipeline.\n *\n * **Admin:** ORG variants of guidance, progression, and lifecycle — derived from their respective\n * main or platform bases, minus SEARCH.\n *\n * Field UI uses inline enum `values` and `showDescription: true` aligned with billing.\n * Layout templates are implemented inline in each resource config, following the billing preset pattern.\n */\n\nconst guidanceEmptyState = { primaryAction: false as const };\n\nfunction guidanceLabel(kind: string) {\n return ({ currentObject }: { currentObject: { flows?: Record<string, unknown> } }) => {\n const n = currentObject.flows ? Object.keys(currentObject.flows).length : 0;\n return n > 0 ? `${kind} · ${n} flow${n === 1 ? '' : 's'}` : kind;\n };\n}\n\nfunction lifecycleStageFields(schemaShape: (typeof LifecycleStateSchema)['shape']) {\n return {\n currentStage: schemaShape.currentStage.enumUI({\n display: { displayMode: EnumDisplayMode.BADGE, showDescription: true },\n edit: { showDescription: true },\n values: {\n [LifecycleStage.SIGNED_UP]: { color: BadgeSemanticVariant.SECONDARY },\n [LifecycleStage.ACTIVATED]: { color: BadgeSemanticVariant.SUCCESS },\n [LifecycleStage.ENGAGED]: { color: BadgeSemanticVariant.SUCCESS },\n [LifecycleStage.DORMANT]: { color: BadgeSemanticVariant.WARNING },\n [LifecycleStage.REACTIVATED]: { color: BadgeSemanticVariant.INFO },\n [LifecycleStage.CHURNED]: { color: BadgeSemanticVariant.DESTRUCTIVE },\n [LifecycleStage.OFFBOARDED]: { color: BadgeSemanticVariant.DESTRUCTIVE },\n },\n }),\n };\n}\n\nexport function buildGuidanceMainPresets(): Partial<ResourceUIBehavior> {\n return {\n [R.USER_PROGRESSION_STATE]: resourceUIBehavior(userProgressionStateFactory, ProgressionStateSchema, ({ schema, schemaShape, opsVariantResolver }) => ({\n icon: Trophy,\n emptyState: guidanceEmptyState,\n getFrontendResourceLabel: ({ currentObject }) => `${currentObject.totalPoints} pts`,\n layout: {\n refs: {\n sections: ['overview', 'activity', 'milestones'],\n },\n display: () => (\n <DisplayLayout>\n <Section name=\"overview\" appearance={SectionMode.CARD}>\n <DisplayField name=\"totalPoints\" />\n </Section>\n <Section name=\"activity\">\n <DisplayField name=\"categoriesProgress\" />\n <DisplayField name=\"operationCounts\" />\n </Section>\n <Section name=\"milestones\">\n <DisplayField name=\"milestonesAchieved\" />\n </Section>\n </DisplayLayout>\n ),\n summary: () => (\n <SummaryLayout flow={SummaryFlow.ROW}>\n <DisplayField name=\"totalPoints\" />\n </SummaryLayout>\n ),\n },\n fields: {\n totalPoints: schemaShape.totalPoints.numberUI({\n display: { displayMode: NumberDisplayMode.FORMATTED, showDescription: true },\n edit: { showDescription: true },\n }),\n },\n views: [\n [Op.READ, notAddressable()],\n [Op.SEARCH, notAddressable()],\n ],\n })),\n\n [R.ORGANIZATION_PROGRESSION_STATE]: resourceUIBehavior(orgProgressionStateFactory, ProgressionStateSchema, ({ schema, schemaShape, opsVariantResolver }) => ({\n icon: Trophy,\n emptyState: guidanceEmptyState,\n getFrontendResourceLabel: ({ currentObject }) => `${currentObject.totalPoints} pts`,\n layout: {\n refs: {\n sections: ['overview', 'activity', 'milestones'],\n },\n display: () => (\n <DisplayLayout>\n <Section name=\"overview\" appearance={SectionMode.CARD}>\n <DisplayField name=\"totalPoints\" />\n </Section>\n <Section name=\"activity\">\n <DisplayField name=\"categoriesProgress\" />\n <DisplayField name=\"operationCounts\" />\n </Section>\n <Section name=\"milestones\">\n <DisplayField name=\"milestonesAchieved\" />\n </Section>\n </DisplayLayout>\n ),\n summary: () => (\n <SummaryLayout flow={SummaryFlow.ROW}>\n <DisplayField name=\"totalPoints\" />\n </SummaryLayout>\n ),\n },\n fields: {\n totalPoints: schemaShape.totalPoints.numberUI({\n display: { displayMode: NumberDisplayMode.FORMATTED, showDescription: true },\n edit: { showDescription: true },\n }),\n },\n views: [\n [Op.READ, notAddressable()],\n [Op.SEARCH, notAddressable()],\n ],\n })),\n\n [R.ORGANIZATION_LIFECYCLE_STATE]: resourceUIBehavior(orgLifecycleStateFactory, LifecycleStateSchema, ({ schema, schemaShape, opsVariantResolver }) => ({\n icon: Compass,\n emptyState: guidanceEmptyState,\n getFrontendResourceLabel: ({ currentObject }) => String(currentObject.currentStage),\n layout: {\n refs: {\n sections: ['overview', 'engagement', 'history'],\n },\n display: () => (\n <DisplayLayout>\n <Section name=\"overview\" appearance={SectionMode.CARD}>\n <DisplayField name=\"currentStage\" />\n <DisplayField name=\"stageEnteredAt\" />\n <DisplayField name=\"lastActiveAt\" />\n </Section>\n <Section name=\"engagement\">\n <DisplayField name=\"stagesVisited\" />\n <DisplayField name=\"activationCriteriaMet\" />\n <DisplayField name=\"engagement\" />\n </Section>\n <Section name=\"history\">\n <DisplayField name=\"stageHistory\" />\n </Section>\n </DisplayLayout>\n ),\n summary: () => (\n <SummaryLayout flow={SummaryFlow.ROW}>\n <DisplayField name=\"currentStage\" />\n </SummaryLayout>\n ),\n },\n fields: lifecycleStageFields(schemaShape),\n views: [\n [Op.READ, notAddressable()],\n [Op.SEARCH, notAddressable()],\n ],\n })),\n };\n}\n\nexport function buildGuidancePlatformPresets(): Partial<ResourceUIBehavior> {\n return {\n [R.USER_GUIDANCE_STATE]: resourceUIBehavior(userGuidanceStateFactory, GuidanceStateSchema, ({ schema, schemaShape, opsVariantResolver }) => ({\n icon: BookOpen,\n emptyState: guidanceEmptyState,\n getFrontendResourceLabel: guidanceLabel('User guidance'),\n layout: {\n refs: {\n sections: ['overview'],\n },\n display: () => (\n <DisplayLayout>\n <Section name=\"overview\" appearance={SectionMode.CARD}>\n <DisplayField name=\"flows\" />\n </Section>\n </DisplayLayout>\n ),\n summary: () => (\n <SummaryLayout>\n <DisplayField name=\"flows\" />\n </SummaryLayout>\n ),\n edit: () => (\n <FormLayout>\n <Section name=\"overview\" appearance={SectionMode.CARD}>\n <FormField name=\"flows\" />\n </Section>\n </FormLayout>\n ),\n },\n views: [\n [Op.READ, notAddressable()],\n // Guidance state is authored/tracked by the guidance engine — headless\n // (callable via API, no view: never created from a user-facing form).\n [Op.CREATE, apiOnly()],\n [Op.UPDATE, notAddressable()],\n [Op.SEARCH, notAddressable()],\n ],\n })),\n\n [R.ORGANIZATION_GUIDANCE_STATE]: resourceUIBehavior(orgGuidanceStateFactory, GuidanceStateSchema, ({ schema, schemaShape, opsVariantResolver }) => ({\n icon: BookOpen,\n emptyState: guidanceEmptyState,\n getFrontendResourceLabel: guidanceLabel('Organization guidance'),\n layout: {\n refs: {\n sections: ['overview'],\n },\n display: () => (\n <DisplayLayout>\n <Section name=\"overview\" appearance={SectionMode.CARD}>\n <DisplayField name=\"flows\" />\n </Section>\n </DisplayLayout>\n ),\n summary: () => (\n <SummaryLayout>\n <DisplayField name=\"flows\" />\n </SummaryLayout>\n ),\n edit: () => (\n <FormLayout>\n <Section name=\"overview\" appearance={SectionMode.CARD}>\n <FormField name=\"flows\" />\n </Section>\n </FormLayout>\n ),\n },\n views: [\n [Op.READ, notAddressable()],\n // Guidance state is authored/tracked by the guidance engine — headless\n // (callable via API, no view: never created from a user-facing form).\n [Op.CREATE, apiOnly()],\n [Op.UPDATE, notAddressable()],\n [Op.SEARCH, notAddressable()],\n ],\n })),\n\n [R.USER_LIFECYCLE_STATE]: resourceUIBehavior(userLifecycleStateFactory, LifecycleStateSchema, ({ schema, schemaShape, opsVariantResolver }) => ({\n icon: Compass,\n emptyState: guidanceEmptyState,\n getFrontendResourceLabel: ({ currentObject }) => String(currentObject.currentStage),\n layout: {\n refs: {\n sections: ['overview', 'engagement', 'history'],\n },\n display: () => (\n <DisplayLayout>\n <Section name=\"overview\" appearance={SectionMode.CARD}>\n <DisplayField name=\"currentStage\" />\n <DisplayField name=\"stageEnteredAt\" />\n <DisplayField name=\"lastActiveAt\" />\n </Section>\n <Section name=\"engagement\">\n <DisplayField name=\"stagesVisited\" />\n <DisplayField name=\"activationCriteriaMet\" />\n <DisplayField name=\"engagement\" />\n </Section>\n <Section name=\"history\">\n <DisplayField name=\"stageHistory\" />\n </Section>\n </DisplayLayout>\n ),\n summary: () => (\n <SummaryLayout flow={SummaryFlow.ROW}>\n <DisplayField name=\"currentStage\" />\n </SummaryLayout>\n ),\n },\n fields: lifecycleStageFields(schemaShape),\n views: [\n [Op.READ, notAddressable()],\n [Op.SEARCH, notAddressable()],\n ],\n })),\n };\n}\n\nexport function buildGuidanceAdminPresets(\n main: Partial<ResourceUIBehavior>,\n platform: Partial<ResourceUIBehavior>,\n): Partial<ResourceUIBehavior> {\n return {\n [R.ORGANIZATION_GUIDANCE_STATE]: resourceUIBehaviorFrom(\n orgGuidanceStateFactory, platform[R.ORGANIZATION_GUIDANCE_STATE]!, ({ base }) => ({\n icon: base.icon,\n emptyState: base.emptyState,\n getFrontendResourceLabel: base.getFrontendResourceLabel,\n layout: base.layout,\n views: Array.from(base.views.entries()).filter(([op]) => op !== Op.SEARCH),\n }),\n ),\n [R.ORGANIZATION_PROGRESSION_STATE]: resourceUIBehaviorFrom(\n orgProgressionStateFactory, main[R.ORGANIZATION_PROGRESSION_STATE]!, ({ base }) => ({\n icon: base.icon,\n emptyState: base.emptyState,\n getFrontendResourceLabel: base.getFrontendResourceLabel,\n layout: base.layout,\n fields: base.fields,\n views: Array.from(base.views.entries()).filter(([op]) => op !== Op.SEARCH),\n }),\n ),\n [R.ORGANIZATION_LIFECYCLE_STATE]: resourceUIBehaviorFrom(\n orgLifecycleStateFactory, main[R.ORGANIZATION_LIFECYCLE_STATE]!, ({ base }) => ({\n icon: base.icon,\n emptyState: base.emptyState,\n getFrontendResourceLabel: base.getFrontendResourceLabel,\n layout: base.layout,\n fields: base.fields,\n views: Array.from(base.views.entries()).filter(([op]) => op !== Op.SEARCH),\n }),\n ),\n };\n}\n\nexport const guidanceMainPresets = buildGuidanceMainPresets();\nexport const guidancePlatformPresets = buildGuidancePlatformPresets();\nexport const guidanceAdminPresets = buildGuidanceAdminPresets(\n guidanceMainPresets,\n guidancePlatformPresets,\n);\n\nexport const userGuidanceStatePlatformResourceUIBehavior = guidancePlatformPresets[R.USER_GUIDANCE_STATE]!;\nexport const organizationGuidanceStatePlatformResourceUIBehavior = guidancePlatformPresets[R.ORGANIZATION_GUIDANCE_STATE]!;\nexport const organizationGuidanceStateAdminResourceUIBehavior = guidanceAdminPresets[R.ORGANIZATION_GUIDANCE_STATE]!;\nexport const userProgressionStateMainResourceUIBehavior = guidanceMainPresets[R.USER_PROGRESSION_STATE]!;\nexport const organizationProgressionStateMainResourceUIBehavior = guidanceMainPresets[R.ORGANIZATION_PROGRESSION_STATE]!;\nexport const organizationProgressionStateAdminResourceUIBehavior = guidanceAdminPresets[R.ORGANIZATION_PROGRESSION_STATE]!;\nexport const userLifecycleStatePlatformResourceUIBehavior = guidancePlatformPresets[R.USER_LIFECYCLE_STATE]!;\nexport const organizationLifecycleStateMainResourceUIBehavior = guidanceMainPresets[R.ORGANIZATION_LIFECYCLE_STATE]!;\nexport const organizationLifecycleStateAdminResourceUIBehavior = guidanceAdminPresets[R.ORGANIZATION_LIFECYCLE_STATE]!;\n"]}
1
+ {"version":3,"file":"guidance.resource-presets.js","sourceRoot":"","sources":["../../../../../src/config/resources/guidance.resource-presets.tsx"],"names":[],"mappings":"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","sourcesContent":["import React from 'react';\nimport type { ResourceUIBehavior } from '@wildo-ai/saas-frontend-lib';\nimport {\n resourceUIBehavior,\n resourceUIBehaviorFrom,\n SummaryFlow,\n} from '@wildo-ai/saas-frontend-lib';\nimport {\n DisplayField,\n DisplayLayout,\n FormField,\n FormLayout,\n Section,\n SummaryLayout,\n SummaryTitlePlacement,\n} from '@wildo-ai/saas-frontend-lib';\nimport {\n BadgeSemanticVariant,\n EnumDisplayMode,\n NumberDisplayMode,\n SectionMode,\n} from '@wildo-ai/zod-decorators';\nimport { LabellingTypes } from '@wildo-ai/presets-components-models';\nimport { BookOpen, Compass, Trophy } from 'lucide-react';\nimport {\n CoreResourceType as R,\n CoreResourceOperation as Op,\n userGuidanceStateResourceConfiguration_InitializationFactory as userGuidanceStateFactory,\n organizationGuidanceStateResourceConfiguration_InitializationFactory as orgGuidanceStateFactory,\n userProgressionStateResourceConfiguration_InitializationFactory as userProgressionStateFactory,\n organizationProgressionStateResourceConfiguration_InitializationFactory as orgProgressionStateFactory,\n userLifecycleStateResourceConfiguration_InitializationFactory as userLifecycleStateFactory,\n organizationLifecycleStateResourceConfiguration_InitializationFactory as orgLifecycleStateFactory,\n GuidanceStateSchema,\n ProgressionStateSchema,\n LifecycleStateSchema,\n LifecycleStage,\n} from '@wildo-ai/saas-models';\nimport { notAddressable, apiOnly } from './resource.config.utils';\n\n/**\n * Guidance & Lifecycle — Resource frontend presets\n *\n * **Main:** USER_PROGRESSION_STATE (read-only achievements / points), ORGANIZATION_PROGRESSION_STATE,\n * ORGANIZATION_LIFECYCLE_STATE — these are consumed by UI surfaces visible to end users or org admins.\n *\n * **Platform:** USER_GUIDANCE_STATE, ORGANIZATION_GUIDANCE_STATE, USER_LIFECYCLE_STATE — system-managed\n * state that drives the guidance engine. End users never view or manage these directly; they are\n * consumed by the companion, internal dashboards, and the guidance rendering pipeline.\n *\n * **Admin:** ORG variants of guidance, progression, and lifecycle — derived from their respective\n * main or platform bases, minus SEARCH.\n *\n * Field UI uses inline enum `values` and `showDescription: true` aligned with billing.\n * Layout templates are implemented inline in each resource config, following the billing preset pattern.\n */\n\nconst guidanceEmptyState = { primaryAction: false as const };\n\n/**\n * The name of a guidance, progression or lifecycle STATE record. Each is a singleton per user or organization with\n * no name of its own, so it is named by its resource's own words — the READ title — never by a value. Its stage is\n * its state (the badge) and its flows are rows. These names used to be English written in code (\"User guidance ·\n * 3 flows\", with an English plural) or the raw stage value, which no translator could reach. A missing word shows\n * its key.\n */\nfunction stateRecordName({ t, resourceType }: { t: (key: string) => string; resourceType: string }): string {\n return t(`${LabellingTypes.RESOURCES}.${resourceType}.operations.read.title`);\n}\n\nfunction lifecycleStageFields(schemaShape: (typeof LifecycleStateSchema)['shape']) {\n return {\n currentStage: schemaShape.currentStage.enumUI({\n display: { displayMode: EnumDisplayMode.BADGE, showDescription: true },\n edit: { showDescription: true },\n values: {\n [LifecycleStage.SIGNED_UP]: { color: BadgeSemanticVariant.SECONDARY },\n [LifecycleStage.ACTIVATED]: { color: BadgeSemanticVariant.SUCCESS },\n [LifecycleStage.ENGAGED]: { color: BadgeSemanticVariant.SUCCESS },\n [LifecycleStage.DORMANT]: { color: BadgeSemanticVariant.WARNING },\n [LifecycleStage.REACTIVATED]: { color: BadgeSemanticVariant.INFO },\n [LifecycleStage.CHURNED]: { color: BadgeSemanticVariant.DESTRUCTIVE },\n [LifecycleStage.OFFBOARDED]: { color: BadgeSemanticVariant.DESTRUCTIVE },\n },\n }),\n };\n}\n\nexport function buildGuidanceMainPresets(): Partial<ResourceUIBehavior> {\n return {\n [R.USER_PROGRESSION_STATE]: resourceUIBehavior(userProgressionStateFactory, ProgressionStateSchema, ({ schema, schemaShape, opsVariantResolver }) => ({\n icon: Trophy,\n emptyState: guidanceEmptyState,\n // Points are a value (a row); \"pts\" was English written in code. The record is named by its resource.\n getFrontendResourceLabel: stateRecordName,\n layout: {\n refs: {\n sections: ['overview', 'activity', 'milestones'],\n },\n display: () => (\n <DisplayLayout>\n <Section name=\"overview\" appearance={SectionMode.CARD}>\n <DisplayField name=\"totalPoints\" />\n </Section>\n <Section name=\"activity\">\n <DisplayField name=\"categoriesProgress\" />\n <DisplayField name=\"operationCounts\" />\n </Section>\n <Section name=\"milestones\">\n <DisplayField name=\"milestonesAchieved\" />\n </Section>\n </DisplayLayout>\n ),\n summary: () => (\n // TEMPLATE_OWNED with no title, because this card's LABEL is `${totalPoints} pts` — the\n // same value the row renders. Left at AUTO the framework puts the label at the head of\n // the row and the card says it twice: \"1250 pts · Total points: 1250\". The FIELD wins,\n // because it carries its own i18n label and the bare value does not.\n <SummaryLayout flow={SummaryFlow.ROW} titlePlacement={SummaryTitlePlacement.TEMPLATE_OWNED}>\n <DisplayField name=\"totalPoints\" />\n </SummaryLayout>\n ),\n },\n fields: {\n totalPoints: schemaShape.totalPoints.numberUI({\n display: { displayMode: NumberDisplayMode.FORMATTED, showDescription: true },\n edit: { showDescription: true },\n }),\n },\n views: [\n [Op.READ, notAddressable()],\n [Op.SEARCH, notAddressable()],\n ],\n })),\n\n [R.ORGANIZATION_PROGRESSION_STATE]: resourceUIBehavior(orgProgressionStateFactory, ProgressionStateSchema, ({ schema, schemaShape, opsVariantResolver }) => ({\n icon: Trophy,\n emptyState: guidanceEmptyState,\n // Points are a value (a row); \"pts\" was English written in code. The record is named by its resource.\n getFrontendResourceLabel: stateRecordName,\n layout: {\n refs: {\n sections: ['overview', 'activity', 'milestones'],\n },\n display: () => (\n <DisplayLayout>\n <Section name=\"overview\" appearance={SectionMode.CARD}>\n <DisplayField name=\"totalPoints\" />\n </Section>\n <Section name=\"activity\">\n <DisplayField name=\"categoriesProgress\" />\n <DisplayField name=\"operationCounts\" />\n </Section>\n <Section name=\"milestones\">\n <DisplayField name=\"milestonesAchieved\" />\n </Section>\n </DisplayLayout>\n ),\n summary: () => (\n // TEMPLATE_OWNED with no title, because this card's LABEL is `${totalPoints} pts` — the\n // same value the row renders. Left at AUTO the framework puts the label at the head of\n // the row and the card says it twice: \"1250 pts · Total points: 1250\". The FIELD wins,\n // because it carries its own i18n label and the bare value does not.\n <SummaryLayout flow={SummaryFlow.ROW} titlePlacement={SummaryTitlePlacement.TEMPLATE_OWNED}>\n <DisplayField name=\"totalPoints\" />\n </SummaryLayout>\n ),\n },\n fields: {\n totalPoints: schemaShape.totalPoints.numberUI({\n display: { displayMode: NumberDisplayMode.FORMATTED, showDescription: true },\n edit: { showDescription: true },\n }),\n },\n views: [\n [Op.READ, notAddressable()],\n [Op.SEARCH, notAddressable()],\n ],\n })),\n\n [R.ORGANIZATION_LIFECYCLE_STATE]: resourceUIBehavior(orgLifecycleStateFactory, LifecycleStateSchema, ({ schema, schemaShape, opsVariantResolver }) => ({\n icon: Compass,\n emptyState: guidanceEmptyState,\n getFrontendResourceLabel: stateRecordName,\n layout: {\n refs: {\n sections: ['overview', 'engagement', 'history'],\n },\n display: () => (\n <DisplayLayout>\n <Section name=\"overview\" appearance={SectionMode.CARD}>\n <DisplayField name=\"currentStage\" />\n <DisplayField name=\"stageEnteredAt\" />\n <DisplayField name=\"lastActiveAt\" />\n </Section>\n <Section name=\"engagement\">\n <DisplayField name=\"stagesVisited\" />\n <DisplayField name=\"activationCriteriaMet\" />\n <DisplayField name=\"engagement\" />\n </Section>\n <Section name=\"history\">\n <DisplayField name=\"stageHistory\" />\n </Section>\n </DisplayLayout>\n ),\n summary: () => (\n // Same as the progression siblings above: the card's LABEL *is* `currentStage`, so at AUTO\n // the stage was printed twice on one line — once bare, once with its field label.\n <SummaryLayout flow={SummaryFlow.ROW} titlePlacement={SummaryTitlePlacement.TEMPLATE_OWNED}>\n <DisplayField name=\"currentStage\" />\n </SummaryLayout>\n ),\n },\n fields: lifecycleStageFields(schemaShape),\n views: [\n [Op.READ, notAddressable()],\n [Op.SEARCH, notAddressable()],\n ],\n })),\n };\n}\n\nexport function buildGuidancePlatformPresets(): Partial<ResourceUIBehavior> {\n return {\n [R.USER_GUIDANCE_STATE]: resourceUIBehavior(userGuidanceStateFactory, GuidanceStateSchema, ({ schema, schemaShape, opsVariantResolver }) => ({\n icon: BookOpen,\n emptyState: guidanceEmptyState,\n getFrontendResourceLabel: stateRecordName,\n layout: {\n refs: {\n sections: ['overview'],\n },\n display: () => (\n <DisplayLayout>\n <Section name=\"overview\" appearance={SectionMode.CARD}>\n <DisplayField name=\"flows\" />\n </Section>\n </DisplayLayout>\n ),\n summary: () => (\n <SummaryLayout>\n <DisplayField name=\"flows\" />\n </SummaryLayout>\n ),\n edit: () => (\n <FormLayout>\n <Section name=\"overview\" appearance={SectionMode.CARD}>\n <FormField name=\"flows\" />\n </Section>\n </FormLayout>\n ),\n },\n views: [\n [Op.READ, notAddressable()],\n // Guidance state is authored/tracked by the guidance engine — headless\n // (callable via API, no view: never created from a user-facing form).\n [Op.CREATE, apiOnly()],\n [Op.UPDATE, notAddressable()],\n [Op.SEARCH, notAddressable()],\n ],\n })),\n\n [R.ORGANIZATION_GUIDANCE_STATE]: resourceUIBehavior(orgGuidanceStateFactory, GuidanceStateSchema, ({ schema, schemaShape, opsVariantResolver }) => ({\n icon: BookOpen,\n emptyState: guidanceEmptyState,\n getFrontendResourceLabel: stateRecordName,\n layout: {\n refs: {\n sections: ['overview'],\n },\n display: () => (\n <DisplayLayout>\n <Section name=\"overview\" appearance={SectionMode.CARD}>\n <DisplayField name=\"flows\" />\n </Section>\n </DisplayLayout>\n ),\n summary: () => (\n <SummaryLayout>\n <DisplayField name=\"flows\" />\n </SummaryLayout>\n ),\n edit: () => (\n <FormLayout>\n <Section name=\"overview\" appearance={SectionMode.CARD}>\n <FormField name=\"flows\" />\n </Section>\n </FormLayout>\n ),\n },\n views: [\n [Op.READ, notAddressable()],\n // Guidance state is authored/tracked by the guidance engine — headless\n // (callable via API, no view: never created from a user-facing form).\n [Op.CREATE, apiOnly()],\n [Op.UPDATE, notAddressable()],\n [Op.SEARCH, notAddressable()],\n ],\n })),\n\n [R.USER_LIFECYCLE_STATE]: resourceUIBehavior(userLifecycleStateFactory, LifecycleStateSchema, ({ schema, schemaShape, opsVariantResolver }) => ({\n icon: Compass,\n emptyState: guidanceEmptyState,\n getFrontendResourceLabel: stateRecordName,\n layout: {\n refs: {\n sections: ['overview', 'engagement', 'history'],\n },\n display: () => (\n <DisplayLayout>\n <Section name=\"overview\" appearance={SectionMode.CARD}>\n <DisplayField name=\"currentStage\" />\n <DisplayField name=\"stageEnteredAt\" />\n <DisplayField name=\"lastActiveAt\" />\n </Section>\n <Section name=\"engagement\">\n <DisplayField name=\"stagesVisited\" />\n <DisplayField name=\"activationCriteriaMet\" />\n <DisplayField name=\"engagement\" />\n </Section>\n <Section name=\"history\">\n <DisplayField name=\"stageHistory\" />\n </Section>\n </DisplayLayout>\n ),\n summary: () => (\n // Same as the progression siblings above: the card's LABEL *is* `currentStage`, so at AUTO\n // the stage was printed twice on one line — once bare, once with its field label.\n <SummaryLayout flow={SummaryFlow.ROW} titlePlacement={SummaryTitlePlacement.TEMPLATE_OWNED}>\n <DisplayField name=\"currentStage\" />\n </SummaryLayout>\n ),\n },\n fields: lifecycleStageFields(schemaShape),\n views: [\n [Op.READ, notAddressable()],\n [Op.SEARCH, notAddressable()],\n ],\n })),\n };\n}\n\nexport function buildGuidanceAdminPresets(\n main: Partial<ResourceUIBehavior>,\n platform: Partial<ResourceUIBehavior>,\n): Partial<ResourceUIBehavior> {\n return {\n [R.ORGANIZATION_GUIDANCE_STATE]: resourceUIBehaviorFrom(\n orgGuidanceStateFactory, platform[R.ORGANIZATION_GUIDANCE_STATE]!, ({ base }) => ({\n icon: base.icon,\n emptyState: base.emptyState,\n getFrontendResourceLabel: base.getFrontendResourceLabel,\n layout: base.layout,\n views: Array.from(base.views.entries()).filter(([op]) => op !== Op.SEARCH),\n }),\n ),\n [R.ORGANIZATION_PROGRESSION_STATE]: resourceUIBehaviorFrom(\n orgProgressionStateFactory, main[R.ORGANIZATION_PROGRESSION_STATE]!, ({ base }) => ({\n icon: base.icon,\n emptyState: base.emptyState,\n getFrontendResourceLabel: base.getFrontendResourceLabel,\n layout: base.layout,\n fields: base.fields,\n views: Array.from(base.views.entries()).filter(([op]) => op !== Op.SEARCH),\n }),\n ),\n [R.ORGANIZATION_LIFECYCLE_STATE]: resourceUIBehaviorFrom(\n orgLifecycleStateFactory, main[R.ORGANIZATION_LIFECYCLE_STATE]!, ({ base }) => ({\n icon: base.icon,\n emptyState: base.emptyState,\n getFrontendResourceLabel: base.getFrontendResourceLabel,\n layout: base.layout,\n fields: base.fields,\n views: Array.from(base.views.entries()).filter(([op]) => op !== Op.SEARCH),\n }),\n ),\n };\n}\n\nexport const guidanceMainPresets = buildGuidanceMainPresets();\nexport const guidancePlatformPresets = buildGuidancePlatformPresets();\nexport const guidanceAdminPresets = buildGuidanceAdminPresets(\n guidanceMainPresets,\n guidancePlatformPresets,\n);\n\nexport const userGuidanceStatePlatformResourceUIBehavior = guidancePlatformPresets[R.USER_GUIDANCE_STATE]!;\nexport const organizationGuidanceStatePlatformResourceUIBehavior = guidancePlatformPresets[R.ORGANIZATION_GUIDANCE_STATE]!;\nexport const organizationGuidanceStateAdminResourceUIBehavior = guidanceAdminPresets[R.ORGANIZATION_GUIDANCE_STATE]!;\nexport const userProgressionStateMainResourceUIBehavior = guidanceMainPresets[R.USER_PROGRESSION_STATE]!;\nexport const organizationProgressionStateMainResourceUIBehavior = guidanceMainPresets[R.ORGANIZATION_PROGRESSION_STATE]!;\nexport const organizationProgressionStateAdminResourceUIBehavior = guidanceAdminPresets[R.ORGANIZATION_PROGRESSION_STATE]!;\nexport const userLifecycleStatePlatformResourceUIBehavior = guidancePlatformPresets[R.USER_LIFECYCLE_STATE]!;\nexport const organizationLifecycleStateMainResourceUIBehavior = guidanceMainPresets[R.ORGANIZATION_LIFECYCLE_STATE]!;\nexport const organizationLifecycleStateAdminResourceUIBehavior = guidanceAdminPresets[R.ORGANIZATION_LIFECYCLE_STATE]!;\n"]}
@@ -1,17 +1,4 @@
1
1
  import type { ResourceUIBehavior } from "@wildo-ai/saas-frontend-lib";
2
- /**
3
- * Identity & Users — Resource frontend presets
4
- *
5
- * **Main:** USER_SELF, USER_SELF_PROFILES, USER_SELF_PREFERENCES, USERS (read-only for
6
- * mentions/assignments), ANONYMOUS_USERS, USER_FEATURES. End users use the `_SELF` variants
7
- * for their own profiles/preferences — USER_PROFILES and USER_PREFERENCES are **admin-only**.
8
- *
9
- * **Admin:** USERS (LIST addressable — user management page), USER_PROFILES, USER_PREFERENCES,
10
- * ANONYMOUS_USERS, USER_FEATURES.
11
- *
12
- * Field-level `{primitive}UI` follows the billing convention: inline `values` for enums, and
13
- * `showDescription: true`. Layout templates are implemented inline in each resource config.
14
- */
15
2
  export declare const usersMainResourceUIBehavior: import("@wildo-ai/saas-frontend-lib").ResourceUIBehaviorConfig<any, any, import("zod").ZodAny>;
16
3
  export declare const usersAdminResourceUIBehavior: import("@wildo-ai/saas-frontend-lib").ResourceUIBehaviorConfig<any, any, import("zod").ZodAny>;
17
4
  export declare function buildIdentityMainPresets(): Partial<ResourceUIBehavior>;
@@ -1 +1 @@
1
- {"version":3,"file":"identity.resource-presets.d.ts","sourceRoot":"","sources":["../../../../src/config/resources/identity.resource-presets.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,6BAA6B,CAAC;AAuCtE;;;;;;;;;;;;GAYG;AAEH,eAAO,MAAM,2BAA2B,gGAiErC,CAAC;AAEJ,eAAO,MAAM,4BAA4B,gGA+CtC,CAAC;AAEJ,wBAAgB,wBAAwB,IAAI,OAAO,CAAC,kBAAkB,CAAC,CAmVtE;AAED,wBAAgB,yBAAyB,CAAC,IAAI,EAAE,OAAO,CAAC,kBAAkB,CAAC,GAAG,OAAO,CAAC,kBAAkB,CAAC,CAuCxG;AAED,eAAO,MAAM,mBAAmB,6BAA6B,CAAC;AAC9D,eAAO,MAAM,oBAAoB,6BAAiD,CAAC;AAGnF,eAAO,MAAM,0BAA0B,gGAAoC,CAAC;AAC5E,eAAO,MAAM,kCAAkC,gGAA6C,CAAC;AAC7F,eAAO,MAAM,qCAAqC,gGAAgD,CAAC;AACnG,eAAO,MAAM,oCAAoC,gGAA0C,CAAC;AAC5F,eAAO,MAAM,qCAAqC,gGAA2C,CAAC;AAC9F,eAAO,MAAM,8BAA8B,gGAAyC,CAAC;AACrF,eAAO,MAAM,iCAAiC,gGAA4C,CAAC;AAC3F,eAAO,MAAM,kCAAkC,gGAAwC,CAAC;AACxF,eAAO,MAAM,mCAAmC,gGAAyC,CAAC"}
1
+ {"version":3,"file":"identity.resource-presets.d.ts","sourceRoot":"","sources":["../../../../../src/config/resources/identity.resource-presets.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,6BAA6B,CAAC;AAkEtE,eAAO,MAAM,2BAA2B,gGAiErC,CAAC;AAEJ,eAAO,MAAM,4BAA4B,gGA+CtC,CAAC;AAEJ,wBAAgB,wBAAwB,IAAI,OAAO,CAAC,kBAAkB,CAAC,CAsXtE;AAED,wBAAgB,yBAAyB,CAAC,IAAI,EAAE,OAAO,CAAC,kBAAkB,CAAC,GAAG,OAAO,CAAC,kBAAkB,CAAC,CAwCxG;AAED,eAAO,MAAM,mBAAmB,6BAA6B,CAAC;AAC9D,eAAO,MAAM,oBAAoB,6BAAiD,CAAC;AAGnF,eAAO,MAAM,0BAA0B,gGAAoC,CAAC;AAC5E,eAAO,MAAM,kCAAkC,gGAA6C,CAAC;AAC7F,eAAO,MAAM,qCAAqC,gGAAgD,CAAC;AACnG,eAAO,MAAM,oCAAoC,gGAA0C,CAAC;AAC5F,eAAO,MAAM,qCAAqC,gGAA2C,CAAC;AAC9F,eAAO,MAAM,8BAA8B,gGAAyC,CAAC;AACrF,eAAO,MAAM,iCAAiC,gGAA4C,CAAC;AAC3F,eAAO,MAAM,kCAAkC,gGAAwC,CAAC;AACxF,eAAO,MAAM,mCAAmC,gGAAyC,CAAC"}
@@ -1,5 +1,5 @@
1
1
  import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
2
- import { resourceUIBehavior, resourceUIBehaviorFrom, StandardIconReference, ActionVisibility } from "@wildo-ai/saas-frontend-lib";
2
+ import { resourceUIBehavior, resourceUIBehaviorFrom, StandardIconReference, ActionVisibility, ResourceLayoutInlineEditDefault } from "@wildo-ai/saas-frontend-lib";
3
3
  import { DisplayField, DisplayLayout, FormField, FormLayout, ObjectScope, RelatedResourceSections, Section, SummaryLayout, SummaryFlow, SummaryMeta, SummaryTitle } from "@wildo-ai/saas-frontend-lib";
4
4
  import { BadgeSemanticVariant, DisplayChromeMode, EditChromeMode, EnumDisplayMode, SectionMode, StringDisplayMode, StringEditMode, FileDisplayPresentation, FileMediaShape, FileMediaSize, } from "@wildo-ai/zod-decorators";
5
5
  import { CoreResourceType as R, CoreResourceOperation as Op, UserStatus, UserSelf_Operations, UserSelfPreferences_Operations, Users_Operations, userSelfResourceConfiguration_InitializationFactory as userSelfFactory, userSelfProfilesResourceConfiguration_InitializationFactory as userSelfProfilesFactory, userSelfPreferencesResourceConfiguration_InitializationFactory as userSelfPreferencesFactory, usersResourceConfiguration_InitializationFactory as usersFactory, anonymousUsersResourceConfiguration_InitializationFactory as anonymousUsersFactory, userProfilesResourceConfiguration_InitializationFactory as userProfilesFactory, userPreferencesResourceConfiguration_InitializationFactory as userPreferencesFactory, userFeaturesResourceConfiguration_InitializationFactory as userFeaturesFactory, UserSchema, UserProfileSchema, UserPreferencesSchema, AnonymousUserSchema, ScopeFeaturesWithOverridesSchema, } from "@wildo-ai/saas-models";
@@ -18,6 +18,17 @@ import { addressable, notAddressable, apiOnly } from "./resource.config.utils.js
18
18
  * Field-level `{primitive}UI` follows the billing convention: inline `values` for enums, and
19
19
  * `showDescription: true`. Layout templates are implemented inline in each resource config.
20
20
  */
21
+ /**
22
+ * The name a profile is shown under — its header and its card title, for both the self and the admin
23
+ * variant (they share one layout, so they must share one name).
24
+ *
25
+ * The name a person CHOSE to be shown wins over the one assembled from its legal parts: `displayName`
26
+ * is optional and exists precisely to override "first last". Falling back keeps every profile named,
27
+ * since both halves are required.
28
+ */
29
+ function resolveUserProfileName(profile) {
30
+ return profile.displayName?.trim() || `${profile.firstName} ${profile.lastName}`.trim();
31
+ }
21
32
  export const usersMainResourceUIBehavior = resourceUIBehavior(usersFactory, UserSchema, ({ schemaShape }) => ({
22
33
  icon: StandardIconReference.USERS,
23
34
  layout: {
@@ -109,22 +120,42 @@ export function buildIdentityMainPresets() {
109
120
  })),
110
121
  [R.USER_SELF_PROFILES]: resourceUIBehavior(userSelfProfilesFactory, UserProfileSchema, ({ schema, schemaShape, opsVariantResolver }) => ({
111
122
  icon: StandardIconReference.PROFILE,
112
- getFrontendResourceLabel: ({ currentObject }) => `${currentObject.firstName} ${currentObject.lastName}`.trim(),
123
+ getFrontendResourceLabel: ({ currentObject }) => resolveUserProfileName(currentObject),
113
124
  layout: {
114
125
  // Flat, sectionless profile: a single settings-row list (no cards, no
115
126
  // section headers). The old identity/contact/profile grouping added
116
127
  // visual chrome without semantic value on a short self-profile form.
117
128
  refs: { sections: [] },
118
- // Settings-page chrome (Settings Hub → Profile): label-left / value-right rows.
119
- defaultChromeMode: { display: DisplayChromeMode.SETTINGS_ROW, summary: DisplayChromeMode.INLINE, edit: EditChromeMode.SETTINGS_ROW },
120
- display: () => (_jsxs(DisplayLayout, { children: [_jsx(DisplayField, { name: "displayName" }), _jsx(DisplayField, { name: "firstName" }), _jsx(DisplayField, { name: "lastName" }), _jsx(DisplayField, { name: "title" }), _jsx(DisplayField, { name: "avatar" }), _jsx(DisplayField, { name: "phoneNumber" }), _jsx(DisplayField, { name: "bio" })] })),
121
- summary: () => (_jsxs(SummaryLayout, { children: [_jsx(SummaryTitle, { name: "displayName" }), _jsxs(SummaryMeta, { children: [_jsx(DisplayField, { name: "firstName" }), _jsx(DisplayField, { name: "lastName" })] })] })),
122
- edit: () => (_jsxs(FormLayout, { children: [_jsx(FormField, { name: "displayName" }), _jsx(FormField, { name: "firstName" }), _jsx(FormField, { name: "lastName" }), _jsx(FormField, { name: "title" }), _jsx(FormField, { name: "avatar" }), _jsx(FormField, { name: "phoneNumber" }), _jsx(FormField, { name: "bio" })] })),
129
+ // Settings-page chrome (Settings Hub → Profile): label-left / value-right rows on read and
130
+ // edit. A card shows bare values — the name is the card's title and the job title needs no
131
+ // "Job title:" in front of it.
132
+ defaultChromeMode: { display: DisplayChromeMode.SETTINGS_ROW, summary: DisplayChromeMode.HIDDEN, edit: EditChromeMode.SETTINGS_ROW },
133
+ // A person’s own profile — their name, photo and contact details. A settings pane is a list of decisions an operator came to TAKE, so its
134
+ // writable fields are offered in place rather than behind a whole-pane edit mode. The set is
135
+ // DERIVED (not primary key, not excludeFromUpdate, not hidden, not opted out), so a field
136
+ // added to this schema tomorrow is covered without anyone remembering to decorate it.
137
+ defaultInlineEdit: ResourceLayoutInlineEditDefault.WRITABLE_FIELDS,
138
+ // And its empty rows say WHICH emptiness they are — "None yet" for a list with no members,
139
+ // "Not available" for a computed value, "No value" for a field awaiting input — instead of one
140
+ // em dash standing for all three. The surface policy's dash is right where a reader is scanning;
141
+ // on a settings row, which is read one at a time to decide something, it is an answer that
142
+ // refuses to answer.
143
+ defaultEmptyValue: 'placeholder',
144
+ // Read and edit list the fields in ONE order: the two required name parts first, then the
145
+ // optional name that overrides them, then the rest. The read pane is edited in place, so a
146
+ // different order on the form would move every field the moment the person opened it.
147
+ display: () => (_jsxs(DisplayLayout, { children: [_jsx(DisplayField, { name: "firstName" }), _jsx(DisplayField, { name: "lastName" }), _jsx(DisplayField, { name: "displayName" }), _jsx(DisplayField, { name: "title" }), _jsx(DisplayField, { name: "avatar" }), _jsx(DisplayField, { name: "phoneNumber" }), _jsx(DisplayField, { name: "bio" })] })),
148
+ // A profile card is the person: their resolved name (display name, else first + last) as the
149
+ // title, their job title beneath it. The name parts are NOT repeated as meta rows — they were,
150
+ // as "First name: …" and "Last name: …" under a title already reading the same words.
151
+ summary: () => (_jsxs(SummaryLayout, { children: [_jsx(SummaryTitle, {}), _jsx(SummaryMeta, { children: _jsx(DisplayField, { name: "title" }) })] })),
152
+ edit: () => (_jsxs(FormLayout, { children: [_jsx(FormField, { name: "firstName", autoFocus: true }), _jsx(FormField, { name: "lastName" }), _jsx(FormField, { name: "displayName" }), _jsx(FormField, { name: "title" }), _jsx(FormField, { name: "avatar" }), _jsx(FormField, { name: "phoneNumber" }), _jsx(FormField, { name: "bio" })] })),
123
153
  },
124
154
  fields: {
125
- // Title is optional metadata — hide the row on the READ view until set
126
- // (the edit form still renders it so it can be filled).
127
- title: schemaShape.title.stringUI({ display: { hideWhenEmpty: true } }),
155
+ // Job title is optional. On the settings pane its empty row STAYS ("No value"): the pane is
156
+ // edited in place, and a row hidden while empty is a field nobody can set without opening
157
+ // the whole-pane form. On a card it disappears when unset — a card has no row to fill.
158
+ title: schemaShape.title.stringUI({ summaryOverride: { hideWhenEmpty: true } }),
128
159
  // Avatar renders INLINE as a small CIRCLE on display (opt-in), no caption — the
129
160
  // natural profile-picture look. Bytes are fetched over the authenticated
130
161
  // resource-integrated serve route (authz inherits the profile READ); without the
@@ -140,8 +171,9 @@ export function buildIdentityMainPresets() {
140
171
  // The edit control opts OUT of the layout's SETTINGS_ROW default
141
172
  // (label-left / narrow end column): long-form writing needs the full row
142
173
  // width, so the field authors STACKED — label above, editor spanning.
174
+ // Its empty row stays on the read pane for the same reason as the job title's.
143
175
  bio: schemaShape.bio.stringUI({
144
- display: { displayMode: StringDisplayMode.MARKDOWN, hideWhenEmpty: true },
176
+ display: { displayMode: StringDisplayMode.MARKDOWN },
145
177
  edit: { editMode: StringEditMode.MARKDOWN, chromeMode: EditChromeMode.STACKED },
146
178
  }),
147
179
  },
@@ -161,11 +193,32 @@ export function buildIdentityMainPresets() {
161
193
  // list. `appearance` (UI theme) is intentionally NOT a section here — see
162
194
  // the omission note in the display/edit templates.
163
195
  refs: { sections: ["notifications", "privacy", "regional", "language"] },
164
- // Settings-page chrome (Settings Hub → Preferences): label-left / value-right rows.
165
- defaultChromeMode: { display: DisplayChromeMode.SETTINGS_ROW, summary: DisplayChromeMode.INLINE, edit: EditChromeMode.SETTINGS_ROW },
166
- display: () => (_jsxs(DisplayLayout, { children: [_jsx(Section, { name: "notifications", appearance: SectionMode.CARD, children: _jsxs(ObjectScope, { name: "notifications", children: [_jsx(DisplayField, { name: "email" }), _jsx(DisplayField, { name: "push" }), _jsx(DisplayField, { name: "sms" }), _jsx(DisplayField, { name: "inApp" })] }) }), _jsx(Section, { name: "privacy", appearance: SectionMode.CARD, children: _jsxs(ObjectScope, { name: "privacy", children: [_jsx(DisplayField, { name: "dataProcessingConsent" }), _jsx(DisplayField, { name: "privacyLevel" })] }) }), _jsx(Section, { name: "regional", appearance: SectionMode.CARD, children: _jsxs(ObjectScope, { name: "regional", children: [_jsx(DisplayField, { name: "timezone" }), _jsx(DisplayField, { name: "dateFormat" }), _jsx(DisplayField, { name: "timeFormat" }), _jsx(DisplayField, { name: "locale" })] }) }), _jsx(Section, { name: "language", appearance: SectionMode.CARD, children: _jsxs(ObjectScope, { name: "languagePreferences", children: [_jsx(DisplayField, { name: "primaryLanguage" }), _jsx(DisplayField, { name: "fallbackLanguages" }), _jsx(DisplayField, { name: "autoDetect" }), _jsx(DisplayField, { name: "useOrganizationDefault" })] }) })] })),
167
- summary: () => (_jsxs(SummaryLayout, { flow: SummaryFlow.ROW, children: [_jsx(ObjectScope, { name: "ui", children: _jsx(DisplayField, { name: "theme" }) }), _jsxs(ObjectScope, { name: "regional", children: [_jsx(DisplayField, { name: "timezone" }), _jsx(DisplayField, { name: "locale" })] }), _jsx(ObjectScope, { name: "languagePreferences", children: _jsx(DisplayField, { name: "primaryLanguage" }) })] })),
168
- edit: () => (_jsxs(FormLayout, { children: [_jsx(Section, { name: "notifications", appearance: SectionMode.CARD, children: _jsxs(ObjectScope, { name: "notifications", children: [_jsx(FormField, { name: "email" }), _jsx(FormField, { name: "push" }), _jsx(FormField, { name: "sms" }), _jsx(FormField, { name: "inApp" })] }) }), _jsx(Section, { name: "privacy", appearance: SectionMode.CARD, children: _jsxs(ObjectScope, { name: "privacy", children: [_jsx(FormField, { name: "dataProcessingConsent" }), _jsx(FormField, { name: "privacyLevel" })] }) }), _jsx(Section, { name: "regional", appearance: SectionMode.CARD, children: _jsxs(ObjectScope, { name: "regional", children: [_jsx(FormField, { name: "timezone" }), _jsx(FormField, { name: "dateFormat" }), _jsx(FormField, { name: "timeFormat" }), _jsx(FormField, { name: "locale" })] }) }), _jsx(Section, { name: "language", appearance: SectionMode.CARD, children: _jsxs(ObjectScope, { name: "languagePreferences", children: [_jsx(FormField, { name: "primaryLanguage" }), _jsx(FormField, { name: "fallbackLanguages" }), _jsx(FormField, { name: "autoDetect" }), _jsx(FormField, { name: "useOrganizationDefault" })] }) })] })),
196
+ // Settings-page chrome (Settings Hub → Preferences): label-left / value-right rows on read and
197
+ // edit, bare values on a card (see the summary template for which values it keeps and why).
198
+ defaultChromeMode: { display: DisplayChromeMode.SETTINGS_ROW, summary: DisplayChromeMode.HIDDEN, edit: EditChromeMode.SETTINGS_ROW },
199
+ // A person’s own preferences — the canonical settings record. A settings pane is a list of decisions an operator came to TAKE, so its
200
+ // writable fields are offered in place rather than behind a whole-pane edit mode. The set is
201
+ // DERIVED (not primary key, not excludeFromUpdate, not hidden, not opted out), so a field
202
+ // added to this schema tomorrow is covered without anyone remembering to decorate it.
203
+ defaultInlineEdit: ResourceLayoutInlineEditDefault.WRITABLE_FIELDS,
204
+ // And its empty rows say WHICH emptiness they are — "None yet" for a list with no members,
205
+ // "Not available" for a computed value, "No value" for a field awaiting input — instead of one
206
+ // em dash standing for all three. The surface policy's dash is right where a reader is scanning;
207
+ // on a settings row, which is read one at a time to decide something, it is an answer that
208
+ // refuses to answer.
209
+ defaultEmptyValue: 'placeholder',
210
+ // Every card keeps its heading and drops its description, on read AND on edit. The four headings
211
+ // name their contents plainly (Notifications, Privacy, Regional, Language); the descriptions
212
+ // under them ("Choose how you receive notifications") were prompts restating the heading, and
213
+ // this pane is edited in place, so the read view is where they were read on every visit.
214
+ display: () => (_jsxs(DisplayLayout, { children: [_jsx(Section, { name: "notifications", appearance: SectionMode.CARD, hideDescription: true, children: _jsxs(ObjectScope, { name: "notifications", children: [_jsx(DisplayField, { name: "email" }), _jsx(DisplayField, { name: "inApp" })] }) }), _jsx(Section, { name: "privacy", appearance: SectionMode.CARD, hideDescription: true, children: _jsxs(ObjectScope, { name: "privacy", children: [_jsx(DisplayField, { name: "consentedPurposes" }), _jsx(DisplayField, { name: "consentDecidedAt" })] }) }), _jsx(Section, { name: "regional", appearance: SectionMode.CARD, hideDescription: true, children: _jsxs(ObjectScope, { name: "regional", children: [_jsx(DisplayField, { name: "timezone" }), _jsx(DisplayField, { name: "dateFormat" }), _jsx(DisplayField, { name: "timeFormat" }), _jsx(DisplayField, { name: "locale" })] }) }), _jsx(Section, { name: "language", appearance: SectionMode.CARD, hideDescription: true, children: _jsxs(ObjectScope, { name: "languagePreferences", children: [_jsx(DisplayField, { name: "primaryLanguage" }), _jsx(DisplayField, { name: "fallbackLanguages" }), _jsx(DisplayField, { name: "useOrganizationDefault" })] }) })] })),
215
+ // A card carries only values that read unambiguously bare: the time zone ("UTC") and the
216
+ // interface language ("English"). The theme ("System") and the formatting locale were dropped
217
+ // rather than labelled — a bare "System" names nothing, and the locale usually reads as the SAME
218
+ // word as the language beside it ("English · English"). The locale stays on the read pane; the theme
219
+ // is shown and chosen on the Appearance panel that owns it.
220
+ summary: () => (_jsxs(SummaryLayout, { flow: SummaryFlow.ROW, children: [_jsx(ObjectScope, { name: "regional", children: _jsx(DisplayField, { name: "timezone" }) }), _jsx(ObjectScope, { name: "languagePreferences", children: _jsx(DisplayField, { name: "primaryLanguage" }) })] })),
221
+ edit: () => (_jsxs(FormLayout, { children: [_jsx(Section, { name: "notifications", appearance: SectionMode.CARD, hideDescription: true, children: _jsxs(ObjectScope, { name: "notifications", children: [_jsx(FormField, { name: "email" }), _jsx(FormField, { name: "inApp" })] }) }), _jsx(Section, { name: "privacy", appearance: SectionMode.CARD, hideDescription: true, children: _jsx(ObjectScope, { name: "privacy", children: _jsx(FormField, { name: "consentedPurposes" }) }) }), _jsx(Section, { name: "regional", appearance: SectionMode.CARD, hideDescription: true, children: _jsxs(ObjectScope, { name: "regional", children: [_jsx(FormField, { name: "timezone" }), _jsx(FormField, { name: "dateFormat" }), _jsx(FormField, { name: "timeFormat" }), _jsx(FormField, { name: "locale" })] }) }), _jsx(Section, { name: "language", appearance: SectionMode.CARD, hideDescription: true, children: _jsxs(ObjectScope, { name: "languagePreferences", children: [_jsx(FormField, { name: "primaryLanguage" }), _jsx(FormField, { name: "fallbackLanguages" }), _jsx(FormField, { name: "useOrganizationDefault" })] }) })] })),
169
222
  },
170
223
  views: [
171
224
  [Op.READ, notAddressable()],
@@ -207,7 +260,8 @@ export function buildIdentityAdminPresets(main) {
207
260
  })),
208
261
  [R.USER_PROFILES]: resourceUIBehavior(userProfilesFactory, UserProfileSchema, ({ schema, schemaShape, opsVariantResolver }) => ({
209
262
  icon: StandardIconReference.PROFILE,
210
- getFrontendResourceLabel: ({ currentObject }) => `${currentObject.firstName} ${currentObject.lastName}`.trim(),
263
+ // Same name as the self variant: the shared summary's title IS this label, so the two must agree.
264
+ getFrontendResourceLabel: ({ currentObject }) => resolveUserProfileName(currentObject),
211
265
  layout: main[R.USER_SELF_PROFILES]?.layout,
212
266
  views: [
213
267
  [opsVariantResolver(Op.READ, "admin"), notAddressable()],