ngx-diagrams
Version:
This library was generated with [Angular CLI](https://github.com/angular/angular-cli) version 7.2.0.
93 lines • 7.44 kB
JavaScript
/**
* @fileoverview added by tsickle
* Generated from: lib/defaults/factories/default-link.factory.ts
* @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/
import * as tslib_1 from "tslib";
import { AbstractLinkFactory } from '../../factories/link.factory';
import { DefaultLinkComponent } from '../components/default-link/default-link.component';
import { DefaultLinkModel } from '../models/default-link.model';
var DefaultLinkFactory = /** @class */ (function (_super) {
tslib_1.__extends(DefaultLinkFactory, _super);
function DefaultLinkFactory(resolver, renderer) {
var _this = _super.call(this, 'default') || this;
_this.resolver = resolver;
_this.renderer = renderer;
return _this;
}
/**
* @param {?} diagramEngine
* @param {?} link
* @param {?} linksHost
* @return {?}
*/
DefaultLinkFactory.prototype.generateWidget = /**
* @param {?} diagramEngine
* @param {?} link
* @param {?} linksHost
* @return {?}
*/
function (diagramEngine, link, linksHost) {
/** @type {?} */
var componentRef = linksHost.createComponent(this.getRecipe());
// attach coordinates and default positional behaviour to the generated component host
/** @type {?} */
var rootNode = componentRef.location.nativeElement;
// default style for link
this.renderer.setStyle(rootNode, 'position', 'absolute');
this.renderer.addClass(rootNode, 'label');
// data attributes
this.renderer.setAttribute(rootNode, 'data-linkid', link.id);
// on destroy make sure to destroy the componentRef
link.onEntityDestroy().subscribe((/**
* @return {?}
*/
function () {
componentRef.destroy();
}));
// assign all passed properties to link initialization.
Object.entries(link).forEach((/**
* @param {?} __0
* @return {?}
*/
function (_a) {
var _b = tslib_1.__read(_a, 2), key = _b[0], value = _b[1];
componentRef.instance[key] = value;
}));
componentRef.instance.diagramEngine = diagramEngine;
return componentRef;
};
/**
* @return {?}
*/
DefaultLinkFactory.prototype.getRecipe = /**
* @return {?}
*/
function () {
return this.resolver.resolveComponentFactory(DefaultLinkComponent);
};
/**
* @return {?}
*/
DefaultLinkFactory.prototype.getNewInstance = /**
* @return {?}
*/
function () {
return new DefaultLinkModel();
};
return DefaultLinkFactory;
}(AbstractLinkFactory));
export { DefaultLinkFactory };
if (false) {
/**
* @type {?}
* @private
*/
DefaultLinkFactory.prototype.resolver;
/**
* @type {?}
* @private
*/
DefaultLinkFactory.prototype.renderer;
}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVmYXVsdC1saW5rLmZhY3RvcnkuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9uZ3gtZGlhZ3JhbXMvIiwic291cmNlcyI6WyJsaWIvZGVmYXVsdHMvZmFjdG9yaWVzL2RlZmF1bHQtbGluay5mYWN0b3J5LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7OztBQUFBLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQ25FLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLG1EQUFtRCxDQUFDO0FBQ3pGLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBSWhFO0lBQXdDLDhDQUFxQztJQUM1RSw0QkFBb0IsUUFBa0MsRUFBVSxRQUFtQjtRQUFuRixZQUNDLGtCQUFNLFNBQVMsQ0FBQyxTQUNoQjtRQUZtQixjQUFRLEdBQVIsUUFBUSxDQUEwQjtRQUFVLGNBQVEsR0FBUixRQUFRLENBQVc7O0lBRW5GLENBQUM7Ozs7Ozs7SUFFRCwyQ0FBYzs7Ozs7O0lBQWQsVUFBZSxhQUE0QixFQUFFLElBQXNCLEVBQUUsU0FBMkI7O1lBQ3pGLFlBQVksR0FBRyxTQUFTLENBQUMsZUFBZSxDQUFDLElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQzs7O1lBRzFELFFBQVEsR0FBRyxZQUFZLENBQUMsUUFBUSxDQUFDLGFBQWE7UUFFcEQseUJBQXlCO1FBQ3pCLElBQUksQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUFDLFFBQVEsRUFBRSxVQUFVLEVBQUUsVUFBVSxDQUFDLENBQUM7UUFDekQsSUFBSSxDQUFDLFFBQVEsQ0FBQyxRQUFRLENBQUMsUUFBUSxFQUFFLE9BQU8sQ0FBQyxDQUFDO1FBRTFDLGtCQUFrQjtRQUNsQixJQUFJLENBQUMsUUFBUSxDQUFDLFlBQVksQ0FBQyxRQUFRLEVBQUUsYUFBYSxFQUFFLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQztRQUU3RCxtREFBbUQ7UUFDbkQsSUFBSSxDQUFDLGVBQWUsRUFBRSxDQUFDLFNBQVM7OztRQUFDO1lBQ2hDLFlBQVksQ0FBQyxPQUFPLEVBQUUsQ0FBQztRQUN4QixDQUFDLEVBQUMsQ0FBQztRQUVILHVEQUF1RDtRQUN2RCxNQUFNLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDLE9BQU87Ozs7UUFBQyxVQUFDLEVBQVk7Z0JBQVosMEJBQVksRUFBWCxXQUFHLEVBQUUsYUFBSztZQUN4QyxZQUFZLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxHQUFHLEtBQUssQ0FBQztRQUNwQyxDQUFDLEVBQUMsQ0FBQztRQUVILFlBQVksQ0FBQyxRQUFRLENBQUMsYUFBYSxHQUFHLGFBQWEsQ0FBQztRQUVwRCxPQUFPLFlBQVksQ0FBQztJQUNyQixDQUFDOzs7O0lBRUQsc0NBQVM7OztJQUFUO1FBQ0MsT0FBTyxJQUFJLENBQUMsUUFBUSxDQUFDLHVCQUF1QixDQUFDLG9CQUFvQixDQUFDLENBQUM7SUFDcEUsQ0FBQzs7OztJQUVELDJDQUFjOzs7SUFBZDtRQUNDLE9BQU8sSUFBSSxnQkFBZ0IsRUFBRSxDQUFDO0lBQy9CLENBQUM7SUFDRix5QkFBQztBQUFELENBQUMsQUF4Q0QsQ0FBd0MsbUJBQW1CLEdBd0MxRDs7Ozs7OztJQXZDWSxzQ0FBMEM7Ozs7O0lBQUUsc0NBQTJCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQWJzdHJhY3RMaW5rRmFjdG9yeSB9IGZyb20gJy4uLy4uL2ZhY3Rvcmllcy9saW5rLmZhY3RvcnknO1xuaW1wb3J0IHsgRGVmYXVsdExpbmtDb21wb25lbnQgfSBmcm9tICcuLi9jb21wb25lbnRzL2RlZmF1bHQtbGluay9kZWZhdWx0LWxpbmsuY29tcG9uZW50JztcbmltcG9ydCB7IERlZmF1bHRMaW5rTW9kZWwgfSBmcm9tICcuLi9tb2RlbHMvZGVmYXVsdC1saW5rLm1vZGVsJztcbmltcG9ydCB7IFZpZXdDb250YWluZXJSZWYsIENvbXBvbmVudFJlZiwgQ29tcG9uZW50RmFjdG9yeVJlc29sdmVyLCBDb21wb25lbnRGYWN0b3J5LCBSZW5kZXJlcjIgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IERpYWdyYW1FbmdpbmUgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy9lbmdpbmUuc2VydmljZSc7XG5cbmV4cG9ydCBjbGFzcyBEZWZhdWx0TGlua0ZhY3RvcnkgZXh0ZW5kcyBBYnN0cmFjdExpbmtGYWN0b3J5PERlZmF1bHRMaW5rTW9kZWw+IHtcblx0Y29uc3RydWN0b3IocHJpdmF0ZSByZXNvbHZlcjogQ29tcG9uZW50RmFjdG9yeVJlc29sdmVyLCBwcml2YXRlIHJlbmRlcmVyOiBSZW5kZXJlcjIpIHtcblx0XHRzdXBlcignZGVmYXVsdCcpO1xuXHR9XG5cblx0Z2VuZXJhdGVXaWRnZXQoZGlhZ3JhbUVuZ2luZTogRGlhZ3JhbUVuZ2luZSwgbGluazogRGVmYXVsdExpbmtNb2RlbCwgbGlua3NIb3N0OiBWaWV3Q29udGFpbmVyUmVmKTogQ29tcG9uZW50UmVmPERlZmF1bHRMaW5rQ29tcG9uZW50PiB7XG5cdFx0Y29uc3QgY29tcG9uZW50UmVmID0gbGlua3NIb3N0LmNyZWF0ZUNvbXBvbmVudCh0aGlzLmdldFJlY2lwZSgpKTtcblxuXHRcdC8vIGF0dGFjaCBjb29yZGluYXRlcyBhbmQgZGVmYXVsdCBwb3NpdGlvbmFsIGJlaGF2aW91ciB0byB0aGUgZ2VuZXJhdGVkIGNvbXBvbmVudCBob3N0XG5cdFx0Y29uc3Qgcm9vdE5vZGUgPSBjb21wb25lbnRSZWYubG9jYXRpb24ubmF0aXZlRWxlbWVudDtcblxuXHRcdC8vIGRlZmF1bHQgc3R5bGUgZm9yIGxpbmtcblx0XHR0aGlzLnJlbmRlcmVyLnNldFN0eWxlKHJvb3ROb2RlLCAncG9zaXRpb24nLCAnYWJzb2x1dGUnKTtcblx0XHR0aGlzLnJlbmRlcmVyLmFkZENsYXNzKHJvb3ROb2RlLCAnbGFiZWwnKTtcblxuXHRcdC8vIGRhdGEgYXR0cmlidXRlc1xuXHRcdHRoaXMucmVuZGVyZXIuc2V0QXR0cmlidXRlKHJvb3ROb2RlLCAnZGF0YS1saW5raWQnLCBsaW5rLmlkKTtcblxuXHRcdC8vIG9uIGRlc3Ryb3kgbWFrZSBzdXJlIHRvIGRlc3Ryb3kgdGhlIGNvbXBvbmVudFJlZlxuXHRcdGxpbmsub25FbnRpdHlEZXN0cm95KCkuc3Vic2NyaWJlKCgpID0+IHtcblx0XHRcdGNvbXBvbmVudFJlZi5kZXN0cm95KCk7XG5cdFx0fSk7XG5cblx0XHQvLyBhc3NpZ24gYWxsIHBhc3NlZCBwcm9wZXJ0aWVzIHRvIGxpbmsgaW5pdGlhbGl6YXRpb24uXG5cdFx0T2JqZWN0LmVudHJpZXMobGluaykuZm9yRWFjaCgoW2tleSwgdmFsdWVdKSA9PiB7XG5cdFx0XHRjb21wb25lbnRSZWYuaW5zdGFuY2Vba2V5XSA9IHZhbHVlO1xuXHRcdH0pO1xuXG5cdFx0Y29tcG9uZW50UmVmLmluc3RhbmNlLmRpYWdyYW1FbmdpbmUgPSBkaWFncmFtRW5naW5lO1xuXG5cdFx0cmV0dXJuIGNvbXBvbmVudFJlZjtcblx0fVxuXG5cdGdldFJlY2lwZSgpOiBDb21wb25lbnRGYWN0b3J5PERlZmF1bHRMaW5rQ29tcG9uZW50PiB7XG5cdFx0cmV0dXJuIHRoaXMucmVzb2x2ZXIucmVzb2x2ZUNvbXBvbmVudEZhY3RvcnkoRGVmYXVsdExpbmtDb21wb25lbnQpO1xuXHR9XG5cblx0Z2V0TmV3SW5zdGFuY2UoKSB7XG5cdFx0cmV0dXJuIG5ldyBEZWZhdWx0TGlua01vZGVsKCk7XG5cdH1cbn1cbiJdfQ==