@umbraco-cms/backoffice 1.0.0-next.bf0e5e95 → 1.0.0-next.bf36c0fd
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/backend-api.d.ts +1036 -295
- package/collection.d.ts +38 -0
- package/content-type.d.ts +127 -0
- package/context-api.d.ts +72 -2
- package/controller.d.ts +3 -2
- package/custom-elements.json +5226 -4276
- package/element.d.ts +5 -5
- package/entity-action.d.ts +19 -9
- package/extensions-api.d.ts +13 -12
- package/extensions-registry.d.ts +299 -88
- package/id.d.ts +6 -0
- package/modal.d.ts +101 -361
- package/models.d.ts +7 -69
- package/notification.d.ts +1 -1
- package/observable-api.d.ts +89 -48
- package/package.json +1 -1
- package/picker-input.d.ts +25 -0
- package/repository.d.ts +114 -44
- package/resources.d.ts +24 -15
- package/router.d.ts +263 -25
- package/section.d.ts +29 -0
- package/sorter.d.ts +103 -0
- package/store.d.ts +51 -56
- 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 +2193 -1884
- package/workspace.d.ts +69 -17
- package/property-editor.d.ts +0 -8
package/extensions-registry.d.ts
CHANGED
|
@@ -1,32 +1,71 @@
|
|
|
1
|
+
import { DataTypePropertyPresentationModel, TreeItemPresentationModel } from '@umbraco-cms/backoffice/backend-api';
|
|
2
|
+
import { UmbStoreBase, UmbTreeStore, UmbItemStore } from '@umbraco-cms/backoffice/store';
|
|
1
3
|
import { InterfaceLook, InterfaceColor } from '@umbraco-ui/uui-base/lib/types/index';
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
4
|
-
import {
|
|
5
|
-
import { UmbExtensionRegistry } from '
|
|
6
|
-
import { UmbControllerHostElement } from '
|
|
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
|
|
|
@@ -245,12 +386,12 @@ interface MetaTree {
|
|
|
245
386
|
repositoryAlias: string;
|
|
246
387
|
}
|
|
247
388
|
|
|
248
|
-
interface ManifestTreeItem extends ManifestElement {
|
|
389
|
+
interface ManifestTreeItem extends ManifestElement<UmbTreeItemExtensionElement> {
|
|
249
390
|
type: 'treeItem';
|
|
250
391
|
conditions: ConditionsTreeItem;
|
|
251
392
|
}
|
|
252
393
|
interface ConditionsTreeItem {
|
|
253
|
-
|
|
394
|
+
entityTypes: Array<string>;
|
|
254
395
|
}
|
|
255
396
|
|
|
256
397
|
interface ManifestUserProfileApp extends ManifestElement {
|
|
@@ -285,62 +426,58 @@ interface ConditionsWorkspaceAction {
|
|
|
285
426
|
workspaces: Array<string>;
|
|
286
427
|
}
|
|
287
428
|
|
|
288
|
-
interface
|
|
289
|
-
|
|
290
|
-
meta: MetaWorkspaceView;
|
|
291
|
-
conditions: ConditionsWorkspaceView;
|
|
429
|
+
interface UmbWorkspaceEditorViewExtensionElement extends HTMLElement {
|
|
430
|
+
manifest?: ManifestWorkspaceEditorView;
|
|
292
431
|
}
|
|
293
|
-
|
|
294
|
-
|
|
295
|
-
|
|
296
|
-
|
|
432
|
+
|
|
433
|
+
interface ManifestWorkspaceEditorView extends ManifestWithView<UmbWorkspaceEditorViewExtensionElement> {
|
|
434
|
+
type: 'workspaceEditorView';
|
|
435
|
+
conditions: ConditionsWorkspaceView;
|
|
297
436
|
}
|
|
298
437
|
interface ConditionsWorkspaceView {
|
|
299
438
|
workspaces: string[];
|
|
300
439
|
}
|
|
301
440
|
|
|
302
|
-
interface ManifestWorkspaceViewCollection extends
|
|
441
|
+
interface ManifestWorkspaceViewCollection extends ManifestWithView, ManifestWithConditions<ConditionsEditorViewCollection> {
|
|
303
442
|
type: 'workspaceViewCollection';
|
|
304
443
|
meta: MetaEditorViewCollection;
|
|
305
444
|
}
|
|
306
|
-
interface MetaEditorViewCollection {
|
|
307
|
-
pathname: string;
|
|
308
|
-
label: string;
|
|
309
|
-
icon: string;
|
|
445
|
+
interface MetaEditorViewCollection extends MetaManifestWithView {
|
|
310
446
|
entityType: string;
|
|
311
|
-
|
|
312
|
-
repositoryAlias?: string;
|
|
447
|
+
repositoryAlias: string;
|
|
313
448
|
}
|
|
314
449
|
interface ConditionsEditorViewCollection {
|
|
315
450
|
workspaces: string[];
|
|
316
451
|
}
|
|
317
452
|
|
|
318
|
-
|
|
319
|
-
type: 'repository';
|
|
320
|
-
}
|
|
321
|
-
|
|
322
|
-
interface ManifestModal extends ManifestElement {
|
|
323
|
-
type: 'modal';
|
|
324
|
-
}
|
|
325
|
-
|
|
326
|
-
interface ManifestStore extends ManifestClass<UmbStoreBase> {
|
|
327
|
-
type: 'store';
|
|
328
|
-
}
|
|
329
|
-
interface ManifestTreeStore extends ManifestClass<UmbTreeStore> {
|
|
330
|
-
type: 'treeStore';
|
|
331
|
-
}
|
|
332
|
-
|
|
333
|
-
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 | ManifestTreeItem | ManifestUserProfileApp | 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;
|
|
334
454
|
type ManifestStandardTypes = ManifestTypes['type'];
|
|
335
455
|
type ManifestTypeMap = {
|
|
336
456
|
[Manifest in ManifestTypes as Manifest['type']]: Manifest;
|
|
337
457
|
};
|
|
338
458
|
type SpecificManifestTypeOrManifestBase<T extends keyof ManifestTypeMap | string> = T extends keyof ManifestTypeMap ? ManifestTypeMap[T] : ManifestBase;
|
|
339
459
|
interface ManifestBase {
|
|
460
|
+
/**
|
|
461
|
+
* The type of extension such as dashboard etc...
|
|
462
|
+
*/
|
|
340
463
|
type: string;
|
|
464
|
+
/**
|
|
465
|
+
* The alias of the extension, ensure it is unique
|
|
466
|
+
*/
|
|
341
467
|
alias: string;
|
|
342
|
-
|
|
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
|
+
*/
|
|
343
477
|
name: string;
|
|
478
|
+
/**
|
|
479
|
+
* Extensions such as dashboards are ordered by weight with lower numbers being first in the list
|
|
480
|
+
*/
|
|
344
481
|
weight?: number;
|
|
345
482
|
}
|
|
346
483
|
interface ManifestKind {
|
|
@@ -351,25 +488,62 @@ interface ManifestKind {
|
|
|
351
488
|
manifest: Partial<ManifestTypes>;
|
|
352
489
|
}
|
|
353
490
|
interface ManifestWithConditions<ConditionsType> {
|
|
491
|
+
/**
|
|
492
|
+
* Set the conditions for when the extension should be loaded
|
|
493
|
+
*/
|
|
354
494
|
conditions: ConditionsType;
|
|
355
495
|
}
|
|
356
496
|
interface ManifestWithLoader<LoaderReturnType> extends ManifestBase {
|
|
497
|
+
/**
|
|
498
|
+
* @TJS-ignore
|
|
499
|
+
*/
|
|
357
500
|
loader?: () => Promise<LoaderReturnType>;
|
|
358
501
|
}
|
|
359
|
-
|
|
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
|
+
*/
|
|
360
513
|
js?: string;
|
|
514
|
+
/**
|
|
515
|
+
* @TJS-ignore
|
|
516
|
+
*/
|
|
361
517
|
className?: string;
|
|
362
|
-
|
|
363
|
-
|
|
364
|
-
|
|
365
|
-
class
|
|
366
|
-
}
|
|
367
|
-
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
|
+
*/
|
|
368
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
|
+
*/
|
|
369
540
|
elementName?: string;
|
|
370
|
-
|
|
541
|
+
/**
|
|
542
|
+
* This contains properties specific to the type of extension
|
|
543
|
+
*/
|
|
544
|
+
meta?: unknown;
|
|
371
545
|
}
|
|
372
|
-
interface ManifestWithView extends ManifestElement {
|
|
546
|
+
interface ManifestWithView<ElementType extends HTMLElement = HTMLElement> extends ManifestElement<ElementType> {
|
|
373
547
|
meta: MetaManifestWithView;
|
|
374
548
|
}
|
|
375
549
|
interface MetaManifestWithView {
|
|
@@ -378,20 +552,57 @@ interface MetaManifestWithView {
|
|
|
378
552
|
icon: string;
|
|
379
553
|
}
|
|
380
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
|
+
*/
|
|
381
559
|
elementName: string;
|
|
382
560
|
}
|
|
383
561
|
interface ManifestWithMeta extends ManifestBase {
|
|
562
|
+
/**
|
|
563
|
+
* This contains properties specific to the type of extension
|
|
564
|
+
*/
|
|
384
565
|
meta: unknown;
|
|
385
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
|
+
*/
|
|
386
571
|
interface ManifestEntrypoint extends ManifestBase {
|
|
387
|
-
type: '
|
|
572
|
+
type: 'entryPoint';
|
|
573
|
+
/**
|
|
574
|
+
* The file location of the javascript file to load in the backoffice
|
|
575
|
+
*/
|
|
388
576
|
js: string;
|
|
389
577
|
}
|
|
390
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
|
+
|
|
391
602
|
declare class UmbEntryPointExtensionInitializer {
|
|
392
603
|
#private;
|
|
393
|
-
constructor(
|
|
394
|
-
instantiateEntryPoint(manifest: ManifestEntrypoint): void
|
|
604
|
+
constructor(host: UmbControllerHostElement, extensionRegistry: UmbExtensionRegistry);
|
|
605
|
+
instantiateEntryPoint(manifest: ManifestEntrypoint): Promise<void>;
|
|
395
606
|
}
|
|
396
607
|
|
|
397
|
-
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, ManifestKind, ManifestMenu, ManifestMenuItem, ManifestMenuItemTreeKind, ManifestModal, ManifestPackageView, ManifestPropertyAction, ManifestPropertyEditorModel, ManifestPropertyEditorUI, ManifestRepository, ManifestSection, ManifestSectionSidebarApp, ManifestSectionSidebarAppMenuKind, ManifestSectionView, ManifestStandardTypes, ManifestStore, ManifestTheme, ManifestTree, ManifestTreeItem, ManifestTreeStore, ManifestTypeMap, ManifestTypes, ManifestUserProfileApp, ManifestWithConditions, ManifestWithLoader, ManifestWithMeta, ManifestWithView, ManifestWorkspace, ManifestWorkspaceAction,
|
|
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 };
|