@umbraco-cms/backoffice 16.0.0 → 16.1.0-rc

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 (568) hide show
  1. package/dist-cms/apps/app/app-auth.controller.js +1 -0
  2. package/dist-cms/apps/backoffice/backoffice.element.d.ts +2 -0
  3. package/dist-cms/apps/backoffice/backoffice.element.js +12 -10
  4. package/dist-cms/assets/lang/da.js +21 -0
  5. package/dist-cms/assets/lang/da.ts +22 -0
  6. package/dist-cms/assets/lang/de.js +24 -0
  7. package/dist-cms/assets/lang/de.ts +26 -0
  8. package/dist-cms/assets/lang/en.js +11 -0
  9. package/dist-cms/assets/lang/en.ts +12 -0
  10. package/dist-cms/assets/lang/pt-br.js +2 -256
  11. package/dist-cms/assets/lang/pt-br.ts +2 -258
  12. package/dist-cms/assets/lang/pt.js +2605 -1
  13. package/dist-cms/assets/lang/pt.ts +2822 -1
  14. package/dist-cms/custom-elements.json +201 -98
  15. package/dist-cms/external/rxjs/index.d.ts +1 -1
  16. package/dist-cms/external/rxjs/index.js +3 -3
  17. package/dist-cms/external/tiptap/extensions/tiptap-html-global-attributes.extension.d.ts +5 -0
  18. package/dist-cms/external/tiptap/extensions/tiptap-span.extension.d.ts +2 -0
  19. package/dist-cms/external/tiptap/index.js +19 -19
  20. package/dist-cms/external/uui/index.js +332 -318
  21. package/dist-cms/libs/extension-api/controller/server-extension-registrator.controller.js +1 -1
  22. package/dist-cms/libs/extension-api/types/manifest-base.interface.d.ts +1 -1
  23. package/dist-cms/packages/block/block/context/block-entry.context.d.ts +3 -0
  24. package/dist-cms/packages/block/block/context/block-entry.context.js +9 -0
  25. package/dist-cms/packages/block/block-grid/components/block-grid-entry/block-grid-entry.element.d.ts +1 -0
  26. package/dist-cms/packages/block/block-grid/components/block-grid-entry/block-grid-entry.element.js +14 -6
  27. package/dist-cms/packages/block/block-list/components/block-list-entry/block-list-entry.element.d.ts +1 -0
  28. package/dist-cms/packages/block/block-list/components/block-list-entry/block-list-entry.element.js +16 -5
  29. package/dist-cms/packages/block/block-rte/components/block-rte-entry/block-rte-entry.element.d.ts +1 -0
  30. package/dist-cms/packages/block/block-rte/components/block-rte-entry/block-rte-entry.element.js +12 -1
  31. package/dist-cms/packages/block/modals/manifest-viewer/manifest-viewer-modal.element.js +6 -0
  32. package/dist-cms/packages/content/content/workspace/views/edit/content-editor.element.js +12 -10
  33. package/dist-cms/packages/content/content-type/modals/composition-picker/composition-picker-modal.element.js +6 -5
  34. package/dist-cms/packages/content/content-type/repository/structure/content-type-structure-server-data-source-base.d.ts +1 -1
  35. package/dist-cms/packages/content/content-type/structure/content-type-structure-manager.class.d.ts +1 -1
  36. package/dist-cms/packages/core/auth/auth-flow.d.ts +2 -2
  37. package/dist-cms/packages/core/auth/auth-flow.js +7 -9
  38. package/dist-cms/packages/core/auth/auth.context.d.ts +9 -7
  39. package/dist-cms/packages/core/auth/auth.context.js +14 -7
  40. package/dist-cms/packages/core/backend-api/sdk.gen.d.ts +406 -406
  41. package/dist-cms/packages/core/backend-api/sdk.gen.js +57 -57
  42. package/dist-cms/packages/core/backend-api/types.gen.d.ts +6 -2
  43. package/dist-cms/packages/core/collection/action/create/collection-create-action.element.d.ts +1 -2
  44. package/dist-cms/packages/core/collection/action/create/collection-create-action.element.js +17 -13
  45. package/dist-cms/packages/core/collection/components/pagination/collection-pagination.element.js +4 -0
  46. package/dist-cms/packages/core/components/dropdown/dropdown.element.d.ts +2 -3
  47. package/dist-cms/packages/core/components/dropdown/dropdown.element.js +30 -18
  48. package/dist-cms/packages/core/components/entity-actions-bundle/entity-actions-bundle.element.d.ts +1 -1
  49. package/dist-cms/packages/core/components/entity-actions-bundle/entity-actions-bundle.element.js +33 -23
  50. package/dist-cms/packages/core/components/input-toggle/input-toggle.element.d.ts +0 -1
  51. package/dist-cms/packages/core/components/input-toggle/input-toggle.element.js +1 -8
  52. package/dist-cms/packages/core/components/table/table.element.js +14 -12
  53. package/dist-cms/packages/core/entity/constants.d.ts +2 -0
  54. package/dist-cms/packages/core/entity/constants.js +2 -0
  55. package/dist-cms/packages/core/entity/entity-type/constants.d.ts +1 -0
  56. package/dist-cms/packages/core/entity/entity-type/constants.js +1 -0
  57. package/dist-cms/packages/core/entity/entity-type/entity-type.condition.d.ts +9 -0
  58. package/dist-cms/packages/core/entity/entity-type/entity-type.condition.js +23 -0
  59. package/dist-cms/packages/core/entity/entity-type/manifests.js +9 -0
  60. package/dist-cms/packages/core/entity/entity-type/types.d.ts +11 -0
  61. package/dist-cms/packages/core/entity/entity-type/types.js +1 -0
  62. package/dist-cms/packages/core/entity/entity-unique/constants.d.ts +1 -0
  63. package/dist-cms/packages/core/entity/entity-unique/constants.js +1 -0
  64. package/dist-cms/packages/core/entity/entity-unique/entity-unique.condition.d.ts +9 -0
  65. package/dist-cms/packages/core/entity/entity-unique/entity-unique.condition.js +23 -0
  66. package/dist-cms/packages/core/entity/entity-unique/manifests.d.ts +1 -0
  67. package/dist-cms/packages/core/entity/entity-unique/manifests.js +9 -0
  68. package/dist-cms/packages/core/entity/entity-unique/types.d.ts +12 -0
  69. package/dist-cms/packages/core/entity/entity-unique/types.js +1 -0
  70. package/dist-cms/packages/core/entity/manifests.d.ts +1 -0
  71. package/dist-cms/packages/core/entity/manifests.js +3 -0
  72. package/dist-cms/packages/core/entity/types.d.ts +3 -1
  73. package/dist-cms/packages/core/entity-action/global-components/entity-actions-dropdown/entity-actions-dropdown.element.d.ts +15 -0
  74. package/dist-cms/packages/core/entity-action/global-components/entity-actions-dropdown/entity-actions-dropdown.element.js +87 -0
  75. package/dist-cms/packages/core/entity-action/global-components/index.d.ts +1 -0
  76. package/dist-cms/packages/core/entity-action/global-components/index.js +1 -0
  77. package/dist-cms/packages/core/entity-item/item-data-api-get-request-controller/item-data-api-get-request.controller.d.ts +1 -1
  78. package/dist-cms/packages/core/event/closed.event.d.ts +4 -0
  79. package/dist-cms/packages/core/event/closed.event.js +7 -0
  80. package/dist-cms/packages/core/event/index.d.ts +2 -0
  81. package/dist-cms/packages/core/event/index.js +2 -0
  82. package/dist-cms/packages/core/event/opened.event.d.ts +4 -0
  83. package/dist-cms/packages/core/event/opened.event.js +7 -0
  84. package/dist-cms/packages/core/extension-registry/components/extension-slot/extension-slot.element.d.ts +3 -3
  85. package/dist-cms/packages/core/extension-registry/components/extension-slot/extension-slot.element.js +9 -9
  86. package/dist-cms/packages/core/http-client/index.d.ts +1 -0
  87. package/dist-cms/packages/core/icon-registry/icon-dictionary.json +1 -2
  88. package/dist-cms/packages/core/icon-registry/icons/icon-next.d.ts +1 -1
  89. package/dist-cms/packages/core/icon-registry/icons/icon-next.js +1 -1
  90. package/dist-cms/packages/core/icon-registry/icons.d.ts +2 -2
  91. package/dist-cms/packages/core/icon-registry/icons.js +3098 -2394
  92. package/dist-cms/packages/core/manifests.js +2 -0
  93. package/dist-cms/packages/core/menu/section-sidebar-menu/section-sidebar-menu.element.js +5 -1
  94. package/dist-cms/packages/core/object-type/object-type.repository.d.ts +1 -1
  95. package/dist-cms/packages/core/openapi-ts.config.js +3 -1
  96. package/dist-cms/packages/core/package.json +2 -2
  97. package/dist-cms/packages/core/property/components/unsupported-property/utils.js +1 -1
  98. package/dist-cms/packages/core/recycle-bin/recycle-bin-repository-base.d.ts +2 -4
  99. package/dist-cms/packages/core/recycle-bin/recycle-bin-repository-base.js +2 -13
  100. package/dist-cms/packages/core/repository/detail/detail-data-source.interface.d.ts +2 -1
  101. package/dist-cms/packages/core/repository/detail/detail-repository-base.d.ts +6 -5
  102. package/dist-cms/packages/core/repository/detail/detail-repository-base.js +2 -2
  103. package/dist-cms/packages/core/repository/detail/read/read-detail-repository.interface.d.ts +1 -1
  104. package/dist-cms/packages/core/repository/item/item-repository-base.d.ts +3 -3
  105. package/dist-cms/packages/core/repository/item/item-repository-base.js +5 -8
  106. package/dist-cms/packages/core/repository/item/item-repository.interface.d.ts +2 -6
  107. package/dist-cms/packages/core/repository/item/item-server-data-source-base.d.ts +1 -1
  108. package/dist-cms/packages/core/repository/repository-items.manager.js +2 -0
  109. package/dist-cms/packages/core/repository/types.d.ts +7 -2
  110. package/dist-cms/packages/core/resources/api-interceptor.controller.d.ts +7 -0
  111. package/dist-cms/packages/core/resources/api-interceptor.controller.js +180 -54
  112. package/dist-cms/packages/core/resources/resource.controller.d.ts +2 -2
  113. package/dist-cms/packages/core/resources/resource.controller.js +11 -6
  114. package/dist-cms/packages/core/resources/try-execute/try-execute.controller.js +27 -13
  115. package/dist-cms/packages/core/resources/types.d.ts +2 -2
  116. package/dist-cms/packages/core/router/route/forbidden/route-forbidden.element.d.ts +17 -0
  117. package/dist-cms/packages/core/router/route/forbidden/route-forbidden.element.js +59 -0
  118. package/dist-cms/packages/core/router/route/index.d.ts +1 -0
  119. package/dist-cms/packages/core/router/route/index.js +1 -0
  120. package/dist-cms/packages/core/section/conditions/constants.d.ts +2 -1
  121. package/dist-cms/packages/core/section/conditions/constants.js +2 -1
  122. package/dist-cms/packages/core/section/conditions/manifests.js +3 -17
  123. package/dist-cms/packages/core/section/conditions/section-alias/constants.d.ts +1 -0
  124. package/dist-cms/packages/core/section/conditions/section-alias/constants.js +1 -0
  125. package/dist-cms/packages/core/section/conditions/section-alias/manifests.d.ts +1 -0
  126. package/dist-cms/packages/core/section/conditions/section-alias/manifests.js +10 -0
  127. package/dist-cms/packages/core/section/conditions/{section-alias.condition.d.ts → section-alias/section-alias.condition.d.ts} +2 -2
  128. package/dist-cms/packages/core/section/conditions/{section-alias.condition.js → section-alias/section-alias.condition.js} +2 -2
  129. package/dist-cms/packages/core/section/conditions/section-alias/types.d.ts +20 -0
  130. package/dist-cms/packages/core/section/conditions/section-alias/types.js +1 -0
  131. package/dist-cms/packages/core/section/conditions/section-user-permission/constants.d.ts +1 -0
  132. package/dist-cms/packages/core/section/conditions/section-user-permission/constants.js +1 -0
  133. package/dist-cms/packages/core/section/conditions/section-user-permission/manifests.d.ts +1 -0
  134. package/dist-cms/packages/core/section/conditions/section-user-permission/manifests.js +10 -0
  135. package/dist-cms/packages/core/section/conditions/{section-user-permission.condition.d.ts → section-user-permission/section-user-permission.condition.d.ts} +1 -1
  136. package/dist-cms/packages/core/section/conditions/section-user-permission/types.d.ts +16 -0
  137. package/dist-cms/packages/core/section/conditions/section-user-permission/types.js +1 -0
  138. package/dist-cms/packages/core/section/conditions/types.d.ts +2 -30
  139. package/dist-cms/packages/core/server-file-system/rename/rename-server-file-repository-base.d.ts +1 -1
  140. package/dist-cms/packages/core/temporary-file/config/config.repository.d.ts +2 -0
  141. package/dist-cms/packages/core/temporary-file/config/config.repository.js +2 -0
  142. package/dist-cms/packages/core/tree/components/index.d.ts +1 -0
  143. package/dist-cms/packages/core/tree/components/index.js +1 -0
  144. package/dist-cms/packages/core/tree/components/tree-load-more-button.element.d.ts +10 -0
  145. package/dist-cms/packages/core/tree/components/tree-load-more-button.element.js +36 -0
  146. package/dist-cms/packages/core/tree/data/tree-repository-base.d.ts +8 -12
  147. package/dist-cms/packages/core/tree/data/tree-repository-base.js +10 -16
  148. package/dist-cms/packages/core/tree/data/tree-repository.interface.d.ts +5 -21
  149. package/dist-cms/packages/core/tree/data/tree-server-data-source-base.d.ts +3 -3
  150. package/dist-cms/packages/core/tree/default/default-tree.element.js +1 -1
  151. package/dist-cms/packages/core/tree/folder/index.d.ts +2 -1
  152. package/dist-cms/packages/core/tree/folder/index.js +2 -1
  153. package/dist-cms/packages/core/tree/folder/workspace/folder-workspace-editor.element.d.ts +10 -0
  154. package/dist-cms/packages/core/tree/folder/workspace/folder-workspace-editor.element.js +31 -0
  155. package/dist-cms/packages/core/tree/folder/workspace/index.d.ts +2 -0
  156. package/dist-cms/packages/core/tree/folder/workspace/index.js +2 -0
  157. package/dist-cms/packages/core/tree/index.d.ts +1 -0
  158. package/dist-cms/packages/core/tree/index.js +1 -0
  159. package/dist-cms/packages/core/tree/tree-item/tree-item-base/tree-item-element-base.d.ts +2 -1
  160. package/dist-cms/packages/core/tree/tree-item/tree-item-base/tree-item-element-base.js +7 -4
  161. package/dist-cms/packages/core/workspace/components/workspace-action/default/workspace-action-default-kind.element.d.ts +1 -0
  162. package/dist-cms/packages/core/workspace/components/workspace-action/default/workspace-action-default-kind.element.js +24 -6
  163. package/dist-cms/packages/core/workspace/components/workspace-action-menu/workspace-action-menu.element.js +6 -1
  164. package/dist-cms/packages/core/workspace/components/workspace-breadcrumb/workspace-menu-breadcrumb/workspace-menu-breadcrumb.element.d.ts +1 -1
  165. package/dist-cms/packages/core/workspace/components/workspace-breadcrumb/workspace-menu-breadcrumb/workspace-menu-breadcrumb.element.js +5 -4
  166. package/dist-cms/packages/core/workspace/components/workspace-breadcrumb/workspace-variant-menu-breadcrumb/workspace-variant-menu-breadcrumb.element.d.ts +1 -1
  167. package/dist-cms/packages/core/workspace/components/workspace-breadcrumb/workspace-variant-menu-breadcrumb/workspace-variant-menu-breadcrumb.element.js +20 -11
  168. package/dist-cms/packages/core/workspace/components/workspace-editor/workspace-editor.element.js +6 -4
  169. package/dist-cms/packages/core/workspace/components/workspace-entity-action-menu/workspace-entity-action-menu.element.d.ts +0 -3
  170. package/dist-cms/packages/core/workspace/components/workspace-entity-action-menu/workspace-entity-action-menu.element.js +14 -48
  171. package/dist-cms/packages/core/workspace/components/workspace-header-name-editable/workspace-header-name-editable.element.d.ts +1 -0
  172. package/dist-cms/packages/core/workspace/components/workspace-header-name-editable/workspace-header-name-editable.element.js +11 -1
  173. package/dist-cms/packages/core/workspace/components/workspace-split-view/workspace-split-view-variant-selector.element.js +4 -0
  174. package/dist-cms/packages/core/workspace/components/workspace-split-view/workspace-split-view.element.js +7 -0
  175. package/dist-cms/packages/core/workspace/controllers/workspace-split-view-manager.controller.d.ts +1 -0
  176. package/dist-cms/packages/core/workspace/controllers/workspace-split-view-manager.controller.js +1 -0
  177. package/dist-cms/packages/core/workspace/entity-detail/entity-detail-workspace-base.d.ts +1 -0
  178. package/dist-cms/packages/core/workspace/entity-detail/entity-detail-workspace-base.js +16 -4
  179. package/dist-cms/packages/core/workspace/entity-detail/entity-named-detail-workspace-base.d.ts +5 -1
  180. package/dist-cms/packages/core/workspace/entity-detail/entity-named-detail-workspace-base.js +5 -2
  181. package/dist-cms/packages/core/workspace/entity-detail/global-components/entity-detail-forbidden.element.d.ts +11 -0
  182. package/dist-cms/packages/core/workspace/entity-detail/global-components/entity-detail-forbidden.element.js +55 -0
  183. package/dist-cms/packages/core/workspace/entity-detail/global-components/entity-detail-workspace-editor.element.d.ts +1 -0
  184. package/dist-cms/packages/core/workspace/entity-detail/global-components/entity-detail-workspace-editor.element.js +20 -3
  185. package/dist-cms/packages/core/workspace/entity-detail/global-components/index.d.ts +1 -2
  186. package/dist-cms/packages/core/workspace/entity-detail/global-components/index.js +1 -2
  187. package/dist-cms/packages/core/workspace/entity-detail/types.d.ts +2 -1
  188. package/dist-cms/packages/core/workspace/namable/index.d.ts +1 -0
  189. package/dist-cms/packages/core/workspace/namable/index.js +1 -0
  190. package/dist-cms/packages/core/workspace/namable/namable-workspace-context.interface.d.ts +2 -0
  191. package/dist-cms/packages/core/workspace/namable/name-write-guard.manager.d.ts +6 -0
  192. package/dist-cms/packages/core/workspace/namable/name-write-guard.manager.js +15 -0
  193. package/dist-cms/packages/data-type/collection/repository/data-type-collection.repository.d.ts +1 -1
  194. package/dist-cms/packages/data-type/collection/repository/data-type-collection.server.data-source.d.ts +1 -1
  195. package/dist-cms/packages/data-type/entity-actions/duplicate/repository/data-type-duplicate.repository.d.ts +1 -1
  196. package/dist-cms/packages/data-type/entity-actions/move-to/repository/data-type-move.repository.d.ts +1 -1
  197. package/dist-cms/packages/data-type/repository/detail/data-type-detail.server.data-source.d.ts +3 -3
  198. package/dist-cms/packages/data-type/repository/item/data-type-item.server.data-source.d.ts +1 -1
  199. package/dist-cms/packages/data-type/search/data-type-search.repository.d.ts +1 -1
  200. package/dist-cms/packages/data-type/search/data-type-search.server.data-source.d.ts +1 -1
  201. package/dist-cms/packages/data-type/search/data-type.search-provider.d.ts +1 -1
  202. package/dist-cms/packages/data-type/tree/folder/repository/data-type-folder.server.data-source.d.ts +3 -3
  203. package/dist-cms/packages/data-type/tree/folder/workspace/data-type-folder-editor.element.d.ts +1 -3
  204. package/dist-cms/packages/data-type/tree/folder/workspace/data-type-folder-editor.element.js +2 -7
  205. package/dist-cms/packages/data-type/tree/tree-item-children/collection/repository/data-type-tree-item-children-collection.repository.d.ts +3 -3
  206. package/dist-cms/packages/dictionary/collection/repository/dictionary-collection.server.data-source.d.ts +1 -1
  207. package/dist-cms/packages/dictionary/dashboard/manifests.js +2 -1
  208. package/dist-cms/packages/dictionary/entity-action/move-to/repository/dictionary-move.repository.d.ts +1 -1
  209. package/dist-cms/packages/dictionary/repository/detail/dictionary-detail.server.data-source.d.ts +3 -3
  210. package/dist-cms/packages/dictionary/repository/import/dictionary-import.repository.d.ts +2 -2
  211. package/dist-cms/packages/dictionary/repository/item/dictionary-item.server.data-source.d.ts +1 -1
  212. package/dist-cms/packages/dictionary/search/dictionary-search.repository.d.ts +1 -1
  213. package/dist-cms/packages/dictionary/search/dictionary-search.server.data-source.d.ts +1 -1
  214. package/dist-cms/packages/dictionary/search/dictionary.search-provider.d.ts +1 -1
  215. package/dist-cms/packages/documents/document-blueprints/entity-actions/move-to/repository/document-blueprint-move.repository.d.ts +1 -1
  216. package/dist-cms/packages/documents/document-blueprints/repository/item/document-blueprint-item.repository.d.ts +1 -1
  217. package/dist-cms/packages/documents/document-blueprints/repository/item/document-blueprint-item.server.data-source.d.ts +2 -2
  218. package/dist-cms/packages/documents/document-blueprints/tree/folder/repository/document-blueprint-folder.server.data-source.d.ts +3 -3
  219. package/dist-cms/packages/documents/document-blueprints/tree/folder/workspace/document-blueprint-folder-editor.element.d.ts +1 -3
  220. package/dist-cms/packages/documents/document-blueprints/tree/folder/workspace/document-blueprint-folder-editor.element.js +2 -7
  221. package/dist-cms/packages/documents/document-blueprints/workspace/document-blueprint-workspace-editor.element.js +27 -13
  222. package/dist-cms/packages/documents/document-redirect-management/dashboard-redirect-management.element.js +7 -1
  223. package/dist-cms/packages/documents/document-redirect-management/manifests.js +2 -1
  224. package/dist-cms/packages/documents/document-types/entity-actions/duplicate/repository/document-type-duplicate.repository.d.ts +1 -1
  225. package/dist-cms/packages/documents/document-types/entity-actions/import/repository/document-type-import.repository.d.ts +1 -1
  226. package/dist-cms/packages/documents/document-types/entity-actions/move-to/repository/document-type-move.repository.d.ts +1 -1
  227. package/dist-cms/packages/documents/document-types/repository/composition/document-type-composition.repository.d.ts +2 -2
  228. package/dist-cms/packages/documents/document-types/repository/composition/document-type-composition.server.data-source.d.ts +2 -2
  229. package/dist-cms/packages/documents/document-types/repository/detail/document-type-detail.server.data-source.d.ts +3 -3
  230. package/dist-cms/packages/documents/document-types/repository/detail/index.d.ts +1 -0
  231. package/dist-cms/packages/documents/document-types/repository/detail/index.js +1 -0
  232. package/dist-cms/packages/documents/document-types/repository/item/document-type-item.server.data-source.d.ts +1 -1
  233. package/dist-cms/packages/documents/document-types/search/document-type-search.repository.d.ts +1 -1
  234. package/dist-cms/packages/documents/document-types/search/document-type-search.server.data-source.d.ts +1 -1
  235. package/dist-cms/packages/documents/document-types/search/document-type.search-provider.d.ts +1 -1
  236. package/dist-cms/packages/documents/document-types/tree/folder/repository/document-type-folder.server.data-source.d.ts +3 -3
  237. package/dist-cms/packages/documents/document-types/tree/folder/workspace/document-type-folder-editor.element.d.ts +1 -3
  238. package/dist-cms/packages/documents/document-types/tree/folder/workspace/document-type-folder-editor.element.js +2 -7
  239. package/dist-cms/packages/documents/document-types/tree/tree-item-children/collection/repository/document-type-tree-item-children-collection.repository.d.ts +3 -3
  240. package/dist-cms/packages/documents/documents/audit-log/info-app/document-history-workspace-info-app.element.js +4 -0
  241. package/dist-cms/packages/documents/documents/audit-log/repository/document-audit-log.repository.d.ts +1 -1
  242. package/dist-cms/packages/documents/documents/audit-log/repository/document-audit-log.server.data-source.d.ts +1 -1
  243. package/dist-cms/packages/documents/documents/collection/repository/document-collection.repository.d.ts +1 -1
  244. package/dist-cms/packages/documents/documents/collection/repository/document-collection.server.data-source.d.ts +1 -1
  245. package/dist-cms/packages/documents/documents/collection/views/table/column-layouts/document-table-column-name.element.js +5 -1
  246. package/dist-cms/packages/documents/documents/entity-actions/create-blueprint/modal/create-blueprint-modal.element.js +13 -12
  247. package/dist-cms/packages/documents/documents/entity-actions/create-blueprint/repository/document-create-blueprint.repository.d.ts +1 -1
  248. package/dist-cms/packages/documents/documents/entity-actions/duplicate/repository/document-duplicate.repository.d.ts +1 -1
  249. package/dist-cms/packages/documents/documents/entity-actions/move-to/repository/document-move.repository.d.ts +1 -1
  250. package/dist-cms/packages/documents/documents/entity-actions/notifications/repository/document-notifications.repository.d.ts +2 -2
  251. package/dist-cms/packages/documents/documents/item/repository/document-item.server.data-source.d.ts +1 -1
  252. package/dist-cms/packages/documents/documents/publishing/repository/document-publishing.repository.d.ts +1 -1
  253. package/dist-cms/packages/documents/documents/publishing/repository/document-publishing.server.data-source.d.ts +1 -1
  254. package/dist-cms/packages/documents/documents/recycle-bin/repository/document-recycle-bin.server.data-source.d.ts +1 -1
  255. package/dist-cms/packages/documents/documents/repository/detail/document-detail.server.data-source.d.ts +7 -17
  256. package/dist-cms/packages/documents/documents/repository/detail/document-detail.server.data-source.js +23 -38
  257. package/dist-cms/packages/documents/documents/search/document-search.server.data-source.d.ts +1 -1
  258. package/dist-cms/packages/documents/documents/tree/tree-item/document-tree-item.element.js +2 -3
  259. package/dist-cms/packages/documents/documents/url/document-urls-data-resolver.js +5 -7
  260. package/dist-cms/packages/documents/documents/url/repository/document-url.server.data-source.d.ts +1 -1
  261. package/dist-cms/packages/documents/documents/workspace/actions/save.action.js +16 -7
  262. package/dist-cms/packages/documents/documents/workspace/document-workspace-editor.element.js +13 -4
  263. package/dist-cms/packages/documents/documents/workspace/document-workspace-split-view.element.d.ts +2 -1
  264. package/dist-cms/packages/documents/documents/workspace/document-workspace-split-view.element.js +14 -6
  265. package/dist-cms/packages/documents/documents/workspace/document-workspace.context.d.ts +2 -1
  266. package/dist-cms/packages/documents/documents/workspace/document-workspace.context.js +28 -35
  267. package/dist-cms/packages/documents/section/manifests.js +2 -2
  268. package/dist-cms/packages/embedded-media/repository/oembed.repository.d.ts +1 -1
  269. package/dist-cms/packages/health-check/manifests.js +2 -1
  270. package/dist-cms/packages/language/app-language-select/manifests.js +2 -1
  271. package/dist-cms/packages/language/collection/repository/language-collection.server.data-source.d.ts +1 -1
  272. package/dist-cms/packages/language/repository/detail/language-detail.server.data-source.d.ts +3 -3
  273. package/dist-cms/packages/language/repository/item/language-item.server.data-source.d.ts +1 -1
  274. package/dist-cms/packages/language/workspace/language/language-workspace-editor.element.d.ts +0 -1
  275. package/dist-cms/packages/language/workspace/language/language-workspace-editor.element.js +1 -3
  276. package/dist-cms/packages/log-viewer/workspace/views/overview/components/log-viewer-message-templates-overview.element.js +4 -0
  277. package/dist-cms/packages/log-viewer/workspace/views/overview/components/log-viewer-saved-searches-overview.element.js +4 -0
  278. package/dist-cms/packages/log-viewer/workspace/views/search/components/log-viewer-messages-list.element.js +7 -1
  279. package/dist-cms/packages/media/imaging/components/imaging-thumbnail.element.js +1 -6
  280. package/dist-cms/packages/media/imaging/imaging.server.data.d.ts +1 -1
  281. package/dist-cms/packages/media/media/audit-log/info-app/media-history-workspace-info-app.element.js +4 -0
  282. package/dist-cms/packages/media/media/audit-log/repository/media-audit-log.repository.d.ts +1 -1
  283. package/dist-cms/packages/media/media/audit-log/repository/media-audit-log.server.data-source.d.ts +1 -1
  284. package/dist-cms/packages/media/media/collection/media-collection.context.d.ts +1 -1
  285. package/dist-cms/packages/media/media/collection/media-collection.context.js +1 -1
  286. package/dist-cms/packages/media/media/collection/repository/media-collection.repository.d.ts +1 -1
  287. package/dist-cms/packages/media/media/collection/repository/media-collection.server.data-source.d.ts +1 -1
  288. package/dist-cms/packages/media/media/components/input-image-cropper/image-cropper-field.element.d.ts +1 -1
  289. package/dist-cms/packages/media/media/components/input-image-cropper/image-cropper-field.element.js +66 -42
  290. package/dist-cms/packages/media/media/components/input-image-cropper/image-cropper-focus-setter.element.js +2 -11
  291. package/dist-cms/packages/media/media/components/input-image-cropper/input-image-cropper.element.js +15 -8
  292. package/dist-cms/packages/media/media/components/input-upload-field/file-upload-preview.element.d.ts +18 -0
  293. package/dist-cms/packages/media/media/components/input-upload-field/file-upload-preview.element.js +123 -0
  294. package/dist-cms/packages/media/media/components/input-upload-field/preview/input-upload-field-audio.element.d.ts +2 -2
  295. package/dist-cms/packages/media/media/components/input-upload-field/preview/input-upload-field-audio.element.js +3 -4
  296. package/dist-cms/packages/media/media/components/input-upload-field/preview/input-upload-field-file.element.d.ts +2 -7
  297. package/dist-cms/packages/media/media/components/input-upload-field/preview/input-upload-field-file.element.js +3 -20
  298. package/dist-cms/packages/media/media/components/input-upload-field/preview/input-upload-field-image.element.d.ts +2 -2
  299. package/dist-cms/packages/media/media/components/input-upload-field/preview/input-upload-field-image.element.js +3 -13
  300. package/dist-cms/packages/media/media/components/input-upload-field/preview/input-upload-field-svg.element.d.ts +2 -2
  301. package/dist-cms/packages/media/media/components/input-upload-field/preview/input-upload-field-svg.element.js +3 -14
  302. package/dist-cms/packages/media/media/components/input-upload-field/preview/input-upload-field-video.element.d.ts +2 -2
  303. package/dist-cms/packages/media/media/components/input-upload-field/preview/input-upload-field-video.element.js +4 -7
  304. package/dist-cms/packages/media/media/components/input-upload-field/preview/manifest.js +2 -2
  305. package/dist-cms/packages/media/media/dashboard/manifests.js +2 -1
  306. package/dist-cms/packages/media/media/dropzone/dropzone-media.element.js +1 -0
  307. package/dist-cms/packages/media/media/entity-actions/move-to/repository/media-move.repository.d.ts +1 -1
  308. package/dist-cms/packages/media/media/index.d.ts +4 -1
  309. package/dist-cms/packages/media/media/index.js +4 -1
  310. package/dist-cms/packages/media/media/modals/image-cropper-editor/components/image-cropper-editor-field.element.d.ts +1 -2
  311. package/dist-cms/packages/media/media/modals/image-cropper-editor/components/image-cropper-editor-field.element.js +21 -79
  312. package/dist-cms/packages/media/media/modals/image-cropper-editor/image-cropper-editor-modal.element.d.ts +3 -2
  313. package/dist-cms/packages/media/media/modals/image-cropper-editor/image-cropper-editor-modal.element.js +89 -37
  314. package/dist-cms/packages/media/media/modals/media-picker/media-picker-modal.element.js +4 -5
  315. package/dist-cms/packages/media/media/property-editors/image-cropper/Umbraco.ImageCropper.js +1 -1
  316. package/dist-cms/packages/media/media/property-editors/image-crops/property-editor-ui-image-crops.element.d.ts +1 -3
  317. package/dist-cms/packages/media/media/property-editors/image-crops/property-editor-ui-image-crops.element.js +102 -93
  318. package/dist-cms/packages/media/media/property-editors/upload-field/property-editor-ui-upload-field.element.js +7 -4
  319. package/dist-cms/packages/media/media/recycle-bin/repository/media-recycle-bin.server.data-source.d.ts +1 -1
  320. package/dist-cms/packages/media/media/repository/detail/media-detail.server.data-source.d.ts +8 -14
  321. package/dist-cms/packages/media/media/repository/detail/media-detail.server.data-source.js +24 -21
  322. package/dist-cms/packages/media/media/repository/item/media-item.repository.d.ts +1 -1
  323. package/dist-cms/packages/media/media/repository/item/media-item.server.data-source.d.ts +2 -2
  324. package/dist-cms/packages/media/media/search/global-search/media-global-search.d.ts +1 -1
  325. package/dist-cms/packages/media/media/search/media-search.repository.d.ts +1 -1
  326. package/dist-cms/packages/media/media/search/media-search.server.data-source.d.ts +1 -1
  327. package/dist-cms/packages/media/media/search/media.search-provider.d.ts +1 -1
  328. package/dist-cms/packages/media/media/tree/tree-item/media-tree-item.element.js +2 -3
  329. package/dist-cms/packages/media/media/url/info-app/media-links-workspace-info-app.element.js +2 -2
  330. package/dist-cms/packages/media/media/url/repository/media-url.server.data-source.d.ts +1 -1
  331. package/dist-cms/packages/media/media/workspace/media-workspace-editor.element.js +24 -12
  332. package/dist-cms/packages/media/media/workspace/media-workspace-split-view.element.d.ts +2 -1
  333. package/dist-cms/packages/media/media/workspace/media-workspace-split-view.element.js +17 -4
  334. package/dist-cms/packages/media/media/workspace/media-workspace.context.d.ts +2 -1
  335. package/dist-cms/packages/media/media/workspace/media-workspace.context.js +4 -4
  336. package/dist-cms/packages/media/media-section/manifests.js +2 -2
  337. package/dist-cms/packages/media/media-types/entity-actions/duplicate/repository/media-type-duplicate.repository.d.ts +1 -1
  338. package/dist-cms/packages/media/media-types/entity-actions/export/repository/media-type-export.repository.d.ts +1 -1
  339. package/dist-cms/packages/media/media-types/entity-actions/import/repository/media-type-import.repository.d.ts +1 -1
  340. package/dist-cms/packages/media/media-types/entity-actions/move-to/repository/media-type-move.repository.d.ts +1 -1
  341. package/dist-cms/packages/media/media-types/repository/composition/media-type-composition.repository.d.ts +2 -2
  342. package/dist-cms/packages/media/media-types/repository/composition/media-type-composition.server.data-source.d.ts +2 -2
  343. package/dist-cms/packages/media/media-types/repository/detail/index.d.ts +1 -0
  344. package/dist-cms/packages/media/media-types/repository/detail/index.js +1 -0
  345. package/dist-cms/packages/media/media-types/repository/detail/media-type-detail.repository.js +2 -2
  346. package/dist-cms/packages/media/media-types/repository/detail/media-type-detail.server.data-source.d.ts +12 -12
  347. package/dist-cms/packages/media/media-types/repository/detail/media-type-detail.server.data-source.js +9 -9
  348. package/dist-cms/packages/media/media-types/repository/item/media-type-item.server.data-source.d.ts +1 -1
  349. package/dist-cms/packages/media/media-types/search/media-type-search.repository.d.ts +1 -1
  350. package/dist-cms/packages/media/media-types/search/media-type-search.server.data-source.d.ts +1 -1
  351. package/dist-cms/packages/media/media-types/search/media-type.search-provider.d.ts +1 -1
  352. package/dist-cms/packages/media/media-types/tree/folder/repository/media-type-folder.server.data-source.d.ts +3 -3
  353. package/dist-cms/packages/media/media-types/tree/folder/workspace/media-type-folder-editor.element.d.ts +1 -3
  354. package/dist-cms/packages/media/media-types/tree/folder/workspace/media-type-folder-editor.element.js +2 -7
  355. package/dist-cms/packages/media/media-types/tree/tree-item-children/collection/repository/media-type-tree-item-children-collection.repository.d.ts +3 -3
  356. package/dist-cms/packages/members/member/collection/repository/member-collection.repository.d.ts +1 -1
  357. package/dist-cms/packages/members/member/collection/repository/member-collection.server.data-source.d.ts +1 -1
  358. package/dist-cms/packages/members/member/item/repository/member-item.server.data-source.d.ts +1 -1
  359. package/dist-cms/packages/members/member/repository/detail/member-detail.server.data-source.d.ts +7 -13
  360. package/dist-cms/packages/members/member/repository/detail/member-detail.server.data-source.js +20 -19
  361. package/dist-cms/packages/members/member/search/member-search.repository.d.ts +1 -1
  362. package/dist-cms/packages/members/member/search/member-search.server.data-source.d.ts +1 -1
  363. package/dist-cms/packages/members/member/search/member.search-provider.d.ts +1 -1
  364. package/dist-cms/packages/members/member/workspace/member/member-workspace-editor.element.d.ts +2 -2
  365. package/dist-cms/packages/members/member/workspace/member/member-workspace-editor.element.js +18 -11
  366. package/dist-cms/packages/members/member/workspace/member/member-workspace-split-view.element.d.ts +2 -1
  367. package/dist-cms/packages/members/member/workspace/member/member-workspace-split-view.element.js +15 -3
  368. package/dist-cms/packages/members/member/workspace/member/member-workspace.context.d.ts +1 -0
  369. package/dist-cms/packages/members/member/workspace/member/member-workspace.context.js +1 -0
  370. package/dist-cms/packages/members/member-group/collection/repository/member-group-collection.server.data-source.d.ts +1 -1
  371. package/dist-cms/packages/members/member-group/repository/detail/member-group-detail.server.data-source.d.ts +3 -3
  372. package/dist-cms/packages/members/member-group/repository/item/member-group-item.server.data-source.d.ts +1 -1
  373. package/dist-cms/packages/members/member-public-access/repository/public-access.repository.d.ts +4 -4
  374. package/dist-cms/packages/members/member-type/constants.d.ts +1 -0
  375. package/dist-cms/packages/members/member-type/constants.js +1 -0
  376. package/dist-cms/packages/members/member-type/entity-actions/duplicate/repository/member-type-duplicate.repository.d.ts +1 -1
  377. package/dist-cms/packages/members/member-type/entity-actions/manifests.js +1 -1
  378. package/dist-cms/packages/members/member-type/entity.d.ts +1 -1
  379. package/dist-cms/packages/members/member-type/entity.js +1 -1
  380. package/dist-cms/packages/members/member-type/index.d.ts +1 -0
  381. package/dist-cms/packages/members/member-type/index.js +1 -0
  382. package/dist-cms/packages/members/member-type/manifests.js +2 -0
  383. package/dist-cms/packages/members/member-type/member-type-root/constants.d.ts +1 -0
  384. package/dist-cms/packages/members/member-type/member-type-root/constants.js +1 -0
  385. package/dist-cms/packages/members/member-type/member-type-root/index.d.ts +1 -0
  386. package/dist-cms/packages/members/member-type/member-type-root/index.js +1 -0
  387. package/dist-cms/packages/members/member-type/member-type-root/manifests.d.ts +1 -0
  388. package/dist-cms/packages/members/member-type/member-type-root/manifests.js +13 -0
  389. package/dist-cms/packages/members/member-type/repository/composition/member-type-composition.repository.d.ts +2 -2
  390. package/dist-cms/packages/members/member-type/repository/composition/member-type-composition.server.data-source.d.ts +2 -2
  391. package/dist-cms/packages/members/member-type/repository/detail/index.d.ts +1 -0
  392. package/dist-cms/packages/members/member-type/repository/detail/index.js +1 -0
  393. package/dist-cms/packages/members/member-type/repository/detail/member-type-detail.repository.js +2 -2
  394. package/dist-cms/packages/members/member-type/repository/detail/member-type-detail.server.data-source.d.ts +18 -19
  395. package/dist-cms/packages/members/member-type/repository/detail/member-type-detail.server.data-source.js +15 -16
  396. package/dist-cms/packages/members/member-type/repository/index.d.ts +1 -1
  397. package/dist-cms/packages/members/member-type/repository/index.js +1 -1
  398. package/dist-cms/packages/members/member-type/repository/item/member-type-item.server.data-source.d.ts +1 -1
  399. package/dist-cms/packages/members/member-type/search/member-type-search.repository.d.ts +1 -1
  400. package/dist-cms/packages/members/member-type/search/member-type-search.server.data-source.d.ts +1 -1
  401. package/dist-cms/packages/members/member-type/search/member-type.search-provider.d.ts +1 -1
  402. package/dist-cms/packages/members/member-type/tree/constants.d.ts +1 -0
  403. package/dist-cms/packages/members/member-type/tree/constants.js +1 -0
  404. package/dist-cms/packages/members/member-type/tree/manifests.js +18 -9
  405. package/dist-cms/packages/members/member-type/tree/tree-item-children/collection/action/manifests.d.ts +1 -0
  406. package/dist-cms/packages/members/member-type/tree/tree-item-children/collection/action/manifests.js +16 -0
  407. package/dist-cms/packages/members/member-type/tree/tree-item-children/collection/constants.d.ts +2 -0
  408. package/dist-cms/packages/members/member-type/tree/tree-item-children/collection/constants.js +2 -0
  409. package/dist-cms/packages/members/member-type/tree/tree-item-children/collection/index.d.ts +2 -0
  410. package/dist-cms/packages/members/member-type/tree/tree-item-children/collection/index.js +2 -0
  411. package/dist-cms/packages/members/member-type/tree/tree-item-children/collection/manifests.d.ts +1 -0
  412. package/dist-cms/packages/members/member-type/tree/tree-item-children/collection/manifests.js +19 -0
  413. package/dist-cms/packages/members/member-type/tree/tree-item-children/collection/repository/constants.d.ts +1 -0
  414. package/dist-cms/packages/members/member-type/tree/tree-item-children/collection/repository/constants.js +1 -0
  415. package/dist-cms/packages/members/member-type/tree/tree-item-children/collection/repository/index.d.ts +1 -0
  416. package/dist-cms/packages/members/member-type/tree/tree-item-children/collection/repository/index.js +1 -0
  417. package/dist-cms/packages/members/member-type/tree/tree-item-children/collection/repository/manifests.d.ts +1 -0
  418. package/dist-cms/packages/members/member-type/tree/tree-item-children/collection/repository/manifests.js +9 -0
  419. package/dist-cms/packages/members/member-type/tree/tree-item-children/collection/repository/member-type-tree-item-children-collection.repository.d.ts +15 -0
  420. package/dist-cms/packages/members/member-type/tree/tree-item-children/collection/repository/member-type-tree-item-children-collection.repository.js +26 -0
  421. package/dist-cms/packages/members/member-type/tree/tree-item-children/collection/types.d.ts +5 -0
  422. package/dist-cms/packages/members/member-type/tree/tree-item-children/collection/types.js +1 -0
  423. package/dist-cms/packages/members/member-type/tree/tree-item-children/collection/views/manifests.d.ts +1 -0
  424. package/dist-cms/packages/members/member-type/tree/tree-item-children/collection/views/manifests.js +22 -0
  425. package/dist-cms/packages/members/member-type/tree/tree-item-children/collection/views/member-type-tree-item-table-collection-view.element.d.ts +16 -0
  426. package/dist-cms/packages/members/member-type/tree/tree-item-children/collection/views/member-type-tree-item-table-collection-view.element.js +112 -0
  427. package/dist-cms/packages/members/member-type/tree/tree-item-children/constants.d.ts +1 -0
  428. package/dist-cms/packages/members/member-type/tree/tree-item-children/constants.js +1 -0
  429. package/dist-cms/packages/members/member-type/tree/tree-item-children/manifests.d.ts +1 -0
  430. package/dist-cms/packages/members/member-type/tree/tree-item-children/manifests.js +3 -0
  431. package/dist-cms/packages/members/member-type/tree/tree-item-children/reload-entity-action/manifests.d.ts +1 -0
  432. package/dist-cms/packages/members/member-type/tree/{reload-tree-item-children → tree-item-children/reload-entity-action}/manifests.js +1 -1
  433. package/dist-cms/packages/members/member-type/workspace/index.d.ts +2 -0
  434. package/dist-cms/packages/members/member-type/workspace/index.js +2 -0
  435. package/dist-cms/packages/members/section/sidebar-app/manifests.js +2 -1
  436. package/dist-cms/packages/models-builder/manifests.js +2 -1
  437. package/dist-cms/packages/packages/package-section/manifests.js +4 -4
  438. package/dist-cms/packages/packages/package-section/views/created/packages-created-overview.element.js +7 -1
  439. package/dist-cms/packages/performance-profiling/manifests.js +2 -1
  440. package/dist-cms/packages/property-editors/label/manifests.js +10 -0
  441. package/dist-cms/packages/property-editors/label/property-editor-ui-label.element.d.ts +3 -4
  442. package/dist-cms/packages/property-editors/label/property-editor-ui-label.element.js +9 -9
  443. package/dist-cms/packages/property-editors/number-range/property-editor-ui-number-range.element.js +2 -3
  444. package/dist-cms/packages/property-editors/overlay-size/property-editor-ui-overlay-size.element.js +7 -1
  445. package/dist-cms/packages/publish-cache/manifests.js +2 -1
  446. package/dist-cms/packages/relations/relation-types/collection/repository/relation-type-collection.server.data-source.d.ts +1 -1
  447. package/dist-cms/packages/relations/relation-types/repository/detail/relation-type-detail.repository.d.ts +1 -1
  448. package/dist-cms/packages/relations/relation-types/repository/detail/relation-type-detail.server.data-source.d.ts +1 -1
  449. package/dist-cms/packages/relations/relation-types/workspace/relation-type/views/relation-type-detail-workspace-view.element.js +4 -0
  450. package/dist-cms/packages/relations/relations/collection/repository/relation-collection.server.data-source.d.ts +1 -1
  451. package/dist-cms/packages/relations/relations/reference/workspace-info-app/entity-references-workspace-view-info.element.js +7 -1
  452. package/dist-cms/packages/search/manifests.js +2 -1
  453. package/dist-cms/packages/segment/collection/repository/segment-collection.server.data-source.d.ts +1 -1
  454. package/dist-cms/packages/settings/advanced/manifests.js +2 -1
  455. package/dist-cms/packages/settings/structure/manifests.js +2 -1
  456. package/dist-cms/packages/settings/welcome/manifests.js +2 -1
  457. package/dist-cms/packages/static-file/repository/item/static-file-item.server.data-source.d.ts +1 -1
  458. package/dist-cms/packages/tags/repository/tag.repository.d.ts +2 -2
  459. package/dist-cms/packages/telemetry/manifests.js +2 -1
  460. package/dist-cms/packages/templating/menu/manifests.js +2 -1
  461. package/dist-cms/packages/templating/partial-views/entity-actions/rename/rename-partial-view.server.data-source.d.ts +1 -1
  462. package/dist-cms/packages/templating/partial-views/repository/item/partial-view-item.server.data-source.d.ts +1 -1
  463. package/dist-cms/packages/templating/partial-views/repository/partial-view-detail.server.data-source.d.ts +3 -3
  464. package/dist-cms/packages/templating/partial-views/tree/folder/repository/partial-view-folder.server.data-source.d.ts +2 -2
  465. package/dist-cms/packages/templating/partial-views/tree/folder/workspace/partial-view-folder-workspace-editor.element.d.ts +1 -5
  466. package/dist-cms/packages/templating/partial-views/tree/folder/workspace/partial-view-folder-workspace-editor.element.js +8 -22
  467. package/dist-cms/packages/templating/scripts/entity-actions/rename/rename-script.server.data-source.d.ts +1 -1
  468. package/dist-cms/packages/templating/scripts/repository/item/script-item.server.data-source.d.ts +1 -1
  469. package/dist-cms/packages/templating/scripts/repository/script-detail.server.data-source.d.ts +3 -3
  470. package/dist-cms/packages/templating/scripts/tree/folder/repository/script-folder.server.data-source.d.ts +2 -2
  471. package/dist-cms/packages/templating/scripts/tree/folder/workspace/script-folder-workspace-editor.element.d.ts +1 -5
  472. package/dist-cms/packages/templating/scripts/tree/folder/workspace/script-folder-workspace-editor.element.js +8 -22
  473. package/dist-cms/packages/templating/stylesheets/entity-actions/rename/rename-stylesheet.server.data-source.d.ts +1 -1
  474. package/dist-cms/packages/templating/stylesheets/repository/item/stylesheet-item.server.data-source.d.ts +1 -1
  475. package/dist-cms/packages/templating/stylesheets/repository/stylesheet-detail.server.data-source.d.ts +3 -3
  476. package/dist-cms/packages/templating/stylesheets/tree/folder/repository/stylesheet-folder.server.data-source.d.ts +2 -2
  477. package/dist-cms/packages/templating/stylesheets/tree/folder/workspace/stylesheet-folder-workspace-editor.element.d.ts +1 -5
  478. package/dist-cms/packages/templating/stylesheets/tree/folder/workspace/stylesheet-folder-workspace-editor.element.js +8 -22
  479. package/dist-cms/packages/templating/templates/repository/detail/template-detail.server.data-source.d.ts +3 -3
  480. package/dist-cms/packages/templating/templates/repository/item/template-item.server.data-source.d.ts +1 -1
  481. package/dist-cms/packages/templating/templates/search/template-search.repository.d.ts +1 -1
  482. package/dist-cms/packages/templating/templates/search/template-search.server.data-source.d.ts +1 -1
  483. package/dist-cms/packages/templating/templates/search/template.search-provider.d.ts +1 -1
  484. package/dist-cms/packages/templating/templates/workspace/template-workspace.context.d.ts +1 -1
  485. package/dist-cms/packages/tiptap/components/cascading-menu-popover/cascading-menu-popover.element.d.ts +1 -0
  486. package/dist-cms/packages/tiptap/components/cascading-menu-popover/cascading-menu-popover.element.js +23 -9
  487. package/dist-cms/packages/tiptap/components/toolbar/style-menu.tiptap-toolbar-api.d.ts +1 -0
  488. package/dist-cms/packages/tiptap/components/toolbar/style-menu.tiptap-toolbar-api.js +29 -11
  489. package/dist-cms/packages/tiptap/components/toolbar/tiptap-toolbar-button.element.js +2 -2
  490. package/dist-cms/packages/tiptap/components/toolbar/tiptap-toolbar-menu.element.js +12 -4
  491. package/dist-cms/packages/tiptap/extensions/manifests.js +9 -9
  492. package/dist-cms/packages/tiptap/extensions/table/components/table-toolbar-menu.element.js +1 -1
  493. package/dist-cms/packages/tiptap/extensions/table/table.tiptap-toolbar-api.d.ts +1 -0
  494. package/dist-cms/packages/tiptap/extensions/table/table.tiptap-toolbar-api.js +5 -0
  495. package/dist-cms/packages/tiptap/extensions/toolbar/clear-formatting.tiptap-toolbar-api.js +1 -1
  496. package/dist-cms/packages/tiptap/extensions/toolbar/font-family.tiptap-toolbar-api.d.ts +1 -0
  497. package/dist-cms/packages/tiptap/extensions/toolbar/font-family.tiptap-toolbar-api.js +5 -1
  498. package/dist-cms/packages/tiptap/extensions/toolbar/font-size.tiptap-toolbar-api.d.ts +1 -0
  499. package/dist-cms/packages/tiptap/extensions/toolbar/font-size.tiptap-toolbar-api.js +5 -1
  500. package/dist-cms/packages/tiptap/extensions/toolbar/text-color-background.tiptap-toolbar-api.js +1 -1
  501. package/dist-cms/packages/tiptap/extensions/toolbar/text-color-foreground.tiptap-toolbar-api.js +1 -1
  502. package/dist-cms/packages/tiptap/extensions/types.d.ts +1 -1
  503. package/dist-cms/packages/tiptap/property-editors/tiptap/components/property-editor-ui-tiptap-statusbar-configuration.element.js +18 -10
  504. package/dist-cms/packages/tiptap/property-editors/tiptap/components/property-editor-ui-tiptap-toolbar-configuration.element.js +21 -12
  505. package/dist-cms/packages/tiptap/property-editors/tiptap/constants.d.ts +1 -0
  506. package/dist-cms/packages/tiptap/property-editors/tiptap/constants.js +1 -0
  507. package/dist-cms/packages/tiptap/property-editors/tiptap/contexts/tiptap-statusbar-configuration.context-token.d.ts +3 -0
  508. package/dist-cms/packages/tiptap/property-editors/tiptap/contexts/tiptap-statusbar-configuration.context-token.js +2 -0
  509. package/dist-cms/packages/tiptap/property-editors/tiptap/contexts/tiptap-statusbar-configuration.context.js +2 -1
  510. package/dist-cms/packages/translation/menu/manifests.js +2 -1
  511. package/dist-cms/packages/ufm/filters/bytes.filter.d.ts +5 -0
  512. package/dist-cms/packages/ufm/filters/bytes.filter.js +10 -0
  513. package/dist-cms/packages/ufm/filters/manifests.js +7 -0
  514. package/dist-cms/packages/umbraco-news/manifests.js +2 -1
  515. package/dist-cms/packages/user/current-user/current-user.context.d.ts +1 -1
  516. package/dist-cms/packages/user/current-user/current-user.context.js +1 -1
  517. package/dist-cms/packages/user/current-user/repository/current-user.repository.d.ts +6 -6
  518. package/dist-cms/packages/user/current-user/repository/current-user.server.data-source.d.ts +4 -4
  519. package/dist-cms/packages/user/section/sidebar-app/manifests.js +2 -1
  520. package/dist-cms/packages/user/user/client-credential/repository/data-source/user-client-credential.server.data-source.d.ts +2 -2
  521. package/dist-cms/packages/user/user/collection/repository/user-collection.repository.d.ts +1 -1
  522. package/dist-cms/packages/user/user/collection/repository/user-collection.server.data-source.d.ts +1 -1
  523. package/dist-cms/packages/user/user/invite/repository/invite-user-server.data-source.d.ts +1 -1
  524. package/dist-cms/packages/user/user/invite/repository/invite-user.repository.d.ts +2 -2
  525. package/dist-cms/packages/user/user/repository/avatar/user-avatar.repository.d.ts +2 -2
  526. package/dist-cms/packages/user/user/repository/change-password/change-user-password.repository.d.ts +1 -1
  527. package/dist-cms/packages/user/user/repository/detail/user-detail.server.data-source.d.ts +4 -4
  528. package/dist-cms/packages/user/user/repository/disable/disable-user.repository.d.ts +1 -1
  529. package/dist-cms/packages/user/user/repository/enable/enable-user.repository.d.ts +1 -1
  530. package/dist-cms/packages/user/user/repository/item/user-item.server.data-source.d.ts +1 -1
  531. package/dist-cms/packages/user/user/repository/unlock/unlock-user.repository.d.ts +1 -1
  532. package/dist-cms/packages/user/user/repository/user.repository.d.ts +3 -3
  533. package/dist-cms/packages/user/user/workspace/user/user-workspace-editor.element.js +7 -12
  534. package/dist-cms/packages/user/user/workspace/user/user-workspace.context.d.ts +3 -3
  535. package/dist-cms/packages/user/user/workspace/user/user-workspace.context.js +5 -0
  536. package/dist-cms/packages/user/user-group/collection/repository/user-group-collection.repository.d.ts +1 -1
  537. package/dist-cms/packages/user/user-group/collection/repository/user-group-collection.server.data-source.d.ts +1 -1
  538. package/dist-cms/packages/user/user-group/repository/detail/user-group-detail.server.data-source.d.ts +3 -3
  539. package/dist-cms/packages/user/user-group/repository/item/user-group-item.server.data-source.d.ts +1 -1
  540. package/dist-cms/packages/webhook/webhook/collection/repository/webhook-collection.server.data-source.d.ts +1 -1
  541. package/dist-cms/packages/webhook/webhook/repository/detail/webhook-detail.server.data-source.d.ts +3 -3
  542. package/dist-cms/packages/webhook/webhook/repository/item/webhook-item.server.data-source.d.ts +1 -1
  543. package/dist-cms/packages/webhook/webhook-delivery/collection/repository/webhook-delivery-collection.server.data-source.d.ts +1 -1
  544. package/dist-cms/packages/webhook/webhook-event/repository/webhook-event.repository.d.ts +1 -1
  545. package/dist-cms/packages/webhook/webhook-event/repository/webhook-event.server.data-source.d.ts +1 -1
  546. package/dist-cms/tsconfig.build.tsbuildinfo +1 -1
  547. package/dist-cms/umbraco-package-schema.json +584 -194
  548. package/dist-cms/umbraco-package.json +1 -1
  549. package/dist-cms/vscode-html-custom-data.json +100 -35
  550. package/examples/collection/README.md +20 -0
  551. package/examples/collection/collection/card-view/collection-view.element.ts +82 -0
  552. package/examples/collection/collection/card-view/manifests.ts +23 -0
  553. package/examples/collection/collection/constants.ts +1 -0
  554. package/examples/collection/collection/manifests.ts +20 -0
  555. package/examples/collection/collection/repository/collection.repository.ts +64 -0
  556. package/examples/collection/collection/repository/constants.ts +1 -0
  557. package/examples/collection/collection/repository/manifests.ts +10 -0
  558. package/examples/collection/collection/repository/types.ts +9 -0
  559. package/examples/collection/collection/table-view/collection-view.element.ts +89 -0
  560. package/examples/collection/collection/table-view/manifests.ts +23 -0
  561. package/examples/collection/dashboard-with-collection/dashboard-with-collection.element.ts +23 -0
  562. package/examples/collection/dashboard-with-collection/manifests.ts +14 -0
  563. package/examples/collection/index.ts +9 -0
  564. package/examples/collection/workspace-view-with-collection/manifests.ts +25 -0
  565. package/examples/validation-context/index.ts +2 -1
  566. package/package.json +4 -4
  567. /package/dist-cms/packages/{members/member-type/tree/reload-tree-item-children → core/entity/entity-type}/manifests.d.ts +0 -0
  568. /package/dist-cms/packages/core/section/conditions/{section-user-permission.condition.js → section-user-permission/section-user-permission.condition.js} +0 -0
