@umbraco-cms/backoffice 16.0.0-rc → 16.0.0-rc2

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 (323) hide show
  1. package/dist-cms/apps/preview/apps/manifests.js +7 -0
  2. package/dist-cms/apps/preview/apps/preview-segment.element.d.ts +16 -0
  3. package/dist-cms/apps/preview/apps/preview-segment.element.js +96 -0
  4. package/dist-cms/apps/preview/preview.context.d.ts +9 -6
  5. package/dist-cms/apps/preview/preview.context.js +61 -24
  6. package/dist-cms/assets/lang/{da-dk.js → da.js} +3 -2
  7. package/dist-cms/assets/lang/{da-dk.ts → da.ts} +3 -2
  8. package/dist-cms/assets/lang/en-us.js +19 -2354
  9. package/dist-cms/assets/lang/en-us.ts +22 -2548
  10. package/dist-cms/assets/lang/en.js +244 -198
  11. package/dist-cms/assets/lang/en.ts +250 -216
  12. package/dist-cms/assets/lang/pt-br.d.ts +2 -2
  13. package/dist-cms/assets/lang/pt-br.ts +2 -2
  14. package/dist-cms/assets/lang/pt.d.ts +13 -0
  15. package/dist-cms/assets/lang/pt.js +1 -0
  16. package/dist-cms/assets/lang/pt.ts +12 -0
  17. package/dist-cms/custom-elements.json +36 -16
  18. package/dist-cms/libs/observable-api/states/array-state.d.ts +6 -6
  19. package/dist-cms/libs/observable-api/states/array-state.js +3 -3
  20. package/dist-cms/packages/block/block-grid/components/block-grid-entry/block-grid-entry.element.js +6 -0
  21. package/dist-cms/packages/block/block-grid/property-editors/block-grid-area-type-permission/block-grid-area-type-permission.element.d.ts +2 -3
  22. package/dist-cms/packages/block/block-grid/property-editors/block-grid-area-type-permission/block-grid-area-type-permission.element.js +8 -3
  23. package/dist-cms/packages/block/block-list/components/block-list-entry/block-list-entry.element.js +6 -0
  24. package/dist-cms/packages/block/block-rte/components/block-rte-entry/block-rte-entry.element.js +7 -0
  25. package/dist-cms/packages/block/block-type/components/input-block-type/input-block-type.element.js +6 -0
  26. package/dist-cms/packages/clipboard/clipboard-entry/picker/clipboard-entry-picker.element.js +1 -1
  27. package/dist-cms/packages/content/content/workspace/content-detail-workspace-base.d.ts +8 -2
  28. package/dist-cms/packages/content/content/workspace/content-detail-workspace-base.js +16 -13
  29. package/dist-cms/packages/content/content-type/global-components/content-type-workspace-editor-header.element.js +4 -1
  30. package/dist-cms/packages/content/content-type/modals/composition-picker/composition-picker-modal.element.d.ts +1 -0
  31. package/dist-cms/packages/content/content-type/modals/composition-picker/composition-picker-modal.element.js +18 -2
  32. package/dist-cms/packages/content/content-type/modals/composition-picker/composition-picker-modal.token.d.ts +1 -0
  33. package/dist-cms/packages/content/content-type/structure/content-type-structure-manager.class.d.ts +21 -3
  34. package/dist-cms/packages/content/content-type/structure/content-type-structure-manager.class.js +62 -43
  35. package/dist-cms/packages/content/content-type/workspace/content-type-workspace-context-base.js +1 -1
  36. package/dist-cms/packages/content/content-type/workspace/views/design/content-type-design-editor-properties.element.js +36 -3
  37. package/dist-cms/packages/content/content-type/workspace/views/design/content-type-design-editor-tab.element.js +25 -1
  38. package/dist-cms/packages/content/content-type/workspace/views/design/content-type-design-editor.element.js +17 -6
  39. package/dist-cms/packages/core/auth/auth.context.js +1 -1
  40. package/dist-cms/packages/core/auth/modals/umb-app-auth-modal.element.js +5 -5
  41. package/dist-cms/packages/core/collection/default/collection-default.context.d.ts +1 -0
  42. package/dist-cms/packages/core/collection/default/collection-default.context.js +19 -1
  43. package/dist-cms/packages/core/collection/default/collection-default.element.d.ts +1 -0
  44. package/dist-cms/packages/core/collection/default/collection-default.element.js +9 -1
  45. package/dist-cms/packages/core/collection/extensions/collection.extension.d.ts +1 -0
  46. package/dist-cms/packages/core/collection/types.d.ts +1 -0
  47. package/dist-cms/packages/core/components/body-layout/body-layout.element.js +7 -8
  48. package/dist-cms/packages/core/components/dropdown/dropdown.element.d.ts +4 -2
  49. package/dist-cms/packages/core/components/dropdown/dropdown.element.js +19 -13
  50. package/dist-cms/packages/core/components/entity-actions-bundle/entity-actions-bundle.element.d.ts +1 -1
  51. package/dist-cms/packages/core/components/entity-actions-bundle/entity-actions-bundle.element.js +12 -11
  52. package/dist-cms/packages/core/culture/manifests.d.ts +1 -1
  53. package/dist-cms/packages/core/entity/constants.d.ts +1 -0
  54. package/dist-cms/packages/core/entity/constants.js +1 -0
  55. package/dist-cms/packages/core/entity/contexts/parent/constants.d.ts +1 -0
  56. package/dist-cms/packages/core/entity/contexts/parent/constants.js +1 -0
  57. package/dist-cms/packages/core/entity/contexts/parent/index.d.ts +1 -0
  58. package/dist-cms/packages/core/entity/contexts/parent/index.js +1 -0
  59. package/dist-cms/packages/core/entity/contexts/parent/parent.entity-context-token.d.ts +3 -0
  60. package/dist-cms/packages/core/entity/contexts/parent/parent.entity-context-token.js +2 -0
  61. package/dist-cms/packages/core/entity/contexts/parent/parent.entity-context.d.ts +26 -0
  62. package/dist-cms/packages/core/entity/contexts/parent/parent.entity-context.js +33 -0
  63. package/dist-cms/packages/core/entity/index.d.ts +1 -0
  64. package/dist-cms/packages/core/entity/index.js +1 -0
  65. package/dist-cms/packages/core/entity-action/default/entity-action.element.d.ts +2 -1
  66. package/dist-cms/packages/core/entity-action/default/entity-action.element.js +5 -4
  67. package/dist-cms/packages/core/entity-action/global-components/entity-actions-table-column-view/entity-actions-table-column-view.element.d.ts +2 -2
  68. package/dist-cms/packages/core/entity-action/global-components/entity-actions-table-column-view/entity-actions-table-column-view.element.js +4 -1
  69. package/dist-cms/packages/core/entity-item/index.d.ts +1 -0
  70. package/dist-cms/packages/core/entity-item/index.js +1 -0
  71. package/dist-cms/packages/core/entity-item/item-data-api-get-request-controller/index.d.ts +1 -0
  72. package/dist-cms/packages/core/entity-item/item-data-api-get-request-controller/index.js +1 -0
  73. package/dist-cms/packages/core/entity-item/item-data-api-get-request-controller/item-data-api-get-request.controller.d.ts +12 -0
  74. package/dist-cms/packages/core/entity-item/item-data-api-get-request-controller/item-data-api-get-request.controller.js +46 -0
  75. package/dist-cms/packages/core/entity-item/item-data-api-get-request-controller/types.d.ts +7 -0
  76. package/dist-cms/packages/core/entity-item/item-data-api-get-request-controller/types.js +1 -0
  77. package/dist-cms/packages/core/entity-item/types.d.ts +1 -0
  78. package/dist-cms/packages/core/localization/components/ui-culture-input/ui-culture-input.element.d.ts +5 -6
  79. package/dist-cms/packages/core/localization/components/ui-culture-input/ui-culture-input.element.js +57 -39
  80. package/dist-cms/packages/core/localization/manifests.js +99 -119
  81. package/dist-cms/packages/core/menu/components/menu-item-layout/menu-item-layout.element.js +8 -3
  82. package/dist-cms/packages/core/menu/index.d.ts +2 -0
  83. package/dist-cms/packages/core/menu/index.js +2 -0
  84. package/dist-cms/packages/core/menu/menu-structure-workspace-context.context-token.d.ts +3 -0
  85. package/dist-cms/packages/core/menu/menu-structure-workspace-context.context-token.js +2 -0
  86. package/dist-cms/packages/core/menu/menu-tree-structure-workspace-context-base.d.ts +3 -0
  87. package/dist-cms/packages/core/menu/menu-tree-structure-workspace-context-base.js +53 -10
  88. package/dist-cms/packages/core/menu/menu-variant-structure-workspace-context.context-token.d.ts +3 -0
  89. package/dist-cms/packages/core/menu/menu-variant-structure-workspace-context.context-token.js +2 -0
  90. package/dist-cms/packages/core/menu/menu-variant-structure-workspace-context.interface.d.ts +6 -0
  91. package/dist-cms/packages/core/menu/menu-variant-structure-workspace-context.interface.js +1 -0
  92. package/dist-cms/packages/core/menu/menu-variant-tree-structure-workspace-context-base.d.ts +4 -0
  93. package/dist-cms/packages/core/menu/menu-variant-tree-structure-workspace-context-base.js +55 -21
  94. package/dist-cms/packages/core/menu/section-sidebar-menu-with-entity-actions/section-sidebar-menu-with-entity-actions.element.d.ts +5 -0
  95. package/dist-cms/packages/core/menu/section-sidebar-menu-with-entity-actions/section-sidebar-menu-with-entity-actions.element.js +22 -3
  96. package/dist-cms/packages/core/picker/search/picker-search-result.element.d.ts +3 -0
  97. package/dist-cms/packages/core/picker/search/picker-search-result.element.js +14 -6
  98. package/dist-cms/packages/core/picker/search/result-item/default/default-picker-search-result-item.element.js +2 -1
  99. package/dist-cms/packages/core/picker/search/result-item/picker-search-result-item-element-base.d.ts +1 -0
  100. package/dist-cms/packages/core/picker/search/result-item/picker-search-result-item-element-base.js +5 -1
  101. package/dist-cms/packages/core/property/manifests.d.ts +1 -1
  102. package/dist-cms/packages/core/property-action/components/property-action-menu/property-action-menu.element.js +6 -1
  103. package/dist-cms/packages/core/repository/item/item-server-data-source-base.d.ts +5 -6
  104. package/dist-cms/packages/core/repository/item/item-server-data-source-base.js +14 -9
  105. package/dist-cms/packages/core/repository/repository-details.manager.d.ts +1 -1
  106. package/dist-cms/packages/core/repository/repository-details.manager.js +6 -3
  107. package/dist-cms/packages/core/resources/api-interceptor.controller.d.ts +6 -0
  108. package/dist-cms/packages/core/resources/api-interceptor.controller.js +16 -0
  109. package/dist-cms/packages/core/resources/data-api/types.d.ts +7 -0
  110. package/dist-cms/packages/core/resources/data-api/types.js +1 -0
  111. package/dist-cms/packages/core/resources/index.d.ts +4 -7
  112. package/dist-cms/packages/core/resources/index.js +4 -7
  113. package/dist-cms/packages/core/resources/try-execute/batch-try-execute.function.d.ts +9 -0
  114. package/dist-cms/packages/core/resources/try-execute/batch-try-execute.function.js +11 -0
  115. package/dist-cms/packages/core/resources/try-execute/index.d.ts +5 -0
  116. package/dist-cms/packages/core/resources/try-execute/index.js +5 -0
  117. package/dist-cms/packages/core/resources/{try-execute.controller.d.ts → try-execute/try-execute.controller.d.ts} +2 -2
  118. package/dist-cms/packages/core/resources/{try-execute.controller.js → try-execute/try-execute.controller.js} +3 -3
  119. package/dist-cms/packages/core/resources/{tryExecute.function.d.ts → try-execute/tryExecute.function.d.ts} +1 -1
  120. package/dist-cms/packages/core/resources/{tryExecuteAndNotify.function.d.ts → try-execute/tryExecuteAndNotify.function.d.ts} +1 -1
  121. package/dist-cms/packages/core/resources/{tryXhrRequest.function.d.ts → try-execute/tryXhrRequest.function.d.ts} +1 -1
  122. package/dist-cms/packages/core/resources/{tryXhrRequest.function.js → try-execute/tryXhrRequest.function.js} +3 -3
  123. package/dist-cms/packages/core/resources/types.d.ts +1 -0
  124. package/dist-cms/packages/core/sorter/sorter.controller.d.ts +23 -6
  125. package/dist-cms/packages/core/sorter/sorter.controller.js +224 -81
  126. package/dist-cms/packages/core/temporary-file/manifests.d.ts +1 -1
  127. package/dist-cms/packages/core/themes/manifests.d.ts +1 -1
  128. package/dist-cms/packages/core/tree/tree-item/tree-item-base/tree-item-context-base.d.ts +1 -1
  129. package/dist-cms/packages/core/tree/tree-item/tree-item-base/tree-item-context-base.js +17 -3
  130. package/dist-cms/packages/core/tree/tree-item/tree-item-base/tree-item-element-base.d.ts +1 -0
  131. package/dist-cms/packages/core/tree/tree-item/tree-item-base/tree-item-element-base.js +7 -4
  132. package/dist-cms/packages/core/tree/tree-picker-modal/tree-picker-modal.element.js +1 -1
  133. package/dist-cms/packages/core/utils/array/batch-array.d.ts +7 -0
  134. package/dist-cms/packages/core/utils/array/batch-array.js +13 -0
  135. package/dist-cms/packages/core/utils/array/index.d.ts +1 -0
  136. package/dist-cms/packages/core/utils/array/index.js +1 -0
  137. package/dist-cms/packages/core/utils/index.d.ts +1 -0
  138. package/dist-cms/packages/core/utils/index.js +1 -0
  139. package/dist-cms/packages/core/workspace/components/workspace-action/common/index.d.ts +1 -0
  140. package/dist-cms/packages/core/workspace/components/workspace-action/common/index.js +1 -0
  141. package/dist-cms/packages/core/workspace/components/workspace-action/common/save/index.d.ts +2 -0
  142. package/dist-cms/packages/core/workspace/components/workspace-action/common/save/index.js +1 -0
  143. package/dist-cms/packages/core/workspace/components/workspace-action/common/save/save.action.d.ts +13 -0
  144. package/dist-cms/packages/core/workspace/components/workspace-action/common/save/save.action.js +31 -0
  145. package/dist-cms/packages/core/workspace/components/workspace-action/common/save/types.d.ts +6 -0
  146. package/dist-cms/packages/core/workspace/components/workspace-action/common/save/types.js +1 -0
  147. package/dist-cms/packages/core/workspace/components/workspace-action/common/submit/submit.action.d.ts +0 -1
  148. package/dist-cms/packages/core/workspace/components/workspace-action/common/submit/submit.action.js +0 -4
  149. package/dist-cms/packages/core/workspace/components/workspace-breadcrumb/workspace-menu-breadcrumb/workspace-menu-breadcrumb.element.d.ts +1 -1
  150. package/dist-cms/packages/core/workspace/components/workspace-breadcrumb/workspace-menu-breadcrumb/workspace-menu-breadcrumb.element.js +3 -6
  151. package/dist-cms/packages/core/workspace/components/workspace-breadcrumb/workspace-variant-menu-breadcrumb/workspace-variant-menu-breadcrumb.element.d.ts +1 -1
  152. package/dist-cms/packages/core/workspace/components/workspace-breadcrumb/workspace-variant-menu-breadcrumb/workspace-variant-menu-breadcrumb.element.js +3 -5
  153. package/dist-cms/packages/core/workspace/components/workspace-editor/workspace-editor.element.js +1 -2
  154. package/dist-cms/packages/core/workspace/components/workspace-entity-action-menu/workspace-entity-action-menu.element.js +3 -3
  155. package/dist-cms/packages/core/workspace/components/workspace-split-view/workspace-split-view-variant-selector.element.js +1 -0
  156. package/dist-cms/packages/core/workspace/contexts/tokens/index.d.ts +5 -1
  157. package/dist-cms/packages/core/workspace/contexts/tokens/index.js +2 -0
  158. package/dist-cms/packages/core/workspace/contexts/tokens/saveable-workspace-context.interface.d.ts +4 -0
  159. package/dist-cms/packages/core/workspace/contexts/tokens/saveable-workspace-context.interface.js +1 -0
  160. package/dist-cms/packages/core/workspace/contexts/tokens/saveable-workspace.context-token.d.ts +4 -0
  161. package/dist-cms/packages/core/workspace/contexts/tokens/saveable-workspace.context-token.js +2 -0
  162. package/dist-cms/packages/core/workspace/contexts/tokens/submittable-tree-entity-workspace-context.interface.d.ts +36 -0
  163. package/dist-cms/packages/core/workspace/contexts/tokens/submittable-tree-entity-workspace-context.interface.js +1 -0
  164. package/dist-cms/packages/core/workspace/contexts/tokens/submittable-tree-entity-workspace.context-token.d.ts +4 -0
  165. package/dist-cms/packages/core/workspace/contexts/tokens/submittable-tree-entity-workspace.context-token.js +2 -0
  166. package/dist-cms/packages/core/workspace/entity-detail/entity-detail-workspace-base.d.ts +33 -1
  167. package/dist-cms/packages/core/workspace/entity-detail/entity-detail-workspace-base.js +46 -9
  168. package/dist-cms/packages/core/workspace/submittable/submittable-workspace-context-base.d.ts +1 -0
  169. package/dist-cms/packages/core/workspace/submittable/submittable-workspace-context-base.js +8 -3
  170. package/dist-cms/packages/data-type/modals/data-type-picker-flow/data-type-picker-flow-data-type-picker-modal.element.js +1 -1
  171. package/dist-cms/packages/data-type/repository/item/data-type-item.server.data-source.d.ts +4 -0
  172. package/dist-cms/packages/data-type/repository/item/data-type-item.server.data-source.js +12 -3
  173. package/dist-cms/packages/data-type/tree/tree-item-children/collection/views/data-type-tree-item-table-collection-view.element.js +1 -0
  174. package/dist-cms/packages/dictionary/repository/item/dictionary-item.server.data-source.d.ts +4 -0
  175. package/dist-cms/packages/dictionary/repository/item/dictionary-item.server.data-source.js +12 -3
  176. package/dist-cms/packages/documents/document-blueprints/entity-actions/create/manifests.js +1 -1
  177. package/dist-cms/packages/documents/document-blueprints/repository/item/document-blueprint-item.server.data-source.d.ts +4 -1
  178. package/dist-cms/packages/documents/document-blueprints/repository/item/document-blueprint-item.server.data-source.js +13 -6
  179. package/dist-cms/packages/documents/document-types/components/input-document-type/input-document-type.element.js +4 -1
  180. package/dist-cms/packages/documents/document-types/picker/document-type-picker-search-result-item.element.js +2 -1
  181. package/dist-cms/packages/documents/document-types/repository/item/document-type-item.server.data-source.d.ts +4 -0
  182. package/dist-cms/packages/documents/document-types/repository/item/document-type-item.server.data-source.js +13 -3
  183. package/dist-cms/packages/documents/document-types/tree/tree-item-children/collection/views/document-type-tree-item-table-collection-view.element.js +1 -0
  184. package/dist-cms/packages/documents/documents/collection/views/table/column-layouts/document-entity-actions-table-column-view.element.js +1 -0
  185. package/dist-cms/packages/documents/documents/entity-actions/duplicate/repository/document-duplicate.server.data-source.js +1 -1
  186. package/dist-cms/packages/documents/documents/entity-actions/move-to/repository/document-move.server.data-source.js +1 -1
  187. package/dist-cms/packages/documents/documents/item/repository/document-item.server.data-source.d.ts +4 -0
  188. package/dist-cms/packages/documents/documents/item/repository/document-item.server.data-source.js +12 -3
  189. package/dist-cms/packages/documents/documents/modals/save-modal/document-save-modal.element.js +1 -5
  190. package/dist-cms/packages/documents/documents/picker/document-picker-search-result-item.element.js +2 -1
  191. package/dist-cms/packages/documents/documents/property-dataset-context/document-property-dataset.context.d.ts +5 -1
  192. package/dist-cms/packages/documents/documents/property-dataset-context/document-property-dataset.context.js +45 -0
  193. package/dist-cms/packages/documents/documents/publishing/publish/modal/document-publish-modal.element.js +9 -13
  194. package/dist-cms/packages/documents/documents/publishing/publish/modal/document-publish-modal.token.d.ts +1 -0
  195. package/dist-cms/packages/documents/documents/publishing/schedule-publish/modal/document-schedule-modal.element.js +0 -10
  196. package/dist-cms/packages/documents/documents/publishing/unpublish/entity-action/unpublish.action.js +5 -19
  197. package/dist-cms/packages/documents/documents/publishing/unpublish/modal/document-unpublish-modal.element.js +3 -12
  198. package/dist-cms/packages/documents/documents/publishing/workspace-context/document-publishing.workspace-context.js +3 -7
  199. package/dist-cms/packages/documents/documents/url/repository/document-url.server.data-source.d.ts +4 -0
  200. package/dist-cms/packages/documents/documents/url/repository/document-url.server.data-source.js +13 -3
  201. package/dist-cms/packages/documents/documents/workspace/actions/save.action.d.ts +3 -3
  202. package/dist-cms/packages/documents/documents/workspace/actions/save.action.js +2 -2
  203. package/dist-cms/packages/documents/documents/workspace/document-workspace.context-token.d.ts +2 -2
  204. package/dist-cms/packages/documents/documents/workspace/document-workspace.context.d.ts +1 -5
  205. package/dist-cms/packages/documents/documents/workspace/document-workspace.context.js +18 -61
  206. package/dist-cms/packages/extension-insights/collection/views/table/extension-table-collection-view.element.js +1 -0
  207. package/dist-cms/packages/language/app-language-select/app-language-select.element.js +7 -2
  208. package/dist-cms/packages/language/collection/views/table/language-table-collection-view.element.js +1 -0
  209. package/dist-cms/packages/language/menu/language-menu-structure.context.d.ts +1 -1
  210. package/dist-cms/packages/language/menu/language-menu-structure.context.js +4 -2
  211. package/dist-cms/packages/language/repository/item/language-item.server.data-source.d.ts +4 -0
  212. package/dist-cms/packages/language/repository/item/language-item.server.data-source.js +12 -3
  213. package/dist-cms/packages/media/media/collection/media-collection.element.js +1 -0
  214. package/dist-cms/packages/media/media/collection/views/table/media-table-collection-view.element.js +1 -0
  215. package/dist-cms/packages/media/media/repository/item/media-item.server.data-source.d.ts +4 -1
  216. package/dist-cms/packages/media/media/repository/item/media-item.server.data-source.js +13 -6
  217. package/dist-cms/packages/media/media/url/repository/media-url.server.data-source.d.ts +4 -0
  218. package/dist-cms/packages/media/media/url/repository/media-url.server.data-source.js +12 -3
  219. package/dist-cms/packages/media/media-types/repository/item/media-type-item.server.data-source.d.ts +4 -0
  220. package/dist-cms/packages/media/media-types/repository/item/media-type-item.server.data-source.js +12 -3
  221. package/dist-cms/packages/media/media-types/tree/tree-item-children/collection/views/media-type-tree-item-table-collection-view.element.js +1 -0
  222. package/dist-cms/packages/members/member/collection/views/table/member-table-collection-view.element.js +1 -0
  223. package/dist-cms/packages/members/member/item/repository/member-item.server.data-source.d.ts +4 -0
  224. package/dist-cms/packages/members/member/item/repository/member-item.server.data-source.js +12 -3
  225. package/dist-cms/packages/members/member/picker/member-picker-search-result-item.element.js +2 -1
  226. package/dist-cms/packages/members/member-group/collection/views/table/member-group-table-collection-view.element.js +1 -0
  227. package/dist-cms/packages/members/member-group/repository/item/member-group-item.server.data-source.d.ts +4 -0
  228. package/dist-cms/packages/members/member-group/repository/item/member-group-item.server.data-source.js +12 -3
  229. package/dist-cms/packages/members/member-type/repository/item/member-type-item.server.data-source.d.ts +4 -0
  230. package/dist-cms/packages/members/member-type/repository/item/member-type-item.server.data-source.js +12 -3
  231. package/dist-cms/packages/multi-url-picker/link-picker-modal/link-picker-modal.element.d.ts +1 -0
  232. package/dist-cms/packages/multi-url-picker/link-picker-modal/link-picker-modal.element.js +37 -8
  233. package/dist-cms/packages/packages/package-section/views/installed/installed-packages-section-view-item.element.js +1 -1
  234. package/dist-cms/packages/static-file/repository/item/static-file-item.server.data-source.d.ts +4 -0
  235. package/dist-cms/packages/static-file/repository/item/static-file-item.server.data-source.js +14 -7
  236. package/dist-cms/packages/templating/templates/repository/item/template-item.server.data-source.d.ts +4 -0
  237. package/dist-cms/packages/templating/templates/repository/item/template-item.server.data-source.js +12 -3
  238. package/dist-cms/packages/user/user/collection/views/table/user-table-collection-view.element.js +1 -0
  239. package/dist-cms/packages/user/user/repository/item/user-item.server.data-source.d.ts +4 -0
  240. package/dist-cms/packages/user/user/repository/item/user-item.server.data-source.js +12 -3
  241. package/dist-cms/packages/user/user/workspace/user/components/user-workspace-profile-settings/user-workspace-profile-settings.element.js +25 -22
  242. package/dist-cms/packages/user/user-group/collection/views/user-group-table-collection-view.element.js +1 -0
  243. package/dist-cms/packages/user/user-group/repository/item/user-group-item.server.data-source.d.ts +4 -0
  244. package/dist-cms/packages/user/user-group/repository/item/user-group-item.server.data-source.js +12 -3
  245. package/dist-cms/packages/webhook/webhook/collection/views/table/webhook-table-collection-view.element.js +1 -0
  246. package/dist-cms/packages/webhook/webhook/repository/item/webhook-item.server.data-source.d.ts +4 -0
  247. package/dist-cms/packages/webhook/webhook/repository/item/webhook-item.server.data-source.js +12 -3
  248. package/dist-cms/packages/webhook/webhook/workspace/webhook-workspace-editor.element.js +2 -0
  249. package/dist-cms/tsconfig.build.tsbuildinfo +1 -1
  250. package/dist-cms/umbraco-package-schema.json +151 -0
  251. package/dist-cms/umbraco-package.json +1 -1
  252. package/dist-cms/vscode-html-custom-data.json +23 -12
  253. package/examples/block-custom-view/block-custom-view.ts +8 -0
  254. package/package.json +1 -1
  255. package/dist-cms/assets/lang/de-ch.d.ts +0 -3
  256. package/dist-cms/assets/lang/de-ch.js +0 -15
  257. package/dist-cms/assets/lang/de-ch.ts +0 -17
  258. package/dist-cms/assets/lang/fr-ch.d.ts +0 -3
  259. package/dist-cms/assets/lang/fr-ch.js +0 -15
  260. package/dist-cms/assets/lang/fr-ch.ts +0 -17
  261. package/dist-cms/assets/lang/it-ch.d.ts +0 -3
  262. package/dist-cms/assets/lang/it-ch.js +0 -15
  263. package/dist-cms/assets/lang/it-ch.ts +0 -17
  264. /package/dist-cms/assets/lang/{cs-cz.d.ts → cs.d.ts} +0 -0
  265. /package/dist-cms/assets/lang/{cs-cz.js → cs.js} +0 -0
  266. /package/dist-cms/assets/lang/{cs-cz.ts → cs.ts} +0 -0
  267. /package/dist-cms/assets/lang/{cy-gb.d.ts → cy.d.ts} +0 -0
  268. /package/dist-cms/assets/lang/{cy-gb.js → cy.js} +0 -0
  269. /package/dist-cms/assets/lang/{cy-gb.ts → cy.ts} +0 -0
  270. /package/dist-cms/assets/lang/{da-dk.d.ts → da.d.ts} +0 -0
  271. /package/dist-cms/assets/lang/{de-de.d.ts → de.d.ts} +0 -0
  272. /package/dist-cms/assets/lang/{de-de.js → de.js} +0 -0
  273. /package/dist-cms/assets/lang/{de-de.ts → de.ts} +0 -0
  274. /package/dist-cms/assets/lang/{es-es.d.ts → es.d.ts} +0 -0
  275. /package/dist-cms/assets/lang/{es-es.js → es.js} +0 -0
  276. /package/dist-cms/assets/lang/{es-es.ts → es.ts} +0 -0
  277. /package/dist-cms/assets/lang/{fr-fr.d.ts → fr.d.ts} +0 -0
  278. /package/dist-cms/assets/lang/{fr-fr.js → fr.js} +0 -0
  279. /package/dist-cms/assets/lang/{fr-fr.ts → fr.ts} +0 -0
  280. /package/dist-cms/assets/lang/{he-il.d.ts → he.d.ts} +0 -0
  281. /package/dist-cms/assets/lang/{he-il.js → he.js} +0 -0
  282. /package/dist-cms/assets/lang/{he-il.ts → he.ts} +0 -0
  283. /package/dist-cms/assets/lang/{hr-hr.d.ts → hr.d.ts} +0 -0
  284. /package/dist-cms/assets/lang/{hr-hr.js → hr.js} +0 -0
  285. /package/dist-cms/assets/lang/{hr-hr.ts → hr.ts} +0 -0
  286. /package/dist-cms/assets/lang/{it-it.d.ts → it.d.ts} +0 -0
  287. /package/dist-cms/assets/lang/{it-it.js → it.js} +0 -0
  288. /package/dist-cms/assets/lang/{it-it.ts → it.ts} +0 -0
  289. /package/dist-cms/assets/lang/{ja-jp.d.ts → ja.d.ts} +0 -0
  290. /package/dist-cms/assets/lang/{ja-jp.js → ja.js} +0 -0
  291. /package/dist-cms/assets/lang/{ja-jp.ts → ja.ts} +0 -0
  292. /package/dist-cms/assets/lang/{ko-kr.d.ts → ko.d.ts} +0 -0
  293. /package/dist-cms/assets/lang/{ko-kr.js → ko.js} +0 -0
  294. /package/dist-cms/assets/lang/{ko-kr.ts → ko.ts} +0 -0
  295. /package/dist-cms/assets/lang/{nb-no.d.ts → nb.d.ts} +0 -0
  296. /package/dist-cms/assets/lang/{nb-no.js → nb.js} +0 -0
  297. /package/dist-cms/assets/lang/{nb-no.ts → nb.ts} +0 -0
  298. /package/dist-cms/assets/lang/{nl-nl.d.ts → nl.d.ts} +0 -0
  299. /package/dist-cms/assets/lang/{nl-nl.js → nl.js} +0 -0
  300. /package/dist-cms/assets/lang/{nl-nl.ts → nl.ts} +0 -0
  301. /package/dist-cms/assets/lang/{pl-pl.d.ts → pl.d.ts} +0 -0
  302. /package/dist-cms/assets/lang/{pl-pl.js → pl.js} +0 -0
  303. /package/dist-cms/assets/lang/{pl-pl.ts → pl.ts} +0 -0
  304. /package/dist-cms/assets/lang/{ro-ro.d.ts → ro.d.ts} +0 -0
  305. /package/dist-cms/assets/lang/{ro-ro.js → ro.js} +0 -0
  306. /package/dist-cms/assets/lang/{ro-ro.ts → ro.ts} +0 -0
  307. /package/dist-cms/assets/lang/{ru-ru.d.ts → ru.d.ts} +0 -0
  308. /package/dist-cms/assets/lang/{ru-ru.js → ru.js} +0 -0
  309. /package/dist-cms/assets/lang/{ru-ru.ts → ru.ts} +0 -0
  310. /package/dist-cms/assets/lang/{sv-se.d.ts → sv.d.ts} +0 -0
  311. /package/dist-cms/assets/lang/{sv-se.js → sv.js} +0 -0
  312. /package/dist-cms/assets/lang/{sv-se.ts → sv.ts} +0 -0
  313. /package/dist-cms/assets/lang/{tr-tr.d.ts → tr.d.ts} +0 -0
  314. /package/dist-cms/assets/lang/{tr-tr.js → tr.js} +0 -0
  315. /package/dist-cms/assets/lang/{tr-tr.ts → tr.ts} +0 -0
  316. /package/dist-cms/assets/lang/{uk-ua.d.ts → uk.d.ts} +0 -0
  317. /package/dist-cms/assets/lang/{uk-ua.js → uk.js} +0 -0
  318. /package/dist-cms/assets/lang/{uk-ua.ts → uk.ts} +0 -0
  319. /package/dist-cms/assets/lang/{zh-cn.d.ts → zh.d.ts} +0 -0
  320. /package/dist-cms/assets/lang/{zh-cn.js → zh.js} +0 -0
  321. /package/dist-cms/assets/lang/{zh-cn.ts → zh.ts} +0 -0
  322. /package/dist-cms/packages/core/resources/{tryExecute.function.js → try-execute/tryExecute.function.js} +0 -0
  323. /package/dist-cms/packages/core/resources/{tryExecuteAndNotify.function.js → try-execute/tryExecuteAndNotify.function.js} +0 -0
