@umbraco-cms/backoffice 14.0.0--preview005-7ef2bd26 → 14.0.0--preview005-44025f0f
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist-cms/libs/extension-api/controller/base-extension-initializer.controller.js +2 -2
- package/dist-cms/libs/extension-api/controller/base-extensions-initializer.controller.js +2 -2
- package/dist-cms/libs/extension-api/initializers/bundle-extension-initializer.js +1 -1
- package/dist-cms/libs/extension-api/initializers/entry-point-extension-initializer.js +1 -1
- package/dist-cms/libs/extension-api/registry/extension.registry.d.ts +41 -14
- package/dist-cms/libs/extension-api/registry/extension.registry.js +115 -145
- package/dist-cms/packages/core/components/entity-actions-bundle/entity-actions-bundle.element.js +1 -1
- package/dist-cms/packages/core/components/input-section/input-section.element.js +1 -1
- package/dist-cms/packages/core/components/input-tiny-mce/input-tiny-mce.element.js +1 -1
- package/dist-cms/packages/core/data-type/modals/data-type-picker-flow/data-type-picker-flow-modal.element.js +1 -1
- package/dist-cms/packages/core/data-type/modals/property-editor-ui-picker/property-editor-ui-picker-modal.element.js +2 -2
- package/dist-cms/packages/core/localization/components/ui-culture-input/ui-culture-input.element.js +1 -1
- package/dist-cms/packages/core/localization/registry/localization.registry.js +1 -1
- package/dist-cms/packages/core/modal/common/section-picker/section-picker-modal.element.js +2 -2
- package/dist-cms/packages/core/property-editor/uis/tiny-mce/config/toolbar/property-editor-ui-tiny-mce-toolbar-configuration.element.js +1 -1
- package/dist-cms/packages/core/themes/theme.context.js +1 -1
- package/dist-cms/packages/core/tree/tree-item-base/tree-item-base.context.js +1 -1
- package/dist-cms/packages/health-check/dashboard-health-check.element.js +1 -1
- package/dist-cms/packages/packages/package-section/views/created/created-packages-section-view.element.js +2 -2
- package/dist-cms/packages/packages/package-section/views/installed/installed-packages-section-view-item.element.js +1 -1
- package/dist-cms/packages/user/current-user/user-profile-apps/user-profile-app-themes.element.js +1 -1
- package/dist-cms/packages/user/user-group/collection/components/user-group-table-sections-column-layout.element.js +1 -1
- package/dist-cms/packages/user/user-group/components/user-group-ref/user-group-ref.element.js +1 -1
- package/dist-cms/packages/user/user-group/workspace/components/user-group-default-permission-list.element.js +1 -1
- package/dist-cms/packages/user/user-permission/components/entity-user-permission-settings-list/entity-user-permission-settings-list.element.js +1 -1
- package/dist-cms/tsconfig.build.tsbuildinfo +1 -1
- package/package.json +1 -1
|
@@ -120,7 +120,7 @@ export class UmbBaseExtensionInitializer extends UmbBaseController {
|
|
|
120
120
|
__classPrivateFieldSet(this, _UmbBaseExtensionInitializer_onPermissionChanged, onPermissionChanged, "f");
|
|
121
121
|
}
|
|
122
122
|
_init() {
|
|
123
|
-
__classPrivateFieldSet(this, _UmbBaseExtensionInitializer_manifestObserver, this.observe(__classPrivateFieldGet(this, _UmbBaseExtensionInitializer_extensionRegistry, "f").
|
|
123
|
+
__classPrivateFieldSet(this, _UmbBaseExtensionInitializer_manifestObserver, this.observe(__classPrivateFieldGet(this, _UmbBaseExtensionInitializer_extensionRegistry, "f").byAlias(__classPrivateFieldGet(this, _UmbBaseExtensionInitializer_alias, "f")), async (extensionManifest) => {
|
|
124
124
|
__classPrivateFieldGet(this, _UmbBaseExtensionInitializer_instances, "m", _UmbBaseExtensionInitializer_clearPermittedState).call(this);
|
|
125
125
|
__classPrivateFieldSet(this, _UmbBaseExtensionInitializer_manifest, extensionManifest, "f");
|
|
126
126
|
if (extensionManifest) {
|
|
@@ -197,7 +197,7 @@ _UmbBaseExtensionInitializer_promiseResolvers = new WeakMap(), _UmbBaseExtension
|
|
|
197
197
|
oldAmountOfControllers === conditionConfigs.length;
|
|
198
198
|
if (conditionConfigs.length > 0) {
|
|
199
199
|
// Observes the conditions and initialize as they come in.
|
|
200
|
-
this.observe(__classPrivateFieldGet(this, _UmbBaseExtensionInitializer_extensionRegistry, "f").
|
|
200
|
+
this.observe(__classPrivateFieldGet(this, _UmbBaseExtensionInitializer_extensionRegistry, "f").byTypeAndAliases('condition', conditionAliases), __classPrivateFieldGet(this, _UmbBaseExtensionInitializer_gotConditions, "f"), '_observeConditions');
|
|
201
201
|
}
|
|
202
202
|
else {
|
|
203
203
|
this.removeControllerByAlias('_observeConditions');
|
|
@@ -111,8 +111,8 @@ export class UmbBaseExtensionsInitializer extends UmbBaseController {
|
|
|
111
111
|
}
|
|
112
112
|
_init() {
|
|
113
113
|
let source = Array.isArray(__classPrivateFieldGet(this, _UmbBaseExtensionsInitializer_type, "f"))
|
|
114
|
-
? __classPrivateFieldGet(this, _UmbBaseExtensionsInitializer_extensionRegistry, "f").
|
|
115
|
-
: __classPrivateFieldGet(this, _UmbBaseExtensionsInitializer_extensionRegistry, "f").
|
|
114
|
+
? __classPrivateFieldGet(this, _UmbBaseExtensionsInitializer_extensionRegistry, "f").byTypes(__classPrivateFieldGet(this, _UmbBaseExtensionsInitializer_type, "f"))
|
|
115
|
+
: __classPrivateFieldGet(this, _UmbBaseExtensionsInitializer_extensionRegistry, "f").byType(__classPrivateFieldGet(this, _UmbBaseExtensionsInitializer_type, "f"));
|
|
116
116
|
if (__classPrivateFieldGet(this, _UmbBaseExtensionsInitializer_filter, "f")) {
|
|
117
117
|
source = source.pipe(map((extensions) => extensions.filter(__classPrivateFieldGet(this, _UmbBaseExtensionsInitializer_filter, "f"))));
|
|
118
118
|
}
|
|
@@ -18,7 +18,7 @@ export class UmbBundleExtensionInitializer extends UmbBaseController {
|
|
|
18
18
|
_UmbBundleExtensionInitializer_extensionRegistry.set(this, void 0);
|
|
19
19
|
_UmbBundleExtensionInitializer_bundleMap.set(this, new Map());
|
|
20
20
|
__classPrivateFieldSet(this, _UmbBundleExtensionInitializer_extensionRegistry, extensionRegistry, "f");
|
|
21
|
-
this.observe(extensionRegistry.
|
|
21
|
+
this.observe(extensionRegistry.byType('bundle'), (bundles) => {
|
|
22
22
|
// Unregister removed bundles:
|
|
23
23
|
__classPrivateFieldGet(this, _UmbBundleExtensionInitializer_bundleMap, "f").forEach((existingBundle) => {
|
|
24
24
|
if (!bundles.find((b) => b.alias === existingBundle.alias)) {
|
|
@@ -20,7 +20,7 @@ export class UmbEntryPointExtensionInitializer extends UmbBaseController {
|
|
|
20
20
|
_UmbEntryPointExtensionInitializer_entryPointMap.set(this, new Map());
|
|
21
21
|
__classPrivateFieldSet(this, _UmbEntryPointExtensionInitializer_host, host, "f");
|
|
22
22
|
__classPrivateFieldSet(this, _UmbEntryPointExtensionInitializer_extensionRegistry, extensionRegistry, "f");
|
|
23
|
-
this.observe(extensionRegistry.
|
|
23
|
+
this.observe(extensionRegistry.byType('entryPoint'), (entryPoints) => {
|
|
24
24
|
entryPoints.forEach((entryPoint) => {
|
|
25
25
|
if (__classPrivateFieldGet(this, _UmbEntryPointExtensionInitializer_entryPointMap, "f").has(entryPoint.alias))
|
|
26
26
|
return;
|
|
@@ -2,6 +2,7 @@ import type { ManifestBase, ManifestKind } from '../types/index.js';
|
|
|
2
2
|
import type { ManifestTypeMap, SpecificManifestTypeOrManifestBase } from '../types/map.types.js';
|
|
3
3
|
import type { Observable } from '../../../external/rxjs/index.js';
|
|
4
4
|
export declare class UmbExtensionRegistry<IncomingManifestTypes extends ManifestBase, ManifestTypes extends ManifestBase = IncomingManifestTypes | ManifestBase> {
|
|
5
|
+
#private;
|
|
5
6
|
readonly MANIFEST_TYPES: ManifestTypes;
|
|
6
7
|
private _extensions;
|
|
7
8
|
readonly extensions: Observable<ManifestTypes[]>;
|
|
@@ -13,33 +14,59 @@ export declare class UmbExtensionRegistry<IncomingManifestTypes extends Manifest
|
|
|
13
14
|
unregisterMany(aliases: Array<string>): void;
|
|
14
15
|
unregister(alias: string): void;
|
|
15
16
|
isRegistered(alias: string): boolean;
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
17
|
+
/**
|
|
18
|
+
* Get an observable that provides extensions matching the given alias.
|
|
19
|
+
* @param alias {string} - The alias of the extensions to get.
|
|
20
|
+
* @returns {Observable<T | undefined>} - An observable of the extension that matches the alias.
|
|
21
|
+
*/
|
|
22
|
+
byAlias<T extends ManifestBase = ManifestBase>(alias: string): Observable<T | undefined>;
|
|
23
|
+
/**
|
|
24
|
+
* @deprecated Use `byAlias` instead.
|
|
25
|
+
*/
|
|
26
|
+
getByAlias: <T extends ManifestBase = ManifestBase>(alias: string) => Observable<T | undefined>;
|
|
27
|
+
/**
|
|
28
|
+
* Get an observable that provides extensions matching the given type and alias.
|
|
29
|
+
* @param type {string} - The type of the extensions to get.
|
|
30
|
+
* @param alias {string} - The alias of the extensions to get.
|
|
31
|
+
* @returns {Observable<T | undefined>} - An observable of the extensions that matches the type and alias.
|
|
32
|
+
*/
|
|
33
|
+
byTypeAndAlias<Key extends keyof ManifestTypeMap<ManifestTypes> | string, T extends ManifestBase = SpecificManifestTypeOrManifestBase<ManifestTypes, Key>>(type: Key, alias: string): Observable<T | undefined>;
|
|
34
|
+
/**
|
|
35
|
+
* @deprecated Use `byTypeAndAlias` instead.
|
|
36
|
+
*/
|
|
37
|
+
getByTypeAndAlias: <Key extends string | number | ManifestTypes["type"], T extends ManifestBase = SpecificManifestTypeOrManifestBase<ManifestTypes, Key>>(type: Key, alias: string) => Observable<T | undefined>;
|
|
38
|
+
byTypeAndAliases<Key extends keyof ManifestTypeMap<ManifestTypes> | string, T extends ManifestBase = SpecificManifestTypeOrManifestBase<ManifestTypes, Key>>(type: Key, aliases: Array<string>): Observable<T[]>;
|
|
39
|
+
/**
|
|
40
|
+
* @deprecated Use `byTypeAndAliases` instead.
|
|
41
|
+
*/
|
|
42
|
+
getByTypeAndAliases: <Key extends string | number | ManifestTypes["type"], T extends ManifestBase = SpecificManifestTypeOrManifestBase<ManifestTypes, Key>>(type: Key, aliases: Array<string>) => Observable<T[]>;
|
|
43
|
+
/**
|
|
44
|
+
* Get an observable of extensions by type and a given filter method.
|
|
26
45
|
* This will return the all extensions that matches the type and which filter method returns true.
|
|
27
46
|
* The filter method will be called for each extension manifest of the given type, and the first argument to it is the extension manifest.
|
|
28
47
|
* @param type {string} - The type of the extension to get
|
|
29
48
|
* @param filter {(ext: T): void} - The filter method to use to filter the extensions
|
|
30
|
-
* @returns {Observable<T
|
|
49
|
+
* @returns {Observable<Array<T>>} - An observable of the extensions that matches the type and filter method
|
|
31
50
|
*/
|
|
32
|
-
byTypeAndFilter<Key extends keyof ManifestTypeMap<ManifestTypes> | string, T extends ManifestBase = SpecificManifestTypeOrManifestBase<ManifestTypes, Key>>(type: Key, filter: (ext: T) => boolean): Observable<T
|
|
51
|
+
byTypeAndFilter<Key extends keyof ManifestTypeMap<ManifestTypes> | string, T extends ManifestBase = SpecificManifestTypeOrManifestBase<ManifestTypes, Key>>(type: Key, filter: (ext: T) => boolean): Observable<T[]>;
|
|
33
52
|
/**
|
|
34
53
|
* Get an observable that provides extensions matching the given type.
|
|
35
54
|
* @param type {string} - The type of the extensions to get.
|
|
36
55
|
* @returns {Observable<T | undefined>} - An observable of the extensions that matches the type.
|
|
37
56
|
*/
|
|
38
|
-
|
|
57
|
+
byType<Key extends keyof ManifestTypeMap<ManifestTypes> | string, T extends ManifestBase = SpecificManifestTypeOrManifestBase<ManifestTypes, Key>>(type: Key): Observable<T[]>;
|
|
58
|
+
/**
|
|
59
|
+
* @deprecated Use `byType` instead.
|
|
60
|
+
*/
|
|
61
|
+
extensionsOfType: <Key extends string | number | ManifestTypes["type"], T extends ManifestBase = SpecificManifestTypeOrManifestBase<ManifestTypes, Key>>(type: Key) => Observable<T[]>;
|
|
39
62
|
/**
|
|
40
63
|
* Get an observable that provides extensions matching given types.
|
|
41
64
|
* @param type {Array<string>} - The types of the extensions to get.
|
|
42
65
|
* @returns {Observable<T | undefined>} - An observable of the extensions that matches the types.
|
|
43
66
|
*/
|
|
44
|
-
|
|
67
|
+
byTypes<ExtensionTypes extends ManifestBase = ManifestBase>(types: string[]): Observable<Array<ExtensionTypes>>;
|
|
68
|
+
/**
|
|
69
|
+
* @deprecated Use `byTypes` instead.
|
|
70
|
+
*/
|
|
71
|
+
extensionsOfTypes: <ExtensionTypes extends ManifestBase = ManifestBase>(types: string[]) => Observable<ExtensionTypes[]>;
|
|
45
72
|
}
|
|
@@ -1,3 +1,9 @@
|
|
|
1
|
+
var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (receiver, state, kind, f) {
|
|
2
|
+
if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a getter");
|
|
3
|
+
if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot read private member from an object whose class did not declare it");
|
|
4
|
+
return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
|
|
5
|
+
};
|
|
6
|
+
var _UmbExtensionRegistry_instances, _UmbExtensionRegistry_checkExtension, _UmbExtensionRegistry_kindsOfType, _UmbExtensionRegistry_extensionsOfType, _UmbExtensionRegistry_kindsOfTypes, _UmbExtensionRegistry_extensionsOfTypes, _UmbExtensionRegistry_mergeExtensionWithKinds, _UmbExtensionRegistry_mergeExtensionsWithKinds;
|
|
1
7
|
import { UmbBasicState } from '../../observable-api/index.js';
|
|
2
8
|
import { map, distinctUntilChanged, combineLatest, of, switchMap } from '../../../external/rxjs/index.js';
|
|
3
9
|
function extensionArrayMemoization(previousValue, currentValue) {
|
|
@@ -48,11 +54,32 @@ function extensionAndKindMatchSingleMemoization(previousValue, currentValue) {
|
|
|
48
54
|
const sortExtensions = (a, b) => (b.weight || 0) - (a.weight || 0);
|
|
49
55
|
export class UmbExtensionRegistry {
|
|
50
56
|
constructor() {
|
|
57
|
+
_UmbExtensionRegistry_instances.add(this);
|
|
51
58
|
this.MANIFEST_TYPES = undefined;
|
|
52
59
|
this._extensions = new UmbBasicState([]);
|
|
53
60
|
this.extensions = this._extensions.asObservable();
|
|
54
61
|
this._kinds = new UmbBasicState([]);
|
|
55
62
|
this.kinds = this._kinds.asObservable();
|
|
63
|
+
/**
|
|
64
|
+
* @deprecated Use `byAlias` instead.
|
|
65
|
+
*/
|
|
66
|
+
this.getByAlias = this.byAlias.bind(this);
|
|
67
|
+
/**
|
|
68
|
+
* @deprecated Use `byTypeAndAlias` instead.
|
|
69
|
+
*/
|
|
70
|
+
this.getByTypeAndAlias = this.byTypeAndAlias.bind(this);
|
|
71
|
+
/**
|
|
72
|
+
* @deprecated Use `byTypeAndAliases` instead.
|
|
73
|
+
*/
|
|
74
|
+
this.getByTypeAndAliases = this.byTypeAndAliases.bind(this);
|
|
75
|
+
/**
|
|
76
|
+
* @deprecated Use `byType` instead.
|
|
77
|
+
*/
|
|
78
|
+
this.extensionsOfType = this.byType.bind(this);
|
|
79
|
+
/**
|
|
80
|
+
* @deprecated Use `byTypes` instead.
|
|
81
|
+
*/
|
|
82
|
+
this.extensionsOfTypes = this.byTypes.bind(this);
|
|
56
83
|
}
|
|
57
84
|
defineKind(kind) {
|
|
58
85
|
const extensionsValues = this._extensions.getValue();
|
|
@@ -69,7 +96,7 @@ export class UmbExtensionRegistry {
|
|
|
69
96
|
this._kinds.setValue(nextData);
|
|
70
97
|
}
|
|
71
98
|
register(manifest) {
|
|
72
|
-
const isValid = this.
|
|
99
|
+
const isValid = __classPrivateFieldGet(this, _UmbExtensionRegistry_instances, "m", _UmbExtensionRegistry_checkExtension).call(this, manifest);
|
|
73
100
|
if (!isValid) {
|
|
74
101
|
return;
|
|
75
102
|
}
|
|
@@ -97,181 +124,124 @@ export class UmbExtensionRegistry {
|
|
|
97
124
|
}
|
|
98
125
|
return false;
|
|
99
126
|
}
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
checkExtension(manifest) {
|
|
107
|
-
if (!manifest.type) {
|
|
108
|
-
console.error(`Extension is missing type`, manifest);
|
|
109
|
-
return false;
|
|
110
|
-
}
|
|
111
|
-
if (!manifest.alias) {
|
|
112
|
-
console.error(`Extension is missing alias`, manifest);
|
|
113
|
-
return false;
|
|
114
|
-
}
|
|
115
|
-
if (manifest.type === 'kind') {
|
|
116
|
-
this.defineKind(manifest);
|
|
117
|
-
return false;
|
|
118
|
-
}
|
|
119
|
-
const extensionsValues = this._extensions.getValue();
|
|
120
|
-
const extension = extensionsValues.find((extension) => extension.alias === manifest.alias);
|
|
121
|
-
if (extension) {
|
|
122
|
-
console.error(`Extension with alias ${manifest.alias} is already registered`);
|
|
123
|
-
return false;
|
|
124
|
-
}
|
|
125
|
-
return true;
|
|
126
|
-
}
|
|
127
|
-
_kindsOfType(type) {
|
|
128
|
-
return this.kinds.pipe(map((kinds) => kinds.filter((kind) => kind.matchType === type)), distinctUntilChanged(extensionArrayMemoization));
|
|
129
|
-
}
|
|
130
|
-
_extensionsOfType(type) {
|
|
131
|
-
return this.extensions.pipe(map((exts) => exts.filter((ext) => ext.type === type)), distinctUntilChanged(extensionArrayMemoization));
|
|
132
|
-
}
|
|
133
|
-
_kindsOfTypes(types) {
|
|
134
|
-
return this.kinds.pipe(map((kinds) => kinds.filter((kind) => types.indexOf(kind.matchType) !== -1)), distinctUntilChanged(extensionArrayMemoization));
|
|
135
|
-
}
|
|
136
|
-
// TODO: can we get rid of as unknown here
|
|
137
|
-
_extensionsOfTypes(types) {
|
|
138
|
-
return this.extensions.pipe(map((exts) => exts.filter((ext) => types.indexOf(ext.type) !== -1)), distinctUntilChanged(extensionArrayMemoization));
|
|
139
|
-
}
|
|
140
|
-
// TODO: get rid of the name get
|
|
141
|
-
getByAlias(alias) {
|
|
127
|
+
/**
|
|
128
|
+
* Get an observable that provides extensions matching the given alias.
|
|
129
|
+
* @param alias {string} - The alias of the extensions to get.
|
|
130
|
+
* @returns {Observable<T | undefined>} - An observable of the extension that matches the alias.
|
|
131
|
+
*/
|
|
132
|
+
byAlias(alias) {
|
|
142
133
|
return this.extensions.pipe(map((exts) => exts.find((ext) => ext.alias === alias)), distinctUntilChanged(extensionSingleMemoization), switchMap((ext) => {
|
|
143
134
|
if (ext?.kind) {
|
|
144
|
-
return this.
|
|
145
|
-
// Specific Extension Meta merge (does not merge conditions)
|
|
146
|
-
if (ext) {
|
|
147
|
-
// Since we dont have the type up front in this request, we will just get all kinds here and find the matching one:
|
|
148
|
-
const baseManifest = kinds.find((kind) => kind.matchKind === ext.kind)?.manifest;
|
|
149
|
-
// TODO: This check can go away when making a find kind based on type and kind.
|
|
150
|
-
if (baseManifest) {
|
|
151
|
-
const merged = { __isMatchedWithKind: true, ...baseManifest, ...ext };
|
|
152
|
-
if (baseManifest.meta) {
|
|
153
|
-
merged.meta = { ...baseManifest.meta, ...ext.meta };
|
|
154
|
-
}
|
|
155
|
-
return merged;
|
|
156
|
-
}
|
|
157
|
-
}
|
|
158
|
-
return ext;
|
|
159
|
-
}));
|
|
135
|
+
return __classPrivateFieldGet(this, _UmbExtensionRegistry_instances, "m", _UmbExtensionRegistry_kindsOfType).call(this, ext.type).pipe(map((kinds) => __classPrivateFieldGet(this, _UmbExtensionRegistry_instances, "m", _UmbExtensionRegistry_mergeExtensionWithKinds).call(this, [ext, kinds])));
|
|
160
136
|
}
|
|
161
137
|
return of(ext);
|
|
162
138
|
}), distinctUntilChanged(extensionAndKindMatchSingleMemoization));
|
|
163
139
|
}
|
|
164
|
-
|
|
165
|
-
|
|
140
|
+
/**
|
|
141
|
+
* Get an observable that provides extensions matching the given type and alias.
|
|
142
|
+
* @param type {string} - The type of the extensions to get.
|
|
143
|
+
* @param alias {string} - The alias of the extensions to get.
|
|
144
|
+
* @returns {Observable<T | undefined>} - An observable of the extensions that matches the type and alias.
|
|
145
|
+
*/
|
|
146
|
+
byTypeAndAlias(type, alias) {
|
|
166
147
|
return combineLatest([
|
|
167
148
|
this.extensions.pipe(map((exts) => exts.find((ext) => ext.type === type && ext.alias === alias)), distinctUntilChanged(extensionSingleMemoization)),
|
|
168
|
-
this.
|
|
169
|
-
]).pipe(map((
|
|
170
|
-
// TODO: share one merge function between the different methods of this class:
|
|
171
|
-
// Specific Extension Meta merge (does not merge conditions)
|
|
172
|
-
if (ext) {
|
|
173
|
-
const baseManifest = kinds.find((kind) => kind.matchKind === ext.kind)?.manifest;
|
|
174
|
-
if (baseManifest) {
|
|
175
|
-
const merged = { __isMatchedWithKind: true, ...baseManifest, ...ext };
|
|
176
|
-
if (baseManifest.meta) {
|
|
177
|
-
merged.meta = { ...baseManifest.meta, ...ext.meta };
|
|
178
|
-
}
|
|
179
|
-
return merged;
|
|
180
|
-
}
|
|
181
|
-
}
|
|
182
|
-
return ext;
|
|
183
|
-
}), distinctUntilChanged(extensionAndKindMatchSingleMemoization));
|
|
149
|
+
__classPrivateFieldGet(this, _UmbExtensionRegistry_instances, "m", _UmbExtensionRegistry_kindsOfType).call(this, type),
|
|
150
|
+
]).pipe(map(__classPrivateFieldGet(this, _UmbExtensionRegistry_instances, "m", _UmbExtensionRegistry_mergeExtensionWithKinds)), distinctUntilChanged(extensionAndKindMatchSingleMemoization));
|
|
184
151
|
}
|
|
185
|
-
|
|
186
|
-
getByTypeAndAliases(type, aliases) {
|
|
152
|
+
byTypeAndAliases(type, aliases) {
|
|
187
153
|
return combineLatest([
|
|
188
154
|
this.extensions.pipe(map((exts) => exts.filter((ext) => ext.type === type && aliases.indexOf(ext.alias) !== -1)), distinctUntilChanged(extensionArrayMemoization)),
|
|
189
|
-
this.
|
|
190
|
-
]).pipe(map((
|
|
191
|
-
.map((ext) => {
|
|
192
|
-
// Specific Extension Meta merge (does not merge conditions)
|
|
193
|
-
const baseManifest = kinds.find((kind) => kind.matchKind === ext.kind)?.manifest;
|
|
194
|
-
if (baseManifest) {
|
|
195
|
-
const merged = { __isMatchedWithKind: true, ...baseManifest, ...ext };
|
|
196
|
-
if (baseManifest.meta) {
|
|
197
|
-
merged.meta = { ...baseManifest.meta, ...ext.meta };
|
|
198
|
-
}
|
|
199
|
-
return merged;
|
|
200
|
-
}
|
|
201
|
-
return ext;
|
|
202
|
-
})
|
|
203
|
-
.sort(sortExtensions)), distinctUntilChanged(extensionAndKindMatchArrayMemoization));
|
|
155
|
+
__classPrivateFieldGet(this, _UmbExtensionRegistry_instances, "m", _UmbExtensionRegistry_kindsOfType).call(this, type),
|
|
156
|
+
]).pipe(map(__classPrivateFieldGet(this, _UmbExtensionRegistry_instances, "m", _UmbExtensionRegistry_mergeExtensionsWithKinds)), distinctUntilChanged(extensionAndKindMatchArrayMemoization));
|
|
204
157
|
}
|
|
205
158
|
/**
|
|
206
|
-
* Get an observable of
|
|
159
|
+
* Get an observable of extensions by type and a given filter method.
|
|
207
160
|
* This will return the all extensions that matches the type and which filter method returns true.
|
|
208
161
|
* The filter method will be called for each extension manifest of the given type, and the first argument to it is the extension manifest.
|
|
209
162
|
* @param type {string} - The type of the extension to get
|
|
210
163
|
* @param filter {(ext: T): void} - The filter method to use to filter the extensions
|
|
211
|
-
* @returns {Observable<T
|
|
164
|
+
* @returns {Observable<Array<T>>} - An observable of the extensions that matches the type and filter method
|
|
212
165
|
*/
|
|
213
166
|
byTypeAndFilter(type, filter) {
|
|
214
167
|
return combineLatest([
|
|
215
|
-
this.extensions.pipe(map((exts) => exts.
|
|
216
|
-
this.
|
|
217
|
-
]).pipe(map((
|
|
218
|
-
// TODO: share one merge function between the different methods of this class:
|
|
219
|
-
// Specific Extension Meta merge (does not merge conditions)
|
|
220
|
-
if (ext) {
|
|
221
|
-
const baseManifest = kinds.find((kind) => kind.matchKind === ext.kind)?.manifest;
|
|
222
|
-
if (baseManifest) {
|
|
223
|
-
const merged = { __isMatchedWithKind: true, ...baseManifest, ...ext };
|
|
224
|
-
if (baseManifest.meta) {
|
|
225
|
-
merged.meta = { ...baseManifest.meta, ...ext.meta };
|
|
226
|
-
}
|
|
227
|
-
return merged;
|
|
228
|
-
}
|
|
229
|
-
}
|
|
230
|
-
return ext;
|
|
231
|
-
}), distinctUntilChanged(extensionAndKindMatchSingleMemoization));
|
|
168
|
+
this.extensions.pipe(map((exts) => exts.filter((ext) => ext.type === type && filter(ext))), distinctUntilChanged(extensionArrayMemoization)),
|
|
169
|
+
__classPrivateFieldGet(this, _UmbExtensionRegistry_instances, "m", _UmbExtensionRegistry_kindsOfType).call(this, type),
|
|
170
|
+
]).pipe(map(__classPrivateFieldGet(this, _UmbExtensionRegistry_instances, "m", _UmbExtensionRegistry_mergeExtensionsWithKinds)), distinctUntilChanged(extensionAndKindMatchArrayMemoization));
|
|
232
171
|
}
|
|
233
172
|
/**
|
|
234
173
|
* Get an observable that provides extensions matching the given type.
|
|
235
174
|
* @param type {string} - The type of the extensions to get.
|
|
236
175
|
* @returns {Observable<T | undefined>} - An observable of the extensions that matches the type.
|
|
237
176
|
*/
|
|
238
|
-
|
|
239
|
-
return combineLatest([this.
|
|
240
|
-
.map((ext) => {
|
|
241
|
-
// Specific Extension Meta merge (does not merge conditions)
|
|
242
|
-
const baseManifest = kinds.find((kind) => kind.matchKind === ext.kind)?.manifest;
|
|
243
|
-
if (baseManifest) {
|
|
244
|
-
const merged = { __isMatchedWithKind: true, ...baseManifest, ...ext };
|
|
245
|
-
if (baseManifest.meta) {
|
|
246
|
-
merged.meta = { ...baseManifest.meta, ...ext.meta };
|
|
247
|
-
}
|
|
248
|
-
return merged;
|
|
249
|
-
}
|
|
250
|
-
return ext;
|
|
251
|
-
})
|
|
252
|
-
.sort(sortExtensions)), distinctUntilChanged(extensionAndKindMatchArrayMemoization));
|
|
177
|
+
byType(type) {
|
|
178
|
+
return combineLatest([__classPrivateFieldGet(this, _UmbExtensionRegistry_instances, "m", _UmbExtensionRegistry_extensionsOfType).call(this, type), __classPrivateFieldGet(this, _UmbExtensionRegistry_instances, "m", _UmbExtensionRegistry_kindsOfType).call(this, type)]).pipe(map(__classPrivateFieldGet(this, _UmbExtensionRegistry_instances, "m", _UmbExtensionRegistry_mergeExtensionsWithKinds)), distinctUntilChanged(extensionAndKindMatchArrayMemoization));
|
|
253
179
|
}
|
|
254
180
|
/**
|
|
255
181
|
* Get an observable that provides extensions matching given types.
|
|
256
182
|
* @param type {Array<string>} - The types of the extensions to get.
|
|
257
183
|
* @returns {Observable<T | undefined>} - An observable of the extensions that matches the types.
|
|
258
184
|
*/
|
|
259
|
-
|
|
260
|
-
return combineLatest([this.
|
|
261
|
-
.map((ext) => {
|
|
262
|
-
// Specific Extension Meta merge (does not merge conditions)
|
|
263
|
-
if (ext) {
|
|
264
|
-
const baseManifest = kinds.find((kind) => kind.matchKind === ext.kind)?.manifest;
|
|
265
|
-
if (baseManifest) {
|
|
266
|
-
const merged = { __isMatchedWithKind: true, ...baseManifest, ...ext };
|
|
267
|
-
if (baseManifest.meta) {
|
|
268
|
-
merged.meta = { ...baseManifest.meta, ...ext.meta };
|
|
269
|
-
}
|
|
270
|
-
return merged;
|
|
271
|
-
}
|
|
272
|
-
}
|
|
273
|
-
return ext;
|
|
274
|
-
})
|
|
275
|
-
.sort(sortExtensions)), distinctUntilChanged(extensionAndKindMatchArrayMemoization));
|
|
185
|
+
byTypes(types) {
|
|
186
|
+
return combineLatest([__classPrivateFieldGet(this, _UmbExtensionRegistry_instances, "m", _UmbExtensionRegistry_extensionsOfTypes).call(this, types), __classPrivateFieldGet(this, _UmbExtensionRegistry_instances, "m", _UmbExtensionRegistry_kindsOfTypes).call(this, types)]).pipe(map(__classPrivateFieldGet(this, _UmbExtensionRegistry_instances, "m", _UmbExtensionRegistry_mergeExtensionsWithKinds)), distinctUntilChanged(extensionAndKindMatchArrayMemoization));
|
|
276
187
|
}
|
|
277
188
|
}
|
|
189
|
+
_UmbExtensionRegistry_instances = new WeakSet(), _UmbExtensionRegistry_checkExtension = function _UmbExtensionRegistry_checkExtension(manifest) {
|
|
190
|
+
if (!manifest.type) {
|
|
191
|
+
console.error(`Extension is missing type`, manifest);
|
|
192
|
+
return false;
|
|
193
|
+
}
|
|
194
|
+
if (!manifest.alias) {
|
|
195
|
+
console.error(`Extension is missing alias`, manifest);
|
|
196
|
+
return false;
|
|
197
|
+
}
|
|
198
|
+
if (manifest.type === 'kind') {
|
|
199
|
+
this.defineKind(manifest);
|
|
200
|
+
return false;
|
|
201
|
+
}
|
|
202
|
+
const extensionsValues = this._extensions.getValue();
|
|
203
|
+
const extension = extensionsValues.find((extension) => extension.alias === manifest.alias);
|
|
204
|
+
if (extension) {
|
|
205
|
+
console.error(`Extension with alias ${manifest.alias} is already registered`);
|
|
206
|
+
return false;
|
|
207
|
+
}
|
|
208
|
+
return true;
|
|
209
|
+
}, _UmbExtensionRegistry_kindsOfType = function _UmbExtensionRegistry_kindsOfType(type) {
|
|
210
|
+
return this.kinds.pipe(map((kinds) => kinds.filter((kind) => kind.matchType === type)), distinctUntilChanged(extensionArrayMemoization));
|
|
211
|
+
}, _UmbExtensionRegistry_extensionsOfType = function _UmbExtensionRegistry_extensionsOfType(type) {
|
|
212
|
+
return this.extensions.pipe(map((exts) => exts.filter((ext) => ext.type === type)), distinctUntilChanged(extensionArrayMemoization));
|
|
213
|
+
}, _UmbExtensionRegistry_kindsOfTypes = function _UmbExtensionRegistry_kindsOfTypes(types) {
|
|
214
|
+
return this.kinds.pipe(map((kinds) => kinds.filter((kind) => types.indexOf(kind.matchType) !== -1)), distinctUntilChanged(extensionArrayMemoization));
|
|
215
|
+
}, _UmbExtensionRegistry_extensionsOfTypes = function _UmbExtensionRegistry_extensionsOfTypes(types) {
|
|
216
|
+
return this.extensions.pipe(map((exts) => exts.filter((ext) => types.indexOf(ext.type) !== -1)), distinctUntilChanged(extensionArrayMemoization));
|
|
217
|
+
}, _UmbExtensionRegistry_mergeExtensionWithKinds = function _UmbExtensionRegistry_mergeExtensionWithKinds([ext, kinds,]) {
|
|
218
|
+
// Specific Extension Meta merge (does not merge conditions)
|
|
219
|
+
if (ext) {
|
|
220
|
+
// Since we don't have the type up front in this request, we will just get all kinds here and find the matching one:
|
|
221
|
+
const baseManifest = kinds.find((kind) => kind.matchKind === ext.kind)?.manifest;
|
|
222
|
+
// TODO: This check can go away when making a find kind based on type and kind.
|
|
223
|
+
if (baseManifest) {
|
|
224
|
+
const merged = { __isMatchedWithKind: true, ...baseManifest, ...ext };
|
|
225
|
+
if (baseManifest.meta) {
|
|
226
|
+
merged.meta = { ...baseManifest.meta, ...ext.meta };
|
|
227
|
+
}
|
|
228
|
+
return merged;
|
|
229
|
+
}
|
|
230
|
+
}
|
|
231
|
+
return ext;
|
|
232
|
+
}, _UmbExtensionRegistry_mergeExtensionsWithKinds = function _UmbExtensionRegistry_mergeExtensionsWithKinds([exts, kinds,]) {
|
|
233
|
+
return exts
|
|
234
|
+
.map((ext) => {
|
|
235
|
+
// Specific Extension Meta merge (does not merge conditions)
|
|
236
|
+
const baseManifest = kinds.find((kind) => kind.matchKind === ext.kind)?.manifest;
|
|
237
|
+
if (baseManifest) {
|
|
238
|
+
const merged = { __isMatchedWithKind: true, ...baseManifest, ...ext };
|
|
239
|
+
if (baseManifest.meta) {
|
|
240
|
+
merged.meta = { ...baseManifest.meta, ...ext.meta };
|
|
241
|
+
}
|
|
242
|
+
return merged;
|
|
243
|
+
}
|
|
244
|
+
return ext;
|
|
245
|
+
})
|
|
246
|
+
.sort(sortExtensions);
|
|
247
|
+
};
|
package/dist-cms/packages/core/components/entity-actions-bundle/entity-actions-bundle.element.js
CHANGED
|
@@ -68,7 +68,7 @@ _UmbEntityActionsBundleElement_sectionSidebarContext = new WeakMap();
|
|
|
68
68
|
_UmbEntityActionsBundleElement_instances = new WeakSet();
|
|
69
69
|
_UmbEntityActionsBundleElement_observeEntityActions = function _UmbEntityActionsBundleElement_observeEntityActions() {
|
|
70
70
|
this.observe(umbExtensionsRegistry
|
|
71
|
-
.
|
|
71
|
+
.byType('entityAction')
|
|
72
72
|
.pipe(map((actions) => actions.filter((action) => action.meta.entityTypes.includes(this.entityType)))), (actions) => {
|
|
73
73
|
this._hasActions = actions.length > 0;
|
|
74
74
|
}, 'umbEntityActionsObserver');
|
|
@@ -21,7 +21,7 @@ let UmbInputSectionElement = class UmbInputSectionElement extends UmbInputListBa
|
|
|
21
21
|
}
|
|
22
22
|
_observeSections() {
|
|
23
23
|
if (this.value.length > 0) {
|
|
24
|
-
this.observe(umbExtensionsRegistry.
|
|
24
|
+
this.observe(umbExtensionsRegistry.byType('section'), (sections) => {
|
|
25
25
|
this._sections = sections.filter((section) => this.value.includes(section.alias));
|
|
26
26
|
});
|
|
27
27
|
}
|
|
@@ -133,7 +133,7 @@ _UmbInputTinyMceElement_loadPlugins =
|
|
|
133
133
|
* the plugins are ready and so are not associated with the editor.
|
|
134
134
|
*/
|
|
135
135
|
async function _UmbInputTinyMceElement_loadPlugins() {
|
|
136
|
-
const observable = umbExtensionsRegistry?.
|
|
136
|
+
const observable = umbExtensionsRegistry?.byType('tinyMcePlugin');
|
|
137
137
|
const manifests = (await firstValueFrom(observable));
|
|
138
138
|
const promises = [];
|
|
139
139
|
for (const manifest of manifests) {
|
|
@@ -212,7 +212,7 @@ _UmbDataTypePickerFlowModalElement_init = async function _UmbDataTypePickerFlowM
|
|
|
212
212
|
__classPrivateFieldSet(this, _UmbDataTypePickerFlowModalElement_dataTypes, items, "f");
|
|
213
213
|
this._performFiltering();
|
|
214
214
|
}, '_repositoryItemsObserver');
|
|
215
|
-
this.observe(umbExtensionsRegistry.
|
|
215
|
+
this.observe(umbExtensionsRegistry.byType('propertyEditorUi'), (propertyEditorUIs) => {
|
|
216
216
|
// Only include Property Editor UIs which has Property Editor Schema Alias
|
|
217
217
|
__classPrivateFieldSet(this, _UmbDataTypePickerFlowModalElement_propertyEditorUIs, propertyEditorUIs.filter((propertyEditorUi) => !!propertyEditorUi.meta.propertyEditorSchemaAlias), "f");
|
|
218
218
|
this._performFiltering();
|
|
@@ -12,7 +12,7 @@ var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (
|
|
|
12
12
|
var _UmbPropertyEditorUIPickerModalElement_instances, _UmbPropertyEditorUIPickerModalElement_usePropertyEditorUIs, _UmbPropertyEditorUIPickerModalElement_handleClick, _UmbPropertyEditorUIPickerModalElement_select, _UmbPropertyEditorUIPickerModalElement_handleFilterInput;
|
|
13
13
|
import { css, html, customElement, state, repeat } from '../../../../../external/lit/index.js';
|
|
14
14
|
import { UmbTextStyles } from '../../../../../shared/style/index.js';
|
|
15
|
-
import { UmbModalBaseElement
|
|
15
|
+
import { UmbModalBaseElement } from '../../../modal/index.js';
|
|
16
16
|
import { umbExtensionsRegistry } from '../../../extension-registry/index.js';
|
|
17
17
|
let UmbPropertyEditorUIPickerModalElement = class UmbPropertyEditorUIPickerModalElement extends UmbModalBaseElement {
|
|
18
18
|
constructor() {
|
|
@@ -71,7 +71,7 @@ _UmbPropertyEditorUIPickerModalElement_instances = new WeakSet();
|
|
|
71
71
|
_UmbPropertyEditorUIPickerModalElement_usePropertyEditorUIs = function _UmbPropertyEditorUIPickerModalElement_usePropertyEditorUIs() {
|
|
72
72
|
if (!this.data)
|
|
73
73
|
return;
|
|
74
|
-
this.observe(umbExtensionsRegistry.
|
|
74
|
+
this.observe(umbExtensionsRegistry.byType('propertyEditorUi'), (propertyEditorUIs) => {
|
|
75
75
|
// Only include Property Editor UIs which has Property Editor Schema Alias
|
|
76
76
|
this._propertyEditorUIs = propertyEditorUIs.filter((propertyEditorUi) => !!propertyEditorUi.meta.propertyEditorSchemaAlias);
|
|
77
77
|
// TODO: groupBy is not known by TS yet
|
package/dist-cms/packages/core/localization/components/ui-culture-input/ui-culture-input.element.js
CHANGED
|
@@ -45,7 +45,7 @@ let UmbUiCultureInputElement = class UmbUiCultureInputElement extends FormContro
|
|
|
45
45
|
};
|
|
46
46
|
_UmbUiCultureInputElement_instances = new WeakSet();
|
|
47
47
|
_UmbUiCultureInputElement_observeTranslations = function _UmbUiCultureInputElement_observeTranslations() {
|
|
48
|
-
this.observe(umbExtensionsRegistry.
|
|
48
|
+
this.observe(umbExtensionsRegistry.byType('localization'), (localizationManifests) => {
|
|
49
49
|
__classPrivateFieldGet(this, _UmbUiCultureInputElement_instances, "m", _UmbUiCultureInputElement_mapToOptions).call(this, localizationManifests);
|
|
50
50
|
}, 'umbObserveLocalizationManifests');
|
|
51
51
|
};
|
|
@@ -50,7 +50,7 @@ export class UmbLocalizationRegistry {
|
|
|
50
50
|
...innerDictionary,
|
|
51
51
|
};
|
|
52
52
|
});
|
|
53
|
-
combineLatest([this.currentLanguage, extensionRegistry.
|
|
53
|
+
combineLatest([this.currentLanguage, extensionRegistry.byType('localization')]).subscribe(async ([currentLanguage, extensions]) => {
|
|
54
54
|
const locale = new Intl.Locale(currentLanguage);
|
|
55
55
|
const filteredExt = extensions.filter((ext) => ext.meta.culture.toLowerCase() === locale.baseName.toLowerCase() ||
|
|
56
56
|
ext.meta.culture.toLowerCase() === locale.language.toLowerCase());
|
|
@@ -14,7 +14,7 @@ import { UmbTextStyles } from '../../../../../shared/style/index.js';
|
|
|
14
14
|
import { css, html, customElement, state } from '../../../../../external/lit/index.js';
|
|
15
15
|
import { UmbSelectionManager } from '../../../../../shared/utils/index.js';
|
|
16
16
|
import { umbExtensionsRegistry } from '../../../extension-registry/index.js';
|
|
17
|
-
import { UmbModalBaseElement
|
|
17
|
+
import { UmbModalBaseElement } from '../../index.js';
|
|
18
18
|
let UmbSectionPickerModalElement = class UmbSectionPickerModalElement extends UmbModalBaseElement {
|
|
19
19
|
constructor() {
|
|
20
20
|
super(...arguments);
|
|
@@ -27,7 +27,7 @@ let UmbSectionPickerModalElement = class UmbSectionPickerModalElement extends Um
|
|
|
27
27
|
// TODO: in theory this config could change during the lifetime of the modal, so we could observe it
|
|
28
28
|
__classPrivateFieldGet(this, _UmbSectionPickerModalElement_selectionManager, "f").setMultiple(this.data?.multiple ?? false);
|
|
29
29
|
__classPrivateFieldGet(this, _UmbSectionPickerModalElement_selectionManager, "f").setSelection(this.data?.selection ?? []);
|
|
30
|
-
this.observe(umbExtensionsRegistry.
|
|
30
|
+
this.observe(umbExtensionsRegistry.byType('section'), (sections) => (this._sections = sections)),
|
|
31
31
|
'umbSectionsObserver';
|
|
32
32
|
}
|
|
33
33
|
render() {
|
|
@@ -70,7 +70,7 @@ let UmbPropertyEditorUITinyMceToolbarConfigurationElement = class UmbPropertyEdi
|
|
|
70
70
|
}
|
|
71
71
|
async getToolbarPlugins() {
|
|
72
72
|
// Get all the toolbar plugins
|
|
73
|
-
const plugin$ = umbExtensionsRegistry.
|
|
73
|
+
const plugin$ = umbExtensionsRegistry.byType('tinyMcePlugin');
|
|
74
74
|
const plugins = await firstValueFrom(plugin$);
|
|
75
75
|
plugins.forEach((p) => {
|
|
76
76
|
// If the plugin has a toolbar, add it to the config
|
|
@@ -36,7 +36,7 @@ export class UmbThemeContext extends UmbBaseController {
|
|
|
36
36
|
if (themeAlias) {
|
|
37
37
|
localStorage.setItem(LOCAL_STORAGE_KEY, themeAlias);
|
|
38
38
|
__classPrivateFieldSet(this, _UmbThemeContext_themeObserver, this.observe(umbExtensionsRegistry
|
|
39
|
-
.
|
|
39
|
+
.byType('theme')
|
|
40
40
|
.pipe(map((extensions) => extensions.filter((extension) => extension.alias === themeAlias))), async (themes) => {
|
|
41
41
|
__classPrivateFieldGet(this, _UmbThemeContext_styleElement, "f")?.remove();
|
|
42
42
|
if (themes.length > 0 && themes[0].css) {
|
|
@@ -142,7 +142,7 @@ _UmbTreeItemContextBase_treeItem = new WeakMap(), _UmbTreeItemContextBase_hasChi
|
|
|
142
142
|
}, 'observeSectionPath');
|
|
143
143
|
}, _UmbTreeItemContextBase_observeActions = function _UmbTreeItemContextBase_observeActions() {
|
|
144
144
|
this.observe(umbExtensionsRegistry
|
|
145
|
-
.
|
|
145
|
+
.byType('entityAction')
|
|
146
146
|
.pipe(map((actions) => actions.filter((action) => action.meta.entityTypes.includes(this.entityType)))), (actions) => {
|
|
147
147
|
__classPrivateFieldGet(this, _UmbTreeItemContextBase_hasActions, "f").setValue(actions.length > 0);
|
|
148
148
|
}, 'observeActions');
|
|
@@ -44,7 +44,7 @@ let UmbDashboardHealthCheckElement = class UmbDashboardHealthCheckElement extend
|
|
|
44
44
|
__classPrivateFieldGet(this, _UmbDashboardHealthCheckElement_instances, "m", _UmbDashboardHealthCheckElement_register).call(this, manifests);
|
|
45
45
|
});
|
|
46
46
|
this.provideContext(UMB_HEALTHCHECK_DASHBOARD_CONTEXT, this._healthCheckDashboardContext);
|
|
47
|
-
this.observe(umbExtensionsRegistry.
|
|
47
|
+
this.observe(umbExtensionsRegistry.byType('healthCheck'), (healthCheckManifests) => {
|
|
48
48
|
this._healthCheckDashboardContext.manifests = healthCheckManifests;
|
|
49
49
|
});
|
|
50
50
|
}
|
|
@@ -5,7 +5,7 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
|
|
|
5
5
|
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
6
6
|
};
|
|
7
7
|
import { html, customElement, state } from '../../../../../external/lit/index.js';
|
|
8
|
-
import { umbExtensionsRegistry
|
|
8
|
+
import { umbExtensionsRegistry } from '../../../../core/extension-registry/index.js';
|
|
9
9
|
import { createExtensionElement } from '../../../../../libs/extension-api/index.js';
|
|
10
10
|
import { UmbLitElement } from '../../../../../shared/lit-element/index.js';
|
|
11
11
|
let UmbCreatedPackagesSectionViewElement = class UmbCreatedPackagesSectionViewElement extends UmbLitElement {
|
|
@@ -14,7 +14,7 @@ let UmbCreatedPackagesSectionViewElement = class UmbCreatedPackagesSectionViewEl
|
|
|
14
14
|
this._routes = [];
|
|
15
15
|
this._workspaces = [];
|
|
16
16
|
// TODO: Do not implement all workspaces at this point. We should only implement the 'package-builder' workspace.
|
|
17
|
-
this.observe(umbExtensionsRegistry?.
|
|
17
|
+
this.observe(umbExtensionsRegistry?.byType('workspace'), (workspaceExtensions) => {
|
|
18
18
|
this._workspaces = workspaceExtensions;
|
|
19
19
|
this._createRoutes();
|
|
20
20
|
});
|