@@ -54,7 +54,7 @@ export class UmbServerExtensionRegistrator extends UmbControllerBase {
54
54
  throw new Error('Server context is not available');
55
55
  }
56
56
  const apiBaseUrl = serverContext?.getServerUrl();
57
- packages.forEach((p) => {
57
+ packages?.forEach((p) => {
58
58
  p.extensions?.forEach((e) => {
59
59
  // Crudely validate that the extension at least follows a basic manifest structure
60
60
  // Idea: Use `Zod` to validate the manifest
@@ -17,7 +17,7 @@ export interface ManifestBase {
17
17
  */
18
18
  name: string;
19
19
  /**
20
- * Extensions such as dashboards are ordered by weight with lower numbers being first in the list
20
+ * Extensions such as dashboards are ordered by weight with higher numbers being first in the list
21
21
  */
22
22
  weight?: number;
23
23
  }
@@ -17,6 +17,9 @@ export declare abstract class UmbBlockEntryContext<BlockManagerContextTokenType
17
17
  readonly unsupported: Observable<boolean | undefined>;
18
18
  protected readonly _variantId: Observable<UmbVariantId | undefined>;
19
19
  readonly hasExpose: Observable<boolean | undefined>;
20
+ readonly actionsVisibility: Observable<boolean>;
21
+ hideActions(): void;
22
+ showActions(): void;
20
23
  readonly readOnlyGuard: UmbReadOnlyVariantGuardManager;
21
24
  getEntityType(): string;
22
25
  getUnique(): string | undefined;
@@ -13,6 +13,13 @@ export class UmbBlockEntryContext extends UmbContextBase {
13
13
  #pathAddendum;
14
14
  #variantId;
15
15
  #hasExpose;
16
+ #actionsVisibility;
17
+ hideActions() {
18
+ this.#actionsVisibility.setValue(false);
19
+ }
20
+ showActions() {
21
+ this.#actionsVisibility.setValue(true);
22
+ }
16
23
  // Workspace alike methods, to enables editing of data without the need of a workspace (Custom views and block grid inline editing mode for example).
17
24
  getEntityType() {
18
25
  return 'block';
@@ -158,6 +165,8 @@ export class UmbBlockEntryContext extends UmbContextBase {
158
165
  this._variantId = this.#variantId.asObservable();
159
166
  this.#hasExpose = new UmbBooleanState(undefined);
160
167
  this.hasExpose = this.#hasExpose.asObservable();
168
+ this.#actionsVisibility = new UmbBooleanState(true);
169
+ this.actionsVisibility = this.#actionsVisibility.asObservable();
161
170
  this.readOnlyGuard = new UmbReadOnlyVariantGuardManager(this);
162
171
  this.#index = new UmbNumberState(undefined);
163
172
  this.index = this.#index.asObservable();
@@ -26,6 +26,7 @@ export declare class UmbBlockGridEntryElement extends UmbLitElement implements U
26
26
  _icon?: string;
27
27
  _exposed?: boolean;
28
28
  _unsupported?: boolean;
29
+ _showActions?: boolean;
29
30
  _workspaceEditContentPath?: string;
30
31
  _workspaceEditSettingsPath?: string;
31
32
  _inlineEditingMode?: boolean;
@@ -162,6 +162,9 @@ let UmbBlockGridEntryElement = class UmbBlockGridEntryElement extends UmbLitElem
162
162
  this._unsupported = unsupported;
163
163
  this.toggleAttribute('unsupported', unsupported);
164
164
  }, null);
165
+ this.observe(this.#context.actionsVisibility, (showActions) => {
166
+ this._showActions = showActions;
167
+ }, null);
165
168
  this.observe(this.#context.inlineEditingMode, (mode) => {
166
169
  this._inlineEditingMode = mode;
167
170
  }, null);
@@ -350,12 +353,14 @@ let UmbBlockGridEntryElement = class UmbBlockGridEntryElement extends UmbLitElem
350
353
  `;
351
354
  }
352
355
  #renderActionBar() {
353
- return html `
354
- <uui-action-bar>
355
- ${this.#renderEditAction()} ${this.#renderEditSettingsAction()} ${this.#renderCopyToClipboardAction()}
356
- ${this.#renderDeleteAction()}</uui-action-bar
357
- >
358
- `;
356
+ return this._showActions
357
+ ? html `
358
+ <uui-action-bar>
359
+ ${this.#renderEditAction()} ${this.#renderEditSettingsAction()} ${this.#renderCopyToClipboardAction()}
360
+ ${this.#renderDeleteAction()}</uui-action-bar
361
+ >
362
+ `
363
+ : nothing;
359
364
  }
360
365
  #renderEditAction() {
361
366
  return this._showContentEdit && this._workspaceEditContentPath
@@ -559,6 +564,9 @@ __decorate([
559
564
  __decorate([
560
565
  state()
561
566
  ], UmbBlockGridEntryElement.prototype, "_unsupported", void 0);
567
+ __decorate([
568
+ state()
569
+ ], UmbBlockGridEntryElement.prototype, "_showActions", void 0);
562
570
  __decorate([
563
571
  state()
564
572
  ], UmbBlockGridEntryElement.prototype, "_workspaceEditContentPath", void 0);
@@ -24,6 +24,7 @@ export declare class UmbBlockListEntryElement extends UmbLitElement implements U
24
24
  _icon?: string;
25
25
  _exposed?: boolean;
26
26
  _unsupported?: boolean;
27
+ _showActions?: boolean;
27
28
  _workspaceEditContentPath?: string;
28
29
  _workspaceEditSettingsPath?: string;
29
30
  _inlineEditingMode?: boolean;
@@ -80,7 +80,7 @@ let UmbBlockListEntryElement = class UmbBlockListEntryElement extends UmbLitElem
80
80
  return ext.component;
81
81
  }
82
82
  else {
83
- return html `<div>
83
+ return html `<div style="min-height: var(--uui-size-16);">
84
84
  ${ext.component}
85
85
  <umb-block-overlay-expose-button
86
86
  .contentTypeName=${this._contentTypeName}
@@ -122,6 +122,9 @@ let UmbBlockListEntryElement = class UmbBlockListEntryElement extends UmbLitElem
122
122
  this._unsupported = unsupported;
123
123
  this.toggleAttribute('unsupported', unsupported);
124
124
  }, null);
125
+ this.observe(this.#context.actionsVisibility, (showActions) => {
126
+ this._showActions = showActions;
127
+ }, null);
125
128
  this.observe(this.#context.inlineEditingMode, (mode) => {
126
129
  this._inlineEditingMode = mode;
127
130
  }, null);
@@ -260,10 +263,7 @@ let UmbBlockListEntryElement = class UmbBlockListEntryElement extends UmbLitElem
260
263
  single
261
264
  >${this.#renderBuiltinBlockView()}</umb-extension-slot
262
265
  >
263
- <uui-action-bar>
264
- ${this.#renderEditContentAction()} ${this.#renderEditSettingsAction()}
265
- ${this.#renderCopyToClipboardAction()} ${this.#renderDeleteAction()}
266
- </uui-action-bar>
266
+ ${this.#renderActionBar()}
267
267
  ${!this._showContentEdit && this._contentInvalid
268
268
  ? html `<uui-badge attention color="invalid" label="Invalid content">!</uui-badge>`
269
269
  : nothing}
@@ -271,6 +271,14 @@ let UmbBlockListEntryElement = class UmbBlockListEntryElement extends UmbLitElem
271
271
  `
272
272
  : nothing;
273
273
  }
274
+ #renderActionBar() {
275
+ return this._showActions
276
+ ? html `<uui-action-bar>
277
+ ${this.#renderEditContentAction()} ${this.#renderEditSettingsAction()} ${this.#renderCopyToClipboardAction()}
278
+ ${this.#renderDeleteAction()}
279
+ </uui-action-bar>`
280
+ : nothing;
281
+ }
274
282
  #renderEditContentAction() {
275
283
  return this._showContentEdit && this._workspaceEditContentPath
276
284
  ? html `<uui-button
@@ -444,6 +452,9 @@ __decorate([
444
452
  __decorate([
445
453
  state()
446
454
  ], UmbBlockListEntryElement.prototype, "_unsupported", void 0);
455
+ __decorate([
456
+ state()
457
+ ], UmbBlockListEntryElement.prototype, "_showActions", void 0);
447
458
  __decorate([
448
459
  state()
449
460
  ], UmbBlockListEntryElement.prototype, "_workspaceEditContentPath", void 0);
@@ -17,6 +17,7 @@ export declare class UmbBlockRteEntryElement extends UmbLitElement implements Um
17
17
  _label: string;
18
18
  _icon?: string;
19
19
  _exposed?: boolean;
20
+ _showActions?: boolean;
20
21
  _workspaceEditContentPath?: string;
21
22
  _workspaceEditSettingsPath?: string;
22
23
  _contentTypeAlias?: string;
@@ -100,6 +100,9 @@ let UmbBlockRteEntryElement = class UmbBlockRteEntryElement extends UmbLitElemen
100
100
  this.#updateBlockViewProps({ unpublished: !exposed });
101
101
  this._exposed = exposed;
102
102
  }, null);
103
+ this.observe(this.#context.actionsVisibility, (showActions) => {
104
+ this._showActions = showActions;
105
+ }, null);
103
106
  // Data props:
104
107
  this.observe(this.#context.layout, (layout) => {
105
108
  this.#updateBlockViewProps({ layout });
@@ -152,7 +155,7 @@ let UmbBlockRteEntryElement = class UmbBlockRteEntryElement extends UmbLitElemen
152
155
  single>
153
156
  ${this.#renderRefBlock()}
154
157
  </umb-extension-slot>
155
- <uui-action-bar> ${this.#renderEditAction()} ${this.#renderEditSettingsAction()} </uui-action-bar>
158
+ ${this.#renderActionBar()}
156
159
  ${!this._showContentEdit && this._contentInvalid
157
160
  ? html `<uui-badge attention color="invalid" label="Invalid content">!</uui-badge>`
158
161
  : nothing}
@@ -160,6 +163,11 @@ let UmbBlockRteEntryElement = class UmbBlockRteEntryElement extends UmbLitElemen
160
163
  `
161
164
  : nothing;
162
165
  }
166
+ #renderActionBar() {
167
+ return this._showActions
168
+ ? html ` <uui-action-bar> ${this.#renderEditAction()} ${this.#renderEditSettingsAction()}</uui-action-bar> `
169
+ : nothing;
170
+ }
163
171
  #renderRefBlock() {
164
172
  return html `<umb-ref-rte-block
165
173
  .label=${this._label}
@@ -260,6 +268,9 @@ __decorate([
260
268
  __decorate([
261
269
  state()
262
270
  ], UmbBlockRteEntryElement.prototype, "_exposed", void 0);
271
+ __decorate([
272
+ state()
273
+ ], UmbBlockRteEntryElement.prototype, "_showActions", void 0);
263
274
  __decorate([
264
275
  state()
265
276
  ], UmbBlockRteEntryElement.prototype, "_workspaceEditContentPath", void 0);
@@ -22,6 +22,12 @@ let UmbManifestViewerModalElement = class UmbManifestViewerModalElement extends
22
22
  else if (typeof value === 'object') {
23
23
  value = this.#stringify(value);
24
24
  }
25
+ else if (typeof value === 'number') {
26
+ value = `${value}`;
27
+ }
28
+ else if (typeof value === 'boolean') {
29
+ value = `${value}`;
30
+ }
25
31
  else {
26
32
  value = `"${value}"`;
27
33
  }
@@ -50,7 +50,7 @@ let UmbContentWorkspaceViewEditElement = class UmbContentWorkspaceViewEditElemen
50
50
  const routes = [];
51
51
  if (this._hasRootGroups) {
52
52
  routes.push({
53
- path: `root`,
53
+ path: 'root',
54
54
  component: () => import('./content-editor-tab.element.js'),
55
55
  setup: (component) => {
56
56
  component.containerId = null;
@@ -71,15 +71,15 @@ let UmbContentWorkspaceViewEditElement = class UmbContentWorkspaceViewEditElemen
71
71
  }
72
72
  if (routes.length !== 0) {
73
73
  routes.push({
74
+ ...routes[0],
75
+ unique: routes[0].path,
74
76
  path: '',
75
- pathMatch: 'full',
76
- redirectTo: routes[0].path,
77
- });
78
- routes.push({
79
- path: `**`,
80
- component: async () => (await import('@umbraco-cms/backoffice/router')).UmbRouteNotFoundElement,
81
77
  });
82
78
  }
79
+ routes.push({
80
+ path: `**`,
81
+ component: async () => (await import('@umbraco-cms/backoffice/router')).UmbRouteNotFoundElement,
82
+ });
83
83
  this._routes = routes;
84
84
  }
85
85
  render() {
@@ -93,15 +93,17 @@ let UmbContentWorkspaceViewEditElement = class UmbContentWorkspaceViewEditElemen
93
93
  ? html `
94
94
  <uui-tab
95
95
  .label=${this.localize.term('general_generic')}
96
- .active=${this._routerPath + '/root' === this._activePath}
96
+ .active=${this._routerPath + '/root' === this._activePath ||
97
+ this._routerPath + '/' === this._activePath}
97
98
  .href=${this._routerPath + '/root'}></uui-tab>
98
99
  `
99
100
  : ''}
100
- ${repeat(this._tabs, (tab) => tab.name, (tab) => {
101
+ ${repeat(this._tabs, (tab) => tab.name, (tab, index) => {
101
102
  const path = this._routerPath + '/tab/' + encodeFolderName(tab.name || '');
102
103
  return html `<uui-tab
103
104
  .label=${this.localize.string(tab.name ?? '#general_unnamed')}
104
- .active=${path === this._activePath}
105
+ .active=${path === this._activePath ||
106
+ (!this._hasRootGroups && index === 0 && this._routerPath + '/' === this._activePath)}
105
107
  .href=${path}></uui-tab>`;
106
108
  })}
107
109
  </uui-tab-group>`
@@ -83,11 +83,12 @@ let UmbCompositionPickerModalElement = class UmbCompositionPickerModalElement ex
83
83
  });
84
84
  if (!data)
85
85
  return;
86
- const folders = Array.from(new Set(data.map((c) => '/' + c.folderPath.join('/'))));
87
- this._compatibleCompositions = folders.map((path) => ({
88
- path,
89
- compositions: data.filter((c) => '/' + c.folderPath.join('/') === path),
90
- }));
86
+ // eslint-disable-next-line @typescript-eslint/ban-ts-comment
87
+ // @ts-expect-error
88
+ const grouped = Object.groupBy(data, (item) => '/' + item.folderPath.join('/'));
89
+ this._compatibleCompositions = Object.keys(grouped)
90
+ .sort((a, b) => a.localeCompare(b))
91
+ .map((key) => ({ path: key, compositions: grouped[key] }));
91
92
  }
92
93
  #onSelectionAdd(unique) {
93
94
  this._selection = [...this._selection, unique];
@@ -35,7 +35,7 @@ export declare abstract class UmbContentTypeStructureServerDataSourceBase<Server
35
35
  };
36
36
  error?: undefined;
37
37
  } | {
38
- error: Error | import("@umbraco-cms/backoffice/resources").UmbError | import("@umbraco-cms/backoffice/resources").UmbApiError | import("@umbraco-cms/backoffice/resources").UmbCancelError | undefined;
38
+ error: ((Error | import("@umbraco-cms/backoffice/resources").UmbApiError | import("@umbraco-cms/backoffice/resources").UmbCancelError | import("@umbraco-cms/backoffice/resources").UmbError) & (import("@umbraco-cms/backoffice/resources").UmbApiError | import("@umbraco-cms/backoffice/resources").UmbCancelError)) | undefined;
39
39
  data?: undefined;
40
40
  }>;