@@ -3,8 +3,8 @@
3
3
  * Creator Link: https://docs.umbraco.com/umbraco-cms/extending/language-files
4
4
  *
5
5
  * Language Alias: pt
6
- * Language Int Name: Portuguese (BR)
7
- * Language Local Name: português (BR)
6
+ * Language Int Name: Portuguese (Brazil)
7
+ * Language Local Name: Português ()
8
8
  * Language LCID:
9
9
  * Language Culture: pt-BR
10
10
  */
@@ -3,8 +3,8 @@
3
3
  * Creator Link: https://docs.umbraco.com/umbraco-cms/extending/language-files
4
4
  *
5
5
  * Language Alias: pt
6
- * Language Int Name: Portuguese (BR)
7
- * Language Local Name: português (BR)
6
+ * Language Int Name: Portuguese (Brazil)
7
+ * Language Local Name: Português ()
8
8
  * Language LCID:
9
9
  * Language Culture: pt-BR
10
10
  */
@@ -0,0 +1,13 @@
1
+ /**
2
+ * Creator Name: The Umbraco community
3
+ * Creator Link: https://docs.umbraco.com/umbraco-cms/extending/language-files
4
+ *
5
+ * Language Alias: pt
6
+ * Language Int Name: Portuguese
7
+ * Language Local Name: Português
8
+ * Language LCID:
9
+ * Language Culture: pt-PT
10
+ */
11
+ import type { UmbLocalizationDictionary } from '@umbraco-cms/backoffice/localization-api';
12
+ declare const _default: UmbLocalizationDictionary;
13
+ export default _default;
@@ -0,0 +1 @@
1
+ export default {};
@@ -0,0 +1,12 @@
1
+ /**
2
+ * Creator Name: The Umbraco community
3
+ * Creator Link: https://docs.umbraco.com/umbraco-cms/extending/language-files
4
+ *
5
+ * Language Alias: pt
6
+ * Language Int Name: Portuguese
7
+ * Language Local Name: Português
8
+ * Language LCID:
9
+ * Language Culture: pt-PT
10
+ */
11
+ import type { UmbLocalizationDictionary } from '@umbraco-cms/backoffice/localization-api';
12
+ export default {} as UmbLocalizationDictionary;
@@ -531,6 +531,17 @@
531
531
  }
