UNPKG

@ohayojp.com/components

Version:

Common business components of ohayojp.

78 lines 6.05 kB
/** * @fileoverview added by tsickle * Generated from: st-widget-host.directive.ts * @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc */ import { ComponentFactoryResolver, Directive, Input, ViewContainerRef } from '@angular/core'; import { STWidgetRegistry } from './st-widget'; export class STWidgetHostDirective { /** * @param {?} stWidgetRegistry * @param {?} viewContainerRef * @param {?} componentFactoryResolver */ constructor(stWidgetRegistry, viewContainerRef, componentFactoryResolver) { this.stWidgetRegistry = stWidgetRegistry; this.viewContainerRef = viewContainerRef; this.componentFactoryResolver = componentFactoryResolver; } /** * @return {?} */ ngOnInit() { /** @type {?} */ const widget = (/** @type {?} */ (this.column.widget)); /** @type {?} */ const componentType = this.stWidgetRegistry.get(widget.type); /** @type {?} */ const componentFactory = this.componentFactoryResolver.resolveComponentFactory((/** @type {?} */ (componentType))); this.viewContainerRef.clear(); /** @type {?} */ const componentRef = this.viewContainerRef.createComponent(componentFactory); const { record, column } = this; /** @type {?} */ const data = widget.params ? widget.params({ record, column }) : { record }; Object.keys(data).forEach((/** * @param {?} key * @return {?} */ key => { ((/** @type {?} */ (componentRef.instance)))[key] = data[key]; })); } } STWidgetHostDirective.decorators = [ { type: Directive, args: [{ selector: '[st-widget-host]' },] } ]; /** @nocollapse */ STWidgetHostDirective.ctorParameters = () => [ { type: STWidgetRegistry }, { type: ViewContainerRef }, { type: ComponentFactoryResolver } ]; STWidgetHostDirective.propDecorators = { record: [{ type: Input }], column: [{ type: Input }] }; if (false) { /** @type {?} */ STWidgetHostDirective.prototype.record; /** @type {?} */ STWidgetHostDirective.prototype.column; /** * @type {?} * @private */ STWidgetHostDirective.prototype.stWidgetRegistry; /** * @type {?} * @private */ STWidgetHostDirective.prototype.viewContainerRef; /** * @type {?} * @private */ STWidgetHostDirective.prototype.componentFactoryResolver; } //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3Qtd2lkZ2V0LWhvc3QuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IkM6L2FuZHJvaWQvQG9oYXlvanAvcGFja2FnZXMvY29tcG9uZW50cy9zdC8iLCJzb3VyY2VzIjpbInN0LXdpZGdldC1ob3N0LmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFVLGdCQUFnQixFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3JHLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUkvQyxNQUFNLE9BQU8scUJBQXFCOzs7Ozs7SUFJaEMsWUFDVSxnQkFBa0MsRUFDbEMsZ0JBQWtDLEVBQ2xDLHdCQUFrRDtRQUZsRCxxQkFBZ0IsR0FBaEIsZ0JBQWdCLENBQWtCO1FBQ2xDLHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBa0I7UUFDbEMsNkJBQXdCLEdBQXhCLHdCQUF3QixDQUEwQjtJQUN6RCxDQUFDOzs7O0lBRUosUUFBUTs7Y0FDQSxNQUFNLEdBQUcsbUJBQUEsSUFBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNLEVBQUM7O2NBQzVCLGFBQWEsR0FBRyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsR0FBRyxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUM7O2NBQ3RELGdCQUFnQixHQUFHLElBQUksQ0FBQyx3QkFBd0IsQ0FBQyx1QkFBdUIsQ0FBQyxtQkFBQSxhQUFhLEVBQU8sQ0FBQztRQUVwRyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsS0FBSyxFQUFFLENBQUM7O2NBQ3hCLFlBQVksR0FBRyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsZUFBZSxDQUFDLGdCQUFnQixDQUFDO2NBQ3RFLEVBQUUsTUFBTSxFQUFFLE1BQU0sRUFBRSxHQUFHLElBQUk7O2NBQ3pCLElBQUksR0FBMkIsTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxFQUFFLE1BQU0sRUFBRSxNQUFNLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLE1BQU0sRUFBRTtRQUNuRyxNQUFNLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDLE9BQU87Ozs7UUFBQyxHQUFHLENBQUMsRUFBRTtZQUM5QixDQUFDLG1CQUFBLFlBQVksQ0FBQyxRQUFRLEVBQU8sQ0FBQyxDQUFDLEdBQUcsQ0FBQyxHQUFHLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUNsRCxDQUFDLEVBQUMsQ0FBQztJQUNMLENBQUM7OztZQXZCRixTQUFTLFNBQUMsRUFBRSxRQUFRLEVBQUUsa0JBQWtCLEVBQUU7Ozs7WUFIbEMsZ0JBQWdCO1lBRG9DLGdCQUFnQjtZQUFwRSx3QkFBd0I7OztxQkFNOUIsS0FBSztxQkFDTCxLQUFLOzs7O0lBRE4sdUNBQXdCOztJQUN4Qix1Q0FBMEI7Ozs7O0lBR3hCLGlEQUEwQzs7Ozs7SUFDMUMsaURBQTBDOzs7OztJQUMxQyx5REFBMEQiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnRGYWN0b3J5UmVzb2x2ZXIsIERpcmVjdGl2ZSwgSW5wdXQsIE9uSW5pdCwgVmlld0NvbnRhaW5lclJlZiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgU1RXaWRnZXRSZWdpc3RyeSB9IGZyb20gJy4vc3Qtd2lkZ2V0JztcbmltcG9ydCB7IFNUQ29sdW1uLCBTVERhdGEgfSBmcm9tICcuL3N0LmludGVyZmFjZXMnO1xuXG5ARGlyZWN0aXZlKHsgc2VsZWN0b3I6ICdbc3Qtd2lkZ2V0LWhvc3RdJyB9KVxuZXhwb3J0IGNsYXNzIFNUV2lkZ2V0SG9zdERpcmVjdGl2ZSBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gIEBJbnB1dCgpIHJlY29yZDogU1REYXRhO1xuICBASW5wdXQoKSBjb2x1bW46IFNUQ29sdW1uO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgc3RXaWRnZXRSZWdpc3RyeTogU1RXaWRnZXRSZWdpc3RyeSxcbiAgICBwcml2YXRlIHZpZXdDb250YWluZXJSZWY6IFZpZXdDb250YWluZXJSZWYsXG4gICAgcHJpdmF0ZSBjb21wb25lbnRGYWN0b3J5UmVzb2x2ZXI6IENvbXBvbmVudEZhY3RvcnlSZXNvbHZlcixcbiAgKSB7fVxuXG4gIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIGNvbnN0IHdpZGdldCA9IHRoaXMuY29sdW1uLndpZGdldCE7XG4gICAgY29uc3QgY29tcG9uZW50VHlwZSA9IHRoaXMuc3RXaWRnZXRSZWdpc3RyeS5nZXQod2lkZ2V0LnR5cGUpO1xuICAgIGNvbnN0IGNvbXBvbmVudEZhY3RvcnkgPSB0aGlzLmNvbXBvbmVudEZhY3RvcnlSZXNvbHZlci5yZXNvbHZlQ29tcG9uZW50RmFjdG9yeShjb21wb25lbnRUeXBlIGFzIGFueSk7XG5cbiAgICB0aGlzLnZpZXdDb250YWluZXJSZWYuY2xlYXIoKTtcbiAgICBjb25zdCBjb21wb25lbnRSZWYgPSB0aGlzLnZpZXdDb250YWluZXJSZWYuY3JlYXRlQ29tcG9uZW50KGNvbXBvbmVudEZhY3RvcnkpO1xuICAgIGNvbnN0IHsgcmVjb3JkLCBjb2x1bW4gfSA9IHRoaXM7XG4gICAgY29uc3QgZGF0YTogeyBba2V5OiBzdHJpbmddOiBhbnkgfSA9IHdpZGdldC5wYXJhbXMgPyB3aWRnZXQucGFyYW1zKHsgcmVjb3JkLCBjb2x1bW4gfSkgOiB7IHJlY29yZCB9O1xuICAgIE9iamVjdC5rZXlzKGRhdGEpLmZvckVhY2goa2V5ID0+IHtcbiAgICAgIChjb21wb25lbnRSZWYuaW5zdGFuY2UgYXMgYW55KVtrZXldID0gZGF0YVtrZXldO1xuICAgIH0pO1xuICB9XG59XG4iXX0=