@umbraco-cms/backoffice 14.0.0--preview004-2a8fbe36 → 14.0.0--preview004-eaff2f45

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 (104) hide show
  1. package/dist-cms/apps/app/app.context.js +1 -1
  2. package/dist-cms/custom-elements.json +184 -173
  3. package/dist-cms/packages/core/components/property-type-based-property/property-type-based-property.element.js +2 -2
  4. package/dist-cms/packages/core/components/variant-selector/variant-selector.element.js +4 -3
  5. package/dist-cms/packages/core/data-type/components/property-editor-config/property-editor-config.element.d.ts +1 -1
  6. package/dist-cms/packages/core/data-type/components/property-editor-config/property-editor-config.element.js +9 -8
  7. package/dist-cms/packages/core/data-type/index.d.ts +0 -1
  8. package/dist-cms/packages/core/data-type/index.js +0 -1
  9. package/dist-cms/packages/core/data-type/workspace/data-type-workspace-editor.element.js +1 -1
  10. package/dist-cms/packages/core/data-type/workspace/data-type-workspace.context.d.ts +3 -3
  11. package/dist-cms/packages/core/data-type/workspace/data-type-workspace.context.js +44 -6
  12. package/dist-cms/packages/core/data-type/workspace/views/details/data-type-details-workspace-view.element.js +2 -2
  13. package/dist-cms/packages/core/data-type/workspace/views/info/workspace-view-data-type-info.element.js +6 -6
  14. package/dist-cms/packages/core/modal/common/embedded-media/embedded-media-modal.element.js +12 -12
  15. package/dist-cms/packages/core/property/index.d.ts +4 -0
  16. package/dist-cms/packages/core/property/index.js +4 -0
  17. package/dist-cms/packages/core/property/property/index.d.ts +2 -0
  18. package/dist-cms/packages/core/property/property/index.js +2 -0
  19. package/dist-cms/packages/core/{workspace/workspace-property/workspace-property.context.d.ts → property/property/property.context.d.ts} +3 -3
  20. package/dist-cms/packages/core/{workspace/workspace-property/workspace-property.context.js → property/property/property.context.js} +15 -15
  21. package/dist-cms/packages/core/{workspace/workspace-property/workspace-property.element.d.ts → property/property/property.element.d.ts} +9 -10
  22. package/dist-cms/packages/core/{workspace/workspace-property/workspace-property.element.js → property/property/property.element.js} +63 -56
  23. package/dist-cms/packages/core/property/property-dataset/index.d.ts +6 -0
  24. package/dist-cms/packages/core/property/property-dataset/index.js +6 -0
  25. package/dist-cms/packages/core/property/property-dataset/nameable-property-dataset-context.interface.d.ts +7 -0
  26. package/dist-cms/packages/core/property/property-dataset/nameable-property-dataset-context.token.d.ts +5 -0
  27. package/dist-cms/packages/core/property/property-dataset/nameable-property-dataset-context.token.js +4 -0
  28. package/dist-cms/packages/core/property/property-dataset/property-dataset-base-context.d.ts +33 -0
  29. package/dist-cms/packages/core/property/property-dataset/property-dataset-base-context.js +58 -0
  30. package/dist-cms/packages/core/{workspace/variant-context/variant-context.interface.d.ts → property/property-dataset/property-dataset-context.interface.d.ts} +7 -6
  31. package/dist-cms/packages/core/property/property-dataset/property-dataset-context.token.d.ts +3 -0
  32. package/dist-cms/packages/core/property/property-dataset/property-dataset-context.token.js +2 -0
  33. package/dist-cms/packages/core/property/property-dataset/property-dataset.element.d.ts +67 -0
  34. package/dist-cms/packages/core/property/property-dataset/property-dataset.element.js +119 -0
  35. package/dist-cms/packages/core/property/property-layout/index.d.ts +1 -0
  36. package/dist-cms/packages/core/property/property-layout/index.js +1 -0
  37. package/dist-cms/packages/core/{workspace/workspace-property-layout/workspace-property-layout.element.d.ts → property/property-layout/property-layout.element.d.ts} +4 -4
  38. package/dist-cms/packages/core/{workspace/workspace-property-layout/workspace-property-layout.element.js → property/property-layout/property-layout.element.js} +12 -12
  39. package/dist-cms/packages/core/property/types/index.d.ts +1 -0
  40. package/dist-cms/packages/core/property/types/index.js +1 -0
  41. package/dist-cms/packages/core/property/types/property-value-data.type.d.ts +4 -0
  42. package/dist-cms/packages/core/property/types/property-value-data.type.js +1 -0
  43. package/dist-cms/packages/core/property-action/common/clear/property-action-clear.element.js +2 -2
  44. package/dist-cms/packages/core/property-editor/uis/block-grid/property-editor-ui-block-grid.element.js +2 -2
  45. package/dist-cms/packages/core/property-editor/uis/block-list/config/block-configuration/property-editor-ui-block-list-block-configuration.element.js +1 -1
  46. package/dist-cms/packages/core/property-editor/uis/multi-url-picker/property-editor-ui-multi-url-picker.element.js +2 -2
  47. package/dist-cms/packages/core/property-editor/uis/text-box/property-editor-ui-text-box.element.js +5 -2
  48. package/dist-cms/packages/core/workspace/index.d.ts +1 -3
  49. package/dist-cms/packages/core/workspace/index.js +1 -3
  50. package/dist-cms/packages/core/workspace/workspace-context/workspace-invariantable-context.interface.d.ts +3 -2
  51. package/dist-cms/packages/core/workspace/workspace-context/workspace-variantable-context.interface.d.ts +2 -2
  52. package/dist-cms/packages/core/workspace/workspace-modal/workspace-modal.element.d.ts +1 -1
  53. package/dist-cms/packages/core/workspace/workspace-modal/workspace-modal.element.js +2 -2
  54. package/dist-cms/packages/core/workspace/workspace-property-dataset/index.d.ts +1 -0
  55. package/dist-cms/packages/core/workspace/workspace-property-dataset/index.js +1 -0
  56. package/dist-cms/packages/core/workspace/workspace-property-dataset/invariant-workspace-property-dataset-context.d.ts +26 -0
  57. package/dist-cms/packages/core/workspace/workspace-property-dataset/invariant-workspace-property-dataset-context.js +44 -0
  58. package/dist-cms/packages/core/workspace/workspace-split-view/workspace-split-view.context.js +1 -1
  59. package/dist-cms/packages/dictionary/dictionary/workspace/views/editor/workspace-view-dictionary-editor.element.js +2 -2
  60. package/dist-cms/packages/documents/document-types/workspace/views/design/document-type-workspace-view-edit-property.element.js +1 -1
  61. package/dist-cms/packages/documents/document-types/workspace/views/settings/document-type-workspace-view-settings.element.js +8 -8
  62. package/dist-cms/packages/documents/document-types/workspace/views/structure/document-type-workspace-view-structure.element.js +6 -6
  63. package/dist-cms/packages/documents/document-types/workspace/views/templates/document-type-workspace-view-templates.element.js +4 -4
  64. package/dist-cms/packages/documents/documents/{variant-context/document-variant-context.d.ts → property-dataset-context/document-property-dataset-context.d.ts} +4 -4
  65. package/dist-cms/packages/documents/documents/{variant-context/document-variant-context.js → property-dataset-context/document-property-dataset-context.js} +6 -8
  66. package/dist-cms/packages/documents/documents/property-dataset-context/document-property-dataset-context.token.d.ts +5 -0
  67. package/dist-cms/packages/documents/documents/{variant-context/document-variant-context.token.js → property-dataset-context/document-property-dataset-context.token.js} +1 -1
  68. package/dist-cms/packages/documents/documents/workspace/document-workspace.context.d.ts +2 -2
  69. package/dist-cms/packages/documents/documents/workspace/document-workspace.context.js +3 -3
  70. package/dist-cms/packages/media/media-types/workspace/views/design/media-type-workspace-view-edit-property.element.js +1 -1
  71. package/dist-cms/packages/media/media-types/workspace/views/structure/media-type-workspace-view-structure.element.js +6 -6
  72. package/dist-cms/packages/packages/package-builder/workspace/workspace-package-builder.element.js +15 -29
  73. package/dist-cms/packages/settings/languages/workspace/language/views/details/language-details-workspace-view.element.js +8 -8
  74. package/dist-cms/packages/settings/relation-types/workspace/views/relation-type/relation-type-workspace-view-relation-type.element.js +6 -6
  75. package/dist-cms/packages/tags/property-editors/tags/property-editor-ui-tags.element.js +2 -2
  76. package/dist-cms/packages/user/user/workspace/components/user-workspace-access-settings/user-workspace-access-settings.element.js +6 -6
  77. package/dist-cms/packages/user/user/workspace/components/user-workspace-profile-settings/user-workspace-profile-settings.element.js +4 -4
  78. package/dist-cms/packages/user/user-group/workspace/user-group-workspace-editor.element.js +6 -6
  79. package/dist-cms/tsconfig.build.tsbuildinfo +1 -1
  80. package/dist-cms/vscode-html-custom-data.json +63 -68
  81. package/examples/dashboard-with-property-dataset/README.md +5 -0
  82. package/examples/dashboard-with-property-dataset/dataset-dashboard.ts +75 -0
  83. package/examples/dashboard-with-property-dataset/index.ts +15 -0
  84. package/package.json +4 -1
  85. package/dist-cms/packages/core/data-type/variant-context/data-type-variant-context.d.ts +0 -7
  86. package/dist-cms/packages/core/data-type/variant-context/data-type-variant-context.js +0 -7
  87. package/dist-cms/packages/core/data-type/variant-context/data-type-variant-context.token.d.ts +0 -5
  88. package/dist-cms/packages/core/data-type/variant-context/data-type-variant-context.token.js +0 -3
  89. package/dist-cms/packages/core/data-type/variant-context/index.d.ts +0 -2
  90. package/dist-cms/packages/core/data-type/variant-context/index.js +0 -2
  91. package/dist-cms/packages/core/workspace/variant-context/index.d.ts +0 -5
  92. package/dist-cms/packages/core/workspace/variant-context/index.js +0 -5
  93. package/dist-cms/packages/core/workspace/variant-context/invariant-workspace-variant-context.d.ts +0 -29
  94. package/dist-cms/packages/core/workspace/variant-context/invariant-workspace-variant-context.js +0 -48
  95. package/dist-cms/packages/core/workspace/variant-context/nameable-variant-context.interface.d.ts +0 -7
  96. package/dist-cms/packages/core/workspace/variant-context/nameable-variant-context.token.d.ts +0 -5
  97. package/dist-cms/packages/core/workspace/variant-context/nameable-variant-context.token.js +0 -3
  98. package/dist-cms/packages/core/workspace/variant-context/variant-context.token.d.ts +0 -3
  99. package/dist-cms/packages/core/workspace/variant-context/variant-context.token.js +0 -2
  100. package/dist-cms/packages/core/workspace/workspace-property/index.d.ts +0 -2
  101. package/dist-cms/packages/core/workspace/workspace-property/index.js +0 -2
  102. package/dist-cms/packages/documents/documents/variant-context/document-variant-context.token.d.ts +0 -5
  103. /package/dist-cms/packages/core/{workspace/variant-context/nameable-variant-context.interface.js → property/property-dataset/nameable-property-dataset-context.interface.js} +0 -0
  104. /package/dist-cms/packages/core/{workspace/variant-context/variant-context.interface.js → property/property-dataset/property-dataset-context.interface.js} +0 -0
@@ -2130,6 +2130,67 @@
2130
2130
  }
2131
2131
  ]
2132
2132
  },
2133
+ {
2134
+ "name": "umb-property-dataset",
2135
+ "description": "Slots:\n\n * `default` {} - Slot for rendering content within.\n\nProperties:\n\n * `value` {`UmbPropertyValueData<unknown>[]`} - The value of the dataset.\n\n * `name` {string} - The name of the dataset, this name varies depending on the use-case. But this is either\n\n * `context` - \n\n * `#allowChangeEvent` {`boolean`} - ",
2136
+ "attributes": []
2137
+ },
2138
+ {
2139
+ "name": "umb-property-layout",
2140
+ "description": "Slots:\n\n * `editor` {} - Slot for rendering the Property Editor\n\n * `description` {} - Slot for rendering things below the label.\n\n * `action-menu` {} - Slot for rendering the Property Action Menu\n\nAttributes:\n\n * `alias` {string} - Alias. The technical name of the property.\n\n * `label` {string} - Label. Name of the property.\n\n * `orientation` {string} - Orientation: Horizontal is the default where label goes left and editor right.\nVertical is where label goes above the editor.\n\n * `description` {string} - Description: render a description underneath the label.\n\nProperties:\n\n * `alias` {string} - Alias. The technical name of the property.\n\n * `label` {string} - Label. Name of the property.\n\n * `orientation` {string} - Orientation: Horizontal is the default where label goes left and editor right.\nVertical is where label goes above the editor.\n\n * `description` {string} - Description: render a description underneath the label.\n\n * `styles` {`any[]`} - ",
2141
+ "attributes": [
2142
+ {
2143
+ "name": "alias",
2144
+ "description": "`alias` {string} - Alias. The technical name of the property.\n\nProperty: alias\n\nDefault: ''"
2145
+ },
2146
+ {
2147
+ "name": "label",
2148
+ "description": "`label` {string} - Label. Name of the property.\n\nProperty: label\n\nDefault: ''"
2149
+ },
2150
+ {
2151
+ "name": "orientation",
2152
+ "description": "`orientation` {string} - Orientation: Horizontal is the default where label goes left and editor right.\nVertical is where label goes above the editor.\n\nProperty: orientation\n\nDefault: ''",
2153
+ "values": [
2154
+ {
2155
+ "name": "horizontal"
2156
+ },
2157
+ {
2158
+ "name": "vertical"
2159
+ }
2160
+ ]
2161
+ },
2162
+ {
2163
+ "name": "description",
2164
+ "description": "`description` {string} - Description: render a description underneath the label.\n\nProperty: description\n\nDefault: ''"
2165
+ }
2166
+ ]
2167
+ },
2168
+ {
2169
+ "name": "umb-property",
2170
+ "description": "Attributes:\n\n * `label` {string} - Label. Name of the property\n\n * `description` {string} - Description: render a description underneath the label.\n\n * `alias` {string} - Alias\n\n * `property-editor-ui-alias` {string} - Property Editor UI Alias. Render the Property Editor UI registered for this alias.\n\n * `config` {string} - Config. Configuration to pass to the Property Editor UI. This is also the configuration data stored on the Data Type.\n\nProperties:\n\n * `label` {string} - Label. Name of the property\n\n * `description` {string} - Description: render a description underneath the label.\n\n * `alias` {string} - Alias\n\n * `propertyEditorUiAlias` {string} - Property Editor UI Alias. Render the Property Editor UI registered for this alias.\n\n * `_propertyEditorUiAlias` {`string`} - \n\n * `config` {string} - Config. Configuration to pass to the Property Editor UI. This is also the configuration data stored on the Data Type.\n\n * `_variantDifference` {`string | undefined`} - \n\n * `_element` - \n\n * `_value` {`unknown`} - \n\n * `_alias` {`string | undefined`} - \n\n * `_label` {`string | undefined`} - \n\n * `_description` {`string | undefined`} - \n\n * `_onPropertyEditorChange` - \n\n * `styles` {`any[]`} - ",
2171
+ "attributes": [
2172
+ {
2173
+ "name": "label",
2174
+ "description": "`label` {string} - Label. Name of the property\n\nProperty: label\n\nDefault: ''"
2175
+ },
2176
+ {
2177
+ "name": "description",
2178
+ "description": "`description` {string} - Description: render a description underneath the label.\n\nProperty: description\n\nDefault: ''"
2179
+ },
2180
+ {
2181
+ "name": "alias",
2182
+ "description": "`alias` {string} - Alias\n\nProperty: alias\n\nDefault: ''"
2183
+ },
2184
+ {
2185
+ "name": "property-editor-ui-alias",
2186
+ "description": "`property-editor-ui-alias` {string} - Property Editor UI Alias. Render the Property Editor UI registered for this alias.\n\nProperty: propertyEditorUiAlias\n\nDefault: ''"
2187
+ },
2188
+ {
2189
+ "name": "config",
2190
+ "description": "`config` {string} - Config. Configuration to pass to the Property Editor UI. This is also the configuration data stored on the Data Type.\n\nProperty: config\n\nDefault: ''"
2191
+ }
2192
+ ]
2193
+ },
2133
2194
  {
2134
2195
  "name": "umb-section-default",
2135
2196
  "description": "Properties:\n\n * `_manifest` - \n\n * `manifest` - \n\n * `_routes` {`any[] | undefined`} - \n\n * `_sidebarApps` {`any[] | undefined`} - \n\n * `styles` {`any[]`} - ",
@@ -2337,74 +2398,8 @@
2337
2398
  },
2338
2399
  {
2339
2400
  "name": "umb-workspace-modal",
2340
- "description": "Attributes:\n\n * `data` - \n\nProperties:\n\n * `data` - \n\n * `styles` - ",
2341
- "attributes": [
2342
- {
2343
- "name": "data",
2344
- "description": "`data` - \n\nProperty: data"
2345
- }
2346
- ]
2347
- },
2348
- {
2349
- "name": "umb-workspace-property-layout",
2350
- "description": "Slots:\n\n * `editor` {} - Slot for rendering the Property Editor\n\n * `description` {} - Slot for rendering things below the label.\n\n * `property-action-menu` {} - Slot for rendering the Property Action Menu\n\nAttributes:\n\n * `alias` {string} - Alias. The technical name of the property.\n\n * `label` {string} - Label. Name of the property.\n\n * `orientation` {string} - Orientation: Horizontal is the default where label goes left and editor right.\nVertical is where label goes above the editor.\n\n * `description` {string} - Description: render a description underneath the label.\n\nProperties:\n\n * `alias` {string} - Alias. The technical name of the property.\n\n * `label` {string} - Label. Name of the property.\n\n * `orientation` {string} - Orientation: Horizontal is the default where label goes left and editor right.\nVertical is where label goes above the editor.\n\n * `description` {string} - Description: render a description underneath the label.\n\n * `styles` {`any[]`} - ",
2351
- "attributes": [
2352
- {
2353
- "name": "alias",
2354
- "description": "`alias` {string} - Alias. The technical name of the property.\n\nProperty: alias\n\nDefault: ''"
2355
- },
2356
- {
2357
- "name": "label",
2358
- "description": "`label` {string} - Label. Name of the property.\n\nProperty: label\n\nDefault: ''"
2359
- },
2360
- {
2361
- "name": "orientation",
2362
- "description": "`orientation` {string} - Orientation: Horizontal is the default where label goes left and editor right.\nVertical is where label goes above the editor.\n\nProperty: orientation\n\nDefault: ''",
2363
- "values": [
2364
- {
2365
- "name": "horizontal"
2366
- },
2367
- {
2368
- "name": "vertical"
2369
- }
2370
- ]
2371
- },
2372
- {
2373
- "name": "description",
2374
- "description": "`description` {string} - Description: render a description underneath the label.\n\nProperty: description\n\nDefault: ''"
2375
- }
2376
- ]
2377
- },
2378
- {
2379
- "name": "umb-workspace-property",
2380
- "description": "Attributes:\n\n * `label` {string} - Label. Name of the property\n\n * `description` {string} - Description: render a description underneath the label.\n\n * `alias` {string} - Alias\n\n * `_propertyEditorUiAlias` {string} - Property Editor UI Alias. Render the Property Editor UI registered for this alias.\n\n * `property-editor-ui-alias` {`string`} - \n\n * `config` {string} - Config. Configuration to pass to the Property Editor UI. This is also the configuration data stored on the Data Type.\n\nProperties:\n\n * `label` {string} - Label. Name of the property\n\n * `description` {string} - Description: render a description underneath the label.\n\n * `alias` {string} - Alias\n\n * `_propertyEditorUiAlias` {string} - Property Editor UI Alias. Render the Property Editor UI registered for this alias.\n\n * `propertyEditorUiAlias` {`string`} - \n\n * `config` {string} - Config. Configuration to pass to the Property Editor UI. This is also the configuration data stored on the Data Type.\n\n * `_variantDifference` {`string | undefined`} - \n\n * `_element` - \n\n * `_value` {`unknown`} - \n\n * `_alias` {`string | undefined`} - \n\n * `_label` {`string | undefined`} - \n\n * `_description` {`string | undefined`} - \n\n * `_propertyContext` - \n\n * `_valueObserver` - \n\n * `_configObserver` - \n\n * `_onPropertyEditorChange` - \n\n * `styles` {`any[]`} - ",
2381
- "attributes": [
2382
- {
2383
- "name": "label",
2384
- "description": "`label` {string} - Label. Name of the property\n\nProperty: label\n\nDefault: ''"
2385
- },
2386
- {
2387
- "name": "description",
2388
- "description": "`description` {string} - Description: render a description underneath the label.\n\nProperty: description\n\nDefault: ''"
2389
- },
2390
- {
2391
- "name": "alias",
2392
- "description": "`alias` {string} - Alias\n\nProperty: alias\n\nDefault: ''"
2393
- },
2394
- {
2395
- "name": "_propertyEditorUiAlias",
2396
- "description": "`_propertyEditorUiAlias` {string} - Property Editor UI Alias. Render the Property Editor UI registered for this alias.\n\nProperty: _propertyEditorUiAlias\n\nDefault: ''"
2397
- },
2398
- {
2399
- "name": "property-editor-ui-alias",
2400
- "description": "`property-editor-ui-alias` {`string`} - \n\nProperty: propertyEditorUiAlias"
2401
- },
2402
- {
2403
- "name": "config",
2404
- "description": "`config` {string} - Config. Configuration to pass to the Property Editor UI. This is also the configuration data stored on the Data Type.\n\nProperty: config\n\nDefault: ''",
2405
- "values": []
2406
- }
2407
- ]
2401
+ "description": "Properties:\n\n * `data` - \n\n * `styles` - ",
2402
+ "attributes": []
2408
2403
  },
2409
2404
  {
2410
2405
  "name": "umb-workspace-split-view",
@@ -0,0 +1,5 @@
1
+ # Property Dataset Dashboard Example
2
+
3
+ This example demonstrates the essence of the Property Dataset.
4
+
5
+ This dashboard implements such, to display a few selected Property Editors and bind the data back to the Dashboard.
@@ -0,0 +1,75 @@
1
+ import { UmbTextStyles } from '@umbraco-cms/backoffice/style';
2
+ import { css, html, customElement, LitElement } from '@umbraco-cms/backoffice/external/lit';
3
+ import { UmbElementMixin } from '@umbraco-cms/backoffice/element-api';
4
+ import { UmbPropertyValueData, type UmbPropertyDatasetElement } from '@umbraco-cms/backoffice/property';
5
+
6
+ @customElement('example-dataset-dashboard')
7
+ export class ExampleDatasetDashboard extends UmbElementMixin(LitElement) {
8
+ data: UmbPropertyValueData[] = [
9
+ {
10
+ alias: 'textProperty',
11
+ value: 'Hello',
12
+ },
13
+ ];
14
+
15
+ #onDataChange(e: Event) {
16
+ const oldValue = this.data;
17
+ this.data = (e.target as UmbPropertyDatasetElement).value;
18
+ this.requestUpdate('data', oldValue);
19
+ }
20
+
21
+ render() {
22
+ return html`
23
+ <uui-box class="uui-text">
24
+ <h1 class="uui-h2" style="margin-top: var(--uui-size-layout-1);">Dataset Example</h1>
25
+ <umb-property-dataset .value=${this.data} @change=${this.#onDataChange}>
26
+ <umb-property
27
+ label="Textual input"
28
+ description="Example of text editor"
29
+ alias="textProperty"
30
+ property-editor-ui-alias="Umb.PropertyEditorUi.TextBox"></umb-property>
31
+ <umb-property
32
+ label="List of options"
33
+ description="Example of dropdown editor"
34
+ alias="listProperty"
35
+ .config=${[
36
+ {
37
+ alias: 'multiple',
38
+ value: false,
39
+ },
40
+ {
41
+ alias: 'items',
42
+ value: {
43
+ 0: { sortOrder: 1, value: 'First Option' },
44
+ 1: { sortOrder: 2, value: 'Second Option' },
45
+ 2: { sortOrder: 3, value: 'Third Option' },
46
+ },
47
+ },
48
+ ]}
49
+ property-editor-ui-alias="Umb.PropertyEditorUi.Dropdown"></umb-property>
50
+ </umb-property-dataset>
51
+
52
+ <h5 class="uui-h3" style="margin-top: var(--uui-size-layout-1);">Output of dashboard data:</h5>
53
+ <code> ${JSON.stringify(this.data, null, 2)} </code>
54
+ </uui-box>
55
+ `;
56
+ }
57
+
58
+ static styles = [
59
+ UmbTextStyles,
60
+ css`
61
+ :host {
62
+ display: block;
63
+ padding: var(--uui-size-layout-1);
64
+ }
65
+ `,
66
+ ];
67
+ }
68
+
69
+ export default ExampleDatasetDashboard;
70
+
71
+ declare global {
72
+ interface HTMLElementTagNameMap {
73
+ 'example-dataset-dashboard': ExampleDatasetDashboard;
74
+ }
75
+ }
@@ -0,0 +1,15 @@
1
+ import type { ManifestTypes } from '@umbraco-cms/backoffice/extension-registry';
2
+
3
+ export const manifests: Array<ManifestTypes> = [
4
+ {
5
+ type: 'dashboard',
6
+ name: 'Example Dataset Workspace View',
7
+ alias: 'example.dashboard.dataset',
8
+ element: () => import('./dataset-dashboard.js'),
9
+ weight: 900,
10
+ meta: {
11
+ label: 'Dataset example',
12
+ pathname: 'dataset-example',
13
+ },
14
+ },
15
+ ];
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@umbraco-cms/backoffice",
3
3
  "license": "MIT",
4
- "version": "14.0.0--preview004-2a8fbe36",
4
+ "version": "14.0.0--preview004-eaff2f45",
5
5
  "type": "module",
6
6
  "exports": {
7
7
  ".": null,
@@ -36,6 +36,7 @@
36
36
  "./modal": "./dist-cms/packages/core/modal/index.js",
37
37
  "./notification": "./dist-cms/packages/core/notification/index.js",
38
38
  "./picker-input": "./dist-cms/packages/core/picker-input/index.js",
39
+ "./property": "./dist-cms/packages/core/property/index.js",
39
40
  "./property-action": "./dist-cms/packages/core/property-action/index.js",
40
41
  "./property-editor": "./dist-cms/packages/core/property-editor/index.js",
41
42
  "./section": "./dist-cms/packages/core/section/index.js",
@@ -120,6 +121,8 @@
120
121
  "storybook:build": "npm run wc-analyze && storybook build",
121
122
  "storybook": "npm run wc-analyze && storybook dev -p 6006",
122
123
  "test:e2e": "npm run auth:test:e2e && npm run backoffice:test:e2e",
124
+ "test:dev": "web-test-runner --config ./web-test-runner.dev.config.mjs",
125
+ "test:dev-watch": "web-test-runner --watch --config ./web-test-runner.dev.config.mjs",
123
126
  "test:watch": "web-test-runner --watch",
124
127
  "test": "web-test-runner --coverage",
125
128
  "wc-analyze:vscode": "wca **/*.element.ts --format vscode --outFile dist-cms/vscode-html-custom-data.json",
@@ -1,7 +0,0 @@
1
- import { UmbDataTypeWorkspaceContext } from '../workspace/data-type-workspace.context.js';
2
- import { UmbControllerHost } from '../../../../libs/controller-api/index.js';
3
- import { UmbInvariantWorkspaceVariantContext } from '../../workspace/index.js';
4
- export declare class UmbDataTypeVariantContext extends UmbInvariantWorkspaceVariantContext<UmbDataTypeWorkspaceContext> {
5
- properties: import("rxjs").Observable<import("../../index.js").PropertyEditorConfigProperty[] | undefined>;
6
- constructor(host: UmbControllerHost, workspace: UmbDataTypeWorkspaceContext);
7
- }
@@ -1,7 +0,0 @@
1
- import { UmbInvariantWorkspaceVariantContext } from '../../workspace/index.js';
2
- export class UmbDataTypeVariantContext extends UmbInvariantWorkspaceVariantContext {
3
- constructor(host, workspace) {
4
- super(host, workspace);
5
- this.properties = this._workspace.properties;
6
- }
7
- }
@@ -1,5 +0,0 @@
1
- import type { UmbDataTypeVariantContext } from './data-type-variant-context.js';
2
- import { UmbVariantContext } from '../../workspace/index.js';
3
- import { UmbContextToken } from '../../../../libs/context-api/index.js';
4
- export declare const isDataTypeVariantContext: (context: UmbVariantContext) => context is UmbDataTypeVariantContext;
5
- export declare const UMB_DATA_TYPE_VARIANT_CONTEXT: UmbContextToken<UmbVariantContext, UmbDataTypeVariantContext>;
@@ -1,3 +0,0 @@
1
- import { UmbContextToken } from '../../../../libs/context-api/index.js';
2
- export const isDataTypeVariantContext = (context) => 'properties' in context && context.getType() === 'data-type';
3
- export const UMB_DATA_TYPE_VARIANT_CONTEXT = new UmbContextToken('UmbVariantContext', undefined, isDataTypeVariantContext);
@@ -1,2 +0,0 @@
1
- export * from './data-type-variant-context.token.js';
2
- export * from './data-type-variant-context.js';
@@ -1,2 +0,0 @@
1
- export * from './data-type-variant-context.token.js';
2
- export * from './data-type-variant-context.js';
@@ -1,5 +0,0 @@
1
- export * from './variant-context.interface.js';
2
- export * from './variant-context.token.js';
3
- export * from './nameable-variant-context.interface.js';
4
- export * from './nameable-variant-context.token.js';
5
- export * from './invariant-workspace-variant-context.js';
@@ -1,5 +0,0 @@
1
- export * from './variant-context.interface.js';
2
- export * from './variant-context.token.js';
3
- export * from './nameable-variant-context.interface.js';
4
- export * from './nameable-variant-context.token.js';
5
- export * from './invariant-workspace-variant-context.js';
@@ -1,29 +0,0 @@
1
- import { DocumentVariantResponseModel } from '../../../../external/backend-api/index.js';
2
- import { type UmbControllerHost } from '../../../../libs/controller-api/index.js';
3
- import { UmbBaseController } from '../../../../libs/class-api/index.js';
4
- import { UmbVariantId } from '../../variant/index.js';
5
- import { UmbVariantContext, UmbInvariantableWorkspaceContextInterface } from '../index.js';
6
- export declare class UmbInvariantWorkspaceVariantContext<WorkspaceType extends UmbInvariantableWorkspaceContextInterface = UmbInvariantableWorkspaceContextInterface> extends UmbBaseController implements UmbVariantContext {
7
- #private;
8
- protected _workspace: WorkspaceType;
9
- currentVariant: import("rxjs").Observable<DocumentVariantResponseModel | undefined>;
10
- name: import("rxjs").Observable<string | undefined>;
11
- culture: import("rxjs").Observable<string | null | undefined>;
12
- segment: import("rxjs").Observable<string | null | undefined>;
13
- getVariantId(): UmbVariantId;
14
- getType(): string;
15
- getUnique(): string | undefined;
16
- getName(): string | undefined;
17
- setName(name: string): void;
18
- constructor(host: UmbControllerHost, workspace: WorkspaceType);
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
- propertyValueByAlias<ReturnType = unknown>(propertyAlias: string): Promise<import("rxjs").Observable<ReturnType | 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
- setPropertyValue(propertyAlias: string, value: unknown): Promise<void>;
29
- }
@@ -1,48 +0,0 @@
1
- import { UmbBaseController } from '../../../../libs/class-api/index.js';
2
- import { UmbObjectState } from '../../../../libs/observable-api/index.js';
3
- import { UmbVariantId } from '../../variant/index.js';
4
- import { UMB_VARIANT_CONTEXT, } from '../index.js';
5
- export class UmbInvariantWorkspaceVariantContext extends UmbBaseController {
6
- #currentVariant;
7
- // default data:
8
- getVariantId() {
9
- return UmbVariantId.CreateInvariant();
10
- }
11
- getType() {
12
- return this._workspace.getEntityType();
13
- }
14
- getUnique() {
15
- return this._workspace.getEntityId();
16
- }
17
- getName() {
18
- return this._workspace.getName();
19
- }
20
- setName(name) {
21
- this._workspace.setName(name);
22
- }
23
- constructor(host, workspace) {
24
- // The controller alias, is a very generic name cause we want only one of these for this controller host.
25
- super(host, 'variantContext');
26
- this.#currentVariant = new UmbObjectState(undefined);
27
- this.currentVariant = this.#currentVariant.asObservable();
28
- this.name = this.#currentVariant.asObservablePart((x) => x?.name);
29
- this.culture = this.#currentVariant.asObservablePart((x) => x?.culture);
30
- this.segment = this.#currentVariant.asObservablePart((x) => x?.segment);
31
- this._workspace = workspace;
32
- this.provideContext(UMB_VARIANT_CONTEXT, this);
33
- }
34
- /**
35
- * TODO: Write proper JSDocs here.
36
- * 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.
37
- */
38
- async propertyValueByAlias(propertyAlias) {
39
- return this._workspace.propertyValueByAlias(propertyAlias);
40
- }
41
- /**
42
- * TODO: Write proper JSDocs here.
43
- * 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.
44
- */
45
- async setPropertyValue(propertyAlias, value) {
46
- return this._workspace.setPropertyValue(propertyAlias, value);
47
- }
48
- }
@@ -1,7 +0,0 @@
1
- import { UmbVariantContext } from './variant-context.interface.js';
2
- /**
3
- * A variant context with ability to set the name of it.
4
- */
5
- export interface UmbNameableVariantContext extends UmbVariantContext {
6
- setName(name: string): void;
7
- }
@@ -1,5 +0,0 @@
1
- import { type UmbVariantContext } from './variant-context.interface.js';
2
- import { UmbNameableVariantContext } from './nameable-variant-context.interface.js';
3
- import { UmbContextToken } from '../../../../libs/context-api/index.js';
4
- export declare const isNameablePropertySetContext: (context: UmbVariantContext) => context is UmbNameableVariantContext;
5
- export declare const UMB_NAMEABLE_VARIANT_CONTEXT: UmbContextToken<UmbVariantContext, UmbNameableVariantContext>;
@@ -1,3 +0,0 @@
1
- import { UmbContextToken } from '../../../../libs/context-api/index.js';
2
- export const isNameablePropertySetContext = (context) => 'setName' in context;
3
- export const UMB_NAMEABLE_VARIANT_CONTEXT = new UmbContextToken('UmbVariantContext', undefined, isNameablePropertySetContext);
@@ -1,3 +0,0 @@
1
- import { type UmbVariantContext } from './variant-context.interface.js';
2
- import { UmbContextToken } from '../../../../libs/context-api/index.js';
3
- export declare const UMB_VARIANT_CONTEXT: UmbContextToken<UmbVariantContext, UmbVariantContext>;
@@ -1,2 +0,0 @@
1
- import { UmbContextToken } from '../../../../libs/context-api/index.js';
2
- export const UMB_VARIANT_CONTEXT = new UmbContextToken('UmbVariantContext');
@@ -1,2 +0,0 @@
1
- export * from './workspace-property.context.js';
2
- export * from './workspace-property.element.js';
@@ -1,2 +0,0 @@
1
- export * from './workspace-property.context.js';
2
- export * from './workspace-property.element.js';
@@ -1,5 +0,0 @@
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>;