@umbraco-cms/backoffice 14.0.0--preview006-89e89a2e → 14.0.0--preview006-7bdcb4ac
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/css/umbraco-blockgridlayout.css +50 -0
- package/dist-cms/custom-elements.json +71 -40
- package/dist-cms/libs/observable-api/utils/append-to-frozen-array.function.d.ts +6 -5
- package/dist-cms/libs/observable-api/utils/append-to-frozen-array.function.js +6 -5
- package/dist-cms/mocks/data/data-type/data-type.data.js +1 -1
- package/dist-cms/mocks/data/document/document.data.js +91 -1
- package/dist-cms/packages/block/block/context/block-entries.context-token.d.ts +5 -0
- package/dist-cms/packages/block/block/context/block-entries.context-token.js +2 -0
- package/dist-cms/packages/block/block/context/block-entries.context.d.ts +29 -0
- package/dist-cms/packages/block/block/context/block-entries.context.js +69 -0
- package/dist-cms/packages/block/block/context/block-entry.context-token.d.ts +6 -0
- package/dist-cms/packages/block/block/context/block-entry.context-token.js +2 -0
- package/dist-cms/packages/block/block/context/{block-entity.context.d.ts → block-entry.context.d.ts} +25 -10
- package/dist-cms/packages/block/block/context/block-entry.context.js +208 -0
- package/dist-cms/packages/block/block/{manager → context}/block-manager.context.d.ts +21 -5
- package/dist-cms/packages/block/block/{manager → context}/block-manager.context.js +56 -53
- package/dist-cms/packages/block/block/context/index.d.ts +6 -1
- package/dist-cms/packages/block/block/context/index.js +5 -1
- package/dist-cms/packages/block/block/index.d.ts +0 -1
- package/dist-cms/packages/block/block/index.js +0 -1
- package/dist-cms/packages/block/block/workspace/block-workspace-editor.element.d.ts +0 -1
- package/dist-cms/packages/block/block/workspace/block-workspace-editor.element.js +1 -17
- package/dist-cms/packages/block/block/workspace/block-workspace.context.js +78 -45
- package/dist-cms/packages/block/block/workspace/views/edit/{block-workspace-view-edit-no-router.element.d.ts → block-workspace-view-edit-content-no-router.element.d.ts} +8 -5
- package/dist-cms/packages/block/block/workspace/views/edit/block-workspace-view-edit-content-no-router.element.js +148 -0
- package/dist-cms/packages/block/block/workspace/views/edit/block-workspace-view-edit.element.js +4 -1
- package/dist-cms/packages/block/block-grid/components/block-grid-areas-container/block-grid-areas-container.element.d.ts +18 -0
- package/dist-cms/packages/block/block-grid/components/block-grid-areas-container/block-grid-areas-container.element.js +46 -0
- package/dist-cms/packages/block/block-grid/components/block-grid-areas-container/index.d.ts +1 -0
- package/dist-cms/packages/block/block-grid/components/block-grid-areas-container/index.js +1 -0
- package/dist-cms/packages/block/block-grid/components/block-grid-entries/block-grid-entries.element.d.ts +21 -0
- package/dist-cms/packages/block/block-grid/components/block-grid-entries/block-grid-entries.element.js +118 -0
- package/dist-cms/packages/block/block-grid/components/block-grid-entries/index.d.ts +1 -0
- package/dist-cms/packages/block/block-grid/components/block-grid-entries/index.js +1 -0
- package/dist-cms/packages/block/block-grid/components/block-grid-entry/block-grid-entry.element.d.ts +28 -0
- package/dist-cms/packages/block/block-grid/components/block-grid-entry/block-grid-entry.element.js +124 -0
- package/dist-cms/packages/block/block-grid/components/block-grid-entry/index.d.ts +1 -0
- package/dist-cms/packages/block/block-grid/components/block-grid-entry/index.js +1 -0
- package/dist-cms/packages/block/block-grid/components/index.d.ts +0 -0
- package/dist-cms/packages/block/block-grid/components/index.js +1 -0
- package/dist-cms/packages/block/block-grid/components/ref-grid-block/index.d.ts +1 -0
- package/dist-cms/packages/block/block-grid/components/ref-grid-block/index.js +1 -0
- package/dist-cms/packages/block/block-grid/components/ref-grid-block/ref-grid-block.element.d.ts +18 -0
- package/dist-cms/packages/block/block-grid/components/ref-grid-block/ref-grid-block.element.js +47 -0
- package/dist-cms/packages/block/block-grid/context/block-grid-entries.context-token.d.ts +3 -0
- package/dist-cms/packages/block/block-grid/context/block-grid-entries.context-token.js +3 -0
- package/dist-cms/packages/block/block-grid/context/block-grid-entries.context.d.ts +25 -0
- package/dist-cms/packages/block/block-grid/context/block-grid-entries.context.js +134 -0
- package/dist-cms/packages/block/block-grid/context/block-grid-entry.context-token.d.ts +3 -0
- package/dist-cms/packages/block/block-grid/context/block-grid-entry.context-token.js +3 -0
- package/dist-cms/packages/block/block-grid/context/block-grid-entry.context.d.ts +12 -0
- package/dist-cms/packages/block/block-grid/context/block-grid-entry.context.js +38 -0
- package/dist-cms/packages/block/block-grid/context/block-grid-manager.context.d.ts +25 -0
- package/dist-cms/packages/block/block-grid/context/block-grid-manager.context.js +38 -0
- package/dist-cms/packages/block/block-grid/context/index.d.ts +2 -0
- package/dist-cms/packages/block/block-grid/context/index.js +2 -0
- package/dist-cms/packages/block/block-grid/index.d.ts +2 -1
- package/dist-cms/packages/block/block-grid/index.js +2 -1
- package/dist-cms/packages/block/block-grid/property-editors/block-grid-editor/manifests.d.ts +1 -0
- package/dist-cms/packages/block/block-grid/property-editors/block-grid-editor/manifests.js +2 -1
- package/dist-cms/packages/block/block-grid/property-editors/block-grid-editor/property-editor-ui-block-grid.element.d.ts +7 -8
- package/dist-cms/packages/block/block-grid/property-editors/block-grid-editor/property-editor-ui-block-grid.element.js +59 -89
- package/dist-cms/packages/block/block-grid/property-editors/block-grid-group-configuration/property-editor-ui-block-grid-group-configuration.element.d.ts +3 -3
- package/dist-cms/packages/block/block-grid/types.d.ts +15 -3
- package/dist-cms/packages/block/block-list/components/block-list-entry/block-list-entry.element.d.ts +29 -0
- package/dist-cms/packages/block/block-list/components/block-list-entry/block-list-entry.element.js +132 -0
- package/dist-cms/packages/block/block-list/components/block-list-entry/index.d.ts +1 -0
- package/dist-cms/packages/block/block-list/components/block-list-entry/index.js +1 -0
- package/dist-cms/packages/block/block-list/components/inline-list-block/inline-list-block.element.d.ts +1 -1
- package/dist-cms/packages/block/block-list/components/inline-list-block/inline-list-block.element.js +5 -6
- package/dist-cms/packages/block/block-list/components/ref-list-block/ref-list-block.element.js +3 -2
- package/dist-cms/packages/block/block-list/context/block-list-entries.context-token.d.ts +3 -0
- package/dist-cms/packages/block/block-list/context/block-list-entries.context-token.js +3 -0
- package/dist-cms/packages/block/block-list/context/block-list-entries.context.d.ts +23 -0
- package/dist-cms/packages/block/block-list/context/block-list-entries.context.js +81 -0
- package/dist-cms/packages/block/block-list/context/block-list-entry.context-token.d.ts +3 -0
- package/dist-cms/packages/block/block-list/context/block-list-entry.context-token.js +3 -0
- package/dist-cms/packages/block/block-list/context/block-list-entry.context.d.ts +11 -0
- package/dist-cms/packages/block/block-list/context/{block-list.context.js → block-list-entry.context.js} +11 -10
- package/dist-cms/packages/block/block-list/{manager → context}/block-list-manager.context.d.ts +13 -4
- package/dist-cms/packages/block/block-list/{manager → context}/block-list-manager.context.js +8 -4
- package/dist-cms/packages/block/block-list/context/index.d.ts +1 -0
- package/dist-cms/packages/block/block-list/context/index.js +1 -0
- package/dist-cms/packages/block/block-list/index.d.ts +2 -1
- package/dist-cms/packages/block/block-list/index.js +2 -1
- package/dist-cms/packages/block/block-list/property-editors/block-list-editor/property-editor-ui-block-list.element.d.ts +2 -7
- package/dist-cms/packages/block/block-list/property-editors/block-list-editor/property-editor-ui-block-list.element.js +39 -30
- package/dist-cms/packages/block/block-list/types.d.ts +3 -1
- package/dist-cms/packages/block/block-type/components/block-type-card/block-type-card.element.js +1 -1
- package/dist-cms/packages/core/modal/modal-route-registration.controller.d.ts +1 -1
- package/dist-cms/packages/core/modal/modal-route-registration.controller.js +1 -1
- package/dist-cms/tsconfig.build.tsbuildinfo +1 -1
- package/dist-cms/vscode-html-custom-data.json +36 -25
- package/package.json +13 -2
- package/dist-cms/packages/block/block/context/block-entity.context.js +0 -151
- package/dist-cms/packages/block/block/manager/index.d.ts +0 -2
- package/dist-cms/packages/block/block/manager/index.js +0 -1
- package/dist-cms/packages/block/block/workspace/views/edit/block-workspace-view-edit-no-router.element.js +0 -132
- package/dist-cms/packages/block/block-grid/property-editors/block-grid-editor/property-editor-ui-block-grid-inner-test.element.d.ts +0 -18
- package/dist-cms/packages/block/block-grid/property-editors/block-grid-editor/property-editor-ui-block-grid-inner-test.element.js +0 -87
- package/dist-cms/packages/block/block-list/components/block-list-block/block-list-block.element.d.ts +0 -31
- package/dist-cms/packages/block/block-list/components/block-list-block/block-list-block.element.js +0 -149
- package/dist-cms/packages/block/block-list/components/block-list-block/index.d.ts +0 -1
- package/dist-cms/packages/block/block-list/components/block-list-block/index.js +0 -1
- package/dist-cms/packages/block/block-list/context/block-list.context-token.d.ts +0 -3
- package/dist-cms/packages/block/block-list/context/block-list.context-token.js +0 -2
- package/dist-cms/packages/block/block-list/context/block-list.context.d.ts +0 -9
- /package/dist-cms/packages/block/block/{manager → context}/block-manager.context-token.d.ts +0 -0
- /package/dist-cms/packages/block/block/{manager → context}/block-manager.context-token.js +0 -0
|
@@ -9,19 +9,14 @@ var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (
|
|
|
9
9
|
if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot read private member from an object whose class did not declare it");
|
|
10
10
|
return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
|
|
11
11
|
};
|
|
12
|
-
var
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot write private member to an object whose class did not declare it");
|
|
16
|
-
return (kind === "a" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;
|
|
17
|
-
};
|
|
18
|
-
var _UmbPropertyEditorUIBlockGridElement_catalogueModal;
|
|
12
|
+
var _UmbPropertyEditorUIBlockGridElement_context;
|
|
13
|
+
import { UmbBlockGridManagerContext } from '../../context/block-grid-manager.context.js';
|
|
14
|
+
import { UMB_BLOCK_GRID_PROPERTY_EDITOR_ALIAS } from './manifests.js';
|
|
19
15
|
import { html, customElement, property, state, css } from '../../../../../external/lit/index.js';
|
|
20
16
|
import { UmbTextStyles } from '../../../../../shared/style/index.js';
|
|
21
17
|
import { UmbLitElement } from '../../../../core/lit-element/index.js';
|
|
22
|
-
import {
|
|
23
|
-
import
|
|
24
|
-
import { UMB_PROPERTY_CONTEXT } from '../../../../core/property/index.js';
|
|
18
|
+
import { UmbChangeEvent } from '../../../../core/event/index.js';
|
|
19
|
+
import '../../components/block-grid-entries/index.js';
|
|
25
20
|
/**
|
|
26
21
|
* @element umb-property-editor-ui-block-grid
|
|
27
22
|
*/
|
|
@@ -32,74 +27,64 @@ let UmbPropertyEditorUIBlockGridElement = class UmbPropertyEditorUIBlockGridElem
|
|
|
32
27
|
const validationLimit = config.getValueByAlias('validationLimit');
|
|
33
28
|
this._limitMin = validationLimit?.min;
|
|
34
29
|
this._limitMax = validationLimit?.max;
|
|
35
|
-
|
|
36
|
-
this
|
|
37
|
-
const
|
|
38
|
-
|
|
39
|
-
this._createButtonLabel = customCreateButtonLabel;
|
|
40
|
-
}
|
|
41
|
-
else if (this._blocks.length === 1) {
|
|
42
|
-
this._createButtonLabel = this.localize.term('blockEditor_addThis', [this._blocks[0].label]);
|
|
43
|
-
}
|
|
44
|
-
//const useInlineEditingAsDefault = config.getValueByAlias<boolean>('useInlineEditingAsDefault');
|
|
45
|
-
//this.#context.setInlineEditingMode(useInlineEditingAsDefault);
|
|
46
|
-
//config.useSingleBlockMode
|
|
47
|
-
//config.useLiveEditing
|
|
48
|
-
//config.useInlineEditingAsDefault
|
|
30
|
+
const blocks = config.getValueByAlias('blocks') ?? [];
|
|
31
|
+
__classPrivateFieldGet(this, _UmbPropertyEditorUIBlockGridElement_context, "f").setBlockTypes(blocks);
|
|
32
|
+
const blockGroups = config.getValueByAlias('blockGroups') ?? [];
|
|
33
|
+
__classPrivateFieldGet(this, _UmbPropertyEditorUIBlockGridElement_context, "f").setBlockGroups(blockGroups);
|
|
49
34
|
this.style.maxWidth = config.getValueByAlias('maxPropertyWidth') ?? '';
|
|
50
|
-
//
|
|
35
|
+
//config.useLiveEditing, is covered by the EditorConfiguration of context.
|
|
36
|
+
__classPrivateFieldGet(this, _UmbPropertyEditorUIBlockGridElement_context, "f").setEditorConfiguration(config);
|
|
37
|
+
}
|
|
38
|
+
get value() {
|
|
39
|
+
return this._value;
|
|
40
|
+
}
|
|
41
|
+
set value(value) {
|
|
42
|
+
const buildUpValue = value ? { ...value } : {};
|
|
43
|
+
buildUpValue.layout ?? (buildUpValue.layout = {});
|
|
44
|
+
buildUpValue.contentData ?? (buildUpValue.contentData = []);
|
|
45
|
+
buildUpValue.settingsData ?? (buildUpValue.settingsData = []);
|
|
46
|
+
this._value = buildUpValue;
|
|
47
|
+
__classPrivateFieldGet(this, _UmbPropertyEditorUIBlockGridElement_context, "f").setLayouts(this._value.layout[UMB_BLOCK_GRID_PROPERTY_EDITOR_ALIAS] ?? []);
|
|
48
|
+
__classPrivateFieldGet(this, _UmbPropertyEditorUIBlockGridElement_context, "f").setContents(buildUpValue.contentData);
|
|
49
|
+
__classPrivateFieldGet(this, _UmbPropertyEditorUIBlockGridElement_context, "f").setSettings(buildUpValue.settingsData);
|
|
51
50
|
}
|
|
52
51
|
constructor() {
|
|
53
52
|
super();
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
this.
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
53
|
+
_UmbPropertyEditorUIBlockGridElement_context.set(this, new UmbBlockGridManagerContext(this));
|
|
54
|
+
//
|
|
55
|
+
this._value = {
|
|
56
|
+
layout: {},
|
|
57
|
+
contentData: [],
|
|
58
|
+
settingsData: [],
|
|
59
|
+
};
|
|
60
|
+
this._rootLayouts = [];
|
|
61
|
+
// TODO: Prevent initial notification from these observes:
|
|
62
|
+
this.observe(__classPrivateFieldGet(this, _UmbPropertyEditorUIBlockGridElement_context, "f").layouts, (layouts) => {
|
|
63
|
+
this._value = { ...this._value, layout: { [UMB_BLOCK_GRID_PROPERTY_EDITOR_ALIAS]: layouts } };
|
|
64
|
+
// Notify that the value has changed.
|
|
65
|
+
//console.log('layout changed', this._value);
|
|
66
|
+
// TODO: idea: consider inserting an await here, so other changes could appear first? Maybe some mechanism to only fire change event onces?
|
|
67
|
+
this._rootLayouts = layouts;
|
|
68
|
+
this.dispatchEvent(new UmbChangeEvent());
|
|
69
|
+
});
|
|
70
|
+
this.observe(__classPrivateFieldGet(this, _UmbPropertyEditorUIBlockGridElement_context, "f").contents, (contents) => {
|
|
71
|
+
this._value = { ...this._value, contentData: contents };
|
|
72
|
+
// Notify that the value has changed.
|
|
73
|
+
//console.log('content changed', this._value);
|
|
74
|
+
this.dispatchEvent(new UmbChangeEvent());
|
|
75
|
+
});
|
|
76
|
+
this.observe(__classPrivateFieldGet(this, _UmbPropertyEditorUIBlockGridElement_context, "f").settings, (settings) => {
|
|
77
|
+
this._value = { ...this._value, settingsData: settings };
|
|
78
|
+
// Notify that the value has changed.
|
|
79
|
+
//console.log('settings changed', this._value);
|
|
80
|
+
this.dispatchEvent(new UmbChangeEvent());
|
|
62
81
|
});
|
|
63
|
-
__classPrivateFieldSet(this, _UmbPropertyEditorUIBlockGridElement_catalogueModal, new UmbModalRouteRegistrationController(this, UMB_BLOCK_CATALOGUE_MODAL)
|
|
64
|
-
.addUniquePaths(['propertyAlias'])
|
|
65
|
-
.addAdditionalPath(':view/:index')
|
|
66
|
-
.onSetup((routingInfo) => {
|
|
67
|
-
const index = routingInfo.index ? parseInt(routingInfo.index) : -1;
|
|
68
|
-
return {
|
|
69
|
-
data: {
|
|
70
|
-
blocks: this._blocks ?? [],
|
|
71
|
-
blockGroups: this._blockGroups ?? [],
|
|
72
|
-
openClipboard: routingInfo.view === 'clipboard',
|
|
73
|
-
blockOriginData: { index: index },
|
|
74
|
-
},
|
|
75
|
-
};
|
|
76
|
-
})
|
|
77
|
-
.observeRouteBuilder((routeBuilder) => {
|
|
78
|
-
this._catalogueRouteBuilder = routeBuilder;
|
|
79
|
-
}), "f");
|
|
80
82
|
}
|
|
81
83
|
render() {
|
|
82
|
-
|
|
83
|
-
const elementKey = this._blocks[0].contentElementTypeKey;
|
|
84
|
-
this._directRoute =
|
|
85
|
-
this._catalogueRouteBuilder?.({ view: 'create', index: -1 }) + 'modal/umb-modal-workspace/create/' + elementKey;
|
|
86
|
-
}
|
|
87
|
-
return html `<uui-button-group>
|
|
88
|
-
<uui-button
|
|
89
|
-
id="add-button"
|
|
90
|
-
look="placeholder"
|
|
91
|
-
label=${this._createButtonLabel}
|
|
92
|
-
href=${this._directRoute ?? this._catalogueRouteBuilder?.({ view: 'create', index: -1 }) ?? ''}></uui-button>
|
|
93
|
-
<uui-button
|
|
94
|
-
label=${this.localize.term('content_createFromClipboard')}
|
|
95
|
-
look="placeholder"
|
|
96
|
-
href=${this._catalogueRouteBuilder?.({ view: 'clipboard', index: -1 }) ?? ''}>
|
|
97
|
-
<uui-icon name="icon-paste-in"></uui-icon>
|
|
98
|
-
</uui-button>
|
|
99
|
-
</uui-button-group>`;
|
|
84
|
+
return html `<umb-block-grid-entries .areaKey=${null}></umb-block-grid-entries>`;
|
|
100
85
|
}
|
|
101
86
|
};
|
|
102
|
-
|
|
87
|
+
_UmbPropertyEditorUIBlockGridElement_context = new WeakMap();
|
|
103
88
|
UmbPropertyEditorUIBlockGridElement.styles = [
|
|
104
89
|
UmbTextStyles,
|
|
105
90
|
css `
|
|
@@ -121,8 +106,8 @@ UmbPropertyEditorUIBlockGridElement.styles = [
|
|
|
121
106
|
`,
|
|
122
107
|
];
|
|
123
108
|
__decorate([
|
|
124
|
-
property()
|
|
125
|
-
], UmbPropertyEditorUIBlockGridElement.prototype, "
|
|
109
|
+
property({ attribute: false })
|
|
110
|
+
], UmbPropertyEditorUIBlockGridElement.prototype, "config", null);
|
|
126
111
|
__decorate([
|
|
127
112
|
state()
|
|
128
113
|
], UmbPropertyEditorUIBlockGridElement.prototype, "_limitMin", void 0);
|
|
@@ -130,26 +115,11 @@ __decorate([
|
|
|
130
115
|
state()
|
|
131
116
|
], UmbPropertyEditorUIBlockGridElement.prototype, "_limitMax", void 0);
|
|
132
117
|
__decorate([
|
|
133
|
-
|
|
134
|
-
], UmbPropertyEditorUIBlockGridElement.prototype, "
|
|
135
|
-
__decorate([
|
|
136
|
-
state()
|
|
137
|
-
], UmbPropertyEditorUIBlockGridElement.prototype, "_blockGroups", void 0);
|
|
138
|
-
__decorate([
|
|
139
|
-
state()
|
|
140
|
-
], UmbPropertyEditorUIBlockGridElement.prototype, "_layouts", void 0);
|
|
141
|
-
__decorate([
|
|
142
|
-
state()
|
|
143
|
-
], UmbPropertyEditorUIBlockGridElement.prototype, "_catalogueRouteBuilder", void 0);
|
|
144
|
-
__decorate([
|
|
145
|
-
state()
|
|
146
|
-
], UmbPropertyEditorUIBlockGridElement.prototype, "_directRoute", void 0);
|
|
118
|
+
property({ attribute: false })
|
|
119
|
+
], UmbPropertyEditorUIBlockGridElement.prototype, "value", null);
|
|
147
120
|
__decorate([
|
|
148
121
|
state()
|
|
149
|
-
], UmbPropertyEditorUIBlockGridElement.prototype, "
|
|
150
|
-
__decorate([
|
|
151
|
-
property({ attribute: false })
|
|
152
|
-
], UmbPropertyEditorUIBlockGridElement.prototype, "config", null);
|
|
122
|
+
], UmbPropertyEditorUIBlockGridElement.prototype, "_rootLayouts", void 0);
|
|
153
123
|
UmbPropertyEditorUIBlockGridElement = __decorate([
|
|
154
124
|
customElement('umb-property-editor-ui-block-grid')
|
|
155
125
|
], UmbPropertyEditorUIBlockGridElement);
|
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
import type { UmbPropertyEditorUiElement } from '../../../../core/extension-registry/index.js';
|
|
2
2
|
import { UmbLitElement } from '../../../../core/lit-element/index.js';
|
|
3
3
|
import type { UmbPropertyEditorConfigCollection } from '../../../../core/property-editor/index.js';
|
|
4
|
-
import type {
|
|
4
|
+
import type { UmbBlockGridTypeGroupType } from '../../../index.js';
|
|
5
5
|
export declare class UmbPropertyEditorUIBlockGridGroupConfigurationElement extends UmbLitElement implements UmbPropertyEditorUiElement {
|
|
6
6
|
#private;
|
|
7
7
|
private _value;
|
|
8
|
-
get value(): Array<
|
|
9
|
-
set value(value: Array<
|
|
8
|
+
get value(): Array<UmbBlockGridTypeGroupType>;
|
|
9
|
+
set value(value: Array<UmbBlockGridTypeGroupType>);
|
|
10
10
|
set config(config: UmbPropertyEditorConfigCollection | undefined);
|
|
11
11
|
render(): import("lit-html").TemplateResult<1>;
|
|
12
12
|
static styles: import("@lit/reactive-element/css-tag.js").CSSResult[];
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import type { UmbBlockTypeBaseModel, UmbBlockTypeWithGroupKey } from '../block-type/index.js';
|
|
2
|
+
import type { UmbBlockLayoutBaseModel, UmbBlockValueType } from '../index.js';
|
|
2
3
|
export declare const UMB_BLOCK_GRID_TYPE = "block-grid-type";
|
|
3
|
-
export interface
|
|
4
|
+
export interface UmbBlockGridTypeModel extends UmbBlockTypeBaseModel {
|
|
4
5
|
columnSpanOptions: Array<number>;
|
|
5
6
|
allowAtRoot: boolean;
|
|
6
7
|
allowInAreas: boolean;
|
|
@@ -10,10 +11,21 @@ export interface UmbBlockGridType extends UmbBlockTypeBaseModel {
|
|
|
10
11
|
areaGridColumns?: number;
|
|
11
12
|
areas: Array<any>;
|
|
12
13
|
}
|
|
13
|
-
export interface
|
|
14
|
+
export interface UmbBlockGridTypeGroupType {
|
|
14
15
|
name: string;
|
|
15
16
|
key: string;
|
|
16
17
|
}
|
|
17
|
-
export interface UmbBlockGridGroupTypeConfiguration extends Partial<
|
|
18
|
+
export interface UmbBlockGridGroupTypeConfiguration extends Partial<UmbBlockGridTypeGroupType> {
|
|
18
19
|
blocks: Array<UmbBlockTypeWithGroupKey>;
|
|
19
20
|
}
|
|
21
|
+
export interface UmbBlockGridValueModel extends UmbBlockValueType<UmbBlockGridLayoutModel> {
|
|
22
|
+
}
|
|
23
|
+
export interface UmbBlockGridLayoutModel extends UmbBlockLayoutBaseModel {
|
|
24
|
+
columnSpan: number;
|
|
25
|
+
rowSpan: number;
|
|
26
|
+
areas: Array<UmbBlockGridLayoutAreaItemModel>;
|
|
27
|
+
}
|
|
28
|
+
export interface UmbBlockGridLayoutAreaItemModel {
|
|
29
|
+
key: string;
|
|
30
|
+
items: Array<UmbBlockGridLayoutModel>;
|
|
31
|
+
}
|
package/dist-cms/packages/block/block-list/components/block-list-entry/block-list-entry.element.d.ts
ADDED
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import { UmbLitElement } from '../../../../core/lit-element/index.js';
|
|
2
|
+
import type { UmbPropertyEditorUiElement } from '../../../../core/extension-registry/index.js';
|
|
3
|
+
import '../ref-list-block/index.js';
|
|
4
|
+
import '../inline-list-block/index.js';
|
|
5
|
+
/**
|
|
6
|
+
* @element umb-block-list-entry
|
|
7
|
+
*/
|
|
8
|
+
export declare class UmbBlockListEntryElement extends UmbLitElement implements UmbPropertyEditorUiElement {
|
|
9
|
+
#private;
|
|
10
|
+
get contentUdi(): string | undefined;
|
|
11
|
+
set contentUdi(value: string | undefined);
|
|
12
|
+
private _contentUdi?;
|
|
13
|
+
_hasSettings: boolean;
|
|
14
|
+
_label: string;
|
|
15
|
+
_workspaceEditPath?: string;
|
|
16
|
+
_inlineEditingMode?: boolean;
|
|
17
|
+
_blockViewProps: {
|
|
18
|
+
label?: string;
|
|
19
|
+
};
|
|
20
|
+
constructor();
|
|
21
|
+
render(): import("lit-html").TemplateResult<1>;
|
|
22
|
+
static styles: import("@lit/reactive-element/css-tag.js").CSSResult[];
|
|
23
|
+
}
|
|
24
|
+
export default UmbBlockListEntryElement;
|
|
25
|
+
declare global {
|
|
26
|
+
interface HTMLElementTagNameMap {
|
|
27
|
+
'umb-block-list-entry': UmbBlockListEntryElement;
|
|
28
|
+
}
|
|
29
|
+
}
|
package/dist-cms/packages/block/block-list/components/block-list-entry/block-list-entry.element.js
ADDED
|
@@ -0,0 +1,132 @@
|
|
|
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
|
+
var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (receiver, state, kind, f) {
|
|
8
|
+
if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a getter");
|
|
9
|
+
if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot read private member from an object whose class did not declare it");
|
|
10
|
+
return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
|
|
11
|
+
};
|
|
12
|
+
var _UmbBlockListEntryElement_instances, _UmbBlockListEntryElement_context, _UmbBlockListEntryElement_renderRefBlock, _UmbBlockListEntryElement_renderInlineBlock, _UmbBlockListEntryElement_renderBlock;
|
|
13
|
+
import { UmbLitElement } from '../../../../core/lit-element/index.js';
|
|
14
|
+
import { UmbBlockListEntryContext } from '../../context/block-list-entry.context.js';
|
|
15
|
+
import { html, css, customElement, property, state } from '../../../../../external/lit/index.js';
|
|
16
|
+
import '../ref-list-block/index.js';
|
|
17
|
+
import '../inline-list-block/index.js';
|
|
18
|
+
/**
|
|
19
|
+
* @element umb-block-list-entry
|
|
20
|
+
*/
|
|
21
|
+
let UmbBlockListEntryElement = class UmbBlockListEntryElement extends UmbLitElement {
|
|
22
|
+
//
|
|
23
|
+
get contentUdi() {
|
|
24
|
+
return this._contentUdi;
|
|
25
|
+
}
|
|
26
|
+
set contentUdi(value) {
|
|
27
|
+
if (!value)
|
|
28
|
+
return;
|
|
29
|
+
this._contentUdi = value;
|
|
30
|
+
__classPrivateFieldGet(this, _UmbBlockListEntryElement_context, "f").setContentUdi(value);
|
|
31
|
+
}
|
|
32
|
+
constructor() {
|
|
33
|
+
super();
|
|
34
|
+
_UmbBlockListEntryElement_instances.add(this);
|
|
35
|
+
_UmbBlockListEntryElement_context.set(this, new UmbBlockListEntryContext(this));
|
|
36
|
+
this._hasSettings = false;
|
|
37
|
+
this._label = '';
|
|
38
|
+
// TODO: Move type for the Block Properties, and use it on the Element Interface for the Manifest.
|
|
39
|
+
this._blockViewProps = {};
|
|
40
|
+
this.observe(__classPrivateFieldGet(this, _UmbBlockListEntryElement_context, "f").workspaceEditPath, (workspaceEditPath) => {
|
|
41
|
+
this._workspaceEditPath = workspaceEditPath;
|
|
42
|
+
});
|
|
43
|
+
this.observe(__classPrivateFieldGet(this, _UmbBlockListEntryElement_context, "f").blockTypeSettingsElementTypeKey, (blockTypeSettingsElementTypeKey) => {
|
|
44
|
+
this._hasSettings = !!blockTypeSettingsElementTypeKey;
|
|
45
|
+
});
|
|
46
|
+
this.observe(__classPrivateFieldGet(this, _UmbBlockListEntryElement_context, "f").label, (label) => {
|
|
47
|
+
const oldValue = this._label;
|
|
48
|
+
this._blockViewProps.label = label;
|
|
49
|
+
this._label = label;
|
|
50
|
+
this.requestUpdate('label', oldValue);
|
|
51
|
+
});
|
|
52
|
+
this.observe(__classPrivateFieldGet(this, _UmbBlockListEntryElement_context, "f").inlineEditingMode, (inlineEditingMode) => {
|
|
53
|
+
this._inlineEditingMode = inlineEditingMode;
|
|
54
|
+
});
|
|
55
|
+
}
|
|
56
|
+
render() {
|
|
57
|
+
return __classPrivateFieldGet(this, _UmbBlockListEntryElement_instances, "m", _UmbBlockListEntryElement_renderBlock).call(this);
|
|
58
|
+
}
|
|
59
|
+
};
|
|
60
|
+
_UmbBlockListEntryElement_context = new WeakMap();
|
|
61
|
+
_UmbBlockListEntryElement_instances = new WeakSet();
|
|
62
|
+
_UmbBlockListEntryElement_renderRefBlock = function _UmbBlockListEntryElement_renderRefBlock() {
|
|
63
|
+
return html `<umb-ref-list-block .label=${this._label}></umb-ref-list-block>`;
|
|
64
|
+
};
|
|
65
|
+
_UmbBlockListEntryElement_renderInlineBlock = function _UmbBlockListEntryElement_renderInlineBlock() {
|
|
66
|
+
return html `<umb-inline-list-block .label=${this._label}></umb-inline-list-block>`;
|
|
67
|
+
};
|
|
68
|
+
_UmbBlockListEntryElement_renderBlock = function _UmbBlockListEntryElement_renderBlock() {
|
|
69
|
+
return html `
|
|
70
|
+
<umb-extension-slot
|
|
71
|
+
type="blockEditorCustomView"
|
|
72
|
+
default-element=${this._inlineEditingMode ? 'umb-inline-list-block' : 'umb-ref-list-block'}
|
|
73
|
+
.props=${this._blockViewProps}
|
|
74
|
+
>${this._inlineEditingMode ? __classPrivateFieldGet(this, _UmbBlockListEntryElement_instances, "m", _UmbBlockListEntryElement_renderInlineBlock).call(this) : __classPrivateFieldGet(this, _UmbBlockListEntryElement_instances, "m", _UmbBlockListEntryElement_renderRefBlock).call(this)}</umb-extension-slot
|
|
75
|
+
>
|
|
76
|
+
<uui-action-bar>
|
|
77
|
+
${this._workspaceEditPath
|
|
78
|
+
? html `<uui-button label="edit" compact href=${this._workspaceEditPath}>
|
|
79
|
+
<uui-icon name="icon-edit"></uui-icon>
|
|
80
|
+
</uui-button>`
|
|
81
|
+
: ''}
|
|
82
|
+
${this._workspaceEditPath && this._hasSettings
|
|
83
|
+
? html `<uui-button label="Edit settings" compact href=${this._workspaceEditPath + '/view/settings'}>
|
|
84
|
+
<uui-icon name="icon-settings"></uui-icon>
|
|
85
|
+
</uui-button>`
|
|
86
|
+
: ''}
|
|
87
|
+
<uui-button label="delete" compact @click=${() => __classPrivateFieldGet(this, _UmbBlockListEntryElement_context, "f").requestDelete()}>
|
|
88
|
+
<uui-icon name="icon-remove"></uui-icon>
|
|
89
|
+
</uui-button>
|
|
90
|
+
</uui-action-bar>
|
|
91
|
+
`;
|
|
92
|
+
};
|
|
93
|
+
UmbBlockListEntryElement.styles = [
|
|
94
|
+
css `
|
|
95
|
+
:host {
|
|
96
|
+
position: relative;
|
|
97
|
+
display: block;
|
|
98
|
+
}
|
|
99
|
+
uui-action-bar {
|
|
100
|
+
position: absolute;
|
|
101
|
+
top: var(--uui-size-2);
|
|
102
|
+
right: var(--uui-size-2);
|
|
103
|
+
}
|
|
104
|
+
|
|
105
|
+
:host([drag-placeholder]) {
|
|
106
|
+
opacity: 0.2;
|
|
107
|
+
}
|
|
108
|
+
`,
|
|
109
|
+
];
|
|
110
|
+
__decorate([
|
|
111
|
+
property({ attribute: false })
|
|
112
|
+
], UmbBlockListEntryElement.prototype, "contentUdi", null);
|
|
113
|
+
__decorate([
|
|
114
|
+
state()
|
|
115
|
+
], UmbBlockListEntryElement.prototype, "_hasSettings", void 0);
|
|
116
|
+
__decorate([
|
|
117
|
+
state()
|
|
118
|
+
], UmbBlockListEntryElement.prototype, "_label", void 0);
|
|
119
|
+
__decorate([
|
|
120
|
+
state()
|
|
121
|
+
], UmbBlockListEntryElement.prototype, "_workspaceEditPath", void 0);
|
|
122
|
+
__decorate([
|
|
123
|
+
state()
|
|
124
|
+
], UmbBlockListEntryElement.prototype, "_inlineEditingMode", void 0);
|
|
125
|
+
__decorate([
|
|
126
|
+
state()
|
|
127
|
+
], UmbBlockListEntryElement.prototype, "_blockViewProps", void 0);
|
|
128
|
+
UmbBlockListEntryElement = __decorate([
|
|
129
|
+
customElement('umb-block-list-entry')
|
|
130
|
+
], UmbBlockListEntryElement);
|
|
131
|
+
export { UmbBlockListEntryElement };
|
|
132
|
+
export default UmbBlockListEntryElement;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './block-list-entry.element.js';
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './block-list-entry.element.js';
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { UmbLitElement } from '../../../../core/lit-element/index.js';
|
|
2
|
-
import '../../../block/workspace/views/edit/block-workspace-view-edit-no-router.element.js';
|
|
2
|
+
import '../../../block/workspace/views/edit/block-workspace-view-edit-content-no-router.element.js';
|
|
3
3
|
/**
|
|
4
4
|
* @element umb-inline-list-block
|
|
5
5
|
*/
|
package/dist-cms/packages/block/block-list/components/inline-list-block/inline-list-block.element.js
CHANGED
|
@@ -16,13 +16,13 @@ var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (
|
|
|
16
16
|
return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
|
|
17
17
|
};
|
|
18
18
|
var _UmbInlineListBlockElement_instances, _UmbInlineListBlockElement_blockContext, _UmbInlineListBlockElement_workspaceContext, _UmbInlineListBlockElement_contentUdi, _UmbInlineListBlockElement_load;
|
|
19
|
-
import {
|
|
19
|
+
import { UMB_BLOCK_LIST_ENTRY_CONTEXT } from '../../index.js';
|
|
20
20
|
import { UMB_BLOCK_WORKSPACE_ALIAS } from '../../../block/index.js';
|
|
21
21
|
import { UmbExtensionsApiInitializer, createExtensionApi } from '../../../../../libs/extension-api/index.js';
|
|
22
22
|
import { umbExtensionsRegistry } from '../../../../core/extension-registry/index.js';
|
|
23
23
|
import { css, customElement, html, property, state } from '../../../../../external/lit/index.js';
|
|
24
24
|
import { UmbLitElement } from '../../../../core/lit-element/index.js';
|
|
25
|
-
import '../../../block/workspace/views/edit/block-workspace-view-edit-no-router.element.js';
|
|
25
|
+
import '../../../block/workspace/views/edit/block-workspace-view-edit-content-no-router.element.js';
|
|
26
26
|
import { UmbTextStyles } from '../../../../../shared/style/index.js';
|
|
27
27
|
/**
|
|
28
28
|
* @element umb-inline-list-block
|
|
@@ -35,9 +35,9 @@ let UmbInlineListBlockElement = class UmbInlineListBlockElement extends UmbLitEl
|
|
|
35
35
|
_UmbInlineListBlockElement_workspaceContext.set(this, void 0);
|
|
36
36
|
_UmbInlineListBlockElement_contentUdi.set(this, void 0);
|
|
37
37
|
this._isOpen = false;
|
|
38
|
-
this.consumeContext(
|
|
38
|
+
this.consumeContext(UMB_BLOCK_LIST_ENTRY_CONTEXT, (blockContext) => {
|
|
39
39
|
__classPrivateFieldSet(this, _UmbInlineListBlockElement_blockContext, blockContext, "f");
|
|
40
|
-
this.observe(__classPrivateFieldGet(this, _UmbInlineListBlockElement_blockContext, "f").
|
|
40
|
+
this.observe(__classPrivateFieldGet(this, _UmbInlineListBlockElement_blockContext, "f").unique, (contentUdi) => {
|
|
41
41
|
__classPrivateFieldSet(this, _UmbInlineListBlockElement_contentUdi, contentUdi, "f");
|
|
42
42
|
__classPrivateFieldGet(this, _UmbInlineListBlockElement_instances, "m", _UmbInlineListBlockElement_load).call(this);
|
|
43
43
|
}, 'observeContentUdi');
|
|
@@ -48,7 +48,6 @@ let UmbInlineListBlockElement = class UmbInlineListBlockElement extends UmbLitEl
|
|
|
48
48
|
if (context) {
|
|
49
49
|
__classPrivateFieldSet(this, _UmbInlineListBlockElement_workspaceContext, context, "f");
|
|
50
50
|
__classPrivateFieldGet(this, _UmbInlineListBlockElement_instances, "m", _UmbInlineListBlockElement_load).call(this);
|
|
51
|
-
__classPrivateFieldGet(this, _UmbInlineListBlockElement_workspaceContext, "f").content.createPropertyDatasetContext(this);
|
|
52
51
|
new UmbExtensionsApiInitializer(this, umbExtensionsRegistry, 'workspaceContext', [
|
|
53
52
|
this,
|
|
54
53
|
__classPrivateFieldGet(this, _UmbInlineListBlockElement_workspaceContext, "f"),
|
|
@@ -71,7 +70,7 @@ let UmbInlineListBlockElement = class UmbInlineListBlockElement extends UmbLitEl
|
|
|
71
70
|
<span>${this.label}</span>
|
|
72
71
|
</button>
|
|
73
72
|
${this._isOpen === true
|
|
74
|
-
? html `<umb-block-workspace-view-edit-no-router></umb-block-workspace-view-edit-no-router>`
|
|
73
|
+
? html `<umb-block-workspace-view-edit-content-no-router></umb-block-workspace-view-edit-content-no-router>`
|
|
75
74
|
: ''}
|
|
76
75
|
</uui-box>`;
|
|
77
76
|
}
|
package/dist-cms/packages/block/block-list/components/ref-list-block/ref-list-block.element.js
CHANGED
|
@@ -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_BLOCK_ENTRY_CONTEXT } from '../../../index.js';
|
|
8
8
|
import { css, customElement, html, property, state } from '../../../../../external/lit/index.js';
|
|
9
9
|
import { UmbLitElement } from '../../../../core/lit-element/index.js';
|
|
10
10
|
/**
|
|
@@ -13,7 +13,8 @@ import { UmbLitElement } from '../../../../core/lit-element/index.js';
|
|
|
13
13
|
let UmbRefListBlockElement = class UmbRefListBlockElement extends UmbLitElement {
|
|
14
14
|
constructor() {
|
|
15
15
|
super();
|
|
16
|
-
|
|
16
|
+
// UMB_BLOCK_LIST_ENTRY_CONTEXT
|
|
17
|
+
this.consumeContext(UMB_BLOCK_ENTRY_CONTEXT, (context) => {
|
|
17
18
|
this.observe(context.workspaceEditPath, (workspaceEditPath) => {
|
|
18
19
|
this._workspaceEditPath = workspaceEditPath;
|
|
19
20
|
}, 'observeWorkspaceEditPath');
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
import type { UmbBlockListEntriesContext } from './block-list-entries.context.js';
|
|
2
|
+
import { UmbContextToken } from '../../../../libs/context-api/index.js';
|
|
3
|
+
export declare const UMB_BLOCK_LIST_ENTRIES_CONTEXT: UmbContextToken<UmbBlockListEntriesContext, UmbBlockListEntriesContext>;
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import type { UmbBlockDataType } from '../../block/index.js';
|
|
2
|
+
import { UmbBlockEntriesContext } from '../../block/index.js';
|
|
3
|
+
import type { UmbBlockListWorkspaceData } from '../index.js';
|
|
4
|
+
import type { UmbBlockListLayoutModel, UmbBlockListTypeModel } from '../types.js';
|
|
5
|
+
import { UMB_BLOCK_LIST_MANAGER_CONTEXT } from './block-list-manager.context.js';
|
|
6
|
+
import type { UmbControllerHost } from '../../../../libs/controller-api/index.js';
|
|
7
|
+
export declare class UmbBlockListEntriesContext extends UmbBlockEntriesContext<typeof UMB_BLOCK_LIST_MANAGER_CONTEXT, typeof UMB_BLOCK_LIST_MANAGER_CONTEXT.TYPE, UmbBlockListTypeModel, UmbBlockListLayoutModel> {
|
|
8
|
+
#private;
|
|
9
|
+
constructor(host: UmbControllerHost);
|
|
10
|
+
protected _gotBlockManager(): void;
|
|
11
|
+
getPathForCreateBlock(index: number): string | undefined;
|
|
12
|
+
getPathForClipboard(index: number): string | undefined;
|
|
13
|
+
create(contentElementTypeKey: string, partialLayoutEntry?: Omit<UmbBlockListLayoutModel, 'contentUdi'>, modalData?: UmbBlockListWorkspaceData): Promise<{
|
|
14
|
+
layout: UmbBlockListLayoutModel;
|
|
15
|
+
content: {
|
|
16
|
+
udi: string;
|
|
17
|
+
contentTypeKey: string;
|
|
18
|
+
};
|
|
19
|
+
settings: UmbBlockDataType | undefined;
|
|
20
|
+
} | undefined>;
|
|
21
|
+
insert(layoutEntry: UmbBlockListLayoutModel, content: UmbBlockDataType, settings: UmbBlockDataType | undefined, modalData: UmbBlockListWorkspaceData): Promise<boolean>;
|
|
22
|
+
delete(contentUdi: string): Promise<void>;
|
|
23
|
+
}
|
|
@@ -0,0 +1,81 @@
|
|
|
1
|
+
var __classPrivateFieldSet = (this && this.__classPrivateFieldSet) || function (receiver, state, value, kind, f) {
|
|
2
|
+
if (kind === "m") throw new TypeError("Private method is not writable");
|
|
3
|
+
if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a setter");
|
|
4
|
+
if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot write private member to an object whose class did not declare it");
|
|
5
|
+
return (kind === "a" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;
|
|
6
|
+
};
|
|
7
|
+
var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (receiver, state, kind, f) {
|
|
8
|
+
if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a getter");
|
|
9
|
+
if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot read private member from an object whose class did not declare it");
|
|
10
|
+
return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
|
|
11
|
+
};
|
|
12
|
+
var _UmbBlockListEntriesContext_catalogueModal, _UmbBlockListEntriesContext_catalogueRouteBuilder;
|
|
13
|
+
import { UMB_BLOCK_CATALOGUE_MODAL, UmbBlockEntriesContext } from '../../block/index.js';
|
|
14
|
+
import { UMB_BLOCK_LIST_MANAGER_CONTEXT } from './block-list-manager.context.js';
|
|
15
|
+
import { UmbModalRouteRegistrationController } from '../../../core/modal/index.js';
|
|
16
|
+
export class UmbBlockListEntriesContext extends UmbBlockEntriesContext {
|
|
17
|
+
constructor(host) {
|
|
18
|
+
super(host, UMB_BLOCK_LIST_MANAGER_CONTEXT);
|
|
19
|
+
//
|
|
20
|
+
_UmbBlockListEntriesContext_catalogueModal.set(this, void 0);
|
|
21
|
+
_UmbBlockListEntriesContext_catalogueRouteBuilder.set(this, void 0);
|
|
22
|
+
__classPrivateFieldSet(this, _UmbBlockListEntriesContext_catalogueModal, new UmbModalRouteRegistrationController(this, UMB_BLOCK_CATALOGUE_MODAL)
|
|
23
|
+
.addUniquePaths(['propertyAlias', 'variantId'])
|
|
24
|
+
.addAdditionalPath(':view/:index')
|
|
25
|
+
.onSetup((routingInfo) => {
|
|
26
|
+
// Idea: Maybe on setup should be async, so it can retrieve the values when needed? [NL]
|
|
27
|
+
const index = routingInfo.index ? parseInt(routingInfo.index) : -1;
|
|
28
|
+
return {
|
|
29
|
+
data: {
|
|
30
|
+
blocks: [],
|
|
31
|
+
blockGroups: [],
|
|
32
|
+
openClipboard: routingInfo.view === 'clipboard',
|
|
33
|
+
blockOriginData: { index: index },
|
|
34
|
+
},
|
|
35
|
+
};
|
|
36
|
+
})
|
|
37
|
+
.observeRouteBuilder((routeBuilder) => {
|
|
38
|
+
__classPrivateFieldSet(this, _UmbBlockListEntriesContext_catalogueRouteBuilder, routeBuilder, "f");
|
|
39
|
+
// TODO: Trigger render update?
|
|
40
|
+
}), "f");
|
|
41
|
+
}
|
|
42
|
+
_gotBlockManager() {
|
|
43
|
+
if (!this._manager)
|
|
44
|
+
return;
|
|
45
|
+
this.observe(this._manager.layouts, (layouts) => {
|
|
46
|
+
this._layoutEntries.setValue(layouts);
|
|
47
|
+
}, 'observeParentLayouts');
|
|
48
|
+
this.observe(this.layoutEntries, (layouts) => {
|
|
49
|
+
this._manager?.setLayouts(layouts);
|
|
50
|
+
}, 'observeThisLayouts');
|
|
51
|
+
this.observe(this._manager.propertyAlias, (alias) => {
|
|
52
|
+
__classPrivateFieldGet(this, _UmbBlockListEntriesContext_catalogueModal, "f").setUniquePathValue('propertyAlias', alias ?? 'null');
|
|
53
|
+
}, 'observePropertyAlias');
|
|
54
|
+
this.observe(this._manager.variantId, (variantId) => {
|
|
55
|
+
if (variantId) {
|
|
56
|
+
__classPrivateFieldGet(this, _UmbBlockListEntriesContext_catalogueModal, "f").setUniquePathValue('variantId', variantId.toString());
|
|
57
|
+
}
|
|
58
|
+
}, 'observePropertyAlias');
|
|
59
|
+
}
|
|
60
|
+
getPathForCreateBlock(index) {
|
|
61
|
+
return __classPrivateFieldGet(this, _UmbBlockListEntriesContext_catalogueRouteBuilder, "f")?.call(this, { view: 'create', index: index });
|
|
62
|
+
}
|
|
63
|
+
getPathForClipboard(index) {
|
|
64
|
+
return __classPrivateFieldGet(this, _UmbBlockListEntriesContext_catalogueRouteBuilder, "f")?.call(this, { view: 'clipboard', index: index });
|
|
65
|
+
}
|
|
66
|
+
async create(contentElementTypeKey, partialLayoutEntry, modalData) {
|
|
67
|
+
await this._retrieveManager;
|
|
68
|
+
return this._manager?.create(contentElementTypeKey, partialLayoutEntry, modalData);
|
|
69
|
+
}
|
|
70
|
+
// insert Block?
|
|
71
|
+
async insert(layoutEntry, content, settings, modalData) {
|
|
72
|
+
await this._retrieveManager;
|
|
73
|
+
return this._manager?.insert(layoutEntry, content, settings, modalData) ?? false;
|
|
74
|
+
}
|
|
75
|
+
// create Block?
|
|
76
|
+
async delete(contentUdi) {
|
|
77
|
+
// TODO: Loop through children and delete them as well?
|
|
78
|
+
await super.delete(contentUdi);
|
|
79
|
+
}
|
|
80
|
+
}
|
|
81
|
+
_UmbBlockListEntriesContext_catalogueModal = new WeakMap(), _UmbBlockListEntriesContext_catalogueRouteBuilder = new WeakMap();
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { UMB_BLOCK_LIST_MANAGER_CONTEXT } from './block-list-manager.context.js';
|
|
2
|
+
import { UMB_BLOCK_LIST_ENTRIES_CONTEXT } from './block-list-entries.context-token.js';
|
|
3
|
+
import { UmbBlockEntryContext } from '../../index.js';
|
|
4
|
+
import type { UmbControllerHost } from '../../../../libs/controller-api/index.js';
|
|
5
|
+
export declare class UmbBlockListEntryContext extends UmbBlockEntryContext<typeof UMB_BLOCK_LIST_MANAGER_CONTEXT, typeof UMB_BLOCK_LIST_MANAGER_CONTEXT.TYPE, typeof UMB_BLOCK_LIST_ENTRIES_CONTEXT, typeof UMB_BLOCK_LIST_ENTRIES_CONTEXT.TYPE> {
|
|
6
|
+
#private;
|
|
7
|
+
inlineEditingMode: import("rxjs").Observable<boolean | undefined>;
|
|
8
|
+
constructor(host: UmbControllerHost);
|
|
9
|
+
_gotManager(): void;
|
|
10
|
+
_gotEntries(): void;
|
|
11
|
+
}
|