UNPKG

kwikui

Version:

KwikID's UI Component Library in Angular

76 lines 10.4 kB
import { Component, Input } from "@angular/core"; import { throwErrorMessage } from "../../../../helpers/kwikui.common.helpers"; import { DEFAULT_VALUES, VALIDATE_KEY_VALUES } from "./progress-segmented.constants"; import { isValidKeyValue } from "./progress-segmented.validation"; import * as i0 from "@angular/core"; import * as i1 from "@taiga-ui/kit"; export class KwikUIProgressSegmentedComponent { constructor() { this.colors = DEFAULT_VALUES.colors; this.id = DEFAULT_VALUES.id; this.max = DEFAULT_VALUES.max; this.size = DEFAULT_VALUES.size; this.value = DEFAULT_VALUES.value; } ngOnInit() { this.colors = this.isColorsEmpty() ? "var(--tui-primary)" : this.colors; } ngOnChanges(changes) { for (const change of Object.entries(changes)) { const key = change[0]; const value = change[1].currentValue; this.validateInputProperty(key, value); } if (changes.hasOwnProperty("value") && !changes.value.firstChange) { this.value = changes.value.currentValue; } if (changes.hasOwnProperty("max") && !changes.max.firstChange) { this.max = changes.max.currentValue; } if (changes.hasOwnProperty("size") && !changes.size.firstChange) { this.size = changes.size.currentValue; } } /** * @description Handles setting up of error and focus on the input field is it invalid */ validateInputProperty(key, value) { if (VALIDATE_KEY_VALUES[key] && !isValidKeyValue(key, value)) { this[key] = DEFAULT_VALUES[key]; throwErrorMessage("kwikui-progress-segmented", this.id, key, value, DEFAULT_VALUES[key]); } } isColorsEmpty() { if (Array.isArray(this.colors)) { if (this.colors.length < 1) { return true; } return false; } if (this.colors === "") { return true; } return false; } } /** @nocollapse */ KwikUIProgressSegmentedComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: KwikUIProgressSegmentedComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); /** @nocollapse */ KwikUIProgressSegmentedComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: KwikUIProgressSegmentedComponent, selector: "kwikui-progress-segmented", inputs: { colors: "colors", id: "id", max: "max", size: "size", value: "value" }, usesOnChanges: true, ngImport: i0, template: "<tui-progress-segmented\n [value]=\"value\"\n [max]=\"max\"\n [size]=\"size\"\n [colors]=\"colors\"\n></tui-progress-segmented>\n", styles: [""], components: [{ type: i1.TuiProgressSegmentedComponent, selector: "tui-progress-segmented", inputs: ["value", "max", "size", "colors"] }] }); i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: KwikUIProgressSegmentedComponent, decorators: [{ type: Component, args: [{ selector: "kwikui-progress-segmented", templateUrl: "./progress-segmented.component.html", styleUrls: ["./progress-segmented.component.scss"] }] }], ctorParameters: function () { return []; }, propDecorators: { colors: [{ type: Input }], id: [{ type: Input }], max: [{ type: Input }], size: [{ type: Input }], value: [{ type: Input }] } }); //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvZ3Jlc3Mtc2VnbWVudGVkLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2t3aWt1aS9zcmMvbGliL2NvbXBvbmVudHMvY29yZS9wcm9ncmVzcy9wcm9ncmVzcy1zZWdtZW50ZWQvcHJvZ3Jlc3Mtc2VnbWVudGVkLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2t3aWt1aS9zcmMvbGliL2NvbXBvbmVudHMvY29yZS9wcm9ncmVzcy9wcm9ncmVzcy1zZWdtZW50ZWQvcHJvZ3Jlc3Mtc2VnbWVudGVkLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxTQUFTLEVBQ1QsS0FBSyxFQUlOLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLDJDQUEyQyxDQUFDO0FBQzlFLE9BQU8sRUFDTCxjQUFjLEVBQ2QsbUJBQW1CLEVBQ3BCLE1BQU0sZ0NBQWdDLENBQUM7QUFFeEMsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLGlDQUFpQyxDQUFDOzs7QUFPbEUsTUFBTSxPQUFPLGdDQUFnQztJQVczQztRQVZTLFdBQU0sR0FBc0IsY0FBYyxDQUFDLE1BQU0sQ0FBQztRQUVsRCxPQUFFLEdBQVcsY0FBYyxDQUFDLEVBQUUsQ0FBQztRQUUvQixRQUFHLEdBQVcsY0FBYyxDQUFDLEdBQUcsQ0FBQztRQUVqQyxTQUFJLEdBQWlDLGNBQWMsQ0FBQyxJQUFJLENBQUM7UUFFekQsVUFBSyxHQUFXLGNBQWMsQ0FBQyxLQUFLLENBQUM7SUFFL0IsQ0FBQztJQUVoQixRQUFRO1FBQ04sSUFBSSxDQUFDLE1BQU0sR0FBRyxJQUFJLENBQUMsYUFBYSxFQUFFLENBQUMsQ0FBQyxDQUFDLG9CQUFvQixDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDO0lBQzFFLENBQUM7SUFFRCxXQUFXLENBQUMsT0FBc0I7UUFDaEMsS0FBSyxNQUFNLE1BQU0sSUFBSSxNQUFNLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxFQUFFO1lBQzVDLE1BQU0sR0FBRyxHQUFXLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQztZQUM5QixNQUFNLEtBQUssR0FBUSxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUMsWUFBWSxDQUFDO1lBQzFDLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxHQUFHLEVBQUUsS0FBSyxDQUFDLENBQUM7U0FDeEM7UUFFRCxJQUFJLE9BQU8sQ0FBQyxjQUFjLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLFdBQVcsRUFBRTtZQUNqRSxJQUFJLENBQUMsS0FBSyxHQUFHLE9BQU8sQ0FBQyxLQUFLLENBQUMsWUFBWSxDQUFDO1NBQ3pDO1FBQ0QsSUFBSSxPQUFPLENBQUMsY0FBYyxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxXQUFXLEVBQUU7WUFDN0QsSUFBSSxDQUFDLEdBQUcsR0FBRyxPQUFPLENBQUMsR0FBRyxDQUFDLFlBQVksQ0FBQztTQUNyQztRQUNELElBQUksT0FBTyxDQUFDLGNBQWMsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsV0FBVyxFQUFFO1lBQy9ELElBQUksQ0FBQyxJQUFJLEdBQUcsT0FBTyxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUM7U0FDdkM7SUFDSCxDQUFDO0lBRUQ7O09BRUc7SUFDSyxxQkFBcUIsQ0FBQyxHQUFXLEVBQUUsS0FBVTtRQUNuRCxJQUFJLG1CQUFtQixDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsZUFBZSxDQUFDLEdBQUcsRUFBRSxLQUFLLENBQUMsRUFBRTtZQUM1RCxJQUFJLENBQUMsR0FBRyxDQUFDLEdBQUcsY0FBYyxDQUFDLEdBQUcsQ0FBQyxDQUFDO1lBQ2hDLGlCQUFpQixDQUNmLDJCQUEyQixFQUMzQixJQUFJLENBQUMsRUFBRSxFQUNQLEdBQUcsRUFDSCxLQUFLLEVBQ0wsY0FBYyxDQUFDLEdBQUcsQ0FBQyxDQUNwQixDQUFDO1NBQ0g7SUFDSCxDQUFDO0lBRUQsYUFBYTtRQUNYLElBQUksS0FBSyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLEVBQUU7WUFDOUIsSUFBSSxJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sR0FBRyxDQUFDLEVBQUU7Z0JBQzFCLE9BQU8sSUFBSSxDQUFDO2FBQ2I7WUFDRCxPQUFPLEtBQUssQ0FBQztTQUNkO1FBQ0QsSUFBSSxJQUFJLENBQUMsTUFBTSxLQUFLLEVBQUUsRUFBRTtZQUN0QixPQUFPLElBQUksQ0FBQztTQUNiO1FBQ0QsT0FBTyxLQUFLLENBQUM7SUFDZixDQUFDOztpSkE5RFUsZ0NBQWdDO3FJQUFoQyxnQ0FBZ0Msd0tDcEI3Qyx1SUFNQTs0RkRjYSxnQ0FBZ0M7a0JBTDVDLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLDJCQUEyQjtvQkFDckMsV0FBVyxFQUFFLHFDQUFxQztvQkFDbEQsU0FBUyxFQUFFLENBQUMscUNBQXFDLENBQUM7aUJBQ25EOzBFQUVVLE1BQU07c0JBQWQsS0FBSztnQkFFRyxFQUFFO3NCQUFWLEtBQUs7Z0JBRUcsR0FBRztzQkFBWCxLQUFLO2dCQUVHLElBQUk7c0JBQVosS0FBSztnQkFFRyxLQUFLO3NCQUFiLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDb21wb25lbnQsXG4gIElucHV0LFxuICBPbkNoYW5nZXMsXG4gIE9uSW5pdCxcbiAgU2ltcGxlQ2hhbmdlc1xufSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xuaW1wb3J0IHsgdGhyb3dFcnJvck1lc3NhZ2UgfSBmcm9tIFwiLi4vLi4vLi4vLi4vaGVscGVycy9rd2lrdWkuY29tbW9uLmhlbHBlcnNcIjtcbmltcG9ydCB7XG4gIERFRkFVTFRfVkFMVUVTLFxuICBWQUxJREFURV9LRVlfVkFMVUVTXG59IGZyb20gXCIuL3Byb2dyZXNzLXNlZ21lbnRlZC5jb25zdGFudHNcIjtcbmltcG9ydCB7IFRLd2lrVUlQcm9ncmVzc1NlZ21lbnRlZFNpemUgfSBmcm9tIFwiLi9wcm9ncmVzcy1zZWdtZW50ZWQuZGVmaW5pdGlvbnNcIjtcbmltcG9ydCB7IGlzVmFsaWRLZXlWYWx1ZSB9IGZyb20gXCIuL3Byb2dyZXNzLXNlZ21lbnRlZC52YWxpZGF0aW9uXCI7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogXCJrd2lrdWktcHJvZ3Jlc3Mtc2VnbWVudGVkXCIsXG4gIHRlbXBsYXRlVXJsOiBcIi4vcHJvZ3Jlc3Mtc2VnbWVudGVkLmNvbXBvbmVudC5odG1sXCIsXG4gIHN0eWxlVXJsczogW1wiLi9wcm9ncmVzcy1zZWdtZW50ZWQuY29tcG9uZW50LnNjc3NcIl1cbn0pXG5leHBvcnQgY2xhc3MgS3dpa1VJUHJvZ3Jlc3NTZWdtZW50ZWRDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uQ2hhbmdlcyB7XG4gIEBJbnB1dCgpIGNvbG9yczogc3RyaW5nIHwgc3RyaW5nW10gPSBERUZBVUxUX1ZBTFVFUy5jb2xvcnM7XG5cbiAgQElucHV0KCkgaWQ6IHN0cmluZyA9IERFRkFVTFRfVkFMVUVTLmlkO1xuXG4gIEBJbnB1dCgpIG1heDogbnVtYmVyID0gREVGQVVMVF9WQUxVRVMubWF4O1xuXG4gIEBJbnB1dCgpIHNpemU6IFRLd2lrVUlQcm9ncmVzc1NlZ21lbnRlZFNpemUgPSBERUZBVUxUX1ZBTFVFUy5zaXplO1xuXG4gIEBJbnB1dCgpIHZhbHVlOiBudW1iZXIgPSBERUZBVUxUX1ZBTFVFUy52YWx1ZTtcblxuICBjb25zdHJ1Y3RvcigpIHt9XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgdGhpcy5jb2xvcnMgPSB0aGlzLmlzQ29sb3JzRW1wdHkoKSA/IFwidmFyKC0tdHVpLXByaW1hcnkpXCIgOiB0aGlzLmNvbG9ycztcbiAgfVxuXG4gIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpIHtcbiAgICBmb3IgKGNvbnN0IGNoYW5nZSBvZiBPYmplY3QuZW50cmllcyhjaGFuZ2VzKSkge1xuICAgICAgY29uc3Qga2V5OiBzdHJpbmcgPSBjaGFuZ2VbMF07XG4gICAgICBjb25zdCB2YWx1ZTogYW55ID0gY2hhbmdlWzFdLmN1cnJlbnRWYWx1ZTtcbiAgICAgIHRoaXMudmFsaWRhdGVJbnB1dFByb3BlcnR5KGtleSwgdmFsdWUpO1xuICAgIH1cblxuICAgIGlmIChjaGFuZ2VzLmhhc093blByb3BlcnR5KFwidmFsdWVcIikgJiYgIWNoYW5nZXMudmFsdWUuZmlyc3RDaGFuZ2UpIHtcbiAgICAgIHRoaXMudmFsdWUgPSBjaGFuZ2VzLnZhbHVlLmN1cnJlbnRWYWx1ZTtcbiAgICB9XG4gICAgaWYgKGNoYW5nZXMuaGFzT3duUHJvcGVydHkoXCJtYXhcIikgJiYgIWNoYW5nZXMubWF4LmZpcnN0Q2hhbmdlKSB7XG4gICAgICB0aGlzLm1heCA9IGNoYW5nZXMubWF4LmN1cnJlbnRWYWx1ZTtcbiAgICB9XG4gICAgaWYgKGNoYW5nZXMuaGFzT3duUHJvcGVydHkoXCJzaXplXCIpICYmICFjaGFuZ2VzLnNpemUuZmlyc3RDaGFuZ2UpIHtcbiAgICAgIHRoaXMuc2l6ZSA9IGNoYW5nZXMuc2l6ZS5jdXJyZW50VmFsdWU7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIEBkZXNjcmlwdGlvbiBIYW5kbGVzIHNldHRpbmcgdXAgb2YgZXJyb3IgYW5kIGZvY3VzIG9uIHRoZSBpbnB1dCBmaWVsZCBpcyBpdCBpbnZhbGlkXG4gICAqL1xuICBwcml2YXRlIHZhbGlkYXRlSW5wdXRQcm9wZXJ0eShrZXk6IHN0cmluZywgdmFsdWU6IGFueSk6IHZvaWQge1xuICAgIGlmIChWQUxJREFURV9LRVlfVkFMVUVTW2tleV0gJiYgIWlzVmFsaWRLZXlWYWx1ZShrZXksIHZhbHVlKSkge1xuICAgICAgdGhpc1trZXldID0gREVGQVVMVF9WQUxVRVNba2V5XTtcbiAgICAgIHRocm93RXJyb3JNZXNzYWdlKFxuICAgICAgICBcImt3aWt1aS1wcm9ncmVzcy1zZWdtZW50ZWRcIixcbiAgICAgICAgdGhpcy5pZCxcbiAgICAgICAga2V5LFxuICAgICAgICB2YWx1ZSxcbiAgICAgICAgREVGQVVMVF9WQUxVRVNba2V5XVxuICAgICAgKTtcbiAgICB9XG4gIH1cblxuICBpc0NvbG9yc0VtcHR5KCk6IGJvb2xlYW4ge1xuICAgIGlmIChBcnJheS5pc0FycmF5KHRoaXMuY29sb3JzKSkge1xuICAgICAgaWYgKHRoaXMuY29sb3JzLmxlbmd0aCA8IDEpIHtcbiAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICB9XG4gICAgICByZXR1cm4gZmFsc2U7XG4gICAgfVxuICAgIGlmICh0aGlzLmNvbG9ycyA9PT0gXCJcIikge1xuICAgICAgcmV0dXJuIHRydWU7XG4gICAgfVxuICAgIHJldHVybiBmYWxzZTtcbiAgfVxufVxuIiwiPHR1aS1wcm9ncmVzcy1zZWdtZW50ZWRcbiAgW3ZhbHVlXT1cInZhbHVlXCJcbiAgW21heF09XCJtYXhcIlxuICBbc2l6ZV09XCJzaXplXCJcbiAgW2NvbG9yc109XCJjb2xvcnNcIlxuPjwvdHVpLXByb2dyZXNzLXNlZ21lbnRlZD5cbiJdfQ==