UNPKG

@fdot/angular-dotcodes

Version:

`npm install @fdot/angular-dotcodes --save`

134 lines (133 loc) 10.3 kB
/** * @fileoverview added by tsickle * @suppress {checkTypes} checked by tsc */ import { Config } from './../models/config'; import { AngularDotcodesService } from './../angular-dotcodes.service'; import { Component, Input, EventEmitter, Output, Inject } from '@angular/core'; export class DotcodesSelectComponent { /** * @param {?} dotCodeService * @param {?} config */ constructor(dotCodeService, config) { this.dotCodeService = dotCodeService; this.config = config; this.selectedDotcode = new EventEmitter(); } /** * @param {?} value * @return {?} */ set value(value) { this._value = value; this.setSelectedCode(); } /** * @return {?} */ get value() { return this._value; } /** * @return {?} */ ngOnInit() { // tslint:disable-next-line:triple-equals if (!(this.useDefaultSelect === false || /** @type {?} */ (this.useDefaultSelect) === 'false') && this.config != null && this.config.useDefaultSelect) { this.useDefaultSelect = true; } else { this.useDefaultSelect = false; } if (!this.defaultSelectText && this.config != null && this.config.defaultSelectText) { this.defaultSelectText = this.config.defaultSelectText; } this.dotCodeService.GetCodes(this.column).subscribe(codes => { this.codes = codes; this.setSelectedCode(); }); } /** * @return {?} */ setSelectedCode() { if (!this.codes) { return; } if (this.value) { const /** @type {?} */ code = this.codes.find(c => c.value === this.value); if (code) { this.selectedCode = code; this.codeChanged(); } } } /** * @return {?} */ codeChanged() { this.selectedDotcode.emit(this.selectedCode); } } DotcodesSelectComponent.decorators = [ { type: Component, args: [{ selector: 'fdot-dotcodes-select', template: `<select [(ngModel)]="selectedCode" (change)="codeChanged()" class="form-control" [disabled]="disabled"> <option *ngIf="useDefaultSelect" value=""> {{defaultSelectText}} </option> <option *ngFor="let code of codes" [ngValue]="code"> {{code.description}} </option> </select> `, styles: [``] },] }, ]; /** @nocollapse */ DotcodesSelectComponent.ctorParameters = () => [ { type: AngularDotcodesService, }, { type: Config, decorators: [{ type: Inject, args: ['config',] },] }, ]; DotcodesSelectComponent.propDecorators = { "column": [{ type: Input },], "value": [{ type: Input },], "disabled": [{ type: Input },], "selectedDotcode": [{ type: Output },], "useDefaultSelect": [{ type: Input },], "defaultSelectText": [{ type: Input },], }; function DotcodesSelectComponent_tsickle_Closure_declarations() { /** @type {!Array<{type: !Function, args: (undefined|!Array<?>)}>} */ DotcodesSelectComponent.decorators; /** * @nocollapse * @type {function(): !Array<(null|{type: ?, decorators: (undefined|!Array<{type: !Function, args: (undefined|!Array<?>)}>)})>} */ DotcodesSelectComponent.ctorParameters; /** @type {!Object<string,!Array<{type: !Function, args: (undefined|!Array<?>)}>>} */ DotcodesSelectComponent.propDecorators; /** @type {?} */ DotcodesSelectComponent.prototype._value; /** @type {?} */ DotcodesSelectComponent.prototype.codes; /** @type {?} */ DotcodesSelectComponent.prototype.column; /** @type {?} */ DotcodesSelectComponent.prototype.disabled; /** @type {?} */ DotcodesSelectComponent.prototype.selectedDotcode; /** @type {?} */ DotcodesSelectComponent.prototype.selectedCode; /** @type {?} */ DotcodesSelectComponent.prototype.useDefaultSelect; /** @type {?} */ DotcodesSelectComponent.prototype.defaultSelectText; /** @type {?} */ DotcodesSelectComponent.prototype.dotCodeService; /** @type {?} */ DotcodesSelectComponent.prototype.config; } //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZG90Y29kZXMtc2VsZWN0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BmZG90L2FuZ3VsYXItZG90Y29kZXMvIiwic291cmNlcyI6WyJsaWIvZG90Y29kZXMtc2VsZWN0L2RvdGNvZGVzLXNlbGVjdC5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUFBLE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUM1QyxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUV2RSxPQUFPLEVBQUUsU0FBUyxFQUFVLEtBQUssRUFBRSxZQUFZLEVBQUUsTUFBTSxFQUFZLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQWVqRyxNQUFNOzs7OztJQThCSixZQUFvQixjQUFzQyxFQUE0QjtRQUFsRSxtQkFBYyxHQUFkLGNBQWMsQ0FBd0I7UUFBNEIsV0FBTSxHQUFOLE1BQU07K0JBUjFFLElBQUksWUFBWSxFQUFXO0tBUzVDOzs7OztRQXRCRyxLQUFLLENBQUMsS0FBSztRQUNiLElBQUksQ0FBQyxNQUFNLEdBQUcsS0FBSyxDQUFDO1FBQ3BCLElBQUksQ0FBQyxlQUFlLEVBQUUsQ0FBQzs7Ozs7SUFHekIsSUFBSSxLQUFLO1FBQ1AsTUFBTSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUM7S0FDcEI7Ozs7SUFpQkQsUUFBUTs7UUFHTixFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLGdCQUFnQixLQUFLLEtBQUssc0JBQVMsSUFBSSxDQUFDLGdCQUFnQixNQUFLLE9BQU8sQ0FBQztlQUMzRSxJQUFJLENBQUMsTUFBTSxJQUFJLElBQUksSUFBSSxJQUFJLENBQUMsTUFBTSxDQUFDLGdCQUFnQixDQUFDLENBQUMsQ0FBQztZQUN6RCxJQUFJLENBQUMsZ0JBQWdCLEdBQUcsSUFBSSxDQUFDO1NBQzlCO1FBQUMsSUFBSSxDQUFDLENBQUM7WUFDTixJQUFJLENBQUMsZ0JBQWdCLEdBQUcsS0FBSyxDQUFDO1NBQy9CO1FBQ0QsRUFBRSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsaUJBQWlCLElBQUksSUFBSSxDQUFDLE1BQU0sSUFBSSxJQUFJLElBQUksSUFBSSxDQUFDLE1BQU0sQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDLENBQUM7WUFDcEYsSUFBSSxDQUFDLGlCQUFpQixHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsaUJBQWlCLENBQUM7U0FDeEQ7UUFDRCxJQUFJLENBQUMsY0FBYyxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFO1lBQzFELElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO1lBRW5CLElBQUksQ0FBQyxlQUFlLEVBQUUsQ0FBQztTQUN4QixDQUFDLENBQUM7S0FDSjs7OztJQUVPLGVBQWU7UUFDckIsRUFBRSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQztZQUNoQixNQUFNLENBQUM7U0FDUjtRQUNELEVBQUUsQ0FBQyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDO1lBQ2YsdUJBQU0sSUFBSSxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLEtBQUssS0FBSyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7WUFFMUQsRUFBRSxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQztnQkFDVCxJQUFJLENBQUMsWUFBWSxHQUFHLElBQUksQ0FBQztnQkFDekIsSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDO2FBQ3BCO1NBQ0Y7Ozs7O0lBR0ksV0FBVztRQUNoQixJQUFJLENBQUMsZUFBZSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLENBQUM7Ozs7WUFoRmhELFNBQVMsU0FBQztnQkFDVCxRQUFRLEVBQUUsc0JBQXNCO2dCQUNoQyxRQUFRLEVBQUU7Ozs7Ozs7O0NBUVg7Z0JBQ0MsTUFBTSxFQUFFLENBQUMsRUFBRSxDQUFDO2FBQ2I7Ozs7WUFoQlEsc0JBQXNCO1lBRHRCLE1BQU0sdUJBZ0RnRCxNQUFNLFNBQUMsUUFBUTs7O3VCQXpCM0UsS0FBSztzQkFHTCxLQUFLO3lCQVVMLEtBQUs7Z0NBR0wsTUFBTTtpQ0FJTixLQUFLO2tDQUVMLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb25maWcgfSBmcm9tICcuLy4uL21vZGVscy9jb25maWcnO1xyXG5pbXBvcnQgeyBBbmd1bGFyRG90Y29kZXNTZXJ2aWNlIH0gZnJvbSAnLi8uLi9hbmd1bGFyLWRvdGNvZGVzLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBEb3RDb2RlIH0gZnJvbSAnLi8uLi9tb2RlbHMvZG90Y29kZS5tb2RlbCc7XHJcbmltcG9ydCB7IENvbXBvbmVudCwgT25Jbml0LCBJbnB1dCwgRXZlbnRFbWl0dGVyLCBPdXRwdXQsIE9wdGlvbmFsLCBJbmplY3QgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnZmRvdC1kb3Rjb2Rlcy1zZWxlY3QnLFxyXG4gIHRlbXBsYXRlOiBgPHNlbGVjdCBbKG5nTW9kZWwpXT1cInNlbGVjdGVkQ29kZVwiIChjaGFuZ2UpPVwiY29kZUNoYW5nZWQoKVwiIGNsYXNzPVwiZm9ybS1jb250cm9sXCIgW2Rpc2FibGVkXT1cImRpc2FibGVkXCI+XHJcbiAgPG9wdGlvbiAqbmdJZj1cInVzZURlZmF1bHRTZWxlY3RcIiB2YWx1ZT1cIlwiPlxyXG4gICAge3tkZWZhdWx0U2VsZWN0VGV4dH19XHJcbiAgPC9vcHRpb24+XHJcbiAgPG9wdGlvbiAqbmdGb3I9XCJsZXQgY29kZSBvZiBjb2Rlc1wiIFtuZ1ZhbHVlXT1cImNvZGVcIj5cclxuICAgIHt7Y29kZS5kZXNjcmlwdGlvbn19XHJcbiAgPC9vcHRpb24+XHJcbjwvc2VsZWN0PlxyXG5gLFxyXG4gIHN0eWxlczogW2BgXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgRG90Y29kZXNTZWxlY3RDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xyXG5cclxuICBwcml2YXRlIF92YWx1ZTogc3RyaW5nO1xyXG4gIGNvZGVzOiBEb3RDb2RlW107XHJcblxyXG4gIEBJbnB1dCgpXHJcbiAgY29sdW1uOiBzdHJpbmc7XHJcblxyXG4gIEBJbnB1dCgpXHJcbiAgc2V0IHZhbHVlKHZhbHVlKSB7XHJcbiAgICB0aGlzLl92YWx1ZSA9IHZhbHVlO1xyXG4gICAgdGhpcy5zZXRTZWxlY3RlZENvZGUoKTtcclxuICB9XHJcblxyXG4gIGdldCB2YWx1ZSgpOiBzdHJpbmcge1xyXG4gICAgcmV0dXJuIHRoaXMuX3ZhbHVlO1xyXG4gIH1cclxuXHJcbiAgQElucHV0KClcclxuICBkaXNhYmxlZD86IGJvb2xlYW47XHJcblxyXG4gIEBPdXRwdXQoKVxyXG4gIHNlbGVjdGVkRG90Y29kZSA9IG5ldyBFdmVudEVtaXR0ZXI8RG90Q29kZT4oKTtcclxuICBzZWxlY3RlZENvZGU6IERvdENvZGU7XHJcblxyXG4gIEBJbnB1dCgpXHJcbiAgdXNlRGVmYXVsdFNlbGVjdD86IGJvb2xlYW47XHJcbiAgQElucHV0KClcclxuICBkZWZhdWx0U2VsZWN0VGV4dD86IHN0cmluZztcclxuXHJcbiAgY29uc3RydWN0b3IocHJpdmF0ZSBkb3RDb2RlU2VydmljZTogQW5ndWxhckRvdGNvZGVzU2VydmljZSwgQEluamVjdCgnY29uZmlnJykgcHJpdmF0ZSBjb25maWc6IENvbmZpZykge1xyXG4gIH1cclxuXHJcbiAgbmdPbkluaXQoKSB7XHJcblxyXG4gICAgLy8gdHNsaW50OmRpc2FibGUtbmV4dC1saW5lOnRyaXBsZS1lcXVhbHNcclxuICAgIGlmICghKHRoaXMudXNlRGVmYXVsdFNlbGVjdCA9PT0gZmFsc2UgfHwgPGFueT50aGlzLnVzZURlZmF1bHRTZWxlY3QgPT09ICdmYWxzZScpXHJcbiAgICAgICYmIHRoaXMuY29uZmlnICE9IG51bGwgJiYgdGhpcy5jb25maWcudXNlRGVmYXVsdFNlbGVjdCkge1xyXG4gICAgICB0aGlzLnVzZURlZmF1bHRTZWxlY3QgPSB0cnVlO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgdGhpcy51c2VEZWZhdWx0U2VsZWN0ID0gZmFsc2U7XHJcbiAgICB9XHJcbiAgICBpZiAoIXRoaXMuZGVmYXVsdFNlbGVjdFRleHQgJiYgdGhpcy5jb25maWcgIT0gbnVsbCAmJiB0aGlzLmNvbmZpZy5kZWZhdWx0U2VsZWN0VGV4dCkge1xyXG4gICAgICB0aGlzLmRlZmF1bHRTZWxlY3RUZXh0ID0gdGhpcy5jb25maWcuZGVmYXVsdFNlbGVjdFRleHQ7XHJcbiAgICB9XHJcbiAgICB0aGlzLmRvdENvZGVTZXJ2aWNlLkdldENvZGVzKHRoaXMuY29sdW1uKS5zdWJzY3JpYmUoY29kZXMgPT4ge1xyXG4gICAgICB0aGlzLmNvZGVzID0gY29kZXM7XHJcblxyXG4gICAgICB0aGlzLnNldFNlbGVjdGVkQ29kZSgpO1xyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIHNldFNlbGVjdGVkQ29kZSgpIHtcclxuICAgIGlmICghdGhpcy5jb2Rlcykge1xyXG4gICAgICByZXR1cm47XHJcbiAgICB9XHJcbiAgICBpZiAodGhpcy52YWx1ZSkge1xyXG4gICAgICBjb25zdCBjb2RlID0gdGhpcy5jb2Rlcy5maW5kKGMgPT4gYy52YWx1ZSA9PT0gdGhpcy52YWx1ZSk7XHJcblxyXG4gICAgICBpZiAoY29kZSkge1xyXG4gICAgICAgIHRoaXMuc2VsZWN0ZWRDb2RlID0gY29kZTtcclxuICAgICAgICB0aGlzLmNvZGVDaGFuZ2VkKCk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIHB1YmxpYyBjb2RlQ2hhbmdlZCgpIHtcclxuICAgIHRoaXMuc2VsZWN0ZWREb3Rjb2RlLmVtaXQodGhpcy5zZWxlY3RlZENvZGUpO1xyXG4gIH1cclxuXHJcbn1cclxuIl19