@umbraco-cms/backoffice 14.0.0-9cc9c792 → 14.0.0-a0074b6e

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 (295) hide show
  1. package/dist-cms/apps/backoffice/backoffice.element.d.ts +6 -0
  2. package/dist-cms/apps/backoffice/backoffice.element.js +14 -3
  3. package/dist-cms/apps/backoffice/{extension-initializer.controller.d.ts → server-extension-registrator.controller.d.ts} +1 -4
  4. package/dist-cms/apps/backoffice/{extension-initializer.controller.js → server-extension-registrator.controller.js} +4 -22
  5. package/dist-cms/custom-elements.json +917 -920
  6. package/dist-cms/external/uui/index.js +291 -250
  7. package/dist-cms/libs/extension-api/bundle-extension-initializer.d.ts +2 -2
  8. package/dist-cms/libs/extension-api/bundle-extension-initializer.js +4 -2
  9. package/dist-cms/libs/extension-api/entry-point-extension-initializer.d.ts +2 -1
  10. package/dist-cms/libs/extension-api/entry-point-extension-initializer.js +4 -2
  11. package/dist-cms/mocks/data/stylesheet.data.d.ts +27 -5
  12. package/dist-cms/mocks/data/stylesheet.data.js +197 -10
  13. package/dist-cms/mocks/data/utils.d.ts +2 -1
  14. package/dist-cms/mocks/data/utils.js +5 -0
  15. package/dist-cms/mocks/handlers/manifests.handlers.js +12 -0
  16. package/dist-cms/mocks/handlers/stylesheet.handlers.js +97 -1
  17. package/dist-cms/packages/core/collection/collection-selection-actions.element.js +3 -3
  18. package/dist-cms/packages/core/components/index.d.ts +0 -1
  19. package/dist-cms/packages/core/components/index.js +0 -1
  20. package/dist-cms/packages/core/components/input-tiny-mce/input-tiny-mce.element.d.ts +2 -2
  21. package/dist-cms/packages/core/components/input-tiny-mce/tiny-mce-plugin.d.ts +3 -2
  22. package/dist-cms/packages/core/components/property-editor-config/property-editor-config.element.d.ts +5 -24
  23. package/dist-cms/packages/core/components/property-editor-config/property-editor-config.element.js +12 -66
  24. package/dist-cms/packages/core/components/property-type-based-property/property-type-based-property.element.d.ts +0 -16
  25. package/dist-cms/packages/core/components/property-type-based-property/property-type-based-property.element.js +4 -44
  26. package/dist-cms/packages/core/components/variant-selector/variant-selector.element.d.ts +2 -3
  27. package/dist-cms/packages/core/components/variant-selector/variant-selector.element.js +25 -27
  28. package/dist-cms/packages/core/content-type/content-type-structure-manager.class.d.ts +4 -0
  29. package/dist-cms/packages/core/content-type/content-type-structure-manager.class.js +45 -0
  30. package/dist-cms/packages/core/extension-registry/interfaces/property-editor-ui-extension-element.interface.d.ts +2 -2
  31. package/dist-cms/packages/core/extension-registry/models/property-editor.model.d.ts +2 -2
  32. package/dist-cms/packages/core/property-editor/config/index.d.ts +2 -0
  33. package/dist-cms/packages/core/property-editor/config/index.js +2 -0
  34. package/dist-cms/packages/core/{components/data-type/data-type-property-collection.class.d.ts → property-editor/config/property-editor-config-collection.class.d.ts} +4 -4
  35. package/dist-cms/packages/core/{components/data-type/data-type-property-collection.class.js → property-editor/config/property-editor-config-collection.class.js} +1 -1
  36. package/dist-cms/packages/core/property-editor/config/property-editor-config.type.d.ts +3 -0
  37. package/dist-cms/packages/core/property-editor/index.d.ts +1 -1
  38. package/dist-cms/packages/core/property-editor/index.js +1 -1
  39. package/dist-cms/packages/core/property-editor/uis/block-grid/property-editor-ui-block-grid.element.d.ts +2 -3
  40. package/dist-cms/packages/core/property-editor/uis/block-list/property-editor-ui-block-list.element.d.ts +3 -3
  41. package/dist-cms/packages/core/property-editor/uis/checkbox-list/property-editor-ui-checkbox-list.element.d.ts +2 -2
  42. package/dist-cms/packages/core/property-editor/uis/color-picker/property-editor-ui-color-picker.element.d.ts +2 -2
  43. package/dist-cms/packages/core/property-editor/uis/date-picker/property-editor-ui-date-picker.element.d.ts +2 -2
  44. package/dist-cms/packages/core/property-editor/uis/dropdown/property-editor-ui-dropdown.element.d.ts +2 -2
  45. package/dist-cms/packages/core/property-editor/uis/eye-dropper/property-editor-ui-eye-dropper.element.d.ts +2 -2
  46. package/dist-cms/packages/core/property-editor/uis/icon-picker/property-editor-ui-icon-picker.element.d.ts +2 -2
  47. package/dist-cms/packages/core/property-editor/uis/image-cropper/property-editor-ui-image-cropper.element.d.ts +2 -2
  48. package/dist-cms/packages/core/property-editor/uis/image-crops-configuration/property-editor-ui-image-crops-configuration.element.d.ts +2 -2
  49. package/dist-cms/packages/core/property-editor/uis/label/property-editor-ui-label.element.d.ts +2 -2
  50. package/dist-cms/packages/core/property-editor/uis/markdown-editor/property-editor-ui-markdown-editor.element.d.ts +2 -2
  51. package/dist-cms/packages/core/property-editor/uis/media-picker/property-editor-ui-media-picker.element.d.ts +2 -2
  52. package/dist-cms/packages/core/property-editor/uis/member-group-picker/property-editor-ui-member-group-picker.element.d.ts +2 -2
  53. package/dist-cms/packages/core/property-editor/uis/member-picker/property-editor-ui-member-picker.element.d.ts +2 -2
  54. package/dist-cms/packages/core/property-editor/uis/multi-url-picker/property-editor-ui-multi-url-picker.element.d.ts +2 -2
  55. package/dist-cms/packages/core/property-editor/uis/multiple-text-string/property-editor-ui-multiple-text-string.element.d.ts +2 -2
  56. package/dist-cms/packages/core/property-editor/uis/number/property-editor-ui-number.element.d.ts +2 -2
  57. package/dist-cms/packages/core/property-editor/uis/number-range/property-editor-ui-number-range.element.d.ts +2 -2
  58. package/dist-cms/packages/core/property-editor/uis/order-direction/property-editor-ui-order-direction.element.d.ts +2 -2
  59. package/dist-cms/packages/core/property-editor/uis/overlay-size/property-editor-ui-overlay-size.element.d.ts +2 -2
  60. package/dist-cms/packages/core/property-editor/uis/radio-button-list/property-editor-ui-radio-button-list.element.d.ts +2 -2
  61. package/dist-cms/packages/core/property-editor/uis/slider/property-editor-ui-slider.element.d.ts +2 -2
  62. package/dist-cms/packages/core/property-editor/uis/text-box/property-editor-ui-text-box.element.d.ts +2 -2
  63. package/dist-cms/packages/core/property-editor/uis/textarea/property-editor-ui-textarea.element.d.ts +2 -2
  64. package/dist-cms/packages/core/property-editor/uis/tiny-mce/config/toolbar/property-editor-ui-tiny-mce-toolbar-configuration.element.d.ts +2 -2
  65. package/dist-cms/packages/core/property-editor/uis/tiny-mce/property-editor-ui-tiny-mce.element.d.ts +2 -2
  66. package/dist-cms/packages/core/property-editor/uis/toggle/property-editor-ui-toggle.element.d.ts +2 -2
  67. package/dist-cms/packages/core/property-editor/uis/tree-picker/property-editor-ui-tree-picker.element.d.ts +2 -2
  68. package/dist-cms/packages/core/property-editor/uis/upload-field/property-editor-ui-upload-field.element.d.ts +2 -2
  69. package/dist-cms/packages/core/property-editor/uis/user-picker/property-editor-ui-user-picker.element.d.ts +2 -2
  70. package/dist-cms/packages/core/property-editor/uis/value-type/property-editor-ui-value-type.element.d.ts +2 -2
  71. package/dist-cms/packages/core/repositories/index.d.ts +1 -0
  72. package/dist-cms/packages/core/repositories/index.js +1 -0
  73. package/dist-cms/packages/core/repositories/repository.interface.d.ts +10 -0
  74. package/dist-cms/packages/core/variant/variant-id.class.d.ts +5 -0
  75. package/dist-cms/packages/core/variant/variant-id.class.js +16 -2
  76. package/dist-cms/packages/core/workspace/index.d.ts +3 -2
  77. package/dist-cms/packages/core/workspace/index.js +3 -2
  78. package/dist-cms/packages/core/workspace/types/workspace-property-data.type.d.ts +2 -2
  79. package/dist-cms/packages/core/workspace/variant-context/index.d.ts +5 -0
  80. package/dist-cms/packages/core/workspace/variant-context/index.js +5 -0
  81. package/dist-cms/packages/core/workspace/variant-context/invariant-workspace-variant-context.d.ts +28 -0
  82. package/dist-cms/packages/core/workspace/variant-context/invariant-workspace-variant-context.js +48 -0
  83. package/dist-cms/packages/core/workspace/variant-context/nameable-variant-context.interface.d.ts +7 -0
  84. package/dist-cms/packages/core/workspace/variant-context/nameable-variant-context.token.d.ts +5 -0
  85. package/dist-cms/packages/core/workspace/variant-context/nameable-variant-context.token.js +3 -0
  86. package/dist-cms/packages/core/workspace/variant-context/variant-context.interface.d.ts +26 -0
  87. package/dist-cms/packages/core/workspace/variant-context/variant-context.token.d.ts +3 -0
  88. package/dist-cms/packages/core/workspace/variant-context/variant-context.token.js +2 -0
  89. package/dist-cms/packages/core/workspace/workspace-context/index.d.ts +7 -4
  90. package/dist-cms/packages/core/workspace/workspace-context/index.js +7 -4
  91. package/dist-cms/packages/core/workspace/workspace-context/property-structure-workspace-context.interface.d.ts +6 -0
  92. package/dist-cms/packages/core/workspace/workspace-context/publishable-workspace-context.interface.d.ts +4 -0
  93. package/dist-cms/packages/core/workspace/workspace-context/publishable-workspace-context.interface.js +1 -0
  94. package/dist-cms/packages/core/workspace/workspace-context/saveable-workspace-context.interface.d.ts +4 -0
  95. package/dist-cms/packages/core/workspace/workspace-context/saveable-workspace-context.interface.js +1 -0
  96. package/dist-cms/packages/core/workspace/workspace-context/variant-workspace-context.token.d.ts +5 -0
  97. package/dist-cms/packages/core/workspace/workspace-context/variant-workspace-context.token.js +2 -0
  98. package/dist-cms/packages/core/workspace/workspace-context/workspace-context.d.ts +2 -2
  99. package/dist-cms/packages/core/workspace/workspace-context/workspace-context.interface.d.ts +5 -7
  100. package/dist-cms/packages/core/workspace/workspace-context/workspace-invariantable-context.interface.d.ts +13 -0
  101. package/dist-cms/packages/core/workspace/workspace-context/workspace-invariantable-context.interface.js +1 -0
  102. package/dist-cms/packages/core/workspace/workspace-context/workspace-variantable-context.interface.d.ts +18 -0
  103. package/dist-cms/packages/core/workspace/workspace-context/workspace-variantable-context.interface.js +1 -0
  104. package/dist-cms/packages/core/workspace/workspace-editor/workspace-editor.element.js +1 -1
  105. package/dist-cms/packages/core/workspace/workspace-property/workspace-property.context.d.ts +8 -8
  106. package/dist-cms/packages/core/workspace/workspace-property/workspace-property.context.js +49 -35
  107. package/dist-cms/packages/core/workspace/workspace-property/workspace-property.element.d.ts +2 -19
  108. package/dist-cms/packages/core/workspace/workspace-property/workspace-property.element.js +3 -30
  109. package/dist-cms/packages/core/workspace/workspace-split-view/index.d.ts +2 -0
  110. package/dist-cms/packages/core/workspace/workspace-split-view/index.js +2 -0
  111. package/dist-cms/packages/core/workspace/workspace-split-view/workspace-split-view.context.d.ts +16 -0
  112. package/dist-cms/packages/core/workspace/workspace-split-view/workspace-split-view.context.js +66 -0
  113. package/dist-cms/packages/core/workspace/{workspace-variant/workspace-variant.element.d.ts → workspace-split-view/workspace-split-view.element.d.ts} +5 -6
  114. package/dist-cms/packages/core/workspace/{workspace-variant/workspace-variant.element.js → workspace-split-view/workspace-split-view.element.js} +12 -18
  115. package/dist-cms/packages/dictionary/dictionary/workspace/dictionary-workspace.context.d.ts +3 -3
  116. package/dist-cms/packages/documents/document-types/workspace/document-type-workspace.context.d.ts +3 -3
  117. package/dist-cms/packages/documents/documents/property-editors/document-picker/property-editor-ui-document-picker.element.d.ts +2 -2
  118. package/dist-cms/packages/documents/documents/variant-context/document-variant-context.d.ts +35 -0
  119. package/dist-cms/packages/documents/documents/variant-context/document-variant-context.js +89 -0
  120. package/dist-cms/packages/documents/documents/variant-context/document-variant-context.token.d.ts +5 -0
  121. package/dist-cms/packages/documents/documents/variant-context/document-variant-context.token.js +3 -0
  122. package/dist-cms/packages/documents/documents/workspace/document-workspace-editor.element.js +1 -0
  123. package/dist-cms/packages/documents/documents/workspace/document-workspace-split-view.element.d.ts +0 -1
  124. package/dist-cms/packages/documents/documents/workspace/document-workspace-split-view.element.js +3 -5
  125. package/dist-cms/packages/documents/documents/workspace/document-workspace.context.d.ts +20 -11
  126. package/dist-cms/packages/documents/documents/workspace/document-workspace.context.js +57 -39
  127. package/dist-cms/packages/documents/documents/workspace/views/edit/document-workspace-view-edit-properties.element.js +1 -1
  128. package/dist-cms/packages/documents/documents/workspace/views/edit/document-workspace-view-edit.element.js +1 -1
  129. package/dist-cms/packages/{settings/logviewer → log-viewer}/components/donut-chart/donut-chart.element.d.ts +1 -1
  130. package/dist-cms/packages/{settings/logviewer → log-viewer}/components/donut-chart/donut-chart.element.js +3 -3
  131. package/dist-cms/packages/{settings/logviewer → log-viewer}/components/donut-chart/donut-slice.element.d.ts +1 -1
  132. package/dist-cms/packages/{settings/logviewer → log-viewer}/components/donut-chart/donut-slice.element.js +1 -1
  133. package/dist-cms/packages/{settings/logviewer → log-viewer}/components/log-viewer-date-range-selector.element.d.ts +1 -1
  134. package/dist-cms/packages/{settings/logviewer → log-viewer}/components/log-viewer-date-range-selector.element.js +4 -4
  135. package/dist-cms/packages/{settings/logviewer → log-viewer}/components/log-viewer-too-many-logs-warning.element.d.ts +1 -1
  136. package/dist-cms/packages/{settings/logviewer → log-viewer}/components/log-viewer-too-many-logs-warning.element.js +1 -1
  137. package/dist-cms/packages/log-viewer/manifests.d.ts +1 -0
  138. package/dist-cms/packages/log-viewer/menu-item/manifests.d.ts +2 -0
  139. package/dist-cms/packages/{settings/logviewer → log-viewer}/repository/log-viewer.repository.d.ts +8 -8
  140. package/dist-cms/packages/{settings/logviewer → log-viewer}/repository/log-viewer.repository.js +2 -2
  141. package/dist-cms/packages/{settings/logviewer → log-viewer}/repository/sources/index.d.ts +2 -2
  142. package/dist-cms/packages/log-viewer/repository/sources/index.js +1 -0
  143. package/dist-cms/packages/{settings/logviewer → log-viewer}/repository/sources/log-viewer.server.data.d.ts +11 -11
  144. package/dist-cms/packages/{settings/logviewer → log-viewer}/repository/sources/log-viewer.server.data.js +2 -2
  145. package/dist-cms/packages/log-viewer/umbraco-package.d.ts +7 -0
  146. package/dist-cms/packages/log-viewer/umbraco-package.js +9 -0
  147. package/dist-cms/packages/{settings/logviewer → log-viewer}/workspace/logviewer/logviewer-workspace.element.d.ts +2 -2
  148. package/dist-cms/packages/{settings/logviewer → log-viewer}/workspace/logviewer/logviewer-workspace.element.js +3 -3
  149. package/dist-cms/packages/{settings/logviewer → log-viewer}/workspace/logviewer/manifests.d.ts +1 -1
  150. package/dist-cms/packages/{settings/logviewer → log-viewer}/workspace/logviewer.context.d.ts +8 -8
  151. package/dist-cms/packages/{settings/logviewer → log-viewer}/workspace/logviewer.context.js +6 -6
  152. package/dist-cms/packages/log-viewer/workspace/manifests.d.ts +1 -0
  153. package/dist-cms/packages/{settings/logviewer → log-viewer}/workspace/views/overview/components/log-viewer-log-level-overview.element.d.ts +1 -1
  154. package/dist-cms/packages/{settings/logviewer → log-viewer}/workspace/views/overview/components/log-viewer-log-level-overview.element.js +2 -2
  155. package/dist-cms/packages/{settings/logviewer → log-viewer}/workspace/views/overview/components/log-viewer-log-types-chart.element.d.ts +1 -1
  156. package/dist-cms/packages/{settings/logviewer → log-viewer}/workspace/views/overview/components/log-viewer-log-types-chart.element.js +2 -2
  157. package/dist-cms/packages/{settings/logviewer → log-viewer}/workspace/views/overview/components/log-viewer-message-templates-overview.element.d.ts +1 -1
  158. package/dist-cms/packages/{settings/logviewer → log-viewer}/workspace/views/overview/components/log-viewer-message-templates-overview.element.js +3 -3
  159. package/dist-cms/packages/{settings/logviewer → log-viewer}/workspace/views/overview/components/log-viewer-saved-searches-overview.element.d.ts +1 -1
  160. package/dist-cms/packages/{settings/logviewer → log-viewer}/workspace/views/overview/components/log-viewer-saved-searches-overview.element.js +3 -3
  161. package/dist-cms/packages/{settings/logviewer → log-viewer}/workspace/views/overview/log-overview-view.element.d.ts +1 -1
  162. package/dist-cms/packages/{settings/logviewer → log-viewer}/workspace/views/overview/log-overview-view.element.js +2 -2
  163. package/dist-cms/packages/{settings/logviewer → log-viewer}/workspace/views/search/components/log-viewer-level-tag.element.d.ts +3 -3
  164. package/dist-cms/packages/{settings/logviewer → log-viewer}/workspace/views/search/components/log-viewer-level-tag.element.js +1 -1
  165. package/dist-cms/packages/{settings/logviewer → log-viewer}/workspace/views/search/components/log-viewer-log-level-filter-menu.element.d.ts +1 -1
  166. package/dist-cms/packages/{settings/logviewer → log-viewer}/workspace/views/search/components/log-viewer-log-level-filter-menu.element.js +5 -5
  167. package/dist-cms/packages/{settings/logviewer → log-viewer}/workspace/views/search/components/log-viewer-message.element.d.ts +3 -3
  168. package/dist-cms/packages/{settings/logviewer → log-viewer}/workspace/views/search/components/log-viewer-message.element.js +4 -4
  169. package/dist-cms/packages/{settings/logviewer → log-viewer}/workspace/views/search/components/log-viewer-messages-list.element.d.ts +1 -1
  170. package/dist-cms/packages/{settings/logviewer → log-viewer}/workspace/views/search/components/log-viewer-messages-list.element.js +3 -3
  171. package/dist-cms/packages/{settings/logviewer → log-viewer}/workspace/views/search/components/log-viewer-polling-button.element.d.ts +1 -1
  172. package/dist-cms/packages/{settings/logviewer → log-viewer}/workspace/views/search/components/log-viewer-polling-button.element.js +2 -2
  173. package/dist-cms/packages/{settings/logviewer → log-viewer}/workspace/views/search/components/log-viewer-search-input-modal.element.d.ts +2 -2
  174. package/dist-cms/packages/{settings/logviewer → log-viewer}/workspace/views/search/components/log-viewer-search-input-modal.element.js +2 -2
  175. package/dist-cms/packages/{settings/logviewer → log-viewer}/workspace/views/search/components/log-viewer-search-input.element.d.ts +2 -2
  176. package/dist-cms/packages/{settings/logviewer → log-viewer}/workspace/views/search/components/log-viewer-search-input.element.js +5 -5
  177. package/dist-cms/packages/{settings/logviewer → log-viewer}/workspace/views/search/log-search-view.element.d.ts +1 -1
  178. package/dist-cms/packages/{settings/logviewer → log-viewer}/workspace/views/search/log-search-view.element.js +3 -3
  179. package/dist-cms/packages/media/media/workspace/media-workspace.context.d.ts +3 -3
  180. package/dist-cms/packages/media/media-types/workspace/media-type-workspace.context.d.ts +3 -3
  181. package/dist-cms/packages/members/member-groups/workspace/member-group-workspace.context.d.ts +3 -3
  182. package/dist-cms/packages/members/member-types/workspace/member-type-workspace.context.d.ts +3 -3
  183. package/dist-cms/packages/members/members/workspace/member-workspace.context.d.ts +3 -3
  184. package/dist-cms/packages/search/manifests.js +5 -5
  185. package/dist-cms/packages/settings/data-types/index.d.ts +1 -0
  186. package/dist-cms/packages/settings/data-types/index.js +1 -0
  187. package/dist-cms/packages/settings/data-types/variant-context/data-type-variant-context.d.ts +7 -0
  188. package/dist-cms/packages/settings/data-types/variant-context/data-type-variant-context.js +8 -0
  189. package/dist-cms/packages/settings/data-types/variant-context/data-type-variant-context.token.d.ts +5 -0
  190. package/dist-cms/packages/settings/data-types/variant-context/data-type-variant-context.token.js +3 -0
  191. package/dist-cms/packages/settings/data-types/variant-context/index.d.ts +2 -0
  192. package/dist-cms/packages/settings/data-types/variant-context/index.js +2 -0
  193. package/dist-cms/packages/settings/data-types/workspace/data-type-workspace-editor.element.js +1 -0
  194. package/dist-cms/packages/settings/data-types/workspace/data-type-workspace.context.d.ts +29 -9
  195. package/dist-cms/packages/settings/data-types/workspace/data-type-workspace.context.js +85 -4
  196. package/dist-cms/packages/settings/data-types/workspace/views/details/data-type-details-workspace-view.element.js +3 -3
  197. package/dist-cms/packages/settings/extensions/workspace/extension-root-workspace.element.js +1 -2
  198. package/dist-cms/packages/settings/languages/app-language-select/app-language-select.element.js +7 -6
  199. package/dist-cms/packages/settings/languages/workspace/language/language-workspace.context.d.ts +3 -3
  200. package/dist-cms/packages/settings/manifests.js +0 -2
  201. package/dist-cms/packages/settings/relation-types/workspace/relation-type-workspace.context.d.ts +3 -3
  202. package/dist-cms/packages/tags/property-editors/tags/property-editor-ui-tags.element.d.ts +2 -2
  203. package/dist-cms/packages/templating/partial-views/workspace/manifests.js +1 -2
  204. package/dist-cms/packages/templating/partial-views/workspace/partial-view-workspace.context.d.ts +3 -3
  205. package/dist-cms/packages/templating/partial-views/workspace/partial-view-workspace.context.js +0 -1
  206. package/dist-cms/packages/templating/stylesheets/config.d.ts +10 -0
  207. package/dist-cms/packages/templating/stylesheets/config.js +10 -0
  208. package/dist-cms/packages/templating/stylesheets/entity-actions/create/create-rtf.action.d.ts +8 -0
  209. package/dist-cms/packages/templating/stylesheets/entity-actions/create/create-rtf.action.js +9 -0
  210. package/dist-cms/packages/templating/stylesheets/entity-actions/create/create.action.d.ts +8 -0
  211. package/dist-cms/packages/templating/stylesheets/entity-actions/create/create.action.js +9 -0
  212. package/dist-cms/packages/templating/stylesheets/entity-actions/manifests.d.ts +2 -0
  213. package/dist-cms/packages/templating/stylesheets/entity-actions/manifests.js +73 -0
  214. package/dist-cms/packages/templating/stylesheets/index.d.ts +2 -5
  215. package/dist-cms/packages/templating/stylesheets/index.js +0 -1
  216. package/dist-cms/packages/templating/stylesheets/manifests.d.ts +1 -1
  217. package/dist-cms/packages/templating/stylesheets/manifests.js +8 -1
  218. package/dist-cms/packages/templating/stylesheets/repository/manifests.d.ts +0 -3
  219. package/dist-cms/packages/templating/stylesheets/repository/manifests.js +1 -3
  220. package/dist-cms/packages/templating/stylesheets/repository/sources/stylesheet.folder.server.data.d.ts +17 -0
  221. package/dist-cms/packages/templating/stylesheets/repository/sources/stylesheet.folder.server.data.js +23 -0
  222. package/dist-cms/packages/templating/stylesheets/repository/sources/stylesheet.server.data.d.ts +50 -6
  223. package/dist-cms/packages/templating/stylesheets/repository/sources/stylesheet.server.data.js +58 -5
  224. package/dist-cms/packages/templating/stylesheets/repository/stylesheet.repository.d.ts +53 -12
  225. package/dist-cms/packages/templating/stylesheets/repository/stylesheet.repository.js +93 -10
  226. package/dist-cms/packages/templating/stylesheets/tree/manifests.js +1 -2
  227. package/dist-cms/packages/templating/stylesheets/workspace/manifests.d.ts +3 -2
  228. package/dist-cms/packages/templating/stylesheets/workspace/manifests.js +68 -3
  229. package/dist-cms/packages/templating/stylesheets/workspace/stylesheet-workspace-editor.element.d.ts +17 -0
  230. package/dist-cms/packages/templating/stylesheets/workspace/stylesheet-workspace-editor.element.js +107 -0
  231. package/dist-cms/packages/templating/stylesheets/workspace/stylesheet-workspace.context.d.ts +23 -5
  232. package/dist-cms/packages/templating/stylesheets/workspace/stylesheet-workspace.context.js +115 -6
  233. package/dist-cms/packages/templating/stylesheets/workspace/stylesheet-workspace.element.js +14 -4
  234. package/dist-cms/packages/templating/stylesheets/workspace/views/code-editor/stylesheet-workspace-view-code-editor.element.d.ts +16 -0
  235. package/dist-cms/packages/templating/stylesheets/workspace/views/code-editor/stylesheet-workspace-view-code-editor.element.js +95 -0
  236. package/dist-cms/packages/templating/stylesheets/workspace/views/rich-text-editor/stylesheet-workspace-view-rich-text-editor-rule.element.d.ts +16 -0
  237. package/dist-cms/packages/templating/stylesheets/workspace/views/rich-text-editor/stylesheet-workspace-view-rich-text-editor-rule.element.js +82 -0
  238. package/dist-cms/packages/templating/stylesheets/workspace/views/rich-text-editor/stylesheet-workspace-view-rich-text-editor-style-sidebar.element.d.ts +19 -0
  239. package/dist-cms/packages/templating/stylesheets/workspace/views/rich-text-editor/stylesheet-workspace-view-rich-text-editor-style-sidebar.element.js +159 -0
  240. package/dist-cms/packages/templating/stylesheets/workspace/views/rich-text-editor/stylesheet-workspace-view-rich-text-editor.element.d.ts +22 -0
  241. package/dist-cms/packages/templating/stylesheets/workspace/views/rich-text-editor/stylesheet-workspace-view-rich-text-editor.element.js +125 -0
  242. package/dist-cms/packages/templating/templates/workspace/template-workspace.context.d.ts +3 -3
  243. package/dist-cms/packages/users/user-groups/workspace/user-group-workspace.context.d.ts +3 -3
  244. package/dist-cms/packages/users/user-groups/workspace/user-group-workspace.context.js +1 -1
  245. package/dist-cms/packages/users/users/modals/create/user-create-modal.element.js +1 -1
  246. package/dist-cms/packages/users/users/workspace/user-workspace.context.d.ts +3 -3
  247. package/dist-cms/shared/style/text-style.style.d.ts +1 -1
  248. package/dist-cms/shared/style/text-style.style.js +2 -2
  249. package/dist-cms/tsconfig.build.tsbuildinfo +1 -1
  250. package/dist-cms/vscode-html-custom-data.json +208 -223
  251. package/package.json +4 -4
  252. package/dist-cms/packages/core/components/data-type/index.d.ts +0 -1
  253. package/dist-cms/packages/core/components/data-type/index.js +0 -1
  254. package/dist-cms/packages/core/property-editor/types/data-type-config.type.d.ts +0 -3
  255. package/dist-cms/packages/core/property-editor/types/index.d.ts +0 -1
  256. package/dist-cms/packages/core/property-editor/types/index.js +0 -1
  257. package/dist-cms/packages/core/workspace/workspace-context/workspace-entity-context.interface.d.ts +0 -5
  258. package/dist-cms/packages/core/workspace/workspace-context/workspace-invariantable-entity-context.interface.d.ts +0 -11
  259. package/dist-cms/packages/core/workspace/workspace-context/workspace-variable-entity-context.interface.d.ts +0 -16
  260. package/dist-cms/packages/core/workspace/workspace-variant/index.d.ts +0 -3
  261. package/dist-cms/packages/core/workspace/workspace-variant/index.js +0 -3
  262. package/dist-cms/packages/core/workspace/workspace-variant/variantable-property/variantable-property.element.d.ts +0 -20
  263. package/dist-cms/packages/core/workspace/workspace-variant/variantable-property/variantable-property.element.js +0 -71
  264. package/dist-cms/packages/core/workspace/workspace-variant/workspace-variant.context.d.ts +0 -26
  265. package/dist-cms/packages/core/workspace/workspace-variant/workspace-variant.context.js +0 -89
  266. package/dist-cms/packages/settings/logviewer/manifests.d.ts +0 -1
  267. package/dist-cms/packages/settings/logviewer/menu-item/manifests.d.ts +0 -2
  268. package/dist-cms/packages/settings/logviewer/workspace/manifests.d.ts +0 -1
  269. package/dist-cms/packages/templating/stylesheets/workspace/stylesheet-workspace-edit.element.d.ts +0 -11
  270. package/dist-cms/packages/templating/stylesheets/workspace/stylesheet-workspace-edit.element.js +0 -27
  271. /package/dist-cms/packages/core/property-editor/{types/data-type-config.type.js → config/property-editor-config.type.js} +0 -0
  272. /package/dist-cms/packages/core/{workspace/workspace-context/workspace-entity-context.interface.js → repositories/repository.interface.js} +0 -0
  273. /package/dist-cms/packages/core/workspace/{workspace-context/workspace-invariantable-entity-context.interface.js → variant-context/nameable-variant-context.interface.js} +0 -0
  274. /package/dist-cms/packages/core/workspace/{workspace-context/workspace-variable-entity-context.interface.js → variant-context/variant-context.interface.js} +0 -0
  275. /package/dist-cms/packages/{settings/logviewer/repository/sources/index.js → core/workspace/workspace-context/property-structure-workspace-context.interface.js} +0 -0
  276. /package/dist-cms/packages/{settings/logviewer → log-viewer}/components/donut-chart/index.d.ts +0 -0
  277. /package/dist-cms/packages/{settings/logviewer → log-viewer}/components/donut-chart/index.js +0 -0
  278. /package/dist-cms/packages/{settings/logviewer → log-viewer}/components/index.d.ts +0 -0
  279. /package/dist-cms/packages/{settings/logviewer → log-viewer}/components/index.js +0 -0
  280. /package/dist-cms/packages/{settings/logviewer → log-viewer}/index.d.ts +0 -0
  281. /package/dist-cms/packages/{settings/logviewer → log-viewer}/index.js +0 -0
  282. /package/dist-cms/packages/{settings/logviewer → log-viewer}/manifests.js +0 -0
  283. /package/dist-cms/packages/{settings/logviewer → log-viewer}/menu-item/manifests.js +0 -0
  284. /package/dist-cms/packages/{settings/logviewer → log-viewer}/repository/index.d.ts +0 -0
  285. /package/dist-cms/packages/{settings/logviewer → log-viewer}/repository/index.js +0 -0
  286. /package/dist-cms/packages/{settings/logviewer → log-viewer}/workspace/logviewer/manifests.js +0 -0
  287. /package/dist-cms/packages/{settings/logviewer → log-viewer}/workspace/manifests.js +0 -0
  288. /package/dist-cms/packages/{settings/logviewer → log-viewer}/workspace/views/overview/components/index.d.ts +0 -0
  289. /package/dist-cms/packages/{settings/logviewer → log-viewer}/workspace/views/overview/components/index.js +0 -0
  290. /package/dist-cms/packages/{settings/logviewer → log-viewer}/workspace/views/overview/index.d.ts +0 -0
  291. /package/dist-cms/packages/{settings/logviewer → log-viewer}/workspace/views/overview/index.js +0 -0
  292. /package/dist-cms/packages/{settings/logviewer → log-viewer}/workspace/views/search/components/index.d.ts +0 -0
  293. /package/dist-cms/packages/{settings/logviewer → log-viewer}/workspace/views/search/components/index.js +0 -0
  294. /package/dist-cms/packages/{settings/logviewer → log-viewer}/workspace/views/search/index.d.ts +0 -0
  295. /package/dist-cms/packages/{settings/logviewer → log-viewer}/workspace/views/search/index.js +0 -0
@@ -1,4 +1,4 @@
1
- import { UmbWorkspaceVariantContext } from './workspace-variant.context.js';
1
+ import { UmbWorkspaceSplitViewContext } from './workspace-split-view.context.js';
2
2
  import { UmbLitElement } from '../../../../shared/lit-element/index.js';
3
3
  /**
4
4
  *
@@ -6,18 +6,17 @@ import { UmbLitElement } from '../../../../shared/lit-element/index.js';
6
6
  * As well breadcrumbs etc.
7
7
  *
8
8
  */
9
- export declare class UmbWorkspaceVariantContentElement extends UmbLitElement {
9
+ export declare class UmbWorkspaceSplitViewElement extends UmbLitElement {
10
10
  alias: string;
11
11
  displayNavigation: boolean;
12
12
  set splitViewIndex(index: number);
13
- private _splitViewIndex;
14
- variantContext: UmbWorkspaceVariantContext;
13
+ splitViewContext: UmbWorkspaceSplitViewContext;
15
14
  render(): import("lit-html").TemplateResult<1>;
16
15
  static styles: import("@lit/reactive-element/css-tag.js").CSSResult[];
17
16
  }
18
- export default UmbWorkspaceVariantContentElement;
17
+ export default UmbWorkspaceSplitViewElement;
19
18
  declare global {
20
19
  interface HTMLElementTagNameMap {
21
- 'umb-workspace-variant': UmbWorkspaceVariantContentElement;
20
+ 'umb-workspace-split-view': UmbWorkspaceSplitViewElement;
22
21
  }
23
22
  }
@@ -4,9 +4,9 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
4
4
  else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
5
5
  return c > 3 && r && Object.defineProperty(target, key, r), r;
6
6
  };
7
- import { UmbWorkspaceVariantContext } from './workspace-variant.context.js';
7
+ import { UmbWorkspaceSplitViewContext } from './workspace-split-view.context.js';
8
8
  import { UmbTextStyles } from "../../../../shared/style/index.js";
9
- import { css, html, customElement, property, state } from '../../../../external/lit/index.js';
9
+ import { css, html, customElement, property } from '../../../../external/lit/index.js';
10
10
  import { UmbLitElement } from '../../../../shared/lit-element/index.js';
11
11
  /**
12
12
  *
@@ -14,21 +14,18 @@ import { UmbLitElement } from '../../../../shared/lit-element/index.js';
14
14
  * As well breadcrumbs etc.
15
15
  *
16
16
  */
17
- export let UmbWorkspaceVariantContentElement = class UmbWorkspaceVariantContentElement extends UmbLitElement {
17
+ export let UmbWorkspaceSplitViewElement = class UmbWorkspaceSplitViewElement extends UmbLitElement {
18
18
  constructor() {
19
19
  super(...arguments);
20
20
  this.displayNavigation = false;
21
- this._splitViewIndex = 0;
22
- this.variantContext = new UmbWorkspaceVariantContext(this);
21
+ this.splitViewContext = new UmbWorkspaceSplitViewContext(this);
23
22
  }
24
23
  set splitViewIndex(index) {
25
- this._splitViewIndex = index;
26
- this.variantContext.setSplitViewIndex(index);
24
+ this.splitViewContext.setSplitViewIndex(index);
27
25
  }
28
26
  render() {
29
27
  return html `
30
28
  <umb-workspace-editor
31
- .splitViewIndex=${this._splitViewIndex.toString()}
32
29
  alias=${this.alias}
33
30
  .hideNavigation=${!this.displayNavigation}
34
31
  .enforceNoFooter=${true}>
@@ -63,17 +60,14 @@ export let UmbWorkspaceVariantContentElement = class UmbWorkspaceVariantContentE
63
60
  };
64
61
  __decorate([
65
62
  property()
66
- ], UmbWorkspaceVariantContentElement.prototype, "alias", void 0);
63
+ ], UmbWorkspaceSplitViewElement.prototype, "alias", void 0);
67
64
  __decorate([
68
65
  property({ type: Boolean })
69
- ], UmbWorkspaceVariantContentElement.prototype, "displayNavigation", void 0);
66
+ ], UmbWorkspaceSplitViewElement.prototype, "displayNavigation", void 0);
70
67
  __decorate([
71
68
  property({ type: Number })
72
- ], UmbWorkspaceVariantContentElement.prototype, "splitViewIndex", null);
73
- __decorate([
74
- state()
75
- ], UmbWorkspaceVariantContentElement.prototype, "_splitViewIndex", void 0);
76
- UmbWorkspaceVariantContentElement = __decorate([
77
- customElement('umb-workspace-variant')
78
- ], UmbWorkspaceVariantContentElement);
79
- export default UmbWorkspaceVariantContentElement;
69
+ ], UmbWorkspaceSplitViewElement.prototype, "splitViewIndex", null);
70
+ UmbWorkspaceSplitViewElement = __decorate([
71
+ customElement('umb-workspace-split-view')
72
+ ], UmbWorkspaceSplitViewElement);
73
+ export default UmbWorkspaceSplitViewElement;
@@ -1,9 +1,9 @@
1
1
  import { UmbDictionaryRepository } from '../repository/dictionary.repository.js';
2
- import { UmbEntityWorkspaceContextInterface, UmbWorkspaceContext } from '../../../core/workspace/index.js';
2
+ import { UmbSaveableWorkspaceContextInterface, UmbWorkspaceContext } from '../../../core/workspace/index.js';
3
3
  import { UmbControllerHostElement } from '../../../../libs/controller-api/index.js';
4
4
  import { DictionaryItemResponseModel } from '../../../../external/backend-api/index.js';
5
5
  import { UmbContextToken } from '../../../../libs/context-api/index.js';
6
- export declare class UmbDictionaryWorkspaceContext extends UmbWorkspaceContext<UmbDictionaryRepository, DictionaryItemResponseModel> implements UmbEntityWorkspaceContextInterface<DictionaryItemResponseModel | undefined> {
6
+ export declare class UmbDictionaryWorkspaceContext extends UmbWorkspaceContext<UmbDictionaryRepository, DictionaryItemResponseModel> implements UmbSaveableWorkspaceContextInterface<DictionaryItemResponseModel | undefined> {
7
7
  #private;
8
8
  data: import("rxjs").Observable<DictionaryItemResponseModel | undefined>;
9
9
  name: import("rxjs").Observable<string | undefined>;
@@ -19,4 +19,4 @@ export declare class UmbDictionaryWorkspaceContext extends UmbWorkspaceContext<U
19
19
  save(): Promise<void>;
20
20
  destroy(): void;
21
21
  }
22
- export declare const UMB_DICTIONARY_WORKSPACE_CONTEXT: UmbContextToken<UmbEntityWorkspaceContextInterface<unknown>, UmbDictionaryWorkspaceContext>;
22
+ export declare const UMB_DICTIONARY_WORKSPACE_CONTEXT: UmbContextToken<UmbSaveableWorkspaceContextInterface<unknown>, UmbDictionaryWorkspaceContext>;
@@ -1,11 +1,11 @@
1
1
  import { UmbDocumentTypeRepository } from '../repository/document-type.repository.js';
2
2
  import { UmbContentTypePropertyStructureManager } from '../../../core/content-type/index.js';
3
- import { UmbWorkspaceContext, UmbEntityWorkspaceContextInterface } from '../../../core/workspace/index.js';
3
+ import { UmbWorkspaceContext, UmbSaveableWorkspaceContextInterface } from '../../../core/workspace/index.js';
4
4
  import type { ContentTypeCompositionModel, ContentTypeSortModel, DocumentTypeResponseModel } from '../../../../external/backend-api/index.js';
5
5
  import { UmbControllerHostElement } from '../../../../libs/controller-api/index.js';
6
6
  import { UmbContextToken } from '../../../../libs/context-api/index.js';
7
7
  type EntityType = DocumentTypeResponseModel;
8
- export declare class UmbDocumentTypeWorkspaceContext extends UmbWorkspaceContext<UmbDocumentTypeRepository, EntityType> implements UmbEntityWorkspaceContextInterface<EntityType | undefined> {
8
+ export declare class UmbDocumentTypeWorkspaceContext extends UmbWorkspaceContext<UmbDocumentTypeRepository, EntityType> implements UmbSaveableWorkspaceContextInterface<EntityType | undefined> {
9
9
  readonly data: () => import("rxjs").Observable<DocumentTypeResponseModel | undefined>;
10
10
  readonly name: import("rxjs").Observable<string | undefined>;
11
11
  readonly alias: import("rxjs").Observable<string | undefined>;
@@ -49,5 +49,5 @@ export declare class UmbDocumentTypeWorkspaceContext extends UmbWorkspaceContext
49
49
  save(): Promise<void>;
50
50
  destroy(): void;
51
51
  }
52
- export declare const UMB_DOCUMENT_TYPE_WORKSPACE_CONTEXT: UmbContextToken<UmbEntityWorkspaceContextInterface<unknown>, UmbDocumentTypeWorkspaceContext>;
52
+ export declare const UMB_DOCUMENT_TYPE_WORKSPACE_CONTEXT: UmbContextToken<UmbSaveableWorkspaceContextInterface<unknown>, UmbDocumentTypeWorkspaceContext>;
53
53
  export {};
@@ -1,11 +1,11 @@
1
1
  import { UmbPropertyEditorExtensionElement } from '../../../../core/extension-registry/index.js';
2
2
  import { UmbLitElement } from '../../../../../shared/lit-element/index.js';
3
- import type { UmbDataTypeConfigCollection } from '../../../../core/components/index.js';
3
+ import type { UmbPropertyEditorConfigCollection } from '../../../../core/property-editor/index.js';
4
4
  export declare class UmbPropertyEditorUIContentPickerElement extends UmbLitElement implements UmbPropertyEditorExtensionElement {
5
5
  private _value;
6
6
  get value(): Array<string>;
7
7
  set value(value: Array<string>);
8
- set config(config: UmbDataTypeConfigCollection | undefined);
8
+ set config(config: UmbPropertyEditorConfigCollection | undefined);
9
9
  private _limitMin?;
10
10
  private _limitMax?;
11
11
  private _onChange;
@@ -0,0 +1,35 @@
1
+ import { UmbDocumentWorkspaceContext } from "../workspace/index.js";
2
+ import { DocumentVariantResponseModel } from "../../../../external/backend-api/index.js";
3
+ import { UmbBaseController, UmbControllerHost } from "../../../../libs/controller-api/index.js";
4
+ import { UmbVariantId } from "../../../core/variant/index.js";
5
+ import { UmbVariantContext } from "../../../core/workspace/index.js";
6
+ export declare class UmbDocumentVariantContext extends UmbBaseController implements UmbVariantContext {
7
+ #private;
8
+ getVariantId(): UmbVariantId;
9
+ currentVariant: import("rxjs/internal/Observable.js").Observable<DocumentVariantResponseModel | undefined>;
10
+ name: import("rxjs/internal/Observable.js").Observable<string | undefined>;
11
+ culture: import("rxjs/internal/Observable.js").Observable<string | null | undefined>;
12
+ segment: import("rxjs/internal/Observable.js").Observable<string | null | undefined>;
13
+ getType(): string;
14
+ getUnique(): string | undefined;
15
+ getName(): string | undefined;
16
+ setName(name: string): void;
17
+ getVariantInfo(): DocumentVariantResponseModel | undefined;
18
+ constructor(host: UmbControllerHost, workspace: UmbDocumentWorkspaceContext, variantId?: UmbVariantId);
19
+ /**
20
+ * TODO: Write proper JSDocs here.
21
+ * Ideally do not use these methods, its better to communicate directly with the workspace, but if you do not know the property variant id, then this will figure it out for you. So good for externals to set or get values of a property.
22
+ */
23
+ propertyVariantId(propertyAlias: string): Promise<import("rxjs/internal/Observable.js").Observable<UmbVariantId | undefined>>;
24
+ /**
25
+ * TODO: Write proper JSDocs here.
26
+ * Ideally do not use these methods, its better to communicate directly with the workspace, but if you do not know the property variant id, then this will figure it out for you. So good for externals to set or get values of a property.
27
+ */
28
+ propertyValueByAlias<ReturnType = unknown>(propertyAlias: string): Promise<import("rxjs/internal/Observable.js").Observable<ReturnType | undefined>>;
29
+ propertyValueByAliasAndCulture<ReturnType = unknown>(propertyAlias: string, propertyVariantId: UmbVariantId): Promise<import("rxjs/internal/Observable.js").Observable<ReturnType>>;
30
+ /**
31
+ * TODO: Write proper JSDocs here.
32
+ * Ideally do not use these methods, its better to communicate directly with the workspace, but if you do not know the property variant id, then this will figure it out for you. So good for externals to set or get values of a property.
33
+ */
34
+ setPropertyValue(propertyAlias: string, value: unknown): Promise<void>;
35
+ }
@@ -0,0 +1,89 @@
1
+ import { UmbBaseController } from "../../../../libs/controller-api/index.js";
2
+ import { map } from "../../../../external/rxjs/index.js";
3
+ import { UmbObjectState } from "../../../../libs/observable-api/index.js";
4
+ import { UmbVariantId } from "../../../core/variant/index.js";
5
+ import { UMB_VARIANT_CONTEXT } from "../../../core/workspace/index.js";
6
+ // TODO: This code can be split into a UmbContentTypeVariantContext, leaving just the publishing state and methods to this class.
7
+ export class UmbDocumentVariantContext extends UmbBaseController {
8
+ #workspace;
9
+ #variantId;
10
+ getVariantId() {
11
+ return this.#variantId;
12
+ }
13
+ #currentVariant;
14
+ // TODO: Refactor: Make a properties observable. (with such I think i mean a property value object array.. array with object with properties, alias, value, culture and segment)
15
+ // TO make such happen I think we need to maintain all properties and their value of this object.
16
+ // This will actually make it simpler if multiple are watching the same property.
17
+ // But it will also mean that we wil watch all properties and their structure, for variantID, all the time for all of the properties.
18
+ getType() {
19
+ return this.#workspace.getEntityType();
20
+ }
21
+ getUnique() {
22
+ return this.#workspace.getEntityId();
23
+ }
24
+ getName() {
25
+ return this.#workspace.getName(this.#variantId);
26
+ }
27
+ setName(name) {
28
+ this.#workspace.setName(name, this.#variantId);
29
+ }
30
+ getVariantInfo() {
31
+ return this.#workspace.getVariant(this.#variantId);
32
+ }
33
+ constructor(host, workspace, variantId) {
34
+ // The controller alias, is a very generic name cause we want only one of these for this controller host.
35
+ super(host, 'variantContext');
36
+ this.#currentVariant = new UmbObjectState(undefined);
37
+ this.currentVariant = this.#currentVariant.asObservable();
38
+ this.name = this.#currentVariant.asObservablePart((x) => x?.name);
39
+ this.culture = this.#currentVariant.asObservablePart((x) => x?.culture);
40
+ this.segment = this.#currentVariant.asObservablePart((x) => x?.segment);
41
+ this.#workspace = workspace;
42
+ this.#variantId = variantId ?? UmbVariantId.CreateInvariant();
43
+ this.observe(this.#workspace.variantById(this.#variantId), async (variantInfo) => {
44
+ if (!variantInfo)
45
+ return;
46
+ this.#currentVariant.next(variantInfo);
47
+ }, '_observeActiveVariant');
48
+ // TODO: Refactor: use the document dataset context token.
49
+ this.provideContext(UMB_VARIANT_CONTEXT, this);
50
+ }
51
+ #createPropertyVariantId(property) {
52
+ return UmbVariantId.Create({
53
+ culture: property.variesByCulture ? this.#variantId.culture : null,
54
+ segment: property.variesBySegment ? this.#variantId.segment : null,
55
+ });
56
+ }
57
+ /**
58
+ * TODO: Write proper JSDocs here.
59
+ * Ideally do not use these methods, its better to communicate directly with the workspace, but if you do not know the property variant id, then this will figure it out for you. So good for externals to set or get values of a property.
60
+ */
61
+ async propertyVariantId(propertyAlias) {
62
+ return (await this.#workspace.structure.propertyStructureByAlias(propertyAlias)).pipe(map((property) => property ? this.#createPropertyVariantId(property) : undefined));
63
+ }
64
+ /**
65
+ * TODO: Write proper JSDocs here.
66
+ * Ideally do not use these methods, its better to communicate directly with the workspace, but if you do not know the property variant id, then this will figure it out for you. So good for externals to set or get values of a property.
67
+ */
68
+ async propertyValueByAlias(propertyAlias) {
69
+ await this.#workspace.isLoaded();
70
+ return (await this.#workspace.structure.propertyStructureByAlias(propertyAlias)).pipe(map((property) => property?.alias ? this.#workspace.getPropertyValue(property.alias, this.#createPropertyVariantId(property)) : undefined));
71
+ }
72
+ // TODO: Refactor: Not used currently, but should investigate if we can implement this, to spare some energy.
73
+ async propertyValueByAliasAndCulture(propertyAlias, propertyVariantId) {
74
+ return this.#workspace.propertyValueByAlias(propertyAlias, propertyVariantId);
75
+ }
76
+ /**
77
+ * TODO: Write proper JSDocs here.
78
+ * Ideally do not use these methods, its better to communicate directly with the workspace, but if you do not know the property variant id, then this will figure it out for you. So good for externals to set or get values of a property.
79
+ */
80
+ async setPropertyValue(propertyAlias, value) {
81
+ // This is not reacting to if the property variant settings changes while running.
82
+ const property = await this.#workspace.structure.getPropertyStructureByAlias(propertyAlias);
83
+ if (property) {
84
+ const variantId = this.#createPropertyVariantId(property);
85
+ // This is not reacting to if the property variant settings changes while running.
86
+ this.#workspace.setPropertyValue(propertyAlias, value, variantId);
87
+ }
88
+ }
89
+ }
@@ -0,0 +1,5 @@
1
+ import type { UmbDocumentVariantContext } from "./document-variant-context.js";
2
+ import { UmbContextToken } from "../../../../libs/context-api/index.js";
3
+ import { UmbVariantContext } from "../../../core/workspace/index.js";
4
+ export declare const IsDocumentVariantContext: (context: UmbVariantContext) => context is UmbDocumentVariantContext;
5
+ export declare const UMB_DOCUMENT_VARIANT_CONTEXT: UmbContextToken<UmbVariantContext, UmbDocumentVariantContext>;
@@ -0,0 +1,3 @@
1
+ import { UmbContextToken } from "../../../../libs/context-api/index.js";
2
+ export const IsDocumentVariantContext = (context) => context.getType() === 'document';
3
+ export const UMB_DOCUMENT_VARIANT_CONTEXT = new UmbContextToken("UmbVariantContext", IsDocumentVariantContext);
@@ -15,6 +15,7 @@ export let UmbDocumentWorkspaceEditorElement = class UmbDocumentWorkspaceEditorE
15
15
  constructor() {
16
16
  super();
17
17
  //private _defaultVariant?: VariantViewModelBaseModel;
18
+ // TODO: Refactor: when having a split view/variants context token, we can rename the split view/variants component to a generic and make this component generic as well.
18
19
  this.splitViewElement = new UmbDocumentWorkspaceSplitViewElement();
19
20
  this._availableVariants = [];
20
21
  this._workspaceSplitViews = [];
@@ -3,7 +3,6 @@ import { ActiveVariant } from '../../../core/workspace/index.js';
3
3
  import { UmbLitElement } from '../../../../shared/lit-element/index.js';
4
4
  export declare class UmbDocumentWorkspaceSplitViewElement extends UmbLitElement {
5
5
  private _workspaceContext?;
6
- _unique?: string;
7
6
  _variants?: Array<ActiveVariant>;
8
7
  constructor();
9
8
  private _observeActiveVariantInfo;
@@ -11,6 +11,7 @@ import { UmbLitElement } from '../../../../shared/lit-element/index.js';
11
11
  export let UmbDocumentWorkspaceSplitViewElement = class UmbDocumentWorkspaceSplitViewElement extends UmbLitElement {
12
12
  constructor() {
13
13
  super();
14
+ // TODO: Refactor: use a split view workspace context token:
14
15
  this.consumeContext(UMB_DOCUMENT_WORKSPACE_CONTEXT, (context) => {
15
16
  this._workspaceContext = context;
16
17
  this._observeActiveVariantInfo();
@@ -27,10 +28,10 @@ export let UmbDocumentWorkspaceSplitViewElement = class UmbDocumentWorkspaceSpli
27
28
  return this._variants
28
29
  ? html `<div id="splitViews">
29
30
  ${repeat(this._variants, (view) => view.index + '_' + (view.culture ?? '') + '_' + (view.segment ?? '') + '_' + this._variants.length, (view) => html `
30
- <umb-workspace-variant
31
+ <umb-workspace-split-view
31
32
  alias="Umb.Workspace.Document"
32
33
  .splitViewIndex=${view.index}
33
- .displayNavigation=${view.index === this._variants.length - 1}></umb-workspace-variant>
34
+ .displayNavigation=${view.index === this._variants.length - 1}></umb-workspace-split-view>
34
35
  `)}
35
36
  </div>
36
37
 
@@ -63,9 +64,6 @@ export let UmbDocumentWorkspaceSplitViewElement = class UmbDocumentWorkspaceSpli
63
64
  `,
64
65
  ]; }
65
66
  };
66
- __decorate([
67
- state()
68
- ], UmbDocumentWorkspaceSplitViewElement.prototype, "_unique", void 0);
69
67
  __decorate([
70
68
  state()
71
69
  ], UmbDocumentWorkspaceSplitViewElement.prototype, "_variants", void 0);
@@ -1,14 +1,16 @@
1
1
  import { UmbDocumentRepository } from '../repository/document.repository.js';
2
2
  import { UmbDocumentTypeRepository } from '../../document-types/repository/document-type.repository.js';
3
+ import { UmbDocumentVariantContext } from '../variant-context/document-variant-context.js';
3
4
  import { UmbVariantId } from '../../../core/variant/index.js';
4
5
  import { UmbContentTypePropertyStructureManager } from '../../../core/content-type/index.js';
5
- import { UmbEntityWorkspaceContextInterface, UmbWorkspaceContext, UmbWorkspaceSplitViewManager, UmbWorkspaceVariableEntityContextInterface } from '../../../core/workspace/index.js';
6
+ import { UmbSaveableWorkspaceContextInterface, UmbWorkspaceContext, UmbWorkspaceSplitViewManager, UmbVariantableWorkspaceContextInterface } from '../../../core/workspace/index.js';
6
7
  import type { DocumentResponseModel } from '../../../../external/backend-api/index.js';
7
- import { UmbControllerHostElement } from '../../../../libs/controller-api/index.js';
8
+ import { UmbControllerHost, UmbControllerHostElement } from '../../../../libs/controller-api/index.js';
8
9
  import { UmbContextToken } from '../../../../libs/context-api/index.js';
9
10
  type EntityType = DocumentResponseModel;
10
- export declare class UmbDocumentWorkspaceContext extends UmbWorkspaceContext<UmbDocumentRepository, EntityType> implements UmbWorkspaceVariableEntityContextInterface<EntityType | undefined> {
11
+ export declare class UmbDocumentWorkspaceContext extends UmbWorkspaceContext<UmbDocumentRepository, EntityType> implements UmbVariantableWorkspaceContextInterface<EntityType | undefined> {
11
12
  #private;
13
+ isLoaded(): Promise<any> | undefined;
12
14
  readonly unique: import("rxjs").Observable<string | undefined>;
13
15
  readonly documentTypeKey: import("rxjs").Observable<string | undefined>;
14
16
  readonly variants: import("rxjs").Observable<import("../../../../external/backend-api/index.js").DocumentVariantResponseModel[]>;
@@ -17,23 +19,30 @@ export declare class UmbDocumentWorkspaceContext extends UmbWorkspaceContext<Umb
17
19
  readonly structure: UmbContentTypePropertyStructureManager<UmbDocumentTypeRepository>;
18
20
  readonly splitView: UmbWorkspaceSplitViewManager;
19
21
  constructor(host: UmbControllerHostElement);
20
- load(entityId: string): Promise<DocumentResponseModel | undefined>;
21
- create(documentTypeKey: string, parentId: string | null): Promise<DocumentResponseModel | undefined>;
22
+ load(entityId: string): Promise<any>;
23
+ create(documentTypeKey: string, parentId: string | null): Promise<any>;
22
24
  getData(): DocumentResponseModel;
23
25
  getEntityId(): string | undefined;
24
26
  getEntityType(): string;
25
27
  getContentTypeId(): string | undefined;
28
+ variantById(variantId: UmbVariantId): import("rxjs").Observable<import("../../../../external/backend-api/index.js").DocumentVariantResponseModel | undefined>;
26
29
  getVariant(variantId: UmbVariantId): import("../../../../external/backend-api/index.js").DocumentVariantResponseModel | undefined;
27
30
  getName(variantId?: UmbVariantId): string | undefined;
28
31
  setName(name: string, variantId?: UmbVariantId): void;
29
- propertyValuesOf(variantId?: UmbVariantId): import("rxjs").Observable<import("../../../../external/backend-api/index.js").ValueModelBaseModel[] | undefined>;
30
- propertyDataByAlias(propertyAlias: string, variantId?: UmbVariantId): import("rxjs").Observable<import("../../../../external/backend-api/index.js").ValueModelBaseModel | undefined>;
31
- propertyValueByAlias(propertyAlias: string, variantId?: UmbVariantId): import("rxjs").Observable<any>;
32
- getPropertyValue(alias: string, variantId?: UmbVariantId): void;
33
- setPropertyValue(alias: string, value: unknown, variantId?: UmbVariantId): void;
32
+ propertyStructureById(propertyId: string): Promise<import("rxjs").Observable<import("../../../../external/backend-api/index.js").PropertyTypeModelBaseModel | undefined>>;
33
+ propertyValueByAlias<PropertyValueType = unknown>(propertyAlias: string, variantId?: UmbVariantId): Promise<import("rxjs").Observable<PropertyValueType>>;
34
+ /**
35
+ * Get the current value of the property with the given alias and variantId.
36
+ * @param alias
37
+ * @param variantId
38
+ * @returns The value or undefined if not set or found.
39
+ */
40
+ getPropertyValue<ReturnType = unknown>(alias: string, variantId?: UmbVariantId): ReturnType | undefined;
41
+ setPropertyValue<PropertyValueType = unknown>(alias: string, value: PropertyValueType, variantId?: UmbVariantId): Promise<void>;
34
42
  save(): Promise<void>;
35
43
  delete(id: string): Promise<void>;
44
+ createVariantContext(host: UmbControllerHost, variantId: UmbVariantId): UmbDocumentVariantContext;
36
45
  destroy(): void;
37
46
  }
38
47
  export default UmbDocumentWorkspaceContext;
39
- export declare const UMB_DOCUMENT_WORKSPACE_CONTEXT: UmbContextToken<UmbEntityWorkspaceContextInterface<unknown>, UmbDocumentWorkspaceContext>;
48
+ export declare const UMB_DOCUMENT_WORKSPACE_CONTEXT: UmbContextToken<UmbSaveableWorkspaceContextInterface<unknown>, UmbDocumentWorkspaceContext>;
@@ -1,5 +1,6 @@
1
1
  import { UmbDocumentRepository } from '../repository/document.repository.js';
2
2
  import { UmbDocumentTypeRepository } from '../../document-types/repository/document-type.repository.js';
3
+ import { UmbDocumentVariantContext } from '../variant-context/document-variant-context.js';
3
4
  import { UmbContentTypePropertyStructureManager } from '../../../core/content-type/index.js';
4
5
  import { UmbWorkspaceContext, UmbWorkspaceSplitViewManager, } from '../../../core/workspace/index.js';
5
6
  import { appendToFrozenArray, partialUpdateFrozenArray, UmbObjectState, UmbObserverController, } from '../../../../libs/observable-api/index.js';
@@ -8,30 +9,34 @@ export class UmbDocumentWorkspaceContext extends UmbWorkspaceContext {
8
9
  /**
9
10
  * The document is the current stored version of the document.
10
11
  * For now lets not share this publicly as it can become confusing.
11
- * TODO: Use this to compare, for variants with changes.
12
+ * TODO: This concept is to be able to compare if there is changes since the saved one.
12
13
  */
13
- #document;
14
+ //#persistedData = new UmbObjectState<EntityType | undefined>(undefined);
14
15
  /**
15
16
  * The document is the current state/draft version of the document.
16
17
  */
17
- #draft;
18
+ #currentData;
19
+ #getDataPromise;
20
+ isLoaded() {
21
+ return this.#getDataPromise;
22
+ }
18
23
  constructor(host) {
19
24
  super(host, 'Umb.Workspace.Document', new UmbDocumentRepository(host));
20
25
  /**
21
26
  * The document is the current stored version of the document.
22
27
  * For now lets not share this publicly as it can become confusing.
23
- * TODO: Use this to compare, for variants with changes.
28
+ * TODO: This concept is to be able to compare if there is changes since the saved one.
24
29
  */
25
- this.#document = new UmbObjectState(undefined);
30
+ //#persistedData = new UmbObjectState<EntityType | undefined>(undefined);
26
31
  /**
27
32
  * The document is the current state/draft version of the document.
28
33
  */
29
- this.#draft = new UmbObjectState(undefined);
30
- this.unique = this.#draft.asObservablePart((data) => data?.id);
31
- this.documentTypeKey = this.#draft.asObservablePart((data) => data?.contentTypeId);
32
- this.variants = this.#draft.asObservablePart((data) => data?.variants || []);
33
- this.urls = this.#draft.asObservablePart((data) => data?.urls || []);
34
- this.templateId = this.#draft.asObservablePart((data) => data?.templateId || null);
34
+ this.#currentData = new UmbObjectState(undefined);
35
+ this.unique = this.#currentData.asObservablePart((data) => data?.id);
36
+ this.documentTypeKey = this.#currentData.asObservablePart((data) => data?.contentTypeId);
37
+ this.variants = this.#currentData.asObservablePart((data) => data?.variants || []);
38
+ this.urls = this.#currentData.asObservablePart((data) => data?.urls || []);
39
+ this.templateId = this.#currentData.asObservablePart((data) => data?.templateId || null);
35
40
  this.structure = new UmbContentTypePropertyStructureManager(this.host, new UmbDocumentTypeRepository(this.host));
36
41
  this.splitView = new UmbWorkspaceSplitViewManager(this.host);
37
42
  new UmbObserverController(this.host, this.documentTypeKey, (id) => this.structure.loadType(id));
@@ -40,25 +45,26 @@ export class UmbDocumentWorkspaceContext extends UmbWorkspaceContext {
40
45
  */
41
46
  }
42
47
  async load(entityId) {
43
- const { data } = await this.repository.requestById(entityId);
48
+ this.#getDataPromise = this.repository.requestById(entityId);
49
+ const { data } = await this.#getDataPromise;
44
50
  if (!data)
45
51
  return undefined;
46
52
  this.setIsNew(false);
47
- this.#document.next(data);
48
- this.#draft.next(data);
53
+ //this.#persisted.next(data);
54
+ this.#currentData.next(data);
49
55
  return data || undefined;
50
56
  }
51
57
  async create(documentTypeKey, parentId) {
52
- const { data } = await this.repository.createScaffold(documentTypeKey, { parentId });
58
+ this.#getDataPromise = this.repository.createScaffold(documentTypeKey, { parentId });
59
+ const { data } = await this.#getDataPromise;
53
60
  if (!data)
54
61
  return undefined;
55
62
  this.setIsNew(true);
56
- this.#document.next(data);
57
- this.#draft.next(data);
63
+ this.#currentData.next(data);
58
64
  return data || undefined;
59
65
  }
60
66
  getData() {
61
- return this.#draft.getValue() || {};
67
+ return this.#currentData.getValue() || {};
62
68
  }
63
69
  /*
64
70
  getUnique() {
@@ -74,11 +80,14 @@ export class UmbDocumentWorkspaceContext extends UmbWorkspaceContext {
74
80
  getContentTypeId() {
75
81
  return this.getData().contentTypeId;
76
82
  }
83
+ variantById(variantId) {
84
+ return this.#currentData.asObservablePart((data) => data?.variants?.find((x) => variantId.compare(x)));
85
+ }
77
86
  getVariant(variantId) {
78
- return this.#draft.getValue()?.variants?.find((x) => variantId.compare(x));
87
+ return this.#currentData.getValue()?.variants?.find((x) => variantId.compare(x));
79
88
  }
80
89
  getName(variantId) {
81
- const variants = this.#draft.getValue()?.variants;
90
+ const variants = this.#currentData.getValue()?.variants;
82
91
  if (!variants)
83
92
  return;
84
93
  if (variantId) {
@@ -89,48 +98,52 @@ export class UmbDocumentWorkspaceContext extends UmbWorkspaceContext {
89
98
  }
90
99
  }
91
100
  setName(name, variantId) {
92
- const oldVariants = this.#draft.getValue()?.variants || [];
101
+ const oldVariants = this.#currentData.getValue()?.variants || [];
93
102
  const variants = partialUpdateFrozenArray(oldVariants, { name }, variantId ? (x) => variantId.compare(x) : () => true);
94
- this.#draft.update({ variants });
95
- }
96
- propertyValuesOf(variantId) {
97
- return this.#draft.asObservablePart((data) => variantId ? data?.values?.filter((x) => variantId.compare(x)) : data?.values);
103
+ this.#currentData.update({ variants });
98
104
  }
99
- propertyDataByAlias(propertyAlias, variantId) {
100
- return this.#draft.asObservablePart((data) => data?.values?.find((x) => x?.alias === propertyAlias && (variantId ? variantId.compare(x) : true)));
105
+ async propertyStructureById(propertyId) {
106
+ return this.structure.propertyStructureById(propertyId);
101
107
  }
102
- propertyValueByAlias(propertyAlias, variantId) {
103
- return this.#draft.asObservablePart((data) => data?.values?.find((x) => x?.alias === propertyAlias && (variantId ? variantId.compare(x) : true))?.value);
108
+ async propertyValueByAlias(propertyAlias, variantId) {
109
+ return this.#currentData.asObservablePart((data) => data?.values?.find((x) => x?.alias === propertyAlias && (variantId ? variantId.compare(x) : true))?.value);
104
110
  }
111
+ /**
112
+ * Get the current value of the property with the given alias and variantId.
113
+ * @param alias
114
+ * @param variantId
115
+ * @returns The value or undefined if not set or found.
116
+ */
105
117
  getPropertyValue(alias, variantId) {
106
- const currentData = this.#draft.value;
118
+ const currentData = this.#currentData.value;
107
119
  if (currentData) {
108
120
  const newDataSet = currentData.values?.find((x) => x.alias === alias && (variantId ? variantId.compare(x) : true));
109
121
  return newDataSet?.value;
110
122
  }
123
+ return undefined;
111
124
  }
112
- setPropertyValue(alias, value, variantId) {
125
+ async setPropertyValue(alias, value, variantId) {
113
126
  const entry = { ...variantId?.toObject(), alias, value };
114
- const currentData = this.#draft.value;
127
+ const currentData = this.#currentData.value;
115
128
  if (currentData) {
116
129
  const values = appendToFrozenArray(currentData.values || [], entry, (x) => x.alias === alias && (variantId ? variantId.compare(x) : true));
117
- this.#draft.update({ values });
130
+ this.#currentData.update({ values });
118
131
  }
119
132
  }
120
133
  async save() {
121
- if (!this.#draft.value)
134
+ if (!this.#currentData.value)
122
135
  return;
123
- if (!this.#draft.value.id)
136
+ if (!this.#currentData.value.id)
124
137
  return;
125
138
  if (this.getIsNew()) {
126
139
  // TODO: typescript hack until we get the create type
127
- const value = this.#draft.value;
140
+ const value = this.#currentData.value;
128
141
  if ((await this.repository.create(value)).data !== undefined) {
129
142
  this.setIsNew(false);
130
143
  }
131
144
  }
132
145
  else {
133
- await this.repository.save(this.#draft.value.id, this.#draft.value);
146
+ await this.repository.save(this.#currentData.value.id, this.#currentData.value);
134
147
  }
135
148
  this.saveComplete(this.getData());
136
149
  }
@@ -148,11 +161,16 @@ export class UmbDocumentWorkspaceContext extends UmbWorkspaceContext {
148
161
 
149
162
  }
150
163
  */
164
+ createVariantContext(host, variantId) {
165
+ return new UmbDocumentVariantContext(host, this, variantId);
166
+ }
151
167
  destroy() {
152
- this.#draft.complete();
168
+ this.#currentData.complete();
153
169
  this.structure.destroy();
154
170
  super.destroy();
155
171
  }
156
172
  }
157
173
  export default UmbDocumentWorkspaceContext;
158
- export const UMB_DOCUMENT_WORKSPACE_CONTEXT = new UmbContextToken('UmbWorkspaceContext', (context) => context.getEntityType?.() === 'document');
174
+ export const UMB_DOCUMENT_WORKSPACE_CONTEXT = new UmbContextToken('UmbWorkspaceContext',
175
+ // TODO: Refactor: make a better generic way to identify workspaces, maybe workspaceType or workspaceAlias?.
176
+ (context) => context.getEntityType?.() === 'document');
@@ -34,7 +34,7 @@ export let UmbDocumentWorkspaceViewEditPropertiesElement = class UmbDocumentWork
34
34
  });
35
35
  }
36
36
  render() {
37
- return repeat(this._propertyStructure, (property) => property.alias, (property) => html `<umb-variantable-property class="property" .property=${property}></umb-variantable-property> `);
37
+ return repeat(this._propertyStructure, (property) => property.alias, (property) => html `<umb-property-type-based-property class="property" .property=${property}></umb-property-type-based-property> `);
38
38
  }
39
39
  static { this.styles = [
40
40
  UmbTextStyles,
@@ -82,7 +82,7 @@ export let UmbDocumentWorkspaceViewEditElement = class UmbDocumentWorkspaceViewE
82
82
  return;
83
83
  return html `
84
84
  <umb-body-layout header-fit-height>
85
- ${this._routerPath && (this._tabs.length > 0 || this._hasRootGroups)
85
+ ${this._routerPath && (this._tabs.length > 1 || (this._tabs.length === 1 && this._hasRootGroups))
86
86
  ? html ` <uui-tab-group slot="header">
87
87
  ${this._hasRootGroups && this._tabs.length > 0
88
88
  ? html `
@@ -1,4 +1,4 @@
1
- import { LitElement } from '../../../../../external/lit/index.js';
1
+ import { LitElement } from '../../../../external/lit/index.js';
2
2
  export interface Circle {
3
3
  color: string;
4
4
  name: string;