@umbraco-cms/backoffice 14.0.0--preview005-4682d2b5 → 14.0.0--preview005-ab659bc0
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/custom-elements.json +23 -14
- package/dist-cms/packages/core/property-editor/uis/tree-picker/property-editor-ui-tree-picker.element.d.ts +1 -1
- package/dist-cms/packages/core/property-editor/uis/tree-picker/property-editor-ui-tree-picker.element.js +3 -3
- package/dist-cms/packages/core/tree/components/input-tree/input-tree.element.d.ts +3 -3
- package/dist-cms/packages/core/tree/components/input-tree/input-tree.element.js +9 -9
- package/dist-cms/packages/documents/documents/components/input-document/input-document.element.d.ts +1 -7
- package/dist-cms/packages/documents/documents/components/input-document/input-document.element.js +53 -45
- package/dist-cms/packages/media/media/components/input-media/input-media.element.d.ts +1 -5
- package/dist-cms/packages/media/media/components/input-media/input-media.element.js +38 -25
- package/dist-cms/packages/members/members/components/input-member/input-member.element.d.ts +1 -4
- package/dist-cms/packages/members/members/components/input-member/input-member.element.js +56 -34
- package/dist-cms/tsconfig.build.tsbuildinfo +1 -1
- package/dist-cms/vscode-html-custom-data.json +16 -11
- package/package.json +1 -1
|
@@ -5111,7 +5111,7 @@
|
|
|
5111
5111
|
"default": "0"
|
|
5112
5112
|
},
|
|
5113
5113
|
{
|
|
5114
|
-
"name": "
|
|
5114
|
+
"name": "allowedContentTypeIds",
|
|
5115
5115
|
"type": "string | null | undefined"
|
|
5116
5116
|
},
|
|
5117
5117
|
{
|
|
@@ -5564,7 +5564,7 @@
|
|
|
5564
5564
|
"default": "0"
|
|
5565
5565
|
},
|
|
5566
5566
|
{
|
|
5567
|
-
"name": "
|
|
5567
|
+
"name": "allowedContentTypeIds",
|
|
5568
5568
|
"type": "string"
|
|
5569
5569
|
},
|
|
5570
5570
|
{
|
|
@@ -5604,8 +5604,8 @@
|
|
|
5604
5604
|
"default": "0"
|
|
5605
5605
|
},
|
|
5606
5606
|
{
|
|
5607
|
-
"name": "
|
|
5608
|
-
"attribute": "
|
|
5607
|
+
"name": "allowedContentTypeIds",
|
|
5608
|
+
"attribute": "allowedContentTypeIds",
|
|
5609
5609
|
"type": "string"
|
|
5610
5610
|
},
|
|
5611
5611
|
{
|
|
@@ -6643,8 +6643,8 @@
|
|
|
6643
6643
|
"type": "string | undefined"
|
|
6644
6644
|
},
|
|
6645
6645
|
{
|
|
6646
|
-
"name": "
|
|
6647
|
-
"type": "string | undefined"
|
|
6646
|
+
"name": "allowedContentTypeIds",
|
|
6647
|
+
"type": "string[] | undefined"
|
|
6648
6648
|
},
|
|
6649
6649
|
{
|
|
6650
6650
|
"name": "showOpenButton",
|
|
@@ -6698,9 +6698,9 @@
|
|
|
6698
6698
|
"type": "string | undefined"
|
|
6699
6699
|
},
|
|
6700
6700
|
{
|
|
6701
|
-
"name": "
|
|
6702
|
-
"attribute": "
|
|
6703
|
-
"type": "string | undefined"
|
|
6701
|
+
"name": "allowedContentTypeIds",
|
|
6702
|
+
"attribute": "allowedContentTypeIds",
|
|
6703
|
+
"type": "string[] | undefined"
|
|
6704
6704
|
},
|
|
6705
6705
|
{
|
|
6706
6706
|
"name": "showOpenButton",
|
|
@@ -7923,8 +7923,8 @@
|
|
|
7923
7923
|
"default": "\"\""
|
|
7924
7924
|
},
|
|
7925
7925
|
{
|
|
7926
|
-
"name": "
|
|
7927
|
-
"type": "string | undefined"
|
|
7926
|
+
"name": "allowedContentTypeIds",
|
|
7927
|
+
"type": "string[] | undefined"
|
|
7928
7928
|
},
|
|
7929
7929
|
{
|
|
7930
7930
|
"name": "showOpenButton",
|
|
@@ -7973,9 +7973,9 @@
|
|
|
7973
7973
|
"type": "string[]"
|
|
7974
7974
|
},
|
|
7975
7975
|
{
|
|
7976
|
-
"name": "
|
|
7977
|
-
"attribute": "
|
|
7978
|
-
"type": "string | undefined"
|
|
7976
|
+
"name": "allowedContentTypeIds",
|
|
7977
|
+
"attribute": "allowedContentTypeIds",
|
|
7978
|
+
"type": "string[] | undefined"
|
|
7979
7979
|
},
|
|
7980
7980
|
{
|
|
7981
7981
|
"name": "showOpenButton",
|
|
@@ -8213,6 +8213,10 @@
|
|
|
8213
8213
|
"type": "boolean",
|
|
8214
8214
|
"default": "\"\""
|
|
8215
8215
|
},
|
|
8216
|
+
{
|
|
8217
|
+
"name": "allowedContentTypeIds",
|
|
8218
|
+
"type": "string[] | undefined"
|
|
8219
|
+
},
|
|
8216
8220
|
{
|
|
8217
8221
|
"name": "value",
|
|
8218
8222
|
"type": "string"
|
|
@@ -8251,6 +8255,11 @@
|
|
|
8251
8255
|
"name": "selectedIds",
|
|
8252
8256
|
"type": "string[]"
|
|
8253
8257
|
},
|
|
8258
|
+
{
|
|
8259
|
+
"name": "allowedContentTypeIds",
|
|
8260
|
+
"attribute": "allowedContentTypeIds",
|
|
8261
|
+
"type": "string[] | undefined"
|
|
8262
|
+
},
|
|
8254
8263
|
{
|
|
8255
8264
|
"name": "value",
|
|
8256
8265
|
"attribute": "value",
|
|
@@ -12,7 +12,7 @@ export declare class UmbPropertyEditorUITreePickerElement extends UmbLitElement
|
|
|
12
12
|
startNodeId?: string | null;
|
|
13
13
|
min: number;
|
|
14
14
|
max: number;
|
|
15
|
-
|
|
15
|
+
allowedContentTypeIds?: string | null;
|
|
16
16
|
showOpenButton?: boolean;
|
|
17
17
|
ignoreUserStartNodes?: boolean;
|
|
18
18
|
set config(config: UmbPropertyEditorConfigCollection | undefined);
|
|
@@ -33,7 +33,7 @@ let UmbPropertyEditorUITreePickerElement = class UmbPropertyEditorUITreePickerEl
|
|
|
33
33
|
}
|
|
34
34
|
this.min = Number(config?.getValueByAlias('minNumber')) || 0;
|
|
35
35
|
this.max = Number(config?.getValueByAlias('maxNumber')) || 0;
|
|
36
|
-
this.
|
|
36
|
+
this.allowedContentTypeIds = config?.getValueByAlias('filter');
|
|
37
37
|
this.showOpenButton = config?.getValueByAlias('showOpenButton');
|
|
38
38
|
this.ignoreUserStartNodes = config?.getValueByAlias('ignoreUserStartNodes');
|
|
39
39
|
}
|
|
@@ -44,7 +44,7 @@ let UmbPropertyEditorUITreePickerElement = class UmbPropertyEditorUITreePickerEl
|
|
|
44
44
|
.startNodeId=${this.startNodeId ?? ''}
|
|
45
45
|
.min=${this.min}
|
|
46
46
|
.max=${this.max}
|
|
47
|
-
.
|
|
47
|
+
.allowedContentTypeIds=${this.allowedContentTypeIds ?? ''}
|
|
48
48
|
?showOpenButton=${this.showOpenButton}
|
|
49
49
|
?ignoreUserStartNodes=${this.ignoreUserStartNodes}
|
|
50
50
|
@change=${__classPrivateFieldGet(this, _UmbPropertyEditorUITreePickerElement_instances, "m", _UmbPropertyEditorUITreePickerElement_onChange)}></umb-input-tree>`;
|
|
@@ -73,7 +73,7 @@ __decorate([
|
|
|
73
73
|
], UmbPropertyEditorUITreePickerElement.prototype, "max", void 0);
|
|
74
74
|
__decorate([
|
|
75
75
|
state()
|
|
76
|
-
], UmbPropertyEditorUITreePickerElement.prototype, "
|
|
76
|
+
], UmbPropertyEditorUITreePickerElement.prototype, "allowedContentTypeIds", void 0);
|
|
77
77
|
__decorate([
|
|
78
78
|
state()
|
|
79
79
|
], UmbPropertyEditorUITreePickerElement.prototype, "showOpenButton", void 0);
|
|
@@ -10,9 +10,9 @@ export declare class UmbInputTreeElement extends UmbInputTreeElement_base {
|
|
|
10
10
|
startNodeId?: string;
|
|
11
11
|
min: number;
|
|
12
12
|
max: number;
|
|
13
|
-
private
|
|
14
|
-
set
|
|
15
|
-
get
|
|
13
|
+
private _allowedContentTypeIds;
|
|
14
|
+
set allowedContentTypeIds(value: string);
|
|
15
|
+
get allowedContentTypeIds(): string;
|
|
16
16
|
showOpenButton?: boolean;
|
|
17
17
|
ignoreUserStartNodes?: boolean;
|
|
18
18
|
set value(newValue: string);
|
|
@@ -28,11 +28,11 @@ let UmbInputTreeElement = class UmbInputTreeElement extends FormControlMixin(Umb
|
|
|
28
28
|
get type() {
|
|
29
29
|
return this._type;
|
|
30
30
|
}
|
|
31
|
-
set
|
|
32
|
-
this.
|
|
31
|
+
set allowedContentTypeIds(value) {
|
|
32
|
+
this._allowedContentTypeIds = value ? value.split(',') : [];
|
|
33
33
|
}
|
|
34
|
-
get
|
|
35
|
-
return this.
|
|
34
|
+
get allowedContentTypeIds() {
|
|
35
|
+
return this._allowedContentTypeIds.join(',');
|
|
36
36
|
}
|
|
37
37
|
set value(newValue) {
|
|
38
38
|
super.value = newValue;
|
|
@@ -52,7 +52,7 @@ let UmbInputTreeElement = class UmbInputTreeElement extends FormControlMixin(Umb
|
|
|
52
52
|
this._type = undefined;
|
|
53
53
|
this.min = 0;
|
|
54
54
|
this.max = 0;
|
|
55
|
-
this.
|
|
55
|
+
this._allowedContentTypeIds = [];
|
|
56
56
|
this.selectedIds = [];
|
|
57
57
|
}
|
|
58
58
|
render() {
|
|
@@ -89,7 +89,7 @@ _UmbInputTreeElement_renderContentPicker = function _UmbInputTreeElement_renderC
|
|
|
89
89
|
return html `<umb-input-document
|
|
90
90
|
.selectedIds=${this.selectedIds}
|
|
91
91
|
.startNodeId=${this.startNodeId}
|
|
92
|
-
.
|
|
92
|
+
.allowedContentTypeIds=${this._allowedContentTypeIds}
|
|
93
93
|
.min=${this.min}
|
|
94
94
|
.max=${this.max}
|
|
95
95
|
?showOpenButton=${this.showOpenButton}
|
|
@@ -99,7 +99,7 @@ _UmbInputTreeElement_renderContentPicker = function _UmbInputTreeElement_renderC
|
|
|
99
99
|
_UmbInputTreeElement_renderMediaPicker = function _UmbInputTreeElement_renderMediaPicker() {
|
|
100
100
|
return html `<umb-input-media
|
|
101
101
|
.selectedIds=${this.selectedIds}
|
|
102
|
-
.
|
|
102
|
+
.allowedContentTypeIds=${this._allowedContentTypeIds}
|
|
103
103
|
.min=${this.min}
|
|
104
104
|
.max=${this.max}
|
|
105
105
|
?showOpenButton=${this.showOpenButton}
|
|
@@ -109,7 +109,7 @@ _UmbInputTreeElement_renderMediaPicker = function _UmbInputTreeElement_renderMed
|
|
|
109
109
|
_UmbInputTreeElement_renderMemberPicker = function _UmbInputTreeElement_renderMemberPicker() {
|
|
110
110
|
return html `<umb-input-member
|
|
111
111
|
.selectedIds=${this.selectedIds}
|
|
112
|
-
.
|
|
112
|
+
.allowedContentTypeIds=${this._allowedContentTypeIds}
|
|
113
113
|
.min=${this.min}
|
|
114
114
|
.max=${this.max}
|
|
115
115
|
?showOpenButton=${this.showOpenButton}
|
|
@@ -138,7 +138,7 @@ __decorate([
|
|
|
138
138
|
], UmbInputTreeElement.prototype, "max", void 0);
|
|
139
139
|
__decorate([
|
|
140
140
|
property()
|
|
141
|
-
], UmbInputTreeElement.prototype, "
|
|
141
|
+
], UmbInputTreeElement.prototype, "allowedContentTypeIds", null);
|
|
142
142
|
__decorate([
|
|
143
143
|
property({ type: Boolean })
|
|
144
144
|
], UmbInputTreeElement.prototype, "showOpenButton", void 0);
|
package/dist-cms/packages/documents/documents/components/input-document/input-document.element.d.ts
CHANGED
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
import { UmbLitElement } from '../../../../../shared/lit-element/index.js';
|
|
2
|
-
import type { DocumentItemResponseModel } from '../../../../../external/backend-api/index.js';
|
|
3
2
|
declare const UmbInputDocumentElement_base: (new (...args: any[]) => import("../../../../../external/uui/index.js").FormControlMixinInterface) & typeof UmbLitElement;
|
|
4
3
|
export declare class UmbInputDocumentElement extends UmbInputDocumentElement_base {
|
|
5
4
|
#private;
|
|
@@ -36,20 +35,15 @@ export declare class UmbInputDocumentElement extends UmbInputDocumentElement_bas
|
|
|
36
35
|
get selectedIds(): Array<string>;
|
|
37
36
|
set selectedIds(ids: Array<string>);
|
|
38
37
|
startNodeId?: string;
|
|
39
|
-
|
|
38
|
+
allowedContentTypeIds?: string[] | undefined;
|
|
40
39
|
showOpenButton?: boolean;
|
|
41
40
|
ignoreUserStartNodes?: boolean;
|
|
42
41
|
set value(idsString: string);
|
|
43
42
|
private _items?;
|
|
44
43
|
constructor();
|
|
45
44
|
connectedCallback(): void;
|
|
46
|
-
protected _openPicker(): void;
|
|
47
|
-
protected _openItem(item: DocumentItemResponseModel): void;
|
|
48
45
|
protected getFormElement(): undefined;
|
|
49
46
|
render(): import("lit-html").TemplateResult<1>;
|
|
50
|
-
private _renderItem;
|
|
51
|
-
private _renderIsTrashed;
|
|
52
|
-
private _renderOpenButton;
|
|
53
47
|
static styles: import("../../../../../external/lit/index.js").CSSResult[];
|
|
54
48
|
}
|
|
55
49
|
export default UmbInputDocumentElement;
|
package/dist-cms/packages/documents/documents/components/input-document/input-document.element.js
CHANGED
|
@@ -9,7 +9,7 @@ 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 _UmbInputDocumentElement_instances, _UmbInputDocumentElement_pickerContext, _UmbInputDocumentElement_renderItems, _UmbInputDocumentElement_renderAddButton;
|
|
12
|
+
var _UmbInputDocumentElement_instances, _UmbInputDocumentElement_pickerContext, _UmbInputDocumentElement_pickableFilter, _UmbInputDocumentElement_openPicker, _UmbInputDocumentElement_openItem, _UmbInputDocumentElement_renderItems, _UmbInputDocumentElement_renderAddButton, _UmbInputDocumentElement_renderItem, _UmbInputDocumentElement_renderIsTrashed, _UmbInputDocumentElement_renderOpenButton;
|
|
13
13
|
import { UmbDocumentPickerContext } from './input-document.context.js';
|
|
14
14
|
import { css, html, customElement, property, state, ifDefined, repeat } from '../../../../../external/lit/index.js';
|
|
15
15
|
import { FormControlMixin } from '../../../../../external/uui/index.js';
|
|
@@ -68,6 +68,12 @@ let UmbInputDocumentElement = class UmbInputDocumentElement extends FormControlM
|
|
|
68
68
|
*/
|
|
69
69
|
this.maxMessage = 'This field exceeds the allowed amount of items';
|
|
70
70
|
_UmbInputDocumentElement_pickerContext.set(this, new UmbDocumentPickerContext(this));
|
|
71
|
+
_UmbInputDocumentElement_pickableFilter.set(this, (item) => {
|
|
72
|
+
if (this.allowedContentTypeIds && this.allowedContentTypeIds.length > 0) {
|
|
73
|
+
return this.allowedContentTypeIds.includes(item.contentTypeId);
|
|
74
|
+
}
|
|
75
|
+
return true;
|
|
76
|
+
});
|
|
71
77
|
}
|
|
72
78
|
connectedCallback() {
|
|
73
79
|
super.connectedCallback();
|
|
@@ -76,61 +82,34 @@ let UmbInputDocumentElement = class UmbInputDocumentElement extends FormControlM
|
|
|
76
82
|
this.observe(__classPrivateFieldGet(this, _UmbInputDocumentElement_pickerContext, "f").selection, (selection) => (super.value = selection.join(',')));
|
|
77
83
|
this.observe(__classPrivateFieldGet(this, _UmbInputDocumentElement_pickerContext, "f").selectedItems, (selectedItems) => (this._items = selectedItems));
|
|
78
84
|
}
|
|
79
|
-
_openPicker() {
|
|
80
|
-
// TODO: Configure the content picker, with `startNodeId`, `filter` and `ignoreUserStartNodes` [LK]
|
|
81
|
-
console.log("_openPicker", [this.startNodeId, this.filter, this.ignoreUserStartNodes]);
|
|
82
|
-
__classPrivateFieldGet(this, _UmbInputDocumentElement_pickerContext, "f").openPicker({
|
|
83
|
-
hideTreeRoot: true,
|
|
84
|
-
});
|
|
85
|
-
}
|
|
86
|
-
_openItem(item) {
|
|
87
|
-
// TODO: Implement the Content editing infinity editor. [LK]
|
|
88
|
-
console.log('TODO: _openItem', item);
|
|
89
|
-
}
|
|
90
85
|
getFormElement() {
|
|
91
86
|
return undefined;
|
|
92
87
|
}
|
|
93
88
|
render() {
|
|
94
89
|
return html ` ${__classPrivateFieldGet(this, _UmbInputDocumentElement_instances, "m", _UmbInputDocumentElement_renderItems).call(this)} ${__classPrivateFieldGet(this, _UmbInputDocumentElement_instances, "m", _UmbInputDocumentElement_renderAddButton).call(this)} `;
|
|
95
90
|
}
|
|
96
|
-
_renderItem(item) {
|
|
97
|
-
if (!item.id)
|
|
98
|
-
return;
|
|
99
|
-
return html `
|
|
100
|
-
<uui-ref-node name=${ifDefined(item.name)} detail=${ifDefined(item.id)}>
|
|
101
|
-
${this._renderIsTrashed(item)}
|
|
102
|
-
<uui-action-bar slot="actions">
|
|
103
|
-
${this._renderOpenButton(item)}
|
|
104
|
-
<uui-button
|
|
105
|
-
@click=${() => __classPrivateFieldGet(this, _UmbInputDocumentElement_pickerContext, "f").requestRemoveItem(item.id)}
|
|
106
|
-
label="Remove document ${item.name}"
|
|
107
|
-
>${this.localize.term('general_remove')}</uui-button
|
|
108
|
-
>
|
|
109
|
-
</uui-action-bar>
|
|
110
|
-
</uui-ref-node>
|
|
111
|
-
`;
|
|
112
|
-
}
|
|
113
|
-
_renderIsTrashed(item) {
|
|
114
|
-
if (!item.isTrashed)
|
|
115
|
-
return;
|
|
116
|
-
return html `<uui-tag size="s" slot="tag" color="danger">Trashed</uui-tag>`;
|
|
117
|
-
}
|
|
118
|
-
_renderOpenButton(item) {
|
|
119
|
-
if (!this.showOpenButton)
|
|
120
|
-
return;
|
|
121
|
-
return html `<uui-button @click=${() => this._openItem(item)} label="Open document ${item.name}"
|
|
122
|
-
>${this.localize.term('general_open')}</uui-button
|
|
123
|
-
>`;
|
|
124
|
-
}
|
|
125
91
|
};
|
|
126
92
|
_UmbInputDocumentElement_pickerContext = new WeakMap();
|
|
93
|
+
_UmbInputDocumentElement_pickableFilter = new WeakMap();
|
|
127
94
|
_UmbInputDocumentElement_instances = new WeakSet();
|
|
95
|
+
_UmbInputDocumentElement_openPicker = function _UmbInputDocumentElement_openPicker() {
|
|
96
|
+
// TODO: Configure the content picker, with `startNodeId` and `ignoreUserStartNodes` [LK]
|
|
97
|
+
console.log('_openPicker', [this.startNodeId, this.ignoreUserStartNodes]);
|
|
98
|
+
__classPrivateFieldGet(this, _UmbInputDocumentElement_pickerContext, "f").openPicker({
|
|
99
|
+
hideTreeRoot: true,
|
|
100
|
+
pickableFilter: __classPrivateFieldGet(this, _UmbInputDocumentElement_pickableFilter, "f"),
|
|
101
|
+
});
|
|
102
|
+
};
|
|
103
|
+
_UmbInputDocumentElement_openItem = function _UmbInputDocumentElement_openItem(item) {
|
|
104
|
+
// TODO: Implement the Content editing infinity editor. [LK]
|
|
105
|
+
console.log('TODO: _openItem', item);
|
|
106
|
+
};
|
|
128
107
|
_UmbInputDocumentElement_renderItems = function _UmbInputDocumentElement_renderItems() {
|
|
129
108
|
if (!this._items)
|
|
130
109
|
return;
|
|
131
110
|
// TODO: Add sorting. [LK]
|
|
132
111
|
return html `<uui-ref-list
|
|
133
|
-
>${repeat(this._items, (item) => item.id, (item) => this.
|
|
112
|
+
>${repeat(this._items, (item) => item.id, (item) => __classPrivateFieldGet(this, _UmbInputDocumentElement_instances, "m", _UmbInputDocumentElement_renderItem).call(this, item))}
|
|
134
113
|
</uui-ref-list>`;
|
|
135
114
|
};
|
|
136
115
|
_UmbInputDocumentElement_renderAddButton = function _UmbInputDocumentElement_renderAddButton() {
|
|
@@ -139,9 +118,38 @@ _UmbInputDocumentElement_renderAddButton = function _UmbInputDocumentElement_ren
|
|
|
139
118
|
return html `<uui-button
|
|
140
119
|
id="add-button"
|
|
141
120
|
look="placeholder"
|
|
142
|
-
@click=${this
|
|
121
|
+
@click=${__classPrivateFieldGet(this, _UmbInputDocumentElement_instances, "m", _UmbInputDocumentElement_openPicker)}
|
|
143
122
|
label=${this.localize.term('general_choose')}></uui-button>`;
|
|
144
123
|
};
|
|
124
|
+
_UmbInputDocumentElement_renderItem = function _UmbInputDocumentElement_renderItem(item) {
|
|
125
|
+
if (!item.id)
|
|
126
|
+
return;
|
|
127
|
+
return html `
|
|
128
|
+
<uui-ref-node name=${ifDefined(item.name)} detail=${ifDefined(item.id)}>
|
|
129
|
+
${__classPrivateFieldGet(this, _UmbInputDocumentElement_instances, "m", _UmbInputDocumentElement_renderIsTrashed).call(this, item)}
|
|
130
|
+
<uui-action-bar slot="actions">
|
|
131
|
+
${__classPrivateFieldGet(this, _UmbInputDocumentElement_instances, "m", _UmbInputDocumentElement_renderOpenButton).call(this, item)}
|
|
132
|
+
<uui-button
|
|
133
|
+
@click=${() => __classPrivateFieldGet(this, _UmbInputDocumentElement_pickerContext, "f").requestRemoveItem(item.id)}
|
|
134
|
+
label="Remove document ${item.name}"
|
|
135
|
+
>${this.localize.term('general_remove')}</uui-button
|
|
136
|
+
>
|
|
137
|
+
</uui-action-bar>
|
|
138
|
+
</uui-ref-node>
|
|
139
|
+
`;
|
|
140
|
+
};
|
|
141
|
+
_UmbInputDocumentElement_renderIsTrashed = function _UmbInputDocumentElement_renderIsTrashed(item) {
|
|
142
|
+
if (!item.isTrashed)
|
|
143
|
+
return;
|
|
144
|
+
return html `<uui-tag size="s" slot="tag" color="danger">Trashed</uui-tag>`;
|
|
145
|
+
};
|
|
146
|
+
_UmbInputDocumentElement_renderOpenButton = function _UmbInputDocumentElement_renderOpenButton(item) {
|
|
147
|
+
if (!this.showOpenButton)
|
|
148
|
+
return;
|
|
149
|
+
return html `<uui-button @click=${() => __classPrivateFieldGet(this, _UmbInputDocumentElement_instances, "m", _UmbInputDocumentElement_openItem).call(this, item)} label="Open document ${item.name}"
|
|
150
|
+
>${this.localize.term('general_open')}</uui-button
|
|
151
|
+
>`;
|
|
152
|
+
};
|
|
145
153
|
UmbInputDocumentElement.styles = [
|
|
146
154
|
css `
|
|
147
155
|
#add-button {
|
|
@@ -165,8 +173,8 @@ __decorate([
|
|
|
165
173
|
property({ type: String })
|
|
166
174
|
], UmbInputDocumentElement.prototype, "startNodeId", void 0);
|
|
167
175
|
__decorate([
|
|
168
|
-
property({ type:
|
|
169
|
-
], UmbInputDocumentElement.prototype, "
|
|
176
|
+
property({ type: Array })
|
|
177
|
+
], UmbInputDocumentElement.prototype, "allowedContentTypeIds", void 0);
|
|
170
178
|
__decorate([
|
|
171
179
|
property({ type: Boolean })
|
|
172
180
|
], UmbInputDocumentElement.prototype, "showOpenButton", void 0);
|
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
import { UmbLitElement } from '../../../../../shared/lit-element/index.js';
|
|
2
|
-
import type { MediaItemResponseModel } from '../../../../../external/backend-api/index.js';
|
|
3
2
|
declare const UmbInputMediaElement_base: (new (...args: any[]) => import("../../../../../external/uui/index.js").FormControlMixinInterface) & typeof UmbLitElement;
|
|
4
3
|
export declare class UmbInputMediaElement extends UmbInputMediaElement_base {
|
|
5
4
|
#private;
|
|
@@ -35,18 +34,15 @@ export declare class UmbInputMediaElement extends UmbInputMediaElement_base {
|
|
|
35
34
|
maxMessage: string;
|
|
36
35
|
get selectedIds(): Array<string>;
|
|
37
36
|
set selectedIds(ids: Array<string>);
|
|
38
|
-
|
|
37
|
+
allowedContentTypeIds?: string[] | undefined;
|
|
39
38
|
showOpenButton?: boolean;
|
|
40
39
|
ignoreUserStartNodes?: boolean;
|
|
41
40
|
set value(idsString: string);
|
|
42
41
|
private _items?;
|
|
43
42
|
constructor();
|
|
44
43
|
connectedCallback(): void;
|
|
45
|
-
protected _openPicker(): void;
|
|
46
|
-
protected _openItem(item: MediaItemResponseModel): void;
|
|
47
44
|
protected getFormElement(): undefined;
|
|
48
45
|
render(): import("lit-html").TemplateResult<1>;
|
|
49
|
-
private _renderIsTrashed;
|
|
50
46
|
static styles: import("../../../../../external/lit/index.js").CSSResult[];
|
|
51
47
|
}
|
|
52
48
|
export default UmbInputMediaElement;
|
|
@@ -9,9 +9,9 @@ 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 _UmbInputMediaElement_instances, _UmbInputMediaElement_pickerContext, _UmbInputMediaElement_renderItems,
|
|
12
|
+
var _UmbInputMediaElement_instances, _UmbInputMediaElement_pickerContext, _UmbInputMediaElement_pickableFilter, _UmbInputMediaElement_openPicker, _UmbInputMediaElement_openItem, _UmbInputMediaElement_renderItems, _UmbInputMediaElement_renderAddButton, _UmbInputMediaElement_renderItem, _UmbInputMediaElement_renderIsTrashed;
|
|
13
13
|
import { UmbMediaPickerContext } from './input-media.context.js';
|
|
14
|
-
import { css, html, customElement, property, state, ifDefined } from '../../../../../external/lit/index.js';
|
|
14
|
+
import { css, html, customElement, property, state, ifDefined, repeat } from '../../../../../external/lit/index.js';
|
|
15
15
|
import { FormControlMixin } from '../../../../../external/uui/index.js';
|
|
16
16
|
import { UmbLitElement } from '../../../../../shared/lit-element/index.js';
|
|
17
17
|
import { splitStringToArray } from '../../../../../shared/utils/index.js';
|
|
@@ -68,6 +68,15 @@ let UmbInputMediaElement = class UmbInputMediaElement extends FormControlMixin(U
|
|
|
68
68
|
*/
|
|
69
69
|
this.maxMessage = 'This field exceeds the allowed amount of items';
|
|
70
70
|
_UmbInputMediaElement_pickerContext.set(this, new UmbMediaPickerContext(this));
|
|
71
|
+
_UmbInputMediaElement_pickableFilter.set(this, (item) => {
|
|
72
|
+
/* TODO: Media item doesn't have the content/media-type ID available to query.
|
|
73
|
+
Commenting out until the Management API model is updated. [LK]
|
|
74
|
+
*/
|
|
75
|
+
// if (this.allowedContentTypeIds && this.allowedContentTypeIds.length > 0) {
|
|
76
|
+
// return this.allowedContentTypeIds.includes(item.contentTypeId);
|
|
77
|
+
// }
|
|
78
|
+
return true;
|
|
79
|
+
});
|
|
71
80
|
}
|
|
72
81
|
connectedCallback() {
|
|
73
82
|
super.connectedCallback();
|
|
@@ -76,45 +85,44 @@ let UmbInputMediaElement = class UmbInputMediaElement extends FormControlMixin(U
|
|
|
76
85
|
this.observe(__classPrivateFieldGet(this, _UmbInputMediaElement_pickerContext, "f").selection, (selection) => (super.value = selection.join(',')));
|
|
77
86
|
this.observe(__classPrivateFieldGet(this, _UmbInputMediaElement_pickerContext, "f").selectedItems, (selectedItems) => (this._items = selectedItems));
|
|
78
87
|
}
|
|
79
|
-
_openPicker() {
|
|
80
|
-
// TODO: Configure the media picker, with `filter` and `ignoreUserStartNodes` [LK]
|
|
81
|
-
console.log('_openPicker', [this.filter, this.ignoreUserStartNodes]);
|
|
82
|
-
__classPrivateFieldGet(this, _UmbInputMediaElement_pickerContext, "f").openPicker({
|
|
83
|
-
hideTreeRoot: true,
|
|
84
|
-
});
|
|
85
|
-
}
|
|
86
|
-
_openItem(item) {
|
|
87
|
-
// TODO: Implement the Content editing infinity editor. [LK]
|
|
88
|
-
console.log('TODO: _openItem', item);
|
|
89
|
-
}
|
|
90
88
|
getFormElement() {
|
|
91
89
|
return undefined;
|
|
92
90
|
}
|
|
93
91
|
render() {
|
|
94
|
-
return html ` ${__classPrivateFieldGet(this, _UmbInputMediaElement_instances, "m", _UmbInputMediaElement_renderItems).call(this)} ${__classPrivateFieldGet(this, _UmbInputMediaElement_instances, "m",
|
|
95
|
-
}
|
|
96
|
-
_renderIsTrashed(item) {
|
|
97
|
-
if (!item.isTrashed)
|
|
98
|
-
return;
|
|
99
|
-
return html `<uui-tag size="s" slot="tag" color="danger">Trashed</uui-tag>`;
|
|
92
|
+
return html ` ${__classPrivateFieldGet(this, _UmbInputMediaElement_instances, "m", _UmbInputMediaElement_renderItems).call(this)} ${__classPrivateFieldGet(this, _UmbInputMediaElement_instances, "m", _UmbInputMediaElement_renderAddButton).call(this)} `;
|
|
100
93
|
}
|
|
101
94
|
};
|
|
102
95
|
_UmbInputMediaElement_pickerContext = new WeakMap();
|
|
96
|
+
_UmbInputMediaElement_pickableFilter = new WeakMap();
|
|
103
97
|
_UmbInputMediaElement_instances = new WeakSet();
|
|
98
|
+
_UmbInputMediaElement_openPicker = function _UmbInputMediaElement_openPicker() {
|
|
99
|
+
// TODO: Configure the media picker, with `allowedContentTypeIds` and `ignoreUserStartNodes` [LK]
|
|
100
|
+
console.log('#openPicker', [this.allowedContentTypeIds, this.ignoreUserStartNodes]);
|
|
101
|
+
__classPrivateFieldGet(this, _UmbInputMediaElement_pickerContext, "f").openPicker({
|
|
102
|
+
hideTreeRoot: true,
|
|
103
|
+
pickableFilter: __classPrivateFieldGet(this, _UmbInputMediaElement_pickableFilter, "f"),
|
|
104
|
+
});
|
|
105
|
+
};
|
|
106
|
+
_UmbInputMediaElement_openItem = function _UmbInputMediaElement_openItem(item) {
|
|
107
|
+
// TODO: Implement the Media editing infinity editor. [LK]
|
|
108
|
+
console.log('TODO: _openItem', item);
|
|
109
|
+
};
|
|
104
110
|
_UmbInputMediaElement_renderItems = function _UmbInputMediaElement_renderItems() {
|
|
105
111
|
if (!this._items)
|
|
106
112
|
return;
|
|
107
113
|
// TODO: Add sorting. [LK]
|
|
108
|
-
return html `
|
|
114
|
+
return html `
|
|
115
|
+
${repeat(this._items, (item) => item.id, (item) => __classPrivateFieldGet(this, _UmbInputMediaElement_instances, "m", _UmbInputMediaElement_renderItem).call(this, item))}
|
|
116
|
+
`;
|
|
109
117
|
};
|
|
110
|
-
|
|
118
|
+
_UmbInputMediaElement_renderAddButton = function _UmbInputMediaElement_renderAddButton() {
|
|
111
119
|
if (this._items && this.max && this._items.length >= this.max)
|
|
112
120
|
return;
|
|
113
121
|
return html `
|
|
114
122
|
<uui-button
|
|
115
123
|
id="add-button"
|
|
116
124
|
look="placeholder"
|
|
117
|
-
@click=${this
|
|
125
|
+
@click=${__classPrivateFieldGet(this, _UmbInputMediaElement_instances, "m", _UmbInputMediaElement_openPicker)}
|
|
118
126
|
label=${this.localize.term('general_choose')}>
|
|
119
127
|
<uui-icon name="icon-add"></uui-icon>
|
|
120
128
|
${this.localize.term('general_choose')}
|
|
@@ -129,7 +137,7 @@ _UmbInputMediaElement_renderItem = function _UmbInputMediaElement_renderItem(ite
|
|
|
129
137
|
name=${ifDefined(item.name === null ? undefined : item.name)}
|
|
130
138
|
detail=${ifDefined(item.id)}
|
|
131
139
|
file-ext="jpg">
|
|
132
|
-
${this.
|
|
140
|
+
${__classPrivateFieldGet(this, _UmbInputMediaElement_instances, "m", _UmbInputMediaElement_renderIsTrashed).call(this, item)}
|
|
133
141
|
<uui-action-bar slot="actions">
|
|
134
142
|
<uui-button label="Copy media">
|
|
135
143
|
<uui-icon name="icon-documents"></uui-icon>
|
|
@@ -141,6 +149,11 @@ _UmbInputMediaElement_renderItem = function _UmbInputMediaElement_renderItem(ite
|
|
|
141
149
|
</uui-card-media>
|
|
142
150
|
`;
|
|
143
151
|
};
|
|
152
|
+
_UmbInputMediaElement_renderIsTrashed = function _UmbInputMediaElement_renderIsTrashed(item) {
|
|
153
|
+
if (!item.isTrashed)
|
|
154
|
+
return;
|
|
155
|
+
return html `<uui-tag size="s" slot="tag" color="danger">Trashed</uui-tag>`;
|
|
156
|
+
};
|
|
144
157
|
UmbInputMediaElement.styles = [
|
|
145
158
|
css `
|
|
146
159
|
:host {
|
|
@@ -174,8 +187,8 @@ __decorate([
|
|
|
174
187
|
property({ type: String, attribute: 'min-message' })
|
|
175
188
|
], UmbInputMediaElement.prototype, "maxMessage", void 0);
|
|
176
189
|
__decorate([
|
|
177
|
-
property({ type:
|
|
178
|
-
], UmbInputMediaElement.prototype, "
|
|
190
|
+
property({ type: Array })
|
|
191
|
+
], UmbInputMediaElement.prototype, "allowedContentTypeIds", void 0);
|
|
179
192
|
__decorate([
|
|
180
193
|
property({ type: Boolean })
|
|
181
194
|
], UmbInputMediaElement.prototype, "showOpenButton", void 0);
|
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
import { UmbLitElement } from '../../../../../shared/lit-element/index.js';
|
|
2
|
-
import type { MemberItemResponseModel } from '../../../../../external/backend-api/index.js';
|
|
3
2
|
declare const UmbInputMemberElement_base: (new (...args: any[]) => import("../../../../../external/uui/index.js").FormControlMixinInterface) & typeof UmbLitElement;
|
|
4
3
|
export declare class UmbInputMemberElement extends UmbInputMemberElement_base {
|
|
5
4
|
#private;
|
|
@@ -35,14 +34,12 @@ export declare class UmbInputMemberElement extends UmbInputMemberElement_base {
|
|
|
35
34
|
maxMessage: string;
|
|
36
35
|
get selectedIds(): Array<string>;
|
|
37
36
|
set selectedIds(ids: Array<string>);
|
|
37
|
+
allowedContentTypeIds?: string[] | undefined;
|
|
38
38
|
set value(idsString: string);
|
|
39
39
|
private _items?;
|
|
40
40
|
constructor();
|
|
41
|
-
protected _openPicker(): void;
|
|
42
|
-
protected _requestRemoveItem(item: MemberItemResponseModel): void;
|
|
43
41
|
protected getFormElement(): undefined;
|
|
44
42
|
render(): import("lit-html").TemplateResult<1>;
|
|
45
|
-
private _renderItem;
|
|
46
43
|
static styles: import("../../../../../external/lit/index.js").CSSResult[];
|
|
47
44
|
}
|
|
48
45
|
export default UmbInputMemberElement;
|