41
41
  }
@@ -39,7 +39,7 @@ export declare class UmbContentTypeStructureManager<T extends UmbContentTypeMode
39
39
  * @param {string} unique - The unique of the ContentType to load.
40
40
  * @returns {Promise} - Promise resolved
41
41
  */
42
- loadType(unique: string): Promise<UmbRepositoryResponseWithAsObservable<T>>;
42
+ loadType(unique: string): Promise<UmbRepositoryResponseWithAsObservable<T | undefined>>;
43
43
  createScaffold(preset?: Partial<T>): Promise<UmbRepositoryResponse<T>>;
44
44
  /**
45
45
  * Save the owner content type. Notice this is for a Content Type that is already stored on the server.
@@ -43,7 +43,7 @@ export declare class UmbAuthFlow {
43
43
  * @remark It will also emit if there is an error during the authorization flow.
44
44
  */
45
45
  readonly authorizationSignal: Subject<void>;
46
- constructor(openIdConnectUrl: string, redirectUri: string, postLogoutRedirectUri: string, timeoutSignal: Subject<void>, clientId?: string, scope?: string);
46
+ constructor(openIdConnectUrl: string, redirectUri: string, postLogoutRedirectUri: string, clientId?: string, scope?: string);
47
47
  /**
48
48
  * This method will initialize all the state needed for the auth flow.
49
49
  *
@@ -87,7 +87,7 @@ export declare class UmbAuthFlow {
87
87
  /**
88
88
  * This method will check if the token needs to be refreshed and if so, it will refresh it and return the new access token.
89
89
  * If the token does not need to be refreshed, it will return the current access token.
90
- * @returns The access token for the user.
90
+ * @returns {Promise<string>} The access token for the user.
91
91
  */
