@softpak/components 18.6.2 → 18.6.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/esm2022/spx-helpers/spx-severity.enum.mjs +2 -1
- package/esm2022/spx-inputs/spx-input-date/spx-input-date.component.mjs +164 -0
- package/esm2022/spx-inputs/spx-input.component.mjs +9 -11
- package/esm2022/spx-suggestion/spx-suggestion.component.mjs +40 -48
- package/fesm2022/softpak-components-spx-helpers.mjs +1 -0
- package/fesm2022/softpak-components-spx-helpers.mjs.map +1 -1
- package/fesm2022/softpak-components-spx-inputs.mjs +166 -304
- package/fesm2022/softpak-components-spx-inputs.mjs.map +1 -1
- package/fesm2022/softpak-components-spx-suggestion.mjs +39 -47
- package/fesm2022/softpak-components-spx-suggestion.mjs.map +1 -1
- package/package.json +59 -59
- package/spx-helpers/spx-severity.enum.d.ts +2 -1
- package/spx-inputs/spx-input-date/spx-input-date.component.d.ts +39 -0
- package/spx-suggestion/spx-suggestion.component.d.ts +5 -5
- package/esm2022/spx-inputs/spx-input-date.component.mjs +0 -297
- package/spx-inputs/spx-input-date.component.d.ts +0 -49
|
@@ -5,5 +5,6 @@ export var SpxSeverityEnum;
|
|
|
5
5
|
SpxSeverityEnum["success"] = "success";
|
|
6
6
|
SpxSeverityEnum["unknown"] = "unknown";
|
|
7
7
|
SpxSeverityEnum["warning"] = "warning";
|
|
8
|
+
SpxSeverityEnum["primary"] = "primary";
|
|
8
9
|
})(SpxSeverityEnum || (SpxSeverityEnum = {}));
|
|
9
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
10
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3B4LXNldmVyaXR5LmVudW0uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zb2Z0cGFrL2NvbXBvbmVudHMvc3B4LWhlbHBlcnMvc3B4LXNldmVyaXR5LmVudW0udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxDQUFOLElBQVksZUFPWDtBQVBELFdBQVksZUFBZTtJQUN6QixrQ0FBZSxDQUFBO0lBQ2YsZ0NBQWEsQ0FBQTtJQUNiLHNDQUFtQixDQUFBO0lBQ25CLHNDQUFtQixDQUFBO0lBQ25CLHNDQUFtQixDQUFBO0lBQ25CLHNDQUFtQixDQUFBO0FBQ3JCLENBQUMsRUFQVyxlQUFlLEtBQWYsZUFBZSxRQU8xQiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBlbnVtIFNweFNldmVyaXR5RW51bSB7XHJcbiAgZXJyb3IgPSAnZXJyb3InLFxyXG4gIGluZm8gPSAnaW5mbycsXHJcbiAgc3VjY2VzcyA9ICdzdWNjZXNzJyxcclxuICB1bmtub3duID0gJ3Vua25vd24nLFxyXG4gIHdhcm5pbmcgPSAnd2FybmluZycsXHJcbiAgcHJpbWFyeSA9ICdwcmltYXJ5JyxcclxufVxyXG4iXX0=
|
|
@@ -0,0 +1,164 @@
|
|
|
1
|
+
import { Component, computed, input, model, output, signal } from '@angular/core';
|
|
2
|
+
import { DateTime } from 'luxon';
|
|
3
|
+
import { valuePairToValue } from '@softpak/components/spx-helpers';
|
|
4
|
+
import { FormsModule } from '@angular/forms';
|
|
5
|
+
import { SpxSuggestionComponent } from '@softpak/components/spx-suggestion';
|
|
6
|
+
import * as i0 from "@angular/core";
|
|
7
|
+
import * as i1 from "@angular/forms";
|
|
8
|
+
var stepType;
|
|
9
|
+
(function (stepType) {
|
|
10
|
+
stepType["years"] = "years";
|
|
11
|
+
stepType["months"] = "months";
|
|
12
|
+
stepType["days"] = "days";
|
|
13
|
+
})(stepType || (stepType = {}));
|
|
14
|
+
export class SpxInputDateComponent {
|
|
15
|
+
constructor() {
|
|
16
|
+
this.spxMax = input.required();
|
|
17
|
+
this.spxMin = input.required();
|
|
18
|
+
this.spxReadonly = input();
|
|
19
|
+
this.spxValidators = input();
|
|
20
|
+
this.value = model({
|
|
21
|
+
description: "",
|
|
22
|
+
value: "",
|
|
23
|
+
});
|
|
24
|
+
this.spxChange = output();
|
|
25
|
+
this.spxFocused = input(true);
|
|
26
|
+
this.spxFocus = output();
|
|
27
|
+
this.spxSelectedStep = signal(stepType.years);
|
|
28
|
+
this.spxSelectDay = input(false);
|
|
29
|
+
this.spxSelectMonth = input(true);
|
|
30
|
+
this.selectedYear = signal(null);
|
|
31
|
+
this.selectedMonth = signal(null);
|
|
32
|
+
this.selectedDay = signal(null);
|
|
33
|
+
this.spxSuggestionC = computed(() => {
|
|
34
|
+
switch (this.spxSelectedStep()) {
|
|
35
|
+
case 'months':
|
|
36
|
+
return [...this.spxSuggestions().months];
|
|
37
|
+
case 'days':
|
|
38
|
+
return [...this.spxSuggestions().days];
|
|
39
|
+
default:
|
|
40
|
+
return this.spxSuggestions().years;
|
|
41
|
+
}
|
|
42
|
+
});
|
|
43
|
+
this.spxSuggestions = input({ years: [],
|
|
44
|
+
months: [{
|
|
45
|
+
description: 'Jan',
|
|
46
|
+
value: 1,
|
|
47
|
+
}, {
|
|
48
|
+
description: 'Feb',
|
|
49
|
+
value: 2,
|
|
50
|
+
}, {
|
|
51
|
+
description: 'Mar',
|
|
52
|
+
value: 3,
|
|
53
|
+
}, {
|
|
54
|
+
description: 'Apr',
|
|
55
|
+
value: 4,
|
|
56
|
+
}, {
|
|
57
|
+
description: 'May',
|
|
58
|
+
value: 5,
|
|
59
|
+
}, {
|
|
60
|
+
description: 'Jun',
|
|
61
|
+
value: 6,
|
|
62
|
+
}, {
|
|
63
|
+
description: 'Jul',
|
|
64
|
+
value: 7,
|
|
65
|
+
}, {
|
|
66
|
+
description: 'Aug',
|
|
67
|
+
value: 8,
|
|
68
|
+
}, {
|
|
69
|
+
description: 'Sep',
|
|
70
|
+
value: 9,
|
|
71
|
+
}, {
|
|
72
|
+
description: 'Oct',
|
|
73
|
+
value: 10,
|
|
74
|
+
}, {
|
|
75
|
+
description: 'Nov',
|
|
76
|
+
value: 11,
|
|
77
|
+
}, {
|
|
78
|
+
description: 'Dec',
|
|
79
|
+
value: 12,
|
|
80
|
+
}],
|
|
81
|
+
days: [], });
|
|
82
|
+
}
|
|
83
|
+
onModelChange(newValue, selectedStep) {
|
|
84
|
+
const parsedValue = +newValue; // Convert to number
|
|
85
|
+
if (parsedValue == 0)
|
|
86
|
+
return;
|
|
87
|
+
switch (selectedStep) {
|
|
88
|
+
case stepType.years:
|
|
89
|
+
this.selectedYear.set(parsedValue);
|
|
90
|
+
break;
|
|
91
|
+
case stepType.months:
|
|
92
|
+
this.selectedMonth.set(parsedValue);
|
|
93
|
+
break;
|
|
94
|
+
case stepType.days:
|
|
95
|
+
this.selectedDay.set(parsedValue);
|
|
96
|
+
break;
|
|
97
|
+
}
|
|
98
|
+
}
|
|
99
|
+
ngOnInit() {
|
|
100
|
+
this.suggestYears();
|
|
101
|
+
if (valuePairToValue(this.value)) {
|
|
102
|
+
const parsedValue = DateTime.fromISO(valuePairToValue(this.value));
|
|
103
|
+
this.selectedYear.set(parsedValue.year);
|
|
104
|
+
this.selectedMonth.set(parsedValue.month);
|
|
105
|
+
this.selectedDay.set(parsedValue.day);
|
|
106
|
+
}
|
|
107
|
+
}
|
|
108
|
+
handleSuggestionClick(value) {
|
|
109
|
+
switch (this.spxSelectedStep()) {
|
|
110
|
+
case "years":
|
|
111
|
+
this.selectedYear.set(value);
|
|
112
|
+
break;
|
|
113
|
+
case "months":
|
|
114
|
+
this.selectedMonth.set(value);
|
|
115
|
+
break;
|
|
116
|
+
case "days":
|
|
117
|
+
this.selectedDay.set(value);
|
|
118
|
+
break;
|
|
119
|
+
}
|
|
120
|
+
this.updateValueAndEmit();
|
|
121
|
+
this.changeSelectedStep();
|
|
122
|
+
}
|
|
123
|
+
updateValueAndEmit() {
|
|
124
|
+
const concatenatedValue = `
|
|
125
|
+
${this.selectedYear() ? this.selectedYear() : ``}
|
|
126
|
+
${this.selectedMonth() ? `${this.selectedMonth() < 10 ? `0${this.selectedMonth()}` : this.selectedMonth()}` : ``}
|
|
127
|
+
${this.selectedDay() ? `-${this.selectedDay() < 10 ? `0${this.selectedDay()}` : this.selectedDay()}` : ``}`;
|
|
128
|
+
const parsedValue = DateTime.fromISO(concatenatedValue);
|
|
129
|
+
this.value.set({ value: parsedValue.toISO(), description: parsedValue.toISO() });
|
|
130
|
+
this.spxChange.emit(this.value());
|
|
131
|
+
}
|
|
132
|
+
changeSelectedStep() {
|
|
133
|
+
switch (this.spxSelectedStep()) {
|
|
134
|
+
case 'days':
|
|
135
|
+
this.spxSelectedStep.set(stepType.years);
|
|
136
|
+
break;
|
|
137
|
+
case 'months':
|
|
138
|
+
this.spxSelectedStep.set(this.spxSelectDay() ? stepType.days : stepType.years);
|
|
139
|
+
break;
|
|
140
|
+
case 'years':
|
|
141
|
+
this.spxSelectedStep.set(this.spxSelectMonth() ? stepType.months : stepType.years);
|
|
142
|
+
break;
|
|
143
|
+
}
|
|
144
|
+
}
|
|
145
|
+
suggestYears() {
|
|
146
|
+
this.spxSuggestions().years = [];
|
|
147
|
+
for (let year = DateTime.fromISO(this.spxMin()).year; year <= DateTime.fromISO(this.spxMax()).year; year++) {
|
|
148
|
+
this.spxSuggestions().years.push({
|
|
149
|
+
description: `'${year.toString().substring(2, 4)}`,
|
|
150
|
+
value: year,
|
|
151
|
+
});
|
|
152
|
+
}
|
|
153
|
+
}
|
|
154
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: SpxInputDateComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
155
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: SpxInputDateComponent, isStandalone: true, selector: "spx-input-date", inputs: { spxMax: { classPropertyName: "spxMax", publicName: "spxMax", isSignal: true, isRequired: true, transformFunction: null }, spxMin: { classPropertyName: "spxMin", publicName: "spxMin", isSignal: true, isRequired: true, transformFunction: null }, spxReadonly: { classPropertyName: "spxReadonly", publicName: "spxReadonly", isSignal: true, isRequired: false, transformFunction: null }, spxValidators: { classPropertyName: "spxValidators", publicName: "spxValidators", isSignal: true, isRequired: false, transformFunction: null }, value: { classPropertyName: "value", publicName: "value", isSignal: true, isRequired: false, transformFunction: null }, spxFocused: { classPropertyName: "spxFocused", publicName: "spxFocused", isSignal: true, isRequired: false, transformFunction: null }, spxSelectDay: { classPropertyName: "spxSelectDay", publicName: "spxSelectDay", isSignal: true, isRequired: false, transformFunction: null }, spxSelectMonth: { classPropertyName: "spxSelectMonth", publicName: "spxSelectMonth", isSignal: true, isRequired: false, transformFunction: null }, spxSuggestions: { classPropertyName: "spxSuggestions", publicName: "spxSuggestions", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { value: "valueChange", spxChange: "spxChange", spxFocus: "spxFocus" }, ngImport: i0, template: "<div class='spx-input-date__controls'>\r\n <input\r\n class='spx-input-date__input'\r\n [(ngModel)]=\"selectedYear\"\r\n [attr.type]=\"'number'\"\r\n (ngModelChange)=\"onModelChange($event, 'years')\"\r\n [attr.min]=\"1900\"\r\n [attr.max]=\"2100\"\r\n [attr.step]=\"1\"\r\n />\r\n <div class='spx-input-date__control-label'>Year</div>\r\n @if (this.spxSelectMonth()) {\r\n <input\r\n class='spx-input-date__input'\r\n [(ngModel)]=\"selectedMonth\"\r\n (ngModelChange)=\"onModelChange($event, 'months')\"\r\n [attr.type]=\"'number'\"\r\n [attr.min]=\"1\"\r\n [attr.max]=\"12\"\r\n [attr.step]=\"1\" />\r\n }\r\n <div class='spx-input-date__control-label'>Month</div>\r\n @if (this.spxSelectDay()) {\r\n <input\r\n class='spx-input-date__input'\r\n [(ngModel)]=\"selectedDay\"\r\n (ngModelChange)=\"onModelChange($event, 'days')\"\r\n [attr.type]=\"'number'\"\r\n [attr.min]=\"1\"\r\n [attr.max]=\"31\"\r\n [attr.step]=\"1\" />\r\n <div class='spx-input-date__control-label'>Days</div>\r\n }\r\n</div>\r\n<div class='spx-input-date__suggestions'>\r\n @for (valuePair of spxSuggestionC(); track valuePair.value) {\r\n <spx-suggestion [spxSelected]=\"\r\n (selectedYear() === valuePair.value) ||\r\n (selectedMonth() === valuePair.value) || \r\n (selectedDay() === valuePair.value)\"\r\n (click)=\"this.handleSuggestionClick(valuePair.value)\">{{valuePair?.description}}</spx-suggestion>\r\n }\r\n</div>", styles: [":host{display:block}.spx-input-date__input{background-color:transparent;border:1px solid #979797;border-radius:4px;color:var(--spx-input--color, rgba(0, 0, 0, .9));box-sizing:border-box;font-size:16px;margin-right:10px;padding:6px;text-align:center;width:100%}.spx-input-date__input:active{transform:scale(.95)}.spx-input-date__input:focus{border:var(--spx-input-box--focus--border, 1px solid rgb(115, 168, 210));border-radius:4px;outline:none}.spx-input-date__control-label{align-items:center;color:#000000b3;display:inline-grid;font-size:13px;letter-spacing:1px}.spx-input-date__input::-webkit-outer-spin-button,.spx-input-date__input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.spx-input-date__input[type=number]{-moz-appearance:textfield}.spx-input-date__suggestions,.spx-input-date__controls{display:grid;grid-gap:8px;grid-template-columns:repeat(4,1fr);margin-top:8px}\n"], dependencies: [{ kind: "component", type: SpxSuggestionComponent, selector: "spx-suggestion", inputs: ["spxDisabled", "spxFocused", "spxSelected", "spxTabbable"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }] }); }
|
|
156
|
+
}
|
|
157
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: SpxInputDateComponent, decorators: [{
|
|
158
|
+
type: Component,
|
|
159
|
+
args: [{ selector: 'spx-input-date', standalone: true, imports: [
|
|
160
|
+
SpxSuggestionComponent,
|
|
161
|
+
FormsModule
|
|
162
|
+
], template: "<div class='spx-input-date__controls'>\r\n <input\r\n class='spx-input-date__input'\r\n [(ngModel)]=\"selectedYear\"\r\n [attr.type]=\"'number'\"\r\n (ngModelChange)=\"onModelChange($event, 'years')\"\r\n [attr.min]=\"1900\"\r\n [attr.max]=\"2100\"\r\n [attr.step]=\"1\"\r\n />\r\n <div class='spx-input-date__control-label'>Year</div>\r\n @if (this.spxSelectMonth()) {\r\n <input\r\n class='spx-input-date__input'\r\n [(ngModel)]=\"selectedMonth\"\r\n (ngModelChange)=\"onModelChange($event, 'months')\"\r\n [attr.type]=\"'number'\"\r\n [attr.min]=\"1\"\r\n [attr.max]=\"12\"\r\n [attr.step]=\"1\" />\r\n }\r\n <div class='spx-input-date__control-label'>Month</div>\r\n @if (this.spxSelectDay()) {\r\n <input\r\n class='spx-input-date__input'\r\n [(ngModel)]=\"selectedDay\"\r\n (ngModelChange)=\"onModelChange($event, 'days')\"\r\n [attr.type]=\"'number'\"\r\n [attr.min]=\"1\"\r\n [attr.max]=\"31\"\r\n [attr.step]=\"1\" />\r\n <div class='spx-input-date__control-label'>Days</div>\r\n }\r\n</div>\r\n<div class='spx-input-date__suggestions'>\r\n @for (valuePair of spxSuggestionC(); track valuePair.value) {\r\n <spx-suggestion [spxSelected]=\"\r\n (selectedYear() === valuePair.value) ||\r\n (selectedMonth() === valuePair.value) || \r\n (selectedDay() === valuePair.value)\"\r\n (click)=\"this.handleSuggestionClick(valuePair.value)\">{{valuePair?.description}}</spx-suggestion>\r\n }\r\n</div>", styles: [":host{display:block}.spx-input-date__input{background-color:transparent;border:1px solid #979797;border-radius:4px;color:var(--spx-input--color, rgba(0, 0, 0, .9));box-sizing:border-box;font-size:16px;margin-right:10px;padding:6px;text-align:center;width:100%}.spx-input-date__input:active{transform:scale(.95)}.spx-input-date__input:focus{border:var(--spx-input-box--focus--border, 1px solid rgb(115, 168, 210));border-radius:4px;outline:none}.spx-input-date__control-label{align-items:center;color:#000000b3;display:inline-grid;font-size:13px;letter-spacing:1px}.spx-input-date__input::-webkit-outer-spin-button,.spx-input-date__input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.spx-input-date__input[type=number]{-moz-appearance:textfield}.spx-input-date__suggestions,.spx-input-date__controls{display:grid;grid-gap:8px;grid-template-columns:repeat(4,1fr);margin-top:8px}\n"] }]
|
|
163
|
+
}] });
|
|
164
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3B4LWlucHV0LWRhdGUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc29mdHBhay9jb21wb25lbnRzL3NweC1pbnB1dHMvc3B4LWlucHV0LWRhdGUvc3B4LWlucHV0LWRhdGUuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc29mdHBhay9jb21wb25lbnRzL3NweC1pbnB1dHMvc3B4LWlucHV0LWRhdGUvc3B4LWlucHV0LWRhdGUuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLFNBQVMsRUFBRSxRQUFRLEVBQUUsS0FBSyxFQUFFLEtBQUssRUFBVSxNQUFNLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzFGLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxPQUFPLENBQUM7QUFFakMsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFDbkUsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzdDLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLG9DQUFvQyxDQUFDOzs7QUFFNUUsSUFBSyxRQUlKO0FBSkQsV0FBSyxRQUFRO0lBQ1gsMkJBQWUsQ0FBQTtJQUNmLDZCQUFpQixDQUFBO0lBQ2pCLHlCQUFhLENBQUE7QUFDZixDQUFDLEVBSkksUUFBUSxLQUFSLFFBQVEsUUFJWjtBQVlELE1BQU0sT0FBTyxxQkFBcUI7SUFWbEM7UUFXRSxXQUFNLEdBQUcsS0FBSyxDQUFDLFFBQVEsRUFBVSxDQUFDO1FBQ2xDLFdBQU0sR0FBRyxLQUFLLENBQUMsUUFBUSxFQUFVLENBQUM7UUFDbEMsZ0JBQVcsR0FBRyxLQUFLLEVBQVcsQ0FBQztRQUMvQixrQkFBYSxHQUFHLEtBQUssRUFBUyxDQUFDO1FBQy9CLFVBQUssR0FBSSxLQUFLLENBQXVCO1lBQ25DLFdBQVcs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clxuaW1wb3J0IHsgQ29tcG9uZW50LCBjb21wdXRlZCwgaW5wdXQsIG1vZGVsLCBPbkluaXQsIG91dHB1dCwgc2lnbmFsIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IERhdGVUaW1lIH0gZnJvbSAnbHV4b24nO1xyXG5pbXBvcnQgeyBTcHhWYWx1ZVBhaXIgfSBmcm9tICcuLi9zcHgtdmFsdWUtaW50ZXJmYWNlJztcclxuaW1wb3J0IHsgdmFsdWVQYWlyVG9WYWx1ZSB9IGZyb20gJ0Bzb2Z0cGFrL2NvbXBvbmVudHMvc3B4LWhlbHBlcnMnO1xyXG5pbXBvcnQgeyBGb3Jtc01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuaW1wb3J0IHsgU3B4U3VnZ2VzdGlvbkNvbXBvbmVudCB9IGZyb20gJ0Bzb2Z0cGFrL2NvbXBvbmVudHMvc3B4LXN1Z2dlc3Rpb24nO1xyXG5cclxuZW51bSBzdGVwVHlwZSB7XHJcbiAgeWVhcnMgPSBcInllYXJzXCIsXHJcbiAgbW9udGhzID0gXCJtb250aHNcIixcclxuICBkYXlzID0gXCJkYXlzXCJcclxufVxyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdzcHgtaW5wdXQtZGF0ZScsXHJcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcclxuICBpbXBvcnRzOiBbXHJcbiAgICBTcHhTdWdnZXN0aW9uQ29tcG9uZW50LFxyXG4gICAgRm9ybXNNb2R1bGVcclxuICBdLFxyXG4gIHRlbXBsYXRlVXJsOiBcIi4vc3B4LWlucHV0LWRhdGUuY29tcG9uZW50Lmh0bWxcIixcclxuICBzdHlsZVVybDogXCIuL3NweC1pbnB1dC1kYXRlLmNvbXBvbmVudC5jc3NcIlxyXG59KVxyXG5leHBvcnQgY2xhc3MgU3B4SW5wdXREYXRlQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcclxuICBzcHhNYXggPSBpbnB1dC5yZXF1aXJlZDxzdHJpbmc+KCk7XHJcbiAgc3B4TWluID0gaW5wdXQucmVxdWlyZWQ8c3RyaW5nPigpO1xyXG4gIHNweFJlYWRvbmx5ID0gaW5wdXQ8Ym9vbGVhbj4oKTtcclxuICBzcHhWYWxpZGF0b3JzID0gaW5wdXQ8YW55W10+KCk7XHJcbiAgdmFsdWUgPSAgbW9kZWw8U3B4VmFsdWVQYWlyPHN0cmluZz4+KHtcclxuICAgIGRlc2NyaXB0aW9uOiBcIlwiLFxyXG4gICAgdmFsdWU6IFwiXCIsXHJcbiAgfSk7XHJcbiAgc3B4Q2hhbmdlID0gb3V0cHV0PFNweFZhbHVlUGFpcjxhbnk+PigpO1xyXG4gIHNweEZvY3VzZWQgPSBpbnB1dDxib29sZWFuPih0cnVlKTtcclxuICBzcHhGb2N1cyA9IG91dHB1dCgpO1xyXG5cclxuICBzcHhTZWxlY3RlZFN0ZXAgPSBzaWduYWw8c3RlcFR5cGU+KHN0ZXBUeXBlLnllYXJzKTtcclxuXHJcbiAgc3B4U2VsZWN0RGF5ID0gaW5wdXQ8Ym9vbGVhbj4oZmFsc2UpO1xyXG4gIHNweFNlbGVjdE1vbnRoID0gaW5wdXQ8Ym9vbGVhbj4odHJ1ZSk7XHJcblxyXG4gIHNlbGVjdGVkWWVhciA9IHNpZ25hbDxudW1iZXIgfCBudWxsPihudWxsKTtcclxuICBzZWxlY3RlZE1vbnRoID0gc2lnbmFsPG51bWJlcnwgbnVsbD4obnVsbCk7XHJcbiAgc2VsZWN0ZWREYXkgPSBzaWduYWw8bnVtYmVyfCBudWxsPihudWxsKTtcclxuXHJcbiAgc3B4U3VnZ2VzdGlvbkMgPSBjb21wdXRlZDxTcHhWYWx1ZVBhaXI8bnVtYmVyPltdPigoKSA9PiB7XHJcbiAgICBzd2l0Y2godGhpcy5zcHhTZWxlY3RlZFN0ZXAoKSkge1xyXG4gICAgICBjYXNlICdtb250aHMnIDpcclxuICAgICAgICByZXR1cm4gWy4uLnRoaXMuc3B4U3VnZ2VzdGlvbnMoKS5tb250aHNdXHJcbiAgICAgIGNhc2UgJ2RheXMnIDpcclxuICAgICAgICByZXR1cm4gWy4uLnRoaXMuc3B4U3VnZ2VzdGlvbnMoKS5kYXlzXVxyXG4gICAgICBkZWZhdWx0OlxyXG4gICAgICAgIHJldHVybiB0aGlzLnNweFN1Z2dlc3Rpb25zKCkueWVhcnM7XHJcbiAgICB9XHJcbiAgfSk7XHJcblxyXG4gIG9uTW9kZWxDaGFuZ2UobmV3VmFsdWU6IHN0cmluZywgc2VsZWN0ZWRTdGVwOiBzdHJpbmcpIHtcclxuICAgIGNvbnN0IHBhcnNlZFZhbHVlID0gK25ld1ZhbHVlOyAvLyBDb252ZXJ0IHRvIG51bWJlclxyXG5cclxuICAgIGlmKHBhcnNlZFZhbHVlID09IDApIHJldHVybjtcclxuXHJcbiAgICBzd2l0Y2goc2VsZWN0ZWRTdGVwKSB7XHJcbiAgICAgIGNhc2Ugc3RlcFR5cGUueWVhcnM6XHJcbiAgICAgICAgdGhpcy5zZWxlY3RlZFllYXIuc2V0KHBhcnNlZFZhbHVlKTtcclxuICAgICAgYnJlYWs7XHJcbiAgICAgIGNhc2Ugc3RlcFR5cGUubW9udGhzOlxyXG4gICAgICAgIHRoaXMuc2VsZWN0ZWRNb250aC5zZXQocGFyc2VkVmFsdWUpO1xyXG4gICAgICBicmVhaztcclxuICAgICAgY2FzZSBzdGVwVHlwZS5kYXlzOlxyXG4gICAgICAgIHRoaXMuc2VsZWN0ZWREYXkuc2V0KHBhcnNlZFZhbHVlKTtcclxuICAgICAgYnJlYWs7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBzcHhTdWdnZXN0aW9ucyA9IGlucHV0PHtcclxuICAgIHllYXJzOiBTcHhWYWx1ZVBhaXI8bnVtYmVyPltdO1xyXG4gICAgbW9udGhzOiBTcHhWYWx1ZVBhaXI8bnVtYmVyPltdO1xyXG4gICAgZGF5czogU3B4VmFsdWVQYWlyPG51bWJlcj5bXTtcclxuICB9Pih7eWVhcnM6IFtdLFxyXG4gICAgbW9udGhzOiBbe1xyXG4gICAgICBkZXNjcmlwdGlvbjogJ0phbicsXHJcbiAgICAgIHZhbHVlOiAxLFxyXG4gICAgfSwge1xyXG4gICAgICBkZXNjcmlwdGlvbjogJ0ZlYicsXHJcbiAgICAgIHZhbHVlOiAyLFxyXG4gICAgfSwge1xyXG4gICAgICBkZXNjcmlwdGlvbjogJ01hcicsXHJcbiAgICAgIHZhbHVlOiAzLFxyXG4gICAgfSwge1xyXG4gICAgICBkZXNjcmlwdGlvbjogJ0FwcicsXHJcbiAgICAgIHZhbHVlOiA0LFxyXG4gICAgfSwge1xyXG4gICAgICBkZXNjcmlwdGlvbjogJ01heScsXHJcbiAgICAgIHZhbHVlOiA1LFxyXG4gICAgfSwge1xyXG4gICAgICBkZXNjcmlwdGlvbjogJ0p1bicsXHJcbiAgICAgIHZhbHVlOiA2LFxyXG4gICAgfSwge1xyXG4gICAgICBkZXNjcmlwdGlvbjogJ0p1bCcsXHJcbiAgICAgIHZhbHVlOiA3LFxyXG4gICAgfSwge1xyXG4gICAgICBkZXNjcmlwdGlvbjogJ0F1ZycsXHJcbiAgICAgIHZhbHVlOiA4LFxyXG4gICAgfSwge1xyXG4gICAgICBkZXNjcmlwdGlvbjogJ1NlcCcsXHJcbiAgICAgIHZhbHVlOiA5LFxyXG4gICAgfSwge1xyXG4gICAgICBkZXNjcmlwdGlvbjogJ09jdCcsXHJcbiAgICAgIHZhbHVlOiAxMCxcclxuICAgIH0sIHtcclxuICAgICAgZGVzY3JpcHRpb246ICdOb3YnLFxyXG4gICAgICB2YWx1ZTogMTEsXHJcbiAgICB9LCB7XHJcbiAgICAgIGRlc2NyaXB0aW9uOiAnRGVjJyxcclxuICAgICAgdmFsdWU6IDEyLFxyXG4gICAgfV0sXHJcbiAgICBkYXlzOiBbXSx9KTtcclxuXHJcbiAgbmdPbkluaXQoKSB7XHJcbiAgICB0aGlzLnN1Z2dlc3RZZWFycygpO1xyXG4gICAgaWYgKHZhbHVlUGFpclRvVmFsdWUodGhpcy52YWx1ZSkpIHtcclxuICAgICAgY29uc3QgcGFyc2VkVmFsdWUgPSBEYXRlVGltZS5mcm9tSVNPKHZhbHVlUGFpclRvVmFsdWUodGhpcy52YWx1ZSkpO1xyXG4gICAgICB0aGlzLnNlbGVjdGVkWWVhci5zZXQocGFyc2VkVmFsdWUueWVhcik7XHJcbiAgICAgIHRoaXMuc2VsZWN0ZWRNb250aC5zZXQocGFyc2VkVmFsdWUubW9udGgpO1xyXG4gICAgICB0aGlzLnNlbGVjdGVkRGF5LnNldChwYXJzZWRWYWx1ZS5kYXkpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgaGFuZGxlU3VnZ2VzdGlvbkNsaWNrKHZhbHVlOiBudW1iZXIpIHtcclxuXHJcbiAgICBzd2l0Y2godGhpcy5zcHhTZWxlY3RlZFN0ZXAoKSkge1xyXG4gICAgICBjYXNlIFwieWVhcnNcIjpcclxuICAgICAgICB0aGlzLnNlbGVjdGVkWWVhci5zZXQodmFsdWUpO1xyXG4gICAgICBicmVhaztcclxuICAgICAgY2FzZSBcIm1vbnRoc1wiOlxyXG4gICAgICAgIHRoaXMuc2VsZWN0ZWRNb250aC5zZXQodmFsdWUpO1xyXG4gICAgICBicmVhaztcclxuICAgICAgY2FzZSBcImRheXNcIjpcclxuICAgICAgICB0aGlzLnNlbGVjdGVkRGF5LnNldCh2YWx1ZSk7XHJcbiAgICAgIGJyZWFrO1xyXG4gICAgfVxyXG5cclxuICAgIHRoaXMudXBkYXRlVmFsdWVBbmRFbWl0KCk7XHJcbiAgICB0aGlzLmNoYW5nZVNlbGVjdGVkU3RlcCgpO1xyXG4gIH1cclxuXHJcbiAgdXBkYXRlVmFsdWVBbmRFbWl0KCkge1xyXG4gICAgY29uc3QgY29uY2F0ZW5hdGVkVmFsdWUgPSBgXHJcbiAgICAke3RoaXMuc2VsZWN0ZWRZZWFyKCkgPyB0aGlzLnNlbGVjdGVkWWVhcigpIDogYGB9XHJcbiAgICAke3RoaXMuc2VsZWN0ZWRNb250aCgpID8gYCR7dGhpcy5zZWxlY3RlZE1vbnRoKCkhIDwgMTAgPyBgMCR7dGhpcy5zZWxlY3RlZE1vbnRoKCl9YCA6IHRoaXMuc2VsZWN0ZWRNb250aCgpfWAgOiBgYH1cclxuICAgICR7dGhpcy5zZWxlY3RlZERheSgpID8gYC0ke3RoaXMuc2VsZWN0ZWREYXkoKSEgPCAxMCA/IGAwJHt0aGlzLnNlbGVjdGVkRGF5KCl9YCA6IHRoaXMuc2VsZWN0ZWREYXkoKX1gIDogYGB9YFxyXG5cclxuICAgIGNvbnN0IHBhcnNlZFZhbHVlID0gRGF0ZVRpbWUuZnJvbUlTTyhjb25jYXRlbmF0ZWRWYWx1ZSk7XHJcbiAgICBcclxuICAgIHRoaXMudmFsdWUuc2V0KHt2YWx1ZTogcGFyc2VkVmFsdWUudG9JU08oKSEsIGRlc2NyaXB0aW9uOiBwYXJzZWRWYWx1ZS50b0lTTygpfSk7XHJcbiAgICB0aGlzLnNweENoYW5nZS5lbWl0KHRoaXMudmFsdWUoKSk7XHJcbiAgfVxyXG5cclxuICBjaGFuZ2VTZWxlY3RlZFN0ZXAoKSB7XHJcbiAgICBzd2l0Y2godGhpcy5zcHhTZWxlY3RlZFN0ZXAoKSkge1xyXG4gICAgICBjYXNlICdkYXlzJzpcclxuICAgICAgICB0aGlzLnNweFNlbGVjdGVkU3RlcC5zZXQoc3RlcFR5cGUueWVhcnMpO1xyXG4gICAgICBicmVhaztcclxuICAgICAgY2FzZSAnbW9udGhzJzpcclxuICAgICAgICB0aGlzLnNweFNlbGVjdGVkU3RlcC5zZXQodGhpcy5zcHhTZWxlY3REYXkoKSA/IHN0ZXBUeXBlLmRheXMgOiBzdGVwVHlwZS55ZWFycyk7XHJcbiAgICAgIGJyZWFrO1xyXG4gICAgICBjYXNlICd5ZWFycyc6XHJcbiAgICAgICAgdGhpcy5zcHhTZWxlY3RlZFN0ZXAuc2V0KHRoaXMuc3B4U2VsZWN0TW9udGgoKSA/IHN0ZXBUeXBlLm1vbnRocyA6IHN0ZXBUeXBlLnllYXJzKTtcclxuICAgICAgYnJlYWs7ICBcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHByaXZhdGUgc3VnZ2VzdFllYXJzKCk6IHZvaWQge1xyXG4gICAgdGhpcy5zcHhTdWdnZXN0aW9ucygpLnllYXJzID0gW107XHJcbiAgICBmb3IgKGxldCB5ZWFyID0gRGF0ZVRpbWUuZnJvbUlTTyh0aGlzLnNweE1pbigpKS55ZWFyOyB5ZWFyIDw9IERhdGVUaW1lLmZyb21JU08odGhpcy5zcHhNYXgoKSkueWVhcjsgeWVhcisrKSB7XHJcbiAgICAgIHRoaXMuc3B4U3VnZ2VzdGlvbnMoKS55ZWFycy5wdXNoKHtcclxuICAgICAgICBkZXNjcmlwdGlvbjogYCcke3llYXIudG9TdHJpbmcoKS5zdWJzdHJpbmcoMiwgNCl9YCxcclxuICAgICAgICB2YWx1ZTogeWVhcixcclxuICAgICAgfSk7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiIsIjxkaXYgY2xhc3M9J3NweC1pbnB1dC1kYXRlX19jb250cm9scyc+XHJcbiAgPGlucHV0XHJcbiAgICBjbGFzcz0nc3B4LWlucHV0LWRhdGVfX2lucHV0J1xyXG4gICAgWyhuZ01vZGVsKV09XCJzZWxlY3RlZFllYXJcIlxyXG4gICAgW2F0dHIudHlwZV09XCInbnVtYmVyJ1wiXHJcbiAgICAobmdNb2RlbENoYW5nZSk9XCJvbk1vZGVsQ2hhbmdlKCRldmVudCwgJ3llYXJzJylcIlxyXG4gICAgW2F0dHIubWluXT1cIjE5MDBcIlxyXG4gICAgW2F0dHIubWF4XT1cIjIxMDBcIlxyXG4gICAgW2F0dHIuc3RlcF09XCIxXCJcclxuICAgIC8+XHJcbiAgPGRpdiBjbGFzcz0nc3B4LWlucHV0LWRhdGVfX2NvbnRyb2wtbGFiZWwnPlllYXI8L2Rpdj5cclxuICBAaWYgKHRoaXMuc3B4U2VsZWN0TW9udGgoKSkge1xyXG4gICAgPGlucHV0XHJcbiAgICAgIGNsYXNzPSdzcHgtaW5wdXQtZGF0ZV9faW5wdXQnXHJcbiAgICAgIFsobmdNb2RlbCldPVwic2VsZWN0ZWRNb250aFwiXHJcbiAgICAgIChuZ01vZGVsQ2hhbmdlKT1cIm9uTW9kZWxDaGFuZ2UoJGV2ZW50LCAnbW9udGhzJylcIlxyXG4gICAgICBbYXR0ci50eXBlXT1cIidudW1iZXInXCJcclxuICAgICAgW2F0dHIubWluXT1cIjFcIlxyXG4gICAgICBbYXR0ci5tYXhdPVwiMTJcIlxyXG4gICAgICBbYXR0ci5zdGVwXT1cIjFcIiAvPlxyXG4gIH1cclxuICA8ZGl2IGNsYXNzPSdzcHgtaW5wdXQtZGF0ZV9fY29udHJvbC1sYWJlbCc+TW9udGg8L2Rpdj5cclxuICBAaWYgKHRoaXMuc3B4U2VsZWN0RGF5KCkpIHtcclxuICAgIDxpbnB1dFxyXG4gICAgICBjbGFzcz0nc3B4LWlucHV0LWRhdGVfX2lucHV0J1xyXG4gICAgICBbKG5nTW9kZWwpXT1cInNlbGVjdGVkRGF5XCJcclxuICAgICAgKG5nTW9kZWxDaGFuZ2UpPVwib25Nb2RlbENoYW5nZSgkZXZlbnQsICdkYXlzJylcIlxyXG4gICAgICBbYXR0ci50eXBlXT1cIidudW1iZXInXCJcclxuICAgICAgW2F0dHIubWluXT1cIjFcIlxyXG4gICAgICBbYXR0ci5tYXhdPVwiMzFcIlxyXG4gICAgICBbYXR0ci5zdGVwXT1cIjFcIiAvPlxyXG4gICAgPGRpdiBjbGFzcz0nc3B4LWlucHV0LWRhdGVfX2NvbnRyb2wtbGFiZWwnPkRheXM8L2Rpdj5cclxuICB9XHJcbjwvZGl2PlxyXG48ZGl2IGNsYXNzPSdzcHgtaW5wdXQtZGF0ZV9fc3VnZ2VzdGlvbnMnPlxyXG4gIEBmb3IgKHZhbHVlUGFpciBvZiBzcHhTdWdnZXN0aW9uQygpOyB0cmFjayB2YWx1ZVBhaXIudmFsdWUpIHtcclxuICAgIDxzcHgtc3VnZ2VzdGlvbiBbc3B4U2VsZWN0ZWRdPVwiXHJcbiAgICAoc2VsZWN0ZWRZZWFyKCkgPT09IHZhbHVlUGFpci52YWx1ZSkgfHxcclxuICAgIChzZWxlY3RlZE1vbnRoKCkgPT09IHZhbHVlUGFpci52YWx1ZSkgfHwgIFxyXG4gICAgKHNlbGVjdGVkRGF5KCkgPT09IHZhbHVlUGFpci52YWx1ZSlcIlxyXG4gICAgKGNsaWNrKT1cInRoaXMuaGFuZGxlU3VnZ2VzdGlvbkNsaWNrKHZhbHVlUGFpci52YWx1ZSlcIj57e3ZhbHVlUGFpcj8uZGVzY3JpcHRpb259fTwvc3B4LXN1Z2dlc3Rpb24+XHJcbiAgfVxyXG48L2Rpdj4iXX0=
|
|
@@ -2,12 +2,12 @@ import { Component, EventEmitter, HostListener, Input, Output, ViewChild } from
|
|
|
2
2
|
import { SpxInputBoxComponent } from './spx-input-box.component';
|
|
3
3
|
import { SpxInputTextComponent } from './spx-input-text.component';
|
|
4
4
|
import { NG_VALUE_ACCESSOR } from '@angular/forms';
|
|
5
|
-
import { SpxInputDateComponent } from './spx-input-date.component';
|
|
6
5
|
import { SpxInputFloatComponent } from './spx-input-float.component';
|
|
7
6
|
import { SpxInputNumberComponent } from './spx-input-number.component';
|
|
8
7
|
import { SpxInputRadioComponent } from './spx-input-radio.component';
|
|
9
8
|
import { SpxInputTypeEnum } from './spx-input-type.enum';
|
|
10
9
|
import { SpxInputTimeComponent } from './spx-input-time.component';
|
|
10
|
+
import { SpxInputDateComponent } from './spx-input-date/spx-input-date.component';
|
|
11
11
|
import * as i0 from "@angular/core";
|
|
12
12
|
export class SpxInputComponent {
|
|
13
13
|
constructor() {
|
|
@@ -171,14 +171,13 @@ export class SpxInputComponent {
|
|
|
171
171
|
(spxChange)="this.handleChange($event)"
|
|
172
172
|
(spxFocus)="this.handleFocus()"
|
|
173
173
|
[spxFocused]="this.spxFocused"
|
|
174
|
-
[spxMax]="this.spxMax"
|
|
175
|
-
[spxMin]="this.spxMin"
|
|
176
|
-
[spxName]="this.spxName"
|
|
174
|
+
[spxMax]="this.spxMax!"
|
|
175
|
+
[spxMin]="this.spxMin!"
|
|
177
176
|
[spxReadonly]="this.spxReadonly"
|
|
178
177
|
[spxSelectDay]="this.spxSelectDay"
|
|
179
178
|
[spxSelectMonth]="this.spxSelectMonth"
|
|
180
179
|
[spxValidators]="this.spxValidators"
|
|
181
|
-
[value]="this.value"
|
|
180
|
+
[(value)]="this.value"
|
|
182
181
|
></spx-input-date>
|
|
183
182
|
}
|
|
184
183
|
@if (this.spxType === 'float') {
|
|
@@ -237,7 +236,7 @@ export class SpxInputComponent {
|
|
|
237
236
|
<div validation-messages>
|
|
238
237
|
<ng-content></ng-content>
|
|
239
238
|
</div>
|
|
240
|
-
</spx-input-box>`, isInline: true, dependencies: [{ kind: "component", type: SpxInputBoxComponent, selector: "spx-input-box", inputs: ["spxCompact", "spxFocused", "spxLabel", "spxReadonly", "spxRequired", "spxShowClear", "spxShowEdit", "spxShowHelp", "spxShowLabel", "spxShowSearch", "spxShowValidationMessages", "spxValue"], outputs: ["spxClear", "spxSearch", "spxFocus", "spxFocusOut", "spxEdit", "spxHelp"] }, { kind: "component", type: SpxInputDateComponent, selector: "spx-input-date", inputs: ["spxMax", "spxMin", "
|
|
239
|
+
</spx-input-box>`, isInline: true, dependencies: [{ kind: "component", type: SpxInputBoxComponent, selector: "spx-input-box", inputs: ["spxCompact", "spxFocused", "spxLabel", "spxReadonly", "spxRequired", "spxShowClear", "spxShowEdit", "spxShowHelp", "spxShowLabel", "spxShowSearch", "spxShowValidationMessages", "spxValue"], outputs: ["spxClear", "spxSearch", "spxFocus", "spxFocusOut", "spxEdit", "spxHelp"] }, { kind: "component", type: SpxInputDateComponent, selector: "spx-input-date", inputs: ["spxMax", "spxMin", "spxReadonly", "spxValidators", "value", "spxFocused", "spxSelectDay", "spxSelectMonth", "spxSuggestions"], outputs: ["valueChange", "spxChange", "spxFocus"] }, { kind: "component", type: SpxInputFloatComponent, selector: "spx-input-float", inputs: ["spxName", "spxAutofocus", "spxReadonly", "spxValidators", "spxFocused", "spxStep", "value", "spxWasInternalUpdate", "tick"], outputs: ["spxChange", "spxFocus"] }, { kind: "component", type: SpxInputNumberComponent, selector: "spx-input-number", inputs: ["spxName", "spxAutofocus", "spxInputMode", "spxReadonly", "spxValidators", "spxFocused", "spxStep", "value"], outputs: ["spxChange", "spxFocus"] }, { kind: "component", type: SpxInputRadioComponent, selector: "spx-input-radio", inputs: ["spxName", "spxValidators", "spxFocused", "spxShowLabel", "spxReadonly", "spxSuggestions", "value"], outputs: ["spxChange", "spxFocus"] }, { kind: "component", type: SpxInputTextComponent, selector: "spx-input-text", inputs: ["spxName", "spxAutofocus", "spxAutocomplete", "spxInputMode", "spxPattern", "spxSuggestions", "spxReadonly", "spxValidators", "spxCapitalize", "spxFocused", "spxType", "value", "spxWasInternalUpdate"], outputs: ["spxBlurFromChild", "spxChange", "spxFocus"] }, { kind: "component", type: SpxInputTimeComponent, selector: "spx-input-time", inputs: ["spxName", "spxAutofocus", "spxInputMode", "spxPattern", "spxSuggestions", "spxReadonly", "spxValidators", "spxCapitalize", "spxFocused", "spxType", "value", "spxWasInternalUpdate"], outputs: ["spxBlurFromChild", "spxChange", "spxFocus"] }] }); }
|
|
241
240
|
}
|
|
242
241
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: SpxInputComponent, decorators: [{
|
|
243
242
|
type: Component,
|
|
@@ -307,14 +306,13 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
|
|
|
307
306
|
(spxChange)="this.handleChange($event)"
|
|
308
307
|
(spxFocus)="this.handleFocus()"
|
|
309
308
|
[spxFocused]="this.spxFocused"
|
|
310
|
-
[spxMax]="this.spxMax"
|
|
311
|
-
[spxMin]="this.spxMin"
|
|
312
|
-
[spxName]="this.spxName"
|
|
309
|
+
[spxMax]="this.spxMax!"
|
|
310
|
+
[spxMin]="this.spxMin!"
|
|
313
311
|
[spxReadonly]="this.spxReadonly"
|
|
314
312
|
[spxSelectDay]="this.spxSelectDay"
|
|
315
313
|
[spxSelectMonth]="this.spxSelectMonth"
|
|
316
314
|
[spxValidators]="this.spxValidators"
|
|
317
|
-
[value]="this.value"
|
|
315
|
+
[(value)]="this.value"
|
|
318
316
|
></spx-input-date>
|
|
319
317
|
}
|
|
320
318
|
@if (this.spxType === 'float') {
|
|
@@ -460,4 +458,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
|
|
|
460
458
|
type: HostListener,
|
|
461
459
|
args: ['focusout']
|
|
462
460
|
}] } });
|
|
463
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3B4LWlucHV0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3NvZnRwYWsvY29tcG9uZW50cy9zcHgtaW5wdXRzL3NweC1pbnB1dC5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ2hHLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQ2pFLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBRW5FLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ25ELE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQ25FLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBQ3JFLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQ3ZFLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBQ3JFLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQ3pELE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLDRCQUE0QixDQUFDOztBQXdJbkUsTUFBTSxPQUFPLGlCQUFpQjtJQXRJOUI7UUF1SVcsYUFBUSxHQUFXLE9BQU8sQ0FBQztRQUkzQixnQkFBVyxHQUFHLEtBQUssQ0FBQztRQUVwQixpQkFBWSxHQUFHLEtBQUssQ0FBQztRQUdyQixnQkFBVyxHQUFHLEtBQUssQ0FBQztRQUNwQixtQkFBYyxHQUFHLElBQUksQ0FBQztRQUN0QixpQkFBWSxHQUFHLElBQUksQ0FBQztRQUNwQixnQkFBVyxHQUFHLEtBQUssQ0FBQztRQUNwQixnQkFB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QyxzQkFBc0I7Z0JBQ3hCLFVBQVU7c0JBQWxCLEtBQUs7Z0JBMkZOLGdCQUFnQjtzQkFEZixZQUFZO3VCQUFDLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJcclxuaW1wb3J0IHsgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIEhvc3RMaXN0ZW5lciwgSW5wdXQsIE91dHB1dCwgVmlld0NoaWxkIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IFNweElucHV0Qm94Q29tcG9uZW50IH0gZnJvbSAnLi9zcHgtaW5wdXQtYm94LmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFNweElucHV0VGV4dENvbXBvbmVudCB9IGZyb20gJy4vc3B4LWlucHV0LXRleHQuY29tcG9uZW50JztcclxuaW1wb3J0IHsgU3B4VmFsdWVQYWlyIH0gZnJvbSAnLi9zcHgtdmFsdWUtaW50ZXJmYWNlJztcclxuaW1wb3J0IHsgTkdfVkFMVUVfQUNDRVNTT1IgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XHJcbmltcG9ydCB7IFNweElucHV0RGF0ZUNvbXBvbmVudCB9IGZyb20gJy4vc3B4LWlucHV0LWRhdGUuY29tcG9uZW50JztcclxuaW1wb3J0IHsgU3B4SW5wdXRGbG9hdENvbXBvbmVudCB9IGZyb20gJy4vc3B4LWlucHV0LWZsb2F0LmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFNweElucHV0TnVtYmVyQ29tcG9uZW50IH0gZnJvbSAnLi9zcHgtaW5wdXQtbnVtYmVyLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFNweElucHV0UmFkaW9Db21wb25lbnQgfSBmcm9tICcuL3NweC1pbnB1dC1yYWRpby5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBTcHhJbnB1dFR5cGVFbnVtIH0gZnJvbSAnLi9zcHgtaW5wdXQtdHlwZS5lbnVtJztcclxuaW1wb3J0IHsgU3B4SW5wdXRUaW1lQ29tcG9uZW50IH0gZnJvbSAnLi9zcHgtaW5wdXQtdGltZS5jb21wb25lbnQnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdzcHgtaW5wdXQnLFxyXG4gIHN0YW5kYWxvbmU6IHRydWUsXHJcbiAgaG9zdDoge1xyXG4gICAgJyhzcHhDaGFuZ2UpJzogJ2hhbmRsZUNoYW5nZUV2ZW50KCRldmVudCknXHJcbiAgfSxcclxuICBpbXBvcnRzOiBbXHJcbiAgICBTcHhJbnB1dEJveENvbXBvbmVudCxcclxuICAgIFNweElucHV0RGF0ZUNvbXBvbmVudCxcclxuICAgIFNweElucHV0RmxvYXRDb21wb25lbnQsXHJcbiAgICBTcHhJbnB1dE51bWJlckNvbXBvbmVudCxcclxuICAgIFNweElucHV0UmFkaW9Db21wb25lbnQsXHJcbiAgICBTcHhJbnB1dFRleHRDb21wb25lbnQsXHJcbiAgICBTcHhJbnB1dFRpbWVDb21wb25lbnRcclxuXSxcclxuICBwcm92aWRlcnM6IFtcclxuICAgIHtcclxuICAgICAgcHJvdmlkZTogTkdfVkFMVUVfQUNDRVNTT1IsXHJcbiAgICAgIHVzZUV4aXN0aW5nOiBTcHhJbnB1dENvbXBvbmVudCxcclxuICAgICAgbXVsdGk6IHRydWVcclxuICAgIH1cclxuICBdLFxyXG4gIHRlbXBsYXRlOiBgPHNweC1pbnB1dC1ib3hcclxuICAgIFtzcHhGb2N1c2VkXT1cInRoaXMuc3B4Rm9jdXNlZFwiXHJcbiAgICBbc3B4TGFiZWxdPVwidGhpcy5zcHhMYWJlbFwiXHJcbiAgICBbc3B4UmVhZG9ubHldPVwidGhpcy5zcHhSZWFkb25seVwiXHJcbiAgICBbc3B4UmVxdWlyZWRdPVwidGhpcy5zcHhSZXF1aXJlZFwiXHJcbiAgICBbc3B4VmFsdWVdPVwidGhpcy52YWx1ZVwiXHJcbiAgICBbc3B4U2hvd0hlbHBdPVwidGhpcy5zcHhTaG93SGVscFwiXHJcbiAgICBbc3B4Q29tcGFjdF09XCJ0aGlzLnNweENvbXBhY3RcIlxyXG4gICAgW3NweFNob3dDbGVhcl09XCJ0aGlzLnNweFNob3dDbGVhclwiXHJcbiAgICBbc3B4U2hvd0VkaXRdPVwidGhpcy5zcHhTaG93RWRpdFwiXHJcbiAgICBbc3B4U2hvd0xhYmVsXT1cInRoaXMuc3B4U2hvd0xhYmVsXCJcclxuICAgIFtzcHhTaG93U2VhcmNoXT1cInRoaXMuc3B4U2hvd1NlYXJjaCA/IHRoaXMuc3B4U2hvd1NlYXJjaCA6IHRoaXMuc3B4VHlwZSA9PT0gJ2F1dG9jb21wbGV0ZSdcIlxyXG4gICAgW3NweFNob3dWYWxpZGF0aW9uTWVzc2FnZXNdPVwidGhpcy5zcHhTaG93VmFsaWRhdGlvbk1lc3NhZ2VzXCJcclxuICAgIChzcHhDbGVhcik9XCJ0aGlzLmhhbmRsZUNsZWFyKClcIlxyXG4gICAgKHNweEVkaXQpPVwidGhpcy5oYW5kbGVFZGl0KClcIlxyXG4gICAgKHNweEhlbHApPVwidGhpcy5oYW5kbGVIZWxwKClcIlxyXG4gICAgKHNweEZvY3VzKT1cInRoaXMuc2V0Rm9jdXNJbigpXCJcclxuICAgIChzcHhGb2N1c091dCk9XCJ0aGlzLnNldEZvY3VzT3V0KClcIlxyXG4gICAgKHNweFNlYXJjaCk9XCJ0aGlzLmhhbmRsZVNlYXJjaCgpXCI+XHJcbiAgICA8ZGl2IGNvbnRyb2xzPlxyXG4gICAgICBAaWYgKHRoaXMuc3B4VHlwZSA9PT0gJ2F1dG9jb21wbGV0ZScgfHwgdGhpcy5zcHhUeXBlID09PSAnb3ZlcmxheScgfHwgdGhpcy5zcHhUeXBlID09PSAnb3ZlcmxheW51bWJlcicgfHwgdGhpcy5zcHhUeXBlID09PSAndGV4dCcgfHwgdGhpcy5zcHhUeXBlID09PSAncGFzc3dvcmQnKSB7XHJcbiAgICAgICAgPHNweC1pbnB1dC10ZXh0XHJcbiAgICAgICAgICAoc3B4Qmx1ckZyb21DaGlsZCk9XCJ0aGlzLmhhbmRsZUJsdXIoKVwiXHJcbiAgICAgICAgICAoc3B4Q2hhbmdlKT1cInRoaXMuaGFuZGxlQ2hhbmdlKCRldmVudClcIlxyXG4gICAgICAgICAgKHNweEZvY3VzKT1cInRoaXMuaGFuZGxlRm9jdXMoKVwiXHJcbiAgICAgICAgICBbc3B4QXV0b2NvbXBsZXRlXT1cInRoaXMuc3B4QXV0b2NvbXBsZXRlID8gdGhpcy5zcHhBdXRvY29tcGxldGUgOiB1bmRlZmluZWRcIlxyXG4gICAgICAgICAgW3NweEF1dG9mb2N1c109XCJ0aGlzLnNweEF1dG9mb2N1c1wiXHJcbiAgICAgICAgICBbc3B4Q2FwaXRhbGl6ZV09XCJ0aGlzLnNweENhcGl0YWxpemVcIlxyXG4gICAgICAgICAgW3NweEZvY3VzZWRdPVwidGhpcy5zcHhGb2N1c2VkXCJcclxuICAgICAgICAgIFtzcHhJbnB1dE1vZGVdPVwidGhpcy5zcHhUeXBlID09PSAnb3ZlcmxheW51bWJlcicgPyAnbnVtZXJpYycgOiB0aGlzLnNweElucHV0TW9kZVwiXHJcbiAgICAgICAgICBbc3B4TmFtZV09XCJ0aGlzLnNweE5hbWVcIlxyXG4gICAgICAgICAgW3NweFBhdHRlcm5dPVwidGhpcy5zcHhUeXBlID09PSAnb3ZlcmxheW51bWJlcicgPyAnWzAtOV0qJyA6IHRoaXMuc3B4UGF0dGVyblwiXHJcbiAgICAgICAgICBbc3B4UmVhZG9ubHldPVwidGhpcy5zcHhSZWFkb25seVwiXHJcbiAgICAgICAgICBbc3B4U3VnZ2VzdGlvbnNdPVwidGhpcy5zcHhTdWdnZXN0aW9uc1wiXHJcbiAgICAgICAgICBbc3B4VHlwZV09XCJ0aGlzLnNweFR5cGVcIlxyXG4gICAgICAgICAgW3NweFZhbGlkYXRvcnNdPVwidGhpcy5zcHhWYWxpZGF0b3JzXCJcclxuICAgICAgICAgIFt2YWx1ZV09XCJ0aGlzLnZhbHVlXCJcclxuICAgICAgICA+PC9zcHgtaW5wdXQtdGV4dD5cclxuICAgICAgfVxyXG4gICAgICBAaWYgKHRoaXMuc3B4VHlwZSA9PT0gJ2RhdGUnKSB7XHJcbiAgICAgICAgPHNweC1pbnB1dC1kYXRlXHJcbiAgICAgICAgICAoc3B4Q2hhbmdlKT1cInRoaXMuaGFuZGxlQ2hhbmdlKCRldmVudClcIlxyXG4gICAgICAgICAgKHNweEZvY3VzKT1cInRoaXMuaGFuZGxlRm9jdXMoKVwiXHJcbiAgICAgICAgICBbc3B4Rm9jdXNlZF09XCJ0aGlzLnNweEZvY3VzZWRcIlxyXG4gICAgICAgICAgW3NweE1heF09XCJ0aGlzLnNweE1heFwiXHJcbiAgICAgICAgICBbc3B4TWluXT1cInRoaXMuc3B4TWluXCJcclxuICAgICAgICAgIFtzcHhOYW1lXT1cInRoaXMuc3B4TmFtZVwiXHJcbiAgICAgICAgICBbc3B4UmVhZG9ubHldPVwidGhpcy5zcHhSZWFkb25seVwiXHJcbiAgICAgICAgICBbc3B4U2VsZWN0RGF5XT1cInRoaXMuc3B4U2VsZWN0RGF5XCJcclxuICAgICAgICAgIFtzcHhTZWxlY3RNb250aF09XCJ0aGlzLnNweFNlbGVjdE1vbnRoXCJcclxuICAgICAgICAgIFtzcHhWYWxpZGF0b3JzXT1cInRoaXMuc3B4VmFsaWRhdG9yc1wiXHJcbiAgICAgICAgICBbdmFsdWVdPVwidGhpcy52YWx1ZVwiXHJcbiAgICAgICAgPjwvc3B4LWlucHV0LWRhdGU+XHJcbiAgICAgIH1cclxuICAgICAgQGlmICh0aGlzLnNweFR5cGUgPT09ICdmbG9hdCcpIHtcclxuICAgICAgICA8c3B4LWlucHV0LWZsb2F0XHJcbiAgICAgICAgICAoc3B4Q2hhbmdlKT1cInRoaXMuaGFuZGxlQ2hhbmdlKCRldmVudClcIlxyXG4gICAgICAgICAgKHNweEZvY3VzKT1cInRoaXMuaGFuZGxlRm9jdXMoKVwiXHJcbiAgICAgICAgICBbc3B4QXV0b2ZvY3VzXT1cInRoaXMuc3B4QXV0b2ZvY3VzXCJcclxuICAgICAgICAgIFtzcHhGb2N1c2VkXT1cInRoaXMuc3B4Rm9jdXNlZFwiXHJcbiAgICAgICAgICBbc3B4TmFtZV09XCJ0aGlzLnNweE5hbWVcIlxyXG4gICAgICAgICAgW3NweFJlYWRvbmx5XT1cInRoaXMuc3B4UmVhZG9ubHlcIlxyXG4gICAgICAgICAgW3NweFN0ZXBdPVwidGhpcy5zcHhTdGVwXCJcclxuICAgICAgICAgIFtzcHhWYWxpZGF0b3JzXT1cInRoaXMuc3B4VmFsaWRhdG9yc1wiXHJcbiAgICAgICAgICBbdmFsdWVdPVwidGhpcy52YWx1ZVwiXHJcbiAgICAgICAgPjwvc3B4LWlucHV0LWZsb2F0PlxyXG4gICAgICB9XHJcbiAgICAgIEBpZiAodGhpcy5zcHhUeXBlID09PSAnbnVtYmVyJykge1xyXG4gICAgICAgIDxzcHgtaW5wdXQtbnVtYmVyXHJcbiAgICAgICAgICAoc3B4Q2hhbmdlKT1cInRoaXMuaGFuZGxlQ2hhbmdlKCRldmVudClcIlxyXG4gICAgICAgICAgKHNweEZvY3VzKT1cInRoaXMuaGFuZGxlRm9jdXMoKVwiXHJcbiAgICAgICAgICBbc3B4QXV0b2ZvY3VzXT1cInRoaXMuc3B4QXV0b2ZvY3VzXCJcclxuICAgICAgICAgIFtzcHhGb2N1c2VkXT1cInRoaXMuc3B4Rm9jdXNlZFwiXHJcbiAgICAgICAgICBbc3B4SW5wdXRNb2RlXT1cInRoaXMuc3B4SW5wdXRNb2RlXCJcclxuICAgICAgICAgIFtzcHhOYW1lXT1cInRoaXMuc3B4TmFtZVwiXHJcbiAgICAgICAgICBbc3B4UmVhZG9ubHldPVwidGhpcy5zcHhSZWFkb25seVwiXHJcbiAgICAgICAgICBbc3B4U3RlcF09XCJ0aGlzLnNweFN0ZXBcIlxyXG4gICAgICAgICAgW3NweFZhbGlkYXRvcnNdPVwidGhpcy5zcHhWYWxpZGF0b3JzXCJcclxuICAgICAgICAgIFt2YWx1ZV09XCJ0aGlzLnZhbHVlXCJcclxuICAgICAgICA+PC9zcHgtaW5wdXQtbnVtYmVyPlxyXG4gICAgICB9XHJcbiAgICAgIEBpZiAodGhpcy5zcHhUeXBlID09PSAncmFkaW8nKSB7XHJcbiAgICAgICAgPHNweC1pbnB1dC1yYWRpb1xyXG4gICAgICAgICAgI3JhZGlvSW5wdXRcclxuICAgICAgICAgIChzcHhDaGFuZ2UpPVwidGhpcy5oYW5kbGVDaGFuZ2UoJGV2ZW50KVwiXHJcbiAgICAgICAgICBbc3B4Rm9jdXNlZF09XCJ0aGlzLnNweEZvY3VzZWRcIlxyXG4gICAgICAgICAgW3NweE5hbWVdPVwidGhpcy5zcHhOYW1lXCJcclxuICAgICAgICAgIFtzcHhSZWFkb25seV09XCJ0aGlzLnNweFJlYWRvbmx5XCJcclxuICAgICAgICAgIFtzcHhTaG93TGFiZWxdPVwidGhpcy5zcHhTaG93TGFiZWxcIlxyXG4gICAgICAgICAgW3NweFN1Z2dlc3Rpb25zXT1cInRoaXMuc3B4U3VnZ2VzdGlvbnNcIlxyXG4gICAgICAgICAgW3NweFZhbGlkYXRvcnNdPVwidGhpcy5zcHhWYWxpZGF0b3JzXCJcclxuICAgICAgICAgIFt2YWx1ZV09XCJ0aGlzLnZhbHVlXCJcclxuICAgICAgICA+PC9zcHgtaW5wdXQtcmFkaW8+XHJcbiAgICAgIH1cclxuICAgICAgQGlmICh0aGlzLnNweFR5cGUgPT09ICd0aW1lJykge1xyXG4gICAgICAgIDxzcHgtaW5wdXQtdGltZVxyXG4gICAgICAgICAgI3RpbWVJbnB1dFxyXG4gICAgICAgICAgKHNweENoYW5nZSk9XCJ0aGlzLmhhbmRsZUNoYW5nZSgkZXZlbnQpXCJcclxuICAgICAgICAgIChzcHhGb2N1cyk9XCJ0aGlzLmhhbmRsZUZvY3VzKClcIlxyXG4gICAgICAgICAgW3NweEZvY3VzZWRdPVwidGhpcy5zcHhGb2N1c2VkXCJcclxuICAgICAgICAgIFtzcHhOYW1lXT1cInRoaXMuc3B4TmFtZVwiXHJcbiAgICAgICAgICBbc3B4UmVhZG9ubHldPVwidGhpcy5zcHhSZWFkb25seVwiXHJcbiAgICAgICAgICBbc3B4VmFsaWRhdG9yc109XCJ0aGlzLnNweFZhbGlkYXRvcnNcIlxyXG4gICAgICAgICAgW3ZhbHVlXT1cInRoaXMudmFsdWVcIlxyXG4gICAgICAgID48L3NweC1pbnB1dC10aW1lPlxyXG4gICAgICB9XHJcbiAgICA8L2Rpdj5cclxuICAgIDxkaXYgdmFsaWRhdGlvbi1tZXNzYWdlcz5cclxuICAgICAgPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxyXG4gICAgPC9kaXY+XHJcbiAgPC9zcHgtaW5wdXQtYm94PmAsXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBTcHhJbnB1dENvbXBvbmVudCB7XHJcbiAgQElucHV0KCkgc3B4TGFiZWw6IHN0cmluZyA9ICdsYWJlbCc7XHJcbiAgQElucHV0KCkgc3B4TWF4Pzogc3RyaW5nO1xyXG4gIEBJbnB1dCgpIHNweE1pbj86IHN0cmluZztcclxuICBASW5wdXQoKSBzcHhOYW1lITogc3RyaW5nO1xyXG4gIEBJbnB1dCgpIHNweFJlYWRvbmx5ID0gZmFsc2U7XHJcbiAgQElucHV0KCkgc3B4QXV0b2NvbXBsZXRlPzogc3RyaW5nO1xyXG4gIEBJbnB1dCgpIHNweEF1dG9mb2N1cyA9IGZhbHNlO1xyXG4gIEBJbnB1dCgpIHNweElucHV0TW9kZT86IHN0cmluZztcclxuICBASW5wdXQoKSBzcHhQYXR0ZXJuPzogc3RyaW5nO1xyXG4gIEBJbnB1dCgpIHNweFJlcXVpcmVkID0gZmFsc2U7XHJcbiAgQElucHV0KCkgc3B4U2VsZWN0TW9udGggPSB0cnVlO1xyXG4gIEBJbnB1dCgpIHNweFNlbGVjdERheSA9IHRydWU7XHJcbiAgQElucHV0KCkgc3B4U2hvd0VkaXQgPSBmYWxzZTtcclxuICBASW5wdXQoKSBzcHhTaG93SGVscCA9IGZhbHNlO1xyXG4gIEBJbnB1dCgpIHNweFNob3dMYWJlbCA9IHRydWU7XHJcbiAgQElucHV0KCkgc3B4Q29tcGFjdCA9IGZhbHNlO1xyXG4gIEBJbnB1dCgpIHNweFNob3dDbGVhciA9IHRydWU7XHJcbiAgQElucHV0KCkgc3B4U2hvd1NlYXJjaCA9IGZhbHNlO1xyXG4gIEBJbnB1dCgpIHNweFNob3dWYWxpZGF0aW9uTWVzc2FnZXM/OiBib29sZWFuIHwgbnVsbCB8IHVuZGVmaW5lZCA9IGZhbHNlO1xyXG4gIEBJbnB1dCgpIHNweFN0ZXA/OiBudW1iZXI7XHJcbiAgQElucHV0KCkgc3B4U3VnZ2VzdGlvbnM6IFNweFZhbHVlUGFpcjxib29sZWFuIHwgbnVtYmVyIHwgc3RyaW5nPltdID0gW107XHJcbiAgQElucHV0KCkgc3B4VHlwZTogU3B4SW5wdXRUeXBlRW51bSA9IFNweElucHV0VHlwZUVudW0udGV4dDtcclxuICBASW5wdXQoKSBzcHhWYWxpZGF0b3JzITogYW55W107XHJcbiAgQElucHV0KCkgdmFsdWUhOiBTcHhWYWx1ZVBhaXI8YW55PjtcclxuICBASW5wdXQoKSBzcHhDYXBpdGFsaXplID0gZmFsc2U7XHJcbiAgQE91dHB1dCgpIHNweEJsdXI6IEV2ZW50RW1pdHRlcjx2b2lkPiA9IG5ldyBFdmVudEVtaXR0ZXI8dm9pZD4oKTtcclxuICBAT3V0cHV0KCkgc3B4Q2xlYXI6IEV2ZW50RW1pdHRlcjx2b2lkPiA9IG5ldyBFdmVudEVtaXR0ZXI8dm9pZD4oKTtcclxuICBAT3V0cHV0KCkgc3B4Q2hhbmdlOiBFdmVudEVtaXR0ZXI8U3B4VmFsdWVQYWlyPGFueT4+ID0gbmV3IEV2ZW50RW1pdHRlcjxTcHhWYWx1ZVBhaXI8YW55Pj4oKTtcclxuICBAT3V0cHV0KCkgc3B4Rm9jdXM6IEV2ZW50RW1pdHRlcjx2b2lkPiA9IG5ldyBFdmVudEVtaXR0ZXI8dm9pZD4oKTtcclxuICBAT3V0cHV0KCkgc3B4RWRpdDogRXZlbnRFbWl0dGVyPHZvaWQ+ID0gbmV3IEV2ZW50RW1pdHRlcjx2b2lkPigpO1xyXG4gIEBPdXRwdXQoKSBzcHhIZWxwOiBFdmVudEVtaXR0ZXI8dm9pZD4gPSBuZXcgRXZlbnRFbWl0dGVyPHZvaWQ+KCk7XHJcbiAgQE91dHB1dCgpIHNweFNlYXJjaDogRXZlbnRFbWl0dGVyPHZvaWQ+ID0gbmV3IEV2ZW50RW1pdHRlcjx2b2lkPigpO1xyXG4gIEBWaWV3Q2hpbGQoU3B4SW5wdXRGbG9hdENvbXBvbmVudCkgZmxvYXRJbnB1dD86IFNweElucHV0RmxvYXRDb21wb25lbnQ7XHJcbiAgQFZpZXdDaGlsZChTcHhJbnB1dE51bWJlckNvbXBvbmVudCkgbnVtYmVySW5wdXQ/OiBTcHhJbnB1dE51bWJlckNvbXBvbmVudDtcclxuICBAVmlld0NoaWxkKFNweElucHV0VGV4dENvbXBvbmVudCkgdGV4dElucHV0PzogU3B4SW5wdXRUZXh0Q29tcG9uZW50O1xyXG4gIEBWaWV3Q2hpbGQoU3B4SW5wdXRUaW1lQ29tcG9uZW50KSB0aW1lSW5wdXQ/OiBTcHhJbnB1dFRpbWVDb21wb25lbnQ7XHJcbiAgQFZpZXdDaGlsZChTcHhJbnB1dFJhZGlvQ29tcG9uZW50KSByYWRpb0lucHV0PzogU3B4SW5wdXRSYWRpb0NvbXBvbmVudDtcclxuICBASW5wdXQoKSBzcHhGb2N1c2VkID0gZmFsc2U7XHJcbiAgaGFuZGxlQmx1cigpIHtcclxuICAgIHRoaXMuc3B4Qmx1ci5lbWl0KCk7XHJcbiAgfVxyXG5cclxuICBoYW5kbGVDaGFuZ2UoZXZlbnQ6IGFueSkge1xyXG4gICAgdGhpcy52YWx1ZSA9IGV2ZW50O1xyXG4gICAgdGhpcy5zcHhDaGFuZ2UuZW1pdCh0aGlzLnZhbHVlKTtcclxuICB9XHJcblxyXG4gIGhhbmRsZUNsZWFyKCkge1xyXG4gICAgdGhpcy5zcHhDbGVhci5lbWl0KCk7XHJcbiAgICB0aGlzLnNweEZvY3VzZWQgPSB0cnVlO1xyXG4gICAgdGhpcy5wYXNzRm9jdXNUb0NvbnRyb2woKTtcclxuICAgIHRoaXMudmFsdWUgPSB7XHJcbiAgICAgIGRlc2NyaXB0aW9uOiBudWxsLFxyXG4gICAgICB2YWx1ZTogbnVsbCxcclxuICAgIH07XHJcbiAgICB0aGlzLnNweENoYW5nZS5lbWl0KHRoaXMudmFsdWUpO1xyXG4gIH1cclxuXHJcbiAgaGFuZGxlRm9jdXMoKSB7XHJcbiAgICB0aGlzLnNweEZvY3VzLmVtaXQoKTtcclxuICAgIHRoaXMuc3B4Rm9jdXNlZCA9IHRydWU7XHJcbiAgfVxyXG5cclxuICBoYW5kbGVTZWFyY2goKSB7XHJcbiAgICB0aGlzLnNweFNlYXJjaC5lbWl0KCk7XHJcbiAgfVxyXG5cclxuICBzZXRGb2N1c0luKCkge1xyXG4gICAgc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgIHRoaXMuc3B4Rm9jdXNlZCA9IHRydWU7XHJcbiAgICAgIHRoaXMucGFzc0ZvY3VzVG9Db250cm9sKCk7XHJcbiAgICB9LCAwKTtcclxuICB9XHJcblxyXG4gIHNldEZvY3VzT3V0KCkge1xyXG4gICAgc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgIHRoaXMuc3B4Rm9jdXNlZCA9IGZhbHNlO1xyXG4gICAgICBpZiAodGhpcy5zcHhUeXBlID09PSBTcHhJbnB1dFR5cGVFbnVtLnJhZGlvKSB7XHJcbiAgICAgICAgdGhpcy5yYWRpb0lucHV0Py5zcHhGb2N1c091dCgpO1xyXG4gICAgICB9XHJcbiAgICB9LCAwKTtcclxuICB9XHJcblxyXG4gIGhhbmRsZUVkaXQoKSB7XHJcbiAgICB0aGlzLnNweEVkaXQuZW1pdCgpO1xyXG4gICAgdGhpcy5zcHhGb2N1c2VkID0gdHJ1ZTtcclxuICB9XHJcbiAgXHJcbiAgaGFuZGxlSGVscCgpIHtcclxuICAgIHRoaXMuc3B4SGVscC5lbWl0KCk7XHJcbiAgICB0aGlzLnNweEZvY3VzZWQgPSB0cnVlO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBwYXNzRm9jdXNUb0NvbnRyb2woKSB7XHJcbiAgICBzd2l0Y2ggKHRoaXMuc3B4VHlwZSkge1xyXG4gICAgICBjYXNlIFNweElucHV0VHlwZUVudW0uYXV0b2NvbXBsZXRlOlxyXG4gICAgICBjYXNlIFNweElucHV0VHlwZUVudW0udGV4dDpcclxuICAgICAgY2FzZSBTcHhJbnB1dFR5cGVFbnVtLm92ZXJsYXlOdW1iZXI6XHJcbiAgICAgICAgdGhpcy50ZXh0SW5wdXQ/LnNweFNldEZvY3VzKCk7XHJcbiAgICAgICAgYnJlYWs7XHJcbiAgICAgIGNhc2UgU3B4SW5wdXRUeXBlRW51bS5udW1iZXI6XHJcbiAgICAgICAgdGhpcy5udW1iZXJJbnB1dD8uc3B4U2V0Rm9jdXMoKTtcclxuICAgICAgICBicmVhaztcclxuICAgICAgY2FzZSBTcHhJbnB1dFR5cGVFbnVtLnJhZGlvOlxyXG4gICAgICAgIHRoaXMucmFkaW9JbnB1dD8uc3B4Rm9jdXNJbigpO1xyXG4gICAgICAgIGJyZWFrO1xyXG4gICAgICBjYXNlIFNweElucHV0VHlwZUVudW0udGltZTpcclxuICAgICAgICB0aGlzLnRpbWVJbnB1dD8uc3B4U2V0Rm9jdXMoKTtcclxuICAgICAgICBicmVhaztcclxuICAgICAgfVxyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBvbkNoYW5nZTogKHZhbHVlOiBhbnkpID0+IHZvaWQgPSAoKSA9PiB7LyoqL307XHJcbiAgcHJpdmF0ZSBvblRvdWNoZWQ6ICgpID0+IHZvaWQgPSAoKSA9PiB7LyoqL307XHJcbiAgcHJvdGVjdGVkIGxhc3RWYWx1ZTogYW55O1xyXG5cclxuICB3cml0ZVZhbHVlKHZhbHVlOiBhbnkpIHtcclxuICAgIHRoaXMudmFsdWUgPSB0aGlzLmxhc3RWYWx1ZSA9IHZhbHVlO1xyXG4gIH1cclxuXHJcbiAgaGFuZGxlQ2hhbmdlRXZlbnQodmFsdWU6IGFueSkge1xyXG4gICAgaWYgKHZhbHVlICE9PSB0aGlzLmxhc3RWYWx1ZSkge1xyXG4gICAgICB0aGlzLmxhc3RWYWx1ZSA9IHZhbHVlO1xyXG4gICAgICB0aGlzLm9uQ2hhbmdlKHZhbHVlKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIEBIb3N0TGlzdGVuZXIoJ2ZvY3Vzb3V0JylcclxuICBfaGFuZGxlQmx1ckV2ZW50KCkge1xyXG4gICAgdGhpcy5vblRvdWNoZWQoKTtcclxuICB9XHJcblxyXG4gIHJlZ2lzdGVyT25DaGFuZ2UoZm46ICh2YWx1ZTogYW55KSA9PiB2b2lkKSB7XHJcbiAgICB0aGlzLm9uQ2hhbmdlID0gZm47XHJcbiAgfVxyXG4gIHJlZ2lzdGVyT25Ub3VjaGVkKGZuOiAoKSA9PiB2b2lkKSB7XHJcbiAgICB0aGlzLm9uVG91Y2hlZCA9IGZuO1xyXG4gIH1cclxufVxyXG4iXX0=
|
|
461
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3B4LWlucHV0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3NvZnRwYWsvY29tcG9uZW50cy9zcHgtaW5wdXRzL3NweC1pbnB1dC5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ2hHLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQ2pFLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBRW5FLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ25ELE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBQ3JFLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQ3ZFLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBQ3JFLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQ3pELE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQ25FLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLDJDQUEyQyxDQUFDOztBQXVJbEYsTUFBTSxPQUFPLGlCQUFpQjtJQXJJOUI7UUFzSVcsYUFBUSxHQUFXLE9BQU8sQ0FBQztRQUkzQixnQkFBVyxHQUFHLEtBQUssQ0FBQztRQUVwQixpQkFBWSxHQUFHLEtBQUssQ0FBQztRQUdyQixnQkFBVyxHQUFHLEtBQUssQ0FBQztRQUNwQixtQkFBYyxHQUFHLElBQUksQ0FBQztRQUN0QixpQkFBWSxHQUFHLElBQUksQ0FBQztRQUNwQixnQkFBVyxHQUFHLEtBQUssQ0FBQztRQUNwQixnQkFB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c0JBQXNCO2dCQUN4QixVQUFVO3NCQUFsQixLQUFLO2dCQTJGTixnQkFBZ0I7c0JBRGYsWUFBWTt1QkFBQyxVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiXHJcbmltcG9ydCB7IENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBIb3N0TGlzdGVuZXIsIElucHV0LCBPdXRwdXQsIFZpZXdDaGlsZCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBTcHhJbnB1dEJveENvbXBvbmVudCB9IGZyb20gJy4vc3B4LWlucHV0LWJveC5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBTcHhJbnB1dFRleHRDb21wb25lbnQgfSBmcm9tICcuL3NweC1pbnB1dC10ZXh0LmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFNweFZhbHVlUGFpciB9IGZyb20gJy4vc3B4LXZhbHVlLWludGVyZmFjZSc7XHJcbmltcG9ydCB7IE5HX1ZBTFVFX0FDQ0VTU09SIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xyXG5pbXBvcnQgeyBTcHhJbnB1dEZsb2F0Q29tcG9uZW50IH0gZnJvbSAnLi9zcHgtaW5wdXQtZmxvYXQuY29tcG9uZW50JztcclxuaW1wb3J0IHsgU3B4SW5wdXROdW1iZXJDb21wb25lbnQgfSBmcm9tICcuL3NweC1pbnB1dC1udW1iZXIuY29tcG9uZW50JztcclxuaW1wb3J0IHsgU3B4SW5wdXRSYWRpb0NvbXBvbmVudCB9IGZyb20gJy4vc3B4LWlucHV0LXJhZGlvLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFNweElucHV0VHlwZUVudW0gfSBmcm9tICcuL3NweC1pbnB1dC10eXBlLmVudW0nO1xyXG5pbXBvcnQgeyBTcHhJbnB1dFRpbWVDb21wb25lbnQgfSBmcm9tICcuL3NweC1pbnB1dC10aW1lLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFNweElucHV0RGF0ZUNvbXBvbmVudCB9IGZyb20gJy4vc3B4LWlucHV0LWRhdGUvc3B4LWlucHV0LWRhdGUuY29tcG9uZW50JztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnc3B4LWlucHV0JyxcclxuICBzdGFuZGFsb25lOiB0cnVlLFxyXG4gIGhvc3Q6IHtcclxuICAgICcoc3B4Q2hhbmdlKSc6ICdoYW5kbGVDaGFuZ2VFdmVudCgkZXZlbnQpJ1xyXG4gIH0sXHJcbiAgaW1wb3J0czogW1xyXG4gICAgU3B4SW5wdXRCb3hDb21wb25lbnQsXHJcbiAgICBTcHhJbnB1dERhdGVDb21wb25lbnQsXHJcbiAgICBTcHhJbnB1dEZsb2F0Q29tcG9uZW50LFxyXG4gICAgU3B4SW5wdXROdW1iZXJDb21wb25lbnQsXHJcbiAgICBTcHhJbnB1dFJhZGlvQ29tcG9uZW50LFxyXG4gICAgU3B4SW5wdXRUZXh0Q29tcG9uZW50LFxyXG4gICAgU3B4SW5wdXRUaW1lQ29tcG9uZW50XHJcbl0sXHJcbiAgcHJvdmlkZXJzOiBbXHJcbiAgICB7XHJcbiAgICAgIHByb3ZpZGU6IE5HX1ZBTFVFX0FDQ0VTU09SLFxyXG4gICAgICB1c2VFeGlzdGluZzogU3B4SW5wdXRDb21wb25lbnQsXHJcbiAgICAgIG11bHRpOiB0cnVlXHJcbiAgICB9XHJcbiAgXSxcclxuICB0ZW1wbGF0ZTogYDxzcHgtaW5wdXQtYm94XHJcbiAgICBbc3B4Rm9jdXNlZF09XCJ0aGlzLnNweEZvY3VzZWRcIlxyXG4gICAgW3NweExhYmVsXT1cInRoaXMuc3B4TGFiZWxcIlxyXG4gICAgW3NweFJlYWRvbmx5XT1cInRoaXMuc3B4UmVhZG9ubHlcIlxyXG4gICAgW3NweFJlcXVpcmVkXT1cInRoaXMuc3B4UmVxdWlyZWRcIlxyXG4gICAgW3NweFZhbHVlXT1cInRoaXMudmFsdWVcIlxyXG4gICAgW3NweFNob3dIZWxwXT1cInRoaXMuc3B4U2hvd0hlbHBcIlxyXG4gICAgW3NweENvbXBhY3RdPVwidGhpcy5zcHhDb21wYWN0XCJcclxuICAgIFtzcHhTaG93Q2xlYXJdPVwidGhpcy5zcHhTaG93Q2xlYXJcIlxyXG4gICAgW3NweFNob3dFZGl0XT1cInRoaXMuc3B4U2hvd0VkaXRcIlxyXG4gICAgW3NweFNob3dMYWJlbF09XCJ0aGlzLnNweFNob3dMYWJlbFwiXHJcbiAgICBbc3B4U2hvd1NlYXJjaF09XCJ0aGlzLnNweFNob3dTZWFyY2ggPyB0aGlzLnNweFNob3dTZWFyY2ggOiB0aGlzLnNweFR5cGUgPT09ICdhdXRvY29tcGxldGUnXCJcclxuICAgIFtzcHhTaG93VmFsaWRhdGlvbk1lc3NhZ2VzXT1cInRoaXMuc3B4U2hvd1ZhbGlkYXRpb25NZXNzYWdlc1wiXHJcbiAgICAoc3B4Q2xlYXIpPVwidGhpcy5oYW5kbGVDbGVhcigpXCJcclxuICAgIChzcHhFZGl0KT1cInRoaXMuaGFuZGxlRWRpdCgpXCJcclxuICAgIChzcHhIZWxwKT1cInRoaXMuaGFuZGxlSGVscCgpXCJcclxuICAgIChzcHhGb2N1cyk9XCJ0aGlzLnNldEZvY3VzSW4oKVwiXHJcbiAgICAoc3B4Rm9jdXNPdXQpPVwidGhpcy5zZXRGb2N1c091dCgpXCJcclxuICAgIChzcHhTZWFyY2gpPVwidGhpcy5oYW5kbGVTZWFyY2goKVwiPlxyXG4gICAgPGRpdiBjb250cm9scz5cclxuICAgICAgQGlmICh0aGlzLnNweFR5cGUgPT09ICdhdXRvY29tcGxldGUnIHx8IHRoaXMuc3B4VHlwZSA9PT0gJ292ZXJsYXknIHx8IHRoaXMuc3B4VHlwZSA9PT0gJ292ZXJsYXludW1iZXInIHx8IHRoaXMuc3B4VHlwZSA9PT0gJ3RleHQnIHx8IHRoaXMuc3B4VHlwZSA9PT0gJ3Bhc3N3b3JkJykge1xyXG4gICAgICAgIDxzcHgtaW5wdXQtdGV4dFxyXG4gICAgICAgICAgKHNweEJsdXJGcm9tQ2hpbGQpPVwidGhpcy5oYW5kbGVCbHVyKClcIlxyXG4gICAgICAgICAgKHNweENoYW5nZSk9XCJ0aGlzLmhhbmRsZUNoYW5nZSgkZXZlbnQpXCJcclxuICAgICAgICAgIChzcHhGb2N1cyk9XCJ0aGlzLmhhbmRsZUZvY3VzKClcIlxyXG4gICAgICAgICAgW3NweEF1dG9jb21wbGV0ZV09XCJ0aGlzLnNweEF1dG9jb21wbGV0ZSA/IHRoaXMuc3B4QXV0b2NvbXBsZXRlIDogdW5kZWZpbmVkXCJcclxuICAgICAgICAgIFtzcHhBdXRvZm9jdXNdPVwidGhpcy5zcHhBdXRvZm9jdXNcIlxyXG4gICAgICAgICAgW3NweENhcGl0YWxpemVdPVwidGhpcy5zcHhDYXBpdGFsaXplXCJcclxuICAgICAgICAgIFtzcHhGb2N1c2VkXT1cInRoaXMuc3B4Rm9jdXNlZFwiXHJcbiAgICAgICAgICBbc3B4SW5wdXRNb2RlXT1cInRoaXMuc3B4VHlwZSA9PT0gJ292ZXJsYXludW1iZXInID8gJ251bWVyaWMnIDogdGhpcy5zcHhJbnB1dE1vZGVcIlxyXG4gICAgICAgICAgW3NweE5hbWVdPVwidGhpcy5zcHhOYW1lXCJcclxuICAgICAgICAgIFtzcHhQYXR0ZXJuXT1cInRoaXMuc3B4VHlwZSA9PT0gJ292ZXJsYXludW1iZXInID8gJ1swLTldKicgOiB0aGlzLnNweFBhdHRlcm5cIlxyXG4gICAgICAgICAgW3NweFJlYWRvbmx5XT1cInRoaXMuc3B4UmVhZG9ubHlcIlxyXG4gICAgICAgICAgW3NweFN1Z2dlc3Rpb25zXT1cInRoaXMuc3B4U3VnZ2VzdGlvbnNcIlxyXG4gICAgICAgICAgW3NweFR5cGVdPVwidGhpcy5zcHhUeXBlXCJcclxuICAgICAgICAgIFtzcHhWYWxpZGF0b3JzXT1cInRoaXMuc3B4VmFsaWRhdG9yc1wiXHJcbiAgICAgICAgICBbdmFsdWVdPVwidGhpcy52YWx1ZVwiXHJcbiAgICAgICAgPjwvc3B4LWlucHV0LXRleHQ+XHJcbiAgICAgIH1cclxuICAgICAgQGlmICh0aGlzLnNweFR5cGUgPT09ICdkYXRlJykge1xyXG4gICAgICAgIDxzcHgtaW5wdXQtZGF0ZVxyXG4gICAgICAgICAgKHNweENoYW5nZSk9XCJ0aGlzLmhhbmRsZUNoYW5nZSgkZXZlbnQpXCJcclxuICAgICAgICAgIChzcHhGb2N1cyk9XCJ0aGlzLmhhbmRsZUZvY3VzKClcIlxyXG4gICAgICAgICAgW3NweEZvY3VzZWRdPVwidGhpcy5zcHhGb2N1c2VkXCJcclxuICAgICAgICAgIFtzcHhNYXhdPVwidGhpcy5zcHhNYXghXCJcclxuICAgICAgICAgIFtzcHhNaW5dPVwidGhpcy5zcHhNaW4hXCJcclxuICAgICAgICAgIFtzcHhSZWFkb25seV09XCJ0aGlzLnNweFJlYWRvbmx5XCJcclxuICAgICAgICAgIFtzcHhTZWxlY3REYXldPVwidGhpcy5zcHhTZWxlY3REYXlcIlxyXG4gICAgICAgICAgW3NweFNlbGVjdE1vbnRoXT1cInRoaXMuc3B4U2VsZWN0TW9udGhcIlxyXG4gICAgICAgICAgW3NweFZhbGlkYXRvcnNdPVwidGhpcy5zcHhWYWxpZGF0b3JzXCJcclxuICAgICAgICAgIFsodmFsdWUpXT1cInRoaXMudmFsdWVcIlxyXG4gICAgICAgID48L3NweC1pbnB1dC1kYXRlPlxyXG4gICAgICB9XHJcbiAgICAgIEBpZiAodGhpcy5zcHhUeXBlID09PSAnZmxvYXQnKSB7XHJcbiAgICAgICAgPHNweC1pbnB1dC1mbG9hdFxyXG4gICAgICAgICAgKHNweENoYW5nZSk9XCJ0aGlzLmhhbmRsZUNoYW5nZSgkZXZlbnQpXCJcclxuICAgICAgICAgIChzcHhGb2N1cyk9XCJ0aGlzLmhhbmRsZUZvY3VzKClcIlxyXG4gICAgICAgICAgW3NweEF1dG9mb2N1c109XCJ0aGlzLnNweEF1dG9mb2N1c1wiXHJcbiAgICAgICAgICBbc3B4Rm9jdXNlZF09XCJ0aGlzLnNweEZvY3VzZWRcIlxyXG4gICAgICAgICAgW3NweE5hbWVdPVwidGhpcy5zcHhOYW1lXCJcclxuICAgICAgICAgIFtzcHhSZWFkb25seV09XCJ0aGlzLnNweFJlYWRvbmx5XCJcclxuICAgICAgICAgIFtzcHhTdGVwXT1cInRoaXMuc3B4U3RlcFwiXHJcbiAgICAgICAgICBbc3B4VmFsaWRhdG9yc109XCJ0aGlzLnNweFZhbGlkYXRvcnNcIlxyXG4gICAgICAgICAgW3ZhbHVlXT1cInRoaXMudmFsdWVcIlxyXG4gICAgICAgID48L3NweC1pbnB1dC1mbG9hdD5cclxuICAgICAgfVxyXG4gICAgICBAaWYgKHRoaXMuc3B4VHlwZSA9PT0gJ251bWJlcicpIHtcclxuICAgICAgICA8c3B4LWlucHV0LW51bWJlclxyXG4gICAgICAgICAgKHNweENoYW5nZSk9XCJ0aGlzLmhhbmRsZUNoYW5nZSgkZXZlbnQpXCJcclxuICAgICAgICAgIChzcHhGb2N1cyk9XCJ0aGlzLmhhbmRsZUZvY3VzKClcIlxyXG4gICAgICAgICAgW3NweEF1dG9mb2N1c109XCJ0aGlzLnNweEF1dG9mb2N1c1wiXHJcbiAgICAgICAgICBbc3B4Rm9jdXNlZF09XCJ0aGlzLnNweEZvY3VzZWRcIlxyXG4gICAgICAgICAgW3NweElucHV0TW9kZV09XCJ0aGlzLnNweElucHV0TW9kZVwiXHJcbiAgICAgICAgICBbc3B4TmFtZV09XCJ0aGlzLnNweE5hbWVcIlxyXG4gICAgICAgICAgW3NweFJlYWRvbmx5XT1cInRoaXMuc3B4UmVhZG9ubHlcIlxyXG4gICAgICAgICAgW3NweFN0ZXBdPVwidGhpcy5zcHhTdGVwXCJcclxuICAgICAgICAgIFtzcHhWYWxpZGF0b3JzXT1cInRoaXMuc3B4VmFsaWRhdG9yc1wiXHJcbiAgICAgICAgICBbdmFsdWVdPVwidGhpcy52YWx1ZVwiXHJcbiAgICAgICAgPjwvc3B4LWlucHV0LW51bWJlcj5cclxuICAgICAgfVxyXG4gICAgICBAaWYgKHRoaXMuc3B4VHlwZSA9PT0gJ3JhZGlvJykge1xyXG4gICAgICAgIDxzcHgtaW5wdXQtcmFkaW9cclxuICAgICAgICAgICNyYWRpb0lucHV0XHJcbiAgICAgICAgICAoc3B4Q2hhbmdlKT1cInRoaXMuaGFuZGxlQ2hhbmdlKCRldmVudClcIlxyXG4gICAgICAgICAgW3NweEZvY3VzZWRdPVwidGhpcy5zcHhGb2N1c2VkXCJcclxuICAgICAgICAgIFtzcHhOYW1lXT1cInRoaXMuc3B4TmFtZVwiXHJcbiAgICAgICAgICBbc3B4UmVhZG9ubHldPVwidGhpcy5zcHhSZWFkb25seVwiXHJcbiAgICAgICAgICBbc3B4U2hvd0xhYmVsXT1cInRoaXMuc3B4U2hvd0xhYmVsXCJcclxuICAgICAgICAgIFtzcHhTdWdnZXN0aW9uc109XCJ0aGlzLnNweFN1Z2dlc3Rpb25zXCJcclxuICAgICAgICAgIFtzcHhWYWxpZGF0b3JzXT1cInRoaXMuc3B4VmFsaWRhdG9yc1wiXHJcbiAgICAgICAgICBbdmFsdWVdPVwidGhpcy52YWx1ZVwiXHJcbiAgICAgICAgPjwvc3B4LWlucHV0LXJhZGlvPlxyXG4gICAgICB9XHJcbiAgICAgIEBpZiAodGhpcy5zcHhUeXBlID09PSAndGltZScpIHtcclxuICAgICAgICA8c3B4LWlucHV0LXRpbWVcclxuICAgICAgICAgICN0aW1lSW5wdXRcclxuICAgICAgICAgIChzcHhDaGFuZ2UpPVwidGhpcy5oYW5kbGVDaGFuZ2UoJGV2ZW50KVwiXHJcbiAgICAgICAgICAoc3B4Rm9jdXMpPVwidGhpcy5oYW5kbGVGb2N1cygpXCJcclxuICAgICAgICAgIFtzcHhGb2N1c2VkXT1cInRoaXMuc3B4Rm9jdXNlZFwiXHJcbiAgICAgICAgICBbc3B4TmFtZV09XCJ0aGlzLnNweE5hbWVcIlxyXG4gICAgICAgICAgW3NweFJlYWRvbmx5XT1cInRoaXMuc3B4UmVhZG9ubHlcIlxyXG4gICAgICAgICAgW3NweFZhbGlkYXRvcnNdPVwidGhpcy5zcHhWYWxpZGF0b3JzXCJcclxuICAgICAgICAgIFt2YWx1ZV09XCJ0aGlzLnZhbHVlXCJcclxuICAgICAgICA+PC9zcHgtaW5wdXQtdGltZT5cclxuICAgICAgfVxyXG4gICAgPC9kaXY+XHJcbiAgICA8ZGl2IHZhbGlkYXRpb24tbWVzc2FnZXM+XHJcbiAgICAgIDxuZy1jb250ZW50PjwvbmctY29udGVudD5cclxuICAgIDwvZGl2PlxyXG4gIDwvc3B4LWlucHV0LWJveD5gLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgU3B4SW5wdXRDb21wb25lbnQge1xyXG4gIEBJbnB1dCgpIHNweExhYmVsOiBzdHJpbmcgPSAnbGFiZWwnO1xyXG4gIEBJbnB1dCgpIHNweE1heD86IHN0cmluZztcclxuICBASW5wdXQoKSBzcHhNaW4/OiBzdHJpbmc7XHJcbiAgQElucHV0KCkgc3B4TmFtZSE6IHN0cmluZztcclxuICBASW5wdXQoKSBzcHhSZWFkb25seSA9IGZhbHNlO1xyXG4gIEBJbnB1dCgpIHNweEF1dG9jb21wbGV0ZT86IHN0cmluZztcclxuICBASW5wdXQoKSBzcHhBdXRvZm9jdXMgPSBmYWxzZTtcclxuICBASW5wdXQoKSBzcHhJbnB1dE1vZGU/OiBzdHJpbmc7XHJcbiAgQElucHV0KCkgc3B4UGF0dGVybj86IHN0cmluZztcclxuICBASW5wdXQoKSBzcHhSZXF1aXJlZCA9IGZhbHNlO1xyXG4gIEBJbnB1dCgpIHNweFNlbGVjdE1vbnRoID0gdHJ1ZTtcclxuICBASW5wdXQoKSBzcHhTZWxlY3REYXkgPSB0cnVlO1xyXG4gIEBJbnB1dCgpIHNweFNob3dFZGl0ID0gZmFsc2U7XHJcbiAgQElucHV0KCkgc3B4U2hvd0hlbHAgPSBmYWxzZTtcclxuICBASW5wdXQoKSBzcHhTaG93TGFiZWwgPSB0cnVlO1xyXG4gIEBJbnB1dCgpIHNweENvbXBhY3QgPSBmYWxzZTtcclxuICBASW5wdXQoKSBzcHhTaG93Q2xlYXIgPSB0cnVlO1xyXG4gIEBJbnB1dCgpIHNweFNob3dTZWFyY2ggPSBmYWxzZTtcclxuICBASW5wdXQoKSBzcHhTaG93VmFsaWRhdGlvbk1lc3NhZ2VzPzogYm9vbGVhbiB8IG51bGwgfCB1bmRlZmluZWQgPSBmYWxzZTtcclxuICBASW5wdXQoKSBzcHhTdGVwPzogbnVtYmVyO1xyXG4gIEBJbnB1dCgpIHNweFN1Z2dlc3Rpb25zOiBTcHhWYWx1ZVBhaXI8Ym9vbGVhbiB8IG51bWJlciB8IHN0cmluZz5bXSA9IFtdO1xyXG4gIEBJbnB1dCgpIHNweFR5cGU6IFNweElucHV0VHlwZUVudW0gPSBTcHhJbnB1dFR5cGVFbnVtLnRleHQ7XHJcbiAgQElucHV0KCkgc3B4VmFsaWRhdG9ycyE6IGFueVtdO1xyXG4gIEBJbnB1dCgpIHZhbHVlITogU3B4VmFsdWVQYWlyPGFueT47XHJcbiAgQElucHV0KCkgc3B4Q2FwaXRhbGl6ZSA9IGZhbHNlO1xyXG4gIEBPdXRwdXQoKSBzcHhCbHVyOiBFdmVudEVtaXR0ZXI8dm9pZD4gPSBuZXcgRXZlbnRFbWl0dGVyPHZvaWQ+KCk7XHJcbiAgQE91dHB1dCgpIHNweENsZWFyOiBFdmVudEVtaXR0ZXI8dm9pZD4gPSBuZXcgRXZlbnRFbWl0dGVyPHZvaWQ+KCk7XHJcbiAgQE91dHB1dCgpIHNweENoYW5nZTogRXZlbnRFbWl0dGVyPFNweFZhbHVlUGFpcjxhbnk+PiA9IG5ldyBFdmVudEVtaXR0ZXI8U3B4VmFsdWVQYWlyPGFueT4+KCk7XHJcbiAgQE91dHB1dCgpIHNweEZvY3VzOiBFdmVudEVtaXR0ZXI8dm9pZD4gPSBuZXcgRXZlbnRFbWl0dGVyPHZvaWQ+KCk7XHJcbiAgQE91dHB1dCgpIHNweEVkaXQ6IEV2ZW50RW1pdHRlcjx2b2lkPiA9IG5ldyBFdmVudEVtaXR0ZXI8dm9pZD4oKTtcclxuICBAT3V0cHV0KCkgc3B4SGVscDogRXZlbnRFbWl0dGVyPHZvaWQ+ID0gbmV3IEV2ZW50RW1pdHRlcjx2b2lkPigpO1xyXG4gIEBPdXRwdXQoKSBzcHhTZWFyY2g6IEV2ZW50RW1pdHRlcjx2b2lkPiA9IG5ldyBFdmVudEVtaXR0ZXI8dm9pZD4oKTtcclxuICBAVmlld0NoaWxkKFNweElucHV0RmxvYXRDb21wb25lbnQpIGZsb2F0SW5wdXQ/OiBTcHhJbnB1dEZsb2F0Q29tcG9uZW50O1xyXG4gIEBWaWV3Q2hpbGQoU3B4SW5wdXROdW1iZXJDb21wb25lbnQpIG51bWJlcklucHV0PzogU3B4SW5wdXROdW1iZXJDb21wb25lbnQ7XHJcbiAgQFZpZXdDaGlsZChTcHhJbnB1dFRleHRDb21wb25lbnQpIHRleHRJbnB1dD86IFNweElucHV0VGV4dENvbXBvbmVudDtcclxuICBAVmlld0NoaWxkKFNweElucHV0VGltZUNvbXBvbmVudCkgdGltZUlucHV0PzogU3B4SW5wdXRUaW1lQ29tcG9uZW50O1xyXG4gIEBWaWV3Q2hpbGQoU3B4SW5wdXRSYWRpb0NvbXBvbmVudCkgcmFkaW9JbnB1dD86IFNweElucHV0UmFkaW9Db21wb25lbnQ7XHJcbiAgQElucHV0KCkgc3B4Rm9jdXNlZCA9IGZhbHNlO1xyXG4gIGhhbmRsZUJsdXIoKSB7XHJcbiAgICB0aGlzLnNweEJsdXIuZW1pdCgpO1xyXG4gIH1cclxuXHJcbiAgaGFuZGxlQ2hhbmdlKGV2ZW50OiBhbnkpIHtcclxuICAgIHRoaXMudmFsdWUgPSBldmVudDtcclxuICAgIHRoaXMuc3B4Q2hhbmdlLmVtaXQodGhpcy52YWx1ZSk7XHJcbiAgfVxyXG5cclxuICBoYW5kbGVDbGVhcigpIHtcclxuICAgIHRoaXMuc3B4Q2xlYXIuZW1pdCgpO1xyXG4gICAgdGhpcy5zcHhGb2N1c2VkID0gdHJ1ZTtcclxuICAgIHRoaXMucGFzc0ZvY3VzVG9Db250cm9sKCk7XHJcbiAgICB0aGlzLnZhbHVlID0ge1xyXG4gICAgICBkZXNjcmlwdGlvbjogbnVsbCxcclxuICAgICAgdmFsdWU6IG51bGwsXHJcbiAgICB9O1xyXG4gICAgdGhpcy5zcHhDaGFuZ2UuZW1pdCh0aGlzLnZhbHVlKTtcclxuICB9XHJcblxyXG4gIGhhbmRsZUZvY3VzKCkge1xyXG4gICAgdGhpcy5zcHhGb2N1cy5lbWl0KCk7XHJcbiAgICB0aGlzLnNweEZvY3VzZWQgPSB0cnVlO1xyXG4gIH1cclxuXHJcbiAgaGFuZGxlU2VhcmNoKCkge1xyXG4gICAgdGhpcy5zcHhTZWFyY2guZW1pdCgpO1xyXG4gIH1cclxuXHJcbiAgc2V0Rm9jdXNJbigpIHtcclxuICAgIHNldFRpbWVvdXQoKCkgPT4ge1xyXG4gICAgICB0aGlzLnNweEZvY3VzZWQgPSB0cnVlO1xyXG4gICAgICB0aGlzLnBhc3NGb2N1c1RvQ29udHJvbCgpO1xyXG4gICAgfSwgMCk7XHJcbiAgfVxyXG5cclxuICBzZXRGb2N1c091dCgpIHtcclxuICAgIHNldFRpbWVvdXQoKCkgPT4ge1xyXG4gICAgICB0aGlzLnNweEZvY3VzZWQgPSBmYWxzZTtcclxuICAgICAgaWYgKHRoaXMuc3B4VHlwZSA9PT0gU3B4SW5wdXRUeXBlRW51bS5yYWRpbykge1xyXG4gICAgICAgIHRoaXMucmFkaW9JbnB1dD8uc3B4Rm9jdXNPdXQoKTtcclxuICAgICAgfVxyXG4gICAgfSwgMCk7XHJcbiAgfVxyXG5cclxuICBoYW5kbGVFZGl0KCkge1xyXG4gICAgdGhpcy5zcHhFZGl0LmVtaXQoKTtcclxuICAgIHRoaXMuc3B4Rm9jdXNlZCA9IHRydWU7XHJcbiAgfVxyXG4gIFxyXG4gIGhhbmRsZUhlbHAoKSB7XHJcbiAgICB0aGlzLnNweEhlbHAuZW1pdCgpO1xyXG4gICAgdGhpcy5zcHhGb2N1c2VkID0gdHJ1ZTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgcGFzc0ZvY3VzVG9Db250cm9sKCkge1xyXG4gICAgc3dpdGNoICh0aGlzLnNweFR5cGUpIHtcclxuICAgICAgY2FzZSBTcHhJbnB1dFR5cGVFbnVtLmF1dG9jb21wbGV0ZTpcclxuICAgICAgY2FzZSBTcHhJbnB1dFR5cGVFbnVtLnRleHQ6XHJcbiAgICAgIGNhc2UgU3B4SW5wdXRUeXBlRW51bS5vdmVybGF5TnVtYmVyOlxyXG4gICAgICAgIHRoaXMudGV4dElucHV0Py5zcHhTZXRGb2N1cygpO1xyXG4gICAgICAgIGJyZWFrO1xyXG4gICAgICBjYXNlIFNweElucHV0VHlwZUVudW0ubnVtYmVyOlxyXG4gICAgICAgIHRoaXMubnVtYmVySW5wdXQ/LnNweFNldEZvY3VzKCk7XHJcbiAgICAgICAgYnJlYWs7XHJcbiAgICAgIGNhc2UgU3B4SW5wdXRUeXBlRW51bS5yYWRpbzpcclxuICAgICAgICB0aGlzLnJhZGlvSW5wdXQ/LnNweEZvY3VzSW4oKTtcclxuICAgICAgICBicmVhaztcclxuICAgICAgY2FzZSBTcHhJbnB1dFR5cGVFbnVtLnRpbWU6XHJcbiAgICAgICAgdGhpcy50aW1lSW5wdXQ/LnNweFNldEZvY3VzKCk7XHJcbiAgICAgICAgYnJlYWs7XHJcbiAgICAgIH1cclxuICB9XHJcblxyXG4gIHByaXZhdGUgb25DaGFuZ2U6ICh2YWx1ZTogYW55KSA9PiB2b2lkID0gKCkgPT4gey8qKi99O1xyXG4gIHByaXZhdGUgb25Ub3VjaGVkOiAoKSA9PiB2b2lkID0gKCkgPT4gey8qKi99O1xyXG4gIHByb3RlY3RlZCBsYXN0VmFsdWU6IGFueTtcclxuXHJcbiAgd3JpdGVWYWx1ZSh2YWx1ZTogYW55KSB7XHJcbiAgICB0aGlzLnZhbHVlID0gdGhpcy5sYXN0VmFsdWUgPSB2YWx1ZTtcclxuICB9XHJcblxyXG4gIGhhbmRsZUNoYW5nZUV2ZW50KHZhbHVlOiBhbnkpIHtcclxuICAgIGlmICh2YWx1ZSAhPT0gdGhpcy5sYXN0VmFsdWUpIHtcclxuICAgICAgdGhpcy5sYXN0VmFsdWUgPSB2YWx1ZTtcclxuICAgICAgdGhpcy5vbkNoYW5nZSh2YWx1ZSk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBASG9zdExpc3RlbmVyKCdmb2N1c291dCcpXHJcbiAgX2hhbmRsZUJsdXJFdmVudCgpIHtcclxuICAgIHRoaXMub25Ub3VjaGVkKCk7XHJcbiAgfVxyXG5cclxuICByZWdpc3Rlck9uQ2hhbmdlKGZuOiAodmFsdWU6IGFueSkgPT4gdm9pZCkge1xyXG4gICAgdGhpcy5vbkNoYW5nZSA9IGZuO1xyXG4gIH1cclxuICByZWdpc3Rlck9uVG91Y2hlZChmbjogKCkgPT4gdm9pZCkge1xyXG4gICAgdGhpcy5vblRvdWNoZWQgPSBmbjtcclxuICB9XHJcbn1cclxuIl19
|
|
@@ -1,32 +1,32 @@
|
|
|
1
|
-
import { Component,
|
|
1
|
+
import { Component, input } from '@angular/core';
|
|
2
2
|
import * as i0 from "@angular/core";
|
|
3
3
|
export class SpxSuggestionComponent {
|
|
4
4
|
constructor() {
|
|
5
|
-
this.spxDisabled =
|
|
6
|
-
this.spxFocused =
|
|
7
|
-
this.spxSelected =
|
|
8
|
-
this.spxTabbable =
|
|
5
|
+
this.spxDisabled = input();
|
|
6
|
+
this.spxFocused = input();
|
|
7
|
+
this.spxSelected = input();
|
|
8
|
+
this.spxTabbable = input();
|
|
9
9
|
}
|
|
10
10
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: SpxSuggestionComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
11
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "
|
|
11
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "18.2.13", type: SpxSuggestionComponent, isStandalone: true, selector: "spx-suggestion", inputs: { spxDisabled: { classPropertyName: "spxDisabled", publicName: "spxDisabled", isSignal: true, isRequired: false, transformFunction: null }, spxFocused: { classPropertyName: "spxFocused", publicName: "spxFocused", isSignal: true, isRequired: false, transformFunction: null }, spxSelected: { classPropertyName: "spxSelected", publicName: "spxSelected", isSignal: true, isRequired: false, transformFunction: null }, spxTabbable: { classPropertyName: "spxTabbable", publicName: "spxTabbable", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0, template: `<button
|
|
12
12
|
type="button"
|
|
13
13
|
class="spx-suggestion block rounded text-gray-900 text-sm p-3 w-full text-left truncate outline-none"
|
|
14
|
-
[class.bg-sky-100]="!this.spxSelected && !this.spxDisabled"
|
|
15
|
-
[class.focus:ring-sky-300]="!this.spxSelected && !this.spxDisabled"
|
|
16
|
-
[class.hover:bg-sky-300]="!this.spxSelected && !this.spxDisabled"
|
|
17
|
-
[class.active:bg-sky-300]="!this.spxSelected && !this.spxDisabled"
|
|
18
|
-
[class.bg-gray-200]="this.spxDisabled && !this.spxSelected"
|
|
19
|
-
[class.bg-gray-400]="this.spxDisabled && this.spxSelected"
|
|
20
|
-
[class.cursor-not-allowed]="this.spxDisabled"
|
|
21
|
-
[class.opacity-60]="this.spxDisabled"
|
|
22
|
-
[class.bg-gradient-to-r]="this.spxSelected && !this.spxDisabled"
|
|
23
|
-
[class.from-teal-400]="this.spxSelected && !this.spxDisabled"
|
|
24
|
-
[class.to-teal-600]="this.spxSelected && !this.spxDisabled"
|
|
25
|
-
[class.font-bold]="this.spxSelected"
|
|
26
|
-
[attr.tabindex]="this.spxTabbable && !this.spxDisabled ? 0 : -1"
|
|
27
|
-
[class.ring-2]="this.spxFocused && this.spxTabbable && !this.spxDisabled"
|
|
28
|
-
[class.ring-offset-2]="this.spxFocused && this.spxTabbable && !this.spxDisabled"
|
|
29
|
-
[class.ring-blue-500]="this.spxFocused && this.spxTabbable && !this.spxDisabled">
|
|
14
|
+
[class.bg-sky-100]="!this.spxSelected() && !this.spxDisabled()"
|
|
15
|
+
[class.focus:ring-sky-300]="!this.spxSelected() && !this.spxDisabled()"
|
|
16
|
+
[class.hover:bg-sky-300]="!this.spxSelected() && !this.spxDisabled()"
|
|
17
|
+
[class.active:bg-sky-300]="!this.spxSelected() && !this.spxDisabled()"
|
|
18
|
+
[class.bg-gray-200]="this.spxDisabled() && !this.spxSelected()"
|
|
19
|
+
[class.bg-gray-400]="this.spxDisabled() && this.spxSelected()"
|
|
20
|
+
[class.cursor-not-allowed]="this.spxDisabled()"
|
|
21
|
+
[class.opacity-60]="this.spxDisabled()"
|
|
22
|
+
[class.bg-gradient-to-r]="this.spxSelected() && !this.spxDisabled()"
|
|
23
|
+
[class.from-teal-400]="this.spxSelected() && !this.spxDisabled()"
|
|
24
|
+
[class.to-teal-600]="this.spxSelected() && !this.spxDisabled()"
|
|
25
|
+
[class.font-bold]="this.spxSelected()"
|
|
26
|
+
[attr.tabindex]="this.spxTabbable() && !this.spxDisabled() ? 0 : -1"
|
|
27
|
+
[class.ring-2]="this.spxFocused() && this.spxTabbable() && !this.spxDisabled()"
|
|
28
|
+
[class.ring-offset-2]="this.spxFocused() && this.spxTabbable() && !this.spxDisabled()"
|
|
29
|
+
[class.ring-blue-500]="this.spxFocused() && this.spxTabbable() && !this.spxDisabled()">
|
|
30
30
|
<div class="text-ellipsis overflow-hidden whitespace-nowrap"><ng-content></ng-content></div>
|
|
31
31
|
</button>`, isInline: true }); }
|
|
32
32
|
}
|
|
@@ -38,32 +38,24 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
|
|
|
38
38
|
template: `<button
|
|
39
39
|
type="button"
|
|
40
40
|
class="spx-suggestion block rounded text-gray-900 text-sm p-3 w-full text-left truncate outline-none"
|
|
41
|
-
[class.bg-sky-100]="!this.spxSelected && !this.spxDisabled"
|
|
42
|
-
[class.focus:ring-sky-300]="!this.spxSelected && !this.spxDisabled"
|
|
43
|
-
[class.hover:bg-sky-300]="!this.spxSelected && !this.spxDisabled"
|
|
44
|
-
[class.active:bg-sky-300]="!this.spxSelected && !this.spxDisabled"
|
|
45
|
-
[class.bg-gray-200]="this.spxDisabled && !this.spxSelected"
|
|
46
|
-
[class.bg-gray-400]="this.spxDisabled && this.spxSelected"
|
|
47
|
-
[class.cursor-not-allowed]="this.spxDisabled"
|
|
48
|
-
[class.opacity-60]="this.spxDisabled"
|
|
49
|
-
[class.bg-gradient-to-r]="this.spxSelected && !this.spxDisabled"
|
|
50
|
-
[class.from-teal-400]="this.spxSelected && !this.spxDisabled"
|
|
51
|
-
[class.to-teal-600]="this.spxSelected && !this.spxDisabled"
|
|
52
|
-
[class.font-bold]="this.spxSelected"
|
|
53
|
-
[attr.tabindex]="this.spxTabbable && !this.spxDisabled ? 0 : -1"
|
|
54
|
-
[class.ring-2]="this.spxFocused && this.spxTabbable && !this.spxDisabled"
|
|
55
|
-
[class.ring-offset-2]="this.spxFocused && this.spxTabbable && !this.spxDisabled"
|
|
56
|
-
[class.ring-blue-500]="this.spxFocused && this.spxTabbable && !this.spxDisabled">
|
|
41
|
+
[class.bg-sky-100]="!this.spxSelected() && !this.spxDisabled()"
|
|
42
|
+
[class.focus:ring-sky-300]="!this.spxSelected() && !this.spxDisabled()"
|
|
43
|
+
[class.hover:bg-sky-300]="!this.spxSelected() && !this.spxDisabled()"
|
|
44
|
+
[class.active:bg-sky-300]="!this.spxSelected() && !this.spxDisabled()"
|
|
45
|
+
[class.bg-gray-200]="this.spxDisabled() && !this.spxSelected()"
|
|
46
|
+
[class.bg-gray-400]="this.spxDisabled() && this.spxSelected()"
|
|
47
|
+
[class.cursor-not-allowed]="this.spxDisabled()"
|
|
48
|
+
[class.opacity-60]="this.spxDisabled()"
|
|
49
|
+
[class.bg-gradient-to-r]="this.spxSelected() && !this.spxDisabled()"
|
|
50
|
+
[class.from-teal-400]="this.spxSelected() && !this.spxDisabled()"
|
|
51
|
+
[class.to-teal-600]="this.spxSelected() && !this.spxDisabled()"
|
|
52
|
+
[class.font-bold]="this.spxSelected()"
|
|
53
|
+
[attr.tabindex]="this.spxTabbable() && !this.spxDisabled() ? 0 : -1"
|
|
54
|
+
[class.ring-2]="this.spxFocused() && this.spxTabbable() && !this.spxDisabled()"
|
|
55
|
+
[class.ring-offset-2]="this.spxFocused() && this.spxTabbable() && !this.spxDisabled()"
|
|
56
|
+
[class.ring-blue-500]="this.spxFocused() && this.spxTabbable() && !this.spxDisabled()">
|
|
57
57
|
<div class="text-ellipsis overflow-hidden whitespace-nowrap"><ng-content></ng-content></div>
|
|
58
58
|
</button>`,
|
|
59
59
|
}]
|
|
60
|
-
}]
|
|
61
|
-
|
|
62
|
-
}], spxFocused: [{
|
|
63
|
-
type: Input
|
|
64
|
-
}], spxSelected: [{
|
|
65
|
-
type: Input
|
|
66
|
-
}], spxTabbable: [{
|
|
67
|
-
type: Input
|
|
68
|
-
}] } });
|
|
69
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3B4LXN1Z2dlc3Rpb24uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc29mdHBhay9jb21wb25lbnRzL3NweC1zdWdnZXN0aW9uL3NweC1zdWdnZXN0aW9uLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQzs7QUEyQmpELE1BQU0sT0FBTyxzQkFBc0I7SUF6Qm5DO1FBMEJXLGdCQUFXLEdBQUcsS0FBSyxDQUFDO1FBQ3BCLGVBQVUsR0FBRyxLQUFLLENBQUM7UUFDbkIsZ0JBQVcsR0FBRyxLQUFLLENBQUM7UUFDcEIsZ0JBQVcsR0FBRyxLQUFLLENBQUM7S0FDOUI7K0dBTFksc0JBQXNCO21HQUF0QixzQkFBc0Isb01BdEJ2Qjs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Y0FvQkU7OzRGQUVELHNCQUFzQjtrQkF6QmxDLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLGdCQUFnQjtvQkFDMUIsVUFBVSxFQUFFLElBQUk7b0JBQ2hCLFFBQVEsRUFBRTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Y0FvQkU7aUJBQ2I7OEJBRVUsV0FBVztzQkFBbkIsS0FBSztnQkFDRyxVQUFVO3NCQUFsQixLQUFLO2dCQUNHLFdBQVc7c0JBQW5CLEtBQUs7Z0JBQ0csV0FBVztzQkFBbkIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgSW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnc3B4LXN1Z2dlc3Rpb24nLFxyXG4gIHN0YW5kYWxvbmU6IHRydWUsXHJcbiAgdGVtcGxhdGU6IGA8YnV0dG9uXHJcbiAgICB0eXBlPVwiYnV0dG9uXCJcclxuICAgIGNsYXNzPVwic3B4LXN1Z2dlc3Rpb24gYmxvY2sgcm91bmRlZCB0ZXh0LWdyYXktOTAwIHRleHQtc20gcC0zIHctZnVsbCB0ZXh0LWxlZnQgdHJ1bmNhdGUgb3V0bGluZS1ub25lXCJcclxuICAgIFtjbGFzcy5iZy1za3ktMTAwXT1cIiF0aGlzLnNweFNlbGVjdGVkICYmICF0aGlzLnNweERpc2FibGVkXCJcclxuICAgIFtjbGFzcy5mb2N1czpyaW5nLXNreS0zMDBdPVwiIXRoaXMuc3B4U2VsZWN0ZWQgJiYgIXRoaXMuc3B4RGlzYWJsZWRcIlxyXG4gICAgW2NsYXNzLmhvdmVyOmJnLXNreS0zMDBdPVwiIXRoaXMuc3B4U2VsZWN0ZWQgJiYgIXRoaXMuc3B4RGlzYWJsZWRcIlxyXG4gICAgW2NsYXNzLmFjdGl2ZTpiZy1za3ktMzAwXT1cIiF0aGlzLnNweFNlbGVjdGVkICYmICF0aGlzLnNweERpc2FibGVkXCJcclxuICAgIFtjbGFzcy5iZy1ncmF5LTIwMF09XCJ0aGlzLnNweERpc2FibGVkICYmICF0aGlzLnNweFNlbGVjdGVkXCJcclxuICAgIFtjbGFzcy5iZy1ncmF5LTQwMF09XCJ0aGlzLnNweERpc2FibGVkICYmIHRoaXMuc3B4U2VsZWN0ZWRcIlxyXG4gICAgW2NsYXNzLmN1cnNvci1ub3QtYWxsb3dlZF09XCJ0aGlzLnNweERpc2FibGVkXCJcclxuICAgIFtjbGFzcy5vcGFjaXR5LTYwXT1cInRoaXMuc3B4RGlzYWJsZWRcIlxyXG4gICAgW2NsYXNzLmJnLWdyYWRpZW50LXRvLXJdPVwidGhpcy5zcHhTZWxlY3RlZCAmJiAhdGhpcy5zcHhEaXNhYmxlZFwiXHJcbiAgICBbY2xhc3MuZnJvbS10ZWFsLTQwMF09XCJ0aGlzLnNweFNlbGVjdGVkICYmICF0aGlzLnNweERpc2FibGVkXCJcclxuICAgIFtjbGFzcy50by10ZWFsLTYwMF09XCJ0aGlzLnNweFNlbGVjdGVkICYmICF0aGlzLnNweERpc2FibGVkXCJcclxuICAgIFtjbGFzcy5mb250LWJvbGRdPVwidGhpcy5zcHhTZWxlY3RlZFwiXHJcbiAgICBbYXR0ci50YWJpbmRleF09XCJ0aGlzLnNweFRhYmJhYmxlICYmICF0aGlzLnNweERpc2FibGVkID8gMCA6IC0xXCJcclxuICAgIFtjbGFzcy5yaW5nLTJdPVwidGhpcy5zcHhGb2N1c2VkICYmIHRoaXMuc3B4VGFiYmFibGUgJiYgIXRoaXMuc3B4RGlzYWJsZWRcIlxyXG4gICAgW2NsYXNzLnJpbmctb2Zmc2V0LTJdPVwidGhpcy5zcHhGb2N1c2VkICYmIHRoaXMuc3B4VGFiYmFibGUgJiYgIXRoaXMuc3B4RGlzYWJsZWRcIlxyXG4gICAgW2NsYXNzLnJpbmctYmx1ZS01MDBdPVwidGhpcy5zcHhGb2N1c2VkICYmIHRoaXMuc3B4VGFiYmFibGUgJiYgIXRoaXMuc3B4RGlzYWJsZWRcIj5cclxuICAgIDxkaXYgY2xhc3M9XCJ0ZXh0LWVsbGlwc2lzIG92ZXJmbG93LWhpZGRlbiB3aGl0ZXNwYWNlLW5vd3JhcFwiPjxuZy1jb250ZW50PjwvbmctY29udGVudD48L2Rpdj5cclxuICAgIDwvYnV0dG9uPmAsXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBTcHhTdWdnZXN0aW9uQ29tcG9uZW50IHtcclxuICBASW5wdXQoKSBzcHhEaXNhYmxlZCA9IGZhbHNlO1xyXG4gIEBJbnB1dCgpIHNweEZvY3VzZWQgPSBmYWxzZTtcclxuICBASW5wdXQoKSBzcHhTZWxlY3RlZCA9IGZhbHNlO1xyXG4gIEBJbnB1dCgpIHNweFRhYmJhYmxlID0gZmFsc2U7XHJcbn1cclxuIl19
|
|
60
|
+
}] });
|
|
61
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3B4LXN1Z2dlc3Rpb24uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc29mdHBhay9jb21wb25lbnRzL3NweC1zdWdnZXN0aW9uL3NweC1zdWdnZXN0aW9uLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQzs7QUEyQmpELE1BQU0sT0FBTyxzQkFBc0I7SUF6Qm5DO1FBMEJFLGdCQUFXLEdBQUcsS0FBSyxFQUFXLENBQUM7UUFDL0IsZUFBVSxHQUFHLEtBQUssRUFBVyxDQUFDO1FBQzlCLGdCQUFXLEdBQUcsS0FBSyxFQUFXLENBQUM7UUFDL0IsZ0JBQVcsR0FBRyxLQUFLLEVBQVcsQ0FBQztLQUNoQzsrR0FMWSxzQkFBc0I7bUdBQXRCLHNCQUFzQiwybkJBdEJ2Qjs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Y0FvQkU7OzRGQUVELHNCQUFzQjtrQkF6QmxDLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLGdCQUFnQjtvQkFDMUIsVUFBVSxFQUFFLElBQUk7b0JBQ2hCLFFBQVEsRUFBRTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Y0FvQkU7aUJBQ2IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIGlucHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ3NweC1zdWdnZXN0aW9uJyxcclxuICBzdGFuZGFsb25lOiB0cnVlLFxyXG4gIHRlbXBsYXRlOiBgPGJ1dHRvblxyXG4gICAgdHlwZT1cImJ1dHRvblwiXHJcbiAgICBjbGFzcz1cInNweC1zdWdnZXN0aW9uIGJsb2NrIHJvdW5kZWQgdGV4dC1ncmF5LTkwMCB0ZXh0LXNtIHAtMyB3LWZ1bGwgdGV4dC1sZWZ0IHRydW5jYXRlIG91dGxpbmUtbm9uZVwiXHJcbiAgICBbY2xhc3MuYmctc2t5LTEwMF09XCIhdGhpcy5zcHhTZWxlY3RlZCgpICYmICF0aGlzLnNweERpc2FibGVkKClcIlxyXG4gICAgW2NsYXNzLmZvY3VzOnJpbmctc2t5LTMwMF09XCIhdGhpcy5zcHhTZWxlY3RlZCgpICYmICF0aGlzLnNweERpc2FibGVkKClcIlxyXG4gICAgW2NsYXNzLmhvdmVyOmJnLXNreS0zMDBdPVwiIXRoaXMuc3B4U2VsZWN0ZWQoKSAmJiAhdGhpcy5zcHhEaXNhYmxlZCgpXCJcclxuICAgIFtjbGFzcy5hY3RpdmU6Ymctc2t5LTMwMF09XCIhdGhpcy5zcHhTZWxlY3RlZCgpICYmICF0aGlzLnNweERpc2FibGVkKClcIlxyXG4gICAgW2NsYXNzLmJnLWdyYXktMjAwXT1cInRoaXMuc3B4RGlzYWJsZWQoKSAmJiAhdGhpcy5zcHhTZWxlY3RlZCgpXCJcclxuICAgIFtjbGFzcy5iZy1ncmF5LTQwMF09XCJ0aGlzLnNweERpc2FibGVkKCkgJiYgdGhpcy5zcHhTZWxlY3RlZCgpXCJcclxuICAgIFtjbGFzcy5jdXJzb3Itbm90LWFsbG93ZWRdPVwidGhpcy5zcHhEaXNhYmxlZCgpXCJcclxuICAgIFtjbGFzcy5vcGFjaXR5LTYwXT1cInRoaXMuc3B4RGlzYWJsZWQoKVwiXHJcbiAgICBbY2xhc3MuYmctZ3JhZGllbnQtdG8tcl09XCJ0aGlzLnNweFNlbGVjdGVkKCkgJiYgIXRoaXMuc3B4RGlzYWJsZWQoKVwiXHJcbiAgICBbY2xhc3MuZnJvbS10ZWFsLTQwMF09XCJ0aGlzLnNweFNlbGVjdGVkKCkgJiYgIXRoaXMuc3B4RGlzYWJsZWQoKVwiXHJcbiAgICBbY2xhc3MudG8tdGVhbC02MDBdPVwidGhpcy5zcHhTZWxlY3RlZCgpICYmICF0aGlzLnNweERpc2FibGVkKClcIlxyXG4gICAgW2NsYXNzLmZvbnQtYm9sZF09XCJ0aGlzLnNweFNlbGVjdGVkKClcIlxyXG4gICAgW2F0dHIudGFiaW5kZXhdPVwidGhpcy5zcHhUYWJiYWJsZSgpICYmICF0aGlzLnNweERpc2FibGVkKCkgPyAwIDogLTFcIlxyXG4gICAgW2NsYXNzLnJpbmctMl09XCJ0aGlzLnNweEZvY3VzZWQoKSAmJiB0aGlzLnNweFRhYmJhYmxlKCkgJiYgIXRoaXMuc3B4RGlzYWJsZWQoKVwiXHJcbiAgICBbY2xhc3MucmluZy1vZmZzZXQtMl09XCJ0aGlzLnNweEZvY3VzZWQoKSAmJiB0aGlzLnNweFRhYmJhYmxlKCkgJiYgIXRoaXMuc3B4RGlzYWJsZWQoKVwiXHJcbiAgICBbY2xhc3MucmluZy1ibHVlLTUwMF09XCJ0aGlzLnNweEZvY3VzZWQoKSAmJiB0aGlzLnNweFRhYmJhYmxlKCkgJiYgIXRoaXMuc3B4RGlzYWJsZWQoKVwiPlxyXG4gICAgPGRpdiBjbGFzcz1cInRleHQtZWxsaXBzaXMgb3ZlcmZsb3ctaGlkZGVuIHdoaXRlc3BhY2Utbm93cmFwXCI+PG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PjwvZGl2PlxyXG4gICAgPC9idXR0b24+YCxcclxufSlcclxuZXhwb3J0IGNsYXNzIFNweFN1Z2dlc3Rpb25Db21wb25lbnQge1xyXG4gIHNweERpc2FibGVkID0gaW5wdXQ8Ym9vbGVhbj4oKTtcclxuICBzcHhGb2N1c2VkID0gaW5wdXQ8Ym9vbGVhbj4oKTtcclxuICBzcHhTZWxlY3RlZCA9IGlucHV0PGJvb2xlYW4+KCk7XHJcbiAgc3B4VGFiYmFibGUgPSBpbnB1dDxib29sZWFuPigpO1xyXG59XHJcbiJdfQ==
|
|
@@ -26,6 +26,7 @@ var SpxSeverityEnum;
|
|
|
26
26
|
SpxSeverityEnum["success"] = "success";
|
|
27
27
|
SpxSeverityEnum["unknown"] = "unknown";
|
|
28
28
|
SpxSeverityEnum["warning"] = "warning";
|
|
29
|
+
SpxSeverityEnum["primary"] = "primary";
|
|
29
30
|
})(SpxSeverityEnum || (SpxSeverityEnum = {}));
|
|
30
31
|
|
|
31
32
|
const valuePairToValue = (pair) => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"softpak-components-spx-helpers.mjs","sources":["../../../../projects/softpak/components/spx-helpers/calc-check-digit.function.ts","../../../../projects/softpak/components/spx-helpers/spx-severity.enum.ts","../../../../projects/softpak/components/spx-helpers/value-pair-to-value.function.ts","../../../../projects/softpak/components/spx-helpers/softpak-components-spx-helpers.ts"],"sourcesContent":["export const calcCheckDigit = (container: string): string => {\r\n container = container.toUpperCase();\r\n\r\n const mapping = {\r\n 0: 0, 1: 1, 2: 2, 3: 3, 4: 4, 5: 5, 6: 6, 7: 7, 8: 8, 9: 9,\r\n A: 10, B: 12, C: 13, D: 14, E: 15, F: 16, G: 17, H: 18, I: 19, J: 20, K: 21, L: 23, M: 24,\r\n N: 25, O: 26, P: 27, Q: 28, R: 29, S: 30, T: 31, U: 32, V: 34, W: 35, X: 36, Y: 37, Z: 38\r\n };\r\n\r\n let total = 0;\r\n\r\n for (let i = 0; i < container.length; i++) {\r\n const cChar = container.substr(i, 1);\r\n const value = (mapping as any)[cChar];\r\n const multiplier = Math.pow(2, i);\r\n total = total + (value * multiplier);\r\n }\r\n\r\n let outcome = total % 11;\r\n if (outcome === 10) {\r\n outcome = 0;\r\n }\r\n\r\n return outcome.toString();\r\n}\r\n","export enum SpxSeverityEnum {\r\n error = 'error',\r\n info = 'info',\r\n success = 'success',\r\n unknown = 'unknown',\r\n warning = 'warning',\r\n}\r\n","export const valuePairToValue = (pair: any) => {\r\n if (pair === null || (typeof pair === 'object' && pair.value === undefined)) {\r\n return null;\r\n }\r\n return pair?.value || pair?.value === false || pair?.value === null || pair?.value === '' || pair?.value === 0 ? pair?.value : pair;\r\n};\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"AAAa,MAAA,cAAc,GAAG,CAAC,SAAiB,KAAY;AAC1D,IAAA,SAAS,GAAG,SAAS,CAAC,WAAW,EAAE,CAAC;AAEpC,IAAA,MAAM,OAAO,GAAG;AACd,QAAA,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC;QAC1D,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE;QACzF,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE;KAC1F,CAAC;IAEF,IAAI,KAAK,GAAG,CAAC,CAAC;AAEd,IAAA,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,SAAS,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;QACzC,MAAM,KAAK,GAAG,SAAS,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;AACrC,QAAA,MAAM,KAAK,GAAI,OAAe,CAAC,KAAK,CAAC,CAAC;QACtC,MAAM,UAAU,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;QAClC,KAAK,GAAG,KAAK,IAAI,KAAK,GAAG,UAAU,CAAC,CAAC;KACtC;AAED,IAAA,IAAI,OAAO,GAAG,KAAK,GAAG,EAAE,CAAC;AACzB,IAAA,IAAI,OAAO,KAAK,EAAE,EAAE;QAClB,OAAO,GAAG,CAAC,CAAC;KACb;AAED,IAAA,OAAO,OAAO,CAAC,QAAQ,EAAE,CAAC;AAC5B;;ICxBY,
|
|
1
|
+
{"version":3,"file":"softpak-components-spx-helpers.mjs","sources":["../../../../projects/softpak/components/spx-helpers/calc-check-digit.function.ts","../../../../projects/softpak/components/spx-helpers/spx-severity.enum.ts","../../../../projects/softpak/components/spx-helpers/value-pair-to-value.function.ts","../../../../projects/softpak/components/spx-helpers/softpak-components-spx-helpers.ts"],"sourcesContent":["export const calcCheckDigit = (container: string): string => {\r\n container = container.toUpperCase();\r\n\r\n const mapping = {\r\n 0: 0, 1: 1, 2: 2, 3: 3, 4: 4, 5: 5, 6: 6, 7: 7, 8: 8, 9: 9,\r\n A: 10, B: 12, C: 13, D: 14, E: 15, F: 16, G: 17, H: 18, I: 19, J: 20, K: 21, L: 23, M: 24,\r\n N: 25, O: 26, P: 27, Q: 28, R: 29, S: 30, T: 31, U: 32, V: 34, W: 35, X: 36, Y: 37, Z: 38\r\n };\r\n\r\n let total = 0;\r\n\r\n for (let i = 0; i < container.length; i++) {\r\n const cChar = container.substr(i, 1);\r\n const value = (mapping as any)[cChar];\r\n const multiplier = Math.pow(2, i);\r\n total = total + (value * multiplier);\r\n }\r\n\r\n let outcome = total % 11;\r\n if (outcome === 10) {\r\n outcome = 0;\r\n }\r\n\r\n return outcome.toString();\r\n}\r\n","export enum SpxSeverityEnum {\r\n error = 'error',\r\n info = 'info',\r\n success = 'success',\r\n unknown = 'unknown',\r\n warning = 'warning',\r\n primary = 'primary',\r\n}\r\n","export const valuePairToValue = (pair: any) => {\r\n if (pair === null || (typeof pair === 'object' && pair.value === undefined)) {\r\n return null;\r\n }\r\n return pair?.value || pair?.value === false || pair?.value === null || pair?.value === '' || pair?.value === 0 ? pair?.value : pair;\r\n};\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
|