controller host element
This commit is contained in:
@@ -2,10 +2,10 @@ import { expect, fixture, html } from '@open-wc/testing';
|
||||
import { UmbContextConsumerController } from '../consume/context-consumer.controller.js';
|
||||
import { UmbContextProviderElement } from './context-provider.element.js';
|
||||
import { customElement } from '@umbraco-cms/backoffice/external/lit';
|
||||
import { UmbControllerHostMixin } from '@umbraco-cms/backoffice/controller-api';
|
||||
import { UmbControllerHostElementMixin } from '@umbraco-cms/backoffice/controller-api';
|
||||
|
||||
@customElement('umb-test-context')
|
||||
export class UmbTestContextElement extends UmbControllerHostMixin(HTMLElement) {
|
||||
export class UmbTestContextElement extends UmbControllerHostElementMixin(HTMLElement) {
|
||||
public value: string | null = null;
|
||||
constructor() {
|
||||
super();
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
import { UmbControllerHostElement, UmbControllerHostMixin } from '@umbraco-cms/backoffice/controller-api';
|
||||
import { UmbControllerHostElement, UmbControllerHostElementMixin } from '@umbraco-cms/backoffice/controller-api';
|
||||
import { UmbContextProviderController, UmbContextToken } from '@umbraco-cms/backoffice/context-api';
|
||||
|
||||
/**
|
||||
@@ -9,7 +9,7 @@ import { UmbContextProviderController, UmbContextToken } from '@umbraco-cms/back
|
||||
* @throws {Error} If the key property is not set.
|
||||
* @throws {Error} If the value property is not set.
|
||||
*/
|
||||
export class UmbContextProviderElement extends UmbControllerHostMixin(HTMLElement) {
|
||||
export class UmbContextProviderElement extends UmbControllerHostElementMixin(HTMLElement) {
|
||||
/**
|
||||
* The value to provide to the context.
|
||||
* @optional
|
||||
|
||||
@@ -20,8 +20,8 @@ export declare class UmbControllerHostElement extends HTMLElement implements Umb
|
||||
* @param {Object} superClass - superclass to be extended.
|
||||
* @mixin
|
||||
*/
|
||||
export const UmbControllerHostMixin = <T extends HTMLElementConstructor>(superClass: T) => {
|
||||
class UmbControllerHostClass extends UmbControllerHostBaseMixin(superClass) implements UmbControllerHost {
|
||||
export const UmbControllerHostElementMixin = <T extends HTMLElementConstructor>(superClass: T) => {
|
||||
class UmbControllerHostElementClass extends UmbControllerHostBaseMixin(superClass) implements UmbControllerHost {
|
||||
getHostElement(): EventTarget {
|
||||
return this;
|
||||
}
|
||||
@@ -37,7 +37,7 @@ export const UmbControllerHostMixin = <T extends HTMLElementConstructor>(superCl
|
||||
}
|
||||
}
|
||||
|
||||
return UmbControllerHostClass as unknown as HTMLElementConstructor<UmbControllerHostElement> & T;
|
||||
return UmbControllerHostElementClass as unknown as HTMLElementConstructor<UmbControllerHostElement> & T;
|
||||
};
|
||||
|
||||
declare global {
|
||||
@@ -1,7 +1,7 @@
|
||||
import { UmbControllerHostElement, UmbControllerHostMixin } from './controller-host.mixin.js';
|
||||
import { UmbControllerHostElement, UmbControllerHostElementMixin } from './controller-host-element.mixin.js';
|
||||
|
||||
export class UmbControllerHostInitializerElement
|
||||
extends UmbControllerHostMixin(HTMLElement)
|
||||
extends UmbControllerHostElementMixin(HTMLElement)
|
||||
implements UmbControllerHostElement
|
||||
{
|
||||
/**
|
||||
|
||||
@@ -1,11 +1,11 @@
|
||||
import { expect, fixture, html } from '@open-wc/testing';
|
||||
import { UmbControllerHostInitializerElement } from './controller-host-initializer.element.js';
|
||||
import { UmbControllerHostElement, UmbControllerHostMixin } from './controller-host.mixin.js';
|
||||
import { UmbControllerHostElement, UmbControllerHostElementMixin } from './controller-host-element.mixin.js';
|
||||
import { customElement } from '@umbraco-cms/backoffice/external/lit';
|
||||
import { UmbContextConsumerController, UmbContextProviderController } from '@umbraco-cms/backoffice/context-api';
|
||||
|
||||
@customElement('umb-test-controller-host-initializer-consumer')
|
||||
export class UmbTestControllerHostInitializerConsumerElement extends UmbControllerHostMixin(HTMLElement) {
|
||||
export class UmbTestControllerHostInitializerConsumerElement extends UmbControllerHostElementMixin(HTMLElement) {
|
||||
public value: string | null = null;
|
||||
constructor() {
|
||||
super();
|
||||
|
||||
@@ -1,10 +1,10 @@
|
||||
import { expect } from '@open-wc/testing';
|
||||
import { UmbControllerHostElement, UmbControllerHostMixin } from './controller-host.mixin.js';
|
||||
import { UmbControllerHostElement, UmbControllerHostElementMixin } from './controller-host-element.mixin.js';
|
||||
import { UmbBaseController } from './controller.class.js';
|
||||
import { customElement } from '@umbraco-cms/backoffice/external/lit';
|
||||
|
||||
@customElement('test-my-controller-host')
|
||||
export class UmbTestControllerHostElement extends UmbControllerHostMixin(HTMLElement) {}
|
||||
export class UmbTestControllerHostElement extends UmbControllerHostElementMixin(HTMLElement) {}
|
||||
|
||||
export class UmbTestControllerImplementationElement extends UmbBaseController {
|
||||
testIsConnected = false;
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
export * from './controller-host-base.mixin.js';
|
||||
export * from './controller-host.interface.js';
|
||||
export * from './controller-host.mixin.js';
|
||||
export * from './controller-host-element.mixin.js';
|
||||
export * from './controller.class.js';
|
||||
export * from './controller.interface.js';
|
||||
export * from './controller-alias.type.js';
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
import type { Observable } from '@umbraco-cms/backoffice/external/rxjs';
|
||||
import type { HTMLElementConstructor } from '@umbraco-cms/backoffice/extension-api';
|
||||
import { UmbControllerHostMixin } from '@umbraco-cms/backoffice/controller-api';
|
||||
import { UmbControllerHostElementMixin } from '@umbraco-cms/backoffice/controller-api';
|
||||
import type { UmbControllerHostElement } from '@umbraco-cms/backoffice/controller-api';
|
||||
import {
|
||||
UmbContextToken,
|
||||
@@ -29,7 +29,7 @@ export declare class UmbElementMixinInterface extends UmbControllerHostElement {
|
||||
}
|
||||
|
||||
export const UmbElementMixin = <T extends HTMLElementConstructor>(superClass: T) => {
|
||||
class UmbElementMixinClass extends UmbControllerHostMixin(superClass) implements UmbElementMixinInterface {
|
||||
class UmbElementMixinClass extends UmbControllerHostElementMixin(superClass) implements UmbElementMixinInterface {
|
||||
/**
|
||||
* @description Observe a RxJS source of choice.
|
||||
* @param {Observable<T>} source RxJS source
|
||||
|
||||
Reference in New Issue
Block a user