532
532
  ]
533
533
  },
534
+ {
535
+ "name": "umb-preview-segment",
536
+ "path": "./../src/apps/preview/apps/preview-segment.element.ts",
537
+ "properties": [
538
+ {
539
+ "name": "styles",
540
+ "type": "array",
541
+ "default": "[null]"
542
+ }
543
+ ]
544
+ },
534
545
  {
535
546
  "name": "umb-preview",
536
547
  "path": "./../src/apps/preview/preview.element.ts",
@@ -2632,8 +2643,7 @@
2632
2643
  },
2633
2644
  {
2634
2645
  "name": "label",
2635
- "type": "string",
2636
- "default": "\"\""
2646
+ "type": "string | undefined"
2637
2647
  },
2638
2648
  {
2639
2649
  "name": "look",
@@ -2662,9 +2672,6 @@
2662
2672
  }
2663
2673
  ],
2664
2674
  "properties": [
2665
- {
2666
- "name": "popoverContainerElement"
2667
- },
2668
2675
  {
2669
2676
  "name": "open",
2670
2677
  "attribute": "open",
@@ -2674,8 +2681,7 @@
2674
2681
  {
2675
2682
  "name": "label",
2676
2683
  "attribute": "label",
2677
- "type": "string",
2678
- "default": "\"\""
2684
+ "type": "string | undefined"
2679
2685
  },
2680
2686
  {
2681
2687
  "name": "look",
@@ -2707,6 +2713,9 @@
2707
2713
  "type": "boolean",
2708
2714
  "default": "false"
2709
2715
  },
2716
+ {
2717
+ "name": "popoverContainerElement"
2718
+ },
2710
2719
  {
2711
2720
  "name": "styles",
2712
2721
  "type": "array",
@@ -4536,19 +4545,14 @@
4536
4545
  "attributes": [
4537
4546
  {
4538
4547
  "name": "value",
4539
- "type": "FormDataEntryValue | FormData"
4548
+ "type": "string | undefined"
4540
4549
  }
4541
4550
  ],
4542
4551
  "properties": [
4543
4552
  {
4544
4553
  "name": "value",
4545
4554
  "attribute": "value",
4546
- "type": "FormDataEntryValue | FormData"
4547
- },
4548
- {
4549
- "name": "styles",
4550
- "type": "array",
4551
- "default": "[null]"
4555
+ "type": "string | undefined"
4552
4556
  }
4553
4557
  ]
4554
4558
  },
@@ -5097,7 +5101,14 @@
5097
5101
  },
5098
5102
  {
5099
5103
  "name": "umb-picker-search-result",
5100
- "path": "./../src/packages/core/picker/search/picker-search-result.element.ts"
5104
+ "path": "./../src/packages/core/picker/search/picker-search-result.element.ts",
5105
+ "properties": [
5106
+ {
5107
+ "name": "pickableFilter",
5108
+ "type": "PickableFilterMethodType<UmbEntityModel>",
5109
+ "default": "\"() => true\""
5110
+ }
5111
+ ]
5101
5112
  },
5102
5113
  {
5103
5114
  "name": "umb-default-picker-search-result-item",
@@ -5106,6 +5117,10 @@
5106
5117
  {
5107
5118
  "name": "item",
5108
5119
  "type": "ItemType | undefined"
5120
+ },
5121
+ {
5122
+ "name": "disabled",
5123
+ "type": "boolean | undefined"
5109
5124
  }
5110
5125
  ],
5111
5126
  "properties": [
@@ -5113,6 +5128,11 @@
5113
5128
  "name": "item",
5114
5129
  "attribute": "item",
5115
5130
  "type": "ItemType | undefined"
5131
+ },
5132
+ {
5133
+ "name": "disabled",
5134
+ "attribute": "disabled",
5135
+ "type": "boolean | undefined"
5116
5136
  }
5117
5137
  ]
5118
5138
  },
@@ -15144,7 +15164,7 @@
15144
15164
  {
15145
15165
  "name": "styles",
15146
15166
  "type": "array",
15147
- "default": "[\"UmbTextStyles\",null]"
15167
+ "default": "[null]"
15148
15168
  }
15149
15169
  ]
15150
15170
  },
@@ -53,7 +53,7 @@ export declare class UmbArrayState<T, U = unknown> extends UmbDeepState<T[]> {
53
53
  getHasOne(unique: U): boolean;
54
54
  /**
55
55
  * @function remove
56
- * @param {unknown[]} uniques - The unique values to remove.
56
+ * @param {U[]} uniques - The unique values to remove.
57
57
  * @returns {UmbArrayState<T>} Reference to it self.
58
58
  * @description - Remove some new data of this Subject.
59
59
  * @example <caption>Example remove entry with id '1' and '2'</caption>
@@ -64,10 +64,10 @@ export declare class UmbArrayState<T, U = unknown> extends UmbDeepState<T[]> {
64
64
  * const myState = new UmbArrayState(data, (x) => x.id);
65
65
  * myState.remove([1, 2]);
66
66
  */
67
- remove(uniques: unknown[]): this;
67
+ remove(uniques: U[]): this;
68
68
  /**
69
69
  * @function removeOne
70
- * @param {unknown} unique - The unique value to remove.
70
+ * @param {U} unique - The unique value to remove.
71
71
  * @returns {UmbArrayState<T>} Reference to it self.
72
72
  * @description - Remove some new data of this Subject.
73
73
  * @example <caption>Example remove entry with id '1'</caption>
@@ -78,7 +78,7 @@ export declare class UmbArrayState<T, U = unknown> extends UmbDeepState<T[]> {
78
78
  * const myState = new UmbArrayState(data, (x) => x.id);
79
79
  * myState.removeOne(1);
80
80
  */
81
- removeOne(unique: unknown): this;
81
+ removeOne(unique: U): this;
82
82
  /**
83
83
  * @function filter
84
84
  * @param predicate
@@ -149,7 +149,7 @@ export declare class UmbArrayState<T, U = unknown> extends UmbDeepState<T[]> {
149
149
  append(entries: T[]): this;
150
150
  /**
151
151
  * @function updateOne
152
- * @param {unknown} unique - Unique value to find entry to update.
152
+ * @param {U} unique - Unique value to find entry to update.
153
153
  * @param {Partial<T>} entry - new data to be added in this Subject.
154
154
  * @returns {UmbArrayState<T>} Reference to it self.
155
155
  * @description - Update a item with some new data, requires the ArrayState to be constructed with a getUnique method.
@@ -161,6 +161,6 @@ export declare class UmbArrayState<T, U = unknown> extends UmbDeepState<T[]> {
161
161
  * const myState = new UmbArrayState(data, (x) => x.key);
162
162
  * myState.updateOne(2, {value: 'updated-bar'});
163
163
  */
164
- updateOne(unique: unknown, entry: Partial<T>): this;
164
+ updateOne(unique: U, entry: Partial<T>): this;
165
165
  destroy(): void;
166
166
  }
