@microsoft/windows-admin-center-sdk
Version:
Microsoft - Windows Admin Center Shell
50 lines • 6.3 kB
JavaScript
import { Component, ComponentFactoryResolver, EventEmitter, Injector, Input, Output } from '@angular/core';
import { DynamicComponentBase } from '../../common/dynamic.component';
import { ActionItem } from './action-item.component';
import * as i0 from "@angular/core";
export class DynamicActionItemComponent extends DynamicComponentBase {
/**
* Constructor for DynamicActionItemComponent.
*/
constructor(componentFactoryResolver, injector) {
super(componentFactoryResolver, injector);
/**
* Event emitter fired when DynamicActionItemComponent has changed.
*/
this.itemChanged = new EventEmitter();
}
/**
* The wrapped ActionItem object.
*/
set item(item) {
this.itemRef = item;
this.updateOptions(item);
this.itemChanged.emit();
}
createComponent() {
this.componentType = this.itemRef.renderer;
super.createComponent();
this.updateOptions(this.itemRef);
}
updateOptions(item) {
if (this.ref && this.ref.instance.itemChanged) {
this.ref.instance.itemChanged(item);
}
}
}
/** @nocollapse */ DynamicActionItemComponent.ɵfac = function DynamicActionItemComponent_Factory(t) { return new (t || DynamicActionItemComponent)(i0.ɵɵdirectiveInject(i0.ComponentFactoryResolver), i0.ɵɵdirectiveInject(i0.Injector)); };
/** @nocollapse */ DynamicActionItemComponent.ɵcmp = /** @pureOrBreakMyCode */ i0.ɵɵdefineComponent({ type: DynamicActionItemComponent, selectors: [["sme-dynamic-action-item"]], inputs: { item: "item" }, outputs: { itemChanged: "itemChanged" }, features: [i0.ɵɵInheritDefinitionFeature], decls: 2, vars: 0, consts: [["container", ""]], template: function DynamicActionItemComponent_Template(rf, ctx) { if (rf & 1) {
i0.ɵɵelement(0, "div", null, 0);
} }, encapsulation: 2 });
(function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(DynamicActionItemComponent, [{
type: Component,
args: [{
selector: 'sme-dynamic-action-item',
template: '<div #container></div>'
}]
}], function () { return [{ type: i0.ComponentFactoryResolver }, { type: i0.Injector }]; }, { item: [{
type: Input
}], itemChanged: [{
type: Output
}] }); })();
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHluYW1pYy1hY3Rpb24taXRlbS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9hbmd1bGFyL3NyYy9jb250cm9scy9hY3Rpb25zL2l0ZW1zL2R5bmFtaWMtYWN0aW9uLWl0ZW0uY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDSCxTQUFTLEVBQ1Qsd0JBQXdCLEVBQ3hCLFlBQVksRUFDWixRQUFRLEVBQ1IsS0FBSyxFQUNMLE1BQU0sRUFDVCxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUN0RSxPQUFPLEVBQUUsVUFBVSxFQUErQixNQUFNLHlCQUF5QixDQUFDOztBQU1sRixNQUFNLE9BQU8sMEJBQTJCLFNBQVEsb0JBQTZEO0lBbUJ6Rzs7T0FFRztJQUNILFlBQVksd0JBQWtELEVBQUUsUUFBa0I7UUFDOUUsS0FBSyxDQUFDLHdCQUF3QixFQUFFLFFBQVEsQ0FBQyxDQUFDO1FBVjlDOztXQUVHO1FBRUksZ0JBQVcsR0FBdUIsSUFBSSxZQUFZLEVBQVEsQ0FBQztJQU9sRSxDQUFDO0lBckJEOztPQUVHO0lBQ0gsSUFDSSxJQUFJLENBQUMsSUFBZ0I7UUFDckIsSUFBSSxDQUFDLE9BQU8sR0FBRyxJQUFJLENBQUM7UUFDcEIsSUFBSSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUN6QixJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksRUFBRSxDQUFDO0lBQzVCLENBQUM7SUFlUyxlQUFlO1FBQ3JCLElBQUksQ0FBQyxhQUFhLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUM7UUFDM0MsS0FBSyxDQUFDLGVBQWUsRUFBRSxDQUFDO1FBQ3hCLElBQUksQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBQ3JDLENBQUM7SUFFTyxhQUFhLENBQUMsSUFBZ0I7UUFDbEMsSUFBSSxJQUFJLENBQUMsR0FBRyxJQUFJLElBQUksQ0FBQyxHQUFHLENBQUMsUUFBUSxDQUFDLFdBQVcsRUFBRTtZQUMzQyxJQUFJLENBQUMsR0FBRyxDQUFDLFFBQVEsQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLENBQUM7U0FDdkM7SUFDTCxDQUFDOzt1SEFwQ1EsMEJBQTBCOzRHQUExQiwwQkFBMEI7UUFGeEIsK0JBQXNCOzt1RkFFeEIsMEJBQTBCO2NBSnRDLFNBQVM7ZUFBQztnQkFDUCxRQUFRLEVBQUUseUJBQXlCO2dCQUNuQyxRQUFRLEVBQUUsd0JBQXdCO2FBQ3JDO2tHQVFPLElBQUk7a0JBRFAsS0FBSztZQVdDLFdBQVc7a0JBRGpCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xyXG4gICAgQ29tcG9uZW50LFxyXG4gICAgQ29tcG9uZW50RmFjdG9yeVJlc29sdmVyLFxyXG4gICAgRXZlbnRFbWl0dGVyLFxyXG4gICAgSW5qZWN0b3IsXHJcbiAgICBJbnB1dCxcclxuICAgIE91dHB1dFxyXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBEeW5hbWljQ29tcG9uZW50QmFzZSB9IGZyb20gJy4uLy4uL2NvbW1vbi9keW5hbWljLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEFjdGlvbkl0ZW0sIEFjdGlvbkl0ZW1SZW5kZXJlckNvbXBvbmVudCB9IGZyb20gJy4vYWN0aW9uLWl0ZW0uY29tcG9uZW50JztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gICAgc2VsZWN0b3I6ICdzbWUtZHluYW1pYy1hY3Rpb24taXRlbScsXHJcbiAgICB0ZW1wbGF0ZTogJzxkaXYgI2NvbnRhaW5lcj48L2Rpdj4nXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBEeW5hbWljQWN0aW9uSXRlbUNvbXBvbmVudCBleHRlbmRzIER5bmFtaWNDb21wb25lbnRCYXNlPEFjdGlvbkl0ZW1SZW5kZXJlckNvbXBvbmVudDxBY3Rpb25JdGVtPj4ge1xyXG4gICAgcHJpdmF0ZSBpdGVtUmVmOiBBY3Rpb25JdGVtO1xyXG5cclxuICAgIC8qKlxyXG4gICAgICogVGhlIHdyYXBwZWQgQWN0aW9uSXRlbSBvYmplY3QuXHJcbiAgICAgKi9cclxuICAgIEBJbnB1dCgpXHJcbiAgICBzZXQgaXRlbShpdGVtOiBBY3Rpb25JdGVtKSB7XHJcbiAgICAgICAgdGhpcy5pdGVtUmVmID0gaXRlbTtcclxuICAgICAgICB0aGlzLnVwZGF0ZU9wdGlvbnMoaXRlbSk7XHJcbiAgICAgICAgdGhpcy5pdGVtQ2hhbmdlZC5lbWl0KCk7XHJcbiAgICB9XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBFdmVudCBlbWl0dGVyIGZpcmVkIHdoZW4gRHluYW1pY0FjdGlvbkl0ZW1Db21wb25lbnQgaGFzIGNoYW5nZWQuXHJcbiAgICAgKi9cclxuICAgIEBPdXRwdXQoKVxyXG4gICAgcHVibGljIGl0ZW1DaGFuZ2VkOiBFdmVudEVtaXR0ZXI8dm9pZD4gPSBuZXcgRXZlbnRFbWl0dGVyPHZvaWQ+KCk7XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiAgQ29uc3RydWN0b3IgZm9yIER5bmFtaWNBY3Rpb25JdGVtQ29tcG9uZW50LlxyXG4gICAgICovXHJcbiAgICBjb25zdHJ1Y3Rvcihjb21wb25lbnRGYWN0b3J5UmVzb2x2ZXI6IENvbXBvbmVudEZhY3RvcnlSZXNvbHZlciwgaW5qZWN0b3I6IEluamVjdG9yKSB7XHJcbiAgICAgICAgc3VwZXIoY29tcG9uZW50RmFjdG9yeVJlc29sdmVyLCBpbmplY3Rvcik7XHJcbiAgICB9XHJcblxyXG4gICAgcHJvdGVjdGVkIGNyZWF0ZUNvbXBvbmVudCgpIHtcclxuICAgICAgICB0aGlzLmNvbXBvbmVudFR5cGUgPSB0aGlzLml0ZW1SZWYucmVuZGVyZXI7XHJcbiAgICAgICAgc3VwZXIuY3JlYXRlQ29tcG9uZW50KCk7XHJcbiAgICAgICAgdGhpcy51cGRhdGVPcHRpb25zKHRoaXMuaXRlbVJlZik7XHJcbiAgICB9XHJcblxyXG4gICAgcHJpdmF0ZSB1cGRhdGVPcHRpb25zKGl0ZW06IEFjdGlvbkl0ZW0pIHtcclxuICAgICAgICBpZiAodGhpcy5yZWYgJiYgdGhpcy5yZWYuaW5zdGFuY2UuaXRlbUNoYW5nZWQpIHtcclxuICAgICAgICAgICAgdGhpcy5yZWYuaW5zdGFuY2UuaXRlbUNoYW5nZWQoaXRlbSk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcbiJdfQ==