@softpak/components 0.1.7 → 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.
@@ -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=
@@ -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.7",
3
+ "version": "0.1.8-beta.1",
4
4
  "private": false,
5
5
  "peerDependencies": {
6
6
  "@angular/common": "15.x.x || 18.x.x",
@@ -40,18 +40,18 @@
40
40
  "esm": "./esm2022/spx-app-configuration/softpak-components-spx-app-configuration.mjs",
41
41
  "default": "./fesm2022/softpak-components-spx-app-configuration.mjs"
42
42
  },
43
- "./spx-button": {
44
- "types": "./spx-button/index.d.ts",
45
- "esm2022": "./esm2022/spx-button/softpak-components-spx-button.mjs",
46
- "esm": "./esm2022/spx-button/softpak-components-spx-button.mjs",
47
- "default": "./fesm2022/softpak-components-spx-button.mjs"
48
- },
49
43
  "./spx-app-expiry": {
50
44
  "types": "./spx-app-expiry/index.d.ts",
51
45
  "esm2022": "./esm2022/spx-app-expiry/softpak-components-spx-app-expiry.mjs",
52
46
  "esm": "./esm2022/spx-app-expiry/softpak-components-spx-app-expiry.mjs",
53
47
  "default": "./fesm2022/softpak-components-spx-app-expiry.mjs"
54
48
  },
49
+ "./spx-button": {
50
+ "types": "./spx-button/index.d.ts",
51
+ "esm2022": "./esm2022/spx-button/softpak-components-spx-button.mjs",
52
+ "esm": "./esm2022/spx-button/softpak-components-spx-button.mjs",
53
+ "default": "./fesm2022/softpak-components-spx-button.mjs"
54
+ },
55
55
  "./spx-app-update": {
56
56
  "types": "./spx-app-update/index.d.ts",
57
57
  "esm2022": "./esm2022/spx-app-update/softpak-components-spx-app-update.mjs",
@@ -64,18 +64,18 @@
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,5 @@
1
+ /**
2
+ * Generated bundle index. Do not edit.
3
+ */
4
+ /// <amd-module name="@softpak/components/spx-stock-info" />
5
+ export * from './public-api';
@@ -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
+ }