fundamental-ngx
Version:
SAP Fundamentals, implemented in Angular
78 lines • 5.65 kB
JavaScript
/**
* @fileoverview added by tsickle
* @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/
import { Component, ElementRef, EventEmitter, HostListener, Output, ViewChild, ViewEncapsulation } from '@angular/core';
/**
* A token is used to represent contextualizing information.
* They can be useful to show applied filters, selected values for form fields or object metadata.
*/
var TokenComponent = /** @class */ (function () {
/** @hidden */
function TokenComponent(elRef) {
this.elRef = elRef;
/**
* Emitted when the *x* icon is clicked. Specifically, any pseudo-element.
*/
this.onCloseClick = new EventEmitter();
}
/** @hidden */
/**
* @hidden
* @param {?} event
* @return {?}
*/
TokenComponent.prototype.clickHandler = /**
* @hidden
* @param {?} event
* @return {?}
*/
function (event) {
if (this.contentContainer) {
if (this.elRef.nativeElement.contains(event.target) && !this.contentContainer.nativeElement.contains(event.target)) {
this.onCloseClick.emit();
}
}
};
TokenComponent.decorators = [
{ type: Component, args: [{
selector: 'fd-token',
template: "<span class=\"fd-token-content\" #contentContainer>\n <ng-content></ng-content>\n</span>\n\n",
host: {
class: 'fd-token',
'role': 'button'
},
encapsulation: ViewEncapsulation.None,
styles: [".fd-token-content{display:inline-block}"]
}] }
];
/** @nocollapse */
TokenComponent.ctorParameters = function () { return [
{ type: ElementRef }
]; };
TokenComponent.propDecorators = {
contentContainer: [{ type: ViewChild, args: ['contentContainer',] }],
onCloseClick: [{ type: Output }],
clickHandler: [{ type: HostListener, args: ['click', ['$event'],] }]
};
return TokenComponent;
}());
export { TokenComponent };
if (false) {
/**
* @hidden
* @type {?}
*/
TokenComponent.prototype.contentContainer;
/**
* Emitted when the *x* icon is clicked. Specifically, any pseudo-element.
* @type {?}
*/
TokenComponent.prototype.onCloseClick;
/**
* @type {?}
* @private
*/
TokenComponent.prototype.elRef;
}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9rZW4uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6Im5nOi8vZnVuZGFtZW50YWwtbmd4LyIsInNvdXJjZXMiOlsibGliL3Rva2VuL3Rva2VuLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7O0FBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxVQUFVLEVBQUUsWUFBWSxFQUFFLFlBQVksRUFBRSxNQUFNLEVBQUUsU0FBUyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sZUFBZSxDQUFDOzs7OztBQU14SDtJQW9CSSxjQUFjO0lBQ2Qsd0JBQW9CLEtBQWlCO1FBQWpCLFVBQUssR0FBTCxLQUFLLENBQVk7Ozs7UUFINUIsaUJBQVksR0FBdUIsSUFBSSxZQUFZLEVBQVEsQ0FBQztJQUlyRSxDQUFDO0lBRUQsY0FBYzs7Ozs7O0lBRWQscUNBQVk7Ozs7O0lBRFosVUFDYSxLQUFLO1FBQ2QsSUFBSSxJQUFJLENBQUMsZ0JBQWdCLEVBQUU7WUFDdkIsSUFBSSxJQUFJLENBQUMsS0FBSyxDQUFDLGFBQWEsQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLGdCQUFnQixDQUFDLGFBQWEsQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxFQUFFO2dCQUNoSCxJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksRUFBRSxDQUFDO2FBQzVCO1NBQ0o7SUFDTCxDQUFDOztnQkFoQ0osU0FBUyxTQUFDO29CQUNQLFFBQVEsRUFBRSxVQUFVO29CQUNwQiwyR0FBcUM7b0JBRXJDLElBQUksRUFBRTt3QkFDRixLQUFLLEVBQUUsVUFBVTt3QkFDakIsTUFBTSxFQUFFLFFBQVE7cUJBQ25CO29CQUNELGFBQWEsRUFBRSxpQkFBaUIsQ0FBQyxJQUFJOztpQkFDeEM7Ozs7Z0JBZm1CLFVBQVU7OzttQ0FtQnpCLFNBQVMsU0FBQyxrQkFBa0I7K0JBSTVCLE1BQU07K0JBUU4sWUFBWSxTQUFDLE9BQU8sRUFBRSxDQUFDLFFBQVEsQ0FBQzs7SUFTckMscUJBQUM7Q0FBQSxBQWxDRCxJQWtDQztTQXhCWSxjQUFjOzs7Ozs7SUFHdkIsMENBQzZCOzs7OztJQUc3QixzQ0FDcUU7Ozs7O0lBR3pELCtCQUF5QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgRWxlbWVudFJlZiwgRXZlbnRFbWl0dGVyLCBIb3N0TGlzdGVuZXIsIE91dHB1dCwgVmlld0NoaWxkLCBWaWV3RW5jYXBzdWxhdGlvbiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG4vKipcbiAqIEEgdG9rZW4gaXMgdXNlZCB0byByZXByZXNlbnQgY29udGV4dHVhbGl6aW5nIGluZm9ybWF0aW9uLlxuICogVGhleSBjYW4gYmUgdXNlZnVsIHRvIHNob3cgYXBwbGllZCBmaWx0ZXJzLCBzZWxlY3RlZCB2YWx1ZXMgZm9yIGZvcm0gZmllbGRzIG9yIG9iamVjdCBtZXRhZGF0YS5cbiAqL1xuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICdmZC10b2tlbicsXG4gICAgdGVtcGxhdGVVcmw6ICcuL3Rva2VuLmNvbXBvbmVudC5odG1sJyxcbiAgICBzdHlsZVVybHM6IFsnLi90b2tlbi5jb21wb25lbnQuc2NzcyddLFxuICAgIGhvc3Q6IHtcbiAgICAgICAgY2xhc3M6ICdmZC10b2tlbicsXG4gICAgICAgICdyb2xlJzogJ2J1dHRvbidcbiAgICB9LFxuICAgIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmVcbn0pXG5leHBvcnQgY2xhc3MgVG9rZW5Db21wb25lbnQge1xuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBAVmlld0NoaWxkKCdjb250ZW50Q29udGFpbmVyJylcbiAgICBjb250ZW50Q29udGFpbmVyOiBFbGVtZW50UmVmO1xuXG4gICAgLyoqIEVtaXR0ZWQgd2hlbiB0aGUgKngqIGljb24gaXMgY2xpY2tlZC4gU3BlY2lmaWNhbGx5LCBhbnkgcHNldWRvLWVsZW1lbnQuICovXG4gICAgQE91dHB1dCgpXG4gICAgcmVhZG9ubHkgb25DbG9zZUNsaWNrOiBFdmVudEVtaXR0ZXI8dm9pZD4gPSBuZXcgRXZlbnRFbWl0dGVyPHZvaWQ+KCk7XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIGNvbnN0cnVjdG9yKHByaXZhdGUgZWxSZWY6IEVsZW1lbnRSZWYpIHtcbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIEBIb3N0TGlzdGVuZXIoJ2NsaWNrJywgWyckZXZlbnQnXSlcbiAgICBjbGlja0hhbmRsZXIoZXZlbnQpOiB2b2lkIHtcbiAgICAgICAgaWYgKHRoaXMuY29udGVudENvbnRhaW5lcikge1xuICAgICAgICAgICAgaWYgKHRoaXMuZWxSZWYubmF0aXZlRWxlbWVudC5jb250YWlucyhldmVudC50YXJnZXQpICYmICF0aGlzLmNvbnRlbnRDb250YWluZXIubmF0aXZlRWxlbWVudC5jb250YWlucyhldmVudC50YXJnZXQpKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5vbkNsb3NlQ2xpY2suZW1pdCgpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG59XG5cblxuIl19