@@ -79,7 +79,7 @@ export class UmbArrayState extends UmbDeepState {
79
79
  }
80
80
  /**
81
81
  * @function remove
82
- * @param {unknown[]} uniques - The unique values to remove.
82
+ * @param {U[]} uniques - The unique values to remove.
83
83
  * @returns {UmbArrayState<T>} Reference to it self.
84
84
  * @description - Remove some new data of this Subject.
85
85
  * @example <caption>Example remove entry with id '1' and '2'</caption>
@@ -108,7 +108,7 @@ export class UmbArrayState extends UmbDeepState {
108
108
  }
109
109
  /**
110
110
  * @function removeOne
111
- * @param {unknown} unique - The unique value to remove.
111
+ * @param {U} unique - The unique value to remove.
112
112
  * @returns {UmbArrayState<T>} Reference to it self.
113
113
  * @description - Remove some new data of this Subject.
114
114
  * @example <caption>Example remove entry with id '1'</caption>
@@ -244,7 +244,7 @@ export class UmbArrayState extends UmbDeepState {
244
244
  }
245
245
  /**
246
246
  * @function updateOne
247
- * @param {unknown} unique - Unique value to find entry to update.
247
+ * @param {U} unique - Unique value to find entry to update.
248
248
  * @param {Partial<T>} entry - new data to be added in this Subject.
249
249
  * @returns {UmbArrayState<T>} Reference to it self.
250
250
  * @description - Update a item with some new data, requires the ArrayState to be constructed with a getUnique method.
@@ -107,6 +107,7 @@ let UmbBlockGridEntryElement = class UmbBlockGridEntryElement extends UmbLitElem
107
107
  this.#extensionSlotRenderMethod = (ext) => {
108
108
  if (ext.component) {
109
109
  ext.component.classList.add('umb-block-grid__block--view');
110
+ ext.component.setAttribute('part', 'component');
110
111
  }
111
112
  if (this._exposed) {
112
113
  return ext.component;
@@ -441,6 +442,11 @@ let UmbBlockGridEntryElement = class UmbBlockGridEntryElement extends UmbLitElem
441
442
  border-color: var(--uui-color-invalid);
442
443
  }
443
444
 
445
+ umb-extension-slot::part(component) {
446
+ position: relative;
447
+ z-index: 0;
448
+ }
449
+
444
450
  #invalidLocation {
445
451
  position: absolute;
446
452
  top: -1em;
@@ -2,17 +2,16 @@ import type { UmbBlockGridTypeAreaTypePermission } from '../../index.js';
2
2
  import { UmbLitElement } from '@umbraco-cms/backoffice/lit-element';
3
3
  import { nothing } from '@umbraco-cms/backoffice/external/lit';
4
4
  import type { UmbPropertyEditorUiElement } from '@umbraco-cms/backoffice/property-editor';
5
- import type { UmbBlockTypeWithGroupKey } from '@umbraco-cms/backoffice/block-type';
6
5
  export declare class UmbPropertyEditorUIBlockGridAreaTypePermissionElement extends UmbLitElement implements UmbPropertyEditorUiElement {
7
6
  #private;
8
7
  set value(value: Array<UmbBlockGridTypeAreaTypePermission>);
9
8
  get value(): Array<UmbBlockGridTypeAreaTypePermission>;
10
9
  private _value;
11
- _blockTypes: Array<UmbBlockTypeWithGroupKey>;
10
+ private _blockTypes?;
12
11
  private _blockTypesWithElementName;
13
12
  private _blockGroups;
14
13
  constructor();
15
- render(): typeof nothing | import("lit-html").TemplateResult<1>;
14
+ render(): typeof nothing | import("lit-html").TemplateResult<1> | "There must be one Block Type created before permissions can be configured.";
16
15
  static styles: import("lit").CSSResult[];
17
16
  }
18
17
  export default UmbPropertyEditorUIBlockGridAreaTypePermissionElement;
@@ -22,14 +22,13 @@ let UmbPropertyEditorUIBlockGridAreaTypePermissionElement = class UmbPropertyEdi
22
22
  constructor() {
23
23
  super();
24
24
  this._value = [];
25
- this._blockTypes = [];
26
25
  this._blockTypesWithElementName = [];
27
26
  this._blockGroups = [];
28
27
  this.#itemsManager = new UmbRepositoryItemsManager(this, UMB_DOCUMENT_TYPE_ITEM_REPOSITORY_ALIAS);
29
28
  this.observe(this.#itemsManager.items, (items) => {
30
29
  this._blockTypesWithElementName = items
31
30
  .map((item) => {
32
- const blockType = this._blockTypes.find((block) => block.contentElementTypeKey === item.unique);
31
+ const blockType = this._blockTypes?.find((block) => block.contentElementTypeKey === item.unique);
33
32
  if (blockType) {
34
33
  return { type: blockType, name: item.name };
35
34
  }
@@ -82,9 +81,12 @@ let UmbPropertyEditorUIBlockGridAreaTypePermissionElement = class UmbPropertyEdi
82
81
  this.dispatchEvent(new UmbChangeEvent());
83
82
  }
84
83
  render() {
85
- if (this._blockTypesWithElementName.length === 0) {
84
+ if (this._blockTypes === undefined) {
86
85
  return nothing;
87
86
  }
87
+ if (this._blockTypesWithElementName.length === 0) {
88
+ return 'There must be one Block Type created before permissions can be configured.';
89
+ }
88
90
  return html `<div id="permissions">
89
91
  ${repeat(this._value, (permission) => permission, (permission, index) => {
90
92
  const showCategoryHeader = this._blockGroups.length > 0 && this._blockTypesWithElementName.length > 0;
@@ -191,6 +193,9 @@ __decorate([
191
193
  __decorate([
192
194
  state()
193
195
  ], UmbPropertyEditorUIBlockGridAreaTypePermissionElement.prototype, "_value", void 0);
196
+ __decorate([
197
+ state()
198
+ ], UmbPropertyEditorUIBlockGridAreaTypePermissionElement.prototype, "_blockTypes", void 0);
194
199
  __decorate([
195
200
  state()
196
201
  ], UmbPropertyEditorUIBlockGridAreaTypePermissionElement.prototype, "_blockTypesWithElementName", void 0);
@@ -75,6 +75,7 @@ let UmbBlockListEntryElement = class UmbBlockListEntryElement extends UmbLitElem
75
75
  return true;
76
76
  };
77
77
  this.#extensionSlotRenderMethod = (ext) => {
78
+ ext.component?.setAttribute('part', 'component');
78
79
  if (this._exposed) {
79
80
  return ext.component;
80
81
  }
@@ -354,6 +355,11 @@ let UmbBlockListEntryElement = class UmbBlockListEntryElement extends UmbLitElem
354
355
  border-color: var(--uui-color-invalid);
355
356
  }
356
357
 
358
+ umb-extension-slot::part(component) {
359
+ position: relative;
360
+ z-index: 0;
361
+ }
362
+
357
363
  uui-action-bar {
358
364
  position: absolute;
359
365
  top: var(--uui-size-2);
@@ -55,6 +55,7 @@ let UmbBlockRteEntryElement = class UmbBlockRteEntryElement extends UmbLitElemen
55
55
  this.#context.expose();
56
56
  };
57
57
  this.#extensionSlotRenderMethod = (ext) => {
58
+ ext.component?.setAttribute('part', 'component');
58
59
  if (this._exposed) {
59
60
  return ext.component;
60
61
  }
@@ -223,6 +224,12 @@ let UmbBlockRteEntryElement = class UmbBlockRteEntryElement extends UmbLitElemen
223
224
  outline: 3px solid var(--uui-color-focus);
224
225
  }
225
226
  }
227
+
228
+ umb-extension-slot::part(component) {
229
+ position: relative;
230
+ z-index: 0;
231
+ }
232
+
226
233
  uui-action-bar {
227
234
  position: absolute;
228
235
  top: var(--uui-size-2);
@@ -93,6 +93,12 @@ let UmbInputBlockTypeElement = class UmbInputBlockTypeElement extends UmbLitElem
93
93
  presetAlias: 'element',
94
94
  },
95
95
  },
96
+ // TODO: hide the queryParams and filter config under a "elementTypesOnly" field. [MR]
97
+ search: {
98
+ queryParams: {
99
+ isElementType: true,
100
+ },
101
+ },
96
102
  pickableFilter: (docType) =>
97
103
  // Only pick elements:
98
104
  docType.isElement &&
@@ -110,7 +110,7 @@ let UmbClipboardEntryPickerElement = class UmbClipboardEntryPickerElement extend
110
110
  slot="actions"
111
111
  .entityType=${item.entityType}
112
112
  .unique=${item.unique}
113
- .label=${item.name}>
113
+ .label=${this.localize.term('actions_viewActionsFor', [item.name])}>
114
114
  </umb-entity-actions-bundle>
115
115
  `;
116
116
  }
@@ -6,7 +6,7 @@ import type { UmbContentValidationRepository } from '../repository/content-valid
6
6
  import type { UmbContentWorkspaceContext } from './content-workspace-context.interface.js';
7
7
  import type { UmbControllerHost } from '@umbraco-cms/backoffice/controller-api';
8
8
  import type { UmbDetailRepository, UmbDetailRepositoryConstructor } from '@umbraco-cms/backoffice/repository';
9
- import { UmbEntityDetailWorkspaceContextBase, UmbWorkspaceSplitViewManager, type UmbEntityDetailWorkspaceContextArgs, type UmbEntityDetailWorkspaceContextCreateArgs } from '@umbraco-cms/backoffice/workspace';
9
+ import { UmbEntityDetailWorkspaceContextBase, UmbWorkspaceSplitViewManager, type UmbEntityDetailWorkspaceContextArgs, type UmbEntityDetailWorkspaceContextCreateArgs, type UmbSaveableWorkspaceContext } from '@umbraco-cms/backoffice/workspace';
10
10
  import { UmbContentTypeStructureManager, type UmbContentTypeModel, type UmbPropertyTypeModel } from '@umbraco-cms/backoffice/content-type';
11
11
  import { UmbVariantId, type UmbEntityVariantModel, type UmbEntityVariantOptionModel } from '@umbraco-cms/backoffice/variant';
12
12
  import { UmbReadOnlyVariantGuardManager } from '@umbraco-cms/backoffice/utils';
@@ -44,7 +44,7 @@ export interface UmbContentDetailWorkspaceContextArgs<DetailModelType extends Um
44
44
  */
45
45
  export declare abstract class UmbContentDetailWorkspaceContextBase<DetailModelType extends UmbContentDetailModel<VariantModelType>, DetailRepositoryType extends UmbDetailRepository<DetailModelType> = UmbDetailRepository<DetailModelType>, ContentTypeDetailModelType extends UmbContentTypeModel = UmbContentTypeModel, VariantModelType extends UmbEntityVariantModel = DetailModelType extends {
46
46
  variants: UmbEntityVariantModel[];
47
- } ? DetailModelType['variants'][0] : never, VariantOptionModelType extends UmbEntityVariantOptionModel = UmbEntityVariantOptionModel<VariantModelType>, CreateArgsType extends UmbEntityDetailWorkspaceContextCreateArgs<DetailModelType> = UmbEntityDetailWorkspaceContextCreateArgs<DetailModelType>> extends UmbEntityDetailWorkspaceContextBase<DetailModelType, DetailRepositoryType, CreateArgsType> implements UmbContentWorkspaceContext<DetailModelType, ContentTypeDetailModelType, VariantModelType> {
47
+ } ? DetailModelType['variants'][0] : never, VariantOptionModelType extends UmbEntityVariantOptionModel = UmbEntityVariantOptionModel<VariantModelType>, CreateArgsType extends UmbEntityDetailWorkspaceContextCreateArgs<DetailModelType> = UmbEntityDetailWorkspaceContextCreateArgs<DetailModelType>> extends UmbEntityDetailWorkspaceContextBase<DetailModelType, DetailRepositoryType, CreateArgsType> implements UmbContentWorkspaceContext<DetailModelType, ContentTypeDetailModelType, VariantModelType>, UmbSaveableWorkspaceContext {
48
48
  #private;
49
49
  readonly IS_CONTENT_WORKSPACE_CONTEXT: true;
50
50
  readonly readOnlyGuard: UmbReadOnlyVariantGuardManager;
@@ -205,6 +205,11 @@ export declare abstract class UmbContentDetailWorkspaceContextBase<DetailModelTy
205
205
  */
206
206
  requestSubmit(): Promise<void>;
207
207
  submit(): Promise<void>;
208
+ /**
209
+ * Request a save of the workspace, in the case of Document Workspaces the validation does not need to be valid for this to be saved.
210
+ * @returns {Promise<void>} a promise which resolves once it has been completed.
211
+ */
212
+ requestSave(): Promise<void>;
208
213
  /**
209
214
  * Get the data to save
210
215
  * @param {Array<UmbVariantId>} variantIds - The variant ids to save
@@ -213,6 +218,7 @@ export declare abstract class UmbContentDetailWorkspaceContextBase<DetailModelTy
213
218
  */
214
219
  constructSaveData(variantIds: Array<UmbVariantId>): Promise<DetailModelType>;
215
220
  protected _handleSubmit(): Promise<void>;
221
+ protected _handleSave(): Promise<void>;
216
222
  /**
217
223
  * Perform the create or update of the content
218
224
  * @deprecated Use the public performCreateOrUpdate instead. Will be removed in v. 17.
@@ -544,7 +544,7 @@ export class UmbContentDetailWorkspaceContextBase extends UmbEntityDetailWorkspa
544
544
  this.#validationRepository ??= new this.#validationRepositoryClass(this);
545
545
  // We ask the server first to get a concatenated set of validation messages. So we see both front-end and back-end validation messages [NL]
546
546
  if (this.getIsNew()) {
547
- const parent = this.getParent();
547
+ const parent = this._internal_getCreateUnderParent();
548
548
  if (!parent)
549
549
  throw new Error('Parent is not set');
550
550
  await this.#serverValidation.askServerForValidation(saveData, this.#validationRepository.validateCreate(saveData, parent.unique));
@@ -564,6 +564,13 @@ export class UmbContentDetailWorkspaceContextBase extends UmbEntityDetailWorkspa
564
564
  submit() {
565
565
  return this._handleSubmit();
566
566
  }
567
+ /**
568
+ * Request a save of the workspace, in the case of Document Workspaces the validation does not need to be valid for this to be saved.
569
+ * @returns {Promise<void>} a promise which resolves once it has been completed.
570
+ */
571
+ requestSave() {
572
+ return this._handleSave();
573
+ }
567
574
  /**
568
575
  * Get the data to save
569
576
  * @param {Array<UmbVariantId>} variantIds - The variant ids to save
@@ -574,6 +581,10 @@ export class UmbContentDetailWorkspaceContextBase extends UmbEntityDetailWorkspa
574
581
  return this._data.constructData(variantIds);
575
582
  }
576
583
  async _handleSubmit() {
584
+ await this._handleSave();
585
+ this._closeModal();
586
+ }
587
+ async _handleSave() {
577
588
  const data = this.getData();
578
589
  if (!data) {
579
590
  throw new Error('Data is missing');
@@ -611,16 +622,10 @@ export class UmbContentDetailWorkspaceContextBase extends UmbEntityDetailWorkspa
611
622
  await this.runMandatoryValidationForSaveData(saveData, variantIds);
612
623
  if (this.#validateOnSubmit) {
613
624
  await this.askServerToValidate(saveData, variantIds);
614
- return this.validateAndSubmit(async () => {
625
+ const valid = await this._validateAndLog().then(() => true, () => false);
626
+ if (valid || this.#ignoreValidationResultOnSubmit) {
615
627
  return this.performCreateOrUpdate(variantIds, saveData);
616
- }, async (reason) => {
617
- if (this.#ignoreValidationResultOnSubmit) {
618
- return this.performCreateOrUpdate(variantIds, saveData);
619
- }
620
- else {
621
- return this.invalidSubmit(reason);
622
- }
623
- });
628
+ }
624
629
  }
625
630
  else {
626
631
  await this.performCreateOrUpdate(variantIds, saveData);
@@ -654,7 +659,7 @@ export class UmbContentDetailWorkspaceContextBase extends UmbEntityDetailWorkspa
654
659
  async #create(variantIds, saveData) {
655
660
  if (!this._detailRepository)
656
661
  throw new Error('Detail repository is not set');
657
- const parent = this.getParent();
662
+ const parent = this._internal_getCreateUnderParent();
658
663
  if (!parent)
659
664
  throw new Error('Parent is not set');
660
665
  const { data, error } = await this._detailRepository.create(saveData, parent.unique);
@@ -680,7 +685,6 @@ export class UmbContentDetailWorkspaceContextBase extends UmbEntityDetailWorkspa
680
685
  });
681
686
  eventContext.dispatchEvent(event);
682
687
  this.setIsNew(false);
683
- this._closeModal();
684
688
  }
685
689
  async #update(variantIds, saveData) {
686
690
  if (!this._detailRepository)
@@ -712,7 +716,6 @@ export class UmbContentDetailWorkspaceContextBase extends UmbEntityDetailWorkspa
712
716
  eventUnique: this._workspaceEventUnique,
713
717
  });
714
718
  eventContext.dispatchEvent(updatedEvent);
715
- this._closeModal();
716
719
  }
717
720
  resetState() {
718
721
  super.resetState();
@@ -102,15 +102,16 @@ let UmbContentTypeWorkspaceEditorHeaderElement = class UmbContentTypeWorkspaceEd
102
102
  display: flex;
103
103
  flex: 1 1 auto;
104
104
  flex-direction: column;
105
- gap: var(--uui-size-space-1);
106
105
  }
107
106
 
108
107
  #name {
109
108
  width: 100%;
109
+ z-index: 1;
110
110
  }
111
111
 
112
112
  #description {
113
113
  width: 100%;
114
+ margin-top: 1px;
114
115
  --uui-input-height: var(--uui-size-8);
115
116
  --uui-input-border-color: transparent;
116
117
  }
@@ -123,6 +124,8 @@ let UmbContentTypeWorkspaceEditorHeaderElement = class UmbContentTypeWorkspaceEd
123
124
  font-size: var(--uui-size-8);
124
125
  height: 60px;
125
126
  width: 60px;
127
+ --uui-button-border-color: transparent;
128
+ --uui-button-border-color-hover: var(--uui-color-border);
126
129
  }
127
130
  `,
128
131
  ]; }
@@ -6,6 +6,7 @@ export declare class UmbCompositionPickerModalElement extends UmbModalBaseElemen
6
6
  private _compatibleCompositions?;
7
7
  private _selection;
8
8
  private _usedForInheritance;
9
+ private _usedForComposition;
9
10
  connectedCallback(): void;
10
11
  protected _submitModal(): Promise<void>;
11
12
  render(): import("lit-html").TemplateResult<1>;
@@ -15,6 +15,7 @@ let UmbCompositionPickerModalElement = class UmbCompositionPickerModalElement ex
15
15
  this._references = [];
16
16
  this._selection = [];
17
17
  this._usedForInheritance = [];
18
+ this._usedForComposition = [];
18
19
  }
19
20
  // TODO: Loosen this from begin specific to Document Types, so we can have a general interface for composition repositories. [NL]
20
21
  #compositionRepository;
@@ -33,6 +34,7 @@ let UmbCompositionPickerModalElement = class UmbCompositionPickerModalElement ex
33
34
  }
34
35
  this._selection = this.data?.selection ?? [];
35
36
  this._usedForInheritance = this.data?.usedForInheritance ?? [];
37
+ this._usedForComposition = this.data?.usedForComposition ?? [];
36
38
  this.modalContext?.setValue({ selection: this._selection });
37
39
  const isNew = this.data.isNew;
38
40
  this.#unique = !isNew ? this.data.unique : null;
@@ -98,7 +100,9 @@ let UmbCompositionPickerModalElement = class UmbCompositionPickerModalElement ex
98
100
  render() {
99
101
  return html `
100
102
  <umb-body-layout headline="${this.localize.term('contentTypeEditor_compositions')}">
101
- ${this._references.length ? this.#renderHasReference() : this.#renderAvailableCompositions()}
103
+ <uui-box>
104
+ ${this._references.length ? this.#renderHasReference() : this.#renderAvailableCompositions()}
105
+ </uui-box>
102
106
  <div slot="actions">
103
107
  <uui-button label=${this.localize.term('general_close')} @click=${this._rejectModal}></uui-button>
104
108
  ${!this._references.length
@@ -166,11 +170,16 @@ let UmbCompositionPickerModalElement = class UmbCompositionPickerModalElement ex
166
170
  #renderCompositionsItems(compositionsList) {
167
171
  return repeat(compositionsList, (compositions) => compositions.unique, (compositions) => {
168
172
  const usedForInheritance = this._usedForInheritance.includes(compositions.unique);
173
+ const usedForComposition = this._usedForComposition.includes(compositions.unique);
174
+ /* The server will return isCompatible as false if the Doc Type is currently being used in a composition.
175
+ Therefore, we need to account for this in the "isDisabled" check to ensure it remains enabled.
176
+ Otherwise, it would become disabled and couldn't be deselected by the user. */
177
+ const isDisabled = usedForInheritance || (compositions.isCompatible === false && !usedForComposition);
169
178
  return html `
170
179
  <uui-menu-item
171
180
  label=${this.localize.string(compositions.name)}
172
181
  ?selectable=${!usedForInheritance}
173
- ?disabled=${usedForInheritance}
182
+ ?disabled=${isDisabled}
174
183
  @selected=${() => this.#onSelectionAdd(compositions.unique)}
175
184
  @deselected=${() => this.#onSelectionRemove(compositions.unique)}
176
185
  ?selected=${this._selection.find((unique) => unique === compositions.unique)}>
@@ -202,6 +211,10 @@ let UmbCompositionPickerModalElement = class UmbCompositionPickerModalElement ex
202
211
  align-items: center;
203
212
  gap: var(--uui-size-3);
204
213
  }
214
+
215
+ .compositions-list {
216
+ margin-block: var(--uui-size-3);
217
+ }
205
218
  `,
206
219
  ]; }
207
220
  };
@@ -217,6 +230,9 @@ __decorate([
217
230
  __decorate([
218
231
  state()
219
232
  ], UmbCompositionPickerModalElement.prototype, "_usedForInheritance", void 0);
233
+ __decorate([
234
+ state()
235
+ ], UmbCompositionPickerModalElement.prototype, "_usedForComposition", void 0);
220
236
  UmbCompositionPickerModalElement = __decorate([
221
237
  customElement('umb-composition-picker-modal')
222
238
  ], UmbCompositionPickerModalElement);
@@ -3,6 +3,7 @@ export interface UmbCompositionPickerModalData {
3
3
  compositionRepositoryAlias: string;
4
4
  selection: Array<string>;
5
5
  usedForInheritance: Array<string>;
6
+ usedForComposition: Array<string>;
6
7
  unique: string | null;
7
8
  isElement: boolean;
8
9
  currentPropertyAliases: Array<string>;