@umbraco-cms/backoffice 1.0.0-next.de0ffca0 → 1.0.0-next.e8be58ec
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 +1023 -282
- package/collection.d.ts +38 -0
- package/content-type.d.ts +127 -0
- package/context-api.d.ts +66 -6
- package/controller.d.ts +3 -2
- package/custom-elements.json +1761 -1247
- 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 +290 -88
- package/id.d.ts +6 -0
- package/modal.d.ts +50 -338
- package/models.d.ts +4 -71
- package/notification.d.ts +1 -1
- package/observable-api.d.ts +75 -49
- package/package.json +1 -1
- package/picker-input.d.ts +24 -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 +14 -0
- package/umbraco-package-schema.json +37755 -0
- package/utils.d.ts +1 -9
- package/vscode-html-custom-data.json +579 -446
- package/workspace.d.ts +40 -22
- 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,43 @@ 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
|
+
|
|
118
250
|
interface ManifestPackageView extends ManifestElement {
|
|
119
251
|
type: 'packageView';
|
|
120
252
|
meta: MetaPackageView;
|
|
@@ -130,7 +262,7 @@ interface ConditionsPropertyAction {
|
|
|
130
262
|
propertyEditors: string[];
|
|
131
263
|
}
|
|
132
264
|
|
|
133
|
-
interface ManifestPropertyEditorUI extends ManifestElement {
|
|
265
|
+
interface ManifestPropertyEditorUI extends ManifestElement<UmbPropertyEditorExtensionElement> {
|
|
134
266
|
type: 'propertyEditorUI';
|
|
135
267
|
meta: MetaPropertyEditorUI;
|
|
136
268
|
}
|
|
@@ -164,7 +296,11 @@ interface PropertyEditorConfigDefaultData {
|
|
|
164
296
|
value: any;
|
|
165
297
|
}
|
|
166
298
|
|
|
167
|
-
interface
|
|
299
|
+
interface ManifestRepository extends ManifestClass<unknown> {
|
|
300
|
+
type: 'repository';
|
|
301
|
+
}
|
|
302
|
+
|
|
303
|
+
interface ManifestSection extends ManifestElement<UmbSectionExtensionElement> {
|
|
168
304
|
type: 'section';
|
|
169
305
|
meta: MetaSection;
|
|
170
306
|
}
|
|
@@ -173,20 +309,11 @@ interface MetaSection {
|
|
|
173
309
|
pathname: string;
|
|
174
310
|
}
|
|
175
311
|
|
|
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>;
|
|
312
|
+
interface UmbSectionSidebarAppExtensionElement extends HTMLElement {
|
|
313
|
+
manifest?: ManifestSectionSidebarApp;
|
|
187
314
|
}
|
|
188
315
|
|
|
189
|
-
interface ManifestSectionSidebarApp extends ManifestElement {
|
|
316
|
+
interface ManifestSectionSidebarApp extends ManifestElement<UmbSectionSidebarAppExtensionElement> {
|
|
190
317
|
type: 'sectionSidebarApp';
|
|
191
318
|
conditions: ConditionsSectionSidebarApp;
|
|
192
319
|
}
|
|
@@ -203,37 +330,43 @@ interface MetaSectionSidebarAppMenuKind {
|
|
|
203
330
|
menu: string;
|
|
204
331
|
}
|
|
205
332
|
|
|
206
|
-
interface
|
|
207
|
-
|
|
333
|
+
interface UmbSectionViewExtensionElement extends HTMLElement {
|
|
334
|
+
manifest?: ManifestSectionView;
|
|
208
335
|
}
|
|
209
336
|
|
|
210
|
-
interface
|
|
211
|
-
type: '
|
|
212
|
-
meta:
|
|
213
|
-
conditions: ConditionsMenuItem;
|
|
337
|
+
interface ManifestSectionView extends ManifestElement<UmbSectionViewExtensionElement>, ManifestWithConditions<ConditionsSectionView> {
|
|
338
|
+
type: 'sectionView';
|
|
339
|
+
meta: MetaSectionView;
|
|
214
340
|
}
|
|
215
|
-
interface
|
|
341
|
+
interface MetaSectionView {
|
|
216
342
|
label: string;
|
|
343
|
+
pathname: string;
|
|
217
344
|
icon: string;
|
|
218
|
-
entityType?: string;
|
|
219
345
|
}
|
|
220
|
-
interface
|
|
221
|
-
|
|
346
|
+
interface ConditionsSectionView {
|
|
347
|
+
sections: Array<string>;
|
|
222
348
|
}
|
|
223
|
-
|
|
224
|
-
|
|
225
|
-
|
|
226
|
-
meta: MetaMenuItemTreeKind;
|
|
349
|
+
|
|
350
|
+
interface ManifestStore extends ManifestClass<UmbStoreBase> {
|
|
351
|
+
type: 'store';
|
|
227
352
|
}
|
|
228
|
-
interface
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
|
|
353
|
+
interface ManifestTreeStore extends ManifestClass<UmbTreeStore> {
|
|
354
|
+
type: 'treeStore';
|
|
355
|
+
}
|
|
356
|
+
interface ManifestItemStore extends ManifestClass<UmbItemStore> {
|
|
357
|
+
type: 'itemStore';
|
|
233
358
|
}
|
|
234
359
|
|
|
360
|
+
/**
|
|
361
|
+
* Theme manifest for styling the backoffice of Umbraco such as dark, high contrast etc
|
|
362
|
+
*/
|
|
235
363
|
interface ManifestTheme extends ManifestWithLoader<string> {
|
|
236
364
|
type: 'theme';
|
|
365
|
+
/**
|
|
366
|
+
* File location of the CSS file of the theme
|
|
367
|
+
*
|
|
368
|
+
* @examples ["themes/dark.theme.css"]
|
|
369
|
+
*/
|
|
237
370
|
css?: string;
|
|
238
371
|
}
|
|
239
372
|
|
|
@@ -245,12 +378,12 @@ interface MetaTree {
|
|
|
245
378
|
repositoryAlias: string;
|
|
246
379
|
}
|
|
247
380
|
|
|
248
|
-
interface ManifestTreeItem extends ManifestElement {
|
|
381
|
+
interface ManifestTreeItem extends ManifestElement<UmbTreeItemExtensionElement> {
|
|
249
382
|
type: 'treeItem';
|
|
250
383
|
conditions: ConditionsTreeItem;
|
|
251
384
|
}
|
|
252
385
|
interface ConditionsTreeItem {
|
|
253
|
-
|
|
386
|
+
entityTypes: Array<string>;
|
|
254
387
|
}
|
|
255
388
|
|
|
256
389
|
interface ManifestUserProfileApp extends ManifestElement {
|
|
@@ -285,62 +418,58 @@ interface ConditionsWorkspaceAction {
|
|
|
285
418
|
workspaces: Array<string>;
|
|
286
419
|
}
|
|
287
420
|
|
|
288
|
-
interface
|
|
289
|
-
|
|
290
|
-
meta: MetaWorkspaceView;
|
|
291
|
-
conditions: ConditionsWorkspaceView;
|
|
421
|
+
interface UmbWorkspaceEditorViewExtensionElement extends HTMLElement {
|
|
422
|
+
manifest?: ManifestWorkspaceEditorView;
|
|
292
423
|
}
|
|
293
|
-
|
|
294
|
-
|
|
295
|
-
|
|
296
|
-
|
|
424
|
+
|
|
425
|
+
interface ManifestWorkspaceEditorView extends ManifestWithView<UmbWorkspaceEditorViewExtensionElement> {
|
|
426
|
+
type: 'workspaceEditorView';
|
|
427
|
+
conditions: ConditionsWorkspaceView;
|
|
297
428
|
}
|
|
298
429
|
interface ConditionsWorkspaceView {
|
|
299
430
|
workspaces: string[];
|
|
300
431
|
}
|
|
301
432
|
|
|
302
|
-
interface ManifestWorkspaceViewCollection extends
|
|
433
|
+
interface ManifestWorkspaceViewCollection extends ManifestWithView, ManifestWithConditions<ConditionsEditorViewCollection> {
|
|
303
434
|
type: 'workspaceViewCollection';
|
|
304
435
|
meta: MetaEditorViewCollection;
|
|
305
436
|
}
|
|
306
|
-
interface MetaEditorViewCollection {
|
|
307
|
-
pathname: string;
|
|
308
|
-
label: string;
|
|
309
|
-
icon: string;
|
|
437
|
+
interface MetaEditorViewCollection extends MetaManifestWithView {
|
|
310
438
|
entityType: string;
|
|
311
|
-
|
|
312
|
-
repositoryAlias?: string;
|
|
439
|
+
repositoryAlias: string;
|
|
313
440
|
}
|
|
314
441
|
interface ConditionsEditorViewCollection {
|
|
315
442
|
workspaces: string[];
|
|
316
443
|
}
|
|
317
444
|
|
|
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;
|
|
445
|
+
type ManifestTypes = ManifestCollectionView | ManifestDashboard | ManifestDashboardCollection | ManifestEntityAction | ManifestEntityBulkAction | ManifestEntrypoint | ManifestExternalLoginProvider | ManifestHeaderApp | ManifestHeaderAppButtonKind | ManifestHealthCheck | ManifestItemStore | ManifestMenu | ManifestMenuItem | ManifestMenuItemTreeKind | ManifestModal | ManifestPackageView | ManifestPropertyAction | ManifestPropertyEditorModel | ManifestPropertyEditorUI | ManifestRepository | ManifestSection | ManifestSectionSidebarApp | ManifestSectionSidebarAppMenuKind | ManifestSectionView | ManifestStore | ManifestTheme | ManifestTree | ManifestTreeItem | ManifestTreeStore | ManifestUserProfileApp | ManifestWorkspace | ManifestWorkspaceAction | ManifestWorkspaceEditorView | ManifestWorkspaceViewCollection | ManifestBase;
|
|
334
446
|
type ManifestStandardTypes = ManifestTypes['type'];
|
|
335
447
|
type ManifestTypeMap = {
|
|
336
448
|
[Manifest in ManifestTypes as Manifest['type']]: Manifest;
|
|
337
449
|
};
|
|
338
450
|
type SpecificManifestTypeOrManifestBase<T extends keyof ManifestTypeMap | string> = T extends keyof ManifestTypeMap ? ManifestTypeMap[T] : ManifestBase;
|
|
339
451
|
interface ManifestBase {
|
|
452
|
+
/**
|
|
453
|
+
* The type of extension such as dashboard etc...
|
|
454
|
+
*/
|
|
340
455
|
type: string;
|
|
456
|
+
/**
|
|
457
|
+
* The alias of the extension, ensure it is unique
|
|
458
|
+
*/
|
|
341
459
|
alias: string;
|
|
342
|
-
|
|
460
|
+
/**
|
|
461
|
+
* The kind of the extension, used to group extensions together
|
|
462
|
+
*
|
|
463
|
+
* @examples ["button"]
|
|
464
|
+
*/
|
|
465
|
+
kind?: unknown;
|
|
466
|
+
/**
|
|
467
|
+
* The friendly name of the extension
|
|
468
|
+
*/
|
|
343
469
|
name: string;
|
|
470
|
+
/**
|
|
471
|
+
* Extensions such as dashboards are ordered by weight with lower numbers being first in the list
|
|
472
|
+
*/
|
|
344
473
|
weight?: number;
|
|
345
474
|
}
|
|
346
475
|
interface ManifestKind {
|
|
@@ -351,25 +480,62 @@ interface ManifestKind {
|
|
|
351
480
|
manifest: Partial<ManifestTypes>;
|
|
352
481
|
}
|
|
353
482
|
interface ManifestWithConditions<ConditionsType> {
|
|
483
|
+
/**
|
|
484
|
+
* Set the conditions for when the extension should be loaded
|
|
485
|
+
*/
|
|
354
486
|
conditions: ConditionsType;
|
|
355
487
|
}
|
|
356
488
|
interface ManifestWithLoader<LoaderReturnType> extends ManifestBase {
|
|
489
|
+
/**
|
|
490
|
+
* @TJS-ignore
|
|
491
|
+
*/
|
|
357
492
|
loader?: () => Promise<LoaderReturnType>;
|
|
358
493
|
}
|
|
359
|
-
|
|
494
|
+
/**
|
|
495
|
+
* The type of extension such as dashboard etc...
|
|
496
|
+
*/
|
|
497
|
+
interface ManifestClass<ClassType = unknown> extends ManifestWithLoader<{
|
|
498
|
+
default: ClassConstructor<ClassType>;
|
|
499
|
+
}> {
|
|
500
|
+
readonly CLASS_TYPE?: ClassType;
|
|
501
|
+
/**
|
|
502
|
+
* The file location of the javascript file to load
|
|
503
|
+
* @TJS-required
|
|
504
|
+
*/
|
|
360
505
|
js?: string;
|
|
506
|
+
/**
|
|
507
|
+
* @TJS-ignore
|
|
508
|
+
*/
|
|
361
509
|
className?: string;
|
|
362
|
-
|
|
363
|
-
|
|
364
|
-
|
|
365
|
-
class
|
|
366
|
-
}
|
|
367
|
-
interface
|
|
510
|
+
/**
|
|
511
|
+
* @TJS-ignore
|
|
512
|
+
*/
|
|
513
|
+
class?: ClassConstructor<ClassType>;
|
|
514
|
+
}
|
|
515
|
+
interface ManifestClassWithClassConstructor<T = unknown> extends ManifestClass<T> {
|
|
516
|
+
class: ClassConstructor<T>;
|
|
517
|
+
}
|
|
518
|
+
interface ManifestElement<ElementType extends HTMLElement = HTMLElement> extends ManifestWithLoader<{
|
|
519
|
+
default: ClassConstructor<ElementType>;
|
|
520
|
+
} | Omit<object, 'default'>> {
|
|
521
|
+
readonly ELEMENT_TYPE?: ElementType;
|
|
522
|
+
/**
|
|
523
|
+
* The file location of the javascript file to load
|
|
524
|
+
*
|
|
525
|
+
* @TJS-require
|
|
526
|
+
*/
|
|
368
527
|
js?: string;
|
|
528
|
+
/**
|
|
529
|
+
* The HTML web component name to use such as 'my-dashboard'
|
|
530
|
+
* Note it is NOT <my-dashboard></my-dashboard> but just the name
|
|
531
|
+
*/
|
|
369
532
|
elementName?: string;
|
|
370
|
-
|
|
533
|
+
/**
|
|
534
|
+
* This contains properties specific to the type of extension
|
|
535
|
+
*/
|
|
536
|
+
meta?: unknown;
|
|
371
537
|
}
|
|
372
|
-
interface ManifestWithView extends ManifestElement {
|
|
538
|
+
interface ManifestWithView<ElementType extends HTMLElement = HTMLElement> extends ManifestElement<ElementType> {
|
|
373
539
|
meta: MetaManifestWithView;
|
|
374
540
|
}
|
|
375
541
|
interface MetaManifestWithView {
|
|
@@ -378,20 +544,56 @@ interface MetaManifestWithView {
|
|
|
378
544
|
icon: string;
|
|
379
545
|
}
|
|
380
546
|
interface ManifestElementWithElementName extends ManifestElement {
|
|
547
|
+
/**
|
|
548
|
+
* The HTML web component name to use such as 'my-dashboard'
|
|
549
|
+
* Note it is NOT <my-dashboard></my-dashboard> but just the name
|
|
550
|
+
*/
|
|
381
551
|
elementName: string;
|
|
382
552
|
}
|
|
383
553
|
interface ManifestWithMeta extends ManifestBase {
|
|
554
|
+
/**
|
|
555
|
+
* This contains properties specific to the type of extension
|
|
556
|
+
*/
|
|
384
557
|
meta: unknown;
|
|
385
558
|
}
|
|
559
|
+
/**
|
|
560
|
+
* This type of extension gives full control and will simply load the specified JS file
|
|
561
|
+
* You could have custom logic to decide which extensions to load/register by using extensionRegistry
|
|
562
|
+
*/
|
|
386
563
|
interface ManifestEntrypoint extends ManifestBase {
|
|
387
|
-
type: '
|
|
564
|
+
type: 'entryPoint';
|
|
565
|
+
/**
|
|
566
|
+
* The file location of the javascript file to load in the backoffice
|
|
567
|
+
*/
|
|
388
568
|
js: string;
|
|
389
569
|
}
|
|
390
570
|
|
|
571
|
+
interface UmbDashboardExtensionElement extends HTMLElement {
|
|
572
|
+
manifest?: ManifestDashboard;
|
|
573
|
+
}
|
|
574
|
+
|
|
575
|
+
interface UmbModalExtensionElement<UmbModalData extends object = object, UmbModalResult = unknown> extends HTMLElement {
|
|
576
|
+
modalHandler?: UmbModalHandler<UmbModalData, UmbModalResult>;
|
|
577
|
+
data?: UmbModalData;
|
|
578
|
+
}
|
|
579
|
+
|
|
580
|
+
interface UmbPropertyEditorExtensionElement extends HTMLElement {
|
|
581
|
+
value: unknown;
|
|
582
|
+
config: DataTypePropertyPresentationModel[];
|
|
583
|
+
}
|
|
584
|
+
|
|
585
|
+
interface UmbSectionExtensionElement extends HTMLElement {
|
|
586
|
+
manifest?: ManifestSection;
|
|
587
|
+
}
|
|
588
|
+
|
|
589
|
+
interface UmbTreeItemExtensionElement extends HTMLElement {
|
|
590
|
+
item?: TreeItemPresentationModel;
|
|
591
|
+
}
|
|
592
|
+
|
|
391
593
|
declare class UmbEntryPointExtensionInitializer {
|
|
392
594
|
#private;
|
|
393
|
-
constructor(
|
|
394
|
-
instantiateEntryPoint(manifest: ManifestEntrypoint): void
|
|
595
|
+
constructor(host: UmbControllerHostElement, extensionRegistry: UmbExtensionRegistry);
|
|
596
|
+
instantiateEntryPoint(manifest: ManifestEntrypoint): Promise<void>;
|
|
395
597
|
}
|
|
396
598
|
|
|
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,
|
|
599
|
+
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, 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, MetaPackageView, MetaPropertyEditorModel, MetaPropertyEditorUI, MetaSection, MetaSectionSidebarAppMenuKind, MetaSectionView, MetaTree, MetaUserProfileApp, MetaWorkspaceAction, PropertyEditorConfig, PropertyEditorConfigDefaultData, PropertyEditorConfigProperty, SpecificManifestTypeOrManifestBase, UmbDashboardExtensionElement, UmbEntryPointExtensionInitializer, UmbExternalLoginProviderExtensionElement, UmbMenuItemExtensionElement, UmbModalExtensionElement, UmbPropertyEditorExtensionElement, UmbSectionExtensionElement, UmbSectionSidebarAppExtensionElement, UmbSectionViewExtensionElement, UmbTreeItemExtensionElement, UmbWorkspaceEditorViewExtensionElement };
|