moh-common-lib
Version:
A library of Angular components, services, and styles for B.C. Government Ministry of Health (MoH).
156 lines • 11 kB
JavaScript
/**
* @fileoverview added by tsickle
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/
import { Component, Input, Output, EventEmitter, ViewChild, ElementRef, forwardRef } from '@angular/core';
import { ControlContainer, NgForm, NG_VALUE_ACCESSOR } from '@angular/forms';
/**
* BUTTONGROUPCOMPONENT IS **DEPRECATED**! **DO NOT USE** UNLESS YOU KNOW WHAT YOU'RE
* DOING.
*
* If you need a Yes/No toggle, \@see RadioComponent
* @deprecated
*
*
*
*
* \@example
* <common-button-group [showError]="showError"
* [errorMessageRequired]="requiredErrMsg"
* label="Please select a value"
* [data]="data.value" (dataChange)="setMovedToBCPermanently($event)" >
* </common-button-group>
*
* @export
*/
var ButtonGroupComponent = /** @class */ (function () {
function ButtonGroupComponent() {
this.required = true;
this.showError = false;
this.disabled = false;
this.errorMessageRequired = 'Field is required.';
this.label = 'Default Checkbox';
this.dataChange = new EventEmitter();
this._onChange = (/**
* @param {?} _
* @return {?}
*/
function (_) { });
this._onTouched = (/**
* @return {?}
*/
function () { });
}
/**
* @param {?} val
* @return {?}
*/
ButtonGroupComponent.prototype.setButtonGrpVal = /**
* @param {?} val
* @return {?}
*/
function (val) {
this.dataChange.emit(val);
this._onChange(val);
this._onTouched();
};
/**
* @return {?}
*/
ButtonGroupComponent.prototype.focus = /**
* @return {?}
*/
function () {
this.buttonGroup.nativeElement.focus();
this._onTouched();
};
/**
* @param {?} fn
* @return {?}
*/
ButtonGroupComponent.prototype.registerOnChange = /**
* @param {?} fn
* @return {?}
*/
function (fn) {
this._onChange = fn;
};
/**
* @param {?} fn
* @return {?}
*/
ButtonGroupComponent.prototype.registerOnTouched = /**
* @param {?} fn
* @return {?}
*/
function (fn) {
this._onTouched = fn;
};
/**
* @param {?} value
* @return {?}
*/
ButtonGroupComponent.prototype.writeValue = /**
* @param {?} value
* @return {?}
*/
function (value) {
this.data = value;
};
ButtonGroupComponent.decorators = [
{ type: Component, args: [{
selector: 'common-button-group',
template: "<div role=\"dialog\" aria-labelledby=\"btn\">\r\n <p id=\"btn\" class=\"control-label\">{{label}}</p>\r\n <div class=\"btn-group\" role=\"group\">\r\n <button #buttonGroup *ngFor='let answer of [{\"value\": true, \"label\": \"Yes\"}, {\"value\": false, \"label\": \"No\"}]'\r\n [class.btn-radio]=\"data === answer.value\" (click)=\"setButtonGrpVal(answer.value)\" \r\n type=\"button\" class=\"btn btn-default control-label\"> {{answer.label}} \r\n </button>\r\n </div>\r\n <div *ngIf='showError && (data === undefined || data === null)'>\r\n <div class=\"text-danger\">{{errorMessageRequired}}</div>\r\n </div>\r\n</div>\r\n",
viewProviders: [
{ provide: ControlContainer, useExisting: forwardRef((/**
* @return {?}
*/
function () { return NgForm; })) }
],
providers: [
{ provide: NG_VALUE_ACCESSOR, multi: true, useExisting: forwardRef((/**
* @return {?}
*/
function () { return ButtonGroupComponent; })) }
],
styles: [".btn-radio,.btn-radio:hover,.btn-radio:not(:hover){background:#2962ff;color:#fff}.btn-radio::-moz-selection{background:#2962ff}.btn-radio::selection{background:#2962ff}.btn-radio:active{background:#2962ff}"]
}] }
];
/** @nocollapse */
ButtonGroupComponent.ctorParameters = function () { return []; };
ButtonGroupComponent.propDecorators = {
data: [{ type: Input }],
required: [{ type: Input }],
showError: [{ type: Input }],
disabled: [{ type: Input }],
errorMessageRequired: [{ type: Input }],
label: [{ type: Input }],
dataChange: [{ type: Output }],
buttonGroup: [{ type: ViewChild, args: ['buttonGroup',] }]
};
return ButtonGroupComponent;
}());
export { ButtonGroupComponent };
if (false) {
/** @type {?} */
ButtonGroupComponent.prototype.data;
/** @type {?} */
ButtonGroupComponent.prototype.required;
/** @type {?} */
ButtonGroupComponent.prototype.showError;
/** @type {?} */
ButtonGroupComponent.prototype.disabled;
/** @type {?} */
ButtonGroupComponent.prototype.errorMessageRequired;
/** @type {?} */
ButtonGroupComponent.prototype.label;
/** @type {?} */
ButtonGroupComponent.prototype.dataChange;
/** @type {?} */
ButtonGroupComponent.prototype.buttonGroup;
/** @type {?} */
ButtonGroupComponent.prototype._onChange;
/** @type {?} */
ButtonGroupComponent.prototype._onTouched;
}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnV0dG9uLWdyb3VwLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiJuZzovL21vaC1jb21tb24tbGliLyIsInNvdXJjZXMiOlsibGliL2NvbXBvbmVudHMvYnV0dG9uLWdyb3VwL2J1dHRvbi1ncm91cC5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxZQUFZLEVBQUUsU0FBUyxFQUFFLFVBQVUsRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDMUcsT0FBTyxFQUFFLGdCQUFnQixFQUF3QixNQUFNLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUF1Qm5HO0lBeUJFO1FBWFMsYUFBUSxHQUFZLElBQUksQ0FBQztRQUN6QixjQUFTLEdBQVksS0FBSyxDQUFDO1FBQzNCLGFBQVEsR0FBWSxLQUFLLENBQUM7UUFDMUIseUJBQW9CLEdBQVcsb0JBQW9CLENBQUM7UUFDcEQsVUFBSyxHQUFXLGtCQUFrQixDQUFDO1FBQ2xDLGVBQVUsR0FBMEIsSUFBSSxZQUFZLEVBQVcsQ0FBQztRQUduRSxjQUFTOzs7O1FBQUcsVUFBQyxDQUFNLElBQU0sQ0FBQyxFQUFDO1FBQzNCLGVBQVU7OztRQUFHLGNBQU8sQ0FBQyxFQUFDO0lBRWQsQ0FBQzs7Ozs7SUFFaEIsOENBQWU7Ozs7SUFBZixVQUFnQixHQUFRO1FBQ3RCLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBQzFCLElBQUksQ0FBQyxTQUFTLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDcEIsSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDO0lBQ3BCLENBQUM7Ozs7SUFFRCxvQ0FBSzs7O0lBQUw7UUFDRSxJQUFJLENBQUMsV0FBVyxDQUFDLGFBQWEsQ0FBQyxLQUFLLEVBQUUsQ0FBQztRQUN2QyxJQUFJLENBQUMsVUFBVSxFQUFFLENBQUM7SUFDcEIsQ0FBQzs7Ozs7SUFFRCwrQ0FBZ0I7Ozs7SUFBaEIsVUFBaUIsRUFBTztRQUN0QixJQUFJLENBQUMsU0FBUyxHQUFHLEVBQUUsQ0FBQztJQUN0QixDQUFDOzs7OztJQUVELGdEQUFpQjs7OztJQUFqQixVQUFrQixFQUFPO1FBQ3ZCLElBQUksQ0FBQyxVQUFVLEdBQUcsRUFBRSxDQUFDO0lBQ3ZCLENBQUM7Ozs7O0lBRUQseUNBQVU7Ozs7SUFBVixVQUFXLEtBQVU7UUFDbkIsSUFBSSxDQUFDLElBQUksR0FBRyxLQUFLLENBQUM7SUFDcEIsQ0FBQzs7Z0JBaERGLFNBQVMsU0FBQztvQkFDVCxRQUFRLEVBQUUscUJBQXFCO29CQUMvQixvcEJBQTRDO29CQUU1QyxhQUFhLEVBQUU7d0JBQ2IsRUFBRSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsV0FBVyxFQUFFLFVBQVU7Ozs0QkFBQyxjQUFNLE9BQUEsTUFBTSxFQUFOLENBQU0sRUFBRSxFQUFFO3FCQUN0RTtvQkFDRCxTQUFTLEVBQUU7d0JBQ1QsRUFBRSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRSxXQUFXLEVBQUUsVUFBVTs7OzRCQUFDLGNBQU0sT0FBQSxvQkFBb0IsRUFBcEIsQ0FBb0IsRUFBRSxFQUFDO3FCQUNqRzs7aUJBQ0Y7Ozs7O3VCQUdFLEtBQUs7MkJBQ0wsS0FBSzs0QkFDTCxLQUFLOzJCQUNMLEtBQUs7dUNBQ0wsS0FBSzt3QkFDTCxLQUFLOzZCQUNMLE1BQU07OEJBQ04sU0FBUyxTQUFDLGFBQWE7O0lBNkIxQiwyQkFBQztDQUFBLEFBakRELElBaURDO1NBdENZLG9CQUFvQjs7O0lBRS9CLG9DQUF1Qjs7SUFDdkIsd0NBQWtDOztJQUNsQyx5Q0FBb0M7O0lBQ3BDLHdDQUFtQzs7SUFDbkMsb0RBQTZEOztJQUM3RCxxQ0FBNEM7O0lBQzVDLDBDQUEwRTs7SUFDMUUsMkNBQWtEOztJQUVsRCx5Q0FBa0M7O0lBQ2xDLDBDQUE2QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgSW5wdXQsIE91dHB1dCwgRXZlbnRFbWl0dGVyLCBWaWV3Q2hpbGQsIEVsZW1lbnRSZWYsIGZvcndhcmRSZWYgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgQ29udHJvbENvbnRhaW5lciwgQ29udHJvbFZhbHVlQWNjZXNzb3IsIE5nRm9ybSwgTkdfVkFMVUVfQUNDRVNTT1IgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XHJcblxyXG4vKipcclxuICogQlVUVE9OR1JPVVBDT01QT05FTlQgSVMgKipERVBSRUNBVEVEKiohICAqKkRPIE5PVCBVU0UqKiBVTkxFU1MgWU9VIEtOT1cgV0hBVCBZT1UnUkVcclxuICogRE9JTkcuXHJcbiAqXHJcbiAqIElmIHlvdSBuZWVkIGEgWWVzL05vIHRvZ2dsZSwgQHNlZSBSYWRpb0NvbXBvbmVudFxyXG4gKiBAZGVwcmVjYXRlZFxyXG4gKlxyXG4gKlxyXG4gKlxyXG4gKlxyXG4gKiBAZXhhbXBsZVxyXG4gKiAgICAgICA8Y29tbW9uLWJ1dHRvbi1ncm91cCBbc2hvd0Vycm9yXT1cInNob3dFcnJvclwiXHJcbiAqICAgICAgICAgIFtlcnJvck1lc3NhZ2VSZXF1aXJlZF09XCJyZXF1aXJlZEVyck1zZ1wiXHJcbiAqICAgICAgICAgIGxhYmVsPVwiUGxlYXNlIHNlbGVjdCBhIHZhbHVlXCJcclxuICogICAgICAgICAgW2RhdGFdPVwiZGF0YS52YWx1ZVwiIChkYXRhQ2hhbmdlKT1cInNldE1vdmVkVG9CQ1Blcm1hbmVudGx5KCRldmVudClcIiA+XHJcbiAqICAgICAgICAgPC9jb21tb24tYnV0dG9uLWdyb3VwPlxyXG4gKlxyXG4gKiBAZXhwb3J0XHJcbiAqL1xyXG5cclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnY29tbW9uLWJ1dHRvbi1ncm91cCcsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL2J1dHRvbi1ncm91cC5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmxzOiBbJy4vYnV0dG9uLWdyb3VwLmNvbXBvbmVudC5zY3NzJ10sXHJcbiAgdmlld1Byb3ZpZGVyczogW1xyXG4gICAgeyBwcm92aWRlOiBDb250cm9sQ29udGFpbmVyLCB1c2VFeGlzdGluZzogZm9yd2FyZFJlZigoKSA9PiBOZ0Zvcm0gKSB9XHJcbiAgXSxcclxuICBwcm92aWRlcnM6IFtcclxuICAgIHsgcHJvdmlkZTogTkdfVkFMVUVfQUNDRVNTT1IsIG11bHRpOiB0cnVlLCB1c2VFeGlzdGluZzogZm9yd2FyZFJlZigoKSA9PiBCdXR0b25Hcm91cENvbXBvbmVudCApfVxyXG4gIF1cclxufSlcclxuZXhwb3J0IGNsYXNzIEJ1dHRvbkdyb3VwQ29tcG9uZW50IGltcGxlbWVudHMgQ29udHJvbFZhbHVlQWNjZXNzb3Ige1xyXG5cclxuICBASW5wdXQoKSBkYXRhOiBib29sZWFuO1xyXG4gIEBJbnB1dCgpIHJlcXVpcmVkOiBib29sZWFuID0gdHJ1ZTtcclxuICBASW5wdXQoKSBzaG93RXJyb3I6IGJvb2xlYW4gPSBmYWxzZTtcclxuICBASW5wdXQoKSBkaXNhYmxlZDogYm9vbGVhbiA9IGZhbHNlO1xyXG4gIEBJbnB1dCgpIGVycm9yTWVzc2FnZVJlcXVpcmVkOiBzdHJpbmcgPSAnRmllbGQgaXMgcmVxdWlyZWQuJztcclxuICBASW5wdXQoKSBsYWJlbDogc3RyaW5nID0gJ0RlZmF1bHQgQ2hlY2tib3gnO1xyXG4gIEBPdXRwdXQoKSBkYXRhQ2hhbmdlOiBFdmVudEVtaXR0ZXI8Ym9vbGVhbj4gPSBuZXcgRXZlbnRFbWl0dGVyPGJvb2xlYW4+KCk7XHJcbiAgQFZpZXdDaGlsZCgnYnV0dG9uR3JvdXAnKSBidXR0b25Hcm91cDogRWxlbWVudFJlZjtcclxuXHJcbiAgcHVibGljIF9vbkNoYW5nZSA9IChfOiBhbnkpID0+IHt9O1xyXG4gIHB1YmxpYyBfb25Ub3VjaGVkID0gKCkgPT4ge307XHJcblxyXG4gIGNvbnN0cnVjdG9yKCkge31cclxuXHJcbiAgc2V0QnV0dG9uR3JwVmFsKHZhbDogYW55KSB7XHJcbiAgICB0aGlzLmRhdGFDaGFuZ2UuZW1pdCh2YWwpO1xyXG4gICAgdGhpcy5fb25DaGFuZ2UodmFsKTtcclxuICAgIHRoaXMuX29uVG91Y2hlZCgpO1xyXG4gIH1cclxuXHJcbiAgZm9jdXMoKSB7XHJcbiAgICB0aGlzLmJ1dHRvbkdyb3VwLm5hdGl2ZUVsZW1lbnQuZm9jdXMoKTtcclxuICAgIHRoaXMuX29uVG91Y2hlZCgpO1xyXG4gIH1cclxuXHJcbiAgcmVnaXN0ZXJPbkNoYW5nZShmbjogYW55KTogdm9pZCB7XHJcbiAgICB0aGlzLl9vbkNoYW5nZSA9IGZuO1xyXG4gIH1cclxuXHJcbiAgcmVnaXN0ZXJPblRvdWNoZWQoZm46IGFueSk6IHZvaWQge1xyXG4gICAgdGhpcy5fb25Ub3VjaGVkID0gZm47XHJcbiAgfVxyXG5cclxuICB3cml0ZVZhbHVlKHZhbHVlOiBhbnkpOiB2b2lkIHtcclxuICAgIHRoaXMuZGF0YSA9IHZhbHVlO1xyXG4gIH1cclxufVxyXG4iXX0=