core/dynamic-component/dynamic-component.component.ts

Description

C8y dynamic component.

register component in HOOK in module:

Example :
 import { hookComponent } from '@c8y/ngx-components';

@NgModule({
 ...,
 providers: [
   hookComponent({
     id: 'test-component',
     label: 'My test component',
     description: 'this is test component',
     component: TestComponent
   })
 ...
 ]

Showing dynamic component:

Example :
<c8y-dynamic-component [componentId]="'test-component'" [config]="config"></c8y-dynamic-component>

Implements

OnDestroy

Example

Metadata

Relationships

<ng-template #host></ng-template>

@if (error && notFoundError) {
  <div
    class="alert alert-warning m-8"
    role="alert"
  >
    <strong class="message">
      {{
        'This widget cannot be rendered because the current application does not support the following component:'
          | translate
      }}
      {{ componentId }}.
    </strong>
    <p class="text-muted m-t-8">
      <button
        class="btn btn-clean"
        (click)="expandErrorDetails = !expandErrorDetails"
      >
        <i c8yIcon="chevron-down"></i>
        @if (!expandErrorDetails) {
          <span translate>Show details</span>
        } @else {
          <span translate>Hide details</span>
        }
      </button>
    </p>
    <div
      [collapse]="!expandErrorDetails"
      [isAnimated]="true"
    >
      <pre>
      {{ error }}
    </pre
      >
    </div>
  </div>
}

@if (
  errorStrategy === dynamicComponentErrorStrategy.OVERLAY_ERROR &&
    componentInstance?.alerts?.anyAlertExists$ | async
) {
  <div class="overlay-center-vertically d-flex d-col a-i-stretch j-c-start p-16 p-r-24 p-l-24">
    <c8y-dynamic-component-alerts
      [alerts]="componentInstance.alerts"
    ></c8y-dynamic-component-alerts>
  </div>
}

results matching ""

    No results matching ""