@softpak/components 0.1.6 → 0.1.8-beta.1
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-form-view/spx-autocomplete-search.component.mjs +3 -3
- package/esm2022/spx-stock-info/public-api.mjs +2 -0
- package/esm2022/spx-stock-info/softpak-components-spx-stock-info.mjs +5 -0
- package/esm2022/spx-stock-info/spx-stock-info-value.interface.mjs +2 -0
- package/esm2022/spx-stock-info/spx-stock-info.component.mjs +236 -0
- package/fesm2022/softpak-components-spx-form-view.mjs +2 -2
- package/fesm2022/softpak-components-spx-form-view.mjs.map +1 -1
- package/fesm2022/softpak-components-spx-stock-info.mjs +243 -0
- package/fesm2022/softpak-components-spx-stock-info.mjs.map +1 -0
- package/package.json +24 -18
- package/spx-stock-info/index.d.ts +5 -0
- package/spx-stock-info/public-api.d.ts +1 -0
- package/spx-stock-info/spx-stock-info-value.interface.d.ts +10 -0
- package/spx-stock-info/spx-stock-info.component.d.ts +63 -0
|
@@ -85,7 +85,7 @@ export class SpxAutocompleteSearchComponent {
|
|
|
85
85
|
});
|
|
86
86
|
}
|
|
87
87
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.1", ngImport: i0, type: SpxAutocompleteSearchComponent, deps: [{ token: i1.FormBuilder }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
88
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.1.1", type: SpxAutocompleteSearchComponent, isStandalone: true, selector: "spx-autocomplete-search", inputs: { spxSuggestions: "spxSuggestions", spxField: "spxField", txtOptions: "txtOptions", txtQuery: "txtQuery", txtSubmit: "txtSubmit", spxValuePair: "spxValuePair" }, outputs: { spxCancel: "spxCancel", spxSearch: "spxSearch", spxSubmit: "spxSubmit" }, ngImport: i0, template: "<form class=\"bg-black fixed pt-16 z-50 top-0 left-0 right-0 bottom-0\" [formGroup]=\"formGroup\" (ngSubmit)=\"onSubmit()\">\n <div class=\"h-full w-full px-3 flex flex-col gap-3\">\n <div class=\"grow
|
|
88
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.1.1", type: SpxAutocompleteSearchComponent, isStandalone: true, selector: "spx-autocomplete-search", inputs: { spxSuggestions: "spxSuggestions", spxField: "spxField", txtOptions: "txtOptions", txtQuery: "txtQuery", txtSubmit: "txtSubmit", spxValuePair: "spxValuePair" }, outputs: { spxCancel: "spxCancel", spxSearch: "spxSearch", spxSubmit: "spxSubmit" }, ngImport: i0, template: "<form class=\"bg-black fixed pt-16 z-50 top-0 left-0 right-0 bottom-0\" [formGroup]=\"formGroup\" (ngSubmit)=\"onSubmit()\">\n <div class=\"h-full w-full px-3 flex flex-col gap-3\">\n <div class=\"grow flex flex-col gap-3 overflow-y-auto\">\n <spx-input [formControl]=\"ctrlQuery\" [spxLabel]=\"txtQuery\" [spxType]=\"inputTypeText\">\n </spx-input>\n <spx-input [formControl]=\"ctrlOptions\" [spxLabel]=\"txtOptions\" [spxSuggestions]=\"spxSuggestions\"\n [spxType]=\"inputTypeRadio\">\n </spx-input>\n </div>\n <div class=\"py-3 flex flex-col gap-3\">\n <spx-button [spxFullWidth]=\"true\" [spxSeverity]=\"severitySuccess\">\n Save\n </spx-button>\n <spx-button [spxFullWidth]=\"true\" [spxSeverity]=\"severityError\" [spxType]=\"'button'\" (spxClick)=\"onCancel()\">\n Cancel\n </spx-button>\n </div>\n </div>\n</form>", dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i1.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "directive", type: i1.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "component", type: SpxButtonComponent, selector: "spx-button", inputs: ["spxDisabled", "spxClass", "spxClassObject", "spxForm", "spxFullHeight", "spxFullWidth", "spxSeverity", "spxSize", "spxTabIndex", "spxType"], outputs: ["spxClick"] }, { kind: "component", type: SpxInputComponent, selector: "spx-input", inputs: ["spxLabel", "spxMax", "spxMin", "spxName", "spxReadonly", "spxAutofocus", "spxInputMode", "spxPattern", "spxRequired", "spxSelectMonth", "spxSelectDay", "spxShowEdit", "spxShowHelp", "spxShowLabel", "spxCompact", "spxShowClear", "spxShowSearch", "spxShowValidationMessages", "spxStep", "spxSuggestions", "spxType", "spxValidators", "value", "spxCapitalize", "spxFocused"], outputs: ["spxBlur", "spxClear", "spxChange", "spxFocus", "spxEdit", "spxHelp", "spxSearch"] }] }); }
|
|
89
89
|
}
|
|
90
90
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.1", ngImport: i0, type: SpxAutocompleteSearchComponent, decorators: [{
|
|
91
91
|
type: Component,
|
|
@@ -96,7 +96,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.1", ngImpor
|
|
|
96
96
|
SpxButtonComponent,
|
|
97
97
|
SpxInputComponent,
|
|
98
98
|
SpxValidateControlComponent,
|
|
99
|
-
], template: "<form class=\"bg-black fixed pt-16 z-50 top-0 left-0 right-0 bottom-0\" [formGroup]=\"formGroup\" (ngSubmit)=\"onSubmit()\">\n <div class=\"h-full w-full px-3 flex flex-col gap-3\">\n <div class=\"grow
|
|
99
|
+
], template: "<form class=\"bg-black fixed pt-16 z-50 top-0 left-0 right-0 bottom-0\" [formGroup]=\"formGroup\" (ngSubmit)=\"onSubmit()\">\n <div class=\"h-full w-full px-3 flex flex-col gap-3\">\n <div class=\"grow flex flex-col gap-3 overflow-y-auto\">\n <spx-input [formControl]=\"ctrlQuery\" [spxLabel]=\"txtQuery\" [spxType]=\"inputTypeText\">\n </spx-input>\n <spx-input [formControl]=\"ctrlOptions\" [spxLabel]=\"txtOptions\" [spxSuggestions]=\"spxSuggestions\"\n [spxType]=\"inputTypeRadio\">\n </spx-input>\n </div>\n <div class=\"py-3 flex flex-col gap-3\">\n <spx-button [spxFullWidth]=\"true\" [spxSeverity]=\"severitySuccess\">\n Save\n </spx-button>\n <spx-button [spxFullWidth]=\"true\" [spxSeverity]=\"severityError\" [spxType]=\"'button'\" (spxClick)=\"onCancel()\">\n Cancel\n </spx-button>\n </div>\n </div>\n</form>" }]
|
|
100
100
|
}], ctorParameters: () => [{ type: i1.FormBuilder }], propDecorators: { spxSuggestions: [{
|
|
101
101
|
type: Input
|
|
102
102
|
}], spxField: [{
|
|
@@ -116,4 +116,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.1", ngImpor
|
|
|
116
116
|
}], spxSubmit: [{
|
|
117
117
|
type: Output
|
|
118
118
|
}] } });
|
|
119
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3B4LWF1dG9jb21wbGV0ZS1zZWFyY2guY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc29mdHBhay9jb21wb25lbnRzL3NweC1mb3JtLXZpZXcvc3B4LWF1dG9jb21wbGV0ZS1zZWFyY2guY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc29mdHBhay9jb21wb25lbnRzL3NweC1mb3JtLXZpZXcvc3B4LWF1dG9jb21wbGV0ZS1zZWFyY2guY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFxQixNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDMUYsT0FBTyxFQUF1QyxXQUFXLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUN2RyxPQUFPLEVBQWdCLFlBQVksRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUNsRCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLGlCQUFpQixFQUFFLGdCQUFnQixFQUFnQixNQUFNLGdDQUFnQyxDQUFDO0FBQ25HLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQ3BFLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUdsRSxPQUFPLEVBQUUsMkJBQTJCLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQzs7O0FBRWpGLE1BQU0sQ0FBQyxNQUFNLHlCQUF5QixHQUFHLG9CQUFvQixDQUFDO0FBQzlELE1BQU0sQ0FBQyxNQUFNLFNBQVMsR0FBRyxPQUFPLENBQUM7QUFDakMsTUFBTSxDQUFDLE1BQU0sV0FBVyxHQUFHLFNBQVMsQ0FBQztBQWVyQyxNQUFNLE9BQU8sOEJBQThCO0lBb0N6QyxJQUFJLFNBQVMsS0FBa0IsT0FBTyxJQUFJLENBQUMsU0FB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LFlBQVksQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDLFNBQVMsQ0FBQyxFQUFFO1lBQ3hGLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBQ2pDLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVPLGlCQUFpQjtRQUN2QixJQUFJLENBQUMsWUFBWSxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUMsWUFBWSxDQUFDLFNBQVMsQ0FBQyxTQUFTLENBQUMsRUFBRTtZQUN0RSxJQUFJLENBQUMsU0FBUyxDQUFDLFFBQVEsQ0FBQyxTQUFTLENBQUMsQ0FBQztRQUNyQyxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7OEdBM0ZVLDhCQUE4QjtrR0FBOUIsOEJBQThCLGtWQzVCM0MsMDRCQWtCTywyQ0RFSCxZQUFZLDhCQUNaLFdBQVcsMllBQ1gsbUJBQW1CLG1XQUNuQixrQkFBa0IscU9BQ2xCLGlCQUFpQjs7MkZBSVIsOEJBQThCO2tCQWIxQyxTQUFTOytCQUNFLHlCQUF5QixjQUV2QixJQUFJLFdBQ1A7d0JBQ1AsWUFBWTt3QkFDWixXQUFXO3dCQUNYLG1CQUFtQjt3QkFDbkIsa0JBQWtCO3dCQUNsQixpQkFBaUI7d0JBQ2pCLDJCQUEyQjtxQkFDNUI7Z0ZBSVEsY0FBYztzQkFBdEIsS0FBSztnQkFDRyxRQUFRO3NCQUFoQixLQUFLO2dCQUNHLFVBQVU7c0JBQWxCLEtBQUs7Z0JBQ0csUUFBUTtzQkFBaEIsS0FBSztnQkFDRyxTQUFTO3NCQUFqQixLQUFLO2dCQUNHLFlBQVk7c0JBQXBCLEtBQUs7Z0JBQ0ksU0FBUztzQkFBbEIsTUFBTTtnQkFDRyxTQUFTO3NCQUFsQixNQUFNO2dCQUNHLFNBQVM7c0JBQWxCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE9uRGVzdHJveSwgT25Jbml0LCBPdXRwdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEZvcm1CdWlsZGVyLCBGb3JtQ29udHJvbCwgRm9ybUdyb3VwLCBGb3Jtc01vZHVsZSwgUmVhY3RpdmVGb3Jtc01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IFN1YnNjcmlwdGlvbiwgZGVib3VuY2VUaW1lIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgU3B4SW5wdXRDb21wb25lbnQsIFNweElucHV0VHlwZUVudW0sIFNweFZhbHVlUGFpciB9IGZyb20gJ0Bzb2Z0cGFrL2NvbXBvbmVudHMvc3B4LWlucHV0cyc7XG5pbXBvcnQgeyBTcHhCdXR0b25Db21wb25lbnQgfSBmcm9tICdAc29mdHBhay9jb21wb25lbnRzL3NweC1idXR0b24nO1xuaW1wb3J0IHsgU3B4U2V2ZXJpdHlFbnVtIH0gZnJvbSAnQHNvZnRwYWsvY29tcG9uZW50cy9zcHgtaGVscGVycyc7XG5pbXBvcnQgeyBTcHhGb3JtRmllbGRJIH0gZnJvbSAnLi9zcHgtZm9ybS1maWVsZC5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgU3B4Rm9ybVNlY3Rpb25JIH0gZnJvbSAnLi9zcHgtZm9ybS1zZWN0aW9uLmludGVyZmFjZSc7XG5pbXBvcnQgeyBTcHhWYWxpZGF0ZUNvbnRyb2xDb21wb25lbnQgfSBmcm9tICdAc29mdHBhay9jb21wb25lbnRzL3NweC12YWxpZGF0aW9uJztcblxuZXhwb3J0IGNvbnN0IHNlY3Rpb25BdXRvY29tcGxldGVTZWFyY2ggPSAnYXV0b2NvbXBsZXRlU2VhcmNoJztcbmV4cG9ydCBjb25zdCBjdHJsUXVlcnkgPSAncXVlcnknO1xuZXhwb3J0IGNvbnN0IGN0cmxPcHRpb25zID0gJ29wdGlvbnMnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdzcHgtYXV0b2NvbXBsZXRlLXNlYXJjaCcsXG4gIHRlbXBsYXRlVXJsOiAnLi9zcHgtYXV0b2NvbXBsZXRlLXNlYXJjaC5jb21wb25lbnQuaHRtbCcsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtcbiAgICBDb21tb25Nb2R1bGUsXG4gICAgRm9ybXNNb2R1bGUsXG4gICAgUmVhY3RpdmVGb3Jtc01vZHVsZSxcbiAgICBTcHhCdXR0b25Db21wb25lbnQsXG4gICAgU3B4SW5wdXRDb21wb25lbnQsXG4gICAgU3B4VmFsaWRhdGVDb250cm9sQ29tcG9uZW50LFxuICBdXG59KVxuZXhwb3J0IGNsYXNzIFNweEF1dG9jb21wbGV0ZVNlYXJjaENvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95IHtcbiAgZm9ybUdyb3VwITogRm9ybUdyb3VwO1xuICBASW5wdXQoKSBzcHhTdWdnZXN0aW9uczogU3B4VmFsdWVQYWlyPGFueT5bXSA9IFtdO1xuICBASW5wdXQoKSBzcHhGaWVsZCE6IFNweEZvcm1GaWVsZEk7XG4gIEBJbnB1dCgpIHR4dE9wdGlvbnMhOiBzdHJpbmc7XG4gIEBJbnB1dCgpIHR4dFF1ZXJ5ITogc3RyaW5nO1xuICBASW5wdXQoKSB0eHRTdWJtaXQhOiBzdHJpbmc7XG4gIEBJbnB1dCgpIHNweFZhbHVlUGFpciE6IFNweFZhbHVlUGFpcjxhbnk+O1xuICBAT3V0cHV0KCkgc3B4Q2FuY2VsOiBFdmVudEVtaXR0ZXI8dm9pZD4gPSBuZXcgRXZlbnRFbWl0dGVyPHZvaWQ+KCk7XG4gIEBPdXRwdXQoKSBzcHhTZWFyY2g6IEV2ZW50RW1pdHRlcjxTcHhWYWx1ZVBhaXI8YW55Pj4gPSBuZXcgRXZlbnRFbWl0dGVyPFNweFZhbHVlUGFpcjxhbnk+PigpOyBcbiAgQE91dHB1dCgpIHNweFN1Ym1pdDogRXZlbnRFbWl0dGVyPFNweFZhbHVlUGFpcjxhbnk+PiA9IG5ldyBFdmVudEVtaXR0ZXI8U3B4VmFsdWVQYWlyPGFueT4+KCk7XG4gIGlucHV0VHlwZVJhZGlvID0gU3B4SW5wdXRUeXBlRW51bS5yYWRpbztcbiAgaW5wdXRUeXBlVGV4dCA9IFNweElucHV0VHlwZUVudW0udGV4dDtcbiAgc2V2ZXJpdHlFcnJvciA9IFNweFNldmVyaXR5RW51bS5lcnJvcjtcbiAgc2V2ZXJpdHlTdWNjZXNzID0gU3B4U2V2ZXJpdHlFbnVtLnN1Y2Nlc3M7XG4gXG4gIHNlY3Rpb25zOiBTcHhGb3JtU2VjdGlvbklbXSA9IFtcbiAgICB7XG4gICAgICBrZXk6IHNlY3Rpb25BdXRvY29tcGxldGVTZWFyY2gsXG4gICAgICBzaG93VGl0bGU6ICgpID0+IGZhbHNlLFxuICAgICAgZmllbGRzOiBbXG4gICAgICAgIHtcbiAgICAgICAgICBrZXk6IGN0cmxRdWVyeSxcbiAgICAgICAgICB0eXBlOiAoKSA9PiBTcHhJbnB1dFR5cGVFbnVtLnRleHQsXG4gICAgICAgICAgbGFiZWw6ICgpID0+IHRoaXMudHh0UXVlcnksXG4gICAgICAgICAgY2FwaXRhbGl6ZTogKCkgPT4gdHJ1ZSxcbiAgICAgICAgfSxcbiAgICAgICAge1xuICAgICAgICAgIGtleTogY3RybE9wdGlvbnMsXG4gICAgICAgICAgdHlwZTogKCkgPT4gU3B4SW5wdXRUeXBlRW51bS5yYWRpbyxcbiAgICAgICAgICBsYWJlbDogKCkgPT4gdGhpcy50eHRPcHRpb25zLFxuICAgICAgICB9LFxuICAgICAgXVxuICAgIH1cbiAgXTtcblxuICBnZXQgY3RybFF1ZXJ5KCk6IEZvcm1Db250cm9sIHsgcmV0dXJuIHRoaXMuZm9ybUdyb3VwLmdldChjdHJsUXVlcnkpIGFzIEZvcm1Db250cm9sOyB9XG4gIGdldCBjdHJsT3B0aW9ucygpOiBGb3JtQ29udHJvbCB7IHJldHVybiB0aGlzLmZvcm1Hcm91cC5nZXQoY3RybE9wdGlvbnMpIGFzIEZvcm1Db250cm9sOyB9XG5cbiAgcHJpdmF0ZSBzdWJTZWxlY3Rpb24/OiBTdWJzY3JpcHRpb247XG4gIHByaXZhdGUgc3ViUXVlcnk/OiBTdWJzY3JpcHRpb247XG5cbiAgY29uc3RydWN0b3IocmVhZG9ubHkgZm9ybUJ1aWxkZXI6IEZvcm1CdWlsZGVyKSB7XG4gICAgdGhpcy5jcmVhdGVGb3JtKCk7XG4gIH1cblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLmxpc3RlblRvU2VsZWN0aW9uKCk7XG4gICAgdGhpcy5saXN0ZW5Ub1F1ZXJ5KCk7XG4gICAgdGhpcy5jdHJsUXVlcnkuc2V0VmFsdWUodGhpcy5zcHhWYWx1ZVBhaXIsIHsgZW1pdEV2ZW50OiBmYWxzZSB9KTtcbiAgICB0aGlzLnNweFNlYXJjaC5lbWl0KHRoaXMuc3B4VmFsdWVQYWlyKTtcbiAgfVxuXG4gIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgIGlmICh0aGlzLnN1YlNlbGVjdGlvbikge1xuICAgICAgdGhpcy5zdWJTZWxlY3Rpb24udW5zdWJzY3JpYmUoKTtcbiAgICB9XG4gICAgaWYgKHRoaXMuc3ViUXVlcnkpIHtcbiAgICAgIHRoaXMuc3ViUXVlcnkudW5zdWJzY3JpYmUoKTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIGNyZWF0ZUZvcm0oKTogdm9pZCB7XG4gICAgdGhpcy5mb3JtR3JvdXAgPSB0aGlzLmZvcm1CdWlsZGVyLmdyb3VwKHtcbiAgICAgIFtjdHJsUXVlcnldOiBbbnVsbF0sXG4gICAgICBbY3RybE9wdGlvbnNdOiBbbnVsbF0sXG4gICAgfSk7XG4gIH1cblxuICBnZXRSYXdWYWxpZGF0b3JzKGZvcm1Db250cm9sOiBGb3JtQ29udHJvbCkge1xuICAgIHJldHVybiAoZm9ybUNvbnRyb2wgYXMgYW55KS5fcmF3VmFsaWRhdG9ycztcbiAgfVxuXG4gIG9uQ2FuY2VsKCk6IHZvaWQge1xuICAgIHRoaXMuc3B4Q2FuY2VsLmVtaXQoKTtcbiAgfVxuICBcbiAgb25TdWJtaXQoKTogdm9pZCB7XG4gICAgdGhpcy5zcHhTdWJtaXQuZW1pdCh0aGlzLmN0cmxRdWVyeS52YWx1ZSk7XG4gIH1cblxuICBwcml2YXRlIGxpc3RlblRvUXVlcnkoKTogdm9pZCB7XG4gICAgdGhpcy5zdWJRdWVyeSA9IHRoaXMuY3RybFF1ZXJ5LnZhbHVlQ2hhbmdlcy5waXBlKGRlYm91bmNlVGltZSg1MDApKS5zdWJzY3JpYmUodmFsdWVQYWlyID0+IHtcbiAgICAgIHRoaXMuc3B4U2VhcmNoLmVtaXQodmFsdWVQYWlyKTtcbiAgICB9KTtcbiAgfVxuXG4gIHByaXZhdGUgbGlzdGVuVG9TZWxlY3Rpb24oKTogdm9pZCB7XG4gICAgdGhpcy5zdWJTZWxlY3Rpb24gPSB0aGlzLmN0cmxPcHRpb25zLnZhbHVlQ2hhbmdlcy5zdWJzY3JpYmUodmFsdWVQYWlyID0+IHtcbiAgICAgIHRoaXMuY3RybFF1ZXJ5LnNldFZhbHVlKHZhbHVlUGFpcik7XG4gICAgfSk7XG4gIH1cbn1cbiIsIjxmb3JtIGNsYXNzPVwiYmctYmxhY2sgZml4ZWQgcHQtMTYgei01MCB0b3AtMCBsZWZ0LTAgcmlnaHQtMCBib3R0b20tMFwiIFtmb3JtR3JvdXBdPVwiZm9ybUdyb3VwXCIgKG5nU3VibWl0KT1cIm9uU3VibWl0KClcIj5cbiAgPGRpdiBjbGFzcz1cImgtZnVsbCB3LWZ1bGwgcHgtMyBmbGV4IGZsZXgtY29sIGdhcC0zXCI+XG4gICAgPGRpdiBjbGFzcz1cImdyb3cgbXgtYXV0byBmbGV4IGZsZXgtY29sIGdhcC0zIG92ZXJmbG93LXktYXV0b1wiPlxuICAgICAgPHNweC1pbnB1dCBbZm9ybUNvbnRyb2xdPVwiY3RybFF1ZXJ5XCIgW3NweExhYmVsXT1cInR4dFF1ZXJ5XCIgW3NweFR5cGVdPVwiaW5wdXRUeXBlVGV4dFwiPlxuICAgICAgPC9zcHgtaW5wdXQ+XG4gICAgICA8c3B4LWlucHV0IFtmb3JtQ29udHJvbF09XCJjdHJsT3B0aW9uc1wiIFtzcHhMYWJlbF09XCJ0eHRPcHRpb25zXCIgW3NweFN1Z2dlc3Rpb25zXT1cInNweFN1Z2dlc3Rpb25zXCJcbiAgICAgICAgW3NweFR5cGVdPVwiaW5wdXRUeXBlUmFkaW9cIj5cbiAgICAgIDwvc3B4LWlucHV0PlxuICAgIDwvZGl2PlxuICAgIDxkaXYgY2xhc3M9XCJweS0zIGZsZXggZmxleC1jb2wgZ2FwLTNcIj5cbiAgICAgIDxzcHgtYnV0dG9uIFtzcHhGdWxsV2lkdGhdPVwidHJ1ZVwiIFtzcHhTZXZlcml0eV09XCJzZXZlcml0eVN1Y2Nlc3NcIj5cbiAgICAgICAgU2F2ZVxuICAgICAgPC9zcHgtYnV0dG9uPlxuICAgICAgPHNweC1idXR0b24gW3NweEZ1bGxXaWR0aF09XCJ0cnVlXCIgW3NweFNldmVyaXR5XT1cInNldmVyaXR5RXJyb3JcIiBbc3B4VHlwZV09XCInYnV0dG9uJ1wiIChzcHhDbGljayk9XCJvbkNhbmNlbCgpXCI+XG4gICAgICAgIENhbmNlbFxuICAgICAgPC9zcHgtYnV0dG9uPlxuICAgIDwvZGl2PlxuICA8L2Rpdj5cbjwvZm9ybT4iXX0=
|
|
119
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3B4LWF1dG9jb21wbGV0ZS1zZWFyY2guY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc29mdHBhay9jb21wb25lbnRzL3NweC1mb3JtLXZpZXcvc3B4LWF1dG9jb21wbGV0ZS1zZWFyY2guY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc29mdHBhay9jb21wb25lbnRzL3NweC1mb3JtLXZpZXcvc3B4LWF1dG9jb21wbGV0ZS1zZWFyY2guY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFxQixNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDMUYsT0FBTyxFQUF1QyxXQUFXLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUN2RyxPQUFPLEVBQWdCLFlBQVksRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUNsRCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLGlCQUFpQixFQUFFLGdCQUFnQixFQUFnQixNQUFNLGdDQUFnQyxDQUFDO0FBQ25HLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQ3BFLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUdsRSxPQUFPLEVBQUUsMkJBQTJCLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQzs7O0FBRWpGLE1BQU0sQ0FBQyxNQUFNLHlCQUF5QixHQUFHLG9CQUFvQixDQUFDO0FBQzlELE1BQU0sQ0FBQyxNQUFNLFNBQVMsR0FBRyxPQUFPLENBQUM7QUFDakMsTUFBTSxDQUFDLE1BQU0sV0FBVyxHQUFHLFNBQVMsQ0FBQztBQWVyQyxNQUFNLE9BQU8sOEJBQThCO0lBb0N6QyxJQUFJLFNBQVMsS0FBa0IsT0FBTyxJQUFJLENBQUMsU0FB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LFlBQVksQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDLFNBQVMsQ0FBQyxFQUFFO1lBQ3hGLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBQ2pDLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVPLGlCQUFpQjtRQUN2QixJQUFJLENBQUMsWUFBWSxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUMsWUFBWSxDQUFDLFNBQVMsQ0FBQyxTQUFTLENBQUMsRUFBRTtZQUN0RSxJQUFJLENBQUMsU0FBUyxDQUFDLFFBQVEsQ0FBQyxTQUFTLENBQUMsQ0FBQztRQUNyQyxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7OEdBM0ZVLDhCQUE4QjtrR0FBOUIsOEJBQThCLGtWQzVCM0MsazRCQWtCTywyQ0RFSCxZQUFZLDhCQUNaLFdBQVcsMllBQ1gsbUJBQW1CLG1XQUNuQixrQkFBa0IscU9BQ2xCLGlCQUFpQjs7MkZBSVIsOEJBQThCO2tCQWIxQyxTQUFTOytCQUNFLHlCQUF5QixjQUV2QixJQUFJLFdBQ1A7d0JBQ1AsWUFBWTt3QkFDWixXQUFXO3dCQUNYLG1CQUFtQjt3QkFDbkIsa0JBQWtCO3dCQUNsQixpQkFBaUI7d0JBQ2pCLDJCQUEyQjtxQkFDNUI7Z0ZBSVEsY0FBYztzQkFBdEIsS0FBSztnQkFDRyxRQUFRO3NCQUFoQixLQUFLO2dCQUNHLFVBQVU7c0JBQWxCLEtBQUs7Z0JBQ0csUUFBUTtzQkFBaEIsS0FBSztnQkFDRyxTQUFTO3NCQUFqQixLQUFLO2dCQUNHLFlBQVk7c0JBQXBCLEtBQUs7Z0JBQ0ksU0FBUztzQkFBbEIsTUFBTTtnQkFDRyxTQUFTO3NCQUFsQixNQUFNO2dCQUNHLFNBQVM7c0JBQWxCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE9uRGVzdHJveSwgT25Jbml0LCBPdXRwdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEZvcm1CdWlsZGVyLCBGb3JtQ29udHJvbCwgRm9ybUdyb3VwLCBGb3Jtc01vZHVsZSwgUmVhY3RpdmVGb3Jtc01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IFN1YnNjcmlwdGlvbiwgZGVib3VuY2VUaW1lIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgU3B4SW5wdXRDb21wb25lbnQsIFNweElucHV0VHlwZUVudW0sIFNweFZhbHVlUGFpciB9IGZyb20gJ0Bzb2Z0cGFrL2NvbXBvbmVudHMvc3B4LWlucHV0cyc7XG5pbXBvcnQgeyBTcHhCdXR0b25Db21wb25lbnQgfSBmcm9tICdAc29mdHBhay9jb21wb25lbnRzL3NweC1idXR0b24nO1xuaW1wb3J0IHsgU3B4U2V2ZXJpdHlFbnVtIH0gZnJvbSAnQHNvZnRwYWsvY29tcG9uZW50cy9zcHgtaGVscGVycyc7XG5pbXBvcnQgeyBTcHhGb3JtRmllbGRJIH0gZnJvbSAnLi9zcHgtZm9ybS1maWVsZC5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgU3B4Rm9ybVNlY3Rpb25JIH0gZnJvbSAnLi9zcHgtZm9ybS1zZWN0aW9uLmludGVyZmFjZSc7XG5pbXBvcnQgeyBTcHhWYWxpZGF0ZUNvbnRyb2xDb21wb25lbnQgfSBmcm9tICdAc29mdHBhay9jb21wb25lbnRzL3NweC12YWxpZGF0aW9uJztcblxuZXhwb3J0IGNvbnN0IHNlY3Rpb25BdXRvY29tcGxldGVTZWFyY2ggPSAnYXV0b2NvbXBsZXRlU2VhcmNoJztcbmV4cG9ydCBjb25zdCBjdHJsUXVlcnkgPSAncXVlcnknO1xuZXhwb3J0IGNvbnN0IGN0cmxPcHRpb25zID0gJ29wdGlvbnMnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdzcHgtYXV0b2NvbXBsZXRlLXNlYXJjaCcsXG4gIHRlbXBsYXRlVXJsOiAnLi9zcHgtYXV0b2NvbXBsZXRlLXNlYXJjaC5jb21wb25lbnQuaHRtbCcsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtcbiAgICBDb21tb25Nb2R1bGUsXG4gICAgRm9ybXNNb2R1bGUsXG4gICAgUmVhY3RpdmVGb3Jtc01vZHVsZSxcbiAgICBTcHhCdXR0b25Db21wb25lbnQsXG4gICAgU3B4SW5wdXRDb21wb25lbnQsXG4gICAgU3B4VmFsaWRhdGVDb250cm9sQ29tcG9uZW50LFxuICBdXG59KVxuZXhwb3J0IGNsYXNzIFNweEF1dG9jb21wbGV0ZVNlYXJjaENvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95IHtcbiAgZm9ybUdyb3VwITogRm9ybUdyb3VwO1xuICBASW5wdXQoKSBzcHhTdWdnZXN0aW9uczogU3B4VmFsdWVQYWlyPGFueT5bXSA9IFtdO1xuICBASW5wdXQoKSBzcHhGaWVsZCE6IFNweEZvcm1GaWVsZEk7XG4gIEBJbnB1dCgpIHR4dE9wdGlvbnMhOiBzdHJpbmc7XG4gIEBJbnB1dCgpIHR4dFF1ZXJ5ITogc3RyaW5nO1xuICBASW5wdXQoKSB0eHRTdWJtaXQhOiBzdHJpbmc7XG4gIEBJbnB1dCgpIHNweFZhbHVlUGFpciE6IFNweFZhbHVlUGFpcjxhbnk+O1xuICBAT3V0cHV0KCkgc3B4Q2FuY2VsOiBFdmVudEVtaXR0ZXI8dm9pZD4gPSBuZXcgRXZlbnRFbWl0dGVyPHZvaWQ+KCk7XG4gIEBPdXRwdXQoKSBzcHhTZWFyY2g6IEV2ZW50RW1pdHRlcjxTcHhWYWx1ZVBhaXI8YW55Pj4gPSBuZXcgRXZlbnRFbWl0dGVyPFNweFZhbHVlUGFpcjxhbnk+PigpOyBcbiAgQE91dHB1dCgpIHNweFN1Ym1pdDogRXZlbnRFbWl0dGVyPFNweFZhbHVlUGFpcjxhbnk+PiA9IG5ldyBFdmVudEVtaXR0ZXI8U3B4VmFsdWVQYWlyPGFueT4+KCk7XG4gIGlucHV0VHlwZVJhZGlvID0gU3B4SW5wdXRUeXBlRW51bS5yYWRpbztcbiAgaW5wdXRUeXBlVGV4dCA9IFNweElucHV0VHlwZUVudW0udGV4dDtcbiAgc2V2ZXJpdHlFcnJvciA9IFNweFNldmVyaXR5RW51bS5lcnJvcjtcbiAgc2V2ZXJpdHlTdWNjZXNzID0gU3B4U2V2ZXJpdHlFbnVtLnN1Y2Nlc3M7XG4gXG4gIHNlY3Rpb25zOiBTcHhGb3JtU2VjdGlvbklbXSA9IFtcbiAgICB7XG4gICAgICBrZXk6IHNlY3Rpb25BdXRvY29tcGxldGVTZWFyY2gsXG4gICAgICBzaG93VGl0bGU6ICgpID0+IGZhbHNlLFxuICAgICAgZmllbGRzOiBbXG4gICAgICAgIHtcbiAgICAgICAgICBrZXk6IGN0cmxRdWVyeSxcbiAgICAgICAgICB0eXBlOiAoKSA9PiBTcHhJbnB1dFR5cGVFbnVtLnRleHQsXG4gICAgICAgICAgbGFiZWw6ICgpID0+IHRoaXMudHh0UXVlcnksXG4gICAgICAgICAgY2FwaXRhbGl6ZTogKCkgPT4gdHJ1ZSxcbiAgICAgICAgfSxcbiAgICAgICAge1xuICAgICAgICAgIGtleTogY3RybE9wdGlvbnMsXG4gICAgICAgICAgdHlwZTogKCkgPT4gU3B4SW5wdXRUeXBlRW51bS5yYWRpbyxcbiAgICAgICAgICBsYWJlbDogKCkgPT4gdGhpcy50eHRPcHRpb25zLFxuICAgICAgICB9LFxuICAgICAgXVxuICAgIH1cbiAgXTtcblxuICBnZXQgY3RybFF1ZXJ5KCk6IEZvcm1Db250cm9sIHsgcmV0dXJuIHRoaXMuZm9ybUdyb3VwLmdldChjdHJsUXVlcnkpIGFzIEZvcm1Db250cm9sOyB9XG4gIGdldCBjdHJsT3B0aW9ucygpOiBGb3JtQ29udHJvbCB7IHJldHVybiB0aGlzLmZvcm1Hcm91cC5nZXQoY3RybE9wdGlvbnMpIGFzIEZvcm1Db250cm9sOyB9XG5cbiAgcHJpdmF0ZSBzdWJTZWxlY3Rpb24/OiBTdWJzY3JpcHRpb247XG4gIHByaXZhdGUgc3ViUXVlcnk/OiBTdWJzY3JpcHRpb247XG5cbiAgY29uc3RydWN0b3IocmVhZG9ubHkgZm9ybUJ1aWxkZXI6IEZvcm1CdWlsZGVyKSB7XG4gICAgdGhpcy5jcmVhdGVGb3JtKCk7XG4gIH1cblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLmxpc3RlblRvU2VsZWN0aW9uKCk7XG4gICAgdGhpcy5saXN0ZW5Ub1F1ZXJ5KCk7XG4gICAgdGhpcy5jdHJsUXVlcnkuc2V0VmFsdWUodGhpcy5zcHhWYWx1ZVBhaXIsIHsgZW1pdEV2ZW50OiBmYWxzZSB9KTtcbiAgICB0aGlzLnNweFNlYXJjaC5lbWl0KHRoaXMuc3B4VmFsdWVQYWlyKTtcbiAgfVxuXG4gIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgIGlmICh0aGlzLnN1YlNlbGVjdGlvbikge1xuICAgICAgdGhpcy5zdWJTZWxlY3Rpb24udW5zdWJzY3JpYmUoKTtcbiAgICB9XG4gICAgaWYgKHRoaXMuc3ViUXVlcnkpIHtcbiAgICAgIHRoaXMuc3ViUXVlcnkudW5zdWJzY3JpYmUoKTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIGNyZWF0ZUZvcm0oKTogdm9pZCB7XG4gICAgdGhpcy5mb3JtR3JvdXAgPSB0aGlzLmZvcm1CdWlsZGVyLmdyb3VwKHtcbiAgICAgIFtjdHJsUXVlcnldOiBbbnVsbF0sXG4gICAgICBbY3RybE9wdGlvbnNdOiBbbnVsbF0sXG4gICAgfSk7XG4gIH1cblxuICBnZXRSYXdWYWxpZGF0b3JzKGZvcm1Db250cm9sOiBGb3JtQ29udHJvbCkge1xuICAgIHJldHVybiAoZm9ybUNvbnRyb2wgYXMgYW55KS5fcmF3VmFsaWRhdG9ycztcbiAgfVxuXG4gIG9uQ2FuY2VsKCk6IHZvaWQge1xuICAgIHRoaXMuc3B4Q2FuY2VsLmVtaXQoKTtcbiAgfVxuICBcbiAgb25TdWJtaXQoKTogdm9pZCB7XG4gICAgdGhpcy5zcHhTdWJtaXQuZW1pdCh0aGlzLmN0cmxRdWVyeS52YWx1ZSk7XG4gIH1cblxuICBwcml2YXRlIGxpc3RlblRvUXVlcnkoKTogdm9pZCB7XG4gICAgdGhpcy5zdWJRdWVyeSA9IHRoaXMuY3RybFF1ZXJ5LnZhbHVlQ2hhbmdlcy5waXBlKGRlYm91bmNlVGltZSg1MDApKS5zdWJzY3JpYmUodmFsdWVQYWlyID0+IHtcbiAgICAgIHRoaXMuc3B4U2VhcmNoLmVtaXQodmFsdWVQYWlyKTtcbiAgICB9KTtcbiAgfVxuXG4gIHByaXZhdGUgbGlzdGVuVG9TZWxlY3Rpb24oKTogdm9pZCB7XG4gICAgdGhpcy5zdWJTZWxlY3Rpb24gPSB0aGlzLmN0cmxPcHRpb25zLnZhbHVlQ2hhbmdlcy5zdWJzY3JpYmUodmFsdWVQYWlyID0+IHtcbiAgICAgIHRoaXMuY3RybFF1ZXJ5LnNldFZhbHVlKHZhbHVlUGFpcik7XG4gICAgfSk7XG4gIH1cbn1cbiIsIjxmb3JtIGNsYXNzPVwiYmctYmxhY2sgZml4ZWQgcHQtMTYgei01MCB0b3AtMCBsZWZ0LTAgcmlnaHQtMCBib3R0b20tMFwiIFtmb3JtR3JvdXBdPVwiZm9ybUdyb3VwXCIgKG5nU3VibWl0KT1cIm9uU3VibWl0KClcIj5cbiAgPGRpdiBjbGFzcz1cImgtZnVsbCB3LWZ1bGwgcHgtMyBmbGV4IGZsZXgtY29sIGdhcC0zXCI+XG4gICAgPGRpdiBjbGFzcz1cImdyb3cgZmxleCBmbGV4LWNvbCBnYXAtMyBvdmVyZmxvdy15LWF1dG9cIj5cbiAgICAgIDxzcHgtaW5wdXQgW2Zvcm1Db250cm9sXT1cImN0cmxRdWVyeVwiIFtzcHhMYWJlbF09XCJ0eHRRdWVyeVwiIFtzcHhUeXBlXT1cImlucHV0VHlwZVRleHRcIj5cbiAgICAgIDwvc3B4LWlucHV0PlxuICAgICAgPHNweC1pbnB1dCBbZm9ybUNvbnRyb2xdPVwiY3RybE9wdGlvbnNcIiBbc3B4TGFiZWxdPVwidHh0T3B0aW9uc1wiIFtzcHhTdWdnZXN0aW9uc109XCJzcHhTdWdnZXN0aW9uc1wiXG4gICAgICAgIFtzcHhUeXBlXT1cImlucHV0VHlwZVJhZGlvXCI+XG4gICAgICA8L3NweC1pbnB1dD5cbiAgICA8L2Rpdj5cbiAgICA8ZGl2IGNsYXNzPVwicHktMyBmbGV4IGZsZXgtY29sIGdhcC0zXCI+XG4gICAgICA8c3B4LWJ1dHRvbiBbc3B4RnVsbFdpZHRoXT1cInRydWVcIiBbc3B4U2V2ZXJpdHldPVwic2V2ZXJpdHlTdWNjZXNzXCI+XG4gICAgICAgIFNhdmVcbiAgICAgIDwvc3B4LWJ1dHRvbj5cbiAgICAgIDxzcHgtYnV0dG9uIFtzcHhGdWxsV2lkdGhdPVwidHJ1ZVwiIFtzcHhTZXZlcml0eV09XCJzZXZlcml0eUVycm9yXCIgW3NweFR5cGVdPVwiJ2J1dHRvbidcIiAoc3B4Q2xpY2spPVwib25DYW5jZWwoKVwiPlxuICAgICAgICBDYW5jZWxcbiAgICAgIDwvc3B4LWJ1dHRvbj5cbiAgICA8L2Rpdj5cbiAgPC9kaXY+XG48L2Zvcm0+Il19
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
export * from './spx-stock-info.component';
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3NvZnRwYWsvY29tcG9uZW50cy9zcHgtc3RvY2staW5mby9wdWJsaWMtYXBpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsNEJBQTRCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL3NweC1zdG9jay1pbmZvLmNvbXBvbmVudCc7XG4iXX0=
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Generated bundle index. Do not edit.
|
|
3
|
+
*/
|
|
4
|
+
export * from './public-api';
|
|
5
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic29mdHBhay1jb21wb25lbnRzLXNweC1zdG9jay1pbmZvLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc29mdHBhay9jb21wb25lbnRzL3NweC1zdG9jay1pbmZvL3NvZnRwYWstY29tcG9uZW50cy1zcHgtc3RvY2staW5mby50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUVILGNBQWMsY0FBYyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBHZW5lcmF0ZWQgYnVuZGxlIGluZGV4LiBEbyBub3QgZWRpdC5cbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL3B1YmxpYy1hcGknO1xuIl19
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import { ctrlCategory, ctrlContainerStatus, ctrlContainerType, ctrlCustomer, ctrlDepot, ctrlLocation } from "./spx-stock-info.component";
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3B4LXN0b2NrLWluZm8tdmFsdWUuaW50ZXJmYWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc29mdHBhay9jb21wb25lbnRzL3NweC1zdG9jay1pbmZvL3NweC1zdG9jay1pbmZvLXZhbHVlLmludGVyZmFjZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsWUFBWSxFQUFFLG1CQUFtQixFQUFFLGlCQUFpQixFQUFFLFlBQVksRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLE1BQU0sNEJBQTRCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBTcHhWYWx1ZVBhaXIgfSBmcm9tIFwiQHNvZnRwYWsvY29tcG9uZW50cy9zcHgtaW5wdXRzXCI7XG5pbXBvcnQgeyBjdHJsQ2F0ZWdvcnksIGN0cmxDb250YWluZXJTdGF0dXMsIGN0cmxDb250YWluZXJUeXBlLCBjdHJsQ3VzdG9tZXIsIGN0cmxEZXBvdCwgY3RybExvY2F0aW9uIH0gZnJvbSBcIi4vc3B4LXN0b2NrLWluZm8uY29tcG9uZW50XCI7XG5cbmV4cG9ydCBpbnRlcmZhY2UgU3B4U3RvY2tJbmZvVmFsdWVJIHtcbiAgICBbY3RybENhdGVnb3J5XT86IFNweFZhbHVlUGFpcjxzdHJpbmc+O1xuICAgIFtjdHJsQ29udGFpbmVyU3RhdHVzXT86IFNweFZhbHVlUGFpcjxzdHJpbmc+O1xuICAgIFtjdHJsQ29udGFpbmVyVHlwZV0/OiBTcHhWYWx1ZVBhaXI8c3RyaW5nPjtcbiAgICBbY3RybEN1c3RvbWVyXT86IFNweFZhbHVlUGFpcjxzdHJpbmc+O1xuICAgIFtjdHJsRGVwb3RdOiBTcHhWYWx1ZVBhaXI8c3RyaW5nPjtcbiAgICBbY3RybExvY2F0aW9uXT86IFNweFZhbHVlUGFpcjxzdHJpbmc+O1xufVxuIl19
|
|
@@ -0,0 +1,236 @@
|
|
|
1
|
+
import { Component, EventEmitter, Input, Output } from '@angular/core';
|
|
2
|
+
import { FormsModule, ReactiveFormsModule } from '@angular/forms';
|
|
3
|
+
import { spxValidatorRequired, SpxValidateControlComponent } from '@softpak/components/spx-validation';
|
|
4
|
+
import { CommonModule } from '@angular/common';
|
|
5
|
+
import { SpxInputComponent, SpxInputTypeEnum } from '@softpak/components/spx-inputs';
|
|
6
|
+
import { SpxFormViewComponent } from '@softpak/components/spx-form-view';
|
|
7
|
+
import { SpxButtonComponent } from '@softpak/components/spx-button';
|
|
8
|
+
import { SpxSeverityEnum } from '@softpak/components/spx-helpers';
|
|
9
|
+
import * as i0 from "@angular/core";
|
|
10
|
+
import * as i1 from "@angular/forms";
|
|
11
|
+
export const ctrlCategory = 'ctrlCategory';
|
|
12
|
+
export const ctrlContainerStatus = 'ctrlContainerStatus';
|
|
13
|
+
export const ctrlContainerType = 'ctrlContainerType';
|
|
14
|
+
export const ctrlCustomer = 'ctrlCustomer';
|
|
15
|
+
export const ctrlDepot = 'ctrlDepot';
|
|
16
|
+
export const ctrlLocation = 'ctrlLocation';
|
|
17
|
+
export const sectionContainerInfo = 'sectionContainerInfo';
|
|
18
|
+
export const sectionCustomer = 'sectionCustomer';
|
|
19
|
+
export const sectionLocation = 'sectionLocation';
|
|
20
|
+
export class SpxStockInfoComponent {
|
|
21
|
+
get ctrlCategory() { return this.formGroup.get(ctrlCategory); }
|
|
22
|
+
get ctrlContainerStatus() { return this.formGroup.get(ctrlContainerStatus); }
|
|
23
|
+
get ctrlContainerType() { return this.formGroup.get(ctrlContainerType); }
|
|
24
|
+
get ctrlCustomer() { return this.formGroup.get(ctrlCustomer); }
|
|
25
|
+
get ctrlDepot() { return this.formGroup.get(ctrlDepot); }
|
|
26
|
+
get ctrlLocation() { return this.formGroup.get(ctrlLocation); }
|
|
27
|
+
constructor(formBuilder) {
|
|
28
|
+
this.formBuilder = formBuilder;
|
|
29
|
+
this.suggestions = {};
|
|
30
|
+
this.spxBlurCategory = new EventEmitter();
|
|
31
|
+
this.spxBlurContainerStatus = new EventEmitter();
|
|
32
|
+
this.spxBlurContainerType = new EventEmitter();
|
|
33
|
+
this.spxBlurCustomer = new EventEmitter();
|
|
34
|
+
this.spxSearchCategory = new EventEmitter();
|
|
35
|
+
this.spxSearchContainerType = new EventEmitter();
|
|
36
|
+
this.spxSearchContainerStatus = new EventEmitter();
|
|
37
|
+
this.spxSearchCustomer = new EventEmitter();
|
|
38
|
+
this.submit = new EventEmitter();
|
|
39
|
+
this.inputTypeAutocomplete = SpxInputTypeEnum.autocomplete;
|
|
40
|
+
this.inputTypeRadio = SpxInputTypeEnum.radio;
|
|
41
|
+
this.inputTypeText = SpxInputTypeEnum.text;
|
|
42
|
+
this.severitySuccess = SpxSeverityEnum.success;
|
|
43
|
+
this.sections = [
|
|
44
|
+
{
|
|
45
|
+
key: sectionLocation,
|
|
46
|
+
show: () => true,
|
|
47
|
+
title: () => this.textLocation,
|
|
48
|
+
fields: [
|
|
49
|
+
{
|
|
50
|
+
key: ctrlDepot,
|
|
51
|
+
label: () => this.textDepot,
|
|
52
|
+
type: () => SpxInputTypeEnum.text,
|
|
53
|
+
defaultValue: () => this.depot,
|
|
54
|
+
validators: () => [spxValidatorRequired()],
|
|
55
|
+
readonly: () => true,
|
|
56
|
+
suggestions: () => false,
|
|
57
|
+
afterValueChange: undefined,
|
|
58
|
+
show: () => true,
|
|
59
|
+
capitalize: () => true,
|
|
60
|
+
},
|
|
61
|
+
{
|
|
62
|
+
key: ctrlLocation,
|
|
63
|
+
label: () => this.textLocation,
|
|
64
|
+
type: () => SpxInputTypeEnum.text,
|
|
65
|
+
defaultValue: () => null,
|
|
66
|
+
validators: () => [],
|
|
67
|
+
readonly: () => false,
|
|
68
|
+
suggestions: () => false,
|
|
69
|
+
afterValueChange: undefined,
|
|
70
|
+
show: () => true,
|
|
71
|
+
capitalize: () => true,
|
|
72
|
+
},
|
|
73
|
+
]
|
|
74
|
+
},
|
|
75
|
+
{
|
|
76
|
+
key: sectionCustomer,
|
|
77
|
+
show: () => true,
|
|
78
|
+
title: () => this.textCustomer,
|
|
79
|
+
fields: [
|
|
80
|
+
{
|
|
81
|
+
key: ctrlCustomer,
|
|
82
|
+
label: () => this.textCustomer,
|
|
83
|
+
type: () => SpxInputTypeEnum.autocomplete,
|
|
84
|
+
defaultValue: () => null,
|
|
85
|
+
validators: () => [],
|
|
86
|
+
readonly: () => false,
|
|
87
|
+
suggestions: () => true,
|
|
88
|
+
afterValueChange: undefined,
|
|
89
|
+
show: () => true,
|
|
90
|
+
capitalize: () => true,
|
|
91
|
+
},
|
|
92
|
+
]
|
|
93
|
+
},
|
|
94
|
+
{
|
|
95
|
+
key: sectionContainerInfo,
|
|
96
|
+
show: () => true,
|
|
97
|
+
title: () => this.textContainerInfo,
|
|
98
|
+
fields: [
|
|
99
|
+
{
|
|
100
|
+
key: ctrlCategory,
|
|
101
|
+
label: () => this.textCategory,
|
|
102
|
+
type: () => SpxInputTypeEnum.autocomplete,
|
|
103
|
+
defaultValue: () => null,
|
|
104
|
+
validators: () => [],
|
|
105
|
+
readonly: () => false,
|
|
106
|
+
suggestions: () => true,
|
|
107
|
+
afterValueChange: undefined,
|
|
108
|
+
show: () => true,
|
|
109
|
+
capitalize: () => true,
|
|
110
|
+
},
|
|
111
|
+
{
|
|
112
|
+
key: ctrlContainerStatus,
|
|
113
|
+
label: () => this.textContainerStatus,
|
|
114
|
+
type: () => SpxInputTypeEnum.autocomplete,
|
|
115
|
+
defaultValue: () => null,
|
|
116
|
+
validators: () => [],
|
|
117
|
+
readonly: () => false,
|
|
118
|
+
suggestions: () => true,
|
|
119
|
+
afterValueChange: undefined,
|
|
120
|
+
show: () => true,
|
|
121
|
+
capitalize: () => true,
|
|
122
|
+
},
|
|
123
|
+
{
|
|
124
|
+
key: ctrlContainerType,
|
|
125
|
+
label: () => this.textContainerType,
|
|
126
|
+
type: () => SpxInputTypeEnum.autocomplete,
|
|
127
|
+
defaultValue: () => null,
|
|
128
|
+
validators: () => [],
|
|
129
|
+
readonly: () => false,
|
|
130
|
+
suggestions: () => true,
|
|
131
|
+
afterValueChange: undefined,
|
|
132
|
+
show: () => true,
|
|
133
|
+
capitalize: () => true,
|
|
134
|
+
},
|
|
135
|
+
]
|
|
136
|
+
},
|
|
137
|
+
];
|
|
138
|
+
}
|
|
139
|
+
createForm() {
|
|
140
|
+
return SpxFormViewComponent.createForm(this.formBuilder, this.sections);
|
|
141
|
+
}
|
|
142
|
+
getRawValidators(formControl) {
|
|
143
|
+
return formControl._rawValidators;
|
|
144
|
+
}
|
|
145
|
+
onBlur(data) {
|
|
146
|
+
if (data.field.key === ctrlCategory) {
|
|
147
|
+
this.spxBlurCategory.emit(data.valuePair);
|
|
148
|
+
}
|
|
149
|
+
if (data.field.key === ctrlContainerStatus) {
|
|
150
|
+
this.spxBlurContainerStatus.emit(data.valuePair);
|
|
151
|
+
}
|
|
152
|
+
if (data.field.key === ctrlContainerType) {
|
|
153
|
+
this.spxBlurContainerType.emit(data.valuePair);
|
|
154
|
+
}
|
|
155
|
+
if (data.field.key === ctrlCustomer) {
|
|
156
|
+
this.spxBlurCustomer.emit(data.valuePair);
|
|
157
|
+
}
|
|
158
|
+
}
|
|
159
|
+
onSearch(data) {
|
|
160
|
+
if (data.field.key === ctrlCategory) {
|
|
161
|
+
this.spxSearchCategory.emit(data.valuePair);
|
|
162
|
+
}
|
|
163
|
+
if (data.field.key === ctrlContainerType) {
|
|
164
|
+
this.spxSearchContainerType.emit(data.valuePair);
|
|
165
|
+
}
|
|
166
|
+
if (data.field.key === ctrlContainerStatus) {
|
|
167
|
+
this.spxSearchContainerStatus.emit(data.valuePair);
|
|
168
|
+
}
|
|
169
|
+
if (data.field.key === ctrlCustomer) {
|
|
170
|
+
this.spxSearchCustomer.emit(data.valuePair);
|
|
171
|
+
}
|
|
172
|
+
}
|
|
173
|
+
onSubmit() {
|
|
174
|
+
this.submit.emit({
|
|
175
|
+
ctrlCategory: this.ctrlCategory.value,
|
|
176
|
+
ctrlContainerStatus: this.ctrlContainerStatus.value,
|
|
177
|
+
ctrlContainerType: this.ctrlContainerType.value,
|
|
178
|
+
ctrlCustomer: this.ctrlContainerType.value,
|
|
179
|
+
ctrlDepot: this.ctrlDepot.value,
|
|
180
|
+
ctrlLocation: this.ctrlLocation.value,
|
|
181
|
+
});
|
|
182
|
+
}
|
|
183
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.1", ngImport: i0, type: SpxStockInfoComponent, deps: [{ token: i1.FormBuilder }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
184
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.1.1", type: SpxStockInfoComponent, isStandalone: true, selector: "spx-stock-info", inputs: { formGroup: "formGroup", depot: "depot", suggestions: "suggestions", textLocation: "textLocation", textDepot: "textDepot", textCustomer: "textCustomer", textContainerInfo: "textContainerInfo", textCategory: "textCategory", textContainerStatus: "textContainerStatus", textContainerType: "textContainerType" }, outputs: { spxBlurCategory: "spxBlurCategory", spxBlurContainerStatus: "spxBlurContainerStatus", spxBlurContainerType: "spxBlurContainerType", spxBlurCustomer: "spxBlurCustomer", spxSearchCategory: "spxSearchCategory", spxSearchContainerType: "spxSearchContainerType", spxSearchContainerStatus: "spxSearchContainerStatus", spxSearchCustomer: "spxSearchCustomer", submit: "submit" }, ngImport: i0, template: "<form [formGroup]=\"formGroup\" class=\"max-w-lg mx-auto flex flex-col gap-3\" (ngSubmit)=\"onSubmit()\">\n <spx-form-view\n [spxFormGroup]=\"formGroup\"\n [spxSections]=\"sections\"\n [spxSuggestions]=\"suggestions\"\n (spxBlur)=\"onBlur($event)\"\n (spxSearch)=\"onSearch($event)\">\n </spx-form-view>\n <spx-button\n [spxFullWidth]=\"true\"\n [spxSeverity]=\"severitySuccess\">\n Save\n </spx-button>\n</form>", dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i1.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "component", type: SpxButtonComponent, selector: "spx-button", inputs: ["spxDisabled", "spxClass", "spxClassObject", "spxForm", "spxFullHeight", "spxFullWidth", "spxSeverity", "spxSize", "spxTabIndex", "spxType"], outputs: ["spxClick"] }, { kind: "component", type: SpxFormViewComponent, selector: "spx-form-view", inputs: ["spxFormGroup", "spxSections", "spxSuggestions"], outputs: ["spxBlur", "spxClick", "spxSearch"] }] }); }
|
|
185
|
+
}
|
|
186
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.1", ngImport: i0, type: SpxStockInfoComponent, decorators: [{
|
|
187
|
+
type: Component,
|
|
188
|
+
args: [{ selector: 'spx-stock-info', standalone: true, imports: [
|
|
189
|
+
CommonModule,
|
|
190
|
+
FormsModule,
|
|
191
|
+
ReactiveFormsModule,
|
|
192
|
+
SpxButtonComponent,
|
|
193
|
+
SpxFormViewComponent,
|
|
194
|
+
SpxInputComponent,
|
|
195
|
+
SpxValidateControlComponent,
|
|
196
|
+
], template: "<form [formGroup]=\"formGroup\" class=\"max-w-lg mx-auto flex flex-col gap-3\" (ngSubmit)=\"onSubmit()\">\n <spx-form-view\n [spxFormGroup]=\"formGroup\"\n [spxSections]=\"sections\"\n [spxSuggestions]=\"suggestions\"\n (spxBlur)=\"onBlur($event)\"\n (spxSearch)=\"onSearch($event)\">\n </spx-form-view>\n <spx-button\n [spxFullWidth]=\"true\"\n [spxSeverity]=\"severitySuccess\">\n Save\n </spx-button>\n</form>" }]
|
|
197
|
+
}], ctorParameters: () => [{ type: i1.FormBuilder }], propDecorators: { formGroup: [{
|
|
198
|
+
type: Input
|
|
199
|
+
}], depot: [{
|
|
200
|
+
type: Input
|
|
201
|
+
}], suggestions: [{
|
|
202
|
+
type: Input
|
|
203
|
+
}], textLocation: [{
|
|
204
|
+
type: Input
|
|
205
|
+
}], textDepot: [{
|
|
206
|
+
type: Input
|
|
207
|
+
}], textCustomer: [{
|
|
208
|
+
type: Input
|
|
209
|
+
}], textContainerInfo: [{
|
|
210
|
+
type: Input
|
|
211
|
+
}], textCategory: [{
|
|
212
|
+
type: Input
|
|
213
|
+
}], textContainerStatus: [{
|
|
214
|
+
type: Input
|
|
215
|
+
}], textContainerType: [{
|
|
216
|
+
type: Input
|
|
217
|
+
}], spxBlurCategory: [{
|
|
218
|
+
type: Output
|
|
219
|
+
}], spxBlurContainerStatus: [{
|
|
220
|
+
type: Output
|
|
221
|
+
}], spxBlurContainerType: [{
|
|
222
|
+
type: Output
|
|
223
|
+
}], spxBlurCustomer: [{
|
|
224
|
+
type: Output
|
|
225
|
+
}], spxSearchCategory: [{
|
|
226
|
+
type: Output
|
|
227
|
+
}], spxSearchContainerType: [{
|
|
228
|
+
type: Output
|
|
229
|
+
}], spxSearchContainerStatus: [{
|
|
230
|
+
type: Output
|
|
231
|
+
}], spxSearchCustomer: [{
|
|
232
|
+
type: Output
|
|
233
|
+
}], submit: [{
|
|
234
|
+
type: Output
|
|
235
|
+
}] } });
|
|
236
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3B4LXN0b2NrLWluZm8uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc29mdHBhay9jb21wb25lbnRzL3NweC1zdG9jay1pbmZvL3NweC1zdG9jay1pbmZvLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3NvZnRwYWsvY29tcG9uZW50cy9zcHgtc3RvY2staW5mby9zcHgtc3RvY2staW5mby5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3ZFLE9BQU8sRUFBdUMsV0FBVyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDdkcsT0FBTyxFQUFFLG9CQUFvQixFQUFFLDJCQUEyQixFQUFFLE1BQU0sb0NBQW9DLENBQUM7QUFDdkcsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxnQkFBZ0IsRUFBZ0IsTUFBTSxnQ0FBZ0MsQ0FBQztBQUNuRyxPQUFPLEVBQWtDLG9CQUFvQixFQUFFLE1BQU0sbUNBQW1DLENBQUM7QUFDekcsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDcEUsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLGlDQUFpQyxDQUFDOzs7QUFHbEUsTUFBTSxDQUFDLE1BQU0sWUFBWSxHQUFHLGNBQWMsQ0FBQztBQUMzQyxNQUFNLENBQUMsTUFBTSxtQkFBbUIsR0FBRyxxQkFBcUIsQ0FBQztBQUN6RCxNQUFNLENBQUMsTUFBTSxpQkFBaUIsR0FBRyxtQkFBbUIsQ0FBQztBQUNyRCxNQUFNLENBQUMsTUFBTSxZQUFZLEdBQUcsY0FBYyxDQUFDO0FBQzNDLE1BQU0sQ0FBQyxNQUFNLFNBQVMsR0FB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QkFDRyxpQkFBaUI7c0JBQTFCLE1BQU07Z0JBQ0csTUFBTTtzQkFBZixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIElucHV0LCBPdXRwdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEZvcm1CdWlsZGVyLCBGb3JtQ29udHJvbCwgRm9ybUdyb3VwLCBGb3Jtc01vZHVsZSwgUmVhY3RpdmVGb3Jtc01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IHNweFZhbGlkYXRvclJlcXVpcmVkLCBTcHhWYWxpZGF0ZUNvbnRyb2xDb21wb25lbnQgfSBmcm9tICdAc29mdHBhay9jb21wb25lbnRzL3NweC12YWxpZGF0aW9uJztcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBTcHhJbnB1dENvbXBvbmVudCwgU3B4SW5wdXRUeXBlRW51bSwgU3B4VmFsdWVQYWlyIH0gZnJvbSAnQHNvZnRwYWsvY29tcG9uZW50cy9zcHgtaW5wdXRzJztcbmltcG9ydCB7IFNweEZvcm1GaWVsZEksIFNweEZvcm1TZWN0aW9uSSwgU3B4Rm9ybVZpZXdDb21wb25lbnQgfSBmcm9tICdAc29mdHBhay9jb21wb25lbnRzL3NweC1mb3JtLXZpZXcnO1xuaW1wb3J0IHsgU3B4QnV0dG9uQ29tcG9uZW50IH0gZnJvbSAnQHNvZnRwYWsvY29tcG9uZW50cy9zcHgtYnV0dG9uJztcbmltcG9ydCB7IFNweFNldmVyaXR5RW51bSB9IGZyb20gJ0Bzb2Z0cGFrL2NvbXBvbmVudHMvc3B4LWhlbHBlcnMnO1xuaW1wb3J0IHsgU3B4U3RvY2tJbmZvVmFsdWVJIH0gZnJvbSAnLi9zcHgtc3RvY2staW5mby12YWx1ZS5pbnRlcmZhY2UnO1xuXG5leHBvcnQgY29uc3QgY3RybENhdGVnb3J5ID0gJ2N0cmxDYXRlZ29yeSc7XG5leHBvcnQgY29uc3QgY3RybENvbnRhaW5lclN0YXR1cyA9ICdjdHJsQ29udGFpbmVyU3RhdHVzJztcbmV4cG9ydCBjb25zdCBjdHJsQ29udGFpbmVyVHlwZSA9ICdjdHJsQ29udGFpbmVyVHlwZSc7XG5leHBvcnQgY29uc3QgY3RybEN1c3RvbWVyID0gJ2N0cmxDdXN0b21lcic7XG5leHBvcnQgY29uc3QgY3RybERlcG90ID0gJ2N0cmxEZXBvdCc7XG5leHBvcnQgY29uc3QgY3RybExvY2F0aW9uID0gJ2N0cmxMb2NhdGlvbic7XG5leHBvcnQgY29uc3Qgc2VjdGlvbkNvbnRhaW5lckluZm8gPSAnc2VjdGlvbkNvbnRhaW5lckluZm8nO1xuZXhwb3J0IGNvbnN0IHNlY3Rpb25DdXN0b21lciA9ICdzZWN0aW9uQ3VzdG9tZXInO1xuZXhwb3J0IGNvbnN0IHNlY3Rpb25Mb2NhdGlvbiA9ICdzZWN0aW9uTG9jYXRpb24nO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdzcHgtc3RvY2staW5mbycsXG4gIHRlbXBsYXRlVXJsOiAnLi9zcHgtc3RvY2staW5mby5jb21wb25lbnQuaHRtbCcsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtcbiAgICBDb21tb25Nb2R1bGUsXG4gICAgRm9ybXNNb2R1bGUsXG4gICAgUmVhY3RpdmVGb3Jtc01vZHVsZSxcbiAgICBTcHhCdXR0b25Db21wb25lbnQsXG4gICAgU3B4Rm9ybVZpZXdDb21wb25lbnQsXG4gICAgU3B4SW5wdXRDb21wb25lbnQsXG4gICAgU3B4VmFsaWRhdGVDb250cm9sQ29tcG9uZW50LFxuICBdXG59KVxuZXhwb3J0IGNsYXNzIFNweFN0b2NrSW5mb0NvbXBvbmVudCB7XG4gIEBJbnB1dCgpIGZvcm1Hcm91cCE6IEZvcm1Hcm91cDtcbiAgQElucHV0KCkgZGVwb3QhOiBzdHJpbmc7XG4gIEBJbnB1dCgpIHN1Z2dlc3Rpb25zOiBhbnkgPSB7fTtcbiAgQElucHV0KCkgdGV4dExvY2F0aW9uITogc3RyaW5nO1xuICBASW5wdXQoKSB0ZXh0RGVwb3QhOiBzdHJpbmc7XG4gIEBJbnB1dCgpIHRleHRDdXN0b21lciE6IHN0cmluZztcbiAgQElucHV0KCkgdGV4dENvbnRhaW5lckluZm8hOiBzdHJpbmc7XG4gIEBJbnB1dCgpIHRleHRDYXRlZ29yeSE6IHN0cmluZztcbiAgQElucHV0KCkgdGV4dENvbnRhaW5lclN0YXR1cyE6IHN0cmluZztcbiAgQElucHV0KCkgdGV4dENvbnRhaW5lclR5cGUhOiBzdHJpbmc7XG4gIEBPdXRwdXQoKSBzcHhCbHVyQ2F0ZWdvcnk6IEV2ZW50RW1pdHRlcjxTcHhWYWx1ZVBhaXI8c3RyaW5nPj4gPSBuZXcgRXZlbnRFbWl0dGVyPFNweFZhbHVlUGFpcjxzdHJpbmc+PigpO1xuICBAT3V0cHV0KCkgc3B4Qmx1ckNvbnRhaW5lclN0YXR1czogRXZlbnRFbWl0dGVyPFNweFZhbHVlUGFpcjxzdHJpbmc+PiA9IG5ldyBFdmVudEVtaXR0ZXI8U3B4VmFsdWVQYWlyPHN0cmluZz4+KCk7XG4gIEBPdXRwdXQoKSBzcHhCbHVyQ29udGFpbmVyVHlwZTogRXZlbnRFbWl0dGVyPFNweFZhbHVlUGFpcjxzdHJpbmc+PiA9IG5ldyBFdmVudEVtaXR0ZXI8U3B4VmFsdWVQYWlyPHN0cmluZz4+KCk7XG4gIEBPdXRwdXQoKSBzcHhCbHVyQ3VzdG9tZXI6IEV2ZW50RW1pdHRlcjxTcHhWYWx1ZVBhaXI8c3RyaW5nPj4gPSBuZXcgRXZlbnRFbWl0dGVyPFNweFZhbHVlUGFpcjxzdHJpbmc+PigpO1xuICBAT3V0cHV0KCkgc3B4U2VhcmNoQ2F0ZWdvcnk6IEV2ZW50RW1pdHRlcjxTcHhWYWx1ZVBhaXI8c3RyaW5nPj4gPSBuZXcgRXZlbnRFbWl0dGVyPFNweFZhbHVlUGFpcjxzdHJpbmc+PigpO1xuICBAT3V0cHV0KCkgc3B4U2VhcmNoQ29udGFpbmVyVHlwZTogRXZlbnRFbWl0dGVyPFNweFZhbHVlUGFpcjxzdHJpbmc+PiA9IG5ldyBFdmVudEVtaXR0ZXI8U3B4VmFsdWVQYWlyPHN0cmluZz4+KCk7XG4gIEBPdXRwdXQoKSBzcHhTZWFyY2hDb250YWluZXJTdGF0dXM6IEV2ZW50RW1pdHRlcjxTcHhWYWx1ZVBhaXI8c3RyaW5nPj4gPSBuZXcgRXZlbnRFbWl0dGVyPFNweFZhbHVlUGFpcjxzdHJpbmc+PigpO1xuICBAT3V0cHV0KCkgc3B4U2VhcmNoQ3VzdG9tZXI6IEV2ZW50RW1pdHRlcjxTcHhWYWx1ZVBhaXI8c3RyaW5nPj4gPSBuZXcgRXZlbnRFbWl0dGVyPFNweFZhbHVlUGFpcjxzdHJpbmc+PigpO1xuICBAT3V0cHV0KCkgc3VibWl0OiBFdmVudEVtaXR0ZXI8U3B4U3RvY2tJbmZvVmFsdWVJPiA9IG5ldyBFdmVudEVtaXR0ZXI8U3B4U3RvY2tJbmZvVmFsdWVJPigpO1xuXG4gIGlucHV0VHlwZUF1dG9jb21wbGV0ZSA9IFNweElucHV0VHlwZUVudW0uYXV0b2NvbXBsZXRlO1xuICBpbnB1dFR5cGVSYWRpbyA9IFNweElucHV0VHlwZUVudW0ucmFkaW87XG4gIGlucHV0VHlwZVRleHQgPSBTcHhJbnB1dFR5cGVFbnVtLnRleHQ7XG4gIHNldmVyaXR5U3VjY2VzcyA9IFNweFNldmVyaXR5RW51bS5zdWNjZXNzO1xuXG4gIHNlY3Rpb25zOiBTcHhGb3JtU2VjdGlvbklbXSA9IFtcbiAgICB7XG4gICAgICBrZXk6IHNlY3Rpb25Mb2NhdGlvbixcbiAgICAgIHNob3c6ICgpID0+IHRydWUsXG4gICAgICB0aXRsZTogKCkgPT4gdGhpcy50ZXh0TG9jYXRpb24sXG4gICAgICBmaWVsZHM6IFtcbiAgICAgICAge1xuICAgICAgICAgIGtleTogY3RybERlcG90LFxuICAgICAgICAgIGxhYmVsOiAoKSA9PiB0aGlzLnRleHREZXBvdCxcbiAgICAgICAgICB0eXBlOiAoKSA9PiBTcHhJbnB1dFR5cGVFbnVtLnRleHQsXG4gICAgICAgICAgZGVmYXVsdFZhbHVlOiAoKSA9PiB0aGlzLmRlcG90LFxuICAgICAgICAgIHZhbGlkYXRvcnM6ICgpID0+IFtzcHhWYWxpZGF0b3JSZXF1aXJlZCgpXSxcbiAgICAgICAgICByZWFkb25seTogKCkgPT4gdHJ1ZSxcbiAgICAgICAgICBzdWdnZXN0aW9uczogKCkgPT4gZmFsc2UsXG4gICAgICAgICAgYWZ0ZXJWYWx1ZUNoYW5nZTogdW5kZWZpbmVkLFxuICAgICAgICAgIHNob3c6ICgpID0+IHRydWUsXG4gICAgICAgICAgY2FwaXRhbGl6ZTogKCkgPT4gdHJ1ZSxcbiAgICAgICAgfSxcbiAgICAgICAge1xuICAgICAgICAgIGtleTogY3RybExvY2F0aW9uLFxuICAgICAgICAgIGxhYmVsOiAoKSA9PiB0aGlzLnRleHRMb2NhdGlvbixcbiAgICAgICAgICB0eXBlOiAoKSA9PiBTcHhJbnB1dFR5cGVFbnVtLnRleHQsXG4gICAgICAgICAgZGVmYXVsdFZhbHVlOiAoKSA9PiBudWxsLFxuICAgICAgICAgIHZhbGlkYXRvcnM6ICgpID0+IFtdLFxuICAgICAgICAgIHJlYWRvbmx5OiAoKSA9PiBmYWxzZSxcbiAgICAgICAgICBzdWdnZXN0aW9uczogKCkgPT4gZmFsc2UsXG4gICAgICAgICAgYWZ0ZXJWYWx1ZUNoYW5nZTogdW5kZWZpbmVkLFxuICAgICAgICAgIHNob3c6ICgpID0+IHRydWUsXG4gICAgICAgICAgY2FwaXRhbGl6ZTogKCkgPT4gdHJ1ZSxcbiAgICAgICAgfSxcbiAgICAgIF1cbiAgICB9LFxuICAgIHtcbiAgICAgIGtleTogc2VjdGlvbkN1c3RvbWVyLFxuICAgICAgc2hvdzogKCkgPT4gdHJ1ZSxcbiAgICAgIHRpdGxlOiAoKSA9PiB0aGlzLnRleHRDdXN0b21lcixcbiAgICAgIGZpZWxkczogW1xuICAgICAgICB7XG4gICAgICAgICAga2V5OiBjdHJsQ3VzdG9tZXIsXG4gICAgICAgICAgbGFiZWw6ICgpID0+IHRoaXMudGV4dEN1c3RvbWVyLFxuICAgICAgICAgIHR5cGU6ICgpID0+IFNweElucHV0VHlwZUVudW0uYXV0b2NvbXBsZXRlLFxuICAgICAgICAgIGRlZmF1bHRWYWx1ZTogKCkgPT4gbnVsbCxcbiAgICAgICAgICB2YWxpZGF0b3JzOiAoKSA9PiBbXSxcbiAgICAgICAgICByZWFkb25seTogKCkgPT4gZmFsc2UsXG4gICAgICAgICAgc3VnZ2VzdGlvbnM6ICgpID0+IHRydWUsXG4gICAgICAgICAgYWZ0ZXJWYWx1ZUNoYW5nZTogdW5kZWZpbmVkLFxuICAgICAgICAgIHNob3c6ICgpID0+IHRydWUsXG4gICAgICAgICAgY2FwaXRhbGl6ZTogKCkgPT4gdHJ1ZSxcbiAgICAgICAgfSxcbiAgICAgIF1cbiAgICB9LFxuICAgIHtcbiAgICAgIGtleTogc2VjdGlvbkNvbnRhaW5lckluZm8sXG4gICAgICBzaG93OiAoKSA9PiB0cnVlLFxuICAgICAgdGl0bGU6ICgpID0+IHRoaXMudGV4dENvbnRhaW5lckluZm8sXG4gICAgICBmaWVsZHM6IFtcbiAgICAgICAge1xuICAgICAgICAgIGtleTogY3RybENhdGVnb3J5LFxuICAgICAgICAgIGxhYmVsOiAoKSA9PiB0aGlzLnRleHRDYXRlZ29yeSxcbiAgICAgICAgICB0eXBlOiAoKSA9PiBTcHhJbnB1dFR5cGVFbnVtLmF1dG9jb21wbGV0ZSxcbiAgICAgICAgICBkZWZhdWx0VmFsdWU6ICgpID0+IG51bGwsXG4gICAgICAgICAgdmFsaWRhdG9yczogKCkgPT4gW10sXG4gICAgICAgICAgcmVhZG9ubHk6ICgpID0+IGZhbHNlLFxuICAgICAgICAgIHN1Z2dlc3Rpb25zOiAoKSA9PiB0cnVlLFxuICAgICAgICAgIGFmdGVyVmFsdWVDaGFuZ2U6IHVuZGVmaW5lZCxcbiAgICAgICAgICBzaG93OiAoKSA9PiB0cnVlLFxuICAgICAgICAgIGNhcGl0YWxpemU6ICgpID0+IHRydWUsXG4gICAgICAgIH0sXG4gICAgICAgIHtcbiAgICAgICAgICBrZXk6IGN0cmxDb250YWluZXJTdGF0dXMsXG4gICAgICAgICAgbGFiZWw6ICgpID0+IHRoaXMudGV4dENvbnRhaW5lclN0YXR1cyxcbiAgICAgICAgICB0eXBlOiAoKSA9PiBTcHhJbnB1dFR5cGVFbnVtLmF1dG9jb21wbGV0ZSxcbiAgICAgICAgICBkZWZhdWx0VmFsdWU6ICgpID0+IG51bGwsXG4gICAgICAgICAgdmFsaWRhdG9yczogKCkgPT4gW10sXG4gICAgICAgICAgcmVhZG9ubHk6ICgpID0+IGZhbHNlLFxuICAgICAgICAgIHN1Z2dlc3Rpb25zOiAoKSA9PiB0cnVlLFxuICAgICAgICAgIGFmdGVyVmFsdWVDaGFuZ2U6IHVuZGVmaW5lZCxcbiAgICAgICAgICBzaG93OiAoKSA9PiB0cnVlLFxuICAgICAgICAgIGNhcGl0YWxpemU6ICgpID0+IHRydWUsXG4gICAgICAgIH0sXG4gICAgICAgIHtcbiAgICAgICAgICBrZXk6IGN0cmxDb250YWluZXJUeXBlLFxuICAgICAgICAgIGxhYmVsOiAoKSA9PiB0aGlzLnRleHRDb250YWluZXJUeXBlLFxuICAgICAgICAgIHR5cGU6ICgpID0+IFNweElucHV0VHlwZUVudW0uYXV0b2NvbXBsZXRlLFxuICAgICAgICAgIGRlZmF1bHRWYWx1ZTogKCkgPT4gbnVsbCxcbiAgICAgICAgICB2YWxpZGF0b3JzOiAoKSA9PiBbXSxcbiAgICAgICAgICByZWFkb25seTogKCkgPT4gZmFsc2UsXG4gICAgICAgICAgc3VnZ2VzdGlvbnM6ICgpID0+IHRydWUsXG4gICAgICAgICAgYWZ0ZXJWYWx1ZUNoYW5nZTogdW5kZWZpbmVkLFxuICAgICAgICAgIHNob3c6ICgpID0+IHRydWUsXG4gICAgICAgICAgY2FwaXRhbGl6ZTogKCkgPT4gdHJ1ZSxcbiAgICAgICAgfSxcbiAgICAgIF1cbiAgICB9LFxuICBdO1xuXG4gIGdldCBjdHJsQ2F0ZWdvcnkoKTogRm9ybUNvbnRyb2wgeyByZXR1cm4gdGhpcy5mb3JtR3JvdXAuZ2V0KGN0cmxDYXRlZ29yeSkgYXMgRm9ybUNvbnRyb2w7IH1cbiAgZ2V0IGN0cmxDb250YWluZXJTdGF0dXMoKTogRm9ybUNvbnRyb2wgeyByZXR1cm4gdGhpcy5mb3JtR3JvdXAuZ2V0KGN0cmxDb250YWluZXJTdGF0dXMpIGFzIEZvcm1Db250cm9sOyB9XG4gIGdldCBjdHJsQ29udGFpbmVyVHlwZSgpOiBGb3JtQ29udHJvbCB7IHJldHVybiB0aGlzLmZvcm1Hcm91cC5nZXQoY3RybENvbnRhaW5lclR5cGUpIGFzIEZvcm1Db250cm9sOyB9XG4gIGdldCBjdHJsQ3VzdG9tZXIoKTogRm9ybUNvbnRyb2wgeyByZXR1cm4gdGhpcy5mb3JtR3JvdXAuZ2V0KGN0cmxDdXN0b21lcikgYXMgRm9ybUNvbnRyb2w7IH1cbiAgZ2V0IGN0cmxEZXBvdCgpOiBGb3JtQ29udHJvbCB7IHJldHVybiB0aGlzLmZvcm1Hcm91cC5nZXQoY3RybERlcG90KSBhcyBGb3JtQ29udHJvbDsgfVxuICBnZXQgY3RybExvY2F0aW9uKCk6IEZvcm1Db250cm9sIHsgcmV0dXJuIHRoaXMuZm9ybUdyb3VwLmdldChjdHJsTG9jYXRpb24pIGFzIEZvcm1Db250cm9sOyB9XG5cbiAgY29uc3RydWN0b3IocmVhZG9ubHkgZm9ybUJ1aWxkZXI6IEZvcm1CdWlsZGVyKSB7XG4gIH1cblxuICBjcmVhdGVGb3JtKCk6IEZvcm1Hcm91cCB7XG4gICAgcmV0dXJuIFNweEZvcm1WaWV3Q29tcG9uZW50LmNyZWF0ZUZvcm0odGhpcy5mb3JtQnVpbGRlciwgdGhpcy5zZWN0aW9ucyk7XG4gIH1cblxuICBnZXRSYXdWYWxpZGF0b3JzKGZvcm1Db250cm9sOiBGb3JtQ29udHJvbCkge1xuICAgIHJldHVybiAoZm9ybUNvbnRyb2wgYXMgYW55KS5fcmF3VmFsaWRhdG9ycztcbiAgfVxuXG4gIG9uQmx1cihkYXRhOiB7IGZpZWxkOiBTcHhGb3JtRmllbGRJLCB2YWx1ZVBhaXI6IFNweFZhbHVlUGFpcjxhbnk+IH0pIHtcbiAgICBpZiAoZGF0YS5maWVsZC5rZXkgPT09IGN0cmxDYXRlZ29yeSkge1xuICAgICAgdGhpcy5zcHhCbHVyQ2F0ZWdvcnkuZW1pdChkYXRhLnZhbHVlUGFpcik7XG4gICAgfVxuICAgIGlmIChkYXRhLmZpZWxkLmtleSA9PT0gY3RybENvbnRhaW5lclN0YXR1cykge1xuICAgICAgdGhpcy5zcHhCbHVyQ29udGFpbmVyU3RhdHVzLmVtaXQoZGF0YS52YWx1ZVBhaXIpO1xuICAgIH1cbiAgICBpZiAoZGF0YS5maWVsZC5rZXkgPT09IGN0cmxDb250YWluZXJUeXBlKSB7XG4gICAgICB0aGlzLnNweEJsdXJDb250YWluZXJUeXBlLmVtaXQoZGF0YS52YWx1ZVBhaXIpO1xuICAgIH1cbiAgICBpZiAoZGF0YS5maWVsZC5rZXkgPT09IGN0cmxDdXN0b21lcikge1xuICAgICAgdGhpcy5zcHhCbHVyQ3VzdG9tZXIuZW1pdChkYXRhLnZhbHVlUGFpcik7XG4gICAgfVxuICB9XG5cbiAgb25TZWFyY2goZGF0YTogeyBmaWVsZDogU3B4Rm9ybUZpZWxkSSwgdmFsdWVQYWlyOiBTcHhWYWx1ZVBhaXI8YW55PiB9KSB7XG4gICAgaWYgKGRhdGEuZmllbGQua2V5ID09PSBjdHJsQ2F0ZWdvcnkpIHtcbiAgICAgIHRoaXMuc3B4U2VhcmNoQ2F0ZWdvcnkuZW1pdChkYXRhLnZhbHVlUGFpcik7XG4gICAgfVxuICAgIGlmIChkYXRhLmZpZWxkLmtleSA9PT0gY3RybENvbnRhaW5lclR5cGUpIHtcbiAgICAgIHRoaXMuc3B4U2VhcmNoQ29udGFpbmVyVHlwZS5lbWl0KGRhdGEudmFsdWVQYWlyKTtcbiAgICB9XG4gICAgaWYgKGRhdGEuZmllbGQua2V5ID09PSBjdHJsQ29udGFpbmVyU3RhdHVzKSB7XG4gICAgICB0aGlzLnNweFNlYXJjaENvbnRhaW5lclN0YXR1cy5lbWl0KGRhdGEudmFsdWVQYWlyKTtcbiAgICB9XG4gICAgaWYgKGRhdGEuZmllbGQua2V5ID09PSBjdHJsQ3VzdG9tZXIpIHtcbiAgICAgIHRoaXMuc3B4U2VhcmNoQ3VzdG9tZXIuZW1pdChkYXRhLnZhbHVlUGFpcik7XG4gICAgfVxuICB9XG5cbiAgb25TdWJtaXQoKTogdm9pZCB7XG4gICAgdGhpcy5zdWJtaXQuZW1pdCh7XG4gICAgICBjdHJsQ2F0ZWdvcnk6IHRoaXMuY3RybENhdGVnb3J5LnZhbHVlLFxuICAgICAgY3RybENvbnRhaW5lclN0YXR1czogdGhpcy5jdHJsQ29udGFpbmVyU3RhdHVzLnZhbHVlLFxuICAgICAgY3RybENvbnRhaW5lclR5cGU6IHRoaXMuY3RybENvbnRhaW5lclR5cGUudmFsdWUsXG4gICAgICBjdHJsQ3VzdG9tZXI6IHRoaXMuY3RybENvbnRhaW5lclR5cGUudmFsdWUsXG4gICAgICBjdHJsRGVwb3Q6IHRoaXMuY3RybERlcG90LnZhbHVlLFxuICAgICAgY3RybExvY2F0aW9uOiB0aGlzLmN0cmxMb2NhdGlvbi52YWx1ZSxcbiAgICB9KTtcbiAgfVxufVxuIiwiPGZvcm0gW2Zvcm1Hcm91cF09XCJmb3JtR3JvdXBcIiBjbGFzcz1cIm1heC13LWxnIG14LWF1dG8gZmxleCBmbGV4LWNvbCBnYXAtM1wiIChuZ1N1Ym1pdCk9XCJvblN1Ym1pdCgpXCI+XG4gIDxzcHgtZm9ybS12aWV3XG4gICAgW3NweEZvcm1Hcm91cF09XCJmb3JtR3JvdXBcIlxuICAgIFtzcHhTZWN0aW9uc109XCJzZWN0aW9uc1wiXG4gICAgW3NweFN1Z2dlc3Rpb25zXT1cInN1Z2dlc3Rpb25zXCJcbiAgICAoc3B4Qmx1cik9XCJvbkJsdXIoJGV2ZW50KVwiXG4gICAgKHNweFNlYXJjaCk9XCJvblNlYXJjaCgkZXZlbnQpXCI+XG4gIDwvc3B4LWZvcm0tdmlldz5cbiAgPHNweC1idXR0b25cbiAgICBbc3B4RnVsbFdpZHRoXT1cInRydWVcIlxuICAgIFtzcHhTZXZlcml0eV09XCJzZXZlcml0eVN1Y2Nlc3NcIj5cbiAgICBTYXZlXG4gIDwvc3B4LWJ1dHRvbj5cbjwvZm9ybT4iXX0=
|
|
@@ -90,7 +90,7 @@ class SpxAutocompleteSearchComponent {
|
|
|
90
90
|
});
|
|
91
91
|
}
|
|
92
92
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.1", ngImport: i0, type: SpxAutocompleteSearchComponent, deps: [{ token: i1.FormBuilder }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
93
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.1.1", type: SpxAutocompleteSearchComponent, isStandalone: true, selector: "spx-autocomplete-search", inputs: { spxSuggestions: "spxSuggestions", spxField: "spxField", txtOptions: "txtOptions", txtQuery: "txtQuery", txtSubmit: "txtSubmit", spxValuePair: "spxValuePair" }, outputs: { spxCancel: "spxCancel", spxSearch: "spxSearch", spxSubmit: "spxSubmit" }, ngImport: i0, template: "<form class=\"bg-black fixed pt-16 z-50 top-0 left-0 right-0 bottom-0\" [formGroup]=\"formGroup\" (ngSubmit)=\"onSubmit()\">\n <div class=\"h-full w-full px-3 flex flex-col gap-3\">\n <div class=\"grow
|
|
93
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.1.1", type: SpxAutocompleteSearchComponent, isStandalone: true, selector: "spx-autocomplete-search", inputs: { spxSuggestions: "spxSuggestions", spxField: "spxField", txtOptions: "txtOptions", txtQuery: "txtQuery", txtSubmit: "txtSubmit", spxValuePair: "spxValuePair" }, outputs: { spxCancel: "spxCancel", spxSearch: "spxSearch", spxSubmit: "spxSubmit" }, ngImport: i0, template: "<form class=\"bg-black fixed pt-16 z-50 top-0 left-0 right-0 bottom-0\" [formGroup]=\"formGroup\" (ngSubmit)=\"onSubmit()\">\n <div class=\"h-full w-full px-3 flex flex-col gap-3\">\n <div class=\"grow flex flex-col gap-3 overflow-y-auto\">\n <spx-input [formControl]=\"ctrlQuery\" [spxLabel]=\"txtQuery\" [spxType]=\"inputTypeText\">\n </spx-input>\n <spx-input [formControl]=\"ctrlOptions\" [spxLabel]=\"txtOptions\" [spxSuggestions]=\"spxSuggestions\"\n [spxType]=\"inputTypeRadio\">\n </spx-input>\n </div>\n <div class=\"py-3 flex flex-col gap-3\">\n <spx-button [spxFullWidth]=\"true\" [spxSeverity]=\"severitySuccess\">\n Save\n </spx-button>\n <spx-button [spxFullWidth]=\"true\" [spxSeverity]=\"severityError\" [spxType]=\"'button'\" (spxClick)=\"onCancel()\">\n Cancel\n </spx-button>\n </div>\n </div>\n</form>", dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i1.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "directive", type: i1.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "component", type: SpxButtonComponent, selector: "spx-button", inputs: ["spxDisabled", "spxClass", "spxClassObject", "spxForm", "spxFullHeight", "spxFullWidth", "spxSeverity", "spxSize", "spxTabIndex", "spxType"], outputs: ["spxClick"] }, { kind: "component", type: SpxInputComponent, selector: "spx-input", inputs: ["spxLabel", "spxMax", "spxMin", "spxName", "spxReadonly", "spxAutofocus", "spxInputMode", "spxPattern", "spxRequired", "spxSelectMonth", "spxSelectDay", "spxShowEdit", "spxShowHelp", "spxShowLabel", "spxCompact", "spxShowClear", "spxShowSearch", "spxShowValidationMessages", "spxStep", "spxSuggestions", "spxType", "spxValidators", "value", "spxCapitalize", "spxFocused"], outputs: ["spxBlur", "spxClear", "spxChange", "spxFocus", "spxEdit", "spxHelp", "spxSearch"] }] }); }
|
|
94
94
|
}
|
|
95
95
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.1", ngImport: i0, type: SpxAutocompleteSearchComponent, decorators: [{
|
|
96
96
|
type: Component,
|
|
@@ -101,7 +101,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.1", ngImpor
|
|
|
101
101
|
SpxButtonComponent,
|
|
102
102
|
SpxInputComponent,
|
|
103
103
|
SpxValidateControlComponent,
|
|
104
|
-
], template: "<form class=\"bg-black fixed pt-16 z-50 top-0 left-0 right-0 bottom-0\" [formGroup]=\"formGroup\" (ngSubmit)=\"onSubmit()\">\n <div class=\"h-full w-full px-3 flex flex-col gap-3\">\n <div class=\"grow
|
|
104
|
+
], template: "<form class=\"bg-black fixed pt-16 z-50 top-0 left-0 right-0 bottom-0\" [formGroup]=\"formGroup\" (ngSubmit)=\"onSubmit()\">\n <div class=\"h-full w-full px-3 flex flex-col gap-3\">\n <div class=\"grow flex flex-col gap-3 overflow-y-auto\">\n <spx-input [formControl]=\"ctrlQuery\" [spxLabel]=\"txtQuery\" [spxType]=\"inputTypeText\">\n </spx-input>\n <spx-input [formControl]=\"ctrlOptions\" [spxLabel]=\"txtOptions\" [spxSuggestions]=\"spxSuggestions\"\n [spxType]=\"inputTypeRadio\">\n </spx-input>\n </div>\n <div class=\"py-3 flex flex-col gap-3\">\n <spx-button [spxFullWidth]=\"true\" [spxSeverity]=\"severitySuccess\">\n Save\n </spx-button>\n <spx-button [spxFullWidth]=\"true\" [spxSeverity]=\"severityError\" [spxType]=\"'button'\" (spxClick)=\"onCancel()\">\n Cancel\n </spx-button>\n </div>\n </div>\n</form>" }]
|
|
105
105
|
}], ctorParameters: () => [{ type: i1.FormBuilder }], propDecorators: { spxSuggestions: [{
|
|
106
106
|
type: Input
|
|
107
107
|
}], spxField: [{
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"softpak-components-spx-form-view.mjs","sources":["../../../../projects/softpak/components/spx-form-view/spx-autocomplete-search.component.ts","../../../../projects/softpak/components/spx-form-view/spx-autocomplete-search.component.html","../../../../projects/softpak/components/spx-form-view/spx-form-view.component.ts","../../../../projects/softpak/components/spx-form-view/softpak-components-spx-form-view.ts"],"sourcesContent":["import { Component, EventEmitter, Input, OnDestroy, OnInit, Output } from '@angular/core';\nimport { FormBuilder, FormControl, FormGroup, FormsModule, ReactiveFormsModule } from '@angular/forms';\nimport { Subscription, debounceTime } from 'rxjs';\nimport { CommonModule } from '@angular/common';\nimport { SpxInputComponent, SpxInputTypeEnum, SpxValuePair } from '@softpak/components/spx-inputs';\nimport { SpxButtonComponent } from '@softpak/components/spx-button';\nimport { SpxSeverityEnum } from '@softpak/components/spx-helpers';\nimport { SpxFormFieldI } from './spx-form-field.interface';\nimport { SpxFormSectionI } from './spx-form-section.interface';\nimport { SpxValidateControlComponent } from '@softpak/components/spx-validation';\n\nexport const sectionAutocompleteSearch = 'autocompleteSearch';\nexport const ctrlQuery = 'query';\nexport const ctrlOptions = 'options';\n\n@Component({\n selector: 'spx-autocomplete-search',\n templateUrl: './spx-autocomplete-search.component.html',\n standalone: true,\n imports: [\n CommonModule,\n FormsModule,\n ReactiveFormsModule,\n SpxButtonComponent,\n SpxInputComponent,\n SpxValidateControlComponent,\n ]\n})\nexport class SpxAutocompleteSearchComponent implements OnInit, OnDestroy {\n formGroup!: FormGroup;\n @Input() spxSuggestions: SpxValuePair<any>[] = [];\n @Input() spxField!: SpxFormFieldI;\n @Input() txtOptions!: string;\n @Input() txtQuery!: string;\n @Input() txtSubmit!: string;\n @Input() spxValuePair!: SpxValuePair<any>;\n @Output() spxCancel: EventEmitter<void> = new EventEmitter<void>();\n @Output() spxSearch: EventEmitter<SpxValuePair<any>> = new EventEmitter<SpxValuePair<any>>(); \n @Output() spxSubmit: EventEmitter<SpxValuePair<any>> = new EventEmitter<SpxValuePair<any>>();\n inputTypeRadio = SpxInputTypeEnum.radio;\n inputTypeText = SpxInputTypeEnum.text;\n severityError = SpxSeverityEnum.error;\n severitySuccess = SpxSeverityEnum.success;\n \n sections: SpxFormSectionI[] = [\n {\n key: sectionAutocompleteSearch,\n showTitle: () => false,\n fields: [\n {\n key: ctrlQuery,\n type: () => SpxInputTypeEnum.text,\n label: () => this.txtQuery,\n capitalize: () => true,\n },\n {\n key: ctrlOptions,\n type: () => SpxInputTypeEnum.radio,\n label: () => this.txtOptions,\n },\n ]\n }\n ];\n\n get ctrlQuery(): FormControl { return this.formGroup.get(ctrlQuery) as FormControl; }\n get ctrlOptions(): FormControl { return this.formGroup.get(ctrlOptions) as FormControl; }\n\n private subSelection?: Subscription;\n private subQuery?: Subscription;\n\n constructor(readonly formBuilder: FormBuilder) {\n this.createForm();\n }\n\n ngOnInit(): void {\n this.listenToSelection();\n this.listenToQuery();\n this.ctrlQuery.setValue(this.spxValuePair, { emitEvent: false });\n this.spxSearch.emit(this.spxValuePair);\n }\n\n ngOnDestroy(): void {\n if (this.subSelection) {\n this.subSelection.unsubscribe();\n }\n if (this.subQuery) {\n this.subQuery.unsubscribe();\n }\n }\n\n private createForm(): void {\n this.formGroup = this.formBuilder.group({\n [ctrlQuery]: [null],\n [ctrlOptions]: [null],\n });\n }\n\n getRawValidators(formControl: FormControl) {\n return (formControl as any)._rawValidators;\n }\n\n onCancel(): void {\n this.spxCancel.emit();\n }\n \n onSubmit(): void {\n this.spxSubmit.emit(this.ctrlQuery.value);\n }\n\n private listenToQuery(): void {\n this.subQuery = this.ctrlQuery.valueChanges.pipe(debounceTime(500)).subscribe(valuePair => {\n this.spxSearch.emit(valuePair);\n });\n }\n\n private listenToSelection(): void {\n this.subSelection = this.ctrlOptions.valueChanges.subscribe(valuePair => {\n this.ctrlQuery.setValue(valuePair);\n });\n }\n}\n","<form class=\"bg-black fixed pt-16 z-50 top-0 left-0 right-0 bottom-0\" [formGroup]=\"formGroup\" (ngSubmit)=\"onSubmit()\">\n <div class=\"h-full w-full px-3 flex flex-col gap-3\">\n <div class=\"grow mx-auto flex flex-col gap-3 overflow-y-auto\">\n <spx-input [formControl]=\"ctrlQuery\" [spxLabel]=\"txtQuery\" [spxType]=\"inputTypeText\">\n </spx-input>\n <spx-input [formControl]=\"ctrlOptions\" [spxLabel]=\"txtOptions\" [spxSuggestions]=\"spxSuggestions\"\n [spxType]=\"inputTypeRadio\">\n </spx-input>\n </div>\n <div class=\"py-3 flex flex-col gap-3\">\n <spx-button [spxFullWidth]=\"true\" [spxSeverity]=\"severitySuccess\">\n Save\n </spx-button>\n <spx-button [spxFullWidth]=\"true\" [spxSeverity]=\"severityError\" [spxType]=\"'button'\" (spxClick)=\"onCancel()\">\n Cancel\n </spx-button>\n </div>\n </div>\n</form>","import { JsonPipe, NgFor, NgIf } from '@angular/common';\nimport { Component, EventEmitter, Input, Output, QueryList, ViewChild, ViewChildren } from '@angular/core';\nimport { SpxFormSectionI } from './spx-form-section.interface';\nimport { SpxFormSectionComponent } from '@softpak/components/spx-form-section';\nimport { SpxInputComponent, SpxInputTypeEnum, SpxValuePair } from '@softpak/components/spx-inputs';\nimport { SpxCapitalizePipe } from '@softpak/components/spx-capitalize';\nimport { AbstractControl, FormBuilder, FormGroup, FormsModule, ReactiveFormsModule } from '@angular/forms';\nimport { SpxFormFieldI } from './spx-form-field.interface';\nimport { SpxAutocompleteSearchComponent } from './spx-autocomplete-search.component';\nimport { SpxValidateControlComponent } from '@softpak/components/spx-validation';\nimport { TranslateModule } from '@ngx-translate/core';\nimport { SpxButtonComponent } from '@softpak/components/spx-button';\n\n@Component({\n selector: 'spx-form-view',\n standalone: true,\n imports: [\n FormsModule,\n ReactiveFormsModule,\n JsonPipe,\n NgIf,\n NgFor,\n SpxAutocompleteSearchComponent,\n SpxButtonComponent,\n SpxCapitalizePipe,\n SpxFormSectionComponent,\n SpxInputComponent,\n SpxValidateControlComponent,\n TranslateModule,\n ],\n template: `<spx-autocomplete-search\n *ngIf=\"autocompleteField\"\n [spxField]=\"autocompleteField\"\n [spxSuggestions]=\"this.spxSuggestions[autocompleteField.key]\"\n [spxValuePair]=\"$any(this.spxFormGroup.get(autocompleteField.key)).value\"\n [txtOptions]=\"'Options'\"\n [txtQuery]=\"'Query'\"\n [txtSubmit]=\"'Save'\"\n (spxCancel)=\"onAutocompleteCancel()\"\n (spxSearch)=\"onAutocompleteSearch($event)\"\n (spxSubmit)=\"onAutocompleteSave($event)\">\n </spx-autocomplete-search>\n <spx-form-section\n *ngFor=\"let spxSection of spxSections; let spxSectionIndex = index;\"\n [spxShowTitle]=\"!spxSection.showTitle || spxSection.showTitle()\"\n [spxIndex]=\"spxSectionIndex + 1\"\n [spxTitle]=\"spxSection.title ? (spxSection.title() | translate | capitalize) : undefined\">\n <ng-container *ngFor=\"let spxField of spxSection.fields; let spxFieldIndex = index;\">\n <ng-container *ngIf=\"spxField.show === undefined || spxField.show()\">\n <spx-button *ngIf=\"spxField.type() === typeButton\"\n [spxFullWidth]=\"true\"\n [spxSeverity]=\"spxField.severity ? spxField.severity() : undefined\"\n [spxType]=\"'button'\"\n (spxClick)=\"onClick(spxField)\"\n >{{ (spxField.label ? spxField.label() : spxField.key) | translate | capitalize }}</spx-button>\n\n <spx-input\n *ngIf=\"spxField.type() === typeOverlay || spxField.type() === typeOverlayNumber || spxField.type() === typeFloat || spxField.type() === typeNumber || spxField.type() === typeText || spxField.type() === typeAutocomplete || spxField.type() === typeNumericKeyboard\"\n [formControl]=\"$any(this.spxFormGroup.get(spxField.key))\"\n [spxAutofocus]=\"spxField.autofocus ? spxField.autofocus() : false\"\n [spxCapitalize]=\"spxField.capitalize ? spxField.capitalize() : false\"\n [spxLabel]=\"(spxField.label ? spxField.label() : spxField.key) | translate | capitalize\"\n [spxName]=\"spxField.key\"\n [spxPattern]=\"spxField.type() === typeNumericKeyboard ? '\\\\d*' : undefined\"\n [spxReadonly]=\"spxField.readonly ? spxField.readonly() : false\"\n [spxRequired]=\"hasRequiredField(this.spxFormGroup.get(spxField.key)!)\"\n [spxShowSearch]=\"spxField.type() === typeAutocomplete\"\n [spxShowHelp]=\"false\"\n [spxShowValidationMessages]=\"this.spxFormGroup.get(spxField.key)! && this.spxFormGroup.get(spxField.key)!.errors && this.spxFormGroup.get(spxField.key)!.touched\"\n [spxStep]=\"spxField.step ? spxField.step() : undefined\"\n [spxType]=\"spxField.type()\"\n [spxValidators]=\"getRawValidators(this.spxFormGroup.get(spxField.key)!)\"\n [spxSuggestions]=\"spxField.suggestionsFixed ? spxField.suggestionsFixed() : this.spxSuggestions[spxField.key]\"\n (spxBlur)=\"onBlur(spxField)\"\n (spxSearch)=\"onSearch(spxField)\">\n <spx-validate-control [control]=\"$any(this.spxFormGroup.get(spxField.key))\" [label]=\"(spxField.label ? spxField.label() : spxField.key)| translate | capitalize\"></spx-validate-control>\n </spx-input>\n\n <spx-input\n *ngIf=\"spxField.type() === typeRadio\"\n [formControl]=\"$any(this.spxFormGroup.get(spxField.key))\"\n [spxLabel]=\"(spxField.label ? spxField.label() : spxField.key) | translate | capitalize\"\n [spxName]=\"spxField.key\"\n [spxReadonly]=\"spxField.readonly ? spxField.readonly() : false\"\n [spxRequired]=\"hasRequiredField(this.spxFormGroup.get(spxField.key)!)\"\n [spxShowHelp]=\"false\"\n [spxShowValidationMessages]=\"this.spxFormGroup.get(spxField.key)! && this.spxFormGroup.get(spxField.key)!.errors && this.spxFormGroup.get(spxField.key)!.touched\"\n [spxSuggestions]=\"spxField.suggestionsFixed ? spxField.suggestionsFixed() : this.spxSuggestions[spxField.key]\"\n [spxType]=\"typeRadio\"\n [spxValidators]=\"getRawValidators(this.spxFormGroup.get(spxField.key)!)\">\n <spx-validate-control [control]=\"$any(this.spxFormGroup.get(spxField.key))\" [label]=\"(spxField.label ? spxField.label() : spxField.key) | translate | capitalize\"></spx-validate-control>\n </spx-input>\n </ng-container>\n </ng-container>\n </spx-form-section>`,\n})\nexport class SpxFormViewComponent {\n @Input() spxFormGroup!: FormGroup;\n @Input() spxSections!: SpxFormSectionI[];\n @Input() spxSuggestions!: any;\n @Output() spxBlur: EventEmitter<{ field: SpxFormFieldI, valuePair: SpxValuePair<any> }> = new EventEmitter<{ field: SpxFormFieldI, valuePair: SpxValuePair<any> }>();\n @Output() spxClick: EventEmitter<{ field: SpxFormFieldI }> = new EventEmitter<{ field: SpxFormFieldI }>();\n @Output() spxSearch: EventEmitter<{ field: SpxFormFieldI, valuePair: SpxValuePair<any> }> = new EventEmitter<{ field: SpxFormFieldI, valuePair: SpxValuePair<any> }>();\n @ViewChildren(SpxInputComponent) spxInputs!: QueryList<SpxInputComponent>;\n autocompleteField?: SpxFormFieldI;\n\n typeAutocomplete = SpxInputTypeEnum.autocomplete;\n typeButton = SpxInputTypeEnum.button;\n typeFloat = SpxInputTypeEnum.float;\n typeNumber = SpxInputTypeEnum.number;\n typeRadio = SpxInputTypeEnum.radio;\n typeText = SpxInputTypeEnum.text;\n typeNumericKeyboard = SpxInputTypeEnum.textNumericKeyboard;\n typeOverlay = SpxInputTypeEnum.overlay;\n typeOverlayNumber = SpxInputTypeEnum.overlayNumber;\n\n setAutofocus(key: string): void {\n const field = this.spxInputs.find(input => input.spxName === key);\n if (field) {\n field.setFocusIn();\n }\n }\n\n onBlur(field: SpxFormFieldI) {\n this.spxBlur.emit({\n field,\n valuePair: this.spxFormGroup.get(field.key)!.value,\n });\n }\n\n onClick(field: SpxFormFieldI) {\n this.spxClick.emit({\n field,\n });\n }\n\n onAutocompleteCancel(): void {\n this.autocompleteField = undefined;\n }\n\n onAutocompleteSearch(valuePair: SpxValuePair<any>): void {\n console.log('spxFormView - onAutocompleteSearch: ', valuePair, this.autocompleteField);\n if (this.autocompleteField) {\n this.spxSearch.emit({\n field: this.autocompleteField,\n valuePair,\n });\n }\n }\n\n onAutocompleteSave(valuePair: SpxValuePair<any>) {\n this.spxFormGroup.get(this.autocompleteField!.key)?.setValue(valuePair);\n this.autocompleteField = undefined;\n }\n\n onSearch(field: SpxFormFieldI) {\n this.autocompleteField = field;\n }\n\n getRawValidators(formControl: AbstractControl) {\n // eslint-disable-next-line no-underscore-dangle\n return (formControl as any)._rawValidators;\n }\n\n hasRequiredField(abstractControl: AbstractControl): boolean {\n if (abstractControl.validator) {\n const validator = abstractControl.validator({} as AbstractControl);\n if (validator && validator['required']) {\n return true;\n }\n }\n if ((abstractControl as any)['controls']) {\n for (const controlName in (abstractControl as any)['controls']) {\n if ((abstractControl as any)['controls'][controlName]) {\n if (this.hasRequiredField((abstractControl as any)['controls'][controlName])) {\n return true;\n }\n }\n }\n }\n return false;\n }\n\n static initialFormValue(sections: SpxFormSectionI[]) {\n const formObject: any = {};\n sections.forEach(section => {\n section.fields.forEach(field => {\n formObject[field.key] = [field.defaultValue ? field.defaultValue() : null, field.validators ? [...field.validators()] : []];\n });\n });\n return formObject;\n }\n\n static createForm(formBuilder: FormBuilder, sections: SpxFormSectionI[]): FormGroup {\n return formBuilder.group(this.initialFormValue(sections));\n }\n\n constructor(readonly formBuilder: FormBuilder) {\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"softpak-components-spx-form-view.mjs","sources":["../../../../projects/softpak/components/spx-form-view/spx-autocomplete-search.component.ts","../../../../projects/softpak/components/spx-form-view/spx-autocomplete-search.component.html","../../../../projects/softpak/components/spx-form-view/spx-form-view.component.ts","../../../../projects/softpak/components/spx-form-view/softpak-components-spx-form-view.ts"],"sourcesContent":["import { Component, EventEmitter, Input, OnDestroy, OnInit, Output } from '@angular/core';\nimport { FormBuilder, FormControl, FormGroup, FormsModule, ReactiveFormsModule } from '@angular/forms';\nimport { Subscription, debounceTime } from 'rxjs';\nimport { CommonModule } from '@angular/common';\nimport { SpxInputComponent, SpxInputTypeEnum, SpxValuePair } from '@softpak/components/spx-inputs';\nimport { SpxButtonComponent } from '@softpak/components/spx-button';\nimport { SpxSeverityEnum } from '@softpak/components/spx-helpers';\nimport { SpxFormFieldI } from './spx-form-field.interface';\nimport { SpxFormSectionI } from './spx-form-section.interface';\nimport { SpxValidateControlComponent } from '@softpak/components/spx-validation';\n\nexport const sectionAutocompleteSearch = 'autocompleteSearch';\nexport const ctrlQuery = 'query';\nexport const ctrlOptions = 'options';\n\n@Component({\n selector: 'spx-autocomplete-search',\n templateUrl: './spx-autocomplete-search.component.html',\n standalone: true,\n imports: [\n CommonModule,\n FormsModule,\n ReactiveFormsModule,\n SpxButtonComponent,\n SpxInputComponent,\n SpxValidateControlComponent,\n ]\n})\nexport class SpxAutocompleteSearchComponent implements OnInit, OnDestroy {\n formGroup!: FormGroup;\n @Input() spxSuggestions: SpxValuePair<any>[] = [];\n @Input() spxField!: SpxFormFieldI;\n @Input() txtOptions!: string;\n @Input() txtQuery!: string;\n @Input() txtSubmit!: string;\n @Input() spxValuePair!: SpxValuePair<any>;\n @Output() spxCancel: EventEmitter<void> = new EventEmitter<void>();\n @Output() spxSearch: EventEmitter<SpxValuePair<any>> = new EventEmitter<SpxValuePair<any>>(); \n @Output() spxSubmit: EventEmitter<SpxValuePair<any>> = new EventEmitter<SpxValuePair<any>>();\n inputTypeRadio = SpxInputTypeEnum.radio;\n inputTypeText = SpxInputTypeEnum.text;\n severityError = SpxSeverityEnum.error;\n severitySuccess = SpxSeverityEnum.success;\n \n sections: SpxFormSectionI[] = [\n {\n key: sectionAutocompleteSearch,\n showTitle: () => false,\n fields: [\n {\n key: ctrlQuery,\n type: () => SpxInputTypeEnum.text,\n label: () => this.txtQuery,\n capitalize: () => true,\n },\n {\n key: ctrlOptions,\n type: () => SpxInputTypeEnum.radio,\n label: () => this.txtOptions,\n },\n ]\n }\n ];\n\n get ctrlQuery(): FormControl { return this.formGroup.get(ctrlQuery) as FormControl; }\n get ctrlOptions(): FormControl { return this.formGroup.get(ctrlOptions) as FormControl; }\n\n private subSelection?: Subscription;\n private subQuery?: Subscription;\n\n constructor(readonly formBuilder: FormBuilder) {\n this.createForm();\n }\n\n ngOnInit(): void {\n this.listenToSelection();\n this.listenToQuery();\n this.ctrlQuery.setValue(this.spxValuePair, { emitEvent: false });\n this.spxSearch.emit(this.spxValuePair);\n }\n\n ngOnDestroy(): void {\n if (this.subSelection) {\n this.subSelection.unsubscribe();\n }\n if (this.subQuery) {\n this.subQuery.unsubscribe();\n }\n }\n\n private createForm(): void {\n this.formGroup = this.formBuilder.group({\n [ctrlQuery]: [null],\n [ctrlOptions]: [null],\n });\n }\n\n getRawValidators(formControl: FormControl) {\n return (formControl as any)._rawValidators;\n }\n\n onCancel(): void {\n this.spxCancel.emit();\n }\n \n onSubmit(): void {\n this.spxSubmit.emit(this.ctrlQuery.value);\n }\n\n private listenToQuery(): void {\n this.subQuery = this.ctrlQuery.valueChanges.pipe(debounceTime(500)).subscribe(valuePair => {\n this.spxSearch.emit(valuePair);\n });\n }\n\n private listenToSelection(): void {\n this.subSelection = this.ctrlOptions.valueChanges.subscribe(valuePair => {\n this.ctrlQuery.setValue(valuePair);\n });\n }\n}\n","<form class=\"bg-black fixed pt-16 z-50 top-0 left-0 right-0 bottom-0\" [formGroup]=\"formGroup\" (ngSubmit)=\"onSubmit()\">\n <div class=\"h-full w-full px-3 flex flex-col gap-3\">\n <div class=\"grow flex flex-col gap-3 overflow-y-auto\">\n <spx-input [formControl]=\"ctrlQuery\" [spxLabel]=\"txtQuery\" [spxType]=\"inputTypeText\">\n </spx-input>\n <spx-input [formControl]=\"ctrlOptions\" [spxLabel]=\"txtOptions\" [spxSuggestions]=\"spxSuggestions\"\n [spxType]=\"inputTypeRadio\">\n </spx-input>\n </div>\n <div class=\"py-3 flex flex-col gap-3\">\n <spx-button [spxFullWidth]=\"true\" [spxSeverity]=\"severitySuccess\">\n Save\n </spx-button>\n <spx-button [spxFullWidth]=\"true\" [spxSeverity]=\"severityError\" [spxType]=\"'button'\" (spxClick)=\"onCancel()\">\n Cancel\n </spx-button>\n </div>\n </div>\n</form>","import { JsonPipe, NgFor, NgIf } from '@angular/common';\nimport { Component, EventEmitter, Input, Output, QueryList, ViewChild, ViewChildren } from '@angular/core';\nimport { SpxFormSectionI } from './spx-form-section.interface';\nimport { SpxFormSectionComponent } from '@softpak/components/spx-form-section';\nimport { SpxInputComponent, SpxInputTypeEnum, SpxValuePair } from '@softpak/components/spx-inputs';\nimport { SpxCapitalizePipe } from '@softpak/components/spx-capitalize';\nimport { AbstractControl, FormBuilder, FormGroup, FormsModule, ReactiveFormsModule } from '@angular/forms';\nimport { SpxFormFieldI } from './spx-form-field.interface';\nimport { SpxAutocompleteSearchComponent } from './spx-autocomplete-search.component';\nimport { SpxValidateControlComponent } from '@softpak/components/spx-validation';\nimport { TranslateModule } from '@ngx-translate/core';\nimport { SpxButtonComponent } from '@softpak/components/spx-button';\n\n@Component({\n selector: 'spx-form-view',\n standalone: true,\n imports: [\n FormsModule,\n ReactiveFormsModule,\n JsonPipe,\n NgIf,\n NgFor,\n SpxAutocompleteSearchComponent,\n SpxButtonComponent,\n SpxCapitalizePipe,\n SpxFormSectionComponent,\n SpxInputComponent,\n SpxValidateControlComponent,\n TranslateModule,\n ],\n template: `<spx-autocomplete-search\n *ngIf=\"autocompleteField\"\n [spxField]=\"autocompleteField\"\n [spxSuggestions]=\"this.spxSuggestions[autocompleteField.key]\"\n [spxValuePair]=\"$any(this.spxFormGroup.get(autocompleteField.key)).value\"\n [txtOptions]=\"'Options'\"\n [txtQuery]=\"'Query'\"\n [txtSubmit]=\"'Save'\"\n (spxCancel)=\"onAutocompleteCancel()\"\n (spxSearch)=\"onAutocompleteSearch($event)\"\n (spxSubmit)=\"onAutocompleteSave($event)\">\n </spx-autocomplete-search>\n <spx-form-section\n *ngFor=\"let spxSection of spxSections; let spxSectionIndex = index;\"\n [spxShowTitle]=\"!spxSection.showTitle || spxSection.showTitle()\"\n [spxIndex]=\"spxSectionIndex + 1\"\n [spxTitle]=\"spxSection.title ? (spxSection.title() | translate | capitalize) : undefined\">\n <ng-container *ngFor=\"let spxField of spxSection.fields; let spxFieldIndex = index;\">\n <ng-container *ngIf=\"spxField.show === undefined || spxField.show()\">\n <spx-button *ngIf=\"spxField.type() === typeButton\"\n [spxFullWidth]=\"true\"\n [spxSeverity]=\"spxField.severity ? spxField.severity() : undefined\"\n [spxType]=\"'button'\"\n (spxClick)=\"onClick(spxField)\"\n >{{ (spxField.label ? spxField.label() : spxField.key) | translate | capitalize }}</spx-button>\n\n <spx-input\n *ngIf=\"spxField.type() === typeOverlay || spxField.type() === typeOverlayNumber || spxField.type() === typeFloat || spxField.type() === typeNumber || spxField.type() === typeText || spxField.type() === typeAutocomplete || spxField.type() === typeNumericKeyboard\"\n [formControl]=\"$any(this.spxFormGroup.get(spxField.key))\"\n [spxAutofocus]=\"spxField.autofocus ? spxField.autofocus() : false\"\n [spxCapitalize]=\"spxField.capitalize ? spxField.capitalize() : false\"\n [spxLabel]=\"(spxField.label ? spxField.label() : spxField.key) | translate | capitalize\"\n [spxName]=\"spxField.key\"\n [spxPattern]=\"spxField.type() === typeNumericKeyboard ? '\\\\d*' : undefined\"\n [spxReadonly]=\"spxField.readonly ? spxField.readonly() : false\"\n [spxRequired]=\"hasRequiredField(this.spxFormGroup.get(spxField.key)!)\"\n [spxShowSearch]=\"spxField.type() === typeAutocomplete\"\n [spxShowHelp]=\"false\"\n [spxShowValidationMessages]=\"this.spxFormGroup.get(spxField.key)! && this.spxFormGroup.get(spxField.key)!.errors && this.spxFormGroup.get(spxField.key)!.touched\"\n [spxStep]=\"spxField.step ? spxField.step() : undefined\"\n [spxType]=\"spxField.type()\"\n [spxValidators]=\"getRawValidators(this.spxFormGroup.get(spxField.key)!)\"\n [spxSuggestions]=\"spxField.suggestionsFixed ? spxField.suggestionsFixed() : this.spxSuggestions[spxField.key]\"\n (spxBlur)=\"onBlur(spxField)\"\n (spxSearch)=\"onSearch(spxField)\">\n <spx-validate-control [control]=\"$any(this.spxFormGroup.get(spxField.key))\" [label]=\"(spxField.label ? spxField.label() : spxField.key)| translate | capitalize\"></spx-validate-control>\n </spx-input>\n\n <spx-input\n *ngIf=\"spxField.type() === typeRadio\"\n [formControl]=\"$any(this.spxFormGroup.get(spxField.key))\"\n [spxLabel]=\"(spxField.label ? spxField.label() : spxField.key) | translate | capitalize\"\n [spxName]=\"spxField.key\"\n [spxReadonly]=\"spxField.readonly ? spxField.readonly() : false\"\n [spxRequired]=\"hasRequiredField(this.spxFormGroup.get(spxField.key)!)\"\n [spxShowHelp]=\"false\"\n [spxShowValidationMessages]=\"this.spxFormGroup.get(spxField.key)! && this.spxFormGroup.get(spxField.key)!.errors && this.spxFormGroup.get(spxField.key)!.touched\"\n [spxSuggestions]=\"spxField.suggestionsFixed ? spxField.suggestionsFixed() : this.spxSuggestions[spxField.key]\"\n [spxType]=\"typeRadio\"\n [spxValidators]=\"getRawValidators(this.spxFormGroup.get(spxField.key)!)\">\n <spx-validate-control [control]=\"$any(this.spxFormGroup.get(spxField.key))\" [label]=\"(spxField.label ? spxField.label() : spxField.key) | translate | capitalize\"></spx-validate-control>\n </spx-input>\n </ng-container>\n </ng-container>\n </spx-form-section>`,\n})\nexport class SpxFormViewComponent {\n @Input() spxFormGroup!: FormGroup;\n @Input() spxSections!: SpxFormSectionI[];\n @Input() spxSuggestions!: any;\n @Output() spxBlur: EventEmitter<{ field: SpxFormFieldI, valuePair: SpxValuePair<any> }> = new EventEmitter<{ field: SpxFormFieldI, valuePair: SpxValuePair<any> }>();\n @Output() spxClick: EventEmitter<{ field: SpxFormFieldI }> = new EventEmitter<{ field: SpxFormFieldI }>();\n @Output() spxSearch: EventEmitter<{ field: SpxFormFieldI, valuePair: SpxValuePair<any> }> = new EventEmitter<{ field: SpxFormFieldI, valuePair: SpxValuePair<any> }>();\n @ViewChildren(SpxInputComponent) spxInputs!: QueryList<SpxInputComponent>;\n autocompleteField?: SpxFormFieldI;\n\n typeAutocomplete = SpxInputTypeEnum.autocomplete;\n typeButton = SpxInputTypeEnum.button;\n typeFloat = SpxInputTypeEnum.float;\n typeNumber = SpxInputTypeEnum.number;\n typeRadio = SpxInputTypeEnum.radio;\n typeText = SpxInputTypeEnum.text;\n typeNumericKeyboard = SpxInputTypeEnum.textNumericKeyboard;\n typeOverlay = SpxInputTypeEnum.overlay;\n typeOverlayNumber = SpxInputTypeEnum.overlayNumber;\n\n setAutofocus(key: string): void {\n const field = this.spxInputs.find(input => input.spxName === key);\n if (field) {\n field.setFocusIn();\n }\n }\n\n onBlur(field: SpxFormFieldI) {\n this.spxBlur.emit({\n field,\n valuePair: this.spxFormGroup.get(field.key)!.value,\n });\n }\n\n onClick(field: SpxFormFieldI) {\n this.spxClick.emit({\n field,\n });\n }\n\n onAutocompleteCancel(): void {\n this.autocompleteField = undefined;\n }\n\n onAutocompleteSearch(valuePair: SpxValuePair<any>): void {\n console.log('spxFormView - onAutocompleteSearch: ', valuePair, this.autocompleteField);\n if (this.autocompleteField) {\n this.spxSearch.emit({\n field: this.autocompleteField,\n valuePair,\n });\n }\n }\n\n onAutocompleteSave(valuePair: SpxValuePair<any>) {\n this.spxFormGroup.get(this.autocompleteField!.key)?.setValue(valuePair);\n this.autocompleteField = undefined;\n }\n\n onSearch(field: SpxFormFieldI) {\n this.autocompleteField = field;\n }\n\n getRawValidators(formControl: AbstractControl) {\n // eslint-disable-next-line no-underscore-dangle\n return (formControl as any)._rawValidators;\n }\n\n hasRequiredField(abstractControl: AbstractControl): boolean {\n if (abstractControl.validator) {\n const validator = abstractControl.validator({} as AbstractControl);\n if (validator && validator['required']) {\n return true;\n }\n }\n if ((abstractControl as any)['controls']) {\n for (const controlName in (abstractControl as any)['controls']) {\n if ((abstractControl as any)['controls'][controlName]) {\n if (this.hasRequiredField((abstractControl as any)['controls'][controlName])) {\n return true;\n }\n }\n }\n }\n return false;\n }\n\n static initialFormValue(sections: SpxFormSectionI[]) {\n const formObject: any = {};\n sections.forEach(section => {\n section.fields.forEach(field => {\n formObject[field.key] = [field.defaultValue ? field.defaultValue() : null, field.validators ? [...field.validators()] : []];\n });\n });\n return formObject;\n }\n\n static createForm(formBuilder: FormBuilder, sections: SpxFormSectionI[]): FormGroup {\n return formBuilder.group(this.initialFormValue(sections));\n }\n\n constructor(readonly formBuilder: FormBuilder) {\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,243 @@
|
|
|
1
|
+
import * as i0 from '@angular/core';
|
|
2
|
+
import { EventEmitter, Component, Input, Output } from '@angular/core';
|
|
3
|
+
import * as i1 from '@angular/forms';
|
|
4
|
+
import { FormsModule, ReactiveFormsModule } from '@angular/forms';
|
|
5
|
+
import { spxValidatorRequired, SpxValidateControlComponent } from '@softpak/components/spx-validation';
|
|
6
|
+
import { CommonModule } from '@angular/common';
|
|
7
|
+
import { SpxInputTypeEnum, SpxInputComponent } from '@softpak/components/spx-inputs';
|
|
8
|
+
import { SpxFormViewComponent } from '@softpak/components/spx-form-view';
|
|
9
|
+
import { SpxButtonComponent } from '@softpak/components/spx-button';
|
|
10
|
+
import { SpxSeverityEnum } from '@softpak/components/spx-helpers';
|
|
11
|
+
|
|
12
|
+
const ctrlCategory = 'ctrlCategory';
|
|
13
|
+
const ctrlContainerStatus = 'ctrlContainerStatus';
|
|
14
|
+
const ctrlContainerType = 'ctrlContainerType';
|
|
15
|
+
const ctrlCustomer = 'ctrlCustomer';
|
|
16
|
+
const ctrlDepot = 'ctrlDepot';
|
|
17
|
+
const ctrlLocation = 'ctrlLocation';
|
|
18
|
+
const sectionContainerInfo = 'sectionContainerInfo';
|
|
19
|
+
const sectionCustomer = 'sectionCustomer';
|
|
20
|
+
const sectionLocation = 'sectionLocation';
|
|
21
|
+
class SpxStockInfoComponent {
|
|
22
|
+
get ctrlCategory() { return this.formGroup.get(ctrlCategory); }
|
|
23
|
+
get ctrlContainerStatus() { return this.formGroup.get(ctrlContainerStatus); }
|
|
24
|
+
get ctrlContainerType() { return this.formGroup.get(ctrlContainerType); }
|
|
25
|
+
get ctrlCustomer() { return this.formGroup.get(ctrlCustomer); }
|
|
26
|
+
get ctrlDepot() { return this.formGroup.get(ctrlDepot); }
|
|
27
|
+
get ctrlLocation() { return this.formGroup.get(ctrlLocation); }
|
|
28
|
+
constructor(formBuilder) {
|
|
29
|
+
this.formBuilder = formBuilder;
|
|
30
|
+
this.suggestions = {};
|
|
31
|
+
this.spxBlurCategory = new EventEmitter();
|
|
32
|
+
this.spxBlurContainerStatus = new EventEmitter();
|
|
33
|
+
this.spxBlurContainerType = new EventEmitter();
|
|
34
|
+
this.spxBlurCustomer = new EventEmitter();
|
|
35
|
+
this.spxSearchCategory = new EventEmitter();
|
|
36
|
+
this.spxSearchContainerType = new EventEmitter();
|
|
37
|
+
this.spxSearchContainerStatus = new EventEmitter();
|
|
38
|
+
this.spxSearchCustomer = new EventEmitter();
|
|
39
|
+
this.submit = new EventEmitter();
|
|
40
|
+
this.inputTypeAutocomplete = SpxInputTypeEnum.autocomplete;
|
|
41
|
+
this.inputTypeRadio = SpxInputTypeEnum.radio;
|
|
42
|
+
this.inputTypeText = SpxInputTypeEnum.text;
|
|
43
|
+
this.severitySuccess = SpxSeverityEnum.success;
|
|
44
|
+
this.sections = [
|
|
45
|
+
{
|
|
46
|
+
key: sectionLocation,
|
|
47
|
+
show: () => true,
|
|
48
|
+
title: () => this.textLocation,
|
|
49
|
+
fields: [
|
|
50
|
+
{
|
|
51
|
+
key: ctrlDepot,
|
|
52
|
+
label: () => this.textDepot,
|
|
53
|
+
type: () => SpxInputTypeEnum.text,
|
|
54
|
+
defaultValue: () => this.depot,
|
|
55
|
+
validators: () => [spxValidatorRequired()],
|
|
56
|
+
readonly: () => true,
|
|
57
|
+
suggestions: () => false,
|
|
58
|
+
afterValueChange: undefined,
|
|
59
|
+
show: () => true,
|
|
60
|
+
capitalize: () => true,
|
|
61
|
+
},
|
|
62
|
+
{
|
|
63
|
+
key: ctrlLocation,
|
|
64
|
+
label: () => this.textLocation,
|
|
65
|
+
type: () => SpxInputTypeEnum.text,
|
|
66
|
+
defaultValue: () => null,
|
|
67
|
+
validators: () => [],
|
|
68
|
+
readonly: () => false,
|
|
69
|
+
suggestions: () => false,
|
|
70
|
+
afterValueChange: undefined,
|
|
71
|
+
show: () => true,
|
|
72
|
+
capitalize: () => true,
|
|
73
|
+
},
|
|
74
|
+
]
|
|
75
|
+
},
|
|
76
|
+
{
|
|
77
|
+
key: sectionCustomer,
|
|
78
|
+
show: () => true,
|
|
79
|
+
title: () => this.textCustomer,
|
|
80
|
+
fields: [
|
|
81
|
+
{
|
|
82
|
+
key: ctrlCustomer,
|
|
83
|
+
label: () => this.textCustomer,
|
|
84
|
+
type: () => SpxInputTypeEnum.autocomplete,
|
|
85
|
+
defaultValue: () => null,
|
|
86
|
+
validators: () => [],
|
|
87
|
+
readonly: () => false,
|
|
88
|
+
suggestions: () => true,
|
|
89
|
+
afterValueChange: undefined,
|
|
90
|
+
show: () => true,
|
|
91
|
+
capitalize: () => true,
|
|
92
|
+
},
|
|
93
|
+
]
|
|
94
|
+
},
|
|
95
|
+
{
|
|
96
|
+
key: sectionContainerInfo,
|
|
97
|
+
show: () => true,
|
|
98
|
+
title: () => this.textContainerInfo,
|
|
99
|
+
fields: [
|
|
100
|
+
{
|
|
101
|
+
key: ctrlCategory,
|
|
102
|
+
label: () => this.textCategory,
|
|
103
|
+
type: () => SpxInputTypeEnum.autocomplete,
|
|
104
|
+
defaultValue: () => null,
|
|
105
|
+
validators: () => [],
|
|
106
|
+
readonly: () => false,
|
|
107
|
+
suggestions: () => true,
|
|
108
|
+
afterValueChange: undefined,
|
|
109
|
+
show: () => true,
|
|
110
|
+
capitalize: () => true,
|
|
111
|
+
},
|
|
112
|
+
{
|
|
113
|
+
key: ctrlContainerStatus,
|
|
114
|
+
label: () => this.textContainerStatus,
|
|
115
|
+
type: () => SpxInputTypeEnum.autocomplete,
|
|
116
|
+
defaultValue: () => null,
|
|
117
|
+
validators: () => [],
|
|
118
|
+
readonly: () => false,
|
|
119
|
+
suggestions: () => true,
|
|
120
|
+
afterValueChange: undefined,
|
|
121
|
+
show: () => true,
|
|
122
|
+
capitalize: () => true,
|
|
123
|
+
},
|
|
124
|
+
{
|
|
125
|
+
key: ctrlContainerType,
|
|
126
|
+
label: () => this.textContainerType,
|
|
127
|
+
type: () => SpxInputTypeEnum.autocomplete,
|
|
128
|
+
defaultValue: () => null,
|
|
129
|
+
validators: () => [],
|
|
130
|
+
readonly: () => false,
|
|
131
|
+
suggestions: () => true,
|
|
132
|
+
afterValueChange: undefined,
|
|
133
|
+
show: () => true,
|
|
134
|
+
capitalize: () => true,
|
|
135
|
+
},
|
|
136
|
+
]
|
|
137
|
+
},
|
|
138
|
+
];
|
|
139
|
+
}
|
|
140
|
+
createForm() {
|
|
141
|
+
return SpxFormViewComponent.createForm(this.formBuilder, this.sections);
|
|
142
|
+
}
|
|
143
|
+
getRawValidators(formControl) {
|
|
144
|
+
return formControl._rawValidators;
|
|
145
|
+
}
|
|
146
|
+
onBlur(data) {
|
|
147
|
+
if (data.field.key === ctrlCategory) {
|
|
148
|
+
this.spxBlurCategory.emit(data.valuePair);
|
|
149
|
+
}
|
|
150
|
+
if (data.field.key === ctrlContainerStatus) {
|
|
151
|
+
this.spxBlurContainerStatus.emit(data.valuePair);
|
|
152
|
+
}
|
|
153
|
+
if (data.field.key === ctrlContainerType) {
|
|
154
|
+
this.spxBlurContainerType.emit(data.valuePair);
|
|
155
|
+
}
|
|
156
|
+
if (data.field.key === ctrlCustomer) {
|
|
157
|
+
this.spxBlurCustomer.emit(data.valuePair);
|
|
158
|
+
}
|
|
159
|
+
}
|
|
160
|
+
onSearch(data) {
|
|
161
|
+
if (data.field.key === ctrlCategory) {
|
|
162
|
+
this.spxSearchCategory.emit(data.valuePair);
|
|
163
|
+
}
|
|
164
|
+
if (data.field.key === ctrlContainerType) {
|
|
165
|
+
this.spxSearchContainerType.emit(data.valuePair);
|
|
166
|
+
}
|
|
167
|
+
if (data.field.key === ctrlContainerStatus) {
|
|
168
|
+
this.spxSearchContainerStatus.emit(data.valuePair);
|
|
169
|
+
}
|
|
170
|
+
if (data.field.key === ctrlCustomer) {
|
|
171
|
+
this.spxSearchCustomer.emit(data.valuePair);
|
|
172
|
+
}
|
|
173
|
+
}
|
|
174
|
+
onSubmit() {
|
|
175
|
+
this.submit.emit({
|
|
176
|
+
ctrlCategory: this.ctrlCategory.value,
|
|
177
|
+
ctrlContainerStatus: this.ctrlContainerStatus.value,
|
|
178
|
+
ctrlContainerType: this.ctrlContainerType.value,
|
|
179
|
+
ctrlCustomer: this.ctrlContainerType.value,
|
|
180
|
+
ctrlDepot: this.ctrlDepot.value,
|
|
181
|
+
ctrlLocation: this.ctrlLocation.value,
|
|
182
|
+
});
|
|
183
|
+
}
|
|
184
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.1", ngImport: i0, type: SpxStockInfoComponent, deps: [{ token: i1.FormBuilder }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
185
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.1.1", type: SpxStockInfoComponent, isStandalone: true, selector: "spx-stock-info", inputs: { formGroup: "formGroup", depot: "depot", suggestions: "suggestions", textLocation: "textLocation", textDepot: "textDepot", textCustomer: "textCustomer", textContainerInfo: "textContainerInfo", textCategory: "textCategory", textContainerStatus: "textContainerStatus", textContainerType: "textContainerType" }, outputs: { spxBlurCategory: "spxBlurCategory", spxBlurContainerStatus: "spxBlurContainerStatus", spxBlurContainerType: "spxBlurContainerType", spxBlurCustomer: "spxBlurCustomer", spxSearchCategory: "spxSearchCategory", spxSearchContainerType: "spxSearchContainerType", spxSearchContainerStatus: "spxSearchContainerStatus", spxSearchCustomer: "spxSearchCustomer", submit: "submit" }, ngImport: i0, template: "<form [formGroup]=\"formGroup\" class=\"max-w-lg mx-auto flex flex-col gap-3\" (ngSubmit)=\"onSubmit()\">\n <spx-form-view\n [spxFormGroup]=\"formGroup\"\n [spxSections]=\"sections\"\n [spxSuggestions]=\"suggestions\"\n (spxBlur)=\"onBlur($event)\"\n (spxSearch)=\"onSearch($event)\">\n </spx-form-view>\n <spx-button\n [spxFullWidth]=\"true\"\n [spxSeverity]=\"severitySuccess\">\n Save\n </spx-button>\n</form>", dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i1.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "component", type: SpxButtonComponent, selector: "spx-button", inputs: ["spxDisabled", "spxClass", "spxClassObject", "spxForm", "spxFullHeight", "spxFullWidth", "spxSeverity", "spxSize", "spxTabIndex", "spxType"], outputs: ["spxClick"] }, { kind: "component", type: SpxFormViewComponent, selector: "spx-form-view", inputs: ["spxFormGroup", "spxSections", "spxSuggestions"], outputs: ["spxBlur", "spxClick", "spxSearch"] }] }); }
|
|
186
|
+
}
|
|
187
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.1", ngImport: i0, type: SpxStockInfoComponent, decorators: [{
|
|
188
|
+
type: Component,
|
|
189
|
+
args: [{ selector: 'spx-stock-info', standalone: true, imports: [
|
|
190
|
+
CommonModule,
|
|
191
|
+
FormsModule,
|
|
192
|
+
ReactiveFormsModule,
|
|
193
|
+
SpxButtonComponent,
|
|
194
|
+
SpxFormViewComponent,
|
|
195
|
+
SpxInputComponent,
|
|
196
|
+
SpxValidateControlComponent,
|
|
197
|
+
], template: "<form [formGroup]=\"formGroup\" class=\"max-w-lg mx-auto flex flex-col gap-3\" (ngSubmit)=\"onSubmit()\">\n <spx-form-view\n [spxFormGroup]=\"formGroup\"\n [spxSections]=\"sections\"\n [spxSuggestions]=\"suggestions\"\n (spxBlur)=\"onBlur($event)\"\n (spxSearch)=\"onSearch($event)\">\n </spx-form-view>\n <spx-button\n [spxFullWidth]=\"true\"\n [spxSeverity]=\"severitySuccess\">\n Save\n </spx-button>\n</form>" }]
|
|
198
|
+
}], ctorParameters: () => [{ type: i1.FormBuilder }], propDecorators: { formGroup: [{
|
|
199
|
+
type: Input
|
|
200
|
+
}], depot: [{
|
|
201
|
+
type: Input
|
|
202
|
+
}], suggestions: [{
|
|
203
|
+
type: Input
|
|
204
|
+
}], textLocation: [{
|
|
205
|
+
type: Input
|
|
206
|
+
}], textDepot: [{
|
|
207
|
+
type: Input
|
|
208
|
+
}], textCustomer: [{
|
|
209
|
+
type: Input
|
|
210
|
+
}], textContainerInfo: [{
|
|
211
|
+
type: Input
|
|
212
|
+
}], textCategory: [{
|
|
213
|
+
type: Input
|
|
214
|
+
}], textContainerStatus: [{
|
|
215
|
+
type: Input
|
|
216
|
+
}], textContainerType: [{
|
|
217
|
+
type: Input
|
|
218
|
+
}], spxBlurCategory: [{
|
|
219
|
+
type: Output
|
|
220
|
+
}], spxBlurContainerStatus: [{
|
|
221
|
+
type: Output
|
|
222
|
+
}], spxBlurContainerType: [{
|
|
223
|
+
type: Output
|
|
224
|
+
}], spxBlurCustomer: [{
|
|
225
|
+
type: Output
|
|
226
|
+
}], spxSearchCategory: [{
|
|
227
|
+
type: Output
|
|
228
|
+
}], spxSearchContainerType: [{
|
|
229
|
+
type: Output
|
|
230
|
+
}], spxSearchContainerStatus: [{
|
|
231
|
+
type: Output
|
|
232
|
+
}], spxSearchCustomer: [{
|
|
233
|
+
type: Output
|
|
234
|
+
}], submit: [{
|
|
235
|
+
type: Output
|
|
236
|
+
}] } });
|
|
237
|
+
|
|
238
|
+
/**
|
|
239
|
+
* Generated bundle index. Do not edit.
|
|
240
|
+
*/
|
|
241
|
+
|
|
242
|
+
export { SpxStockInfoComponent, ctrlCategory, ctrlContainerStatus, ctrlContainerType, ctrlCustomer, ctrlDepot, ctrlLocation, sectionContainerInfo, sectionCustomer, sectionLocation };
|
|
243
|
+
//# sourceMappingURL=softpak-components-spx-stock-info.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"softpak-components-spx-stock-info.mjs","sources":["../../../../projects/softpak/components/spx-stock-info/spx-stock-info.component.ts","../../../../projects/softpak/components/spx-stock-info/spx-stock-info.component.html","../../../../projects/softpak/components/spx-stock-info/softpak-components-spx-stock-info.ts"],"sourcesContent":["import { Component, EventEmitter, Input, Output } from '@angular/core';\nimport { FormBuilder, FormControl, FormGroup, FormsModule, ReactiveFormsModule } from '@angular/forms';\nimport { spxValidatorRequired, SpxValidateControlComponent } from '@softpak/components/spx-validation';\nimport { CommonModule } from '@angular/common';\nimport { SpxInputComponent, SpxInputTypeEnum, SpxValuePair } from '@softpak/components/spx-inputs';\nimport { SpxFormFieldI, SpxFormSectionI, SpxFormViewComponent } from '@softpak/components/spx-form-view';\nimport { SpxButtonComponent } from '@softpak/components/spx-button';\nimport { SpxSeverityEnum } from '@softpak/components/spx-helpers';\nimport { SpxStockInfoValueI } from './spx-stock-info-value.interface';\n\nexport const ctrlCategory = 'ctrlCategory';\nexport const ctrlContainerStatus = 'ctrlContainerStatus';\nexport const ctrlContainerType = 'ctrlContainerType';\nexport const ctrlCustomer = 'ctrlCustomer';\nexport const ctrlDepot = 'ctrlDepot';\nexport const ctrlLocation = 'ctrlLocation';\nexport const sectionContainerInfo = 'sectionContainerInfo';\nexport const sectionCustomer = 'sectionCustomer';\nexport const sectionLocation = 'sectionLocation';\n\n@Component({\n selector: 'spx-stock-info',\n templateUrl: './spx-stock-info.component.html',\n standalone: true,\n imports: [\n CommonModule,\n FormsModule,\n ReactiveFormsModule,\n SpxButtonComponent,\n SpxFormViewComponent,\n SpxInputComponent,\n SpxValidateControlComponent,\n ]\n})\nexport class SpxStockInfoComponent {\n @Input() formGroup!: FormGroup;\n @Input() depot!: string;\n @Input() suggestions: any = {};\n @Input() textLocation!: string;\n @Input() textDepot!: string;\n @Input() textCustomer!: string;\n @Input() textContainerInfo!: string;\n @Input() textCategory!: string;\n @Input() textContainerStatus!: string;\n @Input() textContainerType!: string;\n @Output() spxBlurCategory: EventEmitter<SpxValuePair<string>> = new EventEmitter<SpxValuePair<string>>();\n @Output() spxBlurContainerStatus: EventEmitter<SpxValuePair<string>> = new EventEmitter<SpxValuePair<string>>();\n @Output() spxBlurContainerType: EventEmitter<SpxValuePair<string>> = new EventEmitter<SpxValuePair<string>>();\n @Output() spxBlurCustomer: EventEmitter<SpxValuePair<string>> = new EventEmitter<SpxValuePair<string>>();\n @Output() spxSearchCategory: EventEmitter<SpxValuePair<string>> = new EventEmitter<SpxValuePair<string>>();\n @Output() spxSearchContainerType: EventEmitter<SpxValuePair<string>> = new EventEmitter<SpxValuePair<string>>();\n @Output() spxSearchContainerStatus: EventEmitter<SpxValuePair<string>> = new EventEmitter<SpxValuePair<string>>();\n @Output() spxSearchCustomer: EventEmitter<SpxValuePair<string>> = new EventEmitter<SpxValuePair<string>>();\n @Output() submit: EventEmitter<SpxStockInfoValueI> = new EventEmitter<SpxStockInfoValueI>();\n\n inputTypeAutocomplete = SpxInputTypeEnum.autocomplete;\n inputTypeRadio = SpxInputTypeEnum.radio;\n inputTypeText = SpxInputTypeEnum.text;\n severitySuccess = SpxSeverityEnum.success;\n\n sections: SpxFormSectionI[] = [\n {\n key: sectionLocation,\n show: () => true,\n title: () => this.textLocation,\n fields: [\n {\n key: ctrlDepot,\n label: () => this.textDepot,\n type: () => SpxInputTypeEnum.text,\n defaultValue: () => this.depot,\n validators: () => [spxValidatorRequired()],\n readonly: () => true,\n suggestions: () => false,\n afterValueChange: undefined,\n show: () => true,\n capitalize: () => true,\n },\n {\n key: ctrlLocation,\n label: () => this.textLocation,\n type: () => SpxInputTypeEnum.text,\n defaultValue: () => null,\n validators: () => [],\n readonly: () => false,\n suggestions: () => false,\n afterValueChange: undefined,\n show: () => true,\n capitalize: () => true,\n },\n ]\n },\n {\n key: sectionCustomer,\n show: () => true,\n title: () => this.textCustomer,\n fields: [\n {\n key: ctrlCustomer,\n label: () => this.textCustomer,\n type: () => SpxInputTypeEnum.autocomplete,\n defaultValue: () => null,\n validators: () => [],\n readonly: () => false,\n suggestions: () => true,\n afterValueChange: undefined,\n show: () => true,\n capitalize: () => true,\n },\n ]\n },\n {\n key: sectionContainerInfo,\n show: () => true,\n title: () => this.textContainerInfo,\n fields: [\n {\n key: ctrlCategory,\n label: () => this.textCategory,\n type: () => SpxInputTypeEnum.autocomplete,\n defaultValue: () => null,\n validators: () => [],\n readonly: () => false,\n suggestions: () => true,\n afterValueChange: undefined,\n show: () => true,\n capitalize: () => true,\n },\n {\n key: ctrlContainerStatus,\n label: () => this.textContainerStatus,\n type: () => SpxInputTypeEnum.autocomplete,\n defaultValue: () => null,\n validators: () => [],\n readonly: () => false,\n suggestions: () => true,\n afterValueChange: undefined,\n show: () => true,\n capitalize: () => true,\n },\n {\n key: ctrlContainerType,\n label: () => this.textContainerType,\n type: () => SpxInputTypeEnum.autocomplete,\n defaultValue: () => null,\n validators: () => [],\n readonly: () => false,\n suggestions: () => true,\n afterValueChange: undefined,\n show: () => true,\n capitalize: () => true,\n },\n ]\n },\n ];\n\n get ctrlCategory(): FormControl { return this.formGroup.get(ctrlCategory) as FormControl; }\n get ctrlContainerStatus(): FormControl { return this.formGroup.get(ctrlContainerStatus) as FormControl; }\n get ctrlContainerType(): FormControl { return this.formGroup.get(ctrlContainerType) as FormControl; }\n get ctrlCustomer(): FormControl { return this.formGroup.get(ctrlCustomer) as FormControl; }\n get ctrlDepot(): FormControl { return this.formGroup.get(ctrlDepot) as FormControl; }\n get ctrlLocation(): FormControl { return this.formGroup.get(ctrlLocation) as FormControl; }\n\n constructor(readonly formBuilder: FormBuilder) {\n }\n\n createForm(): FormGroup {\n return SpxFormViewComponent.createForm(this.formBuilder, this.sections);\n }\n\n getRawValidators(formControl: FormControl) {\n return (formControl as any)._rawValidators;\n }\n\n onBlur(data: { field: SpxFormFieldI, valuePair: SpxValuePair<any> }) {\n if (data.field.key === ctrlCategory) {\n this.spxBlurCategory.emit(data.valuePair);\n }\n if (data.field.key === ctrlContainerStatus) {\n this.spxBlurContainerStatus.emit(data.valuePair);\n }\n if (data.field.key === ctrlContainerType) {\n this.spxBlurContainerType.emit(data.valuePair);\n }\n if (data.field.key === ctrlCustomer) {\n this.spxBlurCustomer.emit(data.valuePair);\n }\n }\n\n onSearch(data: { field: SpxFormFieldI, valuePair: SpxValuePair<any> }) {\n if (data.field.key === ctrlCategory) {\n this.spxSearchCategory.emit(data.valuePair);\n }\n if (data.field.key === ctrlContainerType) {\n this.spxSearchContainerType.emit(data.valuePair);\n }\n if (data.field.key === ctrlContainerStatus) {\n this.spxSearchContainerStatus.emit(data.valuePair);\n }\n if (data.field.key === ctrlCustomer) {\n this.spxSearchCustomer.emit(data.valuePair);\n }\n }\n\n onSubmit(): void {\n this.submit.emit({\n ctrlCategory: this.ctrlCategory.value,\n ctrlContainerStatus: this.ctrlContainerStatus.value,\n ctrlContainerType: this.ctrlContainerType.value,\n ctrlCustomer: this.ctrlContainerType.value,\n ctrlDepot: this.ctrlDepot.value,\n ctrlLocation: this.ctrlLocation.value,\n });\n }\n}\n","<form [formGroup]=\"formGroup\" class=\"max-w-lg mx-auto flex flex-col gap-3\" (ngSubmit)=\"onSubmit()\">\n <spx-form-view\n [spxFormGroup]=\"formGroup\"\n [spxSections]=\"sections\"\n [spxSuggestions]=\"suggestions\"\n (spxBlur)=\"onBlur($event)\"\n (spxSearch)=\"onSearch($event)\">\n </spx-form-view>\n <spx-button\n [spxFullWidth]=\"true\"\n [spxSeverity]=\"severitySuccess\">\n Save\n </spx-button>\n</form>","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@softpak/components",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.8-beta.1",
|
|
4
4
|
"private": false,
|
|
5
5
|
"peerDependencies": {
|
|
6
6
|
"@angular/common": "15.x.x || 18.x.x",
|
|
@@ -34,23 +34,17 @@
|
|
|
34
34
|
"esm": "./esm2022/spx-alert/softpak-components-spx-alert.mjs",
|
|
35
35
|
"default": "./fesm2022/softpak-components-spx-alert.mjs"
|
|
36
36
|
},
|
|
37
|
-
"./spx-app-expiry": {
|
|
38
|
-
"types": "./spx-app-expiry/index.d.ts",
|
|
39
|
-
"esm2022": "./esm2022/spx-app-expiry/softpak-components-spx-app-expiry.mjs",
|
|
40
|
-
"esm": "./esm2022/spx-app-expiry/softpak-components-spx-app-expiry.mjs",
|
|
41
|
-
"default": "./fesm2022/softpak-components-spx-app-expiry.mjs"
|
|
42
|
-
},
|
|
43
37
|
"./spx-app-configuration": {
|
|
44
38
|
"types": "./spx-app-configuration/index.d.ts",
|
|
45
39
|
"esm2022": "./esm2022/spx-app-configuration/softpak-components-spx-app-configuration.mjs",
|
|
46
40
|
"esm": "./esm2022/spx-app-configuration/softpak-components-spx-app-configuration.mjs",
|
|
47
41
|
"default": "./fesm2022/softpak-components-spx-app-configuration.mjs"
|
|
48
42
|
},
|
|
49
|
-
"./spx-app-
|
|
50
|
-
"types": "./spx-app-
|
|
51
|
-
"esm2022": "./esm2022/spx-app-
|
|
52
|
-
"esm": "./esm2022/spx-app-
|
|
53
|
-
"default": "./fesm2022/softpak-components-spx-app-
|
|
43
|
+
"./spx-app-expiry": {
|
|
44
|
+
"types": "./spx-app-expiry/index.d.ts",
|
|
45
|
+
"esm2022": "./esm2022/spx-app-expiry/softpak-components-spx-app-expiry.mjs",
|
|
46
|
+
"esm": "./esm2022/spx-app-expiry/softpak-components-spx-app-expiry.mjs",
|
|
47
|
+
"default": "./fesm2022/softpak-components-spx-app-expiry.mjs"
|
|
54
48
|
},
|
|
55
49
|
"./spx-button": {
|
|
56
50
|
"types": "./spx-button/index.d.ts",
|
|
@@ -58,24 +52,30 @@
|
|
|
58
52
|
"esm": "./esm2022/spx-button/softpak-components-spx-button.mjs",
|
|
59
53
|
"default": "./fesm2022/softpak-components-spx-button.mjs"
|
|
60
54
|
},
|
|
55
|
+
"./spx-app-update": {
|
|
56
|
+
"types": "./spx-app-update/index.d.ts",
|
|
57
|
+
"esm2022": "./esm2022/spx-app-update/softpak-components-spx-app-update.mjs",
|
|
58
|
+
"esm": "./esm2022/spx-app-update/softpak-components-spx-app-update.mjs",
|
|
59
|
+
"default": "./fesm2022/softpak-components-spx-app-update.mjs"
|
|
60
|
+
},
|
|
61
61
|
"./spx-capitalize": {
|
|
62
62
|
"types": "./spx-capitalize/index.d.ts",
|
|
63
63
|
"esm2022": "./esm2022/spx-capitalize/softpak-components-spx-capitalize.mjs",
|
|
64
64
|
"esm": "./esm2022/spx-capitalize/softpak-components-spx-capitalize.mjs",
|
|
65
65
|
"default": "./fesm2022/softpak-components-spx-capitalize.mjs"
|
|
66
66
|
},
|
|
67
|
-
"./spx-change-details": {
|
|
68
|
-
"types": "./spx-change-details/index.d.ts",
|
|
69
|
-
"esm2022": "./esm2022/spx-change-details/softpak-components-spx-change-details.mjs",
|
|
70
|
-
"esm": "./esm2022/spx-change-details/softpak-components-spx-change-details.mjs",
|
|
71
|
-
"default": "./fesm2022/softpak-components-spx-change-details.mjs"
|
|
72
|
-
},
|
|
73
67
|
"./spx-channel-selection": {
|
|
74
68
|
"types": "./spx-channel-selection/index.d.ts",
|
|
75
69
|
"esm2022": "./esm2022/spx-channel-selection/softpak-components-spx-channel-selection.mjs",
|
|
76
70
|
"esm": "./esm2022/spx-channel-selection/softpak-components-spx-channel-selection.mjs",
|
|
77
71
|
"default": "./fesm2022/softpak-components-spx-channel-selection.mjs"
|
|
78
72
|
},
|
|
73
|
+
"./spx-change-details": {
|
|
74
|
+
"types": "./spx-change-details/index.d.ts",
|
|
75
|
+
"esm2022": "./esm2022/spx-change-details/softpak-components-spx-change-details.mjs",
|
|
76
|
+
"esm": "./esm2022/spx-change-details/softpak-components-spx-change-details.mjs",
|
|
77
|
+
"default": "./fesm2022/softpak-components-spx-change-details.mjs"
|
|
78
|
+
},
|
|
79
79
|
"./spx-check-digit": {
|
|
80
80
|
"types": "./spx-check-digit/index.d.ts",
|
|
81
81
|
"esm2022": "./esm2022/spx-check-digit/softpak-components-spx-check-digit.mjs",
|
|
@@ -136,6 +136,12 @@
|
|
|
136
136
|
"esm": "./esm2022/spx-spinner/softpak-components-spx-spinner.mjs",
|
|
137
137
|
"default": "./fesm2022/softpak-components-spx-spinner.mjs"
|
|
138
138
|
},
|
|
139
|
+
"./spx-stock-info": {
|
|
140
|
+
"types": "./spx-stock-info/index.d.ts",
|
|
141
|
+
"esm2022": "./esm2022/spx-stock-info/softpak-components-spx-stock-info.mjs",
|
|
142
|
+
"esm": "./esm2022/spx-stock-info/softpak-components-spx-stock-info.mjs",
|
|
143
|
+
"default": "./fesm2022/softpak-components-spx-stock-info.mjs"
|
|
144
|
+
},
|
|
139
145
|
"./spx-storage": {
|
|
140
146
|
"types": "./spx-storage/index.d.ts",
|
|
141
147
|
"esm2022": "./esm2022/spx-storage/softpak-components-spx-storage.mjs",
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './spx-stock-info.component';
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { SpxValuePair } from "@softpak/components/spx-inputs";
|
|
2
|
+
import { ctrlCategory, ctrlContainerStatus, ctrlContainerType, ctrlCustomer, ctrlDepot, ctrlLocation } from "./spx-stock-info.component";
|
|
3
|
+
export interface SpxStockInfoValueI {
|
|
4
|
+
[ctrlCategory]?: SpxValuePair<string>;
|
|
5
|
+
[ctrlContainerStatus]?: SpxValuePair<string>;
|
|
6
|
+
[ctrlContainerType]?: SpxValuePair<string>;
|
|
7
|
+
[ctrlCustomer]?: SpxValuePair<string>;
|
|
8
|
+
[ctrlDepot]: SpxValuePair<string>;
|
|
9
|
+
[ctrlLocation]?: SpxValuePair<string>;
|
|
10
|
+
}
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
import { EventEmitter } from '@angular/core';
|
|
2
|
+
import { FormBuilder, FormControl, FormGroup } from '@angular/forms';
|
|
3
|
+
import { SpxInputTypeEnum, SpxValuePair } from '@softpak/components/spx-inputs';
|
|
4
|
+
import { SpxFormFieldI, SpxFormSectionI } from '@softpak/components/spx-form-view';
|
|
5
|
+
import { SpxSeverityEnum } from '@softpak/components/spx-helpers';
|
|
6
|
+
import { SpxStockInfoValueI } from './spx-stock-info-value.interface';
|
|
7
|
+
import * as i0 from "@angular/core";
|
|
8
|
+
export declare const ctrlCategory = "ctrlCategory";
|
|
9
|
+
export declare const ctrlContainerStatus = "ctrlContainerStatus";
|
|
10
|
+
export declare const ctrlContainerType = "ctrlContainerType";
|
|
11
|
+
export declare const ctrlCustomer = "ctrlCustomer";
|
|
12
|
+
export declare const ctrlDepot = "ctrlDepot";
|
|
13
|
+
export declare const ctrlLocation = "ctrlLocation";
|
|
14
|
+
export declare const sectionContainerInfo = "sectionContainerInfo";
|
|
15
|
+
export declare const sectionCustomer = "sectionCustomer";
|
|
16
|
+
export declare const sectionLocation = "sectionLocation";
|
|
17
|
+
export declare class SpxStockInfoComponent {
|
|
18
|
+
readonly formBuilder: FormBuilder;
|
|
19
|
+
formGroup: FormGroup;
|
|
20
|
+
depot: string;
|
|
21
|
+
suggestions: any;
|
|
22
|
+
textLocation: string;
|
|
23
|
+
textDepot: string;
|
|
24
|
+
textCustomer: string;
|
|
25
|
+
textContainerInfo: string;
|
|
26
|
+
textCategory: string;
|
|
27
|
+
textContainerStatus: string;
|
|
28
|
+
textContainerType: string;
|
|
29
|
+
spxBlurCategory: EventEmitter<SpxValuePair<string>>;
|
|
30
|
+
spxBlurContainerStatus: EventEmitter<SpxValuePair<string>>;
|
|
31
|
+
spxBlurContainerType: EventEmitter<SpxValuePair<string>>;
|
|
32
|
+
spxBlurCustomer: EventEmitter<SpxValuePair<string>>;
|
|
33
|
+
spxSearchCategory: EventEmitter<SpxValuePair<string>>;
|
|
34
|
+
spxSearchContainerType: EventEmitter<SpxValuePair<string>>;
|
|
35
|
+
spxSearchContainerStatus: EventEmitter<SpxValuePair<string>>;
|
|
36
|
+
spxSearchCustomer: EventEmitter<SpxValuePair<string>>;
|
|
37
|
+
submit: EventEmitter<SpxStockInfoValueI>;
|
|
38
|
+
inputTypeAutocomplete: SpxInputTypeEnum;
|
|
39
|
+
inputTypeRadio: SpxInputTypeEnum;
|
|
40
|
+
inputTypeText: SpxInputTypeEnum;
|
|
41
|
+
severitySuccess: SpxSeverityEnum;
|
|
42
|
+
sections: SpxFormSectionI[];
|
|
43
|
+
get ctrlCategory(): FormControl;
|
|
44
|
+
get ctrlContainerStatus(): FormControl;
|
|
45
|
+
get ctrlContainerType(): FormControl;
|
|
46
|
+
get ctrlCustomer(): FormControl;
|
|
47
|
+
get ctrlDepot(): FormControl;
|
|
48
|
+
get ctrlLocation(): FormControl;
|
|
49
|
+
constructor(formBuilder: FormBuilder);
|
|
50
|
+
createForm(): FormGroup;
|
|
51
|
+
getRawValidators(formControl: FormControl): any;
|
|
52
|
+
onBlur(data: {
|
|
53
|
+
field: SpxFormFieldI;
|
|
54
|
+
valuePair: SpxValuePair<any>;
|
|
55
|
+
}): void;
|
|
56
|
+
onSearch(data: {
|
|
57
|
+
field: SpxFormFieldI;
|
|
58
|
+
valuePair: SpxValuePair<any>;
|
|
59
|
+
}): void;
|
|
60
|
+
onSubmit(): void;
|
|
61
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<SpxStockInfoComponent, never>;
|
|
62
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<SpxStockInfoComponent, "spx-stock-info", never, { "formGroup": { "alias": "formGroup"; "required": false; }; "depot": { "alias": "depot"; "required": false; }; "suggestions": { "alias": "suggestions"; "required": false; }; "textLocation": { "alias": "textLocation"; "required": false; }; "textDepot": { "alias": "textDepot"; "required": false; }; "textCustomer": { "alias": "textCustomer"; "required": false; }; "textContainerInfo": { "alias": "textContainerInfo"; "required": false; }; "textCategory": { "alias": "textCategory"; "required": false; }; "textContainerStatus": { "alias": "textContainerStatus"; "required": false; }; "textContainerType": { "alias": "textContainerType"; "required": false; }; }, { "spxBlurCategory": "spxBlurCategory"; "spxBlurContainerStatus": "spxBlurContainerStatus"; "spxBlurContainerType": "spxBlurContainerType"; "spxBlurCustomer": "spxBlurCustomer"; "spxSearchCategory": "spxSearchCategory"; "spxSearchContainerType": "spxSearchContainerType"; "spxSearchContainerStatus": "spxSearchContainerStatus"; "spxSearchCustomer": "spxSearchCustomer"; "submit": "submit"; }, never, never, true, never>;
|
|
63
|
+
}
|