92
92
  performWithFreshTokens(): Promise<string>;
93
93
  /**
@@ -74,14 +74,13 @@ export class UmbAuthFlow {
74
74
  #postLogoutRedirectUri;
75
75
  #clientId;
76
76
  #scope;
77
- #timeoutSignal;
78
77
  // tokens
79
78
  #tokenResponse;
80
79
  // external login
81
80
  #link_endpoint;
82
81
  #link_key_endpoint;
83
82
  #unlink_endpoint;
84
- constructor(openIdConnectUrl, redirectUri, postLogoutRedirectUri, timeoutSignal, clientId = 'umbraco-back-office', scope = 'offline_access') {
83
+ constructor(openIdConnectUrl, redirectUri, postLogoutRedirectUri, clientId = 'umbraco-back-office', scope = 'offline_access') {
85
84
  /**
86
85
  * This signal will emit when the authorization flow is complete.
87
86
  * @remark It will also emit if there is an error during the authorization flow.
@@ -89,7 +88,6 @@ export class UmbAuthFlow {
89
88
  this.authorizationSignal = new Subject();
90
89
  this.#redirectUri = redirectUri;
91
90
  this.#postLogoutRedirectUri = postLogoutRedirectUri;
92
- this.#timeoutSignal = timeoutSignal;
93
91
  this.#clientId = clientId;
94
92
  this.#scope = scope;
95
93
  this.#configuration = new AuthorizationServiceConfiguration({
@@ -241,22 +239,22 @@ export class UmbAuthFlow {
241
239
  /**
242
240
  * This method will check if the token needs to be refreshed and if so, it will refresh it and return the new access token.
243
241
  * If the token does not need to be refreshed, it will return the current access token.
244
- * @returns The access token for the user.
242
+ * @returns {Promise<string>} The access token for the user.
245
243
  */
246
244
  async performWithFreshTokens() {
247
245
  // if the access token is valid, return it
248
246
  if (this.#tokenResponse?.isValid()) {
249
247
  return Promise.resolve(this.#tokenResponse.accessToken);
250
248
  }
249
+ // if the access token is not valid, try to refresh it
251
250
  const success = await this.makeRefreshTokenRequest();
251
+ const newToken = this.#tokenResponse?.accessToken ?? '';
252
252
  if (!success) {
253
+ // if the refresh token request failed, we need to clear the token state
253
254
  this.clearTokenStorage();
254
- this.#timeoutSignal.next();
255
- return Promise.reject('Missing tokenResponse.');
256
255
  }
257
- return this.#tokenResponse
258
- ? Promise.resolve(this.#tokenResponse.accessToken)
259
- : Promise.reject('Missing tokenResponse.');
256
+ // if the refresh token request was successful, return the new access token
257
+ return Promise.resolve(newToken);
260
258
  }
261
259
  /**
262
260
  * This method will link the current user to the specified provider by redirecting the user to the link endpoint.
@@ -2,7 +2,7 @@ import type { UmbOpenApiConfiguration } from './models/openApiConfiguration.js';
2
2
  import type { ManifestAuthProvider } from './auth-provider.extension.js';
3
3
  import type { UmbControllerHost } from '@umbraco-cms/backoffice/controller-api';
4
4
  import { UmbContextBase } from '@umbraco-cms/backoffice/class-api';
5
- import { Subject } from '@umbraco-cms/backoffice/external/rxjs';
5
+ import type { Observable } from '@umbraco-cms/backoffice/external/rxjs';
6
6
  import type { UmbBackofficeExtensionRegistry } from '@umbraco-cms/backoffice/extension-registry';
7
7
  export declare class UmbAuthContext extends UmbContextBase {
8
8
  #private;
@@ -10,22 +10,24 @@ export declare class UmbAuthContext extends UmbContextBase {
10
10
  * Observable that emits true when the auth context is initialized.
11
11
  * @remark It will only emit once and then complete itself.
12
12
  */
13
- readonly isInitialized: import("rxjs").Observable<void>;
13
+ readonly isInitialized: Observable<void>;
14
14
  /**
15
15
  * Observable that emits true if the user is authorized, otherwise false.
16
16
  * @remark It will only emit when the authorization state changes.
17
17
  */
18
- readonly isAuthorized: import("rxjs").Observable<boolean>;
18
+ readonly isAuthorized: Observable<boolean>;
19
19
  /**
20
20
  * Observable that acts as a signal and emits when the user has timed out, i.e. the token has expired.
21
21
  * This can be used to show a timeout message to the user.
22
- * @remark It can emit multiple times if more than one request is made after the token has expired.
22
+ * @remark It will emit once per second, so it can be used to trigger UI updates or other actions when the user has timed out.
23
23
  */
24
- readonly timeoutSignal: import("rxjs").Observable<void>;
24
+ readonly timeoutSignal: Observable<void>;
25
25
  /**
26
26
  * Observable that acts as a signal for when the authorization state changes.
27
+ * @remark It will emit once per second, so it can be used to trigger UI updates or other actions when the authorization state changes.
28
+ * @returns {Subject<void>} An observable that emits when the authorization state changes.
27
29
  */
28
- get authorizationSignal(): Subject<void>;
30
+ get authorizationSignal(): Observable<void>;
29
31
  constructor(host: UmbControllerHost, serverUrl: string, backofficePath: string, isBypassed: boolean);
30
32
  destroy(): void;
31
33
  /**
@@ -127,7 +129,7 @@ export declare class UmbAuthContext extends UmbContextBase {
127
129
  * Gets all registered auth providers.
128
130
  * @param extensionsRegistry
129
131
  */
130
- getAuthProviders(extensionsRegistry: UmbBackofficeExtensionRegistry): import("rxjs").Observable<ManifestAuthProvider[]>;
132
+ getAuthProviders(extensionsRegistry: UmbBackofficeExtensionRegistry): Observable<ManifestAuthProvider[]>;
131
133
  /**
132
134
  * Gets the authorized redirect url.
133
135
  * @returns The redirect url, which is the backoffice path.
@@ -3,7 +3,7 @@ import { UMB_AUTH_CONTEXT } from './auth.context.token.js';
3
3
  import { UMB_STORAGE_TOKEN_RESPONSE_NAME } from './constants.js';
4
4
  import { UmbContextBase } from '@umbraco-cms/backoffice/class-api';
5
5
  import { UmbBooleanState } from '@umbraco-cms/backoffice/observable-api';
6
- import { ReplaySubject, Subject, firstValueFrom, switchMap } from '@umbraco-cms/backoffice/external/rxjs';
6
+ import { ReplaySubject, Subject, firstValueFrom, switchMap, distinctUntilChanged, throttleTime, auditTime, } from '@umbraco-cms/backoffice/external/rxjs';
7
7
  import { umbHttpClient } from '@umbraco-cms/backoffice/http-client';
8
8
  export class UmbAuthContext extends UmbContextBase {
9
9
  #isAuthorized;
@@ -18,9 +18,13 @@ export class UmbAuthContext extends UmbContextBase {
18
18
  #previousAuthUrl;
19
19
  /**
20
20
  * Observable that acts as a signal for when the authorization state changes.
21
+ * @remark It will emit once per second, so it can be used to trigger UI updates or other actions when the authorization state changes.
22
+ * @returns {Subject<void>} An observable that emits when the authorization state changes.
21
23
  */
22
24
  get authorizationSignal() {
23
- return this.#authFlow.authorizationSignal;
25
+ return this.#authFlow.authorizationSignal.asObservable().pipe(
26
+ // Throttle the signal to ensure that it emits once, then waits for 1s before allowing another emission.
27
+ throttleTime(1000));
24
28
  }
25
29
  constructor(host, serverUrl, backofficePath, isBypassed) {
26
30
  super(host, UMB_AUTH_CONTEXT);
@@ -37,17 +41,20 @@ export class UmbAuthContext extends UmbContextBase {
37
41
  * Observable that emits true if the user is authorized, otherwise false.
38
42
  * @remark It will only emit when the authorization state changes.
39
43
  */
40
- this.isAuthorized = this.#isAuthorized.asObservable();
44
+ this.isAuthorized = this.#isAuthorized.asObservable().pipe(distinctUntilChanged());
41
45
  /**
42
46
  * Observable that acts as a signal and emits when the user has timed out, i.e. the token has expired.
43
47
  * This can be used to show a timeout message to the user.
44
- * @remark It can emit multiple times if more than one request is made after the token has expired.
48
+ * @remark It will emit once per second, so it can be used to trigger UI updates or other actions when the user has timed out.
45
49
  */
46
- this.timeoutSignal = this.#isTimeout.asObservable();
50
+ this.timeoutSignal = this.#isTimeout.asObservable().pipe(
51
+ // Audit the timeout signal to ensure that it waits for 1s before allowing another emission, which prevents rapid firing of the signal.
52
+ // This is useful to prevent the UI from being flooded with timeout events.
53
+ auditTime(1000));
47
54
  this.#isBypassed = isBypassed;
48
55
  this.#serverUrl = serverUrl;
49
56
  this.#backofficePath = backofficePath;
50
- this.#authFlow = new UmbAuthFlow(serverUrl, this.getRedirectUrl(), this.getPostLogoutRedirectUrl(), this.#isTimeout);
57
+ this.#authFlow = new UmbAuthFlow(serverUrl, this.getRedirectUrl(), this.getPostLogoutRedirectUrl());
51
58
  // Observe the authorization signal and close the auth window
52
59
  this.observe(this.authorizationSignal, () => {
53
60
  // Update the authorization state
@@ -68,7 +75,7 @@ export class UmbAuthContext extends UmbContextBase {
68
75
  // Refresh the local storage state into memory
69
76
  await this.setInitialState();
70
77
  // Let any auth listeners (such as the auth modal) know that the auth state has changed
71
- this.authorizationSignal.next();
78
+ this.#authFlow.authorizationSignal.next();
72
79
  }
73
80
  }
74
81
  /**