@umbraco-cms/backoffice 1.0.0-next.37dcc47c → 1.0.0-next.3bcfb12e
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/README.md +9 -8
- package/backend-api.d.ts +1036 -295
- package/collection.d.ts +38 -0
- package/content-type.d.ts +127 -0
- package/context-api.d.ts +76 -6
- package/controller.d.ts +7 -6
- package/custom-elements.json +8752 -0
- package/element.d.ts +6 -6
- package/entity-action.d.ts +29 -19
- package/extensions-api.d.ts +14 -13
- package/extensions-registry.d.ts +310 -92
- package/id.d.ts +6 -0
- package/modal.d.ts +316 -31
- package/models.d.ts +7 -69
- package/notification.d.ts +1 -1
- package/observable-api.d.ts +90 -49
- package/package.json +7 -4
- package/picker-input.d.ts +25 -0
- package/repository.d.ts +114 -40
- package/resources.d.ts +11 -15
- package/router.d.ts +368 -0
- package/section.d.ts +29 -0
- package/sorter.d.ts +103 -0
- package/store.d.ts +93 -52
- package/tree.d.ts +136 -0
- package/umbraco-package-schema.json +37822 -0
- package/utils.d.ts +28 -8
- package/variant.d.ts +21 -0
- package/vscode-html-custom-data.json +3509 -0
- package/workspace.d.ts +72 -20
- package/property-editor.d.ts +0 -8
package/extensions-registry.d.ts
CHANGED
|
@@ -1,32 +1,71 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { DataTypePropertyPresentationModel, TreeItemPresentationModel } from '@umbraco-cms/backoffice/backend-api';
|
|
2
|
+
import { UmbStoreBase, UmbTreeStore, UmbItemStore } from '@umbraco-cms/backoffice/store';
|
|
2
3
|
import { InterfaceLook, InterfaceColor } from '@umbraco-ui/uui-base/lib/types/index';
|
|
3
|
-
import {
|
|
4
|
-
import {
|
|
5
|
-
import {
|
|
6
|
-
import {
|
|
4
|
+
import { ClassConstructor } from '@umbraco-cms/backoffice/models';
|
|
5
|
+
import { UmbWorkspaceAction } from '@umbraco-cms/backoffice/workspace';
|
|
6
|
+
import { UmbModalHandler } from '@umbraco-cms/backoffice/modal';
|
|
7
|
+
import { UmbExtensionRegistry } from '@umbraco-cms/backoffice/extensions-api';
|
|
8
|
+
import { UmbControllerHostElement } from '@umbraco-cms/backoffice/controller';
|
|
7
9
|
|
|
8
10
|
interface ManifestCollectionView extends ManifestElement, ManifestWithConditions<ConditionsCollectionView> {
|
|
9
11
|
type: 'collectionView';
|
|
10
12
|
meta: MetaCollectionView;
|
|
11
13
|
}
|
|
12
14
|
interface MetaCollectionView {
|
|
15
|
+
/**
|
|
16
|
+
* The friendly name of the collection view
|
|
17
|
+
*/
|
|
13
18
|
label: string;
|
|
19
|
+
/**
|
|
20
|
+
* An icon to represent the collection view
|
|
21
|
+
*
|
|
22
|
+
* @examples [
|
|
23
|
+
* "umb:box",
|
|
24
|
+
* "umb:grid"
|
|
25
|
+
* ]
|
|
26
|
+
*/
|
|
14
27
|
icon: string;
|
|
28
|
+
/**
|
|
29
|
+
* The URL pathname for this collection view that can be deep linked to by sharing the url
|
|
30
|
+
*/
|
|
15
31
|
pathName: string;
|
|
16
32
|
}
|
|
17
33
|
interface ConditionsCollectionView {
|
|
18
34
|
entityType: string;
|
|
19
35
|
}
|
|
20
36
|
|
|
21
|
-
interface ManifestDashboard extends ManifestElement
|
|
37
|
+
interface ManifestDashboard extends ManifestElement<UmbDashboardExtensionElement>, ManifestWithConditions<ConditionsDashboard> {
|
|
22
38
|
type: 'dashboard';
|
|
23
39
|
meta: MetaDashboard;
|
|
24
40
|
}
|
|
25
41
|
interface MetaDashboard {
|
|
42
|
+
/**
|
|
43
|
+
* This is the URL path for the dashboard which is used for navigating or deep linking directly to the dashboard
|
|
44
|
+
* https://yoursite.com/section/settings/dashboard/my-dashboard-path
|
|
45
|
+
*
|
|
46
|
+
* @example my-dashboard-path
|
|
47
|
+
* @examples [
|
|
48
|
+
* "my-dashboard-path"
|
|
49
|
+
* ]
|
|
50
|
+
*/
|
|
26
51
|
pathname: string;
|
|
52
|
+
/**
|
|
53
|
+
* The displayed name (label) for the tab of the dashboard
|
|
54
|
+
*/
|
|
27
55
|
label?: string;
|
|
28
56
|
}
|
|
29
57
|
interface ConditionsDashboard {
|
|
58
|
+
/**
|
|
59
|
+
* An array of section aliases that the dashboard should be available in
|
|
60
|
+
*
|
|
61
|
+
* @uniqueItems true
|
|
62
|
+
* @minItems 1
|
|
63
|
+
* @items.examples [
|
|
64
|
+
* "Umb.Section.Content",
|
|
65
|
+
* "Umb.Section.Settings"
|
|
66
|
+
* ]
|
|
67
|
+
*
|
|
68
|
+
*/
|
|
30
69
|
sections: string[];
|
|
31
70
|
}
|
|
32
71
|
|
|
@@ -45,35 +84,87 @@ interface ConditionsDashboardCollection {
|
|
|
45
84
|
entityType: string;
|
|
46
85
|
}
|
|
47
86
|
|
|
87
|
+
/**
|
|
88
|
+
* An action to perform on an entity
|
|
89
|
+
* For example for content you may wish to create a new document etc
|
|
90
|
+
*/
|
|
48
91
|
interface ManifestEntityAction extends ManifestElement {
|
|
49
92
|
type: 'entityAction';
|
|
50
93
|
meta: MetaEntityAction;
|
|
51
94
|
conditions: ConditionsEntityAction;
|
|
52
95
|
}
|
|
53
96
|
interface MetaEntityAction {
|
|
97
|
+
/**
|
|
98
|
+
* An icon to represent the action to be performed
|
|
99
|
+
*
|
|
100
|
+
* @examples [
|
|
101
|
+
* "umb:box",
|
|
102
|
+
* "umb:grid"
|
|
103
|
+
* ]
|
|
104
|
+
*/
|
|
54
105
|
icon?: string;
|
|
106
|
+
/**
|
|
107
|
+
* The friendly name of the action to perform
|
|
108
|
+
*
|
|
109
|
+
* @examples [
|
|
110
|
+
* "Create",
|
|
111
|
+
* "Create Content Template"
|
|
112
|
+
* ]
|
|
113
|
+
*/
|
|
55
114
|
label: string;
|
|
115
|
+
/**
|
|
116
|
+
* @TJS-ignore
|
|
117
|
+
*/
|
|
56
118
|
api: any;
|
|
119
|
+
/**
|
|
120
|
+
* The alias for the repsoitory of the entity type this action is for
|
|
121
|
+
* such as 'Umb.Repository.Documents'
|
|
122
|
+
* @examples [
|
|
123
|
+
* "Umb.Repository.Documents"
|
|
124
|
+
* ]
|
|
125
|
+
*/
|
|
57
126
|
repositoryAlias: string;
|
|
58
127
|
}
|
|
59
128
|
interface ConditionsEntityAction {
|
|
60
|
-
|
|
129
|
+
entityTypes: Array<string>;
|
|
61
130
|
}
|
|
62
131
|
|
|
132
|
+
/**
|
|
133
|
+
* An action to perform on multiple entities
|
|
134
|
+
* For example for content you may wish to move one or more documents in bulk
|
|
135
|
+
*/
|
|
63
136
|
interface ManifestEntityBulkAction extends ManifestElement, ManifestWithConditions<ConditionsEntityBulkAction> {
|
|
64
137
|
type: 'entityBulkAction';
|
|
65
138
|
meta: MetaEntityBulkAction;
|
|
66
139
|
}
|
|
67
140
|
interface MetaEntityBulkAction {
|
|
141
|
+
/**
|
|
142
|
+
* A friendly label for the action
|
|
143
|
+
*/
|
|
68
144
|
label: string;
|
|
145
|
+
/**
|
|
146
|
+
* @TJS-ignore
|
|
147
|
+
*/
|
|
69
148
|
api: any;
|
|
149
|
+
/**
|
|
150
|
+
* The alias for the repsoitory of the entity type this action is for
|
|
151
|
+
* such as 'Umb.Repository.Documents'
|
|
152
|
+
*
|
|
153
|
+
* @examples [
|
|
154
|
+
* "Umb.Repository.Documents"
|
|
155
|
+
* ]
|
|
156
|
+
*/
|
|
70
157
|
repositoryAlias: string;
|
|
71
158
|
}
|
|
72
159
|
interface ConditionsEntityBulkAction {
|
|
73
160
|
entityType: string;
|
|
74
161
|
}
|
|
75
162
|
|
|
76
|
-
interface
|
|
163
|
+
interface UmbExternalLoginProviderExtensionElement extends HTMLElement {
|
|
164
|
+
manifest?: ManifestExternalLoginProvider;
|
|
165
|
+
}
|
|
166
|
+
|
|
167
|
+
interface ManifestExternalLoginProvider extends ManifestElement<UmbExternalLoginProviderExtensionElement> {
|
|
77
168
|
type: 'externalLoginProvider';
|
|
78
169
|
meta: MetaExternalLoginProvider;
|
|
79
170
|
}
|
|
@@ -82,6 +173,10 @@ interface MetaExternalLoginProvider {
|
|
|
82
173
|
pathname: string;
|
|
83
174
|
}
|
|
84
175
|
|
|
176
|
+
/**
|
|
177
|
+
* Header apps are displayed in the top right corner of the backoffice
|
|
178
|
+
* The two provided header apps are the search and the user menu
|
|
179
|
+
*/
|
|
85
180
|
interface ManifestHeaderApp extends ManifestElement {
|
|
86
181
|
type: 'headerApp';
|
|
87
182
|
}
|
|
@@ -115,6 +210,51 @@ interface HealthCheck {
|
|
|
115
210
|
description: string;
|
|
116
211
|
}
|
|
117
212
|
|
|
213
|
+
interface ManifestMenu extends ManifestElement {
|
|
214
|
+
type: 'menu';
|
|
215
|
+
}
|
|
216
|
+
|
|
217
|
+
interface UmbMenuItemExtensionElement extends HTMLElement {
|
|
218
|
+
manifest?: ManifestMenuItem;
|
|
219
|
+
}
|
|
220
|
+
|
|
221
|
+
interface ManifestMenuItem extends ManifestElement<UmbMenuItemExtensionElement> {
|
|
222
|
+
type: 'menuItem';
|
|
223
|
+
meta: MetaMenuItem;
|
|
224
|
+
conditions: ConditionsMenuItem;
|
|
225
|
+
}
|
|
226
|
+
interface MetaMenuItem {
|
|
227
|
+
label: string;
|
|
228
|
+
icon: string;
|
|
229
|
+
entityType?: string;
|
|
230
|
+
}
|
|
231
|
+
interface ConditionsMenuItem {
|
|
232
|
+
menus: Array<string>;
|
|
233
|
+
}
|
|
234
|
+
interface ManifestMenuItemTreeKind extends ManifestMenuItem {
|
|
235
|
+
type: 'menuItem';
|
|
236
|
+
kind: 'tree';
|
|
237
|
+
meta: MetaMenuItemTreeKind;
|
|
238
|
+
}
|
|
239
|
+
interface MetaMenuItemTreeKind {
|
|
240
|
+
treeAlias: string;
|
|
241
|
+
label: string;
|
|
242
|
+
icon: string;
|
|
243
|
+
entityType?: string;
|
|
244
|
+
}
|
|
245
|
+
|
|
246
|
+
interface ManifestModal extends ManifestElement {
|
|
247
|
+
type: 'modal';
|
|
248
|
+
}
|
|
249
|
+
interface ManifestModalTreePickerKind extends ManifestModal {
|
|
250
|
+
type: 'modal';
|
|
251
|
+
kind: 'treePicker';
|
|
252
|
+
meta: MetaModalTreePickerKind;
|
|
253
|
+
}
|
|
254
|
+
interface MetaModalTreePickerKind {
|
|
255
|
+
treeAlias: string;
|
|
256
|
+
}
|
|
257
|
+
|
|
118
258
|
interface ManifestPackageView extends ManifestElement {
|
|
119
259
|
type: 'packageView';
|
|
120
260
|
meta: MetaPackageView;
|
|
@@ -130,7 +270,7 @@ interface ConditionsPropertyAction {
|
|
|
130
270
|
propertyEditors: string[];
|
|
131
271
|
}
|
|
132
272
|
|
|
133
|
-
interface ManifestPropertyEditorUI extends ManifestElement {
|
|
273
|
+
interface ManifestPropertyEditorUI extends ManifestElement<UmbPropertyEditorExtensionElement> {
|
|
134
274
|
type: 'propertyEditorUI';
|
|
135
275
|
meta: MetaPropertyEditorUI;
|
|
136
276
|
}
|
|
@@ -164,7 +304,11 @@ interface PropertyEditorConfigDefaultData {
|
|
|
164
304
|
value: any;
|
|
165
305
|
}
|
|
166
306
|
|
|
167
|
-
interface
|
|
307
|
+
interface ManifestRepository extends ManifestClass<unknown> {
|
|
308
|
+
type: 'repository';
|
|
309
|
+
}
|
|
310
|
+
|
|
311
|
+
interface ManifestSection extends ManifestElement<UmbSectionExtensionElement> {
|
|
168
312
|
type: 'section';
|
|
169
313
|
meta: MetaSection;
|
|
170
314
|
}
|
|
@@ -173,20 +317,11 @@ interface MetaSection {
|
|
|
173
317
|
pathname: string;
|
|
174
318
|
}
|
|
175
319
|
|
|
176
|
-
interface
|
|
177
|
-
|
|
178
|
-
meta: MetaSectionView;
|
|
179
|
-
}
|
|
180
|
-
interface MetaSectionView {
|
|
181
|
-
label: string;
|
|
182
|
-
pathname: string;
|
|
183
|
-
icon: string;
|
|
184
|
-
}
|
|
185
|
-
interface ConditionsSectionView {
|
|
186
|
-
sections: Array<string>;
|
|
320
|
+
interface UmbSectionSidebarAppExtensionElement extends HTMLElement {
|
|
321
|
+
manifest?: ManifestSectionSidebarApp;
|
|
187
322
|
}
|
|
188
323
|
|
|
189
|
-
interface ManifestSectionSidebarApp extends ManifestElement {
|
|
324
|
+
interface ManifestSectionSidebarApp extends ManifestElement<UmbSectionSidebarAppExtensionElement> {
|
|
190
325
|
type: 'sectionSidebarApp';
|
|
191
326
|
conditions: ConditionsSectionSidebarApp;
|
|
192
327
|
}
|
|
@@ -203,37 +338,43 @@ interface MetaSectionSidebarAppMenuKind {
|
|
|
203
338
|
menu: string;
|
|
204
339
|
}
|
|
205
340
|
|
|
206
|
-
interface
|
|
207
|
-
|
|
341
|
+
interface UmbSectionViewExtensionElement extends HTMLElement {
|
|
342
|
+
manifest?: ManifestSectionView;
|
|
208
343
|
}
|
|
209
344
|
|
|
210
|
-
interface
|
|
211
|
-
type: '
|
|
212
|
-
meta:
|
|
213
|
-
conditions: ConditionsMenuItem;
|
|
345
|
+
interface ManifestSectionView extends ManifestElement<UmbSectionViewExtensionElement>, ManifestWithConditions<ConditionsSectionView> {
|
|
346
|
+
type: 'sectionView';
|
|
347
|
+
meta: MetaSectionView;
|
|
214
348
|
}
|
|
215
|
-
interface
|
|
349
|
+
interface MetaSectionView {
|
|
216
350
|
label: string;
|
|
351
|
+
pathname: string;
|
|
217
352
|
icon: string;
|
|
218
|
-
entityType?: string;
|
|
219
353
|
}
|
|
220
|
-
interface
|
|
221
|
-
|
|
354
|
+
interface ConditionsSectionView {
|
|
355
|
+
sections: Array<string>;
|
|
222
356
|
}
|
|
223
|
-
|
|
224
|
-
|
|
225
|
-
|
|
226
|
-
meta: MetaMenuItemTreeKind;
|
|
357
|
+
|
|
358
|
+
interface ManifestStore extends ManifestClass<UmbStoreBase> {
|
|
359
|
+
type: 'store';
|
|
227
360
|
}
|
|
228
|
-
interface
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
|
|
361
|
+
interface ManifestTreeStore extends ManifestClass<UmbTreeStore> {
|
|
362
|
+
type: 'treeStore';
|
|
363
|
+
}
|
|
364
|
+
interface ManifestItemStore extends ManifestClass<UmbItemStore> {
|
|
365
|
+
type: 'itemStore';
|
|
233
366
|
}
|
|
234
367
|
|
|
368
|
+
/**
|
|
369
|
+
* Theme manifest for styling the backoffice of Umbraco such as dark, high contrast etc
|
|
370
|
+
*/
|
|
235
371
|
interface ManifestTheme extends ManifestWithLoader<string> {
|
|
236
372
|
type: 'theme';
|
|
373
|
+
/**
|
|
374
|
+
* File location of the CSS file of the theme
|
|
375
|
+
*
|
|
376
|
+
* @examples ["themes/dark.theme.css"]
|
|
377
|
+
*/
|
|
237
378
|
css?: string;
|
|
238
379
|
}
|
|
239
380
|
|
|
@@ -242,15 +383,22 @@ interface ManifestTree extends ManifestBase {
|
|
|
242
383
|
meta: MetaTree;
|
|
243
384
|
}
|
|
244
385
|
interface MetaTree {
|
|
245
|
-
|
|
246
|
-
repository?: ClassConstructor<unknown>;
|
|
386
|
+
repositoryAlias: string;
|
|
247
387
|
}
|
|
248
388
|
|
|
249
|
-
interface
|
|
250
|
-
type: '
|
|
251
|
-
|
|
389
|
+
interface ManifestTreeItem extends ManifestElement<UmbTreeItemExtensionElement> {
|
|
390
|
+
type: 'treeItem';
|
|
391
|
+
conditions: ConditionsTreeItem;
|
|
392
|
+
}
|
|
393
|
+
interface ConditionsTreeItem {
|
|
394
|
+
entityTypes: Array<string>;
|
|
252
395
|
}
|
|
253
|
-
|
|
396
|
+
|
|
397
|
+
interface ManifestUserProfileApp extends ManifestElement {
|
|
398
|
+
type: 'userProfileApp';
|
|
399
|
+
meta: MetaUserProfileApp;
|
|
400
|
+
}
|
|
401
|
+
interface MetaUserProfileApp {
|
|
254
402
|
label: string;
|
|
255
403
|
pathname: string;
|
|
256
404
|
}
|
|
@@ -278,62 +426,58 @@ interface ConditionsWorkspaceAction {
|
|
|
278
426
|
workspaces: Array<string>;
|
|
279
427
|
}
|
|
280
428
|
|
|
281
|
-
interface
|
|
282
|
-
|
|
283
|
-
meta: MetaWorkspaceView;
|
|
284
|
-
conditions: ConditionsWorkspaceView;
|
|
429
|
+
interface UmbWorkspaceEditorViewExtensionElement extends HTMLElement {
|
|
430
|
+
manifest?: ManifestWorkspaceEditorView;
|
|
285
431
|
}
|
|
286
|
-
|
|
287
|
-
|
|
288
|
-
|
|
289
|
-
|
|
432
|
+
|
|
433
|
+
interface ManifestWorkspaceEditorView extends ManifestWithView<UmbWorkspaceEditorViewExtensionElement> {
|
|
434
|
+
type: 'workspaceEditorView';
|
|
435
|
+
conditions: ConditionsWorkspaceView;
|
|
290
436
|
}
|
|
291
437
|
interface ConditionsWorkspaceView {
|
|
292
438
|
workspaces: string[];
|
|
293
439
|
}
|
|
294
440
|
|
|
295
|
-
interface ManifestWorkspaceViewCollection extends
|
|
441
|
+
interface ManifestWorkspaceViewCollection extends ManifestWithView, ManifestWithConditions<ConditionsEditorViewCollection> {
|
|
296
442
|
type: 'workspaceViewCollection';
|
|
297
443
|
meta: MetaEditorViewCollection;
|
|
298
444
|
}
|
|
299
|
-
interface MetaEditorViewCollection {
|
|
300
|
-
pathname: string;
|
|
301
|
-
label: string;
|
|
302
|
-
icon: string;
|
|
445
|
+
interface MetaEditorViewCollection extends MetaManifestWithView {
|
|
303
446
|
entityType: string;
|
|
304
|
-
|
|
305
|
-
repositoryAlias?: string;
|
|
447
|
+
repositoryAlias: string;
|
|
306
448
|
}
|
|
307
449
|
interface ConditionsEditorViewCollection {
|
|
308
450
|
workspaces: string[];
|
|
309
451
|
}
|
|
310
452
|
|
|
311
|
-
|
|
312
|
-
type: 'repository';
|
|
313
|
-
}
|
|
314
|
-
|
|
315
|
-
interface ManifestModal extends ManifestElement {
|
|
316
|
-
type: 'modal';
|
|
317
|
-
}
|
|
318
|
-
|
|
319
|
-
interface ManifestStore extends ManifestClass<UmbStoreBase> {
|
|
320
|
-
type: 'store';
|
|
321
|
-
}
|
|
322
|
-
interface ManifestTreeStore extends ManifestClass<UmbTreeStoreBase> {
|
|
323
|
-
type: 'treeStore';
|
|
324
|
-
}
|
|
325
|
-
|
|
326
|
-
type ManifestTypes = ManifestCollectionView | ManifestDashboard | ManifestDashboardCollection | ManifestEntityAction | ManifestEntityBulkAction | ManifestEntrypoint | ManifestExternalLoginProvider | ManifestHeaderApp | ManifestHeaderAppButtonKind | ManifestHealthCheck | ManifestPackageView | ManifestPropertyAction | ManifestPropertyEditorModel | ManifestPropertyEditorUI | ManifestRepository | ManifestSection | ManifestSectionSidebarApp | ManifestSectionSidebarAppMenuKind | ManifestSectionView | ManifestMenu | ManifestMenuItem | ManifestMenuItemTreeKind | ManifestTheme | ManifestTree | ManifestUserDashboard | ManifestWorkspace | ManifestWorkspaceAction | ManifestWorkspaceView | ManifestWorkspaceViewCollection | ManifestModal | ManifestStore | ManifestTreeStore | ManifestBase;
|
|
453
|
+
type ManifestTypes = ManifestCollectionView | ManifestDashboard | ManifestDashboardCollection | ManifestEntityAction | ManifestEntityBulkAction | ManifestEntrypoint | ManifestExternalLoginProvider | ManifestHeaderApp | ManifestHeaderAppButtonKind | ManifestHealthCheck | ManifestItemStore | ManifestMenu | ManifestMenuItem | ManifestMenuItemTreeKind | ManifestModal | ManifestModalTreePickerKind | ManifestPackageView | ManifestPropertyAction | ManifestPropertyEditorModel | ManifestPropertyEditorUI | ManifestRepository | ManifestSection | ManifestSectionSidebarApp | ManifestSectionSidebarAppMenuKind | ManifestSectionView | ManifestStore | ManifestTheme | ManifestTree | ManifestTreeItem | ManifestTreeStore | ManifestUserProfileApp | ManifestWorkspace | ManifestWorkspaceAction | ManifestWorkspaceEditorView | ManifestWorkspaceViewCollection | ManifestBase;
|
|
327
454
|
type ManifestStandardTypes = ManifestTypes['type'];
|
|
328
455
|
type ManifestTypeMap = {
|
|
329
456
|
[Manifest in ManifestTypes as Manifest['type']]: Manifest;
|
|
330
457
|
};
|
|
331
458
|
type SpecificManifestTypeOrManifestBase<T extends keyof ManifestTypeMap | string> = T extends keyof ManifestTypeMap ? ManifestTypeMap[T] : ManifestBase;
|
|
332
459
|
interface ManifestBase {
|
|
460
|
+
/**
|
|
461
|
+
* The type of extension such as dashboard etc...
|
|
462
|
+
*/
|
|
333
463
|
type: string;
|
|
464
|
+
/**
|
|
465
|
+
* The alias of the extension, ensure it is unique
|
|
466
|
+
*/
|
|
334
467
|
alias: string;
|
|
335
|
-
|
|
468
|
+
/**
|
|
469
|
+
* The kind of the extension, used to group extensions together
|
|
470
|
+
*
|
|
471
|
+
* @examples ["button"]
|
|
472
|
+
*/
|
|
473
|
+
kind?: unknown;
|
|
474
|
+
/**
|
|
475
|
+
* The friendly name of the extension
|
|
476
|
+
*/
|
|
336
477
|
name: string;
|
|
478
|
+
/**
|
|
479
|
+
* Extensions such as dashboards are ordered by weight with lower numbers being first in the list
|
|
480
|
+
*/
|
|
337
481
|
weight?: number;
|
|
338
482
|
}
|
|
339
483
|
interface ManifestKind {
|
|
@@ -344,25 +488,62 @@ interface ManifestKind {
|
|
|
344
488
|
manifest: Partial<ManifestTypes>;
|
|
345
489
|
}
|
|
346
490
|
interface ManifestWithConditions<ConditionsType> {
|
|
491
|
+
/**
|
|
492
|
+
* Set the conditions for when the extension should be loaded
|
|
493
|
+
*/
|
|
347
494
|
conditions: ConditionsType;
|
|
348
495
|
}
|
|
349
496
|
interface ManifestWithLoader<LoaderReturnType> extends ManifestBase {
|
|
497
|
+
/**
|
|
498
|
+
* @TJS-ignore
|
|
499
|
+
*/
|
|
350
500
|
loader?: () => Promise<LoaderReturnType>;
|
|
351
501
|
}
|
|
352
|
-
|
|
502
|
+
/**
|
|
503
|
+
* The type of extension such as dashboard etc...
|
|
504
|
+
*/
|
|
505
|
+
interface ManifestClass<ClassType = unknown> extends ManifestWithLoader<{
|
|
506
|
+
default: ClassConstructor<ClassType>;
|
|
507
|
+
}> {
|
|
508
|
+
readonly CLASS_TYPE?: ClassType;
|
|
509
|
+
/**
|
|
510
|
+
* The file location of the javascript file to load
|
|
511
|
+
* @TJS-required
|
|
512
|
+
*/
|
|
353
513
|
js?: string;
|
|
514
|
+
/**
|
|
515
|
+
* @TJS-ignore
|
|
516
|
+
*/
|
|
354
517
|
className?: string;
|
|
355
|
-
|
|
356
|
-
|
|
357
|
-
|
|
358
|
-
class
|
|
359
|
-
}
|
|
360
|
-
interface
|
|
518
|
+
/**
|
|
519
|
+
* @TJS-ignore
|
|
520
|
+
*/
|
|
521
|
+
class?: ClassConstructor<ClassType>;
|
|
522
|
+
}
|
|
523
|
+
interface ManifestClassWithClassConstructor<T = unknown> extends ManifestClass<T> {
|
|
524
|
+
class: ClassConstructor<T>;
|
|
525
|
+
}
|
|
526
|
+
interface ManifestElement<ElementType extends HTMLElement = HTMLElement> extends ManifestWithLoader<{
|
|
527
|
+
default: ClassConstructor<ElementType>;
|
|
528
|
+
} | Omit<object, 'default'>> {
|
|
529
|
+
readonly ELEMENT_TYPE?: ElementType;
|
|
530
|
+
/**
|
|
531
|
+
* The file location of the javascript file to load
|
|
532
|
+
*
|
|
533
|
+
* @TJS-require
|
|
534
|
+
*/
|
|
361
535
|
js?: string;
|
|
536
|
+
/**
|
|
537
|
+
* The HTML web component name to use such as 'my-dashboard'
|
|
538
|
+
* Note it is NOT <my-dashboard></my-dashboard> but just the name
|
|
539
|
+
*/
|
|
362
540
|
elementName?: string;
|
|
363
|
-
|
|
541
|
+
/**
|
|
542
|
+
* This contains properties specific to the type of extension
|
|
543
|
+
*/
|
|
544
|
+
meta?: unknown;
|
|
364
545
|
}
|
|
365
|
-
interface ManifestWithView extends ManifestElement {
|
|
546
|
+
interface ManifestWithView<ElementType extends HTMLElement = HTMLElement> extends ManifestElement<ElementType> {
|
|
366
547
|
meta: MetaManifestWithView;
|
|
367
548
|
}
|
|
368
549
|
interface MetaManifestWithView {
|
|
@@ -371,20 +552,57 @@ interface MetaManifestWithView {
|
|
|
371
552
|
icon: string;
|
|
372
553
|
}
|
|
373
554
|
interface ManifestElementWithElementName extends ManifestElement {
|
|
555
|
+
/**
|
|
556
|
+
* The HTML web component name to use such as 'my-dashboard'
|
|
557
|
+
* Note it is NOT <my-dashboard></my-dashboard> but just the name
|
|
558
|
+
*/
|
|
374
559
|
elementName: string;
|
|
375
560
|
}
|
|
376
561
|
interface ManifestWithMeta extends ManifestBase {
|
|
562
|
+
/**
|
|
563
|
+
* This contains properties specific to the type of extension
|
|
564
|
+
*/
|
|
377
565
|
meta: unknown;
|
|
378
566
|
}
|
|
567
|
+
/**
|
|
568
|
+
* This type of extension gives full control and will simply load the specified JS file
|
|
569
|
+
* You could have custom logic to decide which extensions to load/register by using extensionRegistry
|
|
570
|
+
*/
|
|
379
571
|
interface ManifestEntrypoint extends ManifestBase {
|
|
380
|
-
type: '
|
|
572
|
+
type: 'entryPoint';
|
|
573
|
+
/**
|
|
574
|
+
* The file location of the javascript file to load in the backoffice
|
|
575
|
+
*/
|
|
381
576
|
js: string;
|
|
382
577
|
}
|
|
383
578
|
|
|
579
|
+
interface UmbDashboardExtensionElement extends HTMLElement {
|
|
580
|
+
manifest?: ManifestDashboard;
|
|
581
|
+
}
|
|
582
|
+
|
|
583
|
+
interface UmbModalExtensionElement<UmbModalData extends object = object, UmbModalResult = unknown, ModalManifestType extends ManifestModal = ManifestModal> extends HTMLElement {
|
|
584
|
+
manifest?: ModalManifestType;
|
|
585
|
+
modalHandler?: UmbModalHandler<UmbModalData, UmbModalResult>;
|
|
586
|
+
data?: UmbModalData;
|
|
587
|
+
}
|
|
588
|
+
|
|
589
|
+
interface UmbPropertyEditorExtensionElement extends HTMLElement {
|
|
590
|
+
value: unknown;
|
|
591
|
+
config: DataTypePropertyPresentationModel[];
|
|
592
|
+
}
|
|
593
|
+
|
|
594
|
+
interface UmbSectionExtensionElement extends HTMLElement {
|
|
595
|
+
manifest?: ManifestSection;
|
|
596
|
+
}
|
|
597
|
+
|
|
598
|
+
interface UmbTreeItemExtensionElement extends HTMLElement {
|
|
599
|
+
item?: TreeItemPresentationModel;
|
|
600
|
+
}
|
|
601
|
+
|
|
384
602
|
declare class UmbEntryPointExtensionInitializer {
|
|
385
603
|
#private;
|
|
386
|
-
constructor(
|
|
387
|
-
instantiateEntryPoint(manifest: ManifestEntrypoint): void
|
|
604
|
+
constructor(host: UmbControllerHostElement, extensionRegistry: UmbExtensionRegistry);
|
|
605
|
+
instantiateEntryPoint(manifest: ManifestEntrypoint): Promise<void>;
|
|
388
606
|
}
|
|
389
607
|
|
|
390
|
-
export { ConditionsCollectionView, ConditionsDashboard, ConditionsDashboardCollection, ConditionsEditorViewCollection, ConditionsEntityAction, ConditionsEntityBulkAction, ConditionsMenuItem, ConditionsPropertyAction, ConditionsSectionSidebarApp, ConditionsSectionView, ConditionsWorkspaceAction, ConditionsWorkspaceView, HealthCheck, ManifestBase, ManifestClass, ManifestClassWithClassConstructor, ManifestCollectionView, ManifestDashboard, ManifestDashboardCollection, ManifestElement, ManifestElementWithElementName, ManifestEntityAction, ManifestEntityBulkAction, ManifestEntrypoint, ManifestExternalLoginProvider, ManifestHeaderApp, ManifestHeaderAppButtonKind, ManifestHealthCheck, ManifestKind, ManifestMenu, ManifestMenuItem, ManifestMenuItemTreeKind, ManifestModal, ManifestPackageView, ManifestPropertyAction, ManifestPropertyEditorModel, ManifestPropertyEditorUI, ManifestRepository, ManifestSection, ManifestSectionSidebarApp, ManifestSectionSidebarAppMenuKind, ManifestSectionView, ManifestStandardTypes, ManifestStore, ManifestTheme, ManifestTree, ManifestTreeStore, ManifestTypeMap, ManifestTypes,
|
|
608
|
+
export { ConditionsCollectionView, ConditionsDashboard, ConditionsDashboardCollection, ConditionsEditorViewCollection, ConditionsEntityAction, ConditionsEntityBulkAction, ConditionsMenuItem, ConditionsPropertyAction, ConditionsSectionSidebarApp, ConditionsSectionView, ConditionsTreeItem, ConditionsWorkspaceAction, ConditionsWorkspaceView, HealthCheck, ManifestBase, ManifestClass, ManifestClassWithClassConstructor, ManifestCollectionView, ManifestDashboard, ManifestDashboardCollection, ManifestElement, ManifestElementWithElementName, ManifestEntityAction, ManifestEntityBulkAction, ManifestEntrypoint, ManifestExternalLoginProvider, ManifestHeaderApp, ManifestHeaderAppButtonKind, ManifestHealthCheck, ManifestItemStore, ManifestKind, ManifestMenu, ManifestMenuItem, ManifestMenuItemTreeKind, ManifestModal, ManifestModalTreePickerKind, ManifestPackageView, ManifestPropertyAction, ManifestPropertyEditorModel, ManifestPropertyEditorUI, ManifestRepository, ManifestSection, ManifestSectionSidebarApp, ManifestSectionSidebarAppMenuKind, ManifestSectionView, ManifestStandardTypes, ManifestStore, ManifestTheme, ManifestTree, ManifestTreeItem, ManifestTreeStore, ManifestTypeMap, ManifestTypes, ManifestUserProfileApp, ManifestWithConditions, ManifestWithLoader, ManifestWithMeta, ManifestWithView, ManifestWorkspace, ManifestWorkspaceAction, ManifestWorkspaceEditorView, ManifestWorkspaceViewCollection, MetaCollectionView, MetaDashboard, MetaDashboardCollection, MetaEditor, MetaEditorViewCollection, MetaEntityAction, MetaEntityBulkAction, MetaExternalLoginProvider, MetaHeaderApp, MetaHeaderAppButtonKind, MetaHealthCheck, MetaManifestWithView, MetaMenuItem, MetaMenuItemTreeKind, MetaModalTreePickerKind, MetaPackageView, MetaPropertyEditorModel, MetaPropertyEditorUI, MetaSection, MetaSectionSidebarAppMenuKind, MetaSectionView, MetaTree, MetaUserProfileApp, MetaWorkspaceAction, PropertyEditorConfig, PropertyEditorConfigDefaultData, PropertyEditorConfigProperty, SpecificManifestTypeOrManifestBase, UmbDashboardExtensionElement, UmbEntryPointExtensionInitializer, UmbExternalLoginProviderExtensionElement, UmbMenuItemExtensionElement, UmbModalExtensionElement, UmbPropertyEditorExtensionElement, UmbSectionExtensionElement, UmbSectionSidebarAppExtensionElement, UmbSectionViewExtensionElement, UmbTreeItemExtensionElement, UmbWorkspaceEditorViewExtensionElement };
|