@acrodata/gui 2.8.0 → 2.9.0
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/button-toggle/button-toggle.scss +1 -1
- package/codearea/codearea-dialog.scss +1 -1
- package/codearea/codearea.scss +2 -2
- package/combobox/combobox.scss +1 -1
- package/fesm2022/acrodata-gui.mjs +119 -119
- package/fesm2022/acrodata-gui.mjs.map +1 -1
- package/field-group/field-group.scss +1 -1
- package/file-uploader/file-uploader.scss +1 -1
- package/fill/fill-picker.d.ts +1 -1
- package/fill/fill-picker.scss +7 -7
- package/fill/fill.scss +4 -4
- package/gui-form.scss +5 -5
- package/image-select/image-select.scss +8 -1
- package/inline-group/inline-group.scss +1 -1
- package/package.json +1 -3
- package/select/select.scss +1 -1
- package/esm2022/acrodata-gui.mjs +0 -5
- package/esm2022/button-toggle/button-toggle.mjs +0 -69
- package/esm2022/button-toggle/icon.mjs +0 -33
- package/esm2022/codearea/codearea-config.mjs +0 -20
- package/esm2022/codearea/codearea-dialog.mjs +0 -67
- package/esm2022/codearea/codearea.mjs +0 -148
- package/esm2022/combobox/combobox.mjs +0 -82
- package/esm2022/field-group/field-group.mjs +0 -30
- package/esm2022/field-label/field-label.mjs +0 -31
- package/esm2022/file-uploader/file-uploader-config.mjs +0 -42
- package/esm2022/file-uploader/file-uploader.mjs +0 -142
- package/esm2022/fill/fill-picker.mjs +0 -166
- package/esm2022/fill/fill.mjs +0 -85
- package/esm2022/gui-form.mjs +0 -305
- package/esm2022/gui-icons.mjs +0 -95
- package/esm2022/gui-module.mjs +0 -201
- package/esm2022/gui-utils.mjs +0 -128
- package/esm2022/icon-button-wrapper/icon-button-wrapper.mjs +0 -13
- package/esm2022/image-select/image-select.mjs +0 -79
- package/esm2022/inline-group/inline-group.mjs +0 -19
- package/esm2022/input-number/input-number.mjs +0 -58
- package/esm2022/input-text/input-text.mjs +0 -59
- package/esm2022/interface.mjs +0 -2
- package/esm2022/public-api.mjs +0 -30
- package/esm2022/select/select.mjs +0 -69
- package/esm2022/slider/slider.mjs +0 -85
- package/esm2022/switch/switch.mjs +0 -59
- package/esm2022/textarea/textarea.mjs +0 -59
package/esm2022/gui-module.mjs
DELETED
|
@@ -1,201 +0,0 @@
|
|
|
1
|
-
import { NgModule } from '@angular/core';
|
|
2
|
-
import { CommonModule } from '@angular/common';
|
|
3
|
-
import { ReactiveFormsModule, FormsModule } from '@angular/forms';
|
|
4
|
-
import { MatFormFieldModule } from '@angular/material/form-field';
|
|
5
|
-
import { MatInputModule } from '@angular/material/input';
|
|
6
|
-
import { MatIconModule } from '@angular/material/icon';
|
|
7
|
-
import { MatSelectModule } from '@angular/material/select';
|
|
8
|
-
import { MatSliderModule } from '@angular/material/slider';
|
|
9
|
-
import { MatSlideToggleModule } from '@angular/material/slide-toggle';
|
|
10
|
-
import { MatButtonToggleModule } from '@angular/material/button-toggle';
|
|
11
|
-
import { MatButtonModule } from '@angular/material/button';
|
|
12
|
-
import { MatTabsModule } from '@angular/material/tabs';
|
|
13
|
-
import { MatExpansionModule } from '@angular/material/expansion';
|
|
14
|
-
import { MatTooltipModule } from '@angular/material/tooltip';
|
|
15
|
-
import { MtxColorpickerModule } from '@ng-matero/extensions/colorpicker';
|
|
16
|
-
import { MtxSelectModule } from '@ng-matero/extensions/select';
|
|
17
|
-
import { GuiForm } from './gui-form';
|
|
18
|
-
import { GuiFieldGroup } from './field-group/field-group';
|
|
19
|
-
import { GuiFieldLabel } from './field-label/field-label';
|
|
20
|
-
import { GuiInlineGroup } from './inline-group/inline-group';
|
|
21
|
-
import { GuiInputText } from './input-text/input-text';
|
|
22
|
-
import { GuiInputNumber } from './input-number/input-number';
|
|
23
|
-
import { GuiSelect } from './select/select';
|
|
24
|
-
import { GuiSwitch } from './switch/switch';
|
|
25
|
-
import { GuiSlider } from './slider/slider';
|
|
26
|
-
import { GuiIcon } from './button-toggle/icon';
|
|
27
|
-
import { GuiButtonToggle } from './button-toggle/button-toggle';
|
|
28
|
-
import { GuiFill } from './fill/fill';
|
|
29
|
-
import { GuiFillPicker } from './fill/fill-picker';
|
|
30
|
-
import { GuiImageSelect } from './image-select/image-select';
|
|
31
|
-
import { GuiCombobox } from './combobox/combobox';
|
|
32
|
-
import { GuiTextarea } from './textarea/textarea';
|
|
33
|
-
import { GuiCodearea } from './codearea/codearea';
|
|
34
|
-
import { GuiCodeareaDialog } from './codearea/codearea-dialog';
|
|
35
|
-
import { GuiFileUploader } from './file-uploader/file-uploader';
|
|
36
|
-
import { GuiIconButtonWrapper } from './icon-button-wrapper/icon-button-wrapper';
|
|
37
|
-
import { GuiEjsPipe, GuiFlexDirective } from './gui-utils';
|
|
38
|
-
import * as i0 from "@angular/core";
|
|
39
|
-
export class GuiModule {
|
|
40
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: GuiModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
41
|
-
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.13", ngImport: i0, type: GuiModule, imports: [CommonModule,
|
|
42
|
-
ReactiveFormsModule,
|
|
43
|
-
FormsModule,
|
|
44
|
-
MatFormFieldModule,
|
|
45
|
-
MatInputModule,
|
|
46
|
-
MatSelectModule,
|
|
47
|
-
MatSliderModule,
|
|
48
|
-
MatSlideToggleModule,
|
|
49
|
-
MatButtonToggleModule,
|
|
50
|
-
MatIconModule,
|
|
51
|
-
MatButtonModule,
|
|
52
|
-
MatTabsModule,
|
|
53
|
-
MatExpansionModule,
|
|
54
|
-
MatTooltipModule,
|
|
55
|
-
MtxColorpickerModule,
|
|
56
|
-
MtxSelectModule,
|
|
57
|
-
GuiForm,
|
|
58
|
-
GuiInputText,
|
|
59
|
-
GuiInputNumber,
|
|
60
|
-
GuiSelect,
|
|
61
|
-
GuiSwitch,
|
|
62
|
-
GuiSlider,
|
|
63
|
-
GuiIcon,
|
|
64
|
-
GuiButtonToggle,
|
|
65
|
-
GuiFill,
|
|
66
|
-
GuiFillPicker,
|
|
67
|
-
GuiFieldGroup,
|
|
68
|
-
GuiFieldLabel,
|
|
69
|
-
GuiInlineGroup,
|
|
70
|
-
GuiImageSelect,
|
|
71
|
-
GuiCombobox,
|
|
72
|
-
GuiTextarea,
|
|
73
|
-
GuiCodearea,
|
|
74
|
-
GuiCodeareaDialog,
|
|
75
|
-
GuiFileUploader,
|
|
76
|
-
GuiIconButtonWrapper,
|
|
77
|
-
GuiEjsPipe,
|
|
78
|
-
GuiFlexDirective], exports: [GuiForm,
|
|
79
|
-
GuiInputText,
|
|
80
|
-
GuiInputNumber,
|
|
81
|
-
GuiSelect,
|
|
82
|
-
GuiSwitch,
|
|
83
|
-
GuiSlider,
|
|
84
|
-
GuiIcon,
|
|
85
|
-
GuiButtonToggle,
|
|
86
|
-
GuiFill,
|
|
87
|
-
GuiFillPicker,
|
|
88
|
-
GuiFieldGroup,
|
|
89
|
-
GuiFieldLabel,
|
|
90
|
-
GuiInlineGroup,
|
|
91
|
-
GuiImageSelect,
|
|
92
|
-
GuiCombobox,
|
|
93
|
-
GuiTextarea,
|
|
94
|
-
GuiCodearea,
|
|
95
|
-
GuiCodeareaDialog,
|
|
96
|
-
GuiFileUploader,
|
|
97
|
-
GuiIconButtonWrapper,
|
|
98
|
-
GuiEjsPipe,
|
|
99
|
-
GuiFlexDirective] }); }
|
|
100
|
-
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: GuiModule, imports: [CommonModule,
|
|
101
|
-
ReactiveFormsModule,
|
|
102
|
-
FormsModule,
|
|
103
|
-
MatFormFieldModule,
|
|
104
|
-
MatInputModule,
|
|
105
|
-
MatSelectModule,
|
|
106
|
-
MatSliderModule,
|
|
107
|
-
MatSlideToggleModule,
|
|
108
|
-
MatButtonToggleModule,
|
|
109
|
-
MatIconModule,
|
|
110
|
-
MatButtonModule,
|
|
111
|
-
MatTabsModule,
|
|
112
|
-
MatExpansionModule,
|
|
113
|
-
MatTooltipModule,
|
|
114
|
-
MtxColorpickerModule,
|
|
115
|
-
MtxSelectModule,
|
|
116
|
-
GuiForm,
|
|
117
|
-
GuiInputText,
|
|
118
|
-
GuiInputNumber,
|
|
119
|
-
GuiSelect,
|
|
120
|
-
GuiSwitch,
|
|
121
|
-
GuiSlider,
|
|
122
|
-
GuiButtonToggle,
|
|
123
|
-
GuiFill,
|
|
124
|
-
GuiFillPicker,
|
|
125
|
-
GuiImageSelect,
|
|
126
|
-
GuiCombobox,
|
|
127
|
-
GuiTextarea,
|
|
128
|
-
GuiCodearea,
|
|
129
|
-
GuiCodeareaDialog,
|
|
130
|
-
GuiFileUploader] }); }
|
|
131
|
-
}
|
|
132
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: GuiModule, decorators: [{
|
|
133
|
-
type: NgModule,
|
|
134
|
-
args: [{
|
|
135
|
-
imports: [
|
|
136
|
-
CommonModule,
|
|
137
|
-
ReactiveFormsModule,
|
|
138
|
-
FormsModule,
|
|
139
|
-
MatFormFieldModule,
|
|
140
|
-
MatInputModule,
|
|
141
|
-
MatSelectModule,
|
|
142
|
-
MatSliderModule,
|
|
143
|
-
MatSlideToggleModule,
|
|
144
|
-
MatButtonToggleModule,
|
|
145
|
-
MatIconModule,
|
|
146
|
-
MatButtonModule,
|
|
147
|
-
MatTabsModule,
|
|
148
|
-
MatExpansionModule,
|
|
149
|
-
MatTooltipModule,
|
|
150
|
-
MtxColorpickerModule,
|
|
151
|
-
MtxSelectModule,
|
|
152
|
-
GuiForm,
|
|
153
|
-
GuiInputText,
|
|
154
|
-
GuiInputNumber,
|
|
155
|
-
GuiSelect,
|
|
156
|
-
GuiSwitch,
|
|
157
|
-
GuiSlider,
|
|
158
|
-
GuiIcon,
|
|
159
|
-
GuiButtonToggle,
|
|
160
|
-
GuiFill,
|
|
161
|
-
GuiFillPicker,
|
|
162
|
-
GuiFieldGroup,
|
|
163
|
-
GuiFieldLabel,
|
|
164
|
-
GuiInlineGroup,
|
|
165
|
-
GuiImageSelect,
|
|
166
|
-
GuiCombobox,
|
|
167
|
-
GuiTextarea,
|
|
168
|
-
GuiCodearea,
|
|
169
|
-
GuiCodeareaDialog,
|
|
170
|
-
GuiFileUploader,
|
|
171
|
-
GuiIconButtonWrapper,
|
|
172
|
-
GuiEjsPipe,
|
|
173
|
-
GuiFlexDirective,
|
|
174
|
-
],
|
|
175
|
-
exports: [
|
|
176
|
-
GuiForm,
|
|
177
|
-
GuiInputText,
|
|
178
|
-
GuiInputNumber,
|
|
179
|
-
GuiSelect,
|
|
180
|
-
GuiSwitch,
|
|
181
|
-
GuiSlider,
|
|
182
|
-
GuiIcon,
|
|
183
|
-
GuiButtonToggle,
|
|
184
|
-
GuiFill,
|
|
185
|
-
GuiFillPicker,
|
|
186
|
-
GuiFieldGroup,
|
|
187
|
-
GuiFieldLabel,
|
|
188
|
-
GuiInlineGroup,
|
|
189
|
-
GuiImageSelect,
|
|
190
|
-
GuiCombobox,
|
|
191
|
-
GuiTextarea,
|
|
192
|
-
GuiCodearea,
|
|
193
|
-
GuiCodeareaDialog,
|
|
194
|
-
GuiFileUploader,
|
|
195
|
-
GuiIconButtonWrapper,
|
|
196
|
-
GuiEjsPipe,
|
|
197
|
-
GuiFlexDirective,
|
|
198
|
-
],
|
|
199
|
-
}]
|
|
200
|
-
}] });
|
|
201
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ3VpLW1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3Byb2plY3RzL2d1aS9ndWktbW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxXQUFXLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUVsRSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUNsRSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDekQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUMzRCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDM0QsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDdEUsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFDeEUsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQzNELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUN2RCxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUNqRSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUM3RCxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQztBQUN6RSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFFL0QsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLFlBQVksQ0FBQztBQUNyQyxPQUFPLEVBQUUsYUFBYSxFQUFF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ZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgUmVhY3RpdmVGb3Jtc01vZHVsZSwgRm9ybXNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5cbmltcG9ydCB7IE1hdEZvcm1GaWVsZE1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2Zvcm0tZmllbGQnO1xuaW1wb3J0IHsgTWF0SW5wdXRNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9pbnB1dCc7XG5pbXBvcnQgeyBNYXRJY29uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvaWNvbic7XG5pbXBvcnQgeyBNYXRTZWxlY3RNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9zZWxlY3QnO1xuaW1wb3J0IHsgTWF0U2xpZGVyTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvc2xpZGVyJztcbmltcG9ydCB7IE1hdFNsaWRlVG9nZ2xlTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvc2xpZGUtdG9nZ2xlJztcbmltcG9ydCB7IE1hdEJ1dHRvblRvZ2dsZU1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2J1dHRvbi10b2dnbGUnO1xuaW1wb3J0IHsgTWF0QnV0dG9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvYnV0dG9uJztcbmltcG9ydCB7IE1hdFRhYnNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC90YWJzJztcbmltcG9ydCB7IE1hdEV4cGFuc2lvbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2V4cGFuc2lvbic7XG5pbXBvcnQgeyBNYXRUb29sdGlwTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvdG9vbHRpcCc7XG5pbXBvcnQgeyBNdHhDb2xvcnBpY2tlck1vZHVsZSB9IGZyb20gJ0BuZy1tYXRlcm8vZXh0ZW5zaW9ucy9jb2xvcnBpY2tlcic7XG5pbXBvcnQgeyBNdHhTZWxlY3RNb2R1bGUgfSBmcm9tICdAbmctbWF0ZXJvL2V4dGVuc2lvbnMvc2VsZWN0JztcblxuaW1wb3J0IHsgR3VpRm9ybSB9IGZyb20gJy4vZ3VpLWZvcm0nO1xuaW1wb3J0IHsgR3VpRmllbGRHcm91cCB9IGZyb20gJy4vZmllbGQtZ3JvdXAvZmllbGQtZ3JvdXAnO1xuaW1wb3J0IHsgR3VpRmllbGRMYWJlbCB9IGZyb20gJy4vZmllbGQtbGFiZWwvZmllbGQtbGFiZWwnO1xuaW1wb3J0IHsgR3VpSW5saW5lR3JvdXAgfSBmcm9tICcuL2lubGluZS1ncm91cC9pbmxpbmUtZ3JvdXAnO1xuaW1wb3J0IHsgR3VpSW5wdXRUZXh0IH0gZnJvbSAnLi9pbnB1dC10ZXh0L2lucHV0LXRleHQnO1xuaW1wb3J0IHsgR3VpSW5wdXROdW1iZXIgfSBmcm9tICcuL2lucHV0LW51bWJlci9pbnB1dC1udW1iZXInO1xuaW1wb3J0IHsgR3VpU2VsZWN0IH0gZnJvbSAnLi9zZWxlY3Qvc2VsZWN0JztcbmltcG9ydCB7IEd1aVN3aXRjaCB9IGZyb20gJy4vc3dpdGNoL3N3aXRjaCc7XG5pbXBvcnQgeyBHdWlTbGlkZXIgfSBmcm9tICcuL3NsaWRlci9zbGlkZXInO1xuaW1wb3J0IHsgR3VpSWNvbiB9IGZyb20gJy4vYnV0dG9uLXRvZ2dsZS9pY29uJztcbmltcG9ydCB7IEd1aUJ1dHRvblRvZ2dsZSB9IGZyb20gJy4vYnV0dG9uLXRvZ2dsZS9idXR0b24tdG9nZ2xlJztcbmltcG9ydCB7IEd1aUZpbGwgfSBmcm9tICcuL2ZpbGwvZmlsbCc7XG5pbXBvcnQgeyBHdWlGaWxsUGlja2VyIH0gZnJvbSAnLi9maWxsL2ZpbGwtcGlja2VyJztcbmltcG9ydCB7IEd1aUltYWdlU2VsZWN0IH0gZnJvbSAnLi9pbWFnZS1zZWxlY3QvaW1hZ2Utc2VsZWN0JztcbmltcG9ydCB7IEd1aUNvbWJvYm94IH0gZnJvbSAnLi9jb21ib2JveC9jb21ib2JveCc7XG5pbXBvcnQgeyBHdWlUZXh0YXJlYSB9IGZyb20gJy4vdGV4dGFyZWEvdGV4dGFyZWEnO1xuaW1wb3J0IHsgR3VpQ29kZWFyZWEgfSBmcm9tICcuL2NvZGVhcmVhL2NvZGVhcmVhJztcbmltcG9ydCB7IEd1aUNvZGVhcmVhRGlhbG9nIH0gZnJvbSAnLi9jb2RlYXJlYS9jb2RlYXJlYS1kaWFsb2cnO1xuaW1wb3J0IHsgR3VpRmlsZVVwbG9hZGVyIH0gZnJvbSAnLi9maWxlLXVwbG9hZGVyL2ZpbGUtdXBsb2FkZXInO1xuaW1wb3J0IHsgR3VpSWNvbkJ1dHRvbldyYXBwZXIgfSBmcm9tICcuL2ljb24tYnV0dG9uLXdyYXBwZXIvaWNvbi1idXR0b24td3JhcHBlcic7XG5pbXBvcnQgeyBHdWlFanNQaXBlLCBHdWlGbGV4RGlyZWN0aXZlIH0gZnJvbSAnLi9ndWktdXRpbHMnO1xuXG5ATmdNb2R1bGUoe1xuICBpbXBvcnRzOiBbXG4gICAgQ29tbW9uTW9kdWxlLFxuICAgIFJlYWN0aXZlRm9ybXNNb2R1bGUsXG4gICAgRm9ybXNNb2R1bGUsXG4gICAgTWF0Rm9ybUZpZWxkTW9kdWxlLFxuICAgIE1hdElucHV0TW9kdWxlLFxuICAgIE1hdFNlbGVjdE1vZHVsZSxcbiAgICBNYXRTbGlkZXJNb2R1bGUsXG4gICAgTWF0U2xpZGVUb2dnbGVNb2R1bGUsXG4gICAgTWF0QnV0dG9uVG9nZ2xlTW9kdWxlLFxuICAgIE1hdEljb25Nb2R1bGUsXG4gICAgTWF0QnV0dG9uTW9kdWxlLFxuICAgIE1hdFRhYnNNb2R1bGUsXG4gICAgTWF0RXhwYW5zaW9uTW9kdWxlLFxuICAgIE1hdFRvb2x0aXBNb2R1bGUsXG4gICAgTXR4Q29sb3JwaWNrZXJNb2R1bGUsXG4gICAgTXR4U2VsZWN0TW9kdWxlLFxuICAgIEd1aUZvcm0sXG4gICAgR3VpSW5wdXRUZXh0LFxuICAgIEd1aUlucHV0TnVtYmVyLFxuICAgIEd1aVNlbGVjdCxcbiAgICBHdWlTd2l0Y2gsXG4gICAgR3VpU2xpZGVyLFxuICAgIEd1aUljb24sXG4gICAgR3VpQnV0dG9uVG9nZ2xlLFxuICAgIEd1aUZpbGwsXG4gICAgR3VpRmlsbFBpY2tlcixcbiAgICBHdWlGaWVsZEdyb3VwLFxuICAgIEd1aUZpZWxkTGFiZWwsXG4gICAgR3VpSW5saW5lR3JvdXAsXG4gICAgR3VpSW1hZ2VTZWxlY3QsXG4gICAgR3VpQ29tYm9ib3gsXG4gICAgR3VpVGV4dGFyZWEsXG4gICAgR3VpQ29kZWFyZWEsXG4gICAgR3VpQ29kZWFyZWFEaWFsb2csXG4gICAgR3VpRmlsZVVwbG9hZGVyLFxuICAgIEd1aUljb25CdXR0b25XcmFwcGVyLFxuICAgIEd1aUVqc1BpcGUsXG4gICAgR3VpRmxleERpcmVjdGl2ZSxcbiAgXSxcbiAgZXhwb3J0czogW1xuICAgIEd1aUZvcm0sXG4gICAgR3VpSW5wdXRUZXh0LFxuICAgIEd1aUlucHV0TnVtYmVyLFxuICAgIEd1aVNlbGVjdCxcbiAgICBHdWlTd2l0Y2gsXG4gICAgR3VpU2xpZGVyLFxuICAgIEd1aUljb24sXG4gICAgR3VpQnV0dG9uVG9nZ2xlLFxuICAgIEd1aUZpbGwsXG4gICAgR3VpRmlsbFBpY2tlcixcbiAgICBHdWlGaWVsZEdyb3VwLFxuICAgIEd1aUZpZWxkTGFiZWwsXG4gICAgR3VpSW5saW5lR3JvdXAsXG4gICAgR3VpSW1hZ2VTZWxlY3QsXG4gICAgR3VpQ29tYm9ib3gsXG4gICAgR3VpVGV4dGFyZWEsXG4gICAgR3VpQ29kZWFyZWEsXG4gICAgR3VpQ29kZWFyZWFEaWFsb2csXG4gICAgR3VpRmlsZVVwbG9hZGVyLFxuICAgIEd1aUljb25CdXR0b25XcmFwcGVyLFxuICAgIEd1aUVqc1BpcGUsXG4gICAgR3VpRmxleERpcmVjdGl2ZSxcbiAgXSxcbn0pXG5leHBvcnQgY2xhc3MgR3VpTW9kdWxlIHt9XG4iXX0=
|
package/esm2022/gui-utils.mjs
DELETED
|
@@ -1,128 +0,0 @@
|
|
|
1
|
-
import { Directive, ElementRef, Input, Pipe, inject } from '@angular/core';
|
|
2
|
-
import * as i0 from "@angular/core";
|
|
3
|
-
/**
|
|
4
|
-
* Lightweight EJS template engine
|
|
5
|
-
*
|
|
6
|
-
* @param str template string
|
|
7
|
-
* @param data data passed to the template
|
|
8
|
-
* @returns
|
|
9
|
-
*
|
|
10
|
-
* ### Example
|
|
11
|
-
*
|
|
12
|
-
* ```ts
|
|
13
|
-
* const people = ['geddy', 'neil', 'alex'];
|
|
14
|
-
* const res = ejsTmpl('<%= people.join(", ") %>', {people: people});
|
|
15
|
-
* console.log(res);
|
|
16
|
-
* // => 'geddy, neil, alex'
|
|
17
|
-
* ```
|
|
18
|
-
*
|
|
19
|
-
*/
|
|
20
|
-
export function ejsTmpl(str, data) {
|
|
21
|
-
const fn = new Function('obj', 'var p=[],print=function(){p.push.apply(p,arguments);};' +
|
|
22
|
-
// Introduce the data as local variables using with(){}
|
|
23
|
-
'with(obj){p.push("' +
|
|
24
|
-
// Convert the template into pure JavaScript
|
|
25
|
-
str
|
|
26
|
-
.replace(/[\r\t\n]/g, ' ')
|
|
27
|
-
.split('<%')
|
|
28
|
-
.join('\t')
|
|
29
|
-
.replace(/((^|%>)[^\t]*)'/g, '$1\r')
|
|
30
|
-
.replace(/\t=(.*?)%>/g, '",$1,"')
|
|
31
|
-
.split('\t')
|
|
32
|
-
.join('");')
|
|
33
|
-
.split('%>')
|
|
34
|
-
.join('p.push("')
|
|
35
|
-
.split('\r')
|
|
36
|
-
.join('"') +
|
|
37
|
-
'");}return p.join("");');
|
|
38
|
-
// Provide some basic currying to the user
|
|
39
|
-
return data ? fn(data) : fn;
|
|
40
|
-
}
|
|
41
|
-
export class GuiEjsPipe {
|
|
42
|
-
transform(value, data = {}) {
|
|
43
|
-
return ejsTmpl(value, data);
|
|
44
|
-
}
|
|
45
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: GuiEjsPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); }
|
|
46
|
-
static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "18.2.13", ngImport: i0, type: GuiEjsPipe, isStandalone: true, name: "ejs" }); }
|
|
47
|
-
}
|
|
48
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: GuiEjsPipe, decorators: [{
|
|
49
|
-
type: Pipe,
|
|
50
|
-
args: [{
|
|
51
|
-
name: 'ejs',
|
|
52
|
-
standalone: true,
|
|
53
|
-
}]
|
|
54
|
-
}] });
|
|
55
|
-
export class GuiFlexDirective {
|
|
56
|
-
constructor() {
|
|
57
|
-
this.el = inject(ElementRef);
|
|
58
|
-
this.flex = 100;
|
|
59
|
-
}
|
|
60
|
-
ngOnInit() {
|
|
61
|
-
this.el.nativeElement.style.flex = `1 1 ${this.flex}%`;
|
|
62
|
-
this.el.nativeElement.style.maxWidth = `${this.flex}%`;
|
|
63
|
-
}
|
|
64
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: GuiFlexDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
65
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.13", type: GuiFlexDirective, isStandalone: true, selector: "[flex]", inputs: { flex: "flex" }, ngImport: i0 }); }
|
|
66
|
-
}
|
|
67
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: GuiFlexDirective, decorators: [{
|
|
68
|
-
type: Directive,
|
|
69
|
-
args: [{
|
|
70
|
-
selector: '[flex]',
|
|
71
|
-
standalone: true,
|
|
72
|
-
}]
|
|
73
|
-
}], propDecorators: { flex: [{
|
|
74
|
-
type: Input
|
|
75
|
-
}] } });
|
|
76
|
-
export function compareValues(a, b, operator) {
|
|
77
|
-
switch (operator) {
|
|
78
|
-
case '$eq':
|
|
79
|
-
return a === b;
|
|
80
|
-
case '$ne':
|
|
81
|
-
return a !== b;
|
|
82
|
-
case '$gt':
|
|
83
|
-
return (a ?? 0) > (b ?? 0);
|
|
84
|
-
case '$lt':
|
|
85
|
-
return (a ?? 0) < (b ?? 0);
|
|
86
|
-
case '$gte':
|
|
87
|
-
return (a ?? 0) >= (b ?? 0);
|
|
88
|
-
case '$lte':
|
|
89
|
-
return (a ?? 0) <= (b ?? 0);
|
|
90
|
-
case '$in':
|
|
91
|
-
return Array.isArray(b) && b.includes(a);
|
|
92
|
-
case '$nin':
|
|
93
|
-
return Array.isArray(b) && !b.includes(a);
|
|
94
|
-
default:
|
|
95
|
-
return false;
|
|
96
|
-
}
|
|
97
|
-
}
|
|
98
|
-
export function getValueByPath(obj, path) {
|
|
99
|
-
return path.split('.').reduce((acc, key) => {
|
|
100
|
-
return acc?.['children']?.[key] ? acc['children'][key] : acc?.[key];
|
|
101
|
-
}, obj);
|
|
102
|
-
}
|
|
103
|
-
export function getModelFromConfig(config = {}, model = {}) {
|
|
104
|
-
for (const [key, fieldCfg] of Object.entries(config)) {
|
|
105
|
-
if (model[key] != null) {
|
|
106
|
-
continue;
|
|
107
|
-
}
|
|
108
|
-
if (fieldCfg.default != null) {
|
|
109
|
-
model[key] = fieldCfg.default;
|
|
110
|
-
}
|
|
111
|
-
else {
|
|
112
|
-
if (fieldCfg.type === 'group' ||
|
|
113
|
-
fieldCfg.type === 'inline' ||
|
|
114
|
-
fieldCfg.type === 'menu' ||
|
|
115
|
-
fieldCfg.type === 'menuItem') {
|
|
116
|
-
model[key] = getModelFromConfig(fieldCfg.children, {});
|
|
117
|
-
}
|
|
118
|
-
else if (fieldCfg.type === 'tabs') {
|
|
119
|
-
model[key] = [];
|
|
120
|
-
}
|
|
121
|
-
else {
|
|
122
|
-
model[key] = null;
|
|
123
|
-
}
|
|
124
|
-
}
|
|
125
|
-
}
|
|
126
|
-
return model;
|
|
127
|
-
}
|
|
128
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ3VpLXV0aWxzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vcHJvamVjdHMvZ3VpL2d1aS11dGlscy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFVBQVUsRUFBRSxLQUFLLEVBQVUsSUFBSSxFQUFpQixNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7O0FBR2xHOzs7Ozs7Ozs7Ozs7Ozs7O0dBZ0JHO0FBQ0gsTUFBTSxVQUFVLE9BQU8sQ0FBQyxHQUFXLEVBQUUsSUFBUztJQUM1QyxNQUFNLEVBQUUsR0FBRyxJQUFJLFFBQVEsQ0FDckIsS0FBSyxFQUNMLHdEQUF3RDtRQUN0RCx1REFBdUQ7UUFDdkQsb0JBQW9CO1FBQ3BCLDRDQUE0QztRQUM1QyxHQUFHO2FBQ0EsT0FBTyxDQUFDLFdBQVcsRUFBRSxHQUFHLENBQUM7YUFDekIsS0FBSyxDQUFDLElBQUksQ0FBQzthQUNYLElBQUksQ0FBQyxJQUFJLENBQUM7YUFDVixPQUFPLENBQUMsa0JBQWtCLEVBQUUsTUFBTSxDQUFDO2FBQ25DLE9BQU8sQ0FBQyxhQUFhLEVBQUUsUUFBUSxDQUFDO2FBQ2hDLEtBQUssQ0FBQyxJQUFJLENBQUM7YUFDWCxJQUFJLENBQUMsS0FBSyxDQUFDO2FBQ1gsS0FBSyxDQUFDLElBQUksQ0FBQzthQUNYLElBQUksQ0FBQyxVQUFVLENBQUM7YUFDaEIsS0FBSyxDQUFDLElBQUksQ0FBQzthQUNYLElBQUksQ0FBQyxHQUFHLENBQUM7UUFDWix3QkFBd0IsQ0FDM0IsQ0FBQztJQUVGLDBDQUEwQztJQUMxQyxPQUFPLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUM7QUFDOUIsQ0FBQztBQU1ELE1BQU0sT0FBTyxVQUFVO0lBQ3JCLFNBQVMsQ0FBQyxLQUFhLEVBQUUsSUFBSSxHQUFHLEVBQUU7UUFDaEMsT0FBTyxPQUFPLENBQUMsS0FBSyxFQUFF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Q0FBQyxJQUFJLElBQUksRUFBRSxDQUFDO1lBQ3ZCLFNBQVM7UUFDWCxDQUFDO1FBQ0QsSUFBSSxRQUFRLENBQUMsT0FBTyxJQUFJLElBQUksRUFBRSxDQUFDO1lBQzdCLEtBQUssQ0FBQyxHQUFHLENBQUMsR0FBRyxRQUFRLENBQUMsT0FBTyxDQUFDO1FBQ2hDLENBQUM7YUFBTSxDQUFDO1lBQ04sSUFDRSxRQUFRLENBQUMsSUFBSSxLQUFLLE9BQU87Z0JBQ3pCLFFBQVEsQ0FBQyxJQUFJLEtBQUssUUFBUTtnQkFDMUIsUUFBUSxDQUFDLElBQUksS0FBSyxNQUFNO2dCQUN4QixRQUFRLENBQUMsSUFBSSxLQUFLLFVBQVUsRUFDNUIsQ0FBQztnQkFDRCxLQUFLLENBQUMsR0FBRyxDQUFDLEdBQUcsa0JBQWtCLENBQUMsUUFBUSxDQUFDLFFBQXFCLEVBQUUsRUFBRSxDQUFDLENBQUM7WUFDdEUsQ0FBQztpQkFBTSxJQUFJLFFBQVEsQ0FBQyxJQUFJLEtBQUssTUFBTSxFQUFFLENBQUM7Z0JBQ3BDLEtBQUssQ0FBQyxHQUFHLENBQUMsR0FBRyxFQUFFLENBQUM7WUFDbEIsQ0FBQztpQkFBTSxDQUFDO2dCQUNOLEtBQUssQ0FBQyxHQUFHLENBQUMsR0FBRyxJQUFJLENBQUM7WUFDcEIsQ0FBQztRQUNILENBQUM7SUFDSCxDQUFDO0lBQ0QsT0FBTyxLQUFLLENBQUM7QUFDZixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGlyZWN0aXZlLCBFbGVtZW50UmVmLCBJbnB1dCwgT25Jbml0LCBQaXBlLCBQaXBlVHJhbnNmb3JtLCBpbmplY3QgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEd1aURlZmF1bHRWYWx1ZSwgR3VpRmllbGRzLCBHdWlPcGVyYXRvciB9IGZyb20gJy4vaW50ZXJmYWNlJztcblxuLyoqXG4gKiBMaWdodHdlaWdodCBFSlMgdGVtcGxhdGUgZW5naW5lXG4gKlxuICogQHBhcmFtIHN0ciAgdGVtcGxhdGUgc3RyaW5nXG4gKiBAcGFyYW0gZGF0YSBkYXRhIHBhc3NlZCB0byB0aGUgdGVtcGxhdGVcbiAqIEByZXR1cm5zXG4gKlxuICogIyMjIEV4YW1wbGVcbiAqXG4gKiBgYGB0c1xuICogY29uc3QgcGVvcGxlID0gWydnZWRkeScsICduZWlsJywgJ2FsZXgnXTtcbiAqIGNvbnN0IHJlcyA9IGVqc1RtcGwoJzwlPSBwZW9wbGUuam9pbihcIiwgXCIpICU+Jywge3Blb3BsZTogcGVvcGxlfSk7XG4gKiBjb25zb2xlLmxvZyhyZXMpO1xuICogLy8gPT4gJ2dlZGR5LCBuZWlsLCBhbGV4J1xuICogYGBgXG4gKlxuICovXG5leHBvcnQgZnVuY3Rpb24gZWpzVG1wbChzdHI6IHN0cmluZywgZGF0YTogYW55KSB7XG4gIGNvbnN0IGZuID0gbmV3IEZ1bmN0aW9uKFxuICAgICdvYmonLFxuICAgICd2YXIgcD1bXSxwcmludD1mdW5jdGlvbigpe3AucHVzaC5hcHBseShwLGFyZ3VtZW50cyk7fTsnICtcbiAgICAgIC8vIEludHJvZHVjZSB0aGUgZGF0YSBhcyBsb2NhbCB2YXJpYWJsZXMgdXNpbmcgd2l0aCgpe31cbiAgICAgICd3aXRoKG9iail7cC5wdXNoKFwiJyArXG4gICAgICAvLyBDb252ZXJ0IHRoZSB0ZW1wbGF0ZSBpbnRvIHB1cmUgSmF2YVNjcmlwdFxuICAgICAgc3RyXG4gICAgICAgIC5yZXBsYWNlKC9bXFxyXFx0XFxuXS9nLCAnICcpXG4gICAgICAgIC5zcGxpdCgnPCUnKVxuICAgICAgICAuam9pbignXFx0JylcbiAgICAgICAgLnJlcGxhY2UoLygoXnwlPilbXlxcdF0qKScvZywgJyQxXFxyJylcbiAgICAgICAgLnJlcGxhY2UoL1xcdD0oLio/KSU+L2csICdcIiwkMSxcIicpXG4gICAgICAgIC5zcGxpdCgnXFx0JylcbiAgICAgICAgLmpvaW4oJ1wiKTsnKVxuICAgICAgICAuc3BsaXQoJyU+JylcbiAgICAgICAgLmpvaW4oJ3AucHVzaChcIicpXG4gICAgICAgIC5zcGxpdCgnXFxyJylcbiAgICAgICAgLmpvaW4oJ1wiJykgK1xuICAgICAgJ1wiKTt9cmV0dXJuIHAuam9pbihcIlwiKTsnXG4gICk7XG5cbiAgLy8gUHJvdmlkZSBzb21lIGJhc2ljIGN1cnJ5aW5nIHRvIHRoZSB1c2VyXG4gIHJldHVybiBkYXRhID8gZm4oZGF0YSkgOiBmbjtcbn1cblxuQFBpcGUoe1xuICBuYW1lOiAnZWpzJyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbn0pXG5leHBvcnQgY2xhc3MgR3VpRWpzUGlwZSBpbXBsZW1lbnRzIFBpcGVUcmFuc2Zvcm0ge1xuICB0cmFuc2Zvcm0odmFsdWU6IHN0cmluZywgZGF0YSA9IHt9KTogc3RyaW5nIHtcbiAgICByZXR1cm4gZWpzVG1wbCh2YWx1ZSwgZGF0YSk7XG4gIH1cbn1cblxuQERpcmVjdGl2ZSh7XG4gIHNlbGVjdG9yOiAnW2ZsZXhdJyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbn0pXG5leHBvcnQgY2xhc3MgR3VpRmxleERpcmVjdGl2ZSBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gIHByaXZhdGUgZWwgPSBpbmplY3QoRWxlbWVudFJlZik7XG5cbiAgQElucHV0KCkgZmxleDogbnVtYmVyIHwgdW5kZWZpbmVkID0gMTAwO1xuXG4gIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHRoaXMuZWwubmF0aXZlRWxlbWVudC5zdHlsZS5mbGV4ID0gYDEgMSAke3RoaXMuZmxleH0lYDtcbiAgICB0aGlzLmVsLm5hdGl2ZUVsZW1lbnQuc3R5bGUubWF4V2lkdGggPSBgJHt0aGlzLmZsZXh9JWA7XG4gIH1cbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGNvbXBhcmVWYWx1ZXMoYTogR3VpRGVmYXVsdFZhbHVlLCBiOiBHdWlEZWZhdWx0VmFsdWUsIG9wZXJhdG9yOiBHdWlPcGVyYXRvcikge1xuICBzd2l0Y2ggKG9wZXJhdG9yKSB7XG4gICAgY2FzZSAnJGVxJzpcbiAgICAgIHJldHVybiBhID09PSBiO1xuICAgIGNhc2UgJyRuZSc6XG4gICAgICByZXR1cm4gYSAhPT0gYjtcbiAgICBjYXNlICckZ3QnOlxuICAgICAgcmV0dXJuIChhID8/IDApID4gKGIgPz8gMCk7XG4gICAgY2FzZSAnJGx0JzpcbiAgICAgIHJldHVybiAoYSA/PyAwKSA8IChiID8/IDApO1xuICAgIGNhc2UgJyRndGUnOlxuICAgICAgcmV0dXJuIChhID8/IDApID49IChiID8/IDApO1xuICAgIGNhc2UgJyRsdGUnOlxuICAgICAgcmV0dXJuIChhID8/IDApIDw9IChiID8/IDApO1xuICAgIGNhc2UgJyRpbic6XG4gICAgICByZXR1cm4gQXJyYXkuaXNBcnJheShiKSAmJiBiLmluY2x1ZGVzKGEpO1xuICAgIGNhc2UgJyRuaW4nOlxuICAgICAgcmV0dXJuIEFycmF5LmlzQXJyYXkoYikgJiYgIWIuaW5jbHVkZXMoYSk7XG4gICAgZGVmYXVsdDpcbiAgICAgIHJldHVybiBmYWxzZTtcbiAgfVxufVxuXG5leHBvcnQgZnVuY3Rpb24gZ2V0VmFsdWVCeVBhdGgob2JqOiBSZWNvcmQ8c3RyaW5nLCBhbnk+LCBwYXRoOiBzdHJpbmcpIHtcbiAgcmV0dXJuIHBhdGguc3BsaXQoJy4nKS5yZWR1Y2UoKGFjYzogUmVjb3JkPHN0cmluZywgYW55PiB8IHVuZGVmaW5lZCwga2V5KSA9PiB7XG4gICAgcmV0dXJuIGFjYz8uWydjaGlsZHJlbiddPy5ba2V5XSA/IGFjY1snY2hpbGRyZW4nXVtrZXldIDogYWNjPy5ba2V5XTtcbiAgfSwgb2JqKTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGdldE1vZGVsRnJvbUNvbmZpZyhjb25maWc6IEd1aUZpZWxkcyA9IHt9LCBtb2RlbDogUmVjb3JkPHN0cmluZywgYW55PiA9IHt9KSB7XG4gIGZvciAoY29uc3QgW2tleSwgZmllbGRDZmddIG9mIE9iamVjdC5lbnRyaWVzKGNvbmZpZykpIHtcbiAgICBpZiAobW9kZWxba2V5XSAhPSBudWxsKSB7XG4gICAgICBjb250aW51ZTtcbiAgICB9XG4gICAgaWYgKGZpZWxkQ2ZnLmRlZmF1bHQgIT0gbnVsbCkge1xuICAgICAgbW9kZWxba2V5XSA9IGZpZWxkQ2ZnLmRlZmF1bHQ7XG4gICAgfSBlbHNlIHtcbiAgICAgIGlmIChcbiAgICAgICAgZmllbGRDZmcudHlwZSA9PT0gJ2dyb3VwJyB8fFxuICAgICAgICBmaWVsZENmZy50eXBlID09PSAnaW5saW5lJyB8fFxuICAgICAgICBmaWVsZENmZy50eXBlID09PSAnbWVudScgfHxcbiAgICAgICAgZmllbGRDZmcudHlwZSA9PT0gJ21lbnVJdGVtJ1xuICAgICAgKSB7XG4gICAgICAgIG1vZGVsW2tleV0gPSBnZXRNb2RlbEZyb21Db25maWcoZmllbGRDZmcuY2hpbGRyZW4gYXMgR3VpRmllbGRzLCB7fSk7XG4gICAgICB9IGVsc2UgaWYgKGZpZWxkQ2ZnLnR5cGUgPT09ICd0YWJzJykge1xuICAgICAgICBtb2RlbFtrZXldID0gW107XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBtb2RlbFtrZXldID0gbnVsbDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgcmV0dXJuIG1vZGVsO1xufVxuIl19
|
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
import { ChangeDetectionStrategy, Component, ViewEncapsulation } from '@angular/core';
|
|
2
|
-
import * as i0 from "@angular/core";
|
|
3
|
-
export class GuiIconButtonWrapper {
|
|
4
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: GuiIconButtonWrapper, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
5
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: GuiIconButtonWrapper, isStandalone: true, selector: "gui-icon-button-wrapper", host: { classAttribute: "gui-icon-button-wrapper" }, ngImport: i0, template: "<ng-content />\n", styles: [".gui-icon-button-wrapper{display:block;line-height:1}.gui-icon-button-wrapper .mat-mdc-icon-button{--mdc-icon-button-state-layer-size: 1.5rem;--mdc-icon-button-icon-size: .875rem;--mat-icon-button-touch-target-display: none;padding:0}.gui-icon-button-wrapper .mat-icon{display:inline-flex;justify-content:center;align-items:center;width:1.5rem;height:1.5rem}.gui-icon-button-wrapper .mat-icon svg{width:.875rem;height:.875rem}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
|
|
6
|
-
}
|
|
7
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: GuiIconButtonWrapper, decorators: [{
|
|
8
|
-
type: Component,
|
|
9
|
-
args: [{ selector: 'gui-icon-button-wrapper', standalone: true, host: {
|
|
10
|
-
class: 'gui-icon-button-wrapper',
|
|
11
|
-
}, encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, template: "<ng-content />\n", styles: [".gui-icon-button-wrapper{display:block;line-height:1}.gui-icon-button-wrapper .mat-mdc-icon-button{--mdc-icon-button-state-layer-size: 1.5rem;--mdc-icon-button-icon-size: .875rem;--mat-icon-button-touch-target-display: none;padding:0}.gui-icon-button-wrapper .mat-icon{display:inline-flex;justify-content:center;align-items:center;width:1.5rem;height:1.5rem}.gui-icon-button-wrapper .mat-icon svg{width:.875rem;height:.875rem}\n"] }]
|
|
12
|
-
}] });
|
|
13
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaWNvbi1idXR0b24td3JhcHBlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL2d1aS9pY29uLWJ1dHRvbi13cmFwcGVyL2ljb24tYnV0dG9uLXdyYXBwZXIudHMiLCIuLi8uLi8uLi8uLi9wcm9qZWN0cy9ndWkvaWNvbi1idXR0b24td3JhcHBlci9pY29uLWJ1dHRvbi13cmFwcGVyLmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7QUFhdEYsTUFBTSxPQUFPLG9CQUFvQjsrR0FBcEIsb0JBQW9CO21HQUFwQixvQkFBb0Isd0lDYmpDLGtCQUNBOzs0RkRZYSxvQkFBb0I7a0JBWGhDLFNBQVM7K0JBQ0UseUJBQXlCLGNBQ3ZCLElBQUksUUFHVjt3QkFDSixLQUFLLEVBQUUseUJBQXlCO3FCQUNqQyxpQkFDYyxpQkFBaUIsQ0FBQyxJQUFJLG1CQUNwQix1QkFBdUIsQ0FBQyxNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgVmlld0VuY2Fwc3VsYXRpb24gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZ3VpLWljb24tYnV0dG9uLXdyYXBwZXInLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICB0ZW1wbGF0ZVVybDogJy4vaWNvbi1idXR0b24td3JhcHBlci5odG1sJyxcbiAgc3R5bGVVcmw6ICcuL2ljb24tYnV0dG9uLXdyYXBwZXIuc2NzcycsXG4gIGhvc3Q6IHtcbiAgICBjbGFzczogJ2d1aS1pY29uLWJ1dHRvbi13cmFwcGVyJyxcbiAgfSxcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG59KVxuZXhwb3J0IGNsYXNzIEd1aUljb25CdXR0b25XcmFwcGVyIHt9XG4iLCI8bmctY29udGVudCAvPlxuIl19
|
|
@@ -1,79 +0,0 @@
|
|
|
1
|
-
import { ChangeDetectionStrategy, ChangeDetectorRef, Component, forwardRef, inject, Input, ViewChild, ViewEncapsulation, } from '@angular/core';
|
|
2
|
-
import { FormsModule, NG_VALUE_ACCESSOR } from '@angular/forms';
|
|
3
|
-
import { MatFormField, MatHint, MatPrefix, MatSuffix } from '@angular/material/form-field';
|
|
4
|
-
import { MtxSelect, MtxSelectLabelTemplate, MtxSelectOptionTemplate, } from '@ng-matero/extensions/select';
|
|
5
|
-
import { GuiFieldLabel } from '../field-label/field-label';
|
|
6
|
-
import * as i0 from "@angular/core";
|
|
7
|
-
import * as i1 from "@angular/forms";
|
|
8
|
-
export class GuiImageSelect {
|
|
9
|
-
constructor() {
|
|
10
|
-
this.cdr = inject(ChangeDetectorRef);
|
|
11
|
-
this.config = {};
|
|
12
|
-
this.disabled = false;
|
|
13
|
-
this.appendTo = 'body';
|
|
14
|
-
this.onChange = () => { };
|
|
15
|
-
this.onTouched = () => { };
|
|
16
|
-
}
|
|
17
|
-
ngAfterViewInit() {
|
|
18
|
-
// Add additional class for ng-select's dropdown panel
|
|
19
|
-
const { ngSelect } = this.mtxSelect;
|
|
20
|
-
ngSelect.classes = (ngSelect.classes || '') + ' gui-image-select';
|
|
21
|
-
}
|
|
22
|
-
writeValue(value) {
|
|
23
|
-
this.value = value;
|
|
24
|
-
this.cdr.markForCheck();
|
|
25
|
-
}
|
|
26
|
-
registerOnChange(fn) {
|
|
27
|
-
this.onChange = fn;
|
|
28
|
-
}
|
|
29
|
-
registerOnTouched(fn) {
|
|
30
|
-
this.onTouched = fn;
|
|
31
|
-
}
|
|
32
|
-
setDisabledState(isDisabled) {
|
|
33
|
-
this.disabled = isDisabled;
|
|
34
|
-
this.cdr.markForCheck();
|
|
35
|
-
}
|
|
36
|
-
onValueChange() {
|
|
37
|
-
this.onChange(this.value);
|
|
38
|
-
}
|
|
39
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: GuiImageSelect, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
40
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: GuiImageSelect, isStandalone: true, selector: "gui-image-select", inputs: { config: "config", disabled: "disabled", appendTo: "appendTo" }, host: { classAttribute: "gui-field gui-image-select" }, providers: [
|
|
41
|
-
{
|
|
42
|
-
provide: NG_VALUE_ACCESSOR,
|
|
43
|
-
useExisting: forwardRef(() => GuiImageSelect),
|
|
44
|
-
multi: true,
|
|
45
|
-
},
|
|
46
|
-
], viewQueries: [{ propertyName: "mtxSelect", first: true, predicate: MtxSelect, descendants: true }], ngImport: i0, template: "<mat-form-field>\n @if (config.prefix) {\n <span matPrefix>{{ config.prefix }}</span>\n }\n <mtx-select\n [items]=\"config.options || []\"\n [appendTo]=\"appendTo\"\n bindValue=\"value\"\n [(ngModel)]=\"value\"\n [disabled]=\"disabled\"\n [placeholder]=\"config.placeholder || ''\"\n (change)=\"onValueChange()\"\n >\n <ng-template ng-label-tmp let-opt=\"item\">\n <img [src]=\"opt.src\" [alt]=\"opt.label\" />\n <span>{{ opt.label }}</span>\n </ng-template>\n <ng-template ng-option-tmp let-opt=\"item\" let-index=\"index\" let-search=\"searchTerm\">\n <img [src]=\"opt.src\" [alt]=\"opt.label\" />\n <span>{{ opt.label }}</span>\n </ng-template>\n </mtx-select>\n @if (config.suffix) {\n <span matSuffix>{{ config.suffix }}</span>\n }\n @if (config.parentType === 'inline') {\n <mat-hint>\n <gui-field-label [config]=\"config\" />\n </mat-hint>\n }\n</mat-form-field>\n", styles: [".gui-image-select.ng-dropdown-panel .ng-dropdown-panel-items .ng-option img,.gui-image-select .ng-select .ng-value img{height:100%;max-width:7.5rem;object-fit:contain;border-radius:.25rem;background-color:var(--mat-option-hover-state-layer-color)}.gui-image-select{--mat-form-field-container-vertical-padding: 0}.gui-image-select .ng-select{padding:0 .5rem;margin:0 -.5rem}.gui-image-select .ng-select .ng-value-container{height:4rem}.gui-image-select .ng-select .ng-value{display:inline-flex;align-items:center;gap:.5rem;height:100%;padding:.5rem 0}.gui-image-select .ng-select .ng-clear-wrapper .ng-clear{font-family:math;font-size:12px}.gui-image-select .ng-select .ng-arrow{vertical-align:-1px}.gui-image-select.ng-dropdown-panel .ng-dropdown-panel-items .ng-option{display:flex;align-items:center;gap:.5rem;height:4rem;padding:.5rem}\n"], dependencies: [{ kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: MatPrefix, selector: "[matPrefix], [matIconPrefix], [matTextPrefix]", inputs: ["matTextPrefix"] }, { kind: "directive", type: MatSuffix, selector: "[matSuffix], [matIconSuffix], [matTextSuffix]", inputs: ["matTextSuffix"] }, { kind: "directive", type: MatHint, selector: "mat-hint", inputs: ["align", "id"] }, { kind: "component", type: MtxSelect, selector: "mtx-select", inputs: ["addTag", "addTagText", "appearance", "appendTo", "bindLabel", "bindValue", "closeOnSelect", "clearAllText", "clearable", "clearOnBackspace", "compareWith", "dropdownPosition", "groupBy", "groupValue", "bufferAmount", "selectableGroup", "selectableGroupAsModel", "hideSelected", "loading", "loadingText", "labelForId", "markFirst", "maxSelectedItems", "multiple", "notFoundText", "searchable", "readonly", "searchFn", "searchWhileComposing", "selectOnTab", "trackByFn", "inputAttrs", "tabIndex", "openOnEnter", "minTermLength", "editableSearchTerm", "keyDownFn", "virtualScroll", "typeToSearchText", "typeahead", "isOpen", "fixedPlaceholder", "deselectOnClick", "clearSearchOnAdd", "items", "value", "id", "placeholder", "disabled", "required", "errorStateMatcher", "aria-label", "aria-labelledby"], outputs: ["blur", "focus", "change", "open", "close", "search", "clear", "add", "remove", "scroll", "scrollToEnd"], exportAs: ["mtxSelect"] }, { kind: "directive", type: MtxSelectLabelTemplate, selector: "[ng-label-tmp]" }, { kind: "directive", type: MtxSelectOptionTemplate, selector: "[ng-option-tmp]" }, { kind: "component", type: GuiFieldLabel, selector: "gui-field-label", inputs: ["config", "index"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
|
|
47
|
-
}
|
|
48
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: GuiImageSelect, decorators: [{
|
|
49
|
-
type: Component,
|
|
50
|
-
args: [{ selector: 'gui-image-select', host: {
|
|
51
|
-
class: 'gui-field gui-image-select',
|
|
52
|
-
}, encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, providers: [
|
|
53
|
-
{
|
|
54
|
-
provide: NG_VALUE_ACCESSOR,
|
|
55
|
-
useExisting: forwardRef(() => GuiImageSelect),
|
|
56
|
-
multi: true,
|
|
57
|
-
},
|
|
58
|
-
], standalone: true, imports: [
|
|
59
|
-
FormsModule,
|
|
60
|
-
MatFormField,
|
|
61
|
-
MatPrefix,
|
|
62
|
-
MatSuffix,
|
|
63
|
-
MatHint,
|
|
64
|
-
MtxSelect,
|
|
65
|
-
MtxSelectLabelTemplate,
|
|
66
|
-
MtxSelectOptionTemplate,
|
|
67
|
-
GuiFieldLabel,
|
|
68
|
-
], template: "<mat-form-field>\n @if (config.prefix) {\n <span matPrefix>{{ config.prefix }}</span>\n }\n <mtx-select\n [items]=\"config.options || []\"\n [appendTo]=\"appendTo\"\n bindValue=\"value\"\n [(ngModel)]=\"value\"\n [disabled]=\"disabled\"\n [placeholder]=\"config.placeholder || ''\"\n (change)=\"onValueChange()\"\n >\n <ng-template ng-label-tmp let-opt=\"item\">\n <img [src]=\"opt.src\" [alt]=\"opt.label\" />\n <span>{{ opt.label }}</span>\n </ng-template>\n <ng-template ng-option-tmp let-opt=\"item\" let-index=\"index\" let-search=\"searchTerm\">\n <img [src]=\"opt.src\" [alt]=\"opt.label\" />\n <span>{{ opt.label }}</span>\n </ng-template>\n </mtx-select>\n @if (config.suffix) {\n <span matSuffix>{{ config.suffix }}</span>\n }\n @if (config.parentType === 'inline') {\n <mat-hint>\n <gui-field-label [config]=\"config\" />\n </mat-hint>\n }\n</mat-form-field>\n", styles: [".gui-image-select.ng-dropdown-panel .ng-dropdown-panel-items .ng-option img,.gui-image-select .ng-select .ng-value img{height:100%;max-width:7.5rem;object-fit:contain;border-radius:.25rem;background-color:var(--mat-option-hover-state-layer-color)}.gui-image-select{--mat-form-field-container-vertical-padding: 0}.gui-image-select .ng-select{padding:0 .5rem;margin:0 -.5rem}.gui-image-select .ng-select .ng-value-container{height:4rem}.gui-image-select .ng-select .ng-value{display:inline-flex;align-items:center;gap:.5rem;height:100%;padding:.5rem 0}.gui-image-select .ng-select .ng-clear-wrapper .ng-clear{font-family:math;font-size:12px}.gui-image-select .ng-select .ng-arrow{vertical-align:-1px}.gui-image-select.ng-dropdown-panel .ng-dropdown-panel-items .ng-option{display:flex;align-items:center;gap:.5rem;height:4rem;padding:.5rem}\n"] }]
|
|
69
|
-
}], propDecorators: { mtxSelect: [{
|
|
70
|
-
type: ViewChild,
|
|
71
|
-
args: [MtxSelect]
|
|
72
|
-
}], config: [{
|
|
73
|
-
type: Input
|
|
74
|
-
}], disabled: [{
|
|
75
|
-
type: Input
|
|
76
|
-
}], appendTo: [{
|
|
77
|
-
type: Input
|
|
78
|
-
}] } });
|
|
79
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW1hZ2Utc2VsZWN0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvZ3VpL2ltYWdlLXNlbGVjdC9pbWFnZS1zZWxlY3QudHMiLCIuLi8uLi8uLi8uLi9wcm9qZWN0cy9ndWkvaW1hZ2Utc2VsZWN0L2ltYWdlLXNlbGVjdC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFFTCx1QkFBdUIsRUFDdkIsaUJBQWlCLEVBQ2pCLFNBQVMsRUFDVCxVQUFVLEVBQ1YsTUFBTSxFQUNOLEtBQUssRUFDTCxTQUFTLEVBQ1QsaUJBQWlCLEdBQ2xCLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBd0IsV0FBVyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDdEYsT0FBTyxFQUFFLFlBQVksRUFBRSxPQUFPLEVBQUUsU0FBUyxFQUFFLFNBQVMsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQzNGLE9BQU8sRUFDTCxTQUFTLEVBQ1Qsc0JBQXNCLEVBQ3RCLHVCQUF1QixHQUN4QixNQUFNLDhCQUE4QixDQUFDO0FBQ3RDLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQzs7O0FBZ0MzRCxNQUFNLE9BQU8sY0FBYztJQTdCM0I7UUE4QlUsUUFBRyxHQUFHLE1BQU0sQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDO1FBSS9CLFdBQU0sR0FBd0IsRUFBRSxDQUFDO1FBQ2pDLGFBQVEsR0FBRyxLQUFLLENBQUM7UUFDakIsYUFBUSxHQUFHLE1BQU0sQ0FBQztRQUluQixhQUFRLEdBQXlCLEdBQUcsRUFBRSxHQUFFLENBQUMsQ0FBQztRQUMxQyxjQUFTLEdBQWUsR0FBRyxFQUFFLEdBQUUsQ0FBQyxDQUFDO0tBNkIxQztJQTNCQyxlQUFlO1FBQ2Isc0RBQXNEO1FBQ3RELE1BQU0sRUFBRSxRQUFRLEVBQUUsR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDO1FBQ3BDLFFBQVEsQ0FBQyxPQUFPLEdBQUcsQ0FBQyxRQUFRLENBQUMsT0FBTyxJQUFJLEVBQUUsQ0FBQyxHQUFHLG1CQUFtQixDQUFDO0lBQ3BFLENBQUM7SUFFRCxVQUFVLENBQUMsS0FBVTtRQUNuQixJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztRQUNuQixJQUFJLENBQUMsR0FBRyxDQUFDLFlBQVksRUFBRSxDQUFDO0lBQzFCLENBQUM7SUFFRCxnQkFBZ0IsQ0FBQyxFQUF3QjtRQUN2QyxJQUFJLENBQUMsUUFBUSxHQUFHLEVBQUUsQ0FBQztJQUNyQixDQUFDO0lBRUQsaUJBQWlCLENBQUMsRUFBYztRQUM5QixJQUFJLENBQUMsU0FBUyxHQUFHLEVBQUUsQ0FBQztJQUN0QixDQUFDO0lBRUQsZ0JBQWdCLENBQUMsVUFBbUI7UUFDbEMsSUFBSSxDQUFDLFFBQVEsR0FBRyxVQUFVLENBQUM7UUFDM0IsSUFBSSxDQUFDLEdBQUcsQ0FBQyxZQUFZLEVBQUUsQ0FBQztJQUMxQixDQUFDO0lBRUQsYUFBYTtRQUNYLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQzVCLENBQUM7K0dBeENVLGNBQWM7bUdBQWQsY0FBYyxpTUFwQmQ7WUFDVDtnQkFDRSxPQUFPLEVBQUUsaUJBQWlCO2dCQUMxQixXQUFXLEVBQUUsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLGNBQWMsQ0FBQztnQkFDN0MsS0FBSyxFQUFFLElBQUk7YUFDWjtTQUNGLHFFQWlCVSxTQUFTLGdEQ3JEdEIsdzdCQStCQSxpNEJEUUksV0FBVywrVkFDWCxZQUFZLDRMQUNaLFNBQVMscUhBQ1QsU0FBUyxxSEFDVCxPQUFPLDhFQUNQLFNBQVMsNitCQUNULHNCQUFzQiwyREFDdEIsdUJBQXVCLDREQUN2QixhQUFhOzs0RkFHSixjQUFjO2tCQTdCMUIsU0FBUzsrQkFDRSxrQkFBa0IsUUFHdEI7d0JBQ0osS0FBSyxFQUFFLDRCQUE0QjtxQkFDcEMsaUJBQ2MsaUJBQWlCLENBQUMsSUFBSSxtQkFDcEIsdUJBQXVCLENBQUMsTUFBTSxhQUNwQzt3QkFDVDs0QkFDRSxPQUFPLEVBQUUsaUJBQWlCOzRCQUMxQixXQUFXLEVBQUUsVUFBVSxDQUFDLEdBQUcsRUFBRSxlQUFlLENBQUM7NEJBQzdDLEtBQUssRUFBRSxJQUFJO3lCQUNaO3FCQUNGLGNBQ1csSUFBSSxXQUNQO3dCQUNQLFdBQVc7d0JBQ1gsWUFBWTt3QkFDWixTQUFTO3dCQUNULFNBQVM7d0JBQ1QsT0FBTzt3QkFDUCxTQUFTO3dCQUNULHNCQUFzQjt3QkFDdEIsdUJBQXVCO3dCQUN2QixhQUFhO3FCQUNkOzhCQUtxQixTQUFTO3NCQUE5QixTQUFTO3VCQUFDLFNBQVM7Z0JBRVgsTUFBTTtzQkFBZCxLQUFLO2dCQUNHLFFBQVE7c0JBQWhCLEtBQUs7Z0JBQ0csUUFBUTtzQkFBaEIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIEFmdGVyVmlld0luaXQsXG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgQ29tcG9uZW50LFxuICBmb3J3YXJkUmVmLFxuICBpbmplY3QsXG4gIElucHV0LFxuICBWaWV3Q2hpbGQsXG4gIFZpZXdFbmNhcHN1bGF0aW9uLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENvbnRyb2xWYWx1ZUFjY2Vzc29yLCBGb3Jtc01vZHVsZSwgTkdfVkFMVUVfQUNDRVNTT1IgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBNYXRGb3JtRmllbGQsIE1hdEhpbnQsIE1hdFByZWZpeCwgTWF0U3VmZml4IH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvZm9ybS1maWVsZCc7XG5pbXBvcnQge1xuICBNdHhTZWxlY3QsXG4gIE10eFNlbGVjdExhYmVsVGVtcGxhdGUsXG4gIE10eFNlbGVjdE9wdGlvblRlbXBsYXRlLFxufSBmcm9tICdAbmctbWF0ZXJvL2V4dGVuc2lvbnMvc2VsZWN0JztcbmltcG9ydCB7IEd1aUZpZWxkTGFiZWwgfSBmcm9tICcuLi9maWVsZC1sYWJlbC9maWVsZC1sYWJlbCc7XG5pbXBvcnQgeyBHdWlDb250cm9sIH0gZnJvbSAnLi4vaW50ZXJmYWNlJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZ3VpLWltYWdlLXNlbGVjdCcsXG4gIHRlbXBsYXRlVXJsOiAnLi9pbWFnZS1zZWxlY3QuaHRtbCcsXG4gIHN0eWxlVXJsOiAnLi9pbWFnZS1zZWxlY3Quc2NzcycsXG4gIGhvc3Q6IHtcbiAgICBjbGFzczogJ2d1aS1maWVsZCBndWktaW1hZ2Utc2VsZWN0JyxcbiAgfSxcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHByb3ZpZGVyczogW1xuICAgIHtcbiAgICAgIHByb3ZpZGU6IE5HX1ZBTFVFX0FDQ0VTU09SLFxuICAgICAgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gR3VpSW1hZ2VTZWxlY3QpLFxuICAgICAgbXVsdGk6IHRydWUsXG4gICAgfSxcbiAgXSxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW1xuICAgIEZvcm1zTW9kdWxlLFxuICAgIE1hdEZvcm1GaWVsZCxcbiAgICBNYXRQcmVmaXgsXG4gICAgTWF0U3VmZml4LFxuICAgIE1hdEhpbnQsXG4gICAgTXR4U2VsZWN0LFxuICAgIE10eFNlbGVjdExhYmVsVGVtcGxhdGUsXG4gICAgTXR4U2VsZWN0T3B0aW9uVGVtcGxhdGUsXG4gICAgR3VpRmllbGRMYWJlbCxcbiAgXSxcbn0pXG5leHBvcnQgY2xhc3MgR3VpSW1hZ2VTZWxlY3QgaW1wbGVtZW50cyBDb250cm9sVmFsdWVBY2Nlc3NvciwgQWZ0ZXJWaWV3SW5pdCB7XG4gIHByaXZhdGUgY2RyID0gaW5qZWN0KENoYW5nZURldGVjdG9yUmVmKTtcblxuICBAVmlld0NoaWxkKE10eFNlbGVjdCkgbXR4U2VsZWN0ITogTXR4U2VsZWN0O1xuXG4gIEBJbnB1dCgpIGNvbmZpZzogUGFydGlhbDxHdWlDb250cm9sPiA9IHt9O1xuICBASW5wdXQoKSBkaXNhYmxlZCA9IGZhbHNlO1xuICBASW5wdXQoKSBhcHBlbmRUbyA9ICdib2R5JztcblxuICB2YWx1ZTogYW55O1xuXG4gIHByaXZhdGUgb25DaGFuZ2U6ICh2YWx1ZTogYW55KSA9PiB2b2lkID0gKCkgPT4ge307XG4gIHByaXZhdGUgb25Ub3VjaGVkOiAoKSA9PiB2b2lkID0gKCkgPT4ge307XG5cbiAgbmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xuICAgIC8vIEFkZCBhZGRpdGlvbmFsIGNsYXNzIGZvciBuZy1zZWxlY3QncyBkcm9wZG93biBwYW5lbFxuICAgIGNvbnN0IHsgbmdTZWxlY3QgfSA9IHRoaXMubXR4U2VsZWN0O1xuICAgIG5nU2VsZWN0LmNsYXNzZXMgPSAobmdTZWxlY3QuY2xhc3NlcyB8fCAnJykgKyAnIGd1aS1pbWFnZS1zZWxlY3QnO1xuICB9XG5cbiAgd3JpdGVWYWx1ZSh2YWx1ZTogYW55KSB7XG4gICAgdGhpcy52YWx1ZSA9IHZhbHVlO1xuICAgIHRoaXMuY2RyLm1hcmtGb3JDaGVjaygpO1xuICB9XG5cbiAgcmVnaXN0ZXJPbkNoYW5nZShmbjogKHZhbHVlOiBhbnkpID0+IHZvaWQpIHtcbiAgICB0aGlzLm9uQ2hhbmdlID0gZm47XG4gIH1cblxuICByZWdpc3Rlck9uVG91Y2hlZChmbjogKCkgPT4gdm9pZCkge1xuICAgIHRoaXMub25Ub3VjaGVkID0gZm47XG4gIH1cblxuICBzZXREaXNhYmxlZFN0YXRlKGlzRGlzYWJsZWQ6IGJvb2xlYW4pIHtcbiAgICB0aGlzLmRpc2FibGVkID0gaXNEaXNhYmxlZDtcbiAgICB0aGlzLmNkci5tYXJrRm9yQ2hlY2soKTtcbiAgfVxuXG4gIG9uVmFsdWVDaGFuZ2UoKSB7XG4gICAgdGhpcy5vbkNoYW5nZSh0aGlzLnZhbHVlKTtcbiAgfVxufVxuIiwiPG1hdC1mb3JtLWZpZWxkPlxuICBAaWYgKGNvbmZpZy5wcmVmaXgpIHtcbiAgICA8c3BhbiBtYXRQcmVmaXg+e3sgY29uZmlnLnByZWZpeCB9fTwvc3Bhbj5cbiAgfVxuICA8bXR4LXNlbGVjdFxuICAgIFtpdGVtc109XCJjb25maWcub3B0aW9ucyB8fCBbXVwiXG4gICAgW2FwcGVuZFRvXT1cImFwcGVuZFRvXCJcbiAgICBiaW5kVmFsdWU9XCJ2YWx1ZVwiXG4gICAgWyhuZ01vZGVsKV09XCJ2YWx1ZVwiXG4gICAgW2Rpc2FibGVkXT1cImRpc2FibGVkXCJcbiAgICBbcGxhY2Vob2xkZXJdPVwiY29uZmlnLnBsYWNlaG9sZGVyIHx8ICcnXCJcbiAgICAoY2hhbmdlKT1cIm9uVmFsdWVDaGFuZ2UoKVwiXG4gID5cbiAgICA8bmctdGVtcGxhdGUgbmctbGFiZWwtdG1wIGxldC1vcHQ9XCJpdGVtXCI+XG4gICAgICA8aW1nIFtzcmNdPVwib3B0LnNyY1wiIFthbHRdPVwib3B0LmxhYmVsXCIgLz5cbiAgICAgIDxzcGFuPnt7IG9wdC5sYWJlbCB9fTwvc3Bhbj5cbiAgICA8L25nLXRlbXBsYXRlPlxuICAgIDxuZy10ZW1wbGF0ZSBuZy1vcHRpb24tdG1wIGxldC1vcHQ9XCJpdGVtXCIgbGV0LWluZGV4PVwiaW5kZXhcIiBsZXQtc2VhcmNoPVwic2VhcmNoVGVybVwiPlxuICAgICAgPGltZyBbc3JjXT1cIm9wdC5zcmNcIiBbYWx0XT1cIm9wdC5sYWJlbFwiIC8+XG4gICAgICA8c3Bhbj57eyBvcHQubGFiZWwgfX08L3NwYW4+XG4gICAgPC9uZy10ZW1wbGF0ZT5cbiAgPC9tdHgtc2VsZWN0PlxuICBAaWYgKGNvbmZpZy5zdWZmaXgpIHtcbiAgICA8c3BhbiBtYXRTdWZmaXg+e3sgY29uZmlnLnN1ZmZpeCB9fTwvc3Bhbj5cbiAgfVxuICBAaWYgKGNvbmZpZy5wYXJlbnRUeXBlID09PSAnaW5saW5lJykge1xuICAgIDxtYXQtaGludD5cbiAgICAgIDxndWktZmllbGQtbGFiZWwgW2NvbmZpZ109XCJjb25maWdcIiAvPlxuICAgIDwvbWF0LWhpbnQ+XG4gIH1cbjwvbWF0LWZvcm0tZmllbGQ+XG4iXX0=
|
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
import { ChangeDetectionStrategy, Component, Input, ViewEncapsulation } from '@angular/core';
|
|
2
|
-
import { GuiFieldLabel } from '../field-label/field-label';
|
|
3
|
-
import * as i0 from "@angular/core";
|
|
4
|
-
export class GuiInlineGroup {
|
|
5
|
-
constructor() {
|
|
6
|
-
this.config = {};
|
|
7
|
-
}
|
|
8
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: GuiInlineGroup, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
9
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: GuiInlineGroup, isStandalone: true, selector: "gui-inline-group", inputs: { config: "config" }, host: { classAttribute: "gui-inline-group" }, ngImport: i0, template: "@if (config.name) {\n <gui-field-label [config]=\"config\" />\n}\n<div class=\"gui-inline-group-content\">\n <ng-content />\n</div>\n", styles: [".gui-inline-group{display:flex;padding:.25rem .5rem}.gui-inline-group mat-hint{width:100%;line-height:var(--mat-form-field-subscript-text-line-height);-webkit-font-smoothing:antialiased}.gui-inline-group-content{display:inline-flex;flex:1;flex-flow:row wrap;margin:0 -.25rem}.gui-inline-group-content>.gui-field-group,.gui-inline-group-content>.gui-inline-group,.gui-inline-group-content>.mat-expansion-panel,.gui-inline-group-content>.gui-menu{width:100%;padding:0 .25rem}\n"], dependencies: [{ kind: "component", type: GuiFieldLabel, selector: "gui-field-label", inputs: ["config", "index"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
|
|
10
|
-
}
|
|
11
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: GuiInlineGroup, decorators: [{
|
|
12
|
-
type: Component,
|
|
13
|
-
args: [{ selector: 'gui-inline-group', host: {
|
|
14
|
-
class: 'gui-inline-group',
|
|
15
|
-
}, encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [GuiFieldLabel], template: "@if (config.name) {\n <gui-field-label [config]=\"config\" />\n}\n<div class=\"gui-inline-group-content\">\n <ng-content />\n</div>\n", styles: [".gui-inline-group{display:flex;padding:.25rem .5rem}.gui-inline-group mat-hint{width:100%;line-height:var(--mat-form-field-subscript-text-line-height);-webkit-font-smoothing:antialiased}.gui-inline-group-content{display:inline-flex;flex:1;flex-flow:row wrap;margin:0 -.25rem}.gui-inline-group-content>.gui-field-group,.gui-inline-group-content>.gui-inline-group,.gui-inline-group-content>.mat-expansion-panel,.gui-inline-group-content>.gui-menu{width:100%;padding:0 .25rem}\n"] }]
|
|
16
|
-
}], propDecorators: { config: [{
|
|
17
|
-
type: Input
|
|
18
|
-
}] } });
|
|
19
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5saW5lLWdyb3VwLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvZ3VpL2lubGluZS1ncm91cC9pbmxpbmUtZ3JvdXAudHMiLCIuLi8uLi8uLi8uLi9wcm9qZWN0cy9ndWkvaW5saW5lLWdyb3VwL2lubGluZS1ncm91cC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzdGLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQzs7QUFlM0QsTUFBTSxPQUFPLGNBQWM7SUFaM0I7UUFhVyxXQUFNLEdBQXdCLEVBQUUsQ0FBQztLQUMzQzsrR0FGWSxjQUFjO21HQUFkLGNBQWMsd0pDaEIzQix5SUFNQSxxaEJEUVksYUFBYTs7NEZBRVosY0FBYztrQkFaMUIsU0FBUzsrQkFDRSxrQkFBa0IsUUFHdEI7d0JBQ0osS0FBSyxFQUFFLGtCQUFrQjtxQkFDMUIsaUJBQ2MsaUJBQWlCLENBQUMsSUFBSSxtQkFDcEIsdUJBQXVCLENBQUMsTUFBTSxjQUNuQyxJQUFJLFdBQ1AsQ0FBQyxhQUFhLENBQUM7OEJBR2YsTUFBTTtzQkFBZCxLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgSW5wdXQsIFZpZXdFbmNhcHN1bGF0aW9uIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBHdWlGaWVsZExhYmVsIH0gZnJvbSAnLi4vZmllbGQtbGFiZWwvZmllbGQtbGFiZWwnO1xuaW1wb3J0IHsgR3VpQ29udHJvbCB9IGZyb20gJy4uL2ludGVyZmFjZSc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2d1aS1pbmxpbmUtZ3JvdXAnLFxuICB0ZW1wbGF0ZVVybDogJy4vaW5saW5lLWdyb3VwLmh0bWwnLFxuICBzdHlsZVVybDogJy4vaW5saW5lLWdyb3VwLnNjc3MnLFxuICBob3N0OiB7XG4gICAgY2xhc3M6ICdndWktaW5saW5lLWdyb3VwJyxcbiAgfSxcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtHdWlGaWVsZExhYmVsXSxcbn0pXG5leHBvcnQgY2xhc3MgR3VpSW5saW5lR3JvdXAge1xuICBASW5wdXQoKSBjb25maWc6IFBhcnRpYWw8R3VpQ29udHJvbD4gPSB7fTtcbn1cbiIsIkBpZiAoY29uZmlnLm5hbWUpIHtcbiAgPGd1aS1maWVsZC1sYWJlbCBbY29uZmlnXT1cImNvbmZpZ1wiIC8+XG59XG48ZGl2IGNsYXNzPVwiZ3VpLWlubGluZS1ncm91cC1jb250ZW50XCI+XG4gIDxuZy1jb250ZW50IC8+XG48L2Rpdj5cbiJdfQ==
|
|
@@ -1,58 +0,0 @@
|
|
|
1
|
-
import { ChangeDetectionStrategy, ChangeDetectorRef, Component, forwardRef, inject, Input, ViewEncapsulation, } from '@angular/core';
|
|
2
|
-
import { FormsModule, NG_VALUE_ACCESSOR } from '@angular/forms';
|
|
3
|
-
import { MatFormField, MatHint, MatPrefix, MatSuffix } from '@angular/material/form-field';
|
|
4
|
-
import { MatInput } from '@angular/material/input';
|
|
5
|
-
import { GuiFieldLabel } from '../field-label/field-label';
|
|
6
|
-
import * as i0 from "@angular/core";
|
|
7
|
-
import * as i1 from "@angular/forms";
|
|
8
|
-
export class GuiInputNumber {
|
|
9
|
-
constructor() {
|
|
10
|
-
this.cdr = inject(ChangeDetectorRef);
|
|
11
|
-
this.config = {};
|
|
12
|
-
this.disabled = false;
|
|
13
|
-
this.onChange = () => { };
|
|
14
|
-
this.onTouched = () => { };
|
|
15
|
-
}
|
|
16
|
-
writeValue(value) {
|
|
17
|
-
this.value = value;
|
|
18
|
-
this.cdr.markForCheck();
|
|
19
|
-
}
|
|
20
|
-
registerOnChange(fn) {
|
|
21
|
-
this.onChange = fn;
|
|
22
|
-
}
|
|
23
|
-
registerOnTouched(fn) {
|
|
24
|
-
this.onTouched = fn;
|
|
25
|
-
}
|
|
26
|
-
setDisabledState(isDisabled) {
|
|
27
|
-
this.disabled = isDisabled;
|
|
28
|
-
this.cdr.markForCheck();
|
|
29
|
-
}
|
|
30
|
-
onValueChange() {
|
|
31
|
-
this.onChange(this.value);
|
|
32
|
-
}
|
|
33
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: GuiInputNumber, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
34
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: GuiInputNumber, isStandalone: true, selector: "gui-input-number", inputs: { config: "config", disabled: "disabled" }, host: { classAttribute: "gui-field gui-input-number" }, providers: [
|
|
35
|
-
{
|
|
36
|
-
provide: NG_VALUE_ACCESSOR,
|
|
37
|
-
useExisting: forwardRef(() => GuiInputNumber),
|
|
38
|
-
multi: true,
|
|
39
|
-
},
|
|
40
|
-
], ngImport: i0, template: "<mat-form-field>\n @if (config.prefix) {\n <span matPrefix>{{ config.prefix }}</span>\n }\n <input\n matInput\n type=\"number\"\n [(ngModel)]=\"value\"\n [disabled]=\"disabled\"\n [placeholder]=\"config.placeholder || ''\"\n [step]=\"config.step\"\n [min]=\"config.min!\"\n [max]=\"config.max!\"\n (change)=\"onValueChange()\"\n />\n @if (config.suffix) {\n <span matSuffix>{{ config.suffix }}</span>\n }\n @if (config.parentType === 'inline') {\n <mat-hint>\n <gui-field-label [config]=\"config\" />\n </mat-hint>\n }\n</mat-form-field>\n", styles: [""], dependencies: [{ kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1.NumberValueAccessor, selector: "input[type=number][formControlName],input[type=number][formControl],input[type=number][ngModel]" }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.MinValidator, selector: "input[type=number][min][formControlName],input[type=number][min][formControl],input[type=number][min][ngModel]", inputs: ["min"] }, { kind: "directive", type: i1.MaxValidator, selector: "input[type=number][max][formControlName],input[type=number][max][formControl],input[type=number][max][ngModel]", inputs: ["max"] }, { kind: "directive", type: i1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: MatPrefix, selector: "[matPrefix], [matIconPrefix], [matTextPrefix]", inputs: ["matTextPrefix"] }, { kind: "directive", type: MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { kind: "directive", type: MatSuffix, selector: "[matSuffix], [matIconSuffix], [matTextSuffix]", inputs: ["matTextSuffix"] }, { kind: "directive", type: MatHint, selector: "mat-hint", inputs: ["align", "id"] }, { kind: "component", type: GuiFieldLabel, selector: "gui-field-label", inputs: ["config", "index"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
|
|
41
|
-
}
|
|
42
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: GuiInputNumber, decorators: [{
|
|
43
|
-
type: Component,
|
|
44
|
-
args: [{ selector: 'gui-input-number', host: {
|
|
45
|
-
class: 'gui-field gui-input-number',
|
|
46
|
-
}, encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, providers: [
|
|
47
|
-
{
|
|
48
|
-
provide: NG_VALUE_ACCESSOR,
|
|
49
|
-
useExisting: forwardRef(() => GuiInputNumber),
|
|
50
|
-
multi: true,
|
|
51
|
-
},
|
|
52
|
-
], standalone: true, imports: [FormsModule, MatFormField, MatPrefix, MatInput, MatSuffix, MatHint, GuiFieldLabel], template: "<mat-form-field>\n @if (config.prefix) {\n <span matPrefix>{{ config.prefix }}</span>\n }\n <input\n matInput\n type=\"number\"\n [(ngModel)]=\"value\"\n [disabled]=\"disabled\"\n [placeholder]=\"config.placeholder || ''\"\n [step]=\"config.step\"\n [min]=\"config.min!\"\n [max]=\"config.max!\"\n (change)=\"onValueChange()\"\n />\n @if (config.suffix) {\n <span matSuffix>{{ config.suffix }}</span>\n }\n @if (config.parentType === 'inline') {\n <mat-hint>\n <gui-field-label [config]=\"config\" />\n </mat-hint>\n }\n</mat-form-field>\n" }]
|
|
53
|
-
}], propDecorators: { config: [{
|
|
54
|
-
type: Input
|
|
55
|
-
}], disabled: [{
|
|
56
|
-
type: Input
|
|
57
|
-
}] } });
|
|
58
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5wdXQtbnVtYmVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvZ3VpL2lucHV0LW51bWJlci9pbnB1dC1udW1iZXIudHMiLCIuLi8uLi8uLi8uLi9wcm9qZWN0cy9ndWkvaW5wdXQtbnVtYmVyL2lucHV0LW51bWJlci5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCx1QkFBdUIsRUFDdkIsaUJBQWlCLEVBQ2pCLFNBQVMsRUFDVCxVQUFVLEVBQ1YsTUFBTSxFQUNOLEtBQUssRUFDTCxpQkFBaUIsR0FDbEIsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUF3QixXQUFXLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUN0RixPQUFPLEVBQUUsWUFBWSxFQUFFLE9BQU8sRUFBRSxTQUFTLEVBQUUsU0FBUyxFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFDM0YsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQ25ELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQzs7O0FBc0IzRCxNQUFNLE9BQU8sY0FBYztJQW5CM0I7UUFvQlUsUUFBRyxHQUFHLE1BQU0sQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDO1FBRS9CLFdBQU0sR0FBd0IsRUFBRSxDQUFDO1FBQ2pDLGFBQVEsR0FBRyxLQUFLLENBQUM7UUFJbEIsYUFBUSxHQUE0QixHQUFHLEVBQUUsR0FBRSxDQUFDLENBQUM7UUFDN0MsY0FBUyxHQUFlLEdBQUcsRUFBRSxHQUFFLENBQUMsQ0FBQztLQXVCMUM7SUFyQkMsVUFBVSxDQUFDLEtBQVU7UUFDbkIsSUFBSSxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUM7UUFDbkIsSUFBSSxDQUFDLEdBQUcsQ0FBQyxZQUFZLEVBQUUsQ0FBQztJQUMxQixDQUFDO0lBRUQsZ0JBQWdCLENBQUMsRUFBMkI7UUFDMUMsSUFBSSxDQUFDLFFBQVEsR0FBRyxFQUFFLENBQUM7SUFDckIsQ0FBQztJQUVELGlCQUFpQixDQUFDLEVBQWM7UUFDOUIsSUFBSSxDQUFDLFNBQVMsR0FBRyxFQUFFLENBQUM7SUFDdEIsQ0FBQztJQUVELGdCQUFnQixDQUFDLFVBQW1CO1FBQ2xDLElBQUksQ0FBQyxRQUFRLEdBQUcsVUFBVSxDQUFDO1FBQzNCLElBQUksQ0FBQyxHQUFHLENBQUMsWUFBWSxFQUFFLENBQUM7SUFDMUIsQ0FBQztJQUVELGFBQWE7UUFDWCxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUM1QixDQUFDOytHQS9CVSxjQUFjO21HQUFkLGNBQWMsMktBVmQ7WUFDVDtnQkFDRSxPQUFPLEVBQUUsaUJBQWlCO2dCQUMxQixXQUFXLEVBQUUsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLGNBQWMsQ0FBQztnQkFDN0MsS0FBSyxFQUFFLElBQUk7YUFDWjtTQUNGLDBCQzlCSCxpbEJBd0JBLHlERFFZLFdBQVcsdW9DQUFFLFlBQVksNExBQUUsU0FBUyxxSEFBRSxRQUFRLGlVQUFFLFNBQVMscUhBQUUsT0FBTyw4RUFBRSxhQUFhOzs0RkFFaEYsY0FBYztrQkFuQjFCLFNBQVM7K0JBQ0Usa0JBQWtCLFFBR3RCO3dCQUNKLEtBQUssRUFBRSw0QkFBNEI7cUJBQ3BDLGlCQUNjLGlCQUFpQixDQUFDLElBQUksbUJBQ3BCLHVCQUF1QixDQUFDLE1BQU0sYUFDcEM7d0JBQ1Q7NEJBQ0UsT0FBTyxFQUFFLGlCQUFpQjs0QkFDMUIsV0FBVyxFQUFFLFVBQVUsQ0FBQyxHQUFHLEVBQUUsZUFBZSxDQUFDOzRCQUM3QyxLQUFLLEVBQUUsSUFBSTt5QkFDWjtxQkFDRixjQUNXLElBQUksV0FDUCxDQUFDLFdBQVcsRUFBRSxZQUFZLEVBQUUsU0FBUyxFQUFFLFFBQVEsRUFBRSxTQUFTLEVBQUUsT0FBTyxFQUFFLGFBQWEsQ0FBQzs4QkFLbkYsTUFBTTtzQkFBZCxLQUFLO2dCQUNHLFFBQVE7c0JBQWhCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gIENvbXBvbmVudCxcbiAgZm9yd2FyZFJlZixcbiAgaW5qZWN0LFxuICBJbnB1dCxcbiAgVmlld0VuY2Fwc3VsYXRpb24sXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ29udHJvbFZhbHVlQWNjZXNzb3IsIEZvcm1zTW9kdWxlLCBOR19WQUxVRV9BQ0NFU1NPUiB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IE1hdEZvcm1GaWVsZCwgTWF0SGludCwgTWF0UHJlZml4LCBNYXRTdWZmaXggfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9mb3JtLWZpZWxkJztcbmltcG9ydCB7IE1hdElucHV0IH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvaW5wdXQnO1xuaW1wb3J0IHsgR3VpRmllbGRMYWJlbCB9IGZyb20gJy4uL2ZpZWxkLWxhYmVsL2ZpZWxkLWxhYmVsJztcbmltcG9ydCB7IEd1aUNvbnRyb2wgfSBmcm9tICcuLi9pbnRlcmZhY2UnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdndWktaW5wdXQtbnVtYmVyJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2lucHV0LW51bWJlci5odG1sJyxcbiAgc3R5bGVVcmw6ICcuL2lucHV0LW51bWJlci5zY3NzJyxcbiAgaG9zdDoge1xuICAgIGNsYXNzOiAnZ3VpLWZpZWxkIGd1aS1pbnB1dC1udW1iZXInLFxuICB9LFxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgcHJvdmlkZXJzOiBbXG4gICAge1xuICAgICAgcHJvdmlkZTogTkdfVkFMVUVfQUNDRVNTT1IsXG4gICAgICB1c2VFeGlzdGluZzogZm9yd2FyZFJlZigoKSA9PiBHdWlJbnB1dE51bWJlciksXG4gICAgICBtdWx0aTogdHJ1ZSxcbiAgICB9LFxuICBdLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbRm9ybXNNb2R1bGUsIE1hdEZvcm1GaWVsZCwgTWF0UHJlZml4LCBNYXRJbnB1dCwgTWF0U3VmZml4LCBNYXRIaW50LCBHdWlGaWVsZExhYmVsXSxcbn0pXG5leHBvcnQgY2xhc3MgR3VpSW5wdXROdW1iZXIgaW1wbGVtZW50cyBDb250cm9sVmFsdWVBY2Nlc3NvciB7XG4gIHByaXZhdGUgY2RyID0gaW5qZWN0KENoYW5nZURldGVjdG9yUmVmKTtcblxuICBASW5wdXQoKSBjb25maWc6IFBhcnRpYWw8R3VpQ29udHJvbD4gPSB7fTtcbiAgQElucHV0KCkgZGlzYWJsZWQgPSBmYWxzZTtcblxuICB2YWx1ZSE6IG51bWJlcjtcblxuICBwcml2YXRlIG9uQ2hhbmdlOiAodmFsdWU6IG51bWJlcikgPT4gdm9pZCA9ICgpID0+IHt9O1xuICBwcml2YXRlIG9uVG91Y2hlZDogKCkgPT4gdm9pZCA9ICgpID0+IHt9O1xuXG4gIHdyaXRlVmFsdWUodmFsdWU6IGFueSkge1xuICAgIHRoaXMudmFsdWUgPSB2YWx1ZTtcbiAgICB0aGlzLmNkci5tYXJrRm9yQ2hlY2soKTtcbiAgfVxuXG4gIHJlZ2lzdGVyT25DaGFuZ2UoZm46ICh2YWx1ZTogbnVtYmVyKSA9PiB2b2lkKSB7XG4gICAgdGhpcy5vbkNoYW5nZSA9IGZuO1xuICB9XG5cbiAgcmVnaXN0ZXJPblRvdWNoZWQoZm46ICgpID0+IHZvaWQpIHtcbiAgICB0aGlzLm9uVG91Y2hlZCA9IGZuO1xuICB9XG5cbiAgc2V0RGlzYWJsZWRTdGF0ZShpc0Rpc2FibGVkOiBib29sZWFuKSB7XG4gICAgdGhpcy5kaXNhYmxlZCA9IGlzRGlzYWJsZWQ7XG4gICAgdGhpcy5jZHIubWFya0ZvckNoZWNrKCk7XG4gIH1cblxuICBvblZhbHVlQ2hhbmdlKCkge1xuICAgIHRoaXMub25DaGFuZ2UodGhpcy52YWx1ZSk7XG4gIH1cbn1cbiIsIjxtYXQtZm9ybS1maWVsZD5cbiAgQGlmIChjb25maWcucHJlZml4KSB7XG4gICAgPHNwYW4gbWF0UHJlZml4Pnt7IGNvbmZpZy5wcmVmaXggfX08L3NwYW4+XG4gIH1cbiAgPGlucHV0XG4gICAgbWF0SW5wdXRcbiAgICB0eXBlPVwibnVtYmVyXCJcbiAgICBbKG5nTW9kZWwpXT1cInZhbHVlXCJcbiAgICBbZGlzYWJsZWRdPVwiZGlzYWJsZWRcIlxuICAgIFtwbGFjZWhvbGRlcl09XCJjb25maWcucGxhY2Vob2xkZXIgfHwgJydcIlxuICAgIFtzdGVwXT1cImNvbmZpZy5zdGVwXCJcbiAgICBbbWluXT1cImNvbmZpZy5taW4hXCJcbiAgICBbbWF4XT1cImNvbmZpZy5tYXghXCJcbiAgICAoY2hhbmdlKT1cIm9uVmFsdWVDaGFuZ2UoKVwiXG4gIC8+XG4gIEBpZiAoY29uZmlnLnN1ZmZpeCkge1xuICAgIDxzcGFuIG1hdFN1ZmZpeD57eyBjb25maWcuc3VmZml4IH19PC9zcGFuPlxuICB9XG4gIEBpZiAoY29uZmlnLnBhcmVudFR5cGUgPT09ICdpbmxpbmUnKSB7XG4gICAgPG1hdC1oaW50PlxuICAgICAgPGd1aS1maWVsZC1sYWJlbCBbY29uZmlnXT1cImNvbmZpZ1wiIC8+XG4gICAgPC9tYXQtaGludD5cbiAgfVxuPC9tYXQtZm9ybS1maWVsZD5cbiJdfQ==
|