@umbraco-cms/backoffice 17.1.0 → 17.2.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 (629) hide show
  1. package/{dist-cms/custom-elements.json → custom-elements.json} +817 -721
  2. package/dist-cms/apps/app/app.element.js +1 -0
  3. package/dist-cms/apps/backoffice/components/backoffice-header-logo.element.js +4 -5
  4. package/dist-cms/assets/lang/ar.js +3 -2
  5. package/dist-cms/assets/lang/bs.js +3 -2
  6. package/dist-cms/assets/lang/cs.js +2 -1
  7. package/dist-cms/assets/lang/cy.js +3 -2
  8. package/dist-cms/assets/lang/da.js +4 -2
  9. package/dist-cms/assets/lang/de.js +2 -1
  10. package/dist-cms/assets/lang/en.js +9 -2
  11. package/dist-cms/assets/lang/es.js +5 -1
  12. package/dist-cms/assets/lang/fr.js +2 -1
  13. package/dist-cms/assets/lang/he.js +2 -1
  14. package/dist-cms/assets/lang/hr.js +3 -2
  15. package/dist-cms/assets/lang/it.js +2 -1
  16. package/dist-cms/assets/lang/ja.js +2 -1
  17. package/dist-cms/assets/lang/ko.js +2 -1
  18. package/dist-cms/assets/lang/nb.js +2 -1
  19. package/dist-cms/assets/lang/nl.js +2 -1
  20. package/dist-cms/assets/lang/pl.js +2 -1
  21. package/dist-cms/assets/lang/pt-br.js +2 -1
  22. package/dist-cms/assets/lang/pt.js +3 -2
  23. package/dist-cms/assets/lang/ru.js +2 -1
  24. package/dist-cms/assets/lang/sv.js +2 -1
  25. package/dist-cms/assets/lang/tr.js +2 -1
  26. package/dist-cms/assets/lang/uk.js +2 -1
  27. package/dist-cms/assets/lang/vi.js +3 -2
  28. package/dist-cms/assets/lang/zh-tw.js +2 -1
  29. package/dist-cms/assets/lang/zh.js +2 -1
  30. package/dist-cms/external/uui/package.json +2 -2
  31. package/dist-cms/libs/class-api/package.json +8 -0
  32. package/dist-cms/libs/class-api/vite.config.d.ts +2 -0
  33. package/dist-cms/libs/class-api/vite.config.js +15 -0
  34. package/dist-cms/libs/context-api/package.json +8 -0
  35. package/dist-cms/libs/context-api/vite.config.d.ts +2 -0
  36. package/dist-cms/libs/context-api/vite.config.js +15 -0
  37. package/dist-cms/libs/context-proxy/package.json +8 -0
  38. package/dist-cms/libs/context-proxy/vite.config.d.ts +2 -0
  39. package/dist-cms/libs/context-proxy/vite.config.js +15 -0
  40. package/dist-cms/libs/controller-api/package.json +8 -0
  41. package/dist-cms/libs/controller-api/vite.config.d.ts +2 -0
  42. package/dist-cms/libs/controller-api/vite.config.js +15 -0
  43. package/dist-cms/libs/element-api/package.json +8 -0
  44. package/dist-cms/libs/element-api/vite.config.d.ts +2 -0
  45. package/dist-cms/libs/element-api/vite.config.js +15 -0
  46. package/dist-cms/libs/extension-api/functions/load-manifest-api.function.js +9 -1
  47. package/dist-cms/libs/extension-api/functions/load-manifest-element.function.js +9 -1
  48. package/dist-cms/libs/extension-api/functions/load-manifest-plain-js.function.d.ts +2 -2
  49. package/dist-cms/libs/extension-api/functions/load-manifest-plain-js.function.js +7 -4
  50. package/dist-cms/libs/extension-api/package.json +8 -0
  51. package/dist-cms/libs/extension-api/types/utils.d.ts +4 -4
  52. package/dist-cms/libs/extension-api/vite.config.d.ts +2 -0
  53. package/dist-cms/libs/extension-api/vite.config.js +15 -0
  54. package/dist-cms/libs/localization-api/package.json +8 -0
  55. package/dist-cms/libs/localization-api/vite.config.d.ts +2 -0
  56. package/dist-cms/libs/localization-api/vite.config.js +15 -0
  57. package/dist-cms/libs/observable-api/package.json +8 -0
  58. package/dist-cms/libs/observable-api/vite.config.d.ts +2 -0
  59. package/dist-cms/libs/observable-api/vite.config.js +15 -0
  60. package/dist-cms/packages/block/block/conditions/manifests.js +6 -3
  61. package/dist-cms/packages/block/block/modals/block-catalogue/block-catalogue-modal.element.js +1 -1
  62. package/dist-cms/packages/block/block/workspace/block-element-property-dataset.context.js +0 -6
  63. package/dist-cms/packages/block/block/workspace/views/edit/block-workspace-view-edit-content-no-router.element.d.ts +1 -0
  64. package/dist-cms/packages/block/block/workspace/views/edit/block-workspace-view-edit-content-no-router.element.js +11 -5
  65. package/dist-cms/packages/block/block/workspace/views/edit/block-workspace-view-edit.element.d.ts +1 -0
  66. package/dist-cms/packages/block/block/workspace/views/edit/block-workspace-view-edit.element.js +11 -6
  67. package/dist-cms/packages/block/block-grid/components/block-grid-area/block-grid-area.element.d.ts +3 -3
  68. package/dist-cms/packages/block/block-grid/components/block-grid-area/block-grid-area.element.js +5 -5
  69. package/dist-cms/packages/block/block-grid/components/block-grid-entries/block-grid-entries.context.js +5 -1
  70. package/dist-cms/packages/block/block-grid/property-editors/block-grid-area-type-permission/block-grid-area-type-permission.element.js +2 -2
  71. package/dist-cms/packages/block/block-list/property-editors/block-list-editor/manifests.js +6 -6
  72. package/dist-cms/packages/block/block-list/property-editors/block-list-editor/property-editor-ui-block-list.element.js +6 -1
  73. package/dist-cms/packages/block/block-rte/context/block-rte-entry.context.d.ts +1 -0
  74. package/dist-cms/packages/block/block-rte/context/block-rte-entry.context.js +3 -15
  75. package/dist-cms/packages/block/block-rte/context/block-rte-manager.context.js +0 -3
  76. package/dist-cms/packages/block/block-rte/types.d.ts +1 -0
  77. package/dist-cms/packages/block/block-single/property-editors/block-single-editor/manifests.js +2 -2
  78. package/dist-cms/packages/block/block-single/property-editors/block-single-editor/property-editor-ui-block-single.element.js +6 -1
  79. package/dist-cms/packages/clipboard/clipboard-entry/detail/manifests.js +2 -1
  80. package/dist-cms/packages/clipboard/clipboard-entry/item/manifests.js +2 -1
  81. package/dist-cms/packages/content/content/collection/workspace-has-content-collection/manifests.js +2 -1
  82. package/dist-cms/packages/content/content/conditions/has-properties/content-has-properties.condition.manifest.js +2 -1
  83. package/dist-cms/packages/content/content/global-components/content-workspace-property.element.js +10 -15
  84. package/dist-cms/packages/content/content/workspace/content-detail-workspace-base.d.ts +2 -2
  85. package/dist-cms/packages/content/content/workspace/content-detail-workspace-base.js +24 -14
  86. package/dist-cms/packages/content/content/workspace/content-detail-workspace-type-transform.controller.js +73 -29
  87. package/dist-cms/packages/content/content/workspace/views/edit/content-editor.element.d.ts +1 -0
  88. package/dist-cms/packages/content/content/workspace/views/edit/content-editor.element.js +17 -9
  89. package/dist-cms/packages/content/content-type/modals/composition-picker/composition-picker-modal.element.d.ts +6 -0
  90. package/dist-cms/packages/content/content-type/modals/composition-picker/composition-picker-modal.element.js +26 -1
  91. package/dist-cms/packages/content/content-type/structure/content-type-property-structure-helper.class.js +21 -1
  92. package/dist-cms/packages/content/content-type/structure/content-type-structure-manager.class.js +1 -1
  93. package/dist-cms/packages/content/content-type/workspace/views/design/content-type-design-editor-properties.element.js +13 -2
  94. package/dist-cms/packages/content/content-type/workspace/views/design/content-type-design-editor-property.element.js +13 -15
  95. package/dist-cms/packages/content/content-type/workspace/views/design/content-type-design-editor-tab.element.js +13 -3
  96. package/dist-cms/packages/content/content-type/workspace/views/design/content-type-design-editor.element.d.ts +1 -0
  97. package/dist-cms/packages/content/content-type/workspace/views/design/content-type-design-editor.element.js +12 -6
  98. package/dist-cms/packages/core/auth/auth.context.js +15 -12
  99. package/dist-cms/packages/core/backend-api/types.gen.d.ts +33 -0
  100. package/dist-cms/packages/core/collection/action/collection-action-button.element.js +1 -1
  101. package/dist-cms/packages/core/collection/action/create/collection-create-action.element.js +1 -1
  102. package/dist-cms/packages/core/collection/bulk-action/collection-bulk-action.manager.d.ts +9 -4
  103. package/dist-cms/packages/core/collection/bulk-action/collection-bulk-action.manager.js +39 -9
  104. package/dist-cms/packages/core/collection/collection-item-picker-modal/collection-item-picker-modal.element.d.ts +2 -0
  105. package/dist-cms/packages/core/collection/collection-item-picker-modal/collection-item-picker-modal.element.js +72 -16
  106. package/dist-cms/packages/core/collection/collection-item-picker-modal/types.d.ts +2 -1
  107. package/dist-cms/packages/core/collection/collection.element.d.ts +1 -0
  108. package/dist-cms/packages/core/collection/collection.element.js +6 -0
  109. package/dist-cms/packages/core/collection/components/collection-filter-field.element.js +2 -2
  110. package/dist-cms/packages/core/collection/components/collection-selection-actions.element.d.ts +1 -0
  111. package/dist-cms/packages/core/collection/components/collection-selection-actions.element.js +9 -0
  112. package/dist-cms/packages/core/collection/components/collection-toolbar.element.d.ts +1 -0
  113. package/dist-cms/packages/core/collection/components/collection-toolbar.element.js +4 -0
  114. package/dist-cms/packages/core/collection/conditions/collection-has-items.condition.d.ts +7 -0
  115. package/dist-cms/packages/core/collection/conditions/collection-has-items.condition.js +12 -0
  116. package/dist-cms/packages/core/collection/conditions/constants.d.ts +1 -0
  117. package/dist-cms/packages/core/collection/conditions/constants.js +1 -0
  118. package/dist-cms/packages/core/collection/conditions/index.d.ts +1 -0
  119. package/dist-cms/packages/core/collection/conditions/index.js +1 -0
  120. package/dist-cms/packages/core/collection/conditions/manifests.js +10 -2
  121. package/dist-cms/packages/core/collection/conditions/types.d.ts +4 -1
  122. package/dist-cms/packages/core/collection/default/collection-default.context.d.ts +7 -4
  123. package/dist-cms/packages/core/collection/default/collection-default.context.js +36 -17
  124. package/dist-cms/packages/core/collection/filter/manifests.d.ts +2 -0
  125. package/dist-cms/packages/core/collection/filter/manifests.js +2 -0
  126. package/dist-cms/packages/core/collection/filter/text/collection-text-filter-api.interface.d.ts +13 -0
  127. package/dist-cms/packages/core/collection/filter/text/collection-text-filter-api.interface.js +1 -0
  128. package/dist-cms/packages/core/collection/filter/text/collection-text-filter-element.interface.d.ts +7 -0
  129. package/dist-cms/packages/core/collection/filter/text/collection-text-filter-element.interface.js +1 -0
  130. package/dist-cms/packages/core/collection/filter/text/collection-text-filter.extension.d.ts +11 -0
  131. package/dist-cms/packages/core/collection/filter/text/collection-text-filter.extension.js +1 -0
  132. package/dist-cms/packages/core/collection/filter/text/default-collection-text-filter.api.d.ts +25 -0
  133. package/dist-cms/packages/core/collection/filter/text/default-collection-text-filter.api.js +47 -0
  134. package/dist-cms/packages/core/collection/filter/text/default-collection-text-filter.element.d.ts +32 -0
  135. package/dist-cms/packages/core/collection/filter/text/default-collection-text-filter.element.js +73 -0
  136. package/dist-cms/packages/core/collection/filter/text/manifests.d.ts +2 -0
  137. package/dist-cms/packages/core/collection/filter/text/manifests.js +14 -0
  138. package/dist-cms/packages/core/collection/filter/text/types.d.ts +3 -0
  139. package/dist-cms/packages/core/collection/filter/text/types.js +1 -0
  140. package/dist-cms/packages/core/collection/filter/types.d.ts +1 -0
  141. package/dist-cms/packages/core/collection/filter/types.js +1 -0
  142. package/dist-cms/packages/core/collection/index.d.ts +1 -0
  143. package/dist-cms/packages/core/collection/index.js +1 -0
  144. package/dist-cms/packages/core/collection/item/entity-collection-item-card/default-collection-item-card.element.d.ts +5 -2
  145. package/dist-cms/packages/core/collection/item/entity-collection-item-card/default-collection-item-card.element.js +11 -5
  146. package/dist-cms/packages/core/collection/manifests.js +3 -1
  147. package/dist-cms/packages/core/collection/selection/collection-selection.manager.d.ts +17 -0
  148. package/dist-cms/packages/core/collection/selection/collection-selection.manager.js +29 -0
  149. package/dist-cms/packages/core/collection/selection/types.d.ts +7 -0
  150. package/dist-cms/packages/core/collection/selection/types.js +1 -0
  151. package/dist-cms/packages/core/collection/types.d.ts +9 -1
  152. package/dist-cms/packages/core/collection/view/card/card-collection-view.element.js +18 -5
  153. package/dist-cms/packages/core/collection/view/index.d.ts +1 -0
  154. package/dist-cms/packages/core/collection/view/index.js +1 -0
  155. package/dist-cms/packages/core/collection/view/ref/ref-collection-view.element.js +10 -2
  156. package/dist-cms/packages/core/collection/view/umb-collection-view-element-base.d.ts +13 -0
  157. package/dist-cms/packages/core/collection/view/umb-collection-view-element-base.js +33 -0
  158. package/dist-cms/packages/core/components/backoffice-notification-container/backoffice-notification-container.element.d.ts +3 -1
  159. package/dist-cms/packages/core/components/backoffice-notification-container/backoffice-notification-container.element.js +54 -24
  160. package/dist-cms/packages/core/components/body-layout/body-layout.element.js +1 -1
  161. package/dist-cms/packages/core/components/code-block/code-block.element.js +1 -0
  162. package/dist-cms/packages/core/components/figure-card/figure-card.element.d.ts +33 -0
  163. package/dist-cms/packages/core/components/figure-card/figure-card.element.js +241 -0
  164. package/dist-cms/packages/core/components/index.d.ts +1 -0
  165. package/dist-cms/packages/core/components/index.js +1 -0
  166. package/dist-cms/packages/core/components/input-with-alias/input-with-alias.element.js +2 -3
  167. package/dist-cms/packages/core/components/split-panel/split-panel.element.js +2 -3
  168. package/dist-cms/packages/core/components/table/table.element.d.ts +14 -2
  169. package/dist-cms/packages/core/components/table/table.element.js +46 -18
  170. package/dist-cms/packages/core/culture/manifests.d.ts +1 -1
  171. package/dist-cms/packages/core/entity/entity-type/manifests.js +2 -1
  172. package/dist-cms/packages/core/entity/entity-unique/manifests.js +2 -1
  173. package/dist-cms/packages/core/entity-action/common/delete/delete.action.js +13 -0
  174. package/dist-cms/packages/core/entity-action/entity-action-list.element.d.ts +1 -0
  175. package/dist-cms/packages/core/entity-action/entity-action-list.element.js +6 -9
  176. package/dist-cms/packages/core/entity-action/global-components/entity-actions-dropdown/entity-actions-dropdown.element.d.ts +1 -0
  177. package/dist-cms/packages/core/entity-action/global-components/entity-actions-dropdown/entity-actions-dropdown.element.js +24 -5
  178. package/dist-cms/packages/core/entity-action/has-children/condition/entity-has-children.condition.manifest.js +2 -1
  179. package/dist-cms/packages/core/entity-item/entity-item-ref/default-item-ref.element.d.ts +1 -0
  180. package/dist-cms/packages/core/entity-item/entity-item-ref/default-item-ref.element.js +5 -0
  181. package/dist-cms/packages/core/entity-item/index.d.ts +1 -0
  182. package/dist-cms/packages/core/entity-item/index.js +1 -0
  183. package/dist-cms/packages/core/entity-sign/components/entity-sign-bundle.element.d.ts +2 -1
  184. package/dist-cms/packages/core/entity-sign/components/entity-sign-bundle.element.js +82 -107
  185. package/dist-cms/packages/core/entity-sign/kinds/icon/entity-sign-icon.api.d.ts +2 -2
  186. package/dist-cms/packages/core/entity-sign/kinds/icon/entity-sign-icon.api.js +2 -2
  187. package/dist-cms/packages/core/entity-sign/kinds/icon/index.js +1 -0
  188. package/dist-cms/packages/core/entity-sign/kinds/icon/manifests.js +4 -2
  189. package/dist-cms/packages/core/entry-point.d.ts +8 -8
  190. package/dist-cms/packages/core/entry-point.js +12 -11
  191. package/dist-cms/packages/core/event/closed.event.d.ts +5 -0
  192. package/dist-cms/packages/core/event/delete.event.d.ts +6 -0
  193. package/dist-cms/packages/core/event/delete.event.js +2 -1
  194. package/dist-cms/packages/core/event/deselected.event.d.ts +5 -0
  195. package/dist-cms/packages/core/event/input.event.d.ts +1 -0
  196. package/dist-cms/packages/core/event/input.event.js +2 -1
  197. package/dist-cms/packages/core/event/opened.event.d.ts +5 -0
  198. package/dist-cms/packages/core/event/selected.event.d.ts +5 -0
  199. package/dist-cms/packages/core/icon-registry/icon-picker-modal/icon-picker-modal.element.js +9 -11
  200. package/dist-cms/packages/core/menu/menu-variant-tree-structure-workspace-context-base.js +18 -14
  201. package/dist-cms/packages/core/modal/conditions/in-modal/constants.d.ts +1 -0
  202. package/dist-cms/packages/core/modal/conditions/in-modal/constants.js +1 -0
  203. package/dist-cms/packages/core/modal/conditions/in-modal/in-modal.condition-config.d.ts +15 -0
  204. package/dist-cms/packages/core/modal/conditions/in-modal/in-modal.condition-config.js +1 -0
  205. package/dist-cms/packages/core/modal/conditions/in-modal/in-modal.condition.d.ts +8 -0
  206. package/dist-cms/packages/core/modal/conditions/in-modal/in-modal.condition.js +19 -0
  207. package/dist-cms/packages/core/modal/conditions/in-modal/in-modal.condition.manifest.d.ts +2 -0
  208. package/dist-cms/packages/core/modal/conditions/in-modal/in-modal.condition.manifest.js +8 -0
  209. package/dist-cms/packages/core/modal/conditions/index.d.ts +2 -0
  210. package/dist-cms/packages/core/modal/conditions/index.js +1 -0
  211. package/dist-cms/packages/core/modal/conditions/manifests.d.ts +1 -0
  212. package/dist-cms/packages/core/modal/conditions/manifests.js +2 -0
  213. package/dist-cms/packages/core/modal/conditions/types.d.ts +1 -0
  214. package/dist-cms/packages/core/modal/conditions/types.js +1 -0
  215. package/dist-cms/packages/core/modal/context/index.d.ts +2 -1
  216. package/dist-cms/packages/core/modal/context/index.js +2 -1
  217. package/dist-cms/packages/core/modal/context/modal-manager.context-token.d.ts +3 -0
  218. package/dist-cms/packages/core/modal/context/modal-manager.context-token.js +2 -0
  219. package/dist-cms/packages/core/modal/context/modal-manager.context.d.ts +1 -2
  220. package/dist-cms/packages/core/modal/context/modal-manager.context.js +2 -2
  221. package/dist-cms/packages/core/modal/context/modal.context.js +2 -1
  222. package/dist-cms/packages/core/modal/index.d.ts +1 -0
  223. package/dist-cms/packages/core/modal/index.js +1 -0
  224. package/dist-cms/packages/core/modal/manifests.js +2 -1
  225. package/dist-cms/packages/core/models/index.d.ts +10 -0
  226. package/dist-cms/packages/core/package.json +1 -1
  227. package/dist-cms/packages/core/picker/search/picker-search-field.element.js +1 -10
  228. package/dist-cms/packages/core/picker/search/picker-search-result.element.d.ts +2 -1
  229. package/dist-cms/packages/core/picker/search/picker-search-result.element.js +26 -3
  230. package/dist-cms/packages/core/picker/search/result-item/default/default-picker-search-result-item.element.d.ts +1 -0
  231. package/dist-cms/packages/core/picker/search/result-item/default/default-picker-search-result-item.element.js +9 -1
  232. package/dist-cms/packages/core/picker-input/picker-input.context.d.ts +25 -0
  233. package/dist-cms/packages/core/picker-input/picker-input.context.js +83 -12
  234. package/dist-cms/packages/core/property/components/property/index.d.ts +1 -0
  235. package/dist-cms/packages/core/property/components/property/index.js +1 -0
  236. package/dist-cms/packages/core/property/components/property/property.context-token.d.ts +4 -0
  237. package/dist-cms/packages/core/property/components/property/property.context-token.js +3 -0
  238. package/dist-cms/packages/core/property/components/property/property.context.d.ts +0 -2
  239. package/dist-cms/packages/core/property/components/property/property.context.js +1 -2
  240. package/dist-cms/packages/core/property/manifests.d.ts +1 -1
  241. package/dist-cms/packages/core/property/property-value-preset/property-value-preset-variant-builder.controller.d.ts +21 -0
  242. package/dist-cms/packages/core/property/property-value-preset/property-value-preset-variant-builder.controller.js +115 -36
  243. package/dist-cms/packages/core/property-editor-data-source/item/data/manifests.js +2 -1
  244. package/dist-cms/packages/core/recycle-bin/collection-action/empty-recycle-bin/empty-recycle-bin.collection-action.d.ts +18 -0
  245. package/dist-cms/packages/core/recycle-bin/collection-action/empty-recycle-bin/empty-recycle-bin.collection-action.js +63 -0
  246. package/dist-cms/packages/core/recycle-bin/collection-action/empty-recycle-bin/empty-recycle-bin.collection-action.kind.d.ts +2 -0
  247. package/dist-cms/packages/core/recycle-bin/collection-action/empty-recycle-bin/empty-recycle-bin.collection-action.kind.js +16 -0
  248. package/dist-cms/packages/core/recycle-bin/collection-action/empty-recycle-bin/index.d.ts +1 -0
  249. package/dist-cms/packages/core/recycle-bin/collection-action/empty-recycle-bin/index.js +1 -0
  250. package/dist-cms/packages/core/recycle-bin/collection-action/empty-recycle-bin/manifests.d.ts +2 -0
  251. package/dist-cms/packages/core/recycle-bin/collection-action/empty-recycle-bin/manifests.js +2 -0
  252. package/dist-cms/packages/core/recycle-bin/collection-action/empty-recycle-bin/types.d.ts +14 -0
  253. package/dist-cms/packages/core/recycle-bin/collection-action/empty-recycle-bin/types.js +1 -0
  254. package/dist-cms/packages/core/recycle-bin/collection-action/index.d.ts +1 -0
  255. package/dist-cms/packages/core/recycle-bin/collection-action/index.js +1 -0
  256. package/dist-cms/packages/core/recycle-bin/collection-action/manifests.d.ts +2 -0
  257. package/dist-cms/packages/core/recycle-bin/collection-action/manifests.js +2 -0
  258. package/dist-cms/packages/core/recycle-bin/conditions/is-not-trashed/entity-is-not-trashed.condition.manifest.js +2 -1
  259. package/dist-cms/packages/core/recycle-bin/conditions/is-trashed/entity-is-trashed.condition.d.ts +2 -2
  260. package/dist-cms/packages/core/recycle-bin/conditions/is-trashed/entity-is-trashed.condition.js +2 -2
  261. package/dist-cms/packages/core/recycle-bin/conditions/is-trashed/entity-is-trashed.condition.manifest.js +2 -1
  262. package/dist-cms/packages/core/recycle-bin/entity-action/empty-recycle-bin/empty-recycle-bin.action.js +3 -3
  263. package/dist-cms/packages/core/recycle-bin/entity-action/empty-recycle-bin/empty-recycle-bin.action.kind.js +1 -1
  264. package/dist-cms/packages/core/recycle-bin/index.d.ts +2 -1
  265. package/dist-cms/packages/core/recycle-bin/manifests.js +2 -0
  266. package/dist-cms/packages/core/router/path-pattern.class.d.ts +6 -0
  267. package/dist-cms/packages/core/router/path-pattern.class.js +11 -2
  268. package/dist-cms/packages/core/router/route/forbidden/route-forbidden.element.js +1 -1
  269. package/dist-cms/packages/core/router/route/index.d.ts +1 -0
  270. package/dist-cms/packages/core/router/route/index.js +1 -0
  271. package/dist-cms/packages/core/router/route/route.context-token.d.ts +3 -0
  272. package/dist-cms/packages/core/router/route/route.context-token.js +2 -0
  273. package/dist-cms/packages/core/router/route/route.context.d.ts +1 -2
  274. package/dist-cms/packages/core/router/route/route.context.js +5 -3
  275. package/dist-cms/packages/core/router/route/router-slot.element.d.ts +1 -1
  276. package/dist-cms/packages/core/router/route/router-slot.element.js +17 -15
  277. package/dist-cms/packages/core/router/router-slot/router-slot.js +2 -0
  278. package/dist-cms/packages/core/sorter/sorter.controller.d.ts +1 -1
  279. package/dist-cms/packages/core/temporary-file/config/manifests.js +2 -1
  280. package/dist-cms/packages/core/temporary-file/manifests.d.ts +1 -1
  281. package/dist-cms/packages/core/themes/manifests.d.ts +1 -1
  282. package/dist-cms/packages/core/tree/default/default-tree.context.d.ts +2 -2
  283. package/dist-cms/packages/core/tree/tree-item/tree-item-base/tree-item-context-base.js +6 -2
  284. package/dist-cms/packages/core/tree/tree-item/tree-item-base/tree-item-element-base.d.ts +21 -0
  285. package/dist-cms/packages/core/tree/tree-item/tree-item-base/tree-item-element-base.js +35 -5
  286. package/dist-cms/packages/core/tree/tree-picker-modal/tree-picker-modal.element.js +9 -8
  287. package/dist-cms/packages/core/utils/debounce/debounce.function.d.ts +12 -1
  288. package/dist-cms/packages/core/utils/debounce/debounce.function.js +15 -4
  289. package/dist-cms/packages/core/validation/controllers/form-control-validator.controller.js +2 -1
  290. package/dist-cms/packages/core/validation/controllers/validation.controller.js +20 -22
  291. package/dist-cms/packages/core/validation/events/validation-valid.event.d.ts +5 -0
  292. package/dist-cms/packages/core/validation/utils/replace-start-of-path.function.js +1 -1
  293. package/dist-cms/packages/core/variant/context/variant.context.js +1 -0
  294. package/dist-cms/packages/core/workspace/components/workspace-breadcrumb/workspace-menu-breadcrumb/workspace-menu-breadcrumb.element.js +10 -6
  295. package/dist-cms/packages/core/workspace/components/workspace-split-view/workspace-split-view-variant-selector.element.d.ts +7 -0
  296. package/dist-cms/packages/core/workspace/components/workspace-split-view/workspace-split-view-variant-selector.element.js +7 -0
  297. package/dist-cms/packages/core/workspace/conditions/constants.d.ts +1 -0
  298. package/dist-cms/packages/core/workspace/conditions/constants.js +1 -0
  299. package/dist-cms/packages/core/workspace/conditions/manifests.js +2 -0
  300. package/dist-cms/packages/core/workspace/conditions/types.d.ts +1 -0
  301. package/dist-cms/packages/core/workspace/conditions/workspace-is-loaded/constants.d.ts +1 -0
  302. package/dist-cms/packages/core/workspace/conditions/workspace-is-loaded/constants.js +1 -0
  303. package/dist-cms/packages/core/workspace/conditions/workspace-is-loaded/manifests.d.ts +2 -0
  304. package/dist-cms/packages/core/workspace/conditions/workspace-is-loaded/manifests.js +7 -0
  305. package/dist-cms/packages/core/workspace/conditions/workspace-is-loaded/types.d.ts +9 -0
  306. package/dist-cms/packages/core/workspace/conditions/workspace-is-loaded/types.js +1 -0
  307. package/dist-cms/packages/core/workspace/conditions/workspace-is-loaded/workspace-is-loaded.condition.d.ts +7 -0
  308. package/dist-cms/packages/core/workspace/conditions/workspace-is-loaded/workspace-is-loaded.condition.js +14 -0
  309. package/dist-cms/packages/core/workspace/entity-detail/global-components/entity-detail-workspace-editor.element.d.ts +1 -0
  310. package/dist-cms/packages/core/workspace/entity-detail/global-components/entity-detail-workspace-editor.element.js +28 -0
  311. package/dist-cms/packages/core/workspace/modals/workspace-modal.element.js +4 -2
  312. package/dist-cms/packages/core/workspace/paths.d.ts +16 -0
  313. package/dist-cms/packages/core/workspace/paths.js +2 -0
  314. package/dist-cms/packages/data-type/entity-actions/conditions/allow-delete/constants.d.ts +1 -0
  315. package/dist-cms/packages/data-type/entity-actions/conditions/allow-delete/constants.js +1 -0
  316. package/dist-cms/packages/data-type/entity-actions/conditions/allow-delete/data-type-allow-delete-action.condition.d.ts +8 -0
  317. package/dist-cms/packages/data-type/entity-actions/conditions/allow-delete/data-type-allow-delete-action.condition.js +26 -0
  318. package/dist-cms/packages/data-type/entity-actions/conditions/allow-delete/index.d.ts +1 -0
  319. package/dist-cms/packages/data-type/entity-actions/conditions/allow-delete/index.js +1 -0
  320. package/dist-cms/packages/data-type/entity-actions/conditions/allow-delete/manifest.d.ts +1 -0
  321. package/dist-cms/packages/data-type/entity-actions/conditions/allow-delete/manifest.js +9 -0
  322. package/dist-cms/packages/data-type/entity-actions/conditions/manifests.d.ts +1 -0
  323. package/dist-cms/packages/data-type/entity-actions/conditions/manifests.js +2 -0
  324. package/dist-cms/packages/data-type/entity-actions/constants.d.ts +1 -0
  325. package/dist-cms/packages/data-type/entity-actions/constants.js +1 -0
  326. package/dist-cms/packages/data-type/entity-actions/manifests.js +8 -0
  327. package/dist-cms/packages/data-type/manifests.js +2 -1
  328. package/dist-cms/packages/data-type/modals/data-type-picker-flow/data-type-picker-flow-modal.element.d.ts +1 -0
  329. package/dist-cms/packages/data-type/modals/data-type-picker-flow/data-type-picker-flow-modal.element.js +39 -16
  330. package/dist-cms/packages/data-type/repository/detail/manifests.js +2 -1
  331. package/dist-cms/packages/data-type/repository/item/data-type-item.server.data-source.js +1 -0
  332. package/dist-cms/packages/data-type/repository/item/manifests.js +2 -1
  333. package/dist-cms/packages/data-type/repository/item/types.d.ts +1 -0
  334. package/dist-cms/packages/data-type/tree/folder/repository/manifests.js +2 -1
  335. package/dist-cms/packages/data-type/tree/manifests.js +2 -1
  336. package/dist-cms/packages/data-type/tree/tree-item-children/collection/views/data-type-tree-item-table-collection-view.element.js +1 -1
  337. package/dist-cms/packages/dictionary/manifests.js +2 -1
  338. package/dist-cms/packages/dictionary/repository/detail/manifests.js +2 -1
  339. package/dist-cms/packages/dictionary/repository/item/manifests.js +2 -1
  340. package/dist-cms/packages/dictionary/tree/manifests.js +2 -1
  341. package/dist-cms/packages/documents/document-blueprints/manifests.js +2 -1
  342. package/dist-cms/packages/documents/document-blueprints/repository/detail/manifests.js +2 -1
  343. package/dist-cms/packages/documents/document-blueprints/repository/item/manifests.js +2 -1
  344. package/dist-cms/packages/documents/document-blueprints/tree/folder/repository/manifests.js +2 -1
  345. package/dist-cms/packages/documents/document-blueprints/tree/manifests.js +2 -1
  346. package/dist-cms/packages/documents/document-types/components/input-document-type/input-document-type.element.js +2 -2
  347. package/dist-cms/packages/documents/document-types/manifests.js +2 -1
  348. package/dist-cms/packages/documents/document-types/repository/detail/manifests.js +2 -1
  349. package/dist-cms/packages/documents/document-types/repository/item/manifests.js +2 -1
  350. package/dist-cms/packages/documents/document-types/tree/folder/repository/manifests.js +2 -1
  351. package/dist-cms/packages/documents/document-types/tree/manifests.js +2 -1
  352. package/dist-cms/packages/documents/documents/allow-edit-invariant-from-non-default/document-allow-edit-invariant-from-non-default-controller-base.d.ts +19 -0
  353. package/dist-cms/packages/documents/documents/allow-edit-invariant-from-non-default/document-allow-edit-invariant-from-non-default-controller-base.js +45 -0
  354. package/dist-cms/packages/documents/documents/allow-edit-invariant-from-non-default/document-block-workspace-allow-edit-invariant-from-non-default.controller.d.ts +6 -0
  355. package/dist-cms/packages/documents/documents/allow-edit-invariant-from-non-default/document-block-workspace-allow-edit-invariant-from-non-default.controller.js +74 -0
  356. package/dist-cms/packages/documents/documents/allow-edit-invariant-from-non-default/document-workspace-allow-edit-invariant-from-non-default.controller.d.ts +5 -0
  357. package/dist-cms/packages/documents/documents/allow-edit-invariant-from-non-default/document-workspace-allow-edit-invariant-from-non-default.controller.js +18 -0
  358. package/dist-cms/packages/documents/documents/allow-edit-invariant-from-non-default/manifests.d.ts +1 -0
  359. package/dist-cms/packages/documents/documents/allow-edit-invariant-from-non-default/manifests.js +29 -0
  360. package/dist-cms/packages/documents/documents/collection/action/create-document-collection-action.element.js +2 -2
  361. package/dist-cms/packages/documents/documents/components/input-document/input-document.context.js +5 -0
  362. package/dist-cms/packages/documents/documents/components/input-document/input-document.element.js +5 -0
  363. package/dist-cms/packages/documents/documents/entity-actions/create-blueprint/create-blueprint.action.d.ts +2 -2
  364. package/dist-cms/packages/documents/documents/entity-actions/create-blueprint/create-blueprint.action.js +2 -2
  365. package/dist-cms/packages/documents/documents/entity-actions/culture-and-hostnames/modal/culture-and-hostnames-modal.element.js +1 -1
  366. package/dist-cms/packages/documents/documents/entity-sign/has-pending-changes/manifests.js +1 -1
  367. package/dist-cms/packages/documents/documents/entity-sign/has-schedule/manifests.js +1 -1
  368. package/dist-cms/packages/documents/documents/entity-sign/is-protected/manifest.js +1 -1
  369. package/dist-cms/packages/documents/documents/item/repository/manifests.js +2 -1
  370. package/dist-cms/packages/documents/documents/manifests.js +4 -1
  371. package/dist-cms/packages/documents/documents/modals/shared/document-variant-language-picker.element.d.ts +2 -1
  372. package/dist-cms/packages/documents/documents/modals/shared/document-variant-language-picker.element.js +17 -2
  373. package/dist-cms/packages/documents/documents/preview/workspace-action-menu-item/preview-option.action.d.ts +2 -2
  374. package/dist-cms/packages/documents/documents/preview/workspace-action-menu-item/preview-option.action.js +2 -2
  375. package/dist-cms/packages/documents/documents/publishing/publish/entity-bulk-action/publish.bulk-action.d.ts +15 -0
  376. package/dist-cms/packages/documents/documents/publishing/publish/entity-bulk-action/publish.bulk-action.js +137 -67
  377. package/dist-cms/packages/documents/documents/publishing/repository/document-publishing.server.data-source.js +1 -2
  378. package/dist-cms/packages/documents/documents/publishing/unpublish/entity-bulk-action/unpublish.bulk-action.d.ts +1 -0
  379. package/dist-cms/packages/documents/documents/publishing/unpublish/entity-bulk-action/unpublish.bulk-action.js +46 -66
  380. package/dist-cms/packages/documents/documents/recycle-bin/collection-action/manifests.d.ts +1 -0
  381. package/dist-cms/packages/documents/documents/recycle-bin/collection-action/manifests.js +23 -0
  382. package/dist-cms/packages/documents/documents/recycle-bin/manifests.js +4 -1
  383. package/dist-cms/packages/documents/documents/recycle-bin/tree/data/manifests.js +2 -1
  384. package/dist-cms/packages/documents/documents/repository/detail/document-detail.server.data-source.js +1 -2
  385. package/dist-cms/packages/documents/documents/repository/detail/manifests.js +2 -1
  386. package/dist-cms/packages/documents/documents/rollback/modal/rollback-modal.element.d.ts +1 -0
  387. package/dist-cms/packages/documents/documents/rollback/modal/rollback-modal.element.js +34 -7
  388. package/dist-cms/packages/documents/documents/tree/manifests.js +2 -1
  389. package/dist-cms/packages/documents/documents/tree/tree-item/document-tree-item.context.d.ts +1 -0
  390. package/dist-cms/packages/documents/documents/tree/tree-item/document-tree-item.context.js +1 -0
  391. package/dist-cms/packages/documents/documents/tree/tree-item/document-tree-item.element.d.ts +1 -1
  392. package/dist-cms/packages/documents/documents/tree/tree-item/document-tree-item.element.js +9 -4
  393. package/dist-cms/packages/documents/documents/tree/utils.d.ts +7 -0
  394. package/dist-cms/packages/documents/documents/tree/utils.js +8 -0
  395. package/dist-cms/packages/documents/documents/types.d.ts +1 -0
  396. package/dist-cms/packages/documents/documents/url/repository/manifests.js +2 -1
  397. package/dist-cms/packages/documents/documents/user-permissions/document/conditions/manifests.js +2 -1
  398. package/dist-cms/packages/documents/documents/user-permissions/document-property-value/document-property-value-permission-flow-modal/property-type-modal/property-type-modal.element.js +1 -1
  399. package/dist-cms/packages/documents/documents/user-permissions/document-property-value/input-document-property-value-user-permission/input-document-property-value-user-permission.element.js +1 -1
  400. package/dist-cms/packages/documents/documents/utils.d.ts +7 -1
  401. package/dist-cms/packages/documents/documents/utils.js +35 -7
  402. package/dist-cms/packages/documents/documents/workspace/conditions/is-not-trashed/document-is-not-trashed.condition.manifest.js +2 -1
  403. package/dist-cms/packages/documents/documents/workspace/conditions/is-trashed/document-is-trashed.condition.manifest.js +2 -1
  404. package/dist-cms/packages/documents/documents/workspace/document-workspace-editor.element.js +11 -1
  405. package/dist-cms/packages/documents/documents/workspace/document-workspace-split-view-variant-selector.element.d.ts +2 -1
  406. package/dist-cms/packages/documents/documents/workspace/document-workspace.context.js +0 -29
  407. package/dist-cms/packages/extension-insights/collection/views/table/extension-table-collection-view.element.js +1 -0
  408. package/dist-cms/packages/language/conditions/language-user-permission/manifests.js +2 -1
  409. package/dist-cms/packages/language/manifests.js +2 -1
  410. package/dist-cms/packages/language/repository/detail/manifests.js +2 -1
  411. package/dist-cms/packages/language/repository/item/manifests.js +2 -1
  412. package/dist-cms/packages/log-viewer/workspace/logviewer-workspace.context.js +18 -4
  413. package/dist-cms/packages/log-viewer/workspace/views/search/components/log-viewer-log-level-filter-menu.element.d.ts +1 -1
  414. package/dist-cms/packages/log-viewer/workspace/views/search/components/log-viewer-polling-button.element.js +0 -1
  415. package/dist-cms/packages/media/dropzone/dropzone-change.event.js +1 -0
  416. package/dist-cms/packages/media/dropzone/dropzone-submitted.event.d.ts +5 -0
  417. package/dist-cms/packages/media/imaging/components/imaging-thumbnail.element.js +2 -1
  418. package/dist-cms/packages/media/imaging/manifests.js +2 -1
  419. package/dist-cms/packages/media/media/components/input-image-cropper/crop-change.event.d.ts +5 -0
  420. package/dist-cms/packages/media/media/components/input-image-cropper/focalpoint-change.event.d.ts +5 -0
  421. package/dist-cms/packages/media/media/components/input-image-cropper/image-cropper-focus-setter.element.js +2 -1
  422. package/dist-cms/packages/media/media/components/input-image-cropper/utils.d.ts +6 -0
  423. package/dist-cms/packages/media/media/components/input-image-cropper/utils.js +7 -0
  424. package/dist-cms/packages/media/media/components/input-media/input-media.context.js +5 -0
  425. package/dist-cms/packages/media/media/components/input-rich-media/input-rich-media.element.js +1 -0
  426. package/dist-cms/packages/media/media/dropzone/dropzone-media.element.js +44 -38
  427. package/dist-cms/packages/media/media/index.d.ts +1 -1
  428. package/dist-cms/packages/media/media/index.js +1 -1
  429. package/dist-cms/packages/media/media/manifests.js +2 -1
  430. package/dist-cms/packages/media/media/modals/image-cropper-editor/image-cropper-editor-modal.element.d.ts +1 -0
  431. package/dist-cms/packages/media/media/modals/image-cropper-editor/image-cropper-editor-modal.element.js +1 -0
  432. package/dist-cms/packages/media/media/modals/image-cropper-editor/index.d.ts +0 -2
  433. package/dist-cms/packages/media/media/modals/image-cropper-editor/index.js +0 -2
  434. package/dist-cms/packages/media/media/modals/media-caption-alt-text/index.d.ts +1 -1
  435. package/dist-cms/packages/media/media/modals/media-caption-alt-text/index.js +1 -1
  436. package/dist-cms/packages/media/media/modals/media-picker/index.d.ts +0 -2
  437. package/dist-cms/packages/media/media/modals/media-picker/index.js +0 -2
  438. package/dist-cms/packages/media/media/modals/media-picker/media-picker-modal.element.d.ts +1 -0
  439. package/dist-cms/packages/media/media/modals/media-picker/media-picker-modal.element.js +39 -10
  440. package/dist-cms/packages/media/media/recycle-bin/collection-action/manifests.d.ts +1 -0
  441. package/dist-cms/packages/media/media/recycle-bin/collection-action/manifests.js +23 -0
  442. package/dist-cms/packages/media/media/recycle-bin/manifests.js +2 -0
  443. package/dist-cms/packages/media/media/recycle-bin/tree/manifests.js +2 -1
  444. package/dist-cms/packages/media/media/repository/detail/manifests.js +2 -1
  445. package/dist-cms/packages/media/media/repository/item/manifests.js +2 -1
  446. package/dist-cms/packages/media/media/tree/manifests.js +2 -1
  447. package/dist-cms/packages/media/media/tree/tree-item/media-tree-item.context.d.ts +1 -0
  448. package/dist-cms/packages/media/media/tree/tree-item/media-tree-item.context.js +3 -1
  449. package/dist-cms/packages/media/media/tree/tree-item/media-tree-item.element.d.ts +3 -1
  450. package/dist-cms/packages/media/media/tree/tree-item/media-tree-item.element.js +11 -4
  451. package/dist-cms/packages/media/media/tree/utils.d.ts +7 -0
  452. package/dist-cms/packages/media/media/tree/utils.js +8 -0
  453. package/dist-cms/packages/media/media/url/repository/manifests.js +2 -1
  454. package/dist-cms/packages/media/media/workspace/media-workspace-editor.element.d.ts +2 -1
  455. package/dist-cms/packages/media/media/workspace/media-workspace-editor.element.js +28 -4
  456. package/dist-cms/packages/media/media-types/components/input-media-type/input-media-type.element.js +7 -3
  457. package/dist-cms/packages/media/media-types/manifests.js +2 -1
  458. package/dist-cms/packages/media/media-types/repository/detail/manifests.js +2 -1
  459. package/dist-cms/packages/media/media-types/repository/item/manifests.js +2 -1
  460. package/dist-cms/packages/media/media-types/tree/folder/repository/manifests.js +2 -1
  461. package/dist-cms/packages/media/media-types/tree/manifests.js +2 -1
  462. package/dist-cms/packages/media/umbraco-package.d.ts +2 -1
  463. package/dist-cms/packages/media/umbraco-package.js +2 -1
  464. package/dist-cms/packages/members/member/collection/action/create-member-collection-action.element.d.ts +3 -3
  465. package/dist-cms/packages/members/member/collection/action/create-member-collection-action.element.js +6 -6
  466. package/dist-cms/packages/members/member/collection/types.d.ts +2 -4
  467. package/dist-cms/packages/members/member/item/repository/manifests.js +2 -1
  468. package/dist-cms/packages/members/member/manifests.js +2 -1
  469. package/dist-cms/packages/members/member/repository/detail/manifests.js +2 -1
  470. package/dist-cms/packages/members/member-group/manifests.js +2 -1
  471. package/dist-cms/packages/members/member-group/repository/detail/manifests.js +2 -1
  472. package/dist-cms/packages/members/member-group/repository/item/manifests.js +2 -1
  473. package/dist-cms/packages/members/member-public-access/modal/public-access-modal.element.d.ts +2 -0
  474. package/dist-cms/packages/members/member-public-access/modal/public-access-modal.element.js +90 -24
  475. package/dist-cms/packages/members/member-type/components/input-member-type/input-member-type.element.js +4 -0
  476. package/dist-cms/packages/members/member-type/manifests.js +2 -1
  477. package/dist-cms/packages/members/member-type/repository/detail/manifests.js +2 -1
  478. package/dist-cms/packages/members/member-type/repository/item/manifests.js +2 -1
  479. package/dist-cms/packages/members/member-type/tree/folder/repository/manifests.js +2 -1
  480. package/dist-cms/packages/members/member-type/tree/manifests.js +2 -1
  481. package/dist-cms/packages/multi-url-picker/components/input-multi-url/input-multi-url.element.js +5 -0
  482. package/dist-cms/packages/packages/package/repository/manifests.js +2 -1
  483. package/dist-cms/packages/property-editors/content-picker/config/source-type/property-editor-ui-content-picker-source-type.element.js +1 -0
  484. package/dist-cms/packages/property-editors/content-picker/dynamic-root/modals/manifests.js +13 -1
  485. package/dist-cms/packages/property-editors/content-picker/property-editor-ui-content-picker.element.js +5 -2
  486. package/dist-cms/packages/property-editors/entity-data-picker/input/input-entity-data.context.d.ts +2 -1
  487. package/dist-cms/packages/property-editors/entity-data-picker/input/input-entity-data.context.js +10 -6
  488. package/dist-cms/packages/property-editors/entity-data-picker/input/input-entity-data.element.d.ts +1 -0
  489. package/dist-cms/packages/property-editors/entity-data-picker/input/input-entity-data.element.js +8 -2
  490. package/dist-cms/packages/property-editors/entity-data-picker/picker-collection/constants.d.ts +1 -0
  491. package/dist-cms/packages/property-editors/entity-data-picker/picker-collection/constants.js +1 -0
  492. package/dist-cms/packages/property-editors/entity-data-picker/picker-collection/manifests.js +12 -1
  493. package/dist-cms/packages/property-editors/entity-data-picker/picker-collection/views/manifests.d.ts +1 -0
  494. package/dist-cms/packages/property-editors/entity-data-picker/picker-collection/views/manifests.js +28 -0
  495. package/dist-cms/packages/property-editors/slider/property-editor-ui-slider.element.js +1 -1
  496. package/dist-cms/packages/property-editors/umbraco-package.d.ts +2 -1
  497. package/dist-cms/packages/property-editors/umbraco-package.js +2 -1
  498. package/dist-cms/packages/relations/relation-types/repository/detail/manifests.js +2 -1
  499. package/dist-cms/packages/static-file/manifests.js +2 -1
  500. package/dist-cms/packages/static-file/repository/item/manifests.js +2 -1
  501. package/dist-cms/packages/static-file/tree/manifests.js +2 -1
  502. package/dist-cms/packages/tags/repository/manifests.js +2 -1
  503. package/dist-cms/packages/templating/partial-views/manifests.js +2 -1
  504. package/dist-cms/packages/templating/partial-views/repository/item/manifests.js +2 -1
  505. package/dist-cms/packages/templating/partial-views/repository/manifests.js +2 -1
  506. package/dist-cms/packages/templating/partial-views/tree/folder/repository/manifests.js +2 -1
  507. package/dist-cms/packages/templating/partial-views/tree/manifests.js +2 -1
  508. package/dist-cms/packages/templating/scripts/manifests.js +2 -1
  509. package/dist-cms/packages/templating/scripts/repository/item/manifests.js +2 -1
  510. package/dist-cms/packages/templating/scripts/repository/manifests.js +2 -1
  511. package/dist-cms/packages/templating/scripts/tree/folder/repository/manifests.js +2 -1
  512. package/dist-cms/packages/templating/scripts/tree/manifests.js +2 -1
  513. package/dist-cms/packages/templating/stylesheets/manifests.js +2 -1
  514. package/dist-cms/packages/templating/stylesheets/repository/item/manifests.js +2 -1
  515. package/dist-cms/packages/templating/stylesheets/repository/manifests.js +2 -1
  516. package/dist-cms/packages/templating/stylesheets/tree/folder/repository/manifests.js +2 -1
  517. package/dist-cms/packages/templating/stylesheets/tree/manifests.js +2 -1
  518. package/dist-cms/packages/templating/templates/manifests.js +2 -1
  519. package/dist-cms/packages/templating/templates/repository/detail/manifests.js +2 -1
  520. package/dist-cms/packages/templating/templates/repository/item/manifests.js +2 -1
  521. package/dist-cms/packages/templating/templates/tree/manifests.js +2 -1
  522. package/dist-cms/packages/templating/templates/workspace/template-workspace-editor.element.js +6 -0
  523. package/dist-cms/packages/templating/umbraco-package.d.ts +2 -1
  524. package/dist-cms/packages/templating/umbraco-package.js +2 -1
  525. package/dist-cms/packages/tiptap/components/input-tiptap/input-tiptap.element.d.ts +1 -1
  526. package/dist-cms/packages/tiptap/components/input-tiptap/input-tiptap.element.js +18 -9
  527. package/dist-cms/packages/tiptap/extensions/block/block.tiptap-api.js +14 -12
  528. package/dist-cms/packages/tiptap/extensions/block/block.tiptap-extension.js +1 -12
  529. package/dist-cms/packages/tiptap/extensions/heading/heading6.tiptap-toolbar-api.d.ts +1 -1
  530. package/dist-cms/packages/tiptap/extensions/heading/heading6.tiptap-toolbar-api.js +1 -1
  531. package/dist-cms/packages/tiptap/extensions/html-attr-class/html-attr-class.tiptap-extension.js +26 -2
  532. package/dist-cms/packages/tiptap/extensions/link/link.tiptap-extension.d.ts +7 -0
  533. package/dist-cms/packages/tiptap/extensions/link/link.tiptap-extension.js +14 -17
  534. package/dist-cms/packages/tiptap/extensions/style-menu/style-menu.tiptap-toolbar-api.js +1 -0
  535. package/dist-cms/packages/tiptap/extensions/subscript/subscript.tiptap-api.d.ts +1 -1
  536. package/dist-cms/packages/tiptap/extensions/subscript/subscript.tiptap-api.js +1 -1
  537. package/dist-cms/packages/tiptap/extensions/superscript/superscript.tiptap-api.d.ts +1 -1
  538. package/dist-cms/packages/tiptap/extensions/superscript/superscript.tiptap-api.js +1 -1
  539. package/dist-cms/packages/tiptap/extensions/text-direction/text-direction.tiptap-api.d.ts +2 -1
  540. package/dist-cms/packages/tiptap/extensions/text-direction/text-direction.tiptap-api.js +4 -6
  541. package/dist-cms/packages/tiptap/extensions/text-direction/text-direction.tiptap-extension.d.ts +3 -10
  542. package/dist-cms/packages/tiptap/extensions/text-direction/text-direction.tiptap-extension.js +6 -35
  543. package/dist-cms/packages/tiptap/externals.js +1 -4
  544. package/dist-cms/packages/tiptap/package.json +10 -10
  545. package/dist-cms/packages/ufm/plugins/marked-ufm.plugin.js +3 -2
  546. package/dist-cms/packages/umbraco-news/components/umb-news-card.element.d.ts +1 -1
  547. package/dist-cms/packages/umbraco-news/components/umb-news-card.element.js +88 -60
  548. package/dist-cms/packages/umbraco-news/components/umb-news-container.element.js +1 -1
  549. package/dist-cms/packages/user/current-user/conditions/group-id/group-id.condition.manifest.js +2 -1
  550. package/dist-cms/packages/user/current-user/conditions/is-admin/is-admin.condition.d.ts +2 -2
  551. package/dist-cms/packages/user/current-user/conditions/is-admin/is-admin.condition.js +2 -2
  552. package/dist-cms/packages/user/current-user/conditions/is-admin/is-admin.condition.manifest.js +2 -1
  553. package/dist-cms/packages/user/current-user/history/manifests.js +2 -1
  554. package/dist-cms/packages/user/current-user/modals/current-user-mfa/current-user-mfa-modal.element.d.ts +2 -0
  555. package/dist-cms/packages/user/current-user/modals/current-user-mfa/current-user-mfa-modal.element.js +59 -21
  556. package/dist-cms/packages/user/current-user/repository/current-user.repository.js +4 -0
  557. package/dist-cms/packages/user/current-user/repository/current-user.server.data-source.js +1 -1
  558. package/dist-cms/packages/user/current-user/repository/manifests.js +4 -2
  559. package/dist-cms/packages/user/user/client-credential/create/modal/create-user-client-credential-modal.element.d.ts +3 -4
  560. package/dist-cms/packages/user/user/client-credential/create/modal/create-user-client-credential-modal.element.js +7 -8
  561. package/dist-cms/packages/user/user/collection/action/manifests.js +5 -0
  562. package/dist-cms/packages/user/user/collection/item/user-collection-item-card.element.js +2 -0
  563. package/dist-cms/packages/user/user/collection/user-collection-header.element.js +4 -4
  564. package/dist-cms/packages/user/user/collection/views/table/user-table-collection-view.element.d.ts +5 -7
  565. package/dist-cms/packages/user/user/collection/views/table/user-table-collection-view.element.js +39 -51
  566. package/dist-cms/packages/user/user/components/user-avatar/user-avatar.element.d.ts +1 -3
  567. package/dist-cms/packages/user/user/components/user-avatar/user-avatar.element.js +2 -2
  568. package/dist-cms/packages/user/user/components/user-input/user-input.element.d.ts +1 -0
  569. package/dist-cms/packages/user/user/components/user-input/user-input.element.js +11 -8
  570. package/dist-cms/packages/user/user/invite/collection-action/manifests.js +5 -0
  571. package/dist-cms/packages/user/user/manifests.js +2 -1
  572. package/dist-cms/packages/user/user/modals/user-picker/user-picker-modal.token.js +3 -3
  573. package/dist-cms/packages/user/user/repository/config/manifests.js +2 -1
  574. package/dist-cms/packages/user/user/repository/detail/manifests.js +2 -1
  575. package/dist-cms/packages/user/user/repository/item/manifests.js +2 -1
  576. package/dist-cms/packages/user/user/workspace/user/components/user-workspace-assign-access/user-workspace-assign-access.element.js +4 -0
  577. package/dist-cms/packages/user/user/workspace/user/components/user-workspace-avatar/user-workspace-avatar.element.d.ts +3 -3
  578. package/dist-cms/packages/user/user/workspace/user/components/user-workspace-avatar/user-workspace-avatar.element.js +14 -11
  579. package/dist-cms/packages/user/user/workspace/user/user-workspace.context.d.ts +1 -3
  580. package/dist-cms/packages/user/user/workspace/user/user-workspace.context.js +2 -2
  581. package/dist-cms/packages/user/user-group/collection/filter/manifests.d.ts +1 -0
  582. package/dist-cms/packages/user/user-group/collection/filter/manifests.js +16 -0
  583. package/dist-cms/packages/user/user-group/collection/manifests.js +5 -4
  584. package/dist-cms/packages/user/user-group/collection/repository/user-group-collection.repository.js +8 -0
  585. package/dist-cms/packages/user/user-group/collection/repository/user-group-collection.server.data-source.js +3 -1
  586. package/dist-cms/packages/user/user-group/collection/types.d.ts +3 -3
  587. package/dist-cms/packages/user/user-group/collection/user-group-collection.context-token.d.ts +7 -2
  588. package/dist-cms/packages/user/user-group/collection/user-group-collection.context-token.js +3 -0
  589. package/dist-cms/packages/user/user-group/collection/views/user-group-table-collection-view.element.js +11 -3
  590. package/dist-cms/packages/user/user-group/components/user-group-ref/user-group-ref.element.d.ts +1 -0
  591. package/dist-cms/packages/user/user-group/components/user-group-ref/user-group-ref.element.js +11 -12
  592. package/dist-cms/packages/user/user-group/manifests.js +2 -1
  593. package/dist-cms/packages/user/user-group/modals/user-group-picker/user-group-picker-modal.element.js +1 -0
  594. package/dist-cms/packages/user/user-group/repository/detail/manifests.js +2 -1
  595. package/dist-cms/packages/user/user-group/repository/detail/user-group-detail.server.data-source.js +4 -0
  596. package/dist-cms/packages/user/user-group/repository/item/manifests.js +2 -1
  597. package/dist-cms/packages/user/user-group/types.d.ts +1 -0
  598. package/dist-cms/packages/user/user-group/workspace/user-group/user-group-workspace-editor.element.d.ts +1 -0
  599. package/dist-cms/packages/user/user-group/workspace/user-group/user-group-workspace-editor.element.js +47 -13
  600. package/dist-cms/packages/user/user-group/workspace/user-group/user-group-workspace.context.d.ts +7 -0
  601. package/dist-cms/packages/user/user-group/workspace/user-group/user-group-workspace.context.js +9 -0
  602. package/dist-cms/packages/user/user-permission/fallback-permission-condition/manifests.js +2 -1
  603. package/dist-cms/packages/webhook/manifests.js +2 -1
  604. package/dist-cms/packages/webhook/webhook/repository/detail/manifests.js +2 -1
  605. package/dist-cms/packages/webhook/webhook/repository/item/manifests.js +2 -1
  606. package/dist-cms/packages/webhook/webhook-event/repository/manifests.js +2 -1
  607. package/dist-cms/tsconfig.build.tsbuildinfo +1 -1
  608. package/examples/collection/collection/filter/manifests.ts +17 -0
  609. package/examples/collection/collection/manifests.ts +2 -0
  610. package/examples/picker-data-source/example-custom-picker-collection-data-source.ts +5 -5
  611. package/examples/picker-data-source/index.ts +2 -0
  612. package/examples/picker-data-source/with-thumbnail/example-custom-with-thumbnail-picker-collection-data-source.ts +83 -0
  613. package/examples/picker-data-source/with-thumbnail/images/blue-flowers-small.jpg +0 -0
  614. package/examples/picker-data-source/with-thumbnail/images/branch-small.jpg +0 -0
  615. package/examples/picker-data-source/with-thumbnail/images/grass-small.jpg +0 -0
  616. package/examples/picker-data-source/with-thumbnail/images/red-flowers-small.jpg +0 -0
  617. package/examples/picker-data-source/with-thumbnail/manifests.ts +16 -0
  618. package/examples/workspace-context-initial-name/index.ts +4 -0
  619. package/examples/workspace-context-initial-name/workspace-context.ts +0 -1
  620. package/package.json +22 -18
  621. package/{dist-cms/umbraco-package-schema.json → umbraco-package-schema.json} +706 -1
  622. package/{dist-cms/vscode-html-custom-data.json → vscode-html-custom-data.json} +74 -44
  623. package/dist-cms/packages/user/user/collection/views/grid/user-grid-collection-view.element.d.ts +0 -17
  624. package/dist-cms/packages/user/user/collection/views/grid/user-grid-collection-view.element.js +0 -81
  625. package/dist-cms/packages/user/user-group/collection/user-group-collection.context.d.ts +0 -8
  626. package/dist-cms/packages/user/user-group/collection/user-group-collection.context.js +0 -8
  627. package/dist-cms/packages/user/user-group/collection/user-group-collection.element.d.ts +0 -13
  628. package/dist-cms/packages/user/user-group/collection/user-group-collection.element.js +0 -48
  629. package/dist-cms/umbraco-package.json +0 -1
@@ -9,6 +9,7 @@ export declare class UmbRollbackModalElement extends UmbModalBaseElement<UmbRoll
9
9
  private _isInvariant;
10
10
  private _availableVariants;
11
11
  private _diffs;
12
+ private _showDiff;
12
13
  constructor();
13
14
  get currentVersionHeader(): string;
14
15
  render(): import("lit-html").TemplateResult<1>;
@@ -33,6 +33,7 @@ let UmbRollbackModalElement = class UmbRollbackModalElement extends UmbModalBase
33
33
  this._isInvariant = true;
34
34
  this._availableVariants = [];
35
35
  this._diffs = [];
36
+ this._showDiff = false;
36
37
  this.#rollbackRepository = new UmbRollbackRepository(this);
37
38
  this.#userItemRepository = new UmbUserItemRepository(this);
38
39
  this.#localizeDateOptions = {
@@ -141,7 +142,9 @@ let UmbRollbackModalElement = class UmbRollbackModalElement extends UmbModalBase
141
142
  };
142
143
  }),
143
144
  };
144
- await this.#setDiffs();
145
+ if (this._showDiff) {
146
+ await this.#setDiffs();
147
+ }
145
148
  }
146
149
  async #onRollback() {
147
150
  if (!this._selectedVersion)
@@ -188,9 +191,24 @@ let UmbRollbackModalElement = class UmbRollbackModalElement extends UmbModalBase
188
191
  this._selectedCulture = value.toString();
189
192
  this.#requestVersions();
190
193
  }
194
+ #onToggleDiff(event) {
195
+ const checkbox = event.target;
196
+ this._showDiff = checkbox.checked;
197
+ // If we have toggled on and have a selected version, immediately show the diff.
198
+ if (this._showDiff && this._selectedVersion) {
199
+ this.#setDiffs();
200
+ }
201
+ }
191
202
  #trimQuotes(str) {
192
203
  return str.replace(/^['"]|['"]$/g, '');
193
204
  }
205
+ #getPlainValue(alias) {
206
+ if (alias === 'name') {
207
+ return this._selectedVersion?.name ?? '';
208
+ }
209
+ const prop = this._selectedVersion?.properties.find((x) => x.alias === alias);
210
+ return prop ? this.#trimQuotes(JSON.stringify(prop.value)) : '';
211
+ }
194
212
  #renderCultureSelect() {
195
213
  return html `
196
214
  <uui-select
@@ -260,9 +278,15 @@ let UmbRollbackModalElement = class UmbRollbackModalElement extends UmbModalBase
260
278
  >No selected version</uui-box
261
279
  >
262
280
  `;
281
+ // Build list of property aliases to display (name + all properties)
282
+ const propertyAliases = ['name', ...this._selectedVersion.properties.map((p) => p.alias)];
263
283
  return html `
264
284
  <uui-box headline=${this.currentVersionHeader} id="box-right">
265
- ${unsafeHTML(this.localize.term('rollback_diffHelp'))}
285
+ <uui-toggle
286
+ label=${this.localize.term('rollback_showDiff')}
287
+ @change=${this.#onToggleDiff}
288
+ .checked=${this._showDiff}></uui-toggle>
289
+ ${this._showDiff ? html `<p>${unsafeHTML(this.localize.term('rollback_diffHelp'))}</p>` : nothing}
266
290
  <uui-table>
267
291
  <uui-table-column style="width: 0"></uui-table-column>
268
292
  <uui-table-column></uui-table-column>
@@ -271,19 +295,19 @@ let UmbRollbackModalElement = class UmbRollbackModalElement extends UmbModalBase
271
295
  <uui-table-head-cell>${this.localize.term('general_alias')}</uui-table-head-cell>
272
296
  <uui-table-head-cell>${this.localize.term('general_value')}</uui-table-head-cell>
273
297
  </uui-table-head>
274
- ${repeat(this._diffs, (item) => item.alias, (item) => {
275
- const diff = this._diffs.find((x) => x?.alias === item.alias);
298
+ ${repeat(propertyAliases, (alias) => alias, (alias) => {
299
+ const diff = this._diffs.find((x) => x?.alias === alias);
276
300
  return html `
277
301
  <uui-table-row>
278
- <uui-table-cell>${item.alias}</uui-table-cell>
302
+ <uui-table-cell>${alias}</uui-table-cell>
279
303
  <uui-table-cell>
280
- ${diff
304
+ ${this._showDiff && diff
281
305
  ? diff.diff.map((part) => part.added
282
306
  ? html `<span class="diff-added">${part.value}</span>`
283
307
  : part.removed
284
308
  ? html `<span class="diff-removed">${part.value}</span>`
285
309
  : part.value)
286
- : nothing}
310
+ : this.#getPlainValue(alias)}
287
311
  </uui-table-cell>
288
312
  </uui-table-row>
289
313
  `;
@@ -462,6 +486,9 @@ __decorate([
462
486
  __decorate([
463
487
  state()
464
488
  ], UmbRollbackModalElement.prototype, "_diffs", void 0);
489
+ __decorate([
490
+ state()
491
+ ], UmbRollbackModalElement.prototype, "_showDiff", void 0);
465
492
  UmbRollbackModalElement = __decorate([
466
493
  customElement('umb-rollback-modal')
467
494
  ], UmbRollbackModalElement);
@@ -1,5 +1,6 @@
1
1
  import { UMB_DOCUMENT_ENTITY_TYPE, UMB_DOCUMENT_ROOT_ENTITY_TYPE } from '../entity.js';
2
2
  import { manifests as reloadTreeItemChildrenManifests } from './reload-tree-item-children/manifests.js';
3
+ import { UmbDocumentTreeStore } from './document-tree.store.js';
3
4
  export const UMB_DOCUMENT_TREE_REPOSITORY_ALIAS = 'Umb.Repository.Document.Tree';
4
5
  /**
5
6
  * @deprecated Use {@link UMB_DOCUMENT_TREE_REPOSITORY_ALIAS} instead. This will be removed in Umbraco 18.
@@ -17,7 +18,7 @@ export const manifests = [
17
18
  type: 'treeStore',
18
19
  alias: UMB_DOCUMENT_TREE_STORE_ALIAS,
19
20
  name: 'Document Tree Store',
20
- api: () => import('./document-tree.store.js'),
21
+ api: UmbDocumentTreeStore,
21
22
  },
22
23
  {
23
24
  type: 'tree',
@@ -12,6 +12,7 @@ export declare class UmbDocumentTreeItemContext extends UmbDefaultTreeItemContex
12
12
  readonly flags: import("rxjs").Observable<import("../../../../core/entity-flag/index.js").UmbEntityFlag[]>;
13
13
  readonly ancestors: import("rxjs").Observable<import("../../../../core/entity/index.js").UmbEntityModel[]>;
14
14
  readonly isTrashed: import("rxjs").Observable<boolean>;
15
+ readonly noAccess: import("rxjs").Observable<boolean>;
15
16
  setIsMenu(isMenu: boolean): void;
16
17
  constructor(host: UmbControllerHost);
17
18
  setTreeItem(treeItem: UmbDocumentTreeItemModel | undefined): void;
@@ -42,6 +42,7 @@ export class UmbDocumentTreeItemContext extends UmbDefaultTreeItemContext {
42
42
  // TODO: Move to API
43
43
  this.ancestors = this._treeItem.asObservablePart((item) => item?.ancestors ?? []);
44
44
  this.isTrashed = this._treeItem.asObservablePart((item) => item?.isTrashed ?? false);
45
+ this.noAccess = this._treeItem.asObservablePart((item) => item?.noAccess ?? false);
45
46
  this.observe(this.isTrashed, (isTrashed) => {
46
47
  this.#isTrashedContext.setIsTrashed(isTrashed);
47
48
  });
@@ -3,8 +3,8 @@ import type { UmbDocumentTreeItemContext } from './document-tree-item.context.js
3
3
  import { UmbTreeItemElementBase } from '../../../../core/tree/index.js';
4
4
  export declare class UmbDocumentTreeItemElement extends UmbTreeItemElementBase<UmbDocumentTreeItemModel, UmbDocumentTreeItemContext> {
5
5
  #private;
6
- get api(): UmbDocumentTreeItemContext | undefined;
7
6
  set api(value: UmbDocumentTreeItemContext | undefined);
7
+ get api(): UmbDocumentTreeItemContext | undefined;
8
8
  private _name;
9
9
  /**
10
10
  * @internal
@@ -28,9 +28,6 @@ let UmbDocumentTreeItemElement = class UmbDocumentTreeItemElement extends UmbTre
28
28
  };
29
29
  }
30
30
  #api;
31
- get api() {
32
- return this.#api;
33
- }
34
31
  set api(value) {
35
32
  this.#api = value;
36
33
  if (this.#api) {
@@ -43,9 +40,15 @@ let UmbDocumentTreeItemElement = class UmbDocumentTreeItemElement extends UmbTre
43
40
  });
44
41
  this.observe(this.#api.icon, (icon) => (this.#icon = icon || ''));
45
42
  this.observe(this.#api.flags, (flags) => (this._flags = flags || ''));
43
+ // Observe noAccess from context and update base class property (_noAccess).
44
+ // This enables access restriction behavior (click prevention) and styling from the base class.
45
+ this.observe(this.#api.noAccess, (noAccess) => (this._noAccess = noAccess));
46
46
  }
47
47
  super.api = value;
48
48
  }
49
+ get api() {
50
+ return this.#api;
51
+ }
49
52
  #icon;
50
53
  // eslint-disable-next-line @typescript-eslint/no-unused-vars
51
54
  _extractFlags(item) {
@@ -55,7 +58,9 @@ let UmbDocumentTreeItemElement = class UmbDocumentTreeItemElement extends UmbTre
55
58
  return this.#icon;
56
59
  }
57
60
  renderLabel() {
58
- return html `<span id="label" slot="label" class=${classMap({ draft: this._isDraft })}>${this._name}</span> `;
61
+ return html `<span id="label" slot="label" class=${classMap({ draft: this._isDraft, noAccess: this._noAccess })}>
62
+ ${this._name}
63
+ </span> `;
59
64
  }
60
65
  static { this.styles = [
61
66
  ...UmbTreeItemElementBase.styles,
@@ -0,0 +1,7 @@
1
+ import type { UmbDocumentTreeItemModel } from './types.js';
2
+ /**
3
+ * Type guard to check if an item is a document tree item with noAccess property
4
+ * @param {unknown} item - The item to check
5
+ * @returns {boolean} true if the item is a UmbDocumentTreeItemModel
6
+ */
7
+ export declare function isDocumentTreeItem(item: unknown): item is UmbDocumentTreeItemModel;
@@ -0,0 +1,8 @@
1
+ /**
2
+ * Type guard to check if an item is a document tree item with noAccess property
3
+ * @param {unknown} item - The item to check
4
+ * @returns {boolean} true if the item is a UmbDocumentTreeItemModel
5
+ */
6
+ export function isDocumentTreeItem(item) {
7
+ return typeof item === 'object' && item !== null && 'noAccess' in item;
8
+ }
@@ -45,6 +45,7 @@ export interface UmbDocumentUrlInfoModel {
45
45
  export interface UmbDocumentValueModel<ValueType = unknown> extends UmbElementValueModel<ValueType> {
46
46
  }
47
47
  export interface UmbDocumentVariantOptionModel extends UmbEntityVariantOptionModel<UmbDocumentVariantModel> {
48
+ documentCount?: number;
48
49
  }
49
50
  export interface UmbDocumentVariantPublishModel extends UmbEntityVariantPublishModel {
50
51
  }
@@ -1,4 +1,5 @@
1
1
  import { UMB_DOCUMENT_URL_REPOSITORY_ALIAS, UMB_DOCUMENT_URL_STORE_ALIAS } from './constants.js';
2
+ import { UmbDocumentUrlStore } from './document-url.store.js';
2
3
  const urlRepository = {
3
4
  type: 'repository',
4
5
  alias: UMB_DOCUMENT_URL_REPOSITORY_ALIAS,
@@ -9,6 +10,6 @@ const urlStore = {
9
10
  type: 'itemStore',
10
11
  alias: UMB_DOCUMENT_URL_STORE_ALIAS,
11
12
  name: 'Document Url Store',
12
- api: () => import('./document-url.store.js'),
13
+ api: UmbDocumentUrlStore,
13
14
  };
14
15
  export const manifests = [urlRepository, urlStore];
@@ -1,9 +1,10 @@
1
1
  import { UMB_DOCUMENT_USER_PERMISSION_CONDITION_ALIAS } from './constants.js';
2
+ import { UmbDocumentUserPermissionCondition } from './document-user-permission.condition.js';
2
3
  export const manifests = [
3
4
  {
4
5
  type: 'condition',
5
6
  name: 'Document User Permission Condition',
6
7
  alias: UMB_DOCUMENT_USER_PERMISSION_CONDITION_ALIAS,
7
- api: () => import('./document-user-permission.condition.js'),
8
+ api: UmbDocumentUserPermissionCondition,
8
9
  },
9
10
  ];
@@ -83,7 +83,7 @@ let UmbDocumentPropertyValueUserPermissionFlowPropertyTypeModalElement = class U
83
83
  ${this._documentTypeProperties.length > 0
84
84
  ? repeat(this._documentTypeProperties, (item) => item.unique, (item) => html `
85
85
  <uui-ref-node
86
- name=${item.name ?? ''}
86
+ name=${this.localize.string(item.name ?? '')}
87
87
  detail=${this.#getItemDetail(item)}
88
88
  ?selectable=${this._pickableFilter(item)}
89
89
  select-only
@@ -173,7 +173,7 @@ let UmbInputDocumentPropertyValueUserPermissionElement = class UmbInputDocumentP
173
173
  }
174
174
  const documentType = this._documentTypes?.find((item) => item.unique === permission.documentType.unique);
175
175
  const propertyType = documentType?.properties.find((item) => item.unique === permission.propertyType.unique);
176
- const permissionName = `${documentType?.name}: ${propertyType?.name} (${propertyType?.alias})`;
176
+ const permissionName = `${this.localize.string(documentType?.name)}: ${this.localize.string(propertyType?.name)} (${propertyType?.alias})`;
177
177
  const verbNames = this.#getVerbNamesForPermission(permission);
178
178
  return html `
179
179
  <uui-ref-node .name=${permissionName} .detail=${verbNames || ''} readonly>
@@ -1,5 +1,11 @@
1
1
  import type { UmbDocumentVariantOptionModel } from './types.js';
2
2
  type VariantType = UmbDocumentVariantOptionModel;
3
- export declare const sortVariants: (a: VariantType, b: VariantType) => number;
3
+ /**
4
+ * Sorts document variants based on multiple criteria:
5
+ * @param {VariantType} a - First variant to compare
6
+ * @param {VariantType} b - Second variant to compare
7
+ * @returns {number} - Sorting value
8
+ */
9
+ export declare function sortVariants(a: VariantType, b: VariantType): number;
4
10
  export declare const TimeOptions: Intl.DateTimeFormatOptions;
5
11
  export {};
@@ -13,17 +13,45 @@ const getVariantStateOrderValue = (variant) => {
13
13
  }
14
14
  return variantStatesOrder[variant.state] || fallbackOrder;
15
15
  };
16
- export const sortVariants = (a, b) => {
17
- const compareDefault = (a, b) => (a.language?.isDefault ? -1 : 1) - (b.language?.isDefault ? -1 : 1);
18
- // Make sure mandatory variants goes on top, unless they are published, cause then they already goes to the top and then we want to mix them with other published variants.
19
- const compareMandatory = (a, b) => a.variant?.state === DocumentVariantStateModel.PUBLISHED_PENDING_CHANGES ||
16
+ // eslint-disable-next-line jsdoc/require-jsdoc
17
+ function compareDefault(a, b) {
18
+ return (a.language?.isDefault ? -1 : 1) - (b.language?.isDefault ? -1 : 1);
19
+ }
20
+ // Make sure mandatory variants goes on top, unless they are published, cause then they already goes to the top and then we want to mix them with other published variants.
21
+ // eslint-disable-next-line jsdoc/require-jsdoc
22
+ function compareMandatory(a, b) {
23
+ return a.variant?.state === DocumentVariantStateModel.PUBLISHED_PENDING_CHANGES ||
20
24
  a.variant?.state === DocumentVariantStateModel.PUBLISHED
21
25
  ? 0
22
26
  : (a.language?.isMandatory ? -1 : 1) - (b.language?.isMandatory ? -1 : 1);
23
- const compareState = (a, b) => getVariantStateOrderValue(a.variant) - getVariantStateOrderValue(b.variant);
24
- const compareName = (a, b) => a.variant?.name.localeCompare(b.variant?.name || '') || 99;
27
+ }
28
+ // eslint-disable-next-line jsdoc/require-jsdoc
29
+ function compareState(a, b) {
30
+ return getVariantStateOrderValue(a.variant) - getVariantStateOrderValue(b.variant);
31
+ }
32
+ // eslint-disable-next-line jsdoc/require-jsdoc
33
+ function compareName(a, b) {
34
+ const nameA = a.language?.name;
35
+ const nameB = b.language?.name;
36
+ // If both names are missing, consider them equal.
37
+ if (!nameA && !nameB)
38
+ return 0;
39
+ // If only one name is missing, sort the defined name first.
40
+ if (!nameA)
41
+ return 1;
42
+ if (!nameB)
43
+ return -1;
44
+ return nameA.localeCompare(nameB);
45
+ }
46
+ /**
47
+ * Sorts document variants based on multiple criteria:
48
+ * @param {VariantType} a - First variant to compare
49
+ * @param {VariantType} b - Second variant to compare
50
+ * @returns {number} - Sorting value
51
+ */
52
+ export function sortVariants(a, b) {
25
53
  return compareDefault(a, b) || compareMandatory(a, b) || compareState(a, b) || compareName(a, b);
26
- };
54
+ }
27
55
  export const TimeOptions = {
28
56
  year: 'numeric',
29
57
  month: 'long',
@@ -1,7 +1,8 @@
1
1
  import { UMB_DOCUMENT_IS_NOT_TRASHED_CONDITION_ALIAS } from './constants.js';
2
+ import { UmbDocumentIsNotTrashedWorkspaceCondition } from './document-is-not-trashed.condition.js';
2
3
  export const manifest = {
3
4
  type: 'condition',
4
5
  name: 'Document is not trashed Workspace Condition',
5
6
  alias: UMB_DOCUMENT_IS_NOT_TRASHED_CONDITION_ALIAS,
6
- api: () => import('./document-is-not-trashed.condition.js'),
7
+ api: UmbDocumentIsNotTrashedWorkspaceCondition,
7
8
  };
@@ -1,7 +1,8 @@
1
1
  import { UMB_DOCUMENT_IS_TRASHED_CONDITION_ALIAS } from './constants.js';
2
+ import { UmbDocumentIsTrashedWorkspaceCondition } from './document-is-trashed.condition.js';
2
3
  export const manifest = {
3
4
  type: 'condition',
4
5
  name: 'Document is trashed Workspace Condition',
5
6
  alias: UMB_DOCUMENT_IS_TRASHED_CONDITION_ALIAS,
6
- api: () => import('./document-is-trashed.condition.js'),
7
+ api: UmbDocumentIsTrashedWorkspaceCondition,
7
8
  };
@@ -54,6 +54,7 @@ let UmbDocumentWorkspaceEditorElement = class UmbDocumentWorkspaceEditorElement
54
54
  #generateRoutes() {
55
55
  if (!this.#variants || this.#variants.length === 0 || !this.#appCulture) {
56
56
  this._routes = [];
57
+ this.#ensureForbiddenRoute(this._routes);
57
58
  return;
58
59
  }
59
60
  // Generate split view routes for all available routes
@@ -115,6 +116,16 @@ let UmbDocumentWorkspaceEditorElement = class UmbDocumentWorkspaceEditorElement
115
116
  },
116
117
  });
117
118
  }
119
+ this.#ensureForbiddenRoute(routes);
120
+ this._routes = routes;
121
+ }
122
+ /**
123
+ * Ensure that there is a route to handle forbidden access.
124
+ * This route will display a forbidden message when the user does not have permission to access certain resources.
125
+ * Also handles not found routes.
126
+ * @param routes
127
+ */
128
+ #ensureForbiddenRoute(routes = []) {
118
129
  routes.push({
119
130
  path: '**',
120
131
  component: async () => {
@@ -122,7 +133,6 @@ let UmbDocumentWorkspaceEditorElement = class UmbDocumentWorkspaceEditorElement
122
133
  return this.#isForbidden ? router.UmbRouteForbiddenElement : router.UmbRouteNotFoundElement;
123
134
  },
124
135
  });
125
- this._routes = routes;
126
136
  }
127
137
  render() {
128
138
  return !this._loading && this._routes
@@ -1,8 +1,9 @@
1
1
  import type { UmbDocumentVariantOptionModel } from '../types.js';
2
+ import { sortVariants } from '../utils.js';
2
3
  import { UmbWorkspaceSplitViewVariantSelectorElement } from '../../../core/workspace/index.js';
3
4
  export declare class UmbDocumentWorkspaceSplitViewVariantSelectorElement extends UmbWorkspaceSplitViewVariantSelectorElement<UmbDocumentVariantOptionModel> {
4
5
  #private;
5
- protected _variantSorter: (a: UmbDocumentVariantOptionModel, b: UmbDocumentVariantOptionModel) => number;
6
+ protected _variantSorter: typeof sortVariants;
6
7
  private _variantsWithPendingChanges;
7
8
  constructor();
8
9
  protected _renderVariantDetails(variantOption: UmbDocumentVariantOptionModel): import("lit-html").TemplateResult<1>;
@@ -6,7 +6,6 @@ import { UmbDocumentValidationRepository } from '../repository/validation/index.
6
6
  import { UMB_DOCUMENT_CONFIGURATION_CONTEXT } from '../index.js';
7
7
  import { UMB_DOCUMENT_DETAIL_MODEL_VARIANT_SCAFFOLD, UMB_DOCUMENT_WORKSPACE_ALIAS } from './constants.js';
8
8
  import { createExtensionApiByAlias } from '../../../core/extension-registry/index.js';
9
- import { observeMultiple } from '../../../../libs/observable-api/index.js';
10
9
  import { umbPeekError } from '../../../core/notification/index.js';
11
10
  import { UmbContentDetailWorkspaceContextBase } from '../../../content/content/index.js';
12
11
  import { UmbDeprecation } from '../../../core/utils/index.js';
@@ -61,7 +60,6 @@ export class UmbDocumentWorkspaceContext extends UmbContentDetailWorkspaceContex
61
60
  this.consumeContext(UMB_DOCUMENT_CONFIGURATION_CONTEXT, async (context) => {
62
61
  const config = await context?.getDocumentConfiguration();
63
62
  const allowSegmentCreation = config?.allowNonExistingSegmentsCreation ?? false;
64
- const allowEditInvariantFromNonDefault = config?.allowEditInvariantFromNonDefault ?? true;
65
63
  // Deprecation warning for allowNonExistingSegmentsCreation (default from server is true, so we warn on false)
66
64
  if (!allowSegmentCreation) {
67
65
  new UmbDeprecation({
@@ -78,9 +76,6 @@ export class UmbDocumentWorkspaceContext extends UmbContentDetailWorkspaceContex
78
76
  }
79
77
  return true;
80
78
  };
81
- if (allowEditInvariantFromNonDefault === false) {
82
- this.#preventEditInvariantFromNonDefault();
83
- }
84
79
  });
85
80
  this.consumeContext(UMB_ACTION_EVENT_CONTEXT, (actionEventContext) => {
86
81
  this.#removeEventListeners();
@@ -301,30 +296,6 @@ export class UmbDocumentWorkspaceContext extends UmbContentDetailWorkspaceContex
301
296
  permitted: true,
302
297
  });
303
298
  }
304
- #preventEditInvariantFromNonDefault() {
305
- this.observe(observeMultiple([this.structure.contentTypeProperties, this.variantOptions]), ([properties, variantOptions]) => {
306
- if (properties.length === 0)
307
- return;
308
- if (variantOptions.length === 0)
309
- return;
310
- variantOptions.forEach((variantOption) => {
311
- // Do not add a rule for the default language. It is always permitted to edit.
312
- if (variantOption.language.isDefault)
313
- return;
314
- const datasetVariantId = UmbVariantId.CreateFromPartial(variantOption);
315
- const invariantVariantId = UmbVariantId.CreateInvariant();
316
- const unique = `UMB_PREVENT_EDIT_INVARIANT_FROM_NON_DEFAULT_DATASET=${datasetVariantId.toString()}_PROPERTY_${invariantVariantId.toString()}`;
317
- const rule = {
318
- unique,
319
- message: 'Shared properties can only be edited in the default language',
320
- variantId: invariantVariantId,
321
- datasetVariantId,
322
- permitted: false,
323
- };
324
- this.propertyWriteGuard.addRule(rule);
325
- });
326
- });
327
- }
328
299
  #addEventListeners() {
329
300
  this.#actionEventContext?.addEventListener(UmbEntityTrashedEvent.TYPE, this.#onRecycleBinEvent);
330
301
  this.#actionEventContext?.addEventListener(UmbEntityRestoredFromRecycleBinEvent.TYPE, this.#onRecycleBinEvent);
@@ -14,6 +14,7 @@ let UmbExtensionTableCollectionViewElement = class UmbExtensionTableCollectionVi
14
14
  super();
15
15
  this._tableConfig = {
16
16
  allowSelection: false,
17
+ hideIcon: true,
17
18
  };
18
19
  this._tableColumns = [
19
20
  {
@@ -1,7 +1,8 @@
1
1
  import { UMB_LANGUAGE_USER_PERMISSION_CONDITION_ALIAS } from './constants.js';
2
+ import { UmbLanguageUserPermissionCondition } from './language-user-permission.condition.js';
2
3
  export const manifest = {
3
4
  type: 'condition',
4
5
  name: 'Language User Permission Condition',
5
6
  alias: UMB_LANGUAGE_USER_PERMISSION_CONDITION_ALIAS,
6
- api: () => import('./language-user-permission.condition.js'),
7
+ api: UmbLanguageUserPermissionCondition,
7
8
  };
@@ -9,6 +9,7 @@ import { manifests as menuManifests } from './menu/manifests.js';
9
9
  import { manifests as modalManifests } from './modals/manifests.js';
10
10
  import { manifests as repositoryManifests } from './repository/manifests.js';
11
11
  import { manifests as workspaceManifests } from './workspace/manifests.js';
12
+ import * as entryPointModule from './entry-point.js';
12
13
  import { UMB_WORKSPACE_CONDITION_ALIAS } from '../core/workspace/index.js';
13
14
  export const manifests = [
14
15
  ...appLanguageSelect,
@@ -38,6 +39,6 @@ export const manifests = [
38
39
  name: 'Language Backoffice Entry Point',
39
40
  alias: 'Umb.EntryPoint.Language',
40
41
  type: 'backofficeEntryPoint',
41
- js: () => import('./entry-point.js'),
42
+ js: entryPointModule,
42
43
  },
43
44
  ];
@@ -1,4 +1,5 @@
1
1
  import { UMB_LANGUAGE_DETAIL_REPOSITORY_ALIAS, UMB_LANGUAGE_DETAIL_STORE_ALIAS } from './constants.js';
2
+ import { UmbLanguageDetailStore } from './language-detail.store.js';
2
3
  export const manifests = [
3
4
  {
4
5
  type: 'repository',
@@ -10,6 +11,6 @@ export const manifests = [
10
11
  type: 'store',
11
12
  alias: UMB_LANGUAGE_DETAIL_STORE_ALIAS,
12
13
  name: 'Language Detail Store',
13
- api: () => import('./language-detail.store.js'),
14
+ api: UmbLanguageDetailStore,
14
15
  },
15
16
  ];
@@ -1,4 +1,5 @@
1
1
  import { UMB_LANGUAGE_ITEM_REPOSITORY_ALIAS, UMB_LANGUAGE_STORE_ALIAS } from './constants.js';
2
+ import { UmbLanguageItemStore } from './language-item.store.js';
2
3
  export const manifests = [
3
4
  {
4
5
  type: 'repository',
@@ -10,6 +11,6 @@ export const manifests = [
10
11
  type: 'itemStore',
11
12
  alias: UMB_LANGUAGE_STORE_ALIAS,
12
13
  name: 'Language Item Store',
13
- api: () => import('./language-item.store.js'),
14
+ api: UmbLanguageItemStore,
14
15
  },
15
16
  ];
@@ -242,22 +242,36 @@ export class UmbLogViewerWorkspaceContext extends UmbContextBase {
242
242
  setLogLevelsFilter(logLevels) {
243
243
  this.#logLevelsFilter.setValue(logLevels);
244
244
  }
245
+ #startPolling(interval) {
246
+ this.stopPolling();
247
+ this.#intervalID = setInterval(() => {
248
+ this.currentPage = 1;
249
+ this.getLogs();
250
+ }, interval);
251
+ }
245
252
  togglePolling() {
246
253
  const isEnabled = !this.#polling.getValue().enabled;
247
254
  this.#polling.update({
248
255
  enabled: isEnabled,
249
256
  });
250
257
  if (isEnabled) {
251
- this.#intervalID = setInterval(() => {
252
- this.currentPage = 1;
253
- this.getLogs();
254
- }, this.#polling.getValue().interval);
258
+ this.#startPolling(this.#polling.getValue().interval);
255
259
  return;
256
260
  }
257
261
  this.stopPolling();
258
262
  }
259
263
  setPollingInterval(interval) {
264
+ const wasEnabled = this.#polling.getValue().enabled;
260
265
  this.#polling.update({ interval });
266
+ // If polling was already enabled, restart it with the new interval
267
+ // If polling was disabled, enable it and start it with the new interval
268
+ if (wasEnabled) {
269
+ this.#startPolling(interval);
270
+ }
271
+ else {
272
+ this.#polling.update({ enabled: true });
273
+ this.#startPolling(interval);
274
+ }
261
275
  }
262
276
  toggleSortOrder() {
263
277
  const direction = this.#sortingDirection.getValue();
@@ -5,7 +5,7 @@ export declare class UmbLogViewerLogLevelFilterMenuElement extends UmbLitElement
5
5
  private _logLevelFilter;
6
6
  private set _logViewerContext(value);
7
7
  private get _logViewerContext();
8
- setLogLevelDebounce: (this: any, ...args: any[]) => void;
8
+ setLogLevelDebounce: import("../../../../../core/utils/index.js").UmbDebouncedFunction<() => void>;
9
9
  render(): import("lit-html").TemplateResult<1>;
10
10
  static styles: import("lit").CSSResult[];
11
11
  }
@@ -40,7 +40,6 @@ let UmbLogViewerPollingButtonElement = class UmbLogViewerPollingButtonElement ex
40
40
  if (this._dropdownElement) {
41
41
  this._dropdownElement.open = false;
42
42
  }
43
- this.#togglePolling();
44
43
  }
45
44
  #getPollingLabel() {
46
45
  const seconds = this._poolingConfig.interval / 1000;
@@ -1,3 +1,4 @@
1
+ // TODO: Should be changed into a custom 'type' as it is different from the native 'change' event. [NL]
1
2
  export class UmbDropzoneChangeEvent extends Event {
2
3
  static { this.TYPE = 'change'; }
3
4
  constructor(items, args) {
@@ -7,3 +7,8 @@ export declare class UmbDropzoneSubmittedEvent extends Event {
7
7
  items: UmbUploadableItem[];
8
8
  constructor(items: Array<UmbUploadableItem>, args?: EventInit);
9
9
  }
10
+ declare global {
11
+ interface GlobalEventHandlersEventMap {
12
+ [UmbDropzoneSubmittedEvent.TYPE]: UmbDropzoneSubmittedEvent;
13
+ }
14
+ }
@@ -133,7 +133,8 @@ let UmbImagingThumbnailElement = class UmbImagingThumbnailElement extends UmbLit
133
133
  display: block;
134
134
  width: 100%;
135
135
  height: 100%;
136
- object-fit: cover;
136
+ object-fit: contain;
137
+ object-position: center;
137
138
 
138
139
  background-image: url('data:image/svg+xml;charset=utf-8,<svg xmlns="http://www.w3.org/2000/svg" width="100" height="100" fill-opacity=".1"><path d="M50 0h50v50H50zM0 50h50v50H0z"/></svg>');
139
140
  background-size: 10px 10px;
@@ -1,4 +1,5 @@
1
1
  import { UMB_IMAGING_REPOSITORY_ALIAS, UMB_IMAGING_STORE_ALIAS } from './constants.js';
2
+ import { UmbImagingStore } from './imaging.store.js';
2
3
  export const manifests = [
3
4
  {
4
5
  type: 'repository',
@@ -10,6 +11,6 @@ export const manifests = [
10
11
  type: 'store',
11
12
  alias: UMB_IMAGING_STORE_ALIAS,
12
13
  name: 'Imaging Store',
13
- api: () => import('./imaging.store.js'),
14
+ api: UmbImagingStore,
14
15
  },
15
16
  ];
@@ -2,3 +2,8 @@ export declare class UmbImageCropChangeEvent extends Event {
2
2
  static readonly TYPE = "imagecrop-change";
3
3
  constructor(args?: EventInit);
4
4
  }
5
+ declare global {
6
+ interface GlobalEventHandlersEventMap {
7
+ [UmbImageCropChangeEvent.TYPE]: UmbImageCropChangeEvent;
8
+ }
9
+ }