migrate tree context services to UmbContextAlias

This commit is contained in:
Jacob Overgaard
2023-01-17 16:33:16 +01:00
parent 372f3e028a
commit 880c6056d7
4 changed files with 28 additions and 8 deletions

View File

@@ -1,7 +1,13 @@
import { customElement, property, state } from 'lit/decorators.js';
import { UmbSectionContext, UMB_SECTION_CONTEXT_ALIAS } from '../../section/section.context';
import { UmbTreeContextMenuPageService } from '../context-menu/tree-context-menu-page.service';
import { UmbTreeContextMenuService } from '../context-menu/tree-context-menu.service';
import {
UmbTreeContextMenuPageService,
UMB_TREE_CONTEXT_MENU_PAGE_SERVICE_CONTEXT_ALIAS,
} from '../context-menu/tree-context-menu-page.service';
import {
UmbTreeContextMenuService,
UMB_TREE_CONTEXT_MENU_SERVICE_CONTEXT_ALIAS,
} from '../context-menu/tree-context-menu.service';
import type { Entity, ManifestTreeItemAction, ManifestTree } from '@umbraco-cms/models';
import { UmbLitElement } from '@umbraco-cms/element';
@@ -34,11 +40,11 @@ export default class UmbTreeItemActionElement extends UmbLitElement {
this._observeActiveTreeItem();
});
this.consumeContext('umbTreeContextMenuService', (treeContextMenuService: UmbTreeContextMenuService) => {
this.consumeContext(UMB_TREE_CONTEXT_MENU_SERVICE_CONTEXT_ALIAS, (treeContextMenuService) => {
this._treeContextMenuService = treeContextMenuService;
});
this.consumeContext('umbTreeContextMenuPageService', (actionPageService: UmbTreeContextMenuPageService) => {
this.consumeContext(UMB_TREE_CONTEXT_MENU_PAGE_SERVICE_CONTEXT_ALIAS, (actionPageService) => {
this._actionPageService = actionPageService;
this._observeEntity();
});

View File

@@ -2,8 +2,10 @@ import { UUITextStyles } from '@umbraco-ui/uui-css';
import { css, nothing, PropertyValueMap } from 'lit';
import { customElement, property, state } from 'lit/decorators.js';
import UmbTreeItemActionElement, { ActionPageEntity } from '../action/tree-item-action.element';
import { UmbTreeContextMenuService } from './tree-context-menu.service';
import { UmbLitElement } from '@umbraco-cms/element';
import { UniqueBehaviorSubject } from '@umbraco-cms/observable-api';
import { UmbContextAlias } from '@umbraco-cms/context-api';
// TODO: Refactor this, its not a service and the data should be handled by a context api.
@customElement('umb-tree-context-menu-page-service')
@@ -21,7 +23,7 @@ export class UmbTreeContextMenuPageService extends UmbLitElement {
connectedCallback() {
super.connectedCallback();
this.provideContext('umbTreeContextMenuPageService', this);
this.provideContext(UMB_TREE_CONTEXT_MENU_PAGE_SERVICE_CONTEXT_ALIAS, this);
this.openFreshPage('umb-tree-context-menu-page-action-list');
}
@@ -64,6 +66,10 @@ export class UmbTreeContextMenuPageService extends UmbLitElement {
}
}
export const UMB_TREE_CONTEXT_MENU_PAGE_SERVICE_CONTEXT_ALIAS = new UmbContextAlias<UmbTreeContextMenuPageService>(
UmbTreeContextMenuService.name
);
declare global {
interface HTMLElementTagNameMap {
'umb-tree-context-menu-page-service': UmbTreeContextMenuPageService;

View File

@@ -3,6 +3,7 @@ import { css, html, nothing } from 'lit';
import { customElement, state } from 'lit/decorators.js';
import { ActionPageEntity } from '../action/tree-item-action.element';
import { UmbLitElement } from '@umbraco-cms/element';
import { UmbContextAlias } from '@umbraco-cms/context-api';
@customElement('umb-tree-context-menu-service')
export class UmbTreeContextMenuService extends UmbLitElement {
@@ -56,7 +57,7 @@ export class UmbTreeContextMenuService extends UmbLitElement {
connectedCallback() {
super.connectedCallback();
this.provideContext('umbTreeContextMenuService', this);
this.provideContext(UMB_TREE_CONTEXT_MENU_SERVICE_CONTEXT_ALIAS, this);
}
public open(entity: ActionPageEntity) {
@@ -92,6 +93,10 @@ export class UmbTreeContextMenuService extends UmbLitElement {
}
}
export const UMB_TREE_CONTEXT_MENU_SERVICE_CONTEXT_ALIAS = new UmbContextAlias<UmbTreeContextMenuService>(
UmbTreeContextMenuService.name
);
declare global {
interface HTMLElementTagNameMap {
'umb-tree-context-menu-service': UmbTreeContextMenuService;

View File

@@ -6,7 +6,10 @@ import { map, Observable } from 'rxjs';
import { repeat } from 'lit/directives/repeat.js';
import { UmbSectionContext, UMB_SECTION_CONTEXT_ALIAS } from '../section/section.context';
import type { UmbTreeContextBase } from './tree.context';
import { UmbTreeContextMenuService } from './context-menu/tree-context-menu.service';
import {
UmbTreeContextMenuService,
UMB_TREE_CONTEXT_MENU_SERVICE_CONTEXT_ALIAS,
} from './context-menu/tree-context-menu.service';
import type { Entity } from '@umbraco-cms/models';
import { UmbTreeDataStore } from '@umbraco-cms/stores/store';
import { UmbLitElement } from '@umbraco-cms/element';
@@ -88,7 +91,7 @@ export class UmbTreeItem extends UmbLitElement {
this._observeActiveTreeItem();
});
this.consumeContext('umbTreeContextMenuService', (treeContextMenuService: UmbTreeContextMenuService) => {
this.consumeContext(UMB_TREE_CONTEXT_MENU_SERVICE_CONTEXT_ALIAS, (treeContextMenuService) => {
this._treeContextMenuService = treeContextMenuService;
});
}