UNPKG

@sedeh/into-pipes

Version:

Have you ever wanted to transform data in different parts of your application into interactive objects without writing a single line of code?

80 lines 11.5 kB
import { Component, EventEmitter } from '@angular/core'; import * as i0 from "@angular/core"; import * as i1 from "@angular/common"; export class LinkComponent { constructor() { this.poped = false; this.disabled = false; this.active = true; this.validate = (item, newValue) => true; this.onIntoComponentChange = new EventEmitter(); } static settingsPatterns() { return ['link:::false', 'link:::true']; //target, label, popup } transform(source, data, args) { this.source = source; this.target = (args && args.length) ? args[0] : ""; this.title = (args && args.length > 1) ? args[1] : ""; this.poper = (args && args.length > 2) ? (args[1] == 'true') : false; if (!this.title || !this.title.length) { const q = source.indexOf("?"); const t = q < 0 ? source : source.substring(0, q); const d = t.lastIndexOf("/"); this.title = d < 0 ? t : t.substring(d + 1); } } keyup(event) { const code = event.which; event.stopPropagation(); event.preventDefault(); if (code === 13 && !this.disabled) { event.target.click(); } } change(event) { this.poped = false; if (!this.disabled) { this.onIntoComponentChange.emit({ id: this.id, name: this.name, value: this.source, type: "click", item: event.type }); } } } LinkComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: LinkComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); LinkComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: LinkComponent, selector: "link-component", ngImport: i0, template: ` <a [href]="disabled ? null : source" [target]="target" [textContent]="title" (mouseenter)='poped = !disabled' (mouseleave)='poped = false' (keyup)='keyup($event)' [class.disabled]="disabled" tabindex="{{active ? 0 : -1}}" (focus)="poped = true" (blur)="poped = false" (click)="change($event)"> </a> <img *ngIf='poped' [src]='source' />`, isInline: true, styles: [":host{display:table;float:left;min-height:var(--sedeh-min-height, 25px);position:relative}:host a{text-decoration:none}:host a.disabled{color:var(--sedeh-disabled-color, #888);cursor:default;text-decoration:none;pointer-events:none}:host a:focus{text-decoration:underline;outline:none;color:var(--sedeh-focus-color, darkblue)}:host img{z-index:2;border:2px solid;box-shadow:var(--sedeh-box-shadow, 3px 3px 3px #999);display:table;float:left;min-height:var(--sedeh-min-height, 25px);width:250px;top:22px;position:absolute;border-radius:4px}@media print{:host a{text-decoration:none}}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] }); i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: LinkComponent, decorators: [{ type: Component, args: [{ selector: 'link-component', template: ` <a [href]="disabled ? null : source" [target]="target" [textContent]="title" (mouseenter)='poped = !disabled' (mouseleave)='poped = false' (keyup)='keyup($event)' [class.disabled]="disabled" tabindex="{{active ? 0 : -1}}" (focus)="poped = true" (blur)="poped = false" (click)="change($event)"> </a> <img *ngIf='poped' [src]='source' />`, styles: [":host{display:table;float:left;min-height:var(--sedeh-min-height, 25px);position:relative}:host a{text-decoration:none}:host a.disabled{color:var(--sedeh-disabled-color, #888);cursor:default;text-decoration:none;pointer-events:none}:host a:focus{text-decoration:underline;outline:none;color:var(--sedeh-focus-color, darkblue)}:host img{z-index:2;border:2px solid;box-shadow:var(--sedeh-box-shadow, 3px 3px 3px #999);display:table;float:left;min-height:var(--sedeh-min-height, 25px);width:250px;top:22px;position:absolute;border-radius:4px}@media print{:host a{text-decoration:none}}\n"] }] }] }); //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGluay5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9pbnRvLXBpcGVzL3NyYy9saWIvbGluay9saW5rLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxNQUFNLGVBQWUsQ0FBQzs7O0FBa0N4RCxNQUFNLE9BQU8sYUFBYTtJQS9CMUI7UUFvQ0ksVUFBSyxHQUFHLEtBQUssQ0FBQztRQUdkLGFBQVEsR0FBRyxLQUFLLENBQUM7UUFDakIsV0FBTSxHQUFHLElBQUksQ0FBQztRQUNkLGFBQVEsR0FBRyxDQUFDLElBQVMsRUFBRSxRQUFhLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQztRQUVqRCwwQkFBcUIsR0FBRyxJQUFJLFlBQVksRUFBRSxDQUFDO0tBdUMzQztJQXJDRyxNQUFNLENBQUMsZ0JBQWdCO1FBQ25CLE9BQU8sQ0FBQyxjQUFjLEVBQUUsYUFBYSxDQUFDLENBQUMsQ0FBQyxzQkFBc0I7SUFDbEUsQ0FBQztJQUNELFNBQVMsQ0FBQyxNQUFXLEVBQUUsSUFBUyxFQUFFLElBQVc7UUFDekMsSUFBSSxDQUFDLE1BQU0sR0FBRyxNQUFNLENBQUM7UUFDckIsSUFBSSxDQUFDLE1BQU0sR0FBRyxDQUFDLElBQUksSUFBSSxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDO1FBQ25ELElBQUksQ0FBQyxLQUFLLEdBQUcsQ0FBQyxJQUFJLElBQUksSUFBSSxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUM7UUFDdEQsSUFBSSxDQUFDLEtBQUssR0FBRyxDQUFDLElBQUksSUFBSSxJQUFJLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsSUFBRyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDO1FBRXBFLElBQUcsQ0FBQyxJQUFJLENBQUMsS0FBSyxJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLEVBQUU7WUFDbEMsTUFBTSxDQUFDLEdBQUcsTUFBTSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsQ0FBQztZQUM5QixNQUFNLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDO1lBQ2xELE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQyxXQUFXLENBQUMsR0FBRyxDQUFDLENBQUM7WUFDN0IsSUFBSSxDQUFDLEtBQUssR0FBRyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUMsQ0FBQyxHQUFDLENBQUMsQ0FBQyxDQUFDO1NBQzdDO0lBQ0wsQ0FBQztJQUNELEtBQUssQ0FBQyxLQUFVO1FBQ1osTUFBTSxJQUFJLEdBQUcsS0FBSyxDQUFDLEtBQUssQ0FBQztRQUN6QixLQUFLLENBQUMsZUFBZSxFQUFFLENBQUM7UUFDeEIsS0FBSyxDQUFDLGNBQWMsRUFBRSxDQUFDO1FBRXZCLElBQUksSUFBSSxLQUFLLEVBQUUsSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFRLEVBQUU7WUFDL0IsS0FBSyxDQUFDLE1BQU0sQ0FBQyxLQUFLLEVBQUUsQ0FBQztTQUN4QjtJQUNMLENBQUM7SUFDRCxNQUFNLENBQUMsS0FBVTtRQUNiLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO1FBQ25CLElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUSxFQUFFO1lBQ2hCLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxJQUFJLENBQUM7Z0JBQzVCLEVBQUUsRUFBRSxJQUFJLENBQUMsRUFBRTtnQkFDWCxJQUFJLEVBQUUsSUFBSSxDQUFDLElBQUk7Z0JBQ2YsS0FBSyxFQUFFLElBQUksQ0FBQyxNQUFNO2dCQUNsQixJQUFJLEVBQUUsT0FBTztnQkFDYixJQUFJLEVBQUUsS0FBSyxDQUFDLElBQUk7YUFDbkIsQ0FBQyxDQUFDO1NBQ047SUFDTCxDQUFDOzsyR0FsRFEsYUFBYTsrRkFBYixhQUFhLHNEQTdCWjs7Ozs7Ozs7Ozs7Ozs2Q0FhK0I7NEZBZ0JoQyxhQUFhO2tCQS9CekIsU0FBUzsrQkFDSSxnQkFBZ0IsWUFDaEI7Ozs7Ozs7Ozs7Ozs7NkNBYStCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgUGlwZUNvbXBvbmVudEludGVyZmFjZSB9IGZyb20gJy4uL2NvbW1vbi9waXBlLmNvbXBvbmVudC5pbnRlcmZhY2UnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgICBzZWxlY3RvcjogJ2xpbmstY29tcG9uZW50JyxcclxuICAgIHRlbXBsYXRlOiBgXHJcbiAgICA8YSBbaHJlZl09XCJkaXNhYmxlZCA/IG51bGwgOiBzb3VyY2VcIiBcclxuICAgICAgICBbdGFyZ2V0XT1cInRhcmdldFwiIFxyXG4gICAgICAgIFt0ZXh0Q29udGVudF09XCJ0aXRsZVwiIFxyXG4gICAgICAgIChtb3VzZWVudGVyKT0ncG9wZWQgPSAhZGlzYWJsZWQnIFxyXG4gICAgICAgIChtb3VzZWxlYXZlKT0ncG9wZWQgPSBmYWxzZScgXHJcbiAgICAgICAgKGtleXVwKT0na2V5dXAoJGV2ZW50KScgXHJcbiAgICAgICAgW2NsYXNzLmRpc2FibGVkXT1cImRpc2FibGVkXCJcclxuICAgICAgICB0YWJpbmRleD1cInt7YWN0aXZlID8gMCA6IC0xfX1cIlxyXG4gICAgICAgIChmb2N1cyk9XCJwb3BlZCA9IHRydWVcIlxyXG4gICAgICAgIChibHVyKT1cInBvcGVkID0gZmFsc2VcIlxyXG4gICAgICAgIChjbGljayk9XCJjaGFuZ2UoJGV2ZW50KVwiPlxyXG4gICAgICAgIDwvYT5cclxuICAgICAgICA8aW1nICpuZ0lmPSdwb3BlZCcgW3NyY109J3NvdXJjZScgLz5gLFxyXG4gICAgc3R5bGVzOiBbXHJcbiAgICAgICAgYFxyXG4gICAgICAgIDpob3N0IHtkaXNwbGF5OnRhYmxlO2Zsb2F0OmxlZnQ7bWluLWhlaWdodDogdmFyKC0tc2VkZWgtbWluLWhlaWdodCwgMjVweCk7IHBvc2l0aW9uOnJlbGF0aXZlfVxyXG4gICAgICAgIDpob3N0IGF7dGV4dC1kZWNvcmF0aW9uOiBub25lfVxyXG4gICAgICAgIDpob3N0IGEuZGlzYWJsZWR7Y29sb3I6IHZhcigtLXNlZGVoLWRpc2FibGVkLWNvbG9yLCAjODg4KTtjdXJzb3I6ZGVmYXVsdDt0ZXh0LWRlY29yYXRpb246IG5vbmU7IHBvaW50ZXItZXZlbnRzOiBub25lfVxyXG4gICAgICAgIDpob3N0IGE6Zm9jdXN7dGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7b3V0bGluZTogbm9uZTtjb2xvcjogdmFyKC0tc2VkZWgtZm9jdXMtY29sb3IsIGRhcmtibHVlKTt9XHJcbiAgICAgICAgOmhvc3QgaW1ne3otaW5kZXg6Mjtib3JkZXI6MnB4IHNvbGlkO2JveC1zaGFkb3c6IHZhcigtLXNlZGVoLWJveC1zaGFkb3csIDNweCAzcHggM3B4ICM5OTkpO2Rpc3BsYXk6dGFibGU7ZmxvYXQ6bGVmdDttaW4taGVpZ2h0OiB2YXIoLS1zZWRlaC1taW4taGVpZ2h0LCAyNXB4KTsgd2lkdGg6IDI1MHB4O3RvcDogMjJweDtwb3NpdGlvbjphYnNvbHV0ZTtib3JkZXItcmFkaXVzOiA0cHh9XHJcbiAgICAgICAgQG1lZGlhIHByaW50IHtcclxuICAgICAgICAgICAgOmhvc3QgYSB7XHJcbiAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgYFxyXG4gICAgXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgTGlua0NvbXBvbmVudCBpbXBsZW1lbnRzIFBpcGVDb21wb25lbnRJbnRlcmZhY2Uge1xyXG4gICAgc291cmNlITogc3RyaW5nO1xyXG5cdGlkITogc3RyaW5nO1xyXG5cdG5hbWUhOiBzdHJpbmc7XHJcbiAgICB0aXRsZSE6IHN0cmluZztcclxuICAgIHBvcGVkID0gZmFsc2U7XHJcbiAgICBwb3BlciE6IGJvb2xlYW47XHJcbiAgICB0YXJnZXQhOiBzdHJpbmc7XHJcbiAgICBkaXNhYmxlZCA9IGZhbHNlO1xyXG4gICAgYWN0aXZlID0gdHJ1ZTtcclxuICAgIHZhbGlkYXRlID0gKGl0ZW06IGFueSwgbmV3VmFsdWU6IGFueSkgPT4gdHJ1ZTtcclxuXHJcblx0b25JbnRvQ29tcG9uZW50Q2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcigpO1xyXG5cclxuICAgIHN0YXRpYyBzZXR0aW5nc1BhdHRlcm5zKCkge1xyXG4gICAgICAgIHJldHVybiBbJ2xpbms6OjpmYWxzZScsICdsaW5rOjo6dHJ1ZSddOyAvL3RhcmdldCwgbGFiZWwsIHBvcHVwXHJcbiAgICB9XHJcbiAgICB0cmFuc2Zvcm0oc291cmNlOiBhbnksIGRhdGE6IGFueSwgYXJnczogYW55W10pIHtcclxuICAgICAgICB0aGlzLnNvdXJjZSA9IHNvdXJjZTtcclxuICAgICAgICB0aGlzLnRhcmdldCA9IChhcmdzICYmIGFyZ3MubGVuZ3RoKSA/IGFyZ3NbMF0gOiBcIlwiO1xyXG4gICAgICAgIHRoaXMudGl0bGUgPSAoYXJncyAmJiBhcmdzLmxlbmd0aCA+IDEpID8gYXJnc1sxXSA6IFwiXCI7XHJcbiAgICAgICAgdGhpcy5wb3BlciA9IChhcmdzICYmIGFyZ3MubGVuZ3RoID4gMikgPyAoYXJnc1sxXSA9PSd0cnVlJykgOiBmYWxzZTtcclxuICAgIFxyXG4gICAgICAgIGlmKCF0aGlzLnRpdGxlIHx8ICF0aGlzLnRpdGxlLmxlbmd0aCkge1xyXG4gICAgICAgICAgICBjb25zdCBxID0gc291cmNlLmluZGV4T2YoXCI/XCIpO1xyXG4gICAgICAgICAgICBjb25zdCB0ID0gcSA8IDAgPyBzb3VyY2UgOiBzb3VyY2Uuc3Vic3RyaW5nKDAsIHEpO1xyXG4gICAgICAgICAgICBjb25zdCBkID0gdC5sYXN0SW5kZXhPZihcIi9cIik7XHJcbiAgICAgICAgICAgIHRoaXMudGl0bGUgPSBkIDwgMCA/IHQgOiB0LnN1YnN0cmluZyhkKzEpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIGtleXVwKGV2ZW50OiBhbnkpIHtcclxuICAgICAgICBjb25zdCBjb2RlID0gZXZlbnQud2hpY2g7XHJcbiAgICAgICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XHJcbiAgICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcclxuICAgIFxyXG4gICAgICAgIGlmIChjb2RlID09PSAxMyAmJiAhdGhpcy5kaXNhYmxlZCkge1xyXG4gICAgICAgICAgICBldmVudC50YXJnZXQuY2xpY2soKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICBjaGFuZ2UoZXZlbnQ6IGFueSkge1xyXG4gICAgICAgIHRoaXMucG9wZWQgPSBmYWxzZTtcclxuICAgICAgICBpZiAoIXRoaXMuZGlzYWJsZWQpIHtcclxuICAgICAgICAgICAgdGhpcy5vbkludG9Db21wb25lbnRDaGFuZ2UuZW1pdCh7XHJcbiAgICAgICAgICAgICAgICBpZDogdGhpcy5pZCxcclxuICAgICAgICAgICAgICAgIG5hbWU6IHRoaXMubmFtZSxcclxuICAgICAgICAgICAgICAgIHZhbHVlOiB0aGlzLnNvdXJjZSxcclxuICAgICAgICAgICAgICAgIHR5cGU6IFwiY2xpY2tcIixcclxuICAgICAgICAgICAgICAgIGl0ZW06IGV2ZW50LnR5cGVcclxuICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcbiJdfQ==