mirror of https://github.com/OpenVidu/openvidu.git
38 lines
1.2 KiB
TypeScript
38 lines
1.2 KiB
TypeScript
![]() |
import { BrowserModule } from "@angular/platform-browser";
|
||
|
import { DoBootstrap, Injector, NgModule } from "@angular/core";
|
||
|
import { APP_BASE_HREF, CommonModule } from "@angular/common";
|
||
|
import { createCustomElement, NgElement, WithProperties } from "@angular/elements";
|
||
|
import { OpenviduWebComponentComponent } from "./openvidu-webcomponent.component";
|
||
|
|
||
|
import { OpenviduAngularModule, VideoconferenceComponent } from "openvidu-angular";
|
||
|
import { environment } from '../../environments/environment';
|
||
|
|
||
|
|
||
|
declare global {
|
||
|
interface HTMLElementTagNameMap {
|
||
|
'openvidu-webcomponent': NgElement & WithProperties<{ openviduServerUrl: string, openviduSecret: string}>;
|
||
|
}
|
||
|
}
|
||
|
|
||
|
@NgModule({
|
||
|
declarations: [OpenviduWebComponentComponent],
|
||
|
imports: [
|
||
|
CommonModule,
|
||
|
BrowserModule,
|
||
|
OpenviduAngularModule.forRoot(environment),
|
||
|
],
|
||
|
// exports: [OpenviduWebComponentComponent],
|
||
|
providers: [{provide: APP_BASE_HREF, useValue: '/'} , VideoconferenceComponent],
|
||
|
})
|
||
|
export class OpenviduWebComponentModule implements DoBootstrap {
|
||
|
constructor(private injector: Injector) {}
|
||
|
|
||
|
ngDoBootstrap(): void {
|
||
|
const element = createCustomElement(OpenviduWebComponentComponent, {
|
||
|
injector: this.injector,
|
||
|
});
|
||
|
|
||
|
customElements.define("openvidu-webcomponent", element);
|
||
|
}
|
||
|
}
|