@umbraco-cms/backoffice 1.0.0-next.ba26bec7 → 1.0.0-next.bc46b74e

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.
@@ -126,7 +126,7 @@ interface MetaEntityAction {
126
126
  repositoryAlias: string;
127
127
  }
128
128
  interface ConditionsEntityAction {
129
- entityType: string;
129
+ entityTypes: Array<string>;
130
130
  }
131
131
 
132
132
  /**
@@ -383,7 +383,7 @@ interface ManifestTreeItem extends ManifestElement<UmbTreeItemExtensionElement>
383
383
  conditions: ConditionsTreeItem;
384
384
  }
385
385
  interface ConditionsTreeItem {
386
- entityType: string;
386
+ entityTypes: Array<string>;
387
387
  }
388
388
 
389
389
  interface ManifestUserProfileApp extends ManifestElement {
package/modal.d.ts CHANGED
@@ -7,9 +7,8 @@ import { UUIModalDialogElement, UUIModalSidebarElement, UUIModalSidebarSize } fr
7
7
  import { UmbControllerHostElement, UmbControllerInterface } from '@umbraco-cms/backoffice/controller';
8
8
  import { UmbContextToken } from '@umbraco-cms/backoffice/context-api';
9
9
  import { Params } from '@umbraco-cms/backoffice/router';
10
- import { UmbModalToken as UmbModalToken$1, UmbModalConfig as UmbModalConfig$1, UmbPickerModalData as UmbPickerModalData$1 } from '@umbraco-cms/backoffice/modal';
11
- import { LanguageResponseModel, UserResponseModel, FolderReponseModel } from '@umbraco-cms/backoffice/backend-api';
12
- import { UserDetails } from '@umbraco-cms/backoffice/models';
10
+ import { UmbModalToken as UmbModalToken$1, UmbModalConfig as UmbModalConfig$1, UmbPickerModalData as UmbPickerModalData$1, UmbPickerModalResult as UmbPickerModalResult$1 } from '@umbraco-cms/backoffice/modal';
11
+ import { LanguageResponseModel, UserResponseModel, FolderReponseModel, FolderTreeItemResponseModel } from '@umbraco-cms/backoffice/backend-api';
13
12
 
14
13
  declare class UmbSearchModalElement extends LitElement {
15
14
  #private;
@@ -210,10 +209,10 @@ declare const UMB_CONTEXT_DEBUGGER_MODAL: UmbModalToken$1<UmbContextDebuggerModa
210
209
 
211
210
  interface UmbDocumentPickerModalData {
212
211
  multiple?: boolean;
213
- selection?: Array<string>;
212
+ selection?: Array<string | null>;
214
213
  }
215
214
  interface UmbDocumentPickerModalResult {
216
- selection: Array<string>;
215
+ selection: Array<string | null>;
217
216
  }
218
217
  declare const UMB_DOCUMENT_PICKER_MODAL: UmbModalToken$1<UmbDocumentPickerModalData, UmbDocumentPickerModalResult>;
219
218
 
@@ -222,7 +221,7 @@ interface UmbDocumentTypePickerModalData {
222
221
  selection?: Array<string>;
223
222
  }
224
223
  interface UmbDocumentTypePickerModalResult {
225
- selection: Array<string>;
224
+ selection: Array<string | null>;
226
225
  }
227
226
  declare const UMB_DOCUMENT_TYPE_PICKER_MODAL: UmbModalToken$1<UmbDocumentTypePickerModalData, UmbDocumentTypePickerModalResult>;
228
227
 
@@ -289,11 +288,11 @@ declare const UMB_INVITE_USER_MODAL: UmbModalToken$1<object, unknown>;
289
288
 
290
289
  interface UmbLanguagePickerModalData {
291
290
  multiple?: boolean;
292
- selection?: Array<string>;
291
+ selection?: Array<string | null>;
293
292
  filter?: (language: LanguageResponseModel) => boolean;
294
293
  }
295
294
  interface UmbLanguagePickerModalResult {
296
- selection: Array<string>;
295
+ selection: Array<string | null>;
297
296
  }
298
297
  declare const UMB_LANGUAGE_PICKER_MODAL: UmbModalToken$1<UmbLanguagePickerModalData, UmbLanguagePickerModalResult>;
299
298
 
@@ -328,7 +327,7 @@ interface UmbMediaPickerModalData {
328
327
  selection: Array<string>;
329
328
  }
330
329
  interface UmbMediaPickerModalResult {
331
- selection: Array<string>;
330
+ selection: Array<string | null>;
332
331
  }
333
332
  declare const UMB_MEDIA_PICKER_MODAL: UmbModalToken$1<UmbMediaPickerModalData, UmbMediaPickerModalResult>;
334
333
 
@@ -360,9 +359,12 @@ declare const UMB_SEARCH_MODAL: UmbModalToken$1<object, unknown>;
360
359
 
361
360
  interface UmbSectionPickerModalData {
362
361
  multiple: boolean;
363
- selection: string[];
362
+ selection: Array<string | null>;
364
363
  }
365
- declare const UMB_SECTION_PICKER_MODAL: UmbModalToken$1<UmbSectionPickerModalData, unknown>;
364
+ interface UmbSectionPickerModalResult {
365
+ selection: Array<string | null>;
366
+ }
367
+ declare const UMB_SECTION_PICKER_MODAL: UmbModalToken$1<UmbSectionPickerModalData, UmbSectionPickerModalResult>;
366
368
 
367
369
  interface UmbTemplateModalData {
368
370
  id: string;
@@ -375,18 +377,18 @@ declare const UMB_TEMPLATE_MODAL: UmbModalToken$1<UmbTemplateModalData, UmbTempl
375
377
 
376
378
  interface UmbTemplatePickerModalData {
377
379
  multiple: boolean;
378
- selection: string[];
380
+ selection: Array<string | null>;
379
381
  }
380
382
  interface UmbTemplatePickerModalResult {
381
- selection: string[] | undefined;
383
+ selection: Array<string | null>;
382
384
  }
383
385
  declare const UMB_TEMPLATE_PICKER_MODAL: UmbModalToken$1<UmbTemplatePickerModalData, UmbTemplatePickerModalResult>;
384
386
 
385
- declare const UMB_USER_GROUP_PICKER_MODAL: UmbModalToken$1<UmbPickerModalData$1<UserDetails>, unknown>;
387
+ declare const UMB_USER_GROUP_PICKER_MODAL: UmbModalToken$1<UmbPickerModalData$1<any>, unknown>;
386
388
 
387
389
  type UmbUserPickerModalData = UmbPickerModalData$1<UserResponseModel>;
388
390
  interface UmbUserPickerModalResult {
389
- selection: Array<string>;
391
+ selection: Array<string | null>;
390
392
  }
391
393
  declare const UMB_USER_PICKER_MODAL: UmbModalToken$1<UmbUserPickerModalData, UmbUserPickerModalResult>;
392
394
 
@@ -399,22 +401,38 @@ interface UmbFolderModalResult {
399
401
  }
400
402
  declare const UMB_FOLDER_MODAL: UmbModalToken$1<UmbFolderModalData, UmbFolderModalResult>;
401
403
 
402
- interface UmbDataTypePickerModalData {
403
- selection?: Array<string>;
404
- multiple?: boolean;
404
+ interface UmbPartialViewPickerModalData {
405
+ multiple: boolean;
406
+ selection: string[];
405
407
  }
406
- interface UmbDataTypePickerModalResult {
407
- selection: Array<string>;
408
+ interface UmbPartialViewPickerModalResult {
409
+ selection: Array<string | null> | undefined;
408
410
  }
409
- declare const UMB_DATA_TYPE_PICKER_MODAL: UmbModalToken$1<UmbDataTypePickerModalData, UmbDataTypePickerModalResult>;
411
+ declare const UMB_PARTIAL_VIEW_PICKER_MODAL_ALIAS = "Umb.Modal.PartialViewPicker";
412
+ declare const UMB_PARTIAL_VIEW_PICKER_MODAL: UmbModalToken$1<UmbPartialViewPickerModalData, UmbPartialViewPickerModalResult>;
410
413
 
411
- interface UmbPickerModalData<T> {
414
+ interface UmbDictionaryItemPickerModalData {
412
415
  multiple: boolean;
413
- selection: Array<string>;
416
+ selection: string[];
417
+ }
418
+ interface UmbDictionaryItemPickerModalResult {
419
+ selection: Array<string | null>;
420
+ }
421
+ declare const UMB_DICTIONARY_ITEM_PICKER_MODAL_ALIAS = "Umb.Modal.DictionaryItemPicker";
422
+ declare const UMB_DICTIONARY_ITEM_PICKER_MODAL: UmbModalToken$1<UmbDictionaryItemPickerModalData, UmbDictionaryItemPickerModalResult>;
423
+
424
+ type UmbDataTypePickerModalData = UmbPickerModalData$1<FolderTreeItemResponseModel>;
425
+ type UmbDataTypePickerModalResult = UmbPickerModalResult$1;
426
+ declare const UMB_DATA_TYPE_PICKER_MODAL: UmbModalToken$1<UmbDataTypePickerModalData, UmbPickerModalResult$1>;
427
+
428
+ interface UmbPickerModalData<T> {
429
+ multiple?: boolean;
430
+ selection?: Array<string | null>;
414
431
  filter?: (item: T) => boolean;
432
+ pickableFilter?: (item: T) => boolean;
415
433
  }
416
434
  interface UmbPickerModalResult {
417
- selection: Array<string>;
435
+ selection: Array<string | null>;
418
436
  }
419
437
 
420
- export { OEmbedResult, OEmbedStatus, UMB_ALLOWED_DOCUMENT_TYPES_MODAL, UMB_CHANGE_PASSWORD_MODAL, UMB_CONFIRM_MODAL, UMB_CONTEXT_DEBUGGER_MODAL, UMB_CREATE_DICTIONARY_MODAL, UMB_CREATE_USER_MODAL, UMB_CURRENT_USER_MODAL, UMB_DATA_TYPE_PICKER_MODAL, UMB_DOCUMENT_PICKER_MODAL, UMB_DOCUMENT_TYPE_PICKER_MODAL, UMB_EMBEDDED_MEDIA_MODAL, UMB_EXAMINE_FIELDS_SETTINGS_MODAL, UMB_EXPORT_DICTIONARY_MODAL, UMB_FOLDER_MODAL, UMB_ICON_PICKER_MODAL, UMB_IMPORT_DICTIONARY_MODAL, UMB_INVITE_USER_MODAL, UMB_LANGUAGE_PICKER_MODAL, UMB_LINK_PICKER_MODAL, UMB_MEDIA_PICKER_MODAL, UMB_MODAL_CONTEXT_TOKEN, UMB_PROPERTY_EDITOR_UI_PICKER_MODAL, UMB_PROPERTY_SETTINGS_MODAL, UMB_SEARCH_MODAL, UMB_SECTION_PICKER_MODAL, UMB_TEMPLATE_MODAL, UMB_TEMPLATE_PICKER_MODAL, UMB_USER_GROUP_PICKER_MODAL, UMB_USER_PICKER_MODAL, UmbAllowedDocumentTypesModalData, UmbAllowedDocumentTypesModalResult, UmbChangePasswordModalData, UmbConfirmModalData, UmbConfirmModalResult, UmbContextDebuggerModalData, UmbCreateDictionaryModalData, UmbCreateDictionaryModalResult, UmbCreateDocumentModalResultData, UmbDataTypePickerModalData, UmbDataTypePickerModalResult, UmbDocumentPickerModalData, UmbDocumentPickerModalResult, UmbDocumentTypePickerModalData, UmbDocumentTypePickerModalResult, UmbEmbeddedMediaModalData, UmbEmbeddedMediaModalResult, UmbExamineFieldsSettingsModalData, UmbExportDictionaryModalData, UmbExportDictionaryModalResult, UmbFolderModalData, UmbFolderModalResult, UmbIconPickerModalData, UmbIconPickerModalResult, UmbImportDictionaryModalData, UmbImportDictionaryModalResult, UmbLanguagePickerModalData, UmbLanguagePickerModalResult, UmbLinkPickerConfig, UmbLinkPickerLink, UmbLinkPickerModalData, UmbLinkPickerModalResult, UmbMediaPickerModalData, UmbMediaPickerModalResult, UmbModalConfig, UmbModalContext, UmbModalHandler, UmbModalHandlerClass, UmbModalRouteBuilder, UmbModalRouteRegistration, UmbModalRouteRegistrationController, UmbModalToken, UmbModalType, UmbPickerModalData, UmbPickerModalResult, UmbPropertyEditorUIPickerModalData, UmbPropertyEditorUIPickerModalResult, UmbPropertySettingsModalResult, UmbSectionPickerModalData, UmbTemplateModalData, UmbTemplateModalResult, UmbTemplatePickerModalData, UmbTemplatePickerModalResult, UmbUserPickerModalData, UmbUserPickerModalResult };
438
+ export { OEmbedResult, OEmbedStatus, UMB_ALLOWED_DOCUMENT_TYPES_MODAL, UMB_CHANGE_PASSWORD_MODAL, UMB_CONFIRM_MODAL, UMB_CONTEXT_DEBUGGER_MODAL, UMB_CREATE_DICTIONARY_MODAL, UMB_CREATE_USER_MODAL, UMB_CURRENT_USER_MODAL, UMB_DATA_TYPE_PICKER_MODAL, UMB_DICTIONARY_ITEM_PICKER_MODAL, UMB_DICTIONARY_ITEM_PICKER_MODAL_ALIAS, UMB_DOCUMENT_PICKER_MODAL, UMB_DOCUMENT_TYPE_PICKER_MODAL, UMB_EMBEDDED_MEDIA_MODAL, UMB_EXAMINE_FIELDS_SETTINGS_MODAL, UMB_EXPORT_DICTIONARY_MODAL, UMB_FOLDER_MODAL, UMB_ICON_PICKER_MODAL, UMB_IMPORT_DICTIONARY_MODAL, UMB_INVITE_USER_MODAL, UMB_LANGUAGE_PICKER_MODAL, UMB_LINK_PICKER_MODAL, UMB_MEDIA_PICKER_MODAL, UMB_MODAL_CONTEXT_TOKEN, UMB_PARTIAL_VIEW_PICKER_MODAL, UMB_PARTIAL_VIEW_PICKER_MODAL_ALIAS, UMB_PROPERTY_EDITOR_UI_PICKER_MODAL, UMB_PROPERTY_SETTINGS_MODAL, UMB_SEARCH_MODAL, UMB_SECTION_PICKER_MODAL, UMB_TEMPLATE_MODAL, UMB_TEMPLATE_PICKER_MODAL, UMB_USER_GROUP_PICKER_MODAL, UMB_USER_PICKER_MODAL, UmbAllowedDocumentTypesModalData, UmbAllowedDocumentTypesModalResult, UmbChangePasswordModalData, UmbConfirmModalData, UmbConfirmModalResult, UmbContextDebuggerModalData, UmbCreateDictionaryModalData, UmbCreateDictionaryModalResult, UmbCreateDocumentModalResultData, UmbDataTypePickerModalData, UmbDataTypePickerModalResult, UmbDictionaryItemPickerModalData, UmbDictionaryItemPickerModalResult, UmbDocumentPickerModalData, UmbDocumentPickerModalResult, UmbDocumentTypePickerModalData, UmbDocumentTypePickerModalResult, UmbEmbeddedMediaModalData, UmbEmbeddedMediaModalResult, UmbExamineFieldsSettingsModalData, UmbExportDictionaryModalData, UmbExportDictionaryModalResult, UmbFolderModalData, UmbFolderModalResult, UmbIconPickerModalData, UmbIconPickerModalResult, UmbImportDictionaryModalData, UmbImportDictionaryModalResult, UmbLanguagePickerModalData, UmbLanguagePickerModalResult, UmbLinkPickerConfig, UmbLinkPickerLink, UmbLinkPickerModalData, UmbLinkPickerModalResult, UmbMediaPickerModalData, UmbMediaPickerModalResult, UmbModalConfig, UmbModalContext, UmbModalHandler, UmbModalHandlerClass, UmbModalRouteBuilder, UmbModalRouteRegistration, UmbModalRouteRegistrationController, UmbModalToken, UmbModalType, UmbPartialViewPickerModalData, UmbPartialViewPickerModalResult, UmbPickerModalData, UmbPickerModalResult, UmbPropertyEditorUIPickerModalData, UmbPropertyEditorUIPickerModalResult, UmbPropertySettingsModalResult, UmbSectionPickerModalData, UmbSectionPickerModalResult, UmbTemplateModalData, UmbTemplateModalResult, UmbTemplatePickerModalData, UmbTemplatePickerModalResult, UmbUserPickerModalData, UmbUserPickerModalResult };
package/models.d.ts CHANGED
@@ -1,85 +1,13 @@
1
- import { EntityTreeItemResponseModel, FolderTreeItemResponseModel, PackageManifestResponseModel } from '@umbraco-cms/backoffice/backend-api';
2
-
3
1
  type HTMLElementConstructor<T = HTMLElement> = new (...args: any[]) => T;
4
2
  type ClassConstructor<T> = new (...args: any[]) => T;
5
- interface Entity {
6
- id: string;
7
- name: string;
8
- icon: string;
9
- type: string;
10
- hasChildren: boolean;
11
- parentId: string | null;
12
- }
13
3
  /** Tried to find a common base of our entities — used by Entity Workspace Context */
14
- type BaseEntity = {
4
+ type UmbEntityBase = {
15
5
  id?: string;
16
6
  name?: string;
17
7
  };
18
- interface UserEntity extends Entity {
19
- type: 'user';
20
- }
21
- type UserStatus = 'enabled' | 'inactive' | 'invited' | 'disabled';
22
- interface UserDetails extends UserEntity {
23
- email: string;
24
- status: UserStatus;
25
- language: string;
26
- lastLoginDate?: string;
27
- lastLockoutDate?: string;
28
- lastPasswordChangeDate?: string;
29
- updateDate: string;
30
- createDate: string;
31
- failedLoginAttempts: number;
32
- userGroups: Array<string>;
33
- contentStartNodes: Array<string>;
34
- mediaStartNodes: Array<string>;
35
- }
36
- interface UserGroupEntity extends Entity {
37
- type: 'user-group';
38
- }
39
- interface UserGroupDetails extends UserGroupEntity {
40
- sections: Array<string>;
41
- contentStartNode?: string;
42
- mediaStartNode?: string;
43
- permissions: Array<string>;
44
- }
45
- interface MemberTypeDetails extends EntityTreeItemResponseModel {
46
- id: string;
47
- alias: string;
48
- properties: [];
49
- }
50
- interface MediaTypeDetails extends FolderTreeItemResponseModel {
51
- id: string;
52
- alias: string;
53
- properties: [];
54
- }
55
- interface MemberGroupDetails extends EntityTreeItemResponseModel {
56
- id: string;
57
- }
58
- interface MemberDetails extends EntityTreeItemResponseModel {
59
- id: string;
60
- }
61
- interface DocumentBlueprintDetails {
62
- id: string;
63
- name: string;
64
- type: 'document-blueprint';
65
- properties: Array<any>;
66
- data: Array<any>;
67
- icon: string;
68
- documentTypeKey: string;
69
- }
70
- interface SwatchDetails {
8
+ interface UmbSwatchDetails {
71
9
  label: string;
72
10
  value: string;
73
11
  }
74
- type UmbPackage = PackageManifestResponseModel;
75
- type PackageManifestResponse = UmbPackage[];
76
- type UmbPackageWithMigrationStatus = UmbPackage & {
77
- hasPendingMigrations: boolean;
78
- };
79
- interface UmbFilterModel {
80
- skip?: number;
81
- take?: number;
82
- filter?: string;
83
- }
84
12
 
85
- export { BaseEntity, ClassConstructor, DocumentBlueprintDetails, Entity, HTMLElementConstructor, MediaTypeDetails, MemberDetails, MemberGroupDetails, MemberTypeDetails, PackageManifestResponse, SwatchDetails, UmbFilterModel, UmbPackage, UmbPackageWithMigrationStatus, UserDetails, UserEntity, UserGroupDetails, UserGroupEntity, UserStatus };
13
+ export { ClassConstructor, HTMLElementConstructor, UmbEntityBase, UmbSwatchDetails };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@umbraco-cms/backoffice",
3
- "version": "1.0.0-next.ba26bec7",
3
+ "version": "1.0.0-next.bc46b74e",
4
4
  "license": "MIT",
5
5
  "keywords": [
6
6
  "umbraco",
package/picker-input.d.ts CHANGED
@@ -1,7 +1,7 @@
1
1
  import * as rxjs from 'rxjs';
2
2
  import { UmbItemRepository } from '@umbraco-cms/backoffice/repository';
3
3
  import { UmbControllerHostElement } from '@umbraco-cms/backoffice/controller';
4
- import { UmbModalToken, UmbModalContext } from '@umbraco-cms/backoffice/modal';
4
+ import { UmbModalToken, UmbModalContext, UmbPickerModalData } from '@umbraco-cms/backoffice/modal';
5
5
  import { ItemResponseModelBaseModel } from '@umbraco-cms/backoffice/backend-api';
6
6
 
7
7
  declare class UmbPickerInputContext<ItemType extends ItemResponseModelBaseModel> {
@@ -10,6 +10,7 @@ declare class UmbPickerInputContext<ItemType extends ItemResponseModelBaseModel>
10
10
  modalAlias: string | UmbModalToken;
11
11
  repository?: UmbItemRepository<ItemType>;
12
12
  modalContext?: UmbModalContext;
13
+ pickableFilter?: (item: ItemType) => boolean;
13
14
  selection: rxjs.Observable<string[]>;
14
15
  selectedItems: rxjs.Observable<ItemType[]>;
15
16
  max: number;
@@ -17,7 +18,7 @@ declare class UmbPickerInputContext<ItemType extends ItemResponseModelBaseModel>
17
18
  constructor(host: UmbControllerHostElement, repositoryAlias: string, modalAlias: string | UmbModalToken, getUniqueMethod?: (entry: ItemType) => string | undefined);
18
19
  getSelection(): string[];
19
20
  setSelection(selection: string[]): void;
20
- openPicker(pickerData?: any): void;
21
+ openPicker(pickerData?: Partial<UmbPickerModalData<ItemType>>): void;
21
22
  requestRemoveItem(unique: string): Promise<void>;
22
23
  }
23
24
 
package/repository.d.ts CHANGED
@@ -1,6 +1,7 @@
1
- import { ApiError, CancelError, FolderReponseModel, CreateFolderRequestModel, UpdateFolderReponseModel, ProblemDetailsModel, FolderModelBaseModel, ItemResponseModelBaseModel } from '@umbraco-cms/backoffice/backend-api';
1
+ import { ApiError, CancelError, FolderReponseModel, CreateFolderRequestModel, UpdateFolderReponseModel, TreeItemPresentationModel, ProblemDetailsModel, FolderModelBaseModel, ItemResponseModelBaseModel } from '@umbraco-cms/backoffice/backend-api';
2
2
  import { DataSourceResponse as DataSourceResponse$1, UmbDataSourceErrorResponse as UmbDataSourceErrorResponse$1 } from '@umbraco-cms/backoffice/repository';
3
3
  import { Observable } from 'rxjs';
4
+ import { UmbTreeRootModel, UmbTreeRootEntityModel } from '@umbraco-cms/backoffice/tree';
4
5
 
5
6
  interface DataSourceResponse<T = undefined> extends UmbDataSourceErrorResponse {
6
7
  data?: T;
@@ -25,47 +26,51 @@ interface UmbFolderDataSource {
25
26
  delete(unique: string): Promise<DataSourceResponse>;
26
27
  }
27
28
 
28
- interface UmbTreeDataSource<PagedItemsType = any, ItemsType = any> {
29
- getRootItems(): Promise<DataSourceResponse$1<PagedItemsType>>;
30
- getChildrenOf(parentUnique: string): Promise<DataSourceResponse$1<PagedItemsType>>;
31
- getItems(unique: Array<string>): Promise<DataSourceResponse$1<Array<ItemsType>>>;
32
- }
33
-
34
- interface UmbItemDataSource<ItemType> {
35
- getItems(unique: Array<string>): Promise<DataSourceResponse$1<Array<ItemType>>>;
36
- }
37
-
38
- interface UmbMoveDataSource {
39
- move(unique: string, targetUnique: string): Promise<UmbDataSourceErrorResponse$1>;
40
- }
41
-
42
- interface UmbCopyDataSource {
43
- copy(unique: string, targetUnique: string): Promise<DataSourceResponse$1<string>>;
44
- }
45
-
46
29
  interface UmbPagedData<T> {
47
30
  total: number;
48
31
  items: Array<T>;
49
32
  }
50
- interface UmbTreeRepository<ItemType = any, PagedItemType = UmbPagedData<ItemType>> {
33
+ interface UmbTreeRepository<TreeItemType extends TreeItemPresentationModel, TreeRootType extends UmbTreeRootModel = UmbTreeRootEntityModel> {
34
+ requestTreeRoot: () => Promise<{
35
+ data?: TreeRootType;
36
+ error?: ProblemDetailsModel;
37
+ }>;
51
38
  requestRootTreeItems: () => Promise<{
52
- data: PagedItemType | undefined;
53
- error: ProblemDetailsModel | undefined;
54
- asObservable?: () => Observable<ItemType[]>;
39
+ data?: UmbPagedData<TreeItemType>;
40
+ error?: ProblemDetailsModel;
41
+ asObservable?: () => Observable<TreeItemType[]>;
55
42
  }>;
56
43
  requestTreeItemsOf: (parentUnique: string | null) => Promise<{
57
- data: PagedItemType | undefined;
58
- error: ProblemDetailsModel | undefined;
59
- asObservable?: () => Observable<ItemType[]>;
44
+ data?: UmbPagedData<TreeItemType>;
45
+ error?: ProblemDetailsModel;
46
+ asObservable?: () => Observable<TreeItemType[]>;
60
47
  }>;
61
48
  requestItemsLegacy?: (uniques: string[]) => Promise<{
62
- data: Array<ItemType> | undefined;
63
- error: ProblemDetailsModel | undefined;
64
- asObservable?: () => Observable<ItemType[]>;
49
+ data?: Array<TreeItemType>;
50
+ error?: ProblemDetailsModel;
51
+ asObservable?: () => Observable<any[]>;
65
52
  }>;
66
- rootTreeItems: () => Promise<Observable<ItemType[]>>;
67
- treeItemsOf: (parentUnique: string | null) => Promise<Observable<ItemType[]>>;
68
- itemsLegacy?: (uniques: string[]) => Promise<Observable<ItemType[]>>;
53
+ rootTreeItems: () => Promise<Observable<TreeItemType[]>>;
54
+ treeItemsOf: (parentUnique: string | null) => Promise<Observable<TreeItemType[]>>;
55
+ itemsLegacy?: (uniques: string[]) => Promise<Observable<any[]>>;
56
+ }
57
+
58
+ interface UmbTreeDataSource<ItemType = any, PagedItemType = UmbPagedData<ItemType>> {
59
+ getRootItems(): Promise<DataSourceResponse<PagedItemType>>;
60
+ getChildrenOf(parentUnique: string | null): Promise<DataSourceResponse<PagedItemType>>;
61
+ getItems(unique: Array<string>): Promise<DataSourceResponse<Array<any>>>;
62
+ }
63
+
64
+ interface UmbItemDataSource<ItemType> {
65
+ getItems(unique: Array<string>): Promise<DataSourceResponse$1<Array<ItemType>>>;
66
+ }
67
+
68
+ interface UmbMoveDataSource {
69
+ move(unique: string, targetUnique: string | null): Promise<UmbDataSourceErrorResponse$1>;
70
+ }
71
+
72
+ interface UmbCopyDataSource {
73
+ copy(unique: string, targetUnique: string | null): Promise<DataSourceResponse$1<string>>;
69
74
  }
70
75
 
71
76
  interface UmbCollectionDataSource<ItemType = any, PagedItemType = UmbPagedData<ItemType>> {
package/section.d.ts ADDED
@@ -0,0 +1,29 @@
1
+ import * as rxjs from 'rxjs';
2
+ import { UmbContextToken } from '@umbraco-cms/backoffice/context-api';
3
+ import { UmbControllerHostElement } from '@umbraco-cms/backoffice/controller';
4
+ import { ManifestSection } from '@umbraco-cms/backoffice/extensions-registry';
5
+
6
+ declare class UmbSectionSidebarContext {
7
+ #private;
8
+ contextMenuIsOpen: rxjs.Observable<boolean>;
9
+ entityType: rxjs.Observable<string | undefined>;
10
+ unique: rxjs.Observable<string | null | undefined>;
11
+ headline: rxjs.Observable<string | undefined>;
12
+ constructor(host: UmbControllerHostElement);
13
+ toggleContextMenu(entityType: string, unique: string | null | undefined, headline: string): void;
14
+ openContextMenu(entityType: string, unique: string | null | undefined, headline: string): void;
15
+ closeContextMenu(): void;
16
+ }
17
+ declare const UMB_SECTION_SIDEBAR_CONTEXT_TOKEN: UmbContextToken<UmbSectionSidebarContext>;
18
+
19
+ declare class UmbSectionContext {
20
+ #private;
21
+ readonly alias: rxjs.Observable<string | undefined>;
22
+ readonly pathname: rxjs.Observable<string | undefined>;
23
+ readonly label: rxjs.Observable<string | undefined>;
24
+ constructor(manifest: ManifestSection);
25
+ setManifest(manifest?: ManifestSection): void;
26
+ }
27
+ declare const UMB_SECTION_CONTEXT_TOKEN: UmbContextToken<UmbSectionContext>;
28
+
29
+ export { UMB_SECTION_CONTEXT_TOKEN, UMB_SECTION_SIDEBAR_CONTEXT_TOKEN, UmbSectionContext, UmbSectionSidebarContext };
package/store.d.ts CHANGED
@@ -97,7 +97,7 @@ declare class UmbEntityTreeStore extends UmbStoreBase$1<EntityTreeItemResponseMo
97
97
  * @return {*}
98
98
  * @memberof UmbEntityTreeStore
99
99
  */
100
- items(ids: Array<string>): rxjs.Observable<EntityTreeItemResponseModel[]>;
100
+ items(ids: Array<string | null>): rxjs.Observable<EntityTreeItemResponseModel[]>;
101
101
  }
102
102
 
103
103
  /**
package/tree.d.ts ADDED
@@ -0,0 +1,136 @@
1
+ import * as _umbraco_cms_backoffice_backend_api from '@umbraco-cms/backoffice/backend-api';
2
+ import { TreeItemPresentationModel, ProblemDetailsModel } from '@umbraco-cms/backoffice/backend-api';
3
+ import * as rxjs from 'rxjs';
4
+ import { Observable } from 'rxjs';
5
+ import { UmbControllerHostElement } from '@umbraco-cms/backoffice/controller';
6
+ import { UmbPagedData as UmbPagedData$1, UmbTreeRepository } from '@umbraco-cms/backoffice/repository';
7
+ import { UmbTreeContextBase as UmbTreeContextBase$1 } from '@umbraco-cms/backoffice/tree';
8
+ import { UmbContextToken } from '@umbraco-cms/backoffice/context-api';
9
+
10
+ interface UmbTreeContext<TreeItemType extends TreeItemPresentationModel> {
11
+ readonly selectable: Observable<boolean>;
12
+ readonly selection: Observable<Array<string | null>>;
13
+ setSelectable(value: boolean): void;
14
+ getSelectable(): boolean;
15
+ setMultiple(value: boolean): void;
16
+ getMultiple(): boolean;
17
+ setSelection(value: Array<string | null>): void;
18
+ getSelection(): Array<string | null>;
19
+ select(unique: string | null): void;
20
+ deselect(unique: string | null): void;
21
+ requestChildrenOf: (parentUnique: string | null) => Promise<{
22
+ data?: UmbPagedData$1<TreeItemType>;
23
+ error?: ProblemDetailsModel;
24
+ asObservable?: () => Observable<TreeItemType[]>;
25
+ }>;
26
+ }
27
+ declare class UmbTreeContextBase<TreeItemType extends TreeItemPresentationModel> implements UmbTreeContext<TreeItemType> {
28
+ #private;
29
+ host: UmbControllerHostElement;
30
+ readonly selectable: Observable<boolean>;
31
+ readonly multiple: Observable<boolean>;
32
+ readonly selection: Observable<(string | null)[]>;
33
+ repository?: UmbTreeRepository<TreeItemType>;
34
+ selectableFilter?: (item: TreeItemType) => boolean;
35
+ constructor(host: UmbControllerHostElement);
36
+ setTreeAlias(treeAlias?: string): Promise<void>;
37
+ getTreeAlias(): string | undefined;
38
+ setSelectable(value: boolean): void;
39
+ getSelectable(): boolean;
40
+ setMultiple(value: boolean): void;
41
+ getMultiple(): boolean;
42
+ setSelection(value: Array<string | null>): void;
43
+ getSelection(): (string | null)[];
44
+ select(unique: string | null): void;
45
+ deselect(unique: string | null): void;
46
+ requestTreeRoot(): Promise<{
47
+ data?: UmbTreeRootEntityModel | undefined;
48
+ error?: ProblemDetailsModel | undefined;
49
+ }>;
50
+ requestRootItems(): Promise<{
51
+ data?: UmbPagedData$1<TreeItemType> | undefined;
52
+ error?: ProblemDetailsModel | undefined;
53
+ asObservable?: (() => Observable<TreeItemType[]>) | undefined;
54
+ }>;
55
+ requestChildrenOf(parentUnique: string | null): Promise<{
56
+ data?: UmbPagedData$1<TreeItemType> | undefined;
57
+ error?: ProblemDetailsModel | undefined;
58
+ asObservable?: (() => Observable<TreeItemType[]>) | undefined;
59
+ }>;
60
+ rootItems(): Promise<Observable<TreeItemType[]>>;
61
+ childrenOf(parentUnique: string | null): Promise<Observable<TreeItemType[]>>;
62
+ }
63
+
64
+ interface UmbPagedData<T> {
65
+ total: number;
66
+ items: Array<T>;
67
+ }
68
+
69
+ interface UmbTreeItemContext<TreeItemType extends TreeItemPresentationModel> {
70
+ host: UmbControllerHostElement;
71
+ unique?: string | null;
72
+ type?: string;
73
+ treeItem: Observable<TreeItemType | undefined>;
74
+ hasChildren: Observable<boolean>;
75
+ isLoading: Observable<boolean>;
76
+ isSelectable: Observable<boolean>;
77
+ isSelected: Observable<boolean>;
78
+ isActive: Observable<boolean>;
79
+ hasActions: Observable<boolean>;
80
+ path: Observable<string>;
81
+ setTreeItem(treeItem: TreeItemType | undefined): void;
82
+ requestChildren(): Promise<{
83
+ data?: UmbPagedData$1<TreeItemType> | undefined;
84
+ error?: ProblemDetailsModel | undefined;
85
+ asObservable?: () => Observable<TreeItemType[]>;
86
+ }>;
87
+ toggleContextMenu(): void;
88
+ select(): void;
89
+ deselect(): void;
90
+ constructPath(pathname: string, entityType: string, unique: string): string;
91
+ }
92
+
93
+ type UmbTreeItemUniqueFunction<TreeItemType extends TreeItemPresentationModel> = (x: TreeItemType) => string | null | undefined;
94
+ declare class UmbTreeItemContextBase<TreeItemType extends TreeItemPresentationModel> implements UmbTreeItemContext<TreeItemType> {
95
+ #private;
96
+ host: UmbControllerHostElement;
97
+ unique?: string | null;
98
+ type?: string;
99
+ treeItem: rxjs.Observable<TreeItemType | undefined>;
100
+ hasChildren: rxjs.Observable<boolean>;
101
+ isLoading: rxjs.Observable<boolean>;
102
+ isSelectable: rxjs.Observable<boolean>;
103
+ isSelected: rxjs.Observable<boolean>;
104
+ isActive: rxjs.Observable<boolean>;
105
+ hasActions: rxjs.Observable<boolean>;
106
+ path: rxjs.Observable<string>;
107
+ treeContext?: UmbTreeContextBase$1<TreeItemType>;
108
+ constructor(host: UmbControllerHostElement, getUniqueFunction: UmbTreeItemUniqueFunction<TreeItemType>);
109
+ setTreeItem(treeItem: TreeItemType | undefined): void;
110
+ requestChildren(): Promise<{
111
+ data?: UmbPagedData<TreeItemType> | undefined;
112
+ error?: _umbraco_cms_backoffice_backend_api.ProblemDetailsModel | undefined;
113
+ asObservable?: (() => rxjs.Observable<TreeItemType[]>) | undefined;
114
+ }>;
115
+ toggleContextMenu(): void;
116
+ select(): void;
117
+ deselect(): void;
118
+ getTreeItem(): TreeItemType | undefined;
119
+ constructPath(pathname: string, entityType: string, unique: string | null): string;
120
+ }
121
+ declare const UMB_TREE_ITEM_CONTEXT_TOKEN: UmbContextToken<UmbTreeItemContext<any>>;
122
+
123
+ interface UmbTreeRootModel {
124
+ type: string;
125
+ name: string;
126
+ hasChildren: boolean;
127
+ icon?: string;
128
+ }
129
+ interface UmbTreeRootEntityModel extends UmbTreeRootModel {
130
+ id: string | null;
131
+ }
132
+ interface UmbTreeRootFileSystemModel extends UmbTreeRootModel {
133
+ path: string | null;
134
+ }
135
+
136
+ export { UMB_TREE_ITEM_CONTEXT_TOKEN, UmbTreeContext, UmbTreeContextBase, UmbTreeItemContext, UmbTreeItemContextBase, UmbTreeItemUniqueFunction, UmbTreeRootEntityModel, UmbTreeRootFileSystemModel, UmbTreeRootModel };
@@ -675,12 +675,15 @@
675
675
  },
676
676
  "ConditionsEntityAction": {
677
677
  "properties": {
678
- "entityType": {
679
- "type": "string"
678
+ "entityTypes": {
679
+ "items": {
680
+ "type": "string"
681
+ },
682
+ "type": "array"
680
683
  }
681
684
  },
682
685
  "required": [
683
- "entityType"
686
+ "entityTypes"
684
687
  ],
685
688
  "type": "object"
686
689
  },
@@ -753,12 +756,15 @@
753
756
  },
754
757
  "ConditionsTreeItem": {
755
758
  "properties": {
756
- "entityType": {
757
- "type": "string"
759
+ "entityTypes": {
760
+ "items": {
761
+ "type": "string"
762
+ },
763
+ "type": "array"
758
764
  }
759
765
  },
760
766
  "required": [
761
- "entityType"
767
+ "entityTypes"
762
768
  ],
763
769
  "type": "object"
764
770
  },
@@ -3235,7 +3241,7 @@
3235
3241
  },
3236
3242
  "FontFaceSet": {
3237
3243
  "properties": {
3238
- "__@toStringTag@554": {
3244
+ "__@toStringTag@556": {
3239
3245
  "type": "string"
3240
3246
  },
3241
3247
  "onloading": {
@@ -3267,7 +3273,7 @@
3267
3273
  }
3268
3274
  },
3269
3275
  "required": [
3270
- "__@toStringTag@554",
3276
+ "__@toStringTag@556",
3271
3277
  "onloading",
3272
3278
  "onloadingdone",
3273
3279
  "onloadingerror",
@@ -18257,23 +18263,23 @@
18257
18263
  },
18258
18264
  "Promise<FontFaceSet>": {
18259
18265
  "properties": {
18260
- "__@toStringTag@554": {
18266
+ "__@toStringTag@556": {
18261
18267
  "type": "string"
18262
18268
  }
18263
18269
  },
18264
18270
  "required": [
18265
- "__@toStringTag@554"
18271
+ "__@toStringTag@556"
18266
18272
  ],
18267
18273
  "type": "object"
18268
18274
  },
18269
18275
  "Promise<ServiceWorkerRegistration>": {
18270
18276
  "properties": {
18271
- "__@toStringTag@554": {
18277
+ "__@toStringTag@556": {
18272
18278
  "type": "string"
18273
18279
  }
18274
18280
  },
18275
18281
  "required": [
18276
- "__@toStringTag@554"
18282
+ "__@toStringTag@556"
18277
18283
  ],
18278
18284
  "type": "object"
18279
18285
  },