@umbraco-cms/backoffice 14.0.0--preview004-478ab905 → 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.
- package/dist-cms/apps/app/app.context.js +1 -1
- package/dist-cms/custom-elements.json +184 -173
- package/dist-cms/packages/core/collection/default/collection-default.context.js +1 -1
- package/dist-cms/packages/core/components/property-type-based-property/property-type-based-property.element.js +2 -2
- package/dist-cms/packages/core/components/variant-selector/variant-selector.element.js +4 -3
- package/dist-cms/packages/core/data-type/components/property-editor-config/property-editor-config.element.d.ts +1 -1
- package/dist-cms/packages/core/data-type/components/property-editor-config/property-editor-config.element.js +9 -8
- package/dist-cms/packages/core/data-type/index.d.ts +0 -1
- package/dist-cms/packages/core/data-type/index.js +0 -1
- package/dist-cms/packages/core/data-type/workspace/data-type-workspace-editor.element.js +1 -1
- package/dist-cms/packages/core/data-type/workspace/data-type-workspace.context.d.ts +3 -3
- package/dist-cms/packages/core/data-type/workspace/data-type-workspace.context.js +44 -6
- package/dist-cms/packages/core/data-type/workspace/views/details/data-type-details-workspace-view.element.js +2 -2
- package/dist-cms/packages/core/data-type/workspace/views/info/workspace-view-data-type-info.element.js +6 -6
- package/dist-cms/packages/core/modal/common/embedded-media/embedded-media-modal.element.js +12 -12
- package/dist-cms/packages/core/modal/common/section-picker/section-picker-modal.element.js +4 -9
- package/dist-cms/packages/core/property/index.d.ts +4 -0
- package/dist-cms/packages/core/property/index.js +4 -0
- package/dist-cms/packages/core/property/property/index.d.ts +2 -0
- package/dist-cms/packages/core/property/property/index.js +2 -0
- package/dist-cms/packages/core/{workspace/workspace-property/workspace-property.context.d.ts → property/property/property.context.d.ts} +3 -3
- package/dist-cms/packages/core/{workspace/workspace-property/workspace-property.context.js → property/property/property.context.js} +15 -15
- package/dist-cms/packages/core/{workspace/workspace-property/workspace-property.element.d.ts → property/property/property.element.d.ts} +9 -10
- package/dist-cms/packages/core/{workspace/workspace-property/workspace-property.element.js → property/property/property.element.js} +63 -56
- package/dist-cms/packages/core/property/property-dataset/index.d.ts +6 -0
- package/dist-cms/packages/core/property/property-dataset/index.js +6 -0
- package/dist-cms/packages/core/property/property-dataset/nameable-property-dataset-context.interface.d.ts +7 -0
- package/dist-cms/packages/core/property/property-dataset/nameable-property-dataset-context.token.d.ts +5 -0
- package/dist-cms/packages/core/property/property-dataset/nameable-property-dataset-context.token.js +4 -0
- package/dist-cms/packages/core/property/property-dataset/property-dataset-base-context.d.ts +33 -0
- package/dist-cms/packages/core/property/property-dataset/property-dataset-base-context.js +58 -0
- package/dist-cms/packages/core/{workspace/variant-context/variant-context.interface.d.ts → property/property-dataset/property-dataset-context.interface.d.ts} +7 -6
- package/dist-cms/packages/core/property/property-dataset/property-dataset-context.token.d.ts +3 -0
- package/dist-cms/packages/core/property/property-dataset/property-dataset-context.token.js +2 -0
- package/dist-cms/packages/core/property/property-dataset/property-dataset.element.d.ts +67 -0
- package/dist-cms/packages/core/property/property-dataset/property-dataset.element.js +119 -0
- package/dist-cms/packages/core/property/property-layout/index.d.ts +1 -0
- package/dist-cms/packages/core/property/property-layout/index.js +1 -0
- 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
- package/dist-cms/packages/core/{workspace/workspace-property-layout/workspace-property-layout.element.js → property/property-layout/property-layout.element.js} +12 -12
- package/dist-cms/packages/core/property/types/index.d.ts +1 -0
- package/dist-cms/packages/core/property/types/index.js +1 -0
- package/dist-cms/packages/core/property/types/property-value-data.type.d.ts +4 -0
- package/dist-cms/packages/core/property/types/property-value-data.type.js +1 -0
- package/dist-cms/packages/core/property-action/common/clear/property-action-clear.element.js +2 -2
- package/dist-cms/packages/core/property-editor/uis/block-grid/property-editor-ui-block-grid.element.js +2 -2
- package/dist-cms/packages/core/property-editor/uis/block-list/config/block-configuration/property-editor-ui-block-list-block-configuration.element.js +1 -1
- package/dist-cms/packages/core/property-editor/uis/multi-url-picker/property-editor-ui-multi-url-picker.element.js +2 -2
- package/dist-cms/packages/core/property-editor/uis/text-box/property-editor-ui-text-box.element.js +5 -2
- package/dist-cms/packages/core/tree/tree-item-base/tree-item-base.context.js +6 -6
- package/dist-cms/packages/core/tree/tree.context.d.ts +3 -21
- package/dist-cms/packages/core/tree/tree.context.js +1 -37
- package/dist-cms/packages/core/tree/tree.element.js +6 -6
- package/dist-cms/packages/core/workspace/index.d.ts +1 -3
- package/dist-cms/packages/core/workspace/index.js +1 -3
- package/dist-cms/packages/core/workspace/workspace-context/workspace-invariantable-context.interface.d.ts +3 -2
- package/dist-cms/packages/core/workspace/workspace-context/workspace-variantable-context.interface.d.ts +2 -2
- package/dist-cms/packages/core/workspace/workspace-modal/workspace-modal.element.d.ts +1 -1
- package/dist-cms/packages/core/workspace/workspace-modal/workspace-modal.element.js +2 -2
- package/dist-cms/packages/core/workspace/workspace-property-dataset/index.d.ts +1 -0
- package/dist-cms/packages/core/workspace/workspace-property-dataset/index.js +1 -0
- package/dist-cms/packages/core/workspace/workspace-property-dataset/invariant-workspace-property-dataset-context.d.ts +26 -0
- package/dist-cms/packages/core/workspace/workspace-property-dataset/invariant-workspace-property-dataset-context.js +44 -0
- package/dist-cms/packages/core/workspace/workspace-split-view/workspace-split-view.context.js +1 -1
- package/dist-cms/packages/dictionary/dictionary/workspace/views/editor/workspace-view-dictionary-editor.element.js +2 -2
- package/dist-cms/packages/documents/document-types/workspace/views/design/document-type-workspace-view-edit-property.element.js +1 -1
- package/dist-cms/packages/documents/document-types/workspace/views/settings/document-type-workspace-view-settings.element.js +8 -8
- package/dist-cms/packages/documents/document-types/workspace/views/structure/document-type-workspace-view-structure.element.js +6 -6
- package/dist-cms/packages/documents/document-types/workspace/views/templates/document-type-workspace-view-templates.element.js +4 -4
- package/dist-cms/packages/documents/documents/{variant-context/document-variant-context.d.ts → property-dataset-context/document-property-dataset-context.d.ts} +4 -4
- package/dist-cms/packages/documents/documents/{variant-context/document-variant-context.js → property-dataset-context/document-property-dataset-context.js} +6 -8
- package/dist-cms/packages/documents/documents/property-dataset-context/document-property-dataset-context.token.d.ts +5 -0
- package/dist-cms/packages/documents/documents/{variant-context/document-variant-context.token.js → property-dataset-context/document-property-dataset-context.token.js} +1 -1
- package/dist-cms/packages/documents/documents/workspace/document-workspace.context.d.ts +2 -2
- package/dist-cms/packages/documents/documents/workspace/document-workspace.context.js +3 -3
- package/dist-cms/packages/media/media-types/workspace/views/design/media-type-workspace-view-edit-property.element.js +1 -1
- package/dist-cms/packages/media/media-types/workspace/views/structure/media-type-workspace-view-structure.element.js +6 -6
- package/dist-cms/packages/packages/package-builder/workspace/workspace-package-builder.element.js +15 -29
- package/dist-cms/packages/settings/languages/modals/language-picker/language-picker-modal.element.js +1 -1
- package/dist-cms/packages/settings/languages/workspace/language/views/details/language-details-workspace-view.element.js +8 -8
- package/dist-cms/packages/settings/relation-types/workspace/views/relation-type/relation-type-workspace-view-relation-type.element.js +6 -6
- package/dist-cms/packages/tags/property-editors/tags/property-editor-ui-tags.element.js +2 -2
- package/dist-cms/packages/user/user/modals/user-picker/user-picker-modal.element.js +1 -1
- package/dist-cms/packages/user/user/workspace/components/user-workspace-access-settings/user-workspace-access-settings.element.js +6 -6
- package/dist-cms/packages/user/user/workspace/components/user-workspace-profile-settings/user-workspace-profile-settings.element.js +4 -4
- package/dist-cms/packages/user/user-group/modals/user-group-picker/user-group-picker-modal.element.js +1 -1
- package/dist-cms/packages/user/user-group/workspace/user-group-workspace-editor.element.js +6 -6
- package/dist-cms/shared/utils/index.d.ts +1 -1
- package/dist-cms/shared/utils/index.js +1 -1
- package/dist-cms/shared/utils/{selection-manager.d.ts → selection-manager/selection.manager.d.ts} +17 -1
- package/dist-cms/shared/utils/{selection-manager.js → selection-manager/selection.manager.js} +48 -6
- package/dist-cms/tsconfig.build.tsbuildinfo +1 -1
- package/dist-cms/vscode-html-custom-data.json +63 -68
- package/examples/dashboard-with-property-dataset/README.md +5 -0
- package/examples/dashboard-with-property-dataset/dataset-dashboard.ts +75 -0
- package/examples/dashboard-with-property-dataset/index.ts +15 -0
- package/package.json +4 -1
- package/dist-cms/packages/core/data-type/variant-context/data-type-variant-context.d.ts +0 -7
- package/dist-cms/packages/core/data-type/variant-context/data-type-variant-context.js +0 -7
- package/dist-cms/packages/core/data-type/variant-context/data-type-variant-context.token.d.ts +0 -5
- package/dist-cms/packages/core/data-type/variant-context/data-type-variant-context.token.js +0 -3
- package/dist-cms/packages/core/data-type/variant-context/index.d.ts +0 -2
- package/dist-cms/packages/core/data-type/variant-context/index.js +0 -2
- package/dist-cms/packages/core/workspace/variant-context/index.d.ts +0 -5
- package/dist-cms/packages/core/workspace/variant-context/index.js +0 -5
- package/dist-cms/packages/core/workspace/variant-context/invariant-workspace-variant-context.d.ts +0 -29
- package/dist-cms/packages/core/workspace/variant-context/invariant-workspace-variant-context.js +0 -48
- package/dist-cms/packages/core/workspace/variant-context/nameable-variant-context.interface.d.ts +0 -7
- package/dist-cms/packages/core/workspace/variant-context/nameable-variant-context.token.d.ts +0 -5
- package/dist-cms/packages/core/workspace/variant-context/nameable-variant-context.token.js +0 -3
- package/dist-cms/packages/core/workspace/variant-context/variant-context.token.d.ts +0 -3
- package/dist-cms/packages/core/workspace/variant-context/variant-context.token.js +0 -2
- package/dist-cms/packages/core/workspace/workspace-property/index.d.ts +0 -2
- package/dist-cms/packages/core/workspace/workspace-property/index.js +0 -2
- package/dist-cms/packages/documents/documents/variant-context/document-variant-context.token.d.ts +0 -5
- /package/dist-cms/packages/core/{workspace/variant-context/nameable-variant-context.interface.js → property/property-dataset/nameable-property-dataset-context.interface.js} +0 -0
- /package/dist-cms/packages/core/{workspace/variant-context/variant-context.interface.js → property/property-dataset/property-dataset-context.interface.js} +0 -0
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
import { UMB_PROPERTY_DATASET_CONTEXT, } from '../index.js';
|
|
2
|
+
import { UmbContextBase } from '../../../../libs/class-api/index.js';
|
|
3
|
+
import { UmbArrayState, UmbStringState } from '../../../../libs/observable-api/index.js';
|
|
4
|
+
import { UmbVariantId } from '../../variant/index.js';
|
|
5
|
+
/**
|
|
6
|
+
* A base property dataset context implementation.
|
|
7
|
+
* @class UmbPropertyDatasetBaseContext
|
|
8
|
+
* @extends {UmbContextBase}
|
|
9
|
+
*/
|
|
10
|
+
export class UmbPropertyDatasetBaseContext extends UmbContextBase {
|
|
11
|
+
#name;
|
|
12
|
+
#values;
|
|
13
|
+
getEntityType() {
|
|
14
|
+
return this._entityType;
|
|
15
|
+
}
|
|
16
|
+
getUnique() {
|
|
17
|
+
return this._unique;
|
|
18
|
+
}
|
|
19
|
+
getName() {
|
|
20
|
+
return this.#name.getValue();
|
|
21
|
+
}
|
|
22
|
+
setName(name) {
|
|
23
|
+
this.#name.next(name);
|
|
24
|
+
}
|
|
25
|
+
getVariantId() {
|
|
26
|
+
return UmbVariantId.CreateInvariant();
|
|
27
|
+
}
|
|
28
|
+
// variant id for a specific property?
|
|
29
|
+
constructor(host) {
|
|
30
|
+
// The controller alias, is a very generic name cause we want only one of these for this controller host.
|
|
31
|
+
super(host, UMB_PROPERTY_DATASET_CONTEXT);
|
|
32
|
+
this.#name = new UmbStringState(undefined);
|
|
33
|
+
this.name = this.#name.asObservable();
|
|
34
|
+
this.#values = new UmbArrayState([], (x) => x.alias);
|
|
35
|
+
this.values = this.#values.asObservable();
|
|
36
|
+
}
|
|
37
|
+
/**
|
|
38
|
+
* TODO: Write proper JSDocs here.
|
|
39
|
+
*/
|
|
40
|
+
async propertyValueByAlias(propertyAlias) {
|
|
41
|
+
return this.#values.asObservablePart((values) => {
|
|
42
|
+
const valueObj = values.find((x) => x.alias === propertyAlias);
|
|
43
|
+
return valueObj ? valueObj.value : undefined;
|
|
44
|
+
});
|
|
45
|
+
}
|
|
46
|
+
/**
|
|
47
|
+
* TODO: Write proper JSDocs here.
|
|
48
|
+
*/
|
|
49
|
+
setPropertyValue(alias, value) {
|
|
50
|
+
this.#values.appendOne({ alias, value });
|
|
51
|
+
}
|
|
52
|
+
getValues() {
|
|
53
|
+
return this.#values.getValue();
|
|
54
|
+
}
|
|
55
|
+
setValues(map) {
|
|
56
|
+
this.#values.next(map);
|
|
57
|
+
}
|
|
58
|
+
}
|
|
@@ -1,20 +1,21 @@
|
|
|
1
1
|
import type { UmbVariantId } from '../../variant/variant-id.class.js';
|
|
2
2
|
import type { Observable } from '../../../../external/rxjs/index.js';
|
|
3
3
|
/**
|
|
4
|
-
* A
|
|
4
|
+
* A property dataset context, represents the data of a set of properties.
|
|
5
5
|
* This can take form as many, so to list a few:
|
|
6
|
-
* - A specific variant of content
|
|
7
|
-
* - Content that does not vary
|
|
6
|
+
* - A specific variant of content.
|
|
7
|
+
* - Content that does not vary.
|
|
8
8
|
* - A block.
|
|
9
9
|
* - A DataType configuration.
|
|
10
|
+
* - A property editor that hosts a set of properties.
|
|
10
11
|
*
|
|
11
12
|
* The base type of this holds a Name and some Properties.
|
|
12
13
|
* Some might be enriches with Variant Info, like culture and segment.
|
|
13
14
|
* Others might have saved publishing status.
|
|
14
15
|
* Also setting the name is an additional feature.
|
|
15
16
|
*/
|
|
16
|
-
export interface
|
|
17
|
-
|
|
17
|
+
export interface UmbPropertyDatasetContext {
|
|
18
|
+
getEntityType(): string;
|
|
18
19
|
getUnique(): string | undefined;
|
|
19
20
|
getVariantId: () => UmbVariantId;
|
|
20
21
|
getName(): string | undefined;
|
|
@@ -22,5 +23,5 @@ export interface UmbVariantContext {
|
|
|
22
23
|
destroy(): void;
|
|
23
24
|
propertyVariantId?: (propertyAlias: string) => Promise<Observable<UmbVariantId | undefined>>;
|
|
24
25
|
propertyValueByAlias<ReturnType = unknown>(propertyAlias: string): Promise<Observable<ReturnType | undefined>>;
|
|
25
|
-
setPropertyValue(propertyAlias: string, value: unknown):
|
|
26
|
+
setPropertyValue(propertyAlias: string, value: unknown): void;
|
|
26
27
|
}
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
import { type UmbPropertyDatasetContext } from './property-dataset-context.interface.js';
|
|
2
|
+
import { UmbContextToken } from '../../../../libs/context-api/index.js';
|
|
3
|
+
export declare const UMB_PROPERTY_DATASET_CONTEXT: UmbContextToken<UmbPropertyDatasetContext, UmbPropertyDatasetContext>;
|
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
import type { UmbPropertyValueData } from '../types/property-value-data.type.js';
|
|
2
|
+
import { UmbPropertyDatasetBaseContext } from './property-dataset-base-context.js';
|
|
3
|
+
import { UmbLitElement } from '../../../../shared/lit-element/index.js';
|
|
4
|
+
/**
|
|
5
|
+
* @element umb-property-dataset
|
|
6
|
+
* @description - Element for hosting a property dataset. This is needed for umb-property to work.
|
|
7
|
+
* @slot default - Slot for rendering content within.
|
|
8
|
+
*/
|
|
9
|
+
export declare class UmbPropertyDatasetElement extends UmbLitElement {
|
|
10
|
+
#private;
|
|
11
|
+
readonly context: UmbPropertyDatasetBaseContext;
|
|
12
|
+
/**
|
|
13
|
+
* The value of the dataset.
|
|
14
|
+
* @returns {Array<UmbPropertyValueData>}
|
|
15
|
+
* @memberof UmbBasicVariantElement
|
|
16
|
+
* @example
|
|
17
|
+
* ```ts
|
|
18
|
+
* const dataSet = [
|
|
19
|
+
* {
|
|
20
|
+
* alias: 'testAlias',
|
|
21
|
+
* value: 'value as a string',
|
|
22
|
+
* },
|
|
23
|
+
* {
|
|
24
|
+
* alias: 'anotherAlias',
|
|
25
|
+
* value: 123,
|
|
26
|
+
* }
|
|
27
|
+
* ]
|
|
28
|
+
*
|
|
29
|
+
* html`
|
|
30
|
+
* <umb-property-dataset .value="${dataSet}">
|
|
31
|
+
* <umb-property
|
|
32
|
+
* label="My label for this property"
|
|
33
|
+
* description="The description to show on the property"
|
|
34
|
+
* alias="testAlias"
|
|
35
|
+
* property-editor-ui-alias="Umb.PropertyEditorUi.TextBox"
|
|
36
|
+
* .config=${...}>
|
|
37
|
+
* </umb-property>
|
|
38
|
+
* </umb-property-dataset>
|
|
39
|
+
* `
|
|
40
|
+
* ```
|
|
41
|
+
*/
|
|
42
|
+
get value(): Array<UmbPropertyValueData>;
|
|
43
|
+
set value(value: Array<UmbPropertyValueData>);
|
|
44
|
+
/**
|
|
45
|
+
* The name of the dataset, this name varies depending on the use-case. But this is either
|
|
46
|
+
* @type {string}
|
|
47
|
+
* @returns {string}
|
|
48
|
+
* @memberof UmbBasicVariantElement
|
|
49
|
+
* @example
|
|
50
|
+
* ```ts
|
|
51
|
+
* html`
|
|
52
|
+
* <umb-property-dataset name="My variant name">
|
|
53
|
+
* ...
|
|
54
|
+
* </umb-property-dataset>
|
|
55
|
+
* `
|
|
56
|
+
*/
|
|
57
|
+
get name(): string | undefined;
|
|
58
|
+
set name(value: string | undefined);
|
|
59
|
+
constructor();
|
|
60
|
+
render(): import("lit-html").TemplateResult<1>;
|
|
61
|
+
}
|
|
62
|
+
export default UmbPropertyDatasetElement;
|
|
63
|
+
declare global {
|
|
64
|
+
interface HTMLElementTagNameMap {
|
|
65
|
+
'umb-property-dataset': UmbPropertyDatasetElement;
|
|
66
|
+
}
|
|
67
|
+
}
|
|
@@ -0,0 +1,119 @@
|
|
|
1
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
2
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
3
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
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
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
6
|
+
};
|
|
7
|
+
import { UmbPropertyDatasetBaseContext } from './property-dataset-base-context.js';
|
|
8
|
+
import { UmbLitElement } from '../../../../shared/lit-element/index.js';
|
|
9
|
+
import { customElement, html, property } from '../../../../external/lit/index.js';
|
|
10
|
+
import { UmbChangeEvent } from '../../event/index.js';
|
|
11
|
+
/**
|
|
12
|
+
* @element umb-property-dataset
|
|
13
|
+
* @description - Element for hosting a property dataset. This is needed for umb-property to work.
|
|
14
|
+
* @slot default - Slot for rendering content within.
|
|
15
|
+
*/
|
|
16
|
+
let UmbPropertyDatasetElement = class UmbPropertyDatasetElement extends UmbLitElement {
|
|
17
|
+
// Determine wether state change should fire an event when the value is changed.
|
|
18
|
+
#allowChangeEvent = false;
|
|
19
|
+
/**
|
|
20
|
+
* The value of the dataset.
|
|
21
|
+
* @returns {Array<UmbPropertyValueData>}
|
|
22
|
+
* @memberof UmbBasicVariantElement
|
|
23
|
+
* @example
|
|
24
|
+
* ```ts
|
|
25
|
+
* const dataSet = [
|
|
26
|
+
* {
|
|
27
|
+
* alias: 'testAlias',
|
|
28
|
+
* value: 'value as a string',
|
|
29
|
+
* },
|
|
30
|
+
* {
|
|
31
|
+
* alias: 'anotherAlias',
|
|
32
|
+
* value: 123,
|
|
33
|
+
* }
|
|
34
|
+
* ]
|
|
35
|
+
*
|
|
36
|
+
* html`
|
|
37
|
+
* <umb-property-dataset .value="${dataSet}">
|
|
38
|
+
* <umb-property
|
|
39
|
+
* label="My label for this property"
|
|
40
|
+
* description="The description to show on the property"
|
|
41
|
+
* alias="testAlias"
|
|
42
|
+
* property-editor-ui-alias="Umb.PropertyEditorUi.TextBox"
|
|
43
|
+
* .config=${...}>
|
|
44
|
+
* </umb-property>
|
|
45
|
+
* </umb-property-dataset>
|
|
46
|
+
* `
|
|
47
|
+
* ```
|
|
48
|
+
*/
|
|
49
|
+
get value() {
|
|
50
|
+
return this.context.getValues();
|
|
51
|
+
}
|
|
52
|
+
set value(value) {
|
|
53
|
+
this.#allowChangeEvent = false;
|
|
54
|
+
this.context.setValues(value);
|
|
55
|
+
// Above might not trigger a observer callback (if no change), so set the allow change event to true:
|
|
56
|
+
this.#allowChangeEvent = true;
|
|
57
|
+
}
|
|
58
|
+
/**
|
|
59
|
+
* The name of the dataset, this name varies depending on the use-case. But this is either
|
|
60
|
+
* @type {string}
|
|
61
|
+
* @returns {string}
|
|
62
|
+
* @memberof UmbBasicVariantElement
|
|
63
|
+
* @example
|
|
64
|
+
* ```ts
|
|
65
|
+
* html`
|
|
66
|
+
* <umb-property-dataset name="My variant name">
|
|
67
|
+
* ...
|
|
68
|
+
* </umb-property-dataset>
|
|
69
|
+
* `
|
|
70
|
+
*/
|
|
71
|
+
get name() {
|
|
72
|
+
return this.context.getName();
|
|
73
|
+
}
|
|
74
|
+
set name(value) {
|
|
75
|
+
this.#allowChangeEvent = false;
|
|
76
|
+
this.context.setName(value);
|
|
77
|
+
// Above might not trigger a observer callback (if no change), so set the allow change event to true:
|
|
78
|
+
this.#allowChangeEvent = true;
|
|
79
|
+
}
|
|
80
|
+
constructor() {
|
|
81
|
+
super();
|
|
82
|
+
// Prevent any child events escaping this element.
|
|
83
|
+
this.addEventListener('change', (e) => {
|
|
84
|
+
if (e.target !== this) {
|
|
85
|
+
e.stopImmediatePropagation();
|
|
86
|
+
}
|
|
87
|
+
});
|
|
88
|
+
this.context = new UmbPropertyDatasetBaseContext(this);
|
|
89
|
+
// prevent the first change event from firing:
|
|
90
|
+
this.#allowChangeEvent = false;
|
|
91
|
+
this.observe(this.context.name, this.#observerCallback);
|
|
92
|
+
// prevent the first change event from firing:
|
|
93
|
+
this.#allowChangeEvent = false;
|
|
94
|
+
this.observe(this.context.values, this.#observerCallback);
|
|
95
|
+
}
|
|
96
|
+
#observerCallback = () => {
|
|
97
|
+
if (this.#allowChangeEvent) {
|
|
98
|
+
this.dispatchEvent(new UmbChangeEvent());
|
|
99
|
+
}
|
|
100
|
+
else {
|
|
101
|
+
// Set allow change event to true.
|
|
102
|
+
this.#allowChangeEvent = true;
|
|
103
|
+
}
|
|
104
|
+
};
|
|
105
|
+
render() {
|
|
106
|
+
return html `<slot></slot>`;
|
|
107
|
+
}
|
|
108
|
+
};
|
|
109
|
+
__decorate([
|
|
110
|
+
property({ attribute: false })
|
|
111
|
+
], UmbPropertyDatasetElement.prototype, "value", null);
|
|
112
|
+
__decorate([
|
|
113
|
+
property({ attribute: false })
|
|
114
|
+
], UmbPropertyDatasetElement.prototype, "name", null);
|
|
115
|
+
UmbPropertyDatasetElement = __decorate([
|
|
116
|
+
customElement('umb-property-dataset')
|
|
117
|
+
], UmbPropertyDatasetElement);
|
|
118
|
+
export { UmbPropertyDatasetElement };
|
|
119
|
+
export default UmbPropertyDatasetElement;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './property-layout.element.js';
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './property-layout.element.js';
|
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
import { LitElement } from '../../../../external/lit/index.js';
|
|
2
2
|
/**
|
|
3
|
-
* @element umb-
|
|
3
|
+
* @element umb-property-layout
|
|
4
4
|
* @description - Element for displaying a property in an workspace.
|
|
5
5
|
* @slot editor - Slot for rendering the Property Editor
|
|
6
6
|
* @slot description - Slot for rendering things below the label.
|
|
7
|
-
* @slot
|
|
7
|
+
* @slot action-menu - Slot for rendering the Property Action Menu
|
|
8
8
|
*/
|
|
9
|
-
export declare class
|
|
9
|
+
export declare class UmbPropertyLayoutElement extends LitElement {
|
|
10
10
|
/**
|
|
11
11
|
* Alias. The technical name of the property.
|
|
12
12
|
* @type {string}
|
|
@@ -41,6 +41,6 @@ export declare class UmbWorkspacePropertyLayoutElement extends LitElement {
|
|
|
41
41
|
}
|
|
42
42
|
declare global {
|
|
43
43
|
interface HTMLElementTagNameMap {
|
|
44
|
-
'umb-
|
|
44
|
+
'umb-property-layout': UmbPropertyLayoutElement;
|
|
45
45
|
}
|
|
46
46
|
}
|
|
@@ -7,13 +7,13 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
|
|
|
7
7
|
import { css, html, LitElement, customElement, property } from '../../../../external/lit/index.js';
|
|
8
8
|
import { UmbTextStyles } from '../../../../shared/style/index.js';
|
|
9
9
|
/**
|
|
10
|
-
* @element umb-
|
|
10
|
+
* @element umb-property-layout
|
|
11
11
|
* @description - Element for displaying a property in an workspace.
|
|
12
12
|
* @slot editor - Slot for rendering the Property Editor
|
|
13
13
|
* @slot description - Slot for rendering things below the label.
|
|
14
|
-
* @slot
|
|
14
|
+
* @slot action-menu - Slot for rendering the Property Action Menu
|
|
15
15
|
*/
|
|
16
|
-
let
|
|
16
|
+
let UmbPropertyLayoutElement = class UmbPropertyLayoutElement extends LitElement {
|
|
17
17
|
constructor() {
|
|
18
18
|
super(...arguments);
|
|
19
19
|
/**
|
|
@@ -51,7 +51,7 @@ let UmbWorkspacePropertyLayoutElement = class UmbWorkspacePropertyLayoutElement
|
|
|
51
51
|
return html `
|
|
52
52
|
<div id="headerColumn">
|
|
53
53
|
<uui-label title=${this.alias}>${this.label}</uui-label>
|
|
54
|
-
<slot name="
|
|
54
|
+
<slot name="action-menu"></slot>
|
|
55
55
|
<div id="description">${this.description}</div>
|
|
56
56
|
<slot name="description"></slot>
|
|
57
57
|
</div>
|
|
@@ -114,17 +114,17 @@ let UmbWorkspacePropertyLayoutElement = class UmbWorkspacePropertyLayoutElement
|
|
|
114
114
|
};
|
|
115
115
|
__decorate([
|
|
116
116
|
property({ type: String })
|
|
117
|
-
],
|
|
117
|
+
], UmbPropertyLayoutElement.prototype, "alias", void 0);
|
|
118
118
|
__decorate([
|
|
119
119
|
property({ type: String })
|
|
120
|
-
],
|
|
120
|
+
], UmbPropertyLayoutElement.prototype, "label", void 0);
|
|
121
121
|
__decorate([
|
|
122
122
|
property({ type: String })
|
|
123
|
-
],
|
|
123
|
+
], UmbPropertyLayoutElement.prototype, "orientation", void 0);
|
|
124
124
|
__decorate([
|
|
125
125
|
property({ type: String })
|
|
126
|
-
],
|
|
127
|
-
|
|
128
|
-
customElement('umb-
|
|
129
|
-
],
|
|
130
|
-
export {
|
|
126
|
+
], UmbPropertyLayoutElement.prototype, "description", void 0);
|
|
127
|
+
UmbPropertyLayoutElement = __decorate([
|
|
128
|
+
customElement('umb-property-layout')
|
|
129
|
+
], UmbPropertyLayoutElement);
|
|
130
|
+
export { UmbPropertyLayoutElement };
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './property-value-data.type.js';
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './property-value-data.type.js';
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
package/dist-cms/packages/core/property-action/common/clear/property-action-clear.element.js
CHANGED
|
@@ -4,8 +4,8 @@ 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 { UMB_PROPERTY_CONTEXT } from '../../../property/index.js';
|
|
7
8
|
import { html, customElement, property } from '../../../../../external/lit/index.js';
|
|
8
|
-
import { UMB_WORKSPACE_PROPERTY_CONTEXT_TOKEN } from '../../../workspace/index.js';
|
|
9
9
|
import { UmbLitElement } from '../../../../../shared/lit-element/index.js';
|
|
10
10
|
let UmbPropertyActionClearElement = class UmbPropertyActionClearElement extends UmbLitElement {
|
|
11
11
|
constructor() {
|
|
@@ -16,7 +16,7 @@ let UmbPropertyActionClearElement = class UmbPropertyActionClearElement extends
|
|
|
16
16
|
this._propertyActionMenuContext = propertyActionsContext;
|
|
17
17
|
});
|
|
18
18
|
*/
|
|
19
|
-
this.consumeContext(
|
|
19
|
+
this.consumeContext(UMB_PROPERTY_CONTEXT, (propertyContext) => {
|
|
20
20
|
this._propertyContext = propertyContext;
|
|
21
21
|
});
|
|
22
22
|
}
|
|
@@ -4,7 +4,7 @@ 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 {
|
|
7
|
+
import { UMB_PROPERTY_CONTEXT } from '../../../property/index.js';
|
|
8
8
|
import { html, customElement, property, state } from '../../../../../external/lit/index.js';
|
|
9
9
|
import { UmbTextStyles } from '../../../../../shared/style/index.js';
|
|
10
10
|
import { UmbLitElement } from '../../../../../shared/lit-element/index.js';
|
|
@@ -16,7 +16,7 @@ let UmbPropertyEditorUIBlockGridElement = class UmbPropertyEditorUIBlockGridElem
|
|
|
16
16
|
super();
|
|
17
17
|
this.value = '';
|
|
18
18
|
this._routes = [];
|
|
19
|
-
this.consumeContext(
|
|
19
|
+
this.consumeContext(UMB_PROPERTY_CONTEXT, (context) => {
|
|
20
20
|
this.observe(context?.variantId, (propertyVariantId) => {
|
|
21
21
|
this._variantId = propertyVariantId;
|
|
22
22
|
this.setupRoutes();
|
|
@@ -16,7 +16,7 @@ let UmbPropertyEditorUIBlockListBlockConfigurationElement = class UmbPropertyEdi
|
|
|
16
16
|
this.value = '';
|
|
17
17
|
}
|
|
18
18
|
render() {
|
|
19
|
-
return html
|
|
19
|
+
return html ` <div>umb-property-editor-ui-block-list-block-configuration</div> `;
|
|
20
20
|
}
|
|
21
21
|
static { this.styles = [UmbTextStyles]; }
|
|
22
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 { UMB_PROPERTY_CONTEXT } from '../../../property/index.js';
|
|
7
8
|
import { html, customElement, property, state } from '../../../../../external/lit/index.js';
|
|
8
9
|
import { UmbTextStyles } from '../../../../../shared/style/index.js';
|
|
9
|
-
import { UMB_WORKSPACE_PROPERTY_CONTEXT_TOKEN } from '../../../workspace/index.js';
|
|
10
10
|
import { UmbLitElement } from '../../../../../shared/lit-element/index.js';
|
|
11
11
|
/**
|
|
12
12
|
* @element umb-property-editor-ui-multi-url-picker
|
|
@@ -22,7 +22,7 @@ let UmbPropertyEditorUIMultiUrlPickerElement = class UmbPropertyEditorUIMultiUrl
|
|
|
22
22
|
constructor() {
|
|
23
23
|
super();
|
|
24
24
|
this.value = [];
|
|
25
|
-
this.consumeContext(
|
|
25
|
+
this.consumeContext(UMB_PROPERTY_CONTEXT, (context) => {
|
|
26
26
|
this.observe(context.alias, (alias) => {
|
|
27
27
|
this._alias = alias;
|
|
28
28
|
});
|
package/dist-cms/packages/core/property-editor/uis/text-box/property-editor-ui-text-box.element.js
CHANGED
|
@@ -21,7 +21,10 @@ let UmbPropertyEditorUITextBoxElement = class UmbPropertyEditorUITextBoxElement
|
|
|
21
21
|
this._maxChars = config?.getValueByAlias('maxChars');
|
|
22
22
|
}
|
|
23
23
|
onChange(e) {
|
|
24
|
-
|
|
24
|
+
const newValue = e.target.value;
|
|
25
|
+
if (newValue === this.value)
|
|
26
|
+
return;
|
|
27
|
+
this.value = newValue;
|
|
25
28
|
this.dispatchEvent(new CustomEvent('property-value-change'));
|
|
26
29
|
}
|
|
27
30
|
render() {
|
|
@@ -30,7 +33,7 @@ let UmbPropertyEditorUITextBoxElement = class UmbPropertyEditorUITextBoxElement
|
|
|
30
33
|
.type=${this._type}
|
|
31
34
|
inputMode=${ifDefined(this._inputMode)}
|
|
32
35
|
maxlength=${ifDefined(this._maxChars)}
|
|
33
|
-
@
|
|
36
|
+
@input=${this.onChange}></uui-input>`;
|
|
34
37
|
}
|
|
35
38
|
static { this.styles = [
|
|
36
39
|
UmbTextStyles,
|
|
@@ -81,13 +81,13 @@ export class UmbTreeItemContextBase extends UmbBaseController {
|
|
|
81
81
|
}
|
|
82
82
|
select() {
|
|
83
83
|
if (this.unique === undefined)
|
|
84
|
-
throw new Error('Could not select
|
|
85
|
-
this.treeContext?.select(this.unique);
|
|
84
|
+
throw new Error('Could not select. Unique is missing');
|
|
85
|
+
this.treeContext?.selection.select(this.unique);
|
|
86
86
|
}
|
|
87
87
|
deselect() {
|
|
88
88
|
if (this.unique === undefined)
|
|
89
|
-
throw new Error('Could not deselect
|
|
90
|
-
this.treeContext?.deselect(this.unique);
|
|
89
|
+
throw new Error('Could not deselect. Unique is missing');
|
|
90
|
+
this.treeContext?.selection.deselect(this.unique);
|
|
91
91
|
}
|
|
92
92
|
#consumeContexts() {
|
|
93
93
|
this.consumeContext(UMB_SECTION_CONTEXT_TOKEN, (instance) => {
|
|
@@ -110,7 +110,7 @@ export class UmbTreeItemContextBase extends UmbBaseController {
|
|
|
110
110
|
#observeIsSelectable() {
|
|
111
111
|
if (!this.treeContext)
|
|
112
112
|
return;
|
|
113
|
-
this.observe(this.treeContext.selectable, (value) => {
|
|
113
|
+
this.observe(this.treeContext.selection.selectable, (value) => {
|
|
114
114
|
this.#isSelectableContext.next(value);
|
|
115
115
|
// If the tree is selectable, check if this item is selectable
|
|
116
116
|
if (value === true) {
|
|
@@ -122,7 +122,7 @@ export class UmbTreeItemContextBase extends UmbBaseController {
|
|
|
122
122
|
#observeIsSelected() {
|
|
123
123
|
if (!this.treeContext || !this.unique)
|
|
124
124
|
return;
|
|
125
|
-
this.observe(this.treeContext.selection.pipe(map((selection) => selection.includes(this.unique))), (isSelected) => {
|
|
125
|
+
this.observe(this.treeContext.selection.selection.pipe(map((selection) => selection.includes(this.unique))), (isSelected) => {
|
|
126
126
|
this.#isSelected.next(isSelected);
|
|
127
127
|
}, 'observeIsSelected');
|
|
128
128
|
}
|
|
@@ -5,17 +5,9 @@ import { UmbPagedData } from '../repository/index.js';
|
|
|
5
5
|
import { UmbBaseController } from '../../../libs/class-api/index.js';
|
|
6
6
|
import { type UmbControllerHostElement } from '../../../libs/controller-api/index.js';
|
|
7
7
|
import { ProblemDetails } from '../../../external/backend-api/index.js';
|
|
8
|
+
import { UmbSelectionManager } from '../../../shared/utils/index.js';
|
|
8
9
|
export interface UmbTreeContext<TreeItemType extends UmbTreeItemModelBase> extends UmbBaseController {
|
|
9
|
-
|
|
10
|
-
readonly selection: Observable<Array<string | null>>;
|
|
11
|
-
setSelectable(value: boolean): void;
|
|
12
|
-
getSelectable(): boolean;
|
|
13
|
-
setMultiple(value: boolean): void;
|
|
14
|
-
getMultiple(): boolean;
|
|
15
|
-
setSelection(value: Array<string | null>): void;
|
|
16
|
-
getSelection(): Array<string | null>;
|
|
17
|
-
select(unique: string | null): void;
|
|
18
|
-
deselect(unique: string | null): void;
|
|
10
|
+
selection: UmbSelectionManager;
|
|
19
11
|
requestChildrenOf: (parentUnique: string | null) => Promise<{
|
|
20
12
|
data?: UmbPagedData<TreeItemType>;
|
|
21
13
|
error?: ProblemDetails;
|
|
@@ -24,22 +16,12 @@ export interface UmbTreeContext<TreeItemType extends UmbTreeItemModelBase> exten
|
|
|
24
16
|
}
|
|
25
17
|
export declare class UmbTreeContextBase<TreeItemType extends UmbTreeItemModelBase> extends UmbBaseController implements UmbTreeContext<TreeItemType> {
|
|
26
18
|
#private;
|
|
27
|
-
readonly selectable: Observable<boolean>;
|
|
28
|
-
readonly multiple: Observable<boolean>;
|
|
29
|
-
readonly selection: Observable<(string | null)[]>;
|
|
30
19
|
repository?: UmbTreeRepository<TreeItemType>;
|
|
31
20
|
selectableFilter?: (item: TreeItemType) => boolean;
|
|
21
|
+
readonly selection: UmbSelectionManager;
|
|
32
22
|
constructor(host: UmbControllerHostElement);
|
|
33
23
|
setTreeAlias(treeAlias?: string): Promise<void>;
|
|
34
24
|
getTreeAlias(): string | undefined;
|
|
35
|
-
setSelectable(value: boolean): void;
|
|
36
|
-
getSelectable(): boolean;
|
|
37
|
-
setMultiple(value: boolean): void;
|
|
38
|
-
getMultiple(): boolean;
|
|
39
|
-
setSelection(value: Array<string | null>): void;
|
|
40
|
-
getSelection(): (string | null)[];
|
|
41
|
-
select(unique: string | null): void;
|
|
42
|
-
deselect(unique: string | null): void;
|
|
43
25
|
requestTreeRoot(): Promise<{
|
|
44
26
|
data?: UmbTreeItemModelBase | undefined;
|
|
45
27
|
error?: ProblemDetails | undefined;
|
|
@@ -1,24 +1,16 @@
|
|
|
1
1
|
import { umbExtensionsRegistry, } from '../extension-registry/index.js';
|
|
2
|
-
import { UmbBooleanState } from '../../../libs/observable-api/index.js';
|
|
3
2
|
import { UmbBaseController } from '../../../libs/class-api/index.js';
|
|
4
3
|
import { UmbExtensionApiInitializer } from '../../../libs/extension-api/index.js';
|
|
5
4
|
import { UmbSelectionManager } from '../../../shared/utils/index.js';
|
|
6
|
-
import { UmbSelectionChangeEvent } from '../event/index.js';
|
|
7
5
|
export class UmbTreeContextBase extends UmbBaseController {
|
|
8
|
-
#selectionManager;
|
|
9
|
-
#selectable;
|
|
10
6
|
#treeAlias;
|
|
11
7
|
#initResolver;
|
|
12
8
|
#initialized;
|
|
13
9
|
#init;
|
|
14
10
|
constructor(host) {
|
|
15
11
|
super(host);
|
|
16
|
-
this.#selectionManager = new UmbSelectionManager();
|
|
17
|
-
this.#selectable = new UmbBooleanState(false);
|
|
18
|
-
this.selectable = this.#selectable.asObservable();
|
|
19
|
-
this.multiple = this.#selectionManager.multiple;
|
|
20
|
-
this.selection = this.#selectionManager.selection;
|
|
21
12
|
this.selectableFilter = () => true;
|
|
13
|
+
this.selection = new UmbSelectionManager(this._host);
|
|
22
14
|
this.#initialized = false;
|
|
23
15
|
this.#init = new Promise((resolve) => {
|
|
24
16
|
this.#initialized ? resolve() : (this.#initResolver = resolve);
|
|
@@ -41,34 +33,6 @@ export class UmbTreeContextBase extends UmbBaseController {
|
|
|
41
33
|
getTreeAlias() {
|
|
42
34
|
return this.#treeAlias;
|
|
43
35
|
}
|
|
44
|
-
setSelectable(value) {
|
|
45
|
-
this.#selectable.next(value);
|
|
46
|
-
}
|
|
47
|
-
getSelectable() {
|
|
48
|
-
return this.#selectable.getValue();
|
|
49
|
-
}
|
|
50
|
-
setMultiple(value) {
|
|
51
|
-
this.#selectionManager.setMultiple(value);
|
|
52
|
-
}
|
|
53
|
-
getMultiple() {
|
|
54
|
-
return this.#selectionManager.getMultiple();
|
|
55
|
-
}
|
|
56
|
-
setSelection(value) {
|
|
57
|
-
this.#selectionManager.setSelection(value);
|
|
58
|
-
}
|
|
59
|
-
getSelection() {
|
|
60
|
-
return this.#selectionManager.getSelection();
|
|
61
|
-
}
|
|
62
|
-
select(unique) {
|
|
63
|
-
if (!this.getSelectable())
|
|
64
|
-
return;
|
|
65
|
-
this.#selectionManager.select(unique);
|
|
66
|
-
this._host.getHostElement().dispatchEvent(new UmbSelectionChangeEvent());
|
|
67
|
-
}
|
|
68
|
-
deselect(unique) {
|
|
69
|
-
this.#selectionManager.deselect(unique);
|
|
70
|
-
this._host.getHostElement().dispatchEvent(new UmbSelectionChangeEvent());
|
|
71
|
-
}
|
|
72
36
|
async requestTreeRoot() {
|
|
73
37
|
await this.#init;
|
|
74
38
|
return this.repository.requestTreeRoot();
|
|
@@ -17,24 +17,24 @@ let UmbTreeElement = class UmbTreeElement extends UmbLitElement {
|
|
|
17
17
|
this.#treeContext.setTreeAlias(newVal);
|
|
18
18
|
}
|
|
19
19
|
get selectable() {
|
|
20
|
-
return this.#treeContext.getSelectable();
|
|
20
|
+
return this.#treeContext.selection.getSelectable();
|
|
21
21
|
}
|
|
22
22
|
set selectable(newVal) {
|
|
23
|
-
this.#treeContext.setSelectable(newVal);
|
|
23
|
+
this.#treeContext.selection.setSelectable(newVal);
|
|
24
24
|
}
|
|
25
25
|
get selection() {
|
|
26
|
-
return this.#treeContext.getSelection();
|
|
26
|
+
return this.#treeContext.selection.getSelection();
|
|
27
27
|
}
|
|
28
28
|
set selection(newVal) {
|
|
29
29
|
if (!Array.isArray(newVal))
|
|
30
30
|
return;
|
|
31
|
-
this.#treeContext?.setSelection(newVal);
|
|
31
|
+
this.#treeContext?.selection.setSelection(newVal);
|
|
32
32
|
}
|
|
33
33
|
get multiple() {
|
|
34
|
-
return this.#treeContext.getMultiple();
|
|
34
|
+
return this.#treeContext.selection.getMultiple();
|
|
35
35
|
}
|
|
36
36
|
set multiple(newVal) {
|
|
37
|
-
this.#treeContext.setMultiple(newVal);
|
|
37
|
+
this.#treeContext.selection.setMultiple(newVal);
|
|
38
38
|
}
|
|
39
39
|
get hideTreeRoot() {
|
|
40
40
|
return this._hideTreeRoot;
|