fundamental-ngx
Version:
SAP Fundamentals, implemented in Angular
104 lines • 6.71 kB
JavaScript
/**
* @fileoverview added by tsickle
* @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/
import * as tslib_1 from "tslib";
import { Directive, ElementRef, HostBinding, Input } from '@angular/core';
import { AbstractFdNgxClass } from '../utils/abstract-fd-ngx-class';
/**
* Directive to be applied to buttons that are members of a button group.
*
* ```html
* <button fd-button-grouped>Button</button>
* ```
*/
var ButtonGroupedDirective = /** @class */ (function (_super) {
tslib_1.__extends(ButtonGroupedDirective, _super);
/** @hidden */
function ButtonGroupedDirective(elementRef) {
var _this = _super.call(this, elementRef) || this;
_this.elementRef = elementRef;
/**
* Whether the button should be in compact form.
*/
_this.compact = false;
/**
* @hidden
*/
_this.fdButtonGroupedClass = true;
return _this;
}
/** @hidden */
/**
* @hidden
* @return {?}
*/
ButtonGroupedDirective.prototype._setProperties = /**
* @hidden
* @return {?}
*/
function () {
if (this.size) {
this._addClassToElement('fd-button--' + this.size);
}
if (this.glyph) {
this._addClassToElement('sap-icon--' + this.glyph);
}
if (this.state) {
this._addClassToElement('is-' + this.state);
}
};
ButtonGroupedDirective.decorators = [
{ type: Directive, args: [{
// TODO to be discussed
// tslint:disable-next-line:directive-selector
selector: '[fd-button-grouped]'
},] }
];
/** @nocollapse */
ButtonGroupedDirective.ctorParameters = function () { return [
{ type: ElementRef }
]; };
ButtonGroupedDirective.propDecorators = {
size: [{ type: Input }],
glyph: [{ type: Input }],
state: [{ type: Input }],
compact: [{ type: Input }, { type: HostBinding, args: ['class.fd-button--compact',] }],
fdButtonGroupedClass: [{ type: HostBinding, args: ['class.fd-button--grouped',] }]
};
return ButtonGroupedDirective;
}(AbstractFdNgxClass));
export { ButtonGroupedDirective };
if (false) {
/**
* Size of the button. Can be `xs`, `s`, or left blank for large size.
* @type {?}
*/
ButtonGroupedDirective.prototype.size;
/**
* Glyph (icon) of the button.
* @type {?}
*/
ButtonGroupedDirective.prototype.glyph;
/**
* State of the button. Can be `selected` or `disabled`.
* @type {?}
*/
ButtonGroupedDirective.prototype.state;
/**
* Whether the button should be in compact form.
* @type {?}
*/
ButtonGroupedDirective.prototype.compact;
/**
* @hidden
* @type {?}
*/
ButtonGroupedDirective.prototype.fdButtonGroupedClass;
/**
* @type {?}
* @private
*/
ButtonGroupedDirective.prototype.elementRef;
}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnV0dG9uLWdyb3VwZWQuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6Im5nOi8vZnVuZGFtZW50YWwtbmd4LyIsInNvdXJjZXMiOlsibGliL2J1dHRvbi1ncm91cC9idXR0b24tZ3JvdXBlZC5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFVBQVUsRUFBRSxXQUFXLEVBQUUsS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzFFLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLGdDQUFnQyxDQUFDOzs7Ozs7OztBQVNwRTtJQUs0QyxrREFBa0I7SUF1QjFELGNBQWM7SUFDZCxnQ0FBb0IsVUFBc0I7UUFBMUMsWUFDSSxrQkFBTSxVQUFVLENBQUMsU0FDcEI7UUFGbUIsZ0JBQVUsR0FBVixVQUFVLENBQVk7Ozs7UUFQMUMsYUFBTyxHQUFZLEtBQUssQ0FBQzs7OztRQUl6QiwwQkFBb0IsR0FBWSxJQUFJLENBQUM7O0lBS3JDLENBQUM7SUFFRCxjQUFjOzs7OztJQUNkLCtDQUFjOzs7O0lBQWQ7UUFDSSxJQUFJLElBQUksQ0FBQyxJQUFJLEVBQUU7WUFDWCxJQUFJLENBQUMsa0JBQWtCLENBQUMsYUFBYSxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztTQUN0RDtRQUNELElBQUksSUFBSSxDQUFDLEtBQUssRUFBRTtZQUNaLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxZQUFZLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO1NBQ3REO1FBQ0QsSUFBSSxJQUFJLENBQUMsS0FBSyxFQUFFO1lBQ1osSUFBSSxDQUFDLGtCQUFrQixDQUFDLEtBQUssR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7U0FDL0M7SUFDTCxDQUFDOztnQkE1Q0osU0FBUyxTQUFDOzs7b0JBR1AsUUFBUSxFQUFFLHFCQUFxQjtpQkFDbEM7Ozs7Z0JBZG1CLFVBQVU7Ozt1QkFrQnpCLEtBQUs7d0JBSUwsS0FBSzt3QkFJTCxLQUFLOzBCQUlMLEtBQUssWUFDTCxXQUFXLFNBQUMsMEJBQTBCO3VDQUl0QyxXQUFXLFNBQUMsMEJBQTBCOztJQW9CM0MsNkJBQUM7Q0FBQSxBQTdDRCxDQUs0QyxrQkFBa0IsR0F3QzdEO1NBeENZLHNCQUFzQjs7Ozs7O0lBRy9CLHNDQUNhOzs7OztJQUdiLHVDQUNjOzs7OztJQUdkLHVDQUNjOzs7OztJQUdkLHlDQUV5Qjs7Ozs7SUFHekIsc0RBQ3FDOzs7OztJQUd6Qiw0Q0FBOEIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEaXJlY3RpdmUsIEVsZW1lbnRSZWYsIEhvc3RCaW5kaW5nLCBJbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQWJzdHJhY3RGZE5neENsYXNzIH0gZnJvbSAnLi4vdXRpbHMvYWJzdHJhY3QtZmQtbmd4LWNsYXNzJztcblxuLyoqXG4gKiBEaXJlY3RpdmUgdG8gYmUgYXBwbGllZCB0byBidXR0b25zIHRoYXQgYXJlIG1lbWJlcnMgb2YgYSBidXR0b24gZ3JvdXAuXG4gKlxuICogYGBgaHRtbFxuICogPGJ1dHRvbiBmZC1idXR0b24tZ3JvdXBlZD5CdXR0b248L2J1dHRvbj5cbiAqIGBgYFxuICovXG5ARGlyZWN0aXZlKHtcbiAgICAvLyBUT0RPIHRvIGJlIGRpc2N1c3NlZFxuICAgIC8vIHRzbGludDpkaXNhYmxlLW5leHQtbGluZTpkaXJlY3RpdmUtc2VsZWN0b3JcbiAgICBzZWxlY3RvcjogJ1tmZC1idXR0b24tZ3JvdXBlZF0nXG59KVxuZXhwb3J0IGNsYXNzIEJ1dHRvbkdyb3VwZWREaXJlY3RpdmUgZXh0ZW5kcyBBYnN0cmFjdEZkTmd4Q2xhc3Mge1xuXG4gICAgLyoqIFNpemUgb2YgdGhlIGJ1dHRvbi4gQ2FuIGJlIGB4c2AsIGBzYCwgb3IgbGVmdCBibGFuayBmb3IgbGFyZ2Ugc2l6ZS4gKi9cbiAgICBASW5wdXQoKVxuICAgIHNpemU6IHN0cmluZztcblxuICAgIC8qKiBHbHlwaCAoaWNvbikgb2YgdGhlIGJ1dHRvbi4gKi9cbiAgICBASW5wdXQoKVxuICAgIGdseXBoOiBzdHJpbmc7XG5cbiAgICAvKiogU3RhdGUgb2YgdGhlIGJ1dHRvbi4gQ2FuIGJlIGBzZWxlY3RlZGAgb3IgYGRpc2FibGVkYC4gKi9cbiAgICBASW5wdXQoKVxuICAgIHN0YXRlOiBzdHJpbmc7XG5cbiAgICAvKiogV2hldGhlciB0aGUgYnV0dG9uIHNob3VsZCBiZSBpbiBjb21wYWN0IGZvcm0uICovXG4gICAgQElucHV0KClcbiAgICBASG9zdEJpbmRpbmcoJ2NsYXNzLmZkLWJ1dHRvbi0tY29tcGFjdCcpXG4gICAgY29tcGFjdDogYm9vbGVhbiA9IGZhbHNlO1xuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBASG9zdEJpbmRpbmcoJ2NsYXNzLmZkLWJ1dHRvbi0tZ3JvdXBlZCcpXG4gICAgZmRCdXR0b25Hcm91cGVkQ2xhc3M6IGJvb2xlYW4gPSB0cnVlO1xuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBjb25zdHJ1Y3Rvcihwcml2YXRlIGVsZW1lbnRSZWY6IEVsZW1lbnRSZWYpIHtcbiAgICAgICAgc3VwZXIoZWxlbWVudFJlZik7XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBfc2V0UHJvcGVydGllcygpIHtcbiAgICAgICAgaWYgKHRoaXMuc2l6ZSkge1xuICAgICAgICAgICAgdGhpcy5fYWRkQ2xhc3NUb0VsZW1lbnQoJ2ZkLWJ1dHRvbi0tJyArIHRoaXMuc2l6ZSk7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKHRoaXMuZ2x5cGgpIHtcbiAgICAgICAgICAgIHRoaXMuX2FkZENsYXNzVG9FbGVtZW50KCdzYXAtaWNvbi0tJyArIHRoaXMuZ2x5cGgpO1xuICAgICAgICB9XG4gICAgICAgIGlmICh0aGlzLnN0YXRlKSB7XG4gICAgICAgICAgICB0aGlzLl9hZGRDbGFzc1RvRWxlbWVudCgnaXMtJyArIHRoaXMuc3RhdGUpO1xuICAgICAgICB9XG4gICAgfVxufVxuIl19