UNPKG

@kushki/ng-suka

Version:

<p align="center"> <h1 align="center">Suka Components Angular</h1> <p align="center"> An Angular implementation of the Suka Design System </p> </p>

160 lines 10.5 kB
/** * @fileoverview added by tsickle * @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc */ // tslint:disable: variable-name import { Directive, HostBinding, Input, ElementRef, Renderer2, Inject } from '@angular/core'; import { DOCUMENT } from '@angular/common'; import { iconDefs } from '../icon/icon-defs'; var ɵ0 = /** * @param {?} iconDef * @return {?} */ function (iconDef) { return iconDef.name === 'arrow-right'; }; /** @type {?} */ var arrowImg = iconDefs.find((ɵ0)).template; var ɵ1 = /** * @param {?} iconDef * @return {?} */ function (iconDef) { return iconDef.name === 'external-link'; }; /** @type {?} */ var externalImg = iconDefs.find((ɵ1)).template; var Link = /** @class */ (function () { function Link(elementRef, renderer, document) { this.elementRef = elementRef; this.renderer = renderer; this.document = document; this.baseClass = true; this.arrow = false; } Object.defineProperty(Link.prototype, "disabled", { get: /** * @return {?} */ function () { return this._disabled; }, /** * Set to true to disable link. */ set: /** * Set to true to disable link. * @param {?} disabled * @return {?} */ function (disabled) { this._disabled = disabled; this.tabindex = this.disabled ? -1 : null; }, enumerable: true, configurable: true }); Object.defineProperty(Link.prototype, "external", { get: /** * @return {?} */ function () { return this._external; }, set: /** * @param {?} external * @return {?} */ function (external) { this._external = external; this.target = this.external ? '_blank' : null; this.ref = this.external ? 'noopener' : null; }, enumerable: true, configurable: true }); /** * @return {?} */ Link.prototype.ngOnInit = /** * @return {?} */ function () { if (this.arrow || this.external) { /** @type {?} */ var child = document.createElement('span'); child.className = 'link__icon'; if (this.arrow) { child.className += ' link__icon--arrow'; child.innerHTML = arrowImg; } if (this.external) { child.innerHTML = externalImg; } this.renderer.appendChild(this.elementRef.nativeElement, child); } }; Link.decorators = [ { type: Directive, args: [{ selector: '[sukaLink]' },] } ]; /** @nocollapse */ Link.ctorParameters = function () { return [ { type: ElementRef }, { type: Renderer2 }, { type: undefined, decorators: [{ type: Inject, args: [DOCUMENT,] }] } ]; }; Link.propDecorators = { baseClass: [{ type: HostBinding, args: ['class.link',] }], tabindex: [{ type: HostBinding, args: ['attr.tabindex',] }], target: [{ type: HostBinding, args: ['attr.target',] }], ref: [{ type: HostBinding, args: ['attr.ref',] }], disabled: [{ type: Input }, { type: HostBinding, args: ['attr.aria-disabled',] }, { type: HostBinding, args: ['class.link--disabled',] }], arrow: [{ type: HostBinding, args: ['class.link--arrow',] }, { type: Input }], external: [{ type: Input }, { type: HostBinding, args: ['class.link--external',] }] }; return Link; }()); export { Link }; if (false) { /** @type {?} */ Link.prototype.baseClass; /** * Automatically set to `-1` when link is disabled. * @type {?} */ Link.prototype.tabindex; /** * Set target and ref for external links * @type {?} */ Link.prototype.target; /** @type {?} */ Link.prototype.ref; /** * @type {?} * @private */ Link.prototype._disabled; /** @type {?} */ Link.prototype.arrow; /** * @type {?} * @private */ Link.prototype._external; /** * @type {?} * @private */ Link.prototype.elementRef; /** * @type {?} * @private */ Link.prototype.renderer; /** * @type {?} * @private */ Link.prototype.document; } export { ɵ0, ɵ1 }; //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGluay5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9Aa3VzaGtpL25nLXN1a2EvIiwic291cmNlcyI6WyJsaWIvbGluay9saW5rLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUNBLE9BQU8sRUFDTCxTQUFTLEVBQ1QsV0FBVyxFQUNYLEtBQUssRUFDTCxVQUFVLEVBQ1YsU0FBUyxFQUNULE1BQU0sRUFFUCxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDM0MsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLG1CQUFtQixDQUFDOzs7OztBQUVkLFVBQUEsT0FBTyxJQUFJLE9BQUEsT0FBTyxDQUFDLElBQUksS0FBSyxhQUFhLEVBQTlCLENBQThCOztJQUFsRSxRQUFRLEdBQUcsUUFBUSxDQUFDLElBQUksTUFBMkMsQ0FBQyxRQUFROzs7OztBQUNoRCxVQUFBLE9BQU8sSUFBSSxPQUFBLE9BQU8sQ0FBQyxJQUFJLEtBQUssZUFBZSxFQUFoQyxDQUFnQzs7SUFBdkUsV0FBVyxHQUFHLFFBQVEsQ0FBQyxJQUFJLE1BQTZDLENBQUMsUUFBUTtBQUV2RjtJQW1ERSxjQUFvQixVQUFzQixFQUFVLFFBQW1CLEVBQTRCLFFBQVE7UUFBdkYsZUFBVSxHQUFWLFVBQVUsQ0FBWTtRQUFVLGFBQVEsR0FBUixRQUFRLENBQVc7UUFBNEIsYUFBUSxHQUFSLFFBQVEsQ0FBQTtRQTlDaEYsY0FBUyxHQUFHLElBQUksQ0FBQztRQThCRCxVQUFLLEdBQUcsS0FBSyxDQUFDO0lBZ0JzRCxDQUFDO0lBOUJoSCxzQkFHSSwwQkFBUTs7OztRQUtaO1lBQ0UsT0FBTyxJQUFJLENBQUMsU0FBUyxDQUFDO1FBQ3hCLENBQUM7UUFiRDs7V0FFRzs7Ozs7O1FBQ0gsVUFHYSxRQUFpQjtZQUM1QixJQUFJLENBQUMsU0FBUyxHQUFHLFFBQVEsQ0FBQztZQUMxQixJQUFJLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUM7UUFDNUMsQ0FBQzs7O09BQUE7SUFVRCxzQkFFSSwwQkFBUTs7OztRQU1aO1lBQ0UsT0FBTyxJQUFJLENBQUMsU0FBUyxDQUFDO1FBQ3hCLENBQUM7Ozs7O1FBVkQsVUFFYSxRQUFpQjtZQUM1QixJQUFJLENBQUMsU0FBUyxHQUFHLFFBQVEsQ0FBQztZQUMxQixJQUFJLENBQUMsTUFBTSxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDO1lBQzlDLElBQUksQ0FBQyxHQUFHLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUM7UUFDL0MsQ0FBQzs7O09BQUE7Ozs7SUFVRCx1QkFBUTs7O0lBQVI7UUFDRSxJQUFJLElBQUksQ0FBQyxLQUFLLElBQUksSUFBSSxDQUFDLFFBQVEsRUFBRTs7Z0JBQ3pCLEtBQUssR0FBRyxRQUFRLENBQUMsYUFBYSxDQUFDLE1BQU0sQ0FBQztZQUM1QyxLQUFLLENBQUMsU0FBUyxHQUFHLFlBQVksQ0FBQztZQUUvQixJQUFJLElBQUksQ0FBQyxLQUFLLEVBQUU7Z0JBQ2QsS0FBSyxDQUFDLFNBQVMsSUFBSSxvQkFBb0IsQ0FBQztnQkFDeEMsS0FBSyxDQUFDLFNBQVMsR0FBRyxRQUFRLENBQUM7YUFDNUI7WUFFRCxJQUFJLElBQUksQ0FBQyxRQUFRLEVBQUU7Z0JBQ2pCLEtBQUssQ0FBQyxTQUFTLEdBQUcsV0FBVyxDQUFDO2FBQy9CO1lBRUQsSUFBSSxDQUFDLFFBQVEsQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxhQUFhLEVBQUUsS0FBSyxDQUFDLENBQUM7U0FDakU7SUFDSCxDQUFDOztnQkFyRUYsU0FBUyxTQUFDO29CQUNULFFBQVEsRUFBRSxZQUFZO2lCQUN2Qjs7OztnQkFiQyxVQUFVO2dCQUNWLFNBQVM7Z0RBNkRpRSxNQUFNLFNBQUMsUUFBUTs7OzRCQTlDeEYsV0FBVyxTQUFDLFlBQVk7MkJBS3hCLFdBQVcsU0FBQyxlQUFlO3lCQUszQixXQUFXLFNBQUMsYUFBYTtzQkFDekIsV0FBVyxTQUFDLFVBQVU7MkJBS3RCLEtBQUssWUFDTCxXQUFXLFNBQUMsb0JBQW9CLGNBQ2hDLFdBQVcsU0FBQyxzQkFBc0I7d0JBWWxDLFdBQVcsU0FBQyxtQkFBbUIsY0FBRyxLQUFLOzJCQUV2QyxLQUFLLFlBQ0wsV0FBVyxTQUFDLHNCQUFzQjs7SUFnQ3JDLFdBQUM7Q0FBQSxBQXRFRCxJQXNFQztTQWxFWSxJQUFJOzs7SUFDZix5QkFBNEM7Ozs7O0lBSzVDLHdCQUErQzs7Ozs7SUFLL0Msc0JBQTJDOztJQUMzQyxtQkFBcUM7Ozs7O0lBaUJyQyx5QkFBMkI7O0lBRTNCLHFCQUF5RDs7Ozs7SUFjekQseUJBQTJCOzs7OztJQUVmLDBCQUE4Qjs7Ozs7SUFBRSx3QkFBMkI7Ozs7O0lBQUUsd0JBQWtDIiwic291cmNlc0NvbnRlbnQiOlsiLy8gdHNsaW50OmRpc2FibGU6IHZhcmlhYmxlLW5hbWVcbmltcG9ydCB7XG4gIERpcmVjdGl2ZSxcbiAgSG9zdEJpbmRpbmcsXG4gIElucHV0LFxuICBFbGVtZW50UmVmLFxuICBSZW5kZXJlcjIsXG4gIEluamVjdCxcbiAgT25Jbml0XG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRE9DVU1FTlQgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgaWNvbkRlZnMgfSBmcm9tICcuLi9pY29uL2ljb24tZGVmcyc7XG5cbmNvbnN0IGFycm93SW1nID0gaWNvbkRlZnMuZmluZChpY29uRGVmID0+IGljb25EZWYubmFtZSA9PT0gJ2Fycm93LXJpZ2h0JykudGVtcGxhdGU7XG5jb25zdCBleHRlcm5hbEltZyA9IGljb25EZWZzLmZpbmQoaWNvbkRlZiA9PiBpY29uRGVmLm5hbWUgPT09ICdleHRlcm5hbC1saW5rJykudGVtcGxhdGU7XG5cbkBEaXJlY3RpdmUoe1xuICBzZWxlY3RvcjogJ1tzdWthTGlua10nXG59KVxuLy8gdHNsaW50OmRpc2FibGUtbmV4dC1saW5lOiBkaXJlY3RpdmUtY2xhc3Mtc3VmZml4XG5leHBvcnQgY2xhc3MgTGluayBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gIEBIb3N0QmluZGluZygnY2xhc3MubGluaycpIGJhc2VDbGFzcyA9IHRydWU7XG5cbiAgLyoqXG4gICAqIEF1dG9tYXRpY2FsbHkgc2V0IHRvIGAtMWAgd2hlbiBsaW5rIGlzIGRpc2FibGVkLlxuICAgKi9cbiAgQEhvc3RCaW5kaW5nKCdhdHRyLnRhYmluZGV4JykgdGFiaW5kZXg6IG51bWJlcjtcblxuICAvKipcbiAgICogU2V0IHRhcmdldCBhbmQgcmVmIGZvciBleHRlcm5hbCBsaW5rc1xuICAgKi9cbiAgQEhvc3RCaW5kaW5nKCdhdHRyLnRhcmdldCcpIHRhcmdldDogc3RyaW5nO1xuICBASG9zdEJpbmRpbmcoJ2F0dHIucmVmJykgcmVmOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFNldCB0byB0cnVlIHRvIGRpc2FibGUgbGluay5cbiAgICovXG4gIEBJbnB1dCgpXG4gIEBIb3N0QmluZGluZygnYXR0ci5hcmlhLWRpc2FibGVkJylcbiAgQEhvc3RCaW5kaW5nKCdjbGFzcy5saW5rLS1kaXNhYmxlZCcpXG4gIHNldCBkaXNhYmxlZChkaXNhYmxlZDogYm9vbGVhbikge1xuICAgIHRoaXMuX2Rpc2FibGVkID0gZGlzYWJsZWQ7XG4gICAgdGhpcy50YWJpbmRleCA9IHRoaXMuZGlzYWJsZWQgPyAtMSA6IG51bGw7XG4gIH1cblxuICBnZXQgZGlzYWJsZWQoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuX2Rpc2FibGVkO1xuICB9XG5cbiAgcHJpdmF0ZSBfZGlzYWJsZWQ6IGJvb2xlYW47XG5cbiAgQEhvc3RCaW5kaW5nKCdjbGFzcy5saW5rLS1hcnJvdycpIEBJbnB1dCgpIGFycm93ID0gZmFsc2U7XG5cbiAgQElucHV0KClcbiAgQEhvc3RCaW5kaW5nKCdjbGFzcy5saW5rLS1leHRlcm5hbCcpXG4gIHNldCBleHRlcm5hbChleHRlcm5hbDogYm9vbGVhbikge1xuICAgIHRoaXMuX2V4dGVybmFsID0gZXh0ZXJuYWw7XG4gICAgdGhpcy50YXJnZXQgPSB0aGlzLmV4dGVybmFsID8gJ19ibGFuaycgOiBudWxsO1xuICAgIHRoaXMucmVmID0gdGhpcy5leHRlcm5hbCA/ICdub29wZW5lcicgOiBudWxsO1xuICB9XG5cbiAgZ2V0IGV4dGVybmFsKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLl9leHRlcm5hbDtcbiAgfVxuXG4gIHByaXZhdGUgX2V4dGVybmFsOiBib29sZWFuO1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgZWxlbWVudFJlZjogRWxlbWVudFJlZiwgcHJpdmF0ZSByZW5kZXJlcjogUmVuZGVyZXIyLCBASW5qZWN0KERPQ1VNRU5UKSBwcml2YXRlIGRvY3VtZW50KSB7IH1cblxuICBuZ09uSW5pdCgpIHtcbiAgICBpZiAodGhpcy5hcnJvdyB8fCB0aGlzLmV4dGVybmFsKSB7XG4gICAgICBjb25zdCBjaGlsZCA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ3NwYW4nKTtcbiAgICAgIGNoaWxkLmNsYXNzTmFtZSA9ICdsaW5rX19pY29uJztcblxuICAgICAgaWYgKHRoaXMuYXJyb3cpIHtcbiAgICAgICAgY2hpbGQuY2xhc3NOYW1lICs9ICcgbGlua19faWNvbi0tYXJyb3cnO1xuICAgICAgICBjaGlsZC5pbm5lckhUTUwgPSBhcnJvd0ltZztcbiAgICAgIH1cblxuICAgICAgaWYgKHRoaXMuZXh0ZXJuYWwpIHtcbiAgICAgICAgY2hpbGQuaW5uZXJIVE1MID0gZXh0ZXJuYWxJbWc7XG4gICAgICB9XG5cbiAgICAgIHRoaXMucmVuZGVyZXIuYXBwZW5kQ2hpbGQodGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQsIGNoaWxkKTtcbiAgICB9XG4gIH1cbn1cbiJdfQ==