more updates

This commit is contained in:
Niels Lyngsø
2023-01-23 22:10:08 +01:00
parent 71e75832da
commit 610546e14c
5 changed files with 37 additions and 43 deletions

View File

@@ -22,7 +22,7 @@ import { UmbMediaDetailStore } from './media/media/media.detail.store';
import { UmbMediaTreeStore } from './media/media/media.tree.store';
import { UmbMemberTypeDetailStore } from './members/member-types/member-type.detail.store';
import { UmbMemberTypeTreeStore } from './members/member-types/member-type.tree.store';
import { UmbMemberGroupStore, UMB_MEMBER_GROUP_STORE_CONTEXT_TOKEN } from './members/member-groups/member-group.store';
import { UmbMemberGroupStore, UMB_MEMBER_GROUP_STORE_CONTEXT_TOKEN } from './members/member-groups/member-group.details.store';
import { UmbDictionaryStore, UMB_DICTIONARY_STORE_CONTEXT_TOKEN } from './translation/dictionary/dictionary.store';
import {
UmbDocumentBlueprintStore,

View File

@@ -0,0 +1,34 @@
import { Observable } from 'rxjs';
import type { MemberGroupDetails } from '@umbraco-cms/models';
import { UmbContextToken } from '@umbraco-cms/context-api';
import { UniqueArrayBehaviorSubject } from '@umbraco-cms/observable-api';
import { UmbControllerHostInterface } from '@umbraco-cms/controller';
import { UmbStoreBase } from '@umbraco-cms/stores/store-base';
export const UMB_MEMBER_GROUP_STORE_CONTEXT_TOKEN = new UmbContextToken<UmbMemberGroupStore>('UmbMemberGroupStore');
/**
* @export
* @class UmbMemberGroupStore
* @extends {UmbStoreBase}
* @description - Data Store for Member Groups
*/
export class UmbMemberGroupStore extends UmbStoreBase {
#groups = new UniqueArrayBehaviorSubject<MemberGroupDetails>([], x => x.key);
public groups = this.#groups.asObservable();
constructor(host: UmbControllerHostInterface) {
super(host, UMB_MEMBER_GROUP_STORE_CONTEXT_TOKEN.toString());
}
getByKey(key: string): Observable<MemberGroupDetails | null> {
return null as any;
}
async save(mediaTypes: Array<MemberGroupDetails>): Promise<void> {
return null as any;
}
}

View File

@@ -1,40 +0,0 @@
import { map, Observable } from 'rxjs';
import { UmbNodeStoreBase } from '../../../core/stores/store';
import { EntityTreeItem, MemberGroupResource } from '@umbraco-cms/backend-api';
import type { MemberGroupDetails } from '@umbraco-cms/models';
import { tryExecuteAndNotify } from '@umbraco-cms/resources';
import { UmbContextToken } from '@umbraco-cms/context-api';
export type UmbMemberGroupStoreItemType = MemberGroupDetails | EntityTreeItem;
export const STORE_ALIAS = 'UmbMemberGroupStore';
/**
* @export
* @class UmbMemberGroupStore
* @extends {UmbDataStoreBase<MemberGroupDetails | EntityTreeItem>}
* @description - Data Store for Member Groups
*/
export class UmbMemberGroupStore extends UmbNodeStoreBase<UmbMemberGroupStoreItemType> {
public readonly storeAlias = STORE_ALIAS;
getByKey(key: string): Observable<UmbMemberGroupStoreItemType | null> {
return null as any;
}
async save(mediaTypes: Array<UmbMemberGroupStoreItemType>): Promise<void> {
return null as any;
}
getTreeRoot(): Observable<Array<EntityTreeItem>> {
tryExecuteAndNotify(this.host, MemberGroupResource.getTreeMemberGroupRoot({})).then(({ data }) => {
if (data) {
this.updateItems(data.items);
}
});
return this.items.pipe(map((items) => items.filter((item) => item.parentKey === null)));
}
}
export const UMB_MEMBER_GROUP_STORE_CONTEXT_TOKEN = new UmbContextToken<UmbMemberGroupStore>(STORE_ALIAS);

View File

@@ -1,4 +1,4 @@
import { STORE_ALIAS } from '../member-group.store';
import { STORE_ALIAS } from '../member-group.details.store';
import type { ManifestTree, ManifestTreeItemAction } from '@umbraco-cms/models';
const treeAlias = 'Umb.Tree.MemberGroups';

View File

@@ -7,7 +7,7 @@ import { UmbStoreBase } from '@umbraco-cms/stores/store-base';
// TODO: get rid of this type addition & { ... }:
export type UmbUserGroupStoreItemType = UserGroupDetails & { users?: Array<string> };
export const UMB_USER_GROUP_STORE_CONTEXT_TOKEN = new UmbContextToken<UmbUserStore>('UmbUserGroupStore');
export const UMB_USER_GROUP_STORE_CONTEXT_TOKEN = new UmbContextToken<UmbUserGroupStore>('UmbUserGroupStore');
/**
* @export