UNPKG

ngx-diagrams

Version:

This library was generated with [Angular CLI](https://github.com/angular/angular-cli) version 7.2.0.

76 lines 6.87 kB
/** * @fileoverview added by tsickle * Generated from: lib/defaults/factories/default-port.factory.ts * @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc */ import { AbstractPortFactory } from '../../factories/port.factory'; import { DefaultPortModel } from '../models/default-port.model'; import { DefaultPortComponent } from '../components/default-port/default-port.component'; export class DefaultPortFactory extends AbstractPortFactory { /** * @param {?} resolver * @param {?} renderer */ constructor(resolver, renderer) { super('default'); this.resolver = resolver; this.renderer = renderer; } /** * @param {?} port * @param {?} portsHost * @return {?} */ generateWidget(port, portsHost) { /** @type {?} */ const componentRef = portsHost.createComponent(this.getRecipe()); // attach coordinates and default positional behaviour to the generated component host /** @type {?} */ const rootNode = (/** @type {?} */ (componentRef.location.nativeElement)); // data attributes this.renderer.setAttribute(rootNode, 'data-portid', port.id); this.renderer.setAttribute(rootNode, 'data-name', port.getName()); port.in ? this.renderer.addClass(rootNode, 'in') : this.renderer.addClass(rootNode, 'out'); // assign all passed properties to node initialization. Object.entries(port).forEach((/** * @param {?} __0 * @return {?} */ ([key, value]) => { componentRef.instance[key] = value; })); port.onEntityDestroy().subscribe((/** * @return {?} */ ( /** e */) => { componentRef.destroy(); })); return componentRef; } /** * @return {?} */ getRecipe() { return this.resolver.resolveComponentFactory(DefaultPortComponent); } /** * @param {?=} initialConfig * @return {?} */ getNewInstance(initialConfig) { return new DefaultPortModel(Object.assign({ isInput: true, name: 'unknown' }, initialConfig)); } } if (false) { /** * @type {?} * @private */ DefaultPortFactory.prototype.resolver; /** * @type {?} * @private */ DefaultPortFactory.prototype.renderer; } //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVmYXVsdC1wb3J0LmZhY3RvcnkuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9uZ3gtZGlhZ3JhbXMvIiwic291cmNlcyI6WyJsaWIvZGVmYXVsdHMvZmFjdG9yaWVzL2RlZmF1bHQtcG9ydC5mYWN0b3J5LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFDbkUsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFFaEUsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sbURBQW1ELENBQUM7QUFFekYsTUFBTSxPQUFPLGtCQUFtQixTQUFRLG1CQUFxQzs7Ozs7SUFDNUUsWUFBb0IsUUFBa0MsRUFBVSxRQUFtQjtRQUNsRixLQUFLLENBQUMsU0FBUyxDQUFDLENBQUM7UUFERSxhQUFRLEdBQVIsUUFBUSxDQUEwQjtRQUFVLGFBQVEsR0FBUixRQUFRLENBQVc7SUFFbkYsQ0FBQzs7Ozs7O0lBRUQsY0FBYyxDQUFDLElBQXNCLEVBQUUsU0FBMkI7O2NBQzNELFlBQVksR0FBRyxTQUFTLENBQUMsZUFBZSxDQUFDLElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQzs7O2NBRzFELFFBQVEsR0FBRyxtQkFBQSxZQUFZLENBQUMsUUFBUSxDQUFDLGFBQWEsRUFBZTtRQUVuRSxrQkFBa0I7UUFDbEIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxZQUFZLENBQUMsUUFBUSxFQUFFLGFBQWEsRUFBRSxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUM7UUFDN0QsSUFBSSxDQUFDLFFBQVEsQ0FBQyxZQUFZLENBQUMsUUFBUSxFQUFFLFdBQVcsRUFBRSxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUMsQ0FBQztRQUVsRSxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQyxRQUFRLEVBQUUsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUFDLFFBQVEsRUFBRSxLQUFLLENBQUMsQ0FBQztRQUUzRix1REFBdUQ7UUFDdkQsTUFBTSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQyxPQUFPOzs7O1FBQUMsQ0FBQyxDQUFDLEdBQUcsRUFBRSxLQUFLLENBQUMsRUFBRSxFQUFFO1lBQzdDLFlBQVksQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLEdBQUcsS0FBSyxDQUFDO1FBQ3BDLENBQUMsRUFBQyxDQUFDO1FBRUgsSUFBSSxDQUFDLGVBQWUsRUFBRSxDQUFDLFNBQVM7OztRQUFDLEVBQUMsUUFBUSxFQUFFLEVBQUU7WUFDN0MsWUFBWSxDQUFDLE9BQU8sRUFBRSxDQUFDO1FBQ3hCLENBQUMsRUFBQyxDQUFDO1FBRUgsT0FBTyxZQUFZLENBQUM7SUFDckIsQ0FBQzs7OztJQUVELFNBQVM7UUFDUixPQUFPLElBQUksQ0FBQyxRQUFRLENBQUMsdUJBQXVCLENBQUMsb0JBQW9CLENBQUMsQ0FBQztJQUNwRSxDQUFDOzs7OztJQUVELGNBQWMsQ0FBQyxhQUFtQjtRQUNqQyxPQUFPLElBQUksZ0JBQWdCLGlCQUFHLE9BQU8sRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLFNBQVMsSUFBSyxhQUFhLEVBQUcsQ0FBQztJQUNuRixDQUFDO0NBQ0Q7Ozs7OztJQW5DWSxzQ0FBMEM7Ozs7O0lBQUUsc0NBQTJCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQWJzdHJhY3RQb3J0RmFjdG9yeSB9IGZyb20gJy4uLy4uL2ZhY3Rvcmllcy9wb3J0LmZhY3RvcnknO1xuaW1wb3J0IHsgRGVmYXVsdFBvcnRNb2RlbCB9IGZyb20gJy4uL21vZGVscy9kZWZhdWx0LXBvcnQubW9kZWwnO1xuaW1wb3J0IHsgVmlld0NvbnRhaW5lclJlZiwgQ29tcG9uZW50UmVmLCBDb21wb25lbnRGYWN0b3J5LCBDb21wb25lbnRGYWN0b3J5UmVzb2x2ZXIsIFJlbmRlcmVyMiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRGVmYXVsdFBvcnRDb21wb25lbnQgfSBmcm9tICcuLi9jb21wb25lbnRzL2RlZmF1bHQtcG9ydC9kZWZhdWx0LXBvcnQuY29tcG9uZW50JztcblxuZXhwb3J0IGNsYXNzIERlZmF1bHRQb3J0RmFjdG9yeSBleHRlbmRzIEFic3RyYWN0UG9ydEZhY3Rvcnk8RGVmYXVsdFBvcnRNb2RlbD4ge1xuXHRjb25zdHJ1Y3Rvcihwcml2YXRlIHJlc29sdmVyOiBDb21wb25lbnRGYWN0b3J5UmVzb2x2ZXIsIHByaXZhdGUgcmVuZGVyZXI6IFJlbmRlcmVyMikge1xuXHRcdHN1cGVyKCdkZWZhdWx0Jyk7XG5cdH1cblxuXHRnZW5lcmF0ZVdpZGdldChwb3J0OiBEZWZhdWx0UG9ydE1vZGVsLCBwb3J0c0hvc3Q6IFZpZXdDb250YWluZXJSZWYpOiBDb21wb25lbnRSZWY8RGVmYXVsdFBvcnRDb21wb25lbnQ+IHtcblx0XHRjb25zdCBjb21wb25lbnRSZWYgPSBwb3J0c0hvc3QuY3JlYXRlQ29tcG9uZW50KHRoaXMuZ2V0UmVjaXBlKCkpO1xuXG5cdFx0Ly8gYXR0YWNoIGNvb3JkaW5hdGVzIGFuZCBkZWZhdWx0IHBvc2l0aW9uYWwgYmVoYXZpb3VyIHRvIHRoZSBnZW5lcmF0ZWQgY29tcG9uZW50IGhvc3Rcblx0XHRjb25zdCByb290Tm9kZSA9IGNvbXBvbmVudFJlZi5sb2NhdGlvbi5uYXRpdmVFbGVtZW50IGFzIEhUTUxFbGVtZW50O1xuXG5cdFx0Ly8gZGF0YSBhdHRyaWJ1dGVzXG5cdFx0dGhpcy5yZW5kZXJlci5zZXRBdHRyaWJ1dGUocm9vdE5vZGUsICdkYXRhLXBvcnRpZCcsIHBvcnQuaWQpO1xuXHRcdHRoaXMucmVuZGVyZXIuc2V0QXR0cmlidXRlKHJvb3ROb2RlLCAnZGF0YS1uYW1lJywgcG9ydC5nZXROYW1lKCkpO1xuXG5cdFx0cG9ydC5pbiA/IHRoaXMucmVuZGVyZXIuYWRkQ2xhc3Mocm9vdE5vZGUsICdpbicpIDogdGhpcy5yZW5kZXJlci5hZGRDbGFzcyhyb290Tm9kZSwgJ291dCcpO1xuXG5cdFx0Ly8gYXNzaWduIGFsbCBwYXNzZWQgcHJvcGVydGllcyB0byBub2RlIGluaXRpYWxpemF0aW9uLlxuXHRcdE9iamVjdC5lbnRyaWVzKHBvcnQpLmZvckVhY2goKFtrZXksIHZhbHVlXSkgPT4ge1xuXHRcdFx0Y29tcG9uZW50UmVmLmluc3RhbmNlW2tleV0gPSB2YWx1ZTtcblx0XHR9KTtcblxuXHRcdHBvcnQub25FbnRpdHlEZXN0cm95KCkuc3Vic2NyaWJlKCgvKiogZSAqLykgPT4ge1xuXHRcdFx0Y29tcG9uZW50UmVmLmRlc3Ryb3koKTtcblx0XHR9KTtcblxuXHRcdHJldHVybiBjb21wb25lbnRSZWY7XG5cdH1cblxuXHRnZXRSZWNpcGUoKTogQ29tcG9uZW50RmFjdG9yeTxEZWZhdWx0UG9ydENvbXBvbmVudD4ge1xuXHRcdHJldHVybiB0aGlzLnJlc29sdmVyLnJlc29sdmVDb21wb25lbnRGYWN0b3J5KERlZmF1bHRQb3J0Q29tcG9uZW50KTtcblx0fVxuXG5cdGdldE5ld0luc3RhbmNlKGluaXRpYWxDb25maWc/OiBhbnkpOiBEZWZhdWx0UG9ydE1vZGVsIHtcblx0XHRyZXR1cm4gbmV3IERlZmF1bHRQb3J0TW9kZWwoeyBpc0lucHV0OiB0cnVlLCBuYW1lOiAndW5rbm93bicsIC4uLmluaXRpYWxDb25maWcgfSk7XG5cdH1cbn1cbiJdfQ==