@acorex/components 20.2.21 → 21.0.0-next.10
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/drawer/README.md +2 -2
- package/drawer/index.d.ts +32 -57
- package/drawer-legacy/README.md +3 -0
- package/drawer-legacy/index.d.ts +86 -0
- package/fesm2022/acorex-components-color-palette.mjs +1 -1
- package/fesm2022/acorex-components-color-palette.mjs.map +1 -1
- package/fesm2022/acorex-components-data-pager.mjs +1 -1
- package/fesm2022/acorex-components-data-pager.mjs.map +1 -1
- package/fesm2022/acorex-components-drawer-legacy.mjs +218 -0
- package/fesm2022/acorex-components-drawer-legacy.mjs.map +1 -0
- package/fesm2022/acorex-components-drawer.mjs +58 -143
- package/fesm2022/acorex-components-drawer.mjs.map +1 -1
- package/fesm2022/acorex-components-file-explorer.mjs +1 -1
- package/fesm2022/acorex-components-file-explorer.mjs.map +1 -1
- package/fesm2022/acorex-components-number-box-legacy.mjs +412 -0
- package/fesm2022/acorex-components-number-box-legacy.mjs.map +1 -0
- package/fesm2022/acorex-components-number-box.mjs +97 -310
- package/fesm2022/acorex-components-number-box.mjs.map +1 -1
- package/fesm2022/acorex-components-query-builder.mjs +1 -1
- package/fesm2022/acorex-components-query-builder.mjs.map +1 -1
- package/fesm2022/acorex-components-rest-api-generator.mjs +2 -2
- package/fesm2022/acorex-components-rest-api-generator.mjs.map +1 -1
- package/fesm2022/acorex-components-rrule.mjs +28 -28
- package/fesm2022/acorex-components-rrule.mjs.map +1 -1
- package/fesm2022/acorex-components-selection-list-legacy.mjs +220 -0
- package/fesm2022/acorex-components-selection-list-legacy.mjs.map +1 -0
- package/fesm2022/acorex-components-selection-list.mjs +14 -69
- package/fesm2022/acorex-components-selection-list.mjs.map +1 -1
- package/number-box/README.md +2 -2
- package/number-box/index.d.ts +31 -171
- package/number-box-legacy/README.md +3 -0
- package/number-box-legacy/index.d.ts +191 -0
- package/package.json +20 -20
- package/rrule/index.d.ts +3 -3
- package/selection-list/README.md +2 -2
- package/selection-list/index.d.ts +16 -57
- package/selection-list-legacy/README.md +3 -0
- package/selection-list-legacy/index.d.ts +93 -0
- package/drawer-2/README.md +0 -3
- package/drawer-2/index.d.ts +0 -62
- package/fesm2022/acorex-components-drawer-2.mjs +0 -134
- package/fesm2022/acorex-components-drawer-2.mjs.map +0 -1
- package/fesm2022/acorex-components-number-box-2.mjs +0 -183
- package/fesm2022/acorex-components-number-box-2.mjs.map +0 -1
- package/fesm2022/acorex-components-selection-list-2.mjs +0 -165
- package/fesm2022/acorex-components-selection-list-2.mjs.map +0 -1
- package/number-box-2/README.md +0 -3
- package/number-box-2/index.d.ts +0 -41
- package/selection-list-2/README.md +0 -3
- package/selection-list-2/index.d.ts +0 -52
|
@@ -1,15 +1,12 @@
|
|
|
1
|
+
import { AXInputMaskDirective } from '@acorex/cdk/input-mask';
|
|
1
2
|
import * as i0 from '@angular/core';
|
|
2
|
-
import { input,
|
|
3
|
-
import { IMaskDirective, IMaskModule } from 'angular-imask';
|
|
4
|
-
import { createMask } from 'imask';
|
|
3
|
+
import { input, model, signal, viewChild, afterNextRender, effect, forwardRef, HostBinding, ViewEncapsulation, ChangeDetectionStrategy, Component, NgModule } from '@angular/core';
|
|
5
4
|
import { MXInputBaseValueComponent, MXLookComponent, AXComponent, AXFocusableComponent, AXClearableComponent, AXValuableComponent } from '@acorex/cdk/common';
|
|
5
|
+
import { AXButtonModule } from '@acorex/components/button';
|
|
6
|
+
import { AXDecoratorModule } from '@acorex/components/decorators';
|
|
6
7
|
import * as i1 from '@angular/forms';
|
|
7
8
|
import { FormsModule, NG_VALUE_ACCESSOR } from '@angular/forms';
|
|
8
|
-
import { toNumber, isEmpty } from 'lodash-es';
|
|
9
9
|
import { classes } from 'polytype';
|
|
10
|
-
import { AXButtonModule } from '@acorex/components/button';
|
|
11
|
-
import { AXDecoratorModule } from '@acorex/components/decorators';
|
|
12
|
-
import { CommonModule } from '@angular/common';
|
|
13
10
|
|
|
14
11
|
/**
|
|
15
12
|
* The NumberBox is a component which detects user interaction and triggers a corresponding event
|
|
@@ -17,296 +14,118 @@ import { CommonModule } from '@angular/common';
|
|
|
17
14
|
* @category Components
|
|
18
15
|
*/
|
|
19
16
|
class AXNumberBoxComponent extends classes((MXInputBaseValueComponent), MXLookComponent) {
|
|
20
|
-
/**
|
|
21
|
-
* A number value that specifies the all digits of number.
|
|
22
|
-
*/
|
|
23
|
-
get allDigits() {
|
|
24
|
-
return this._allDigits;
|
|
25
|
-
}
|
|
26
|
-
/**
|
|
27
|
-
* Sets the all digits of number.
|
|
28
|
-
* @param {number} v
|
|
29
|
-
*/
|
|
30
|
-
set allDigits(v) {
|
|
31
|
-
this.setOption({
|
|
32
|
-
name: 'allDigits',
|
|
33
|
-
value: v,
|
|
34
|
-
});
|
|
35
|
-
}
|
|
36
|
-
/**
|
|
37
|
-
* A character value that specifies the separator character.
|
|
38
|
-
*/
|
|
39
|
-
get thousandsSeparator() {
|
|
40
|
-
return this._thousandsSeparator;
|
|
41
|
-
}
|
|
42
|
-
/**
|
|
43
|
-
* Sets the thousands separator for formatting.
|
|
44
|
-
* @param {string} v
|
|
45
|
-
*/
|
|
46
|
-
set thousandsSeparator(v) {
|
|
47
|
-
this.setOption({
|
|
48
|
-
name: 'thousandsSeparator',
|
|
49
|
-
value: v ?? '',
|
|
50
|
-
});
|
|
51
|
-
}
|
|
52
|
-
/**
|
|
53
|
-
* A character value that specifies the separator character.
|
|
54
|
-
*/
|
|
55
|
-
get padDecimalZeros() {
|
|
56
|
-
return this._padDecimalZeros;
|
|
57
|
-
}
|
|
58
|
-
/**
|
|
59
|
-
* Sets whether decimal zeros should be padded.
|
|
60
|
-
* @param {boolean} v
|
|
61
|
-
*/
|
|
62
|
-
set padDecimalZeros(v) {
|
|
63
|
-
this.setOption({
|
|
64
|
-
name: 'padDecimalZeros',
|
|
65
|
-
value: v,
|
|
66
|
-
});
|
|
67
|
-
}
|
|
68
|
-
/**
|
|
69
|
-
* Specifies the number of decimals that the user can enter
|
|
70
|
-
*/
|
|
71
|
-
get decimals() {
|
|
72
|
-
return this._decimals;
|
|
73
|
-
}
|
|
74
|
-
/**
|
|
75
|
-
* Sets the decimal places; defaults to 0 if not provided.
|
|
76
|
-
*/
|
|
77
|
-
set decimals(v) {
|
|
78
|
-
this.setOption({
|
|
79
|
-
name: 'decimals',
|
|
80
|
-
value: v ?? 0,
|
|
81
|
-
});
|
|
82
|
-
}
|
|
83
|
-
/**
|
|
84
|
-
* Specifies the smallest value that is valid
|
|
85
|
-
*/
|
|
86
|
-
get minValue() {
|
|
87
|
-
return this._minValue;
|
|
88
|
-
}
|
|
89
|
-
/**
|
|
90
|
-
* Sets the number of decimal places to be used.
|
|
91
|
-
* @param {number} v
|
|
92
|
-
* @defaultvalue 0
|
|
93
|
-
*/
|
|
94
|
-
set minValue(v) {
|
|
95
|
-
this.setOption({
|
|
96
|
-
name: 'minValue',
|
|
97
|
-
value: v != null ? Number(v) : Number.MIN_SAFE_INTEGER,
|
|
98
|
-
});
|
|
99
|
-
}
|
|
100
|
-
/**
|
|
101
|
-
* Specifies the greatest value that is valid
|
|
102
|
-
*/
|
|
103
|
-
get maxValue() {
|
|
104
|
-
return this._maxValue;
|
|
105
|
-
}
|
|
106
|
-
/**
|
|
107
|
-
* Sets the maximum allowable value, defaulting to `Number.MAX_SAFE_INTEGER` if null.
|
|
108
|
-
* @param v
|
|
109
|
-
*/
|
|
110
|
-
set maxValue(v) {
|
|
111
|
-
this.setOption({
|
|
112
|
-
name: 'maxValue',
|
|
113
|
-
value: v != null ? Number(v) : Number.MAX_SAFE_INTEGER,
|
|
114
|
-
});
|
|
115
|
-
}
|
|
116
17
|
constructor() {
|
|
117
|
-
super();
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
this.
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
this.
|
|
126
|
-
|
|
127
|
-
this.
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
*/
|
|
133
|
-
this.step = 1;
|
|
134
|
-
/** @ignore */
|
|
135
|
-
this._decimals = 0;
|
|
136
|
-
/**
|
|
137
|
-
* Specifies the value that is used to increment or decrement the **Deciaml** part of number
|
|
138
|
-
*/
|
|
139
|
-
this.decimalStep = 'auto';
|
|
140
|
-
/**
|
|
141
|
-
* Specifies whether the Up and Down spin buttons will be rendered or not
|
|
142
|
-
*/
|
|
143
|
-
this.showSpinButtons = true;
|
|
144
|
-
/** @ignore */
|
|
145
|
-
this._minValue = Number.MIN_SAFE_INTEGER;
|
|
146
|
-
/** @ignore */
|
|
147
|
-
this._maxValue = Number.MAX_SAFE_INTEGER;
|
|
148
|
-
/** @ignore */
|
|
149
|
-
this._onWheelFlag = false;
|
|
150
|
-
this.onFocus.subscribe(() => {
|
|
151
|
-
this._onWheelFlag = true;
|
|
152
|
-
this.input.nativeElement.select();
|
|
153
|
-
});
|
|
154
|
-
this.onBlur.subscribe(() => {
|
|
155
|
-
this._onWheelFlag = false;
|
|
18
|
+
super(...arguments);
|
|
19
|
+
this.minValue = input(null, ...(ngDevMode ? [{ debugName: "minValue" }] : []));
|
|
20
|
+
this.maxValue = input(null, ...(ngDevMode ? [{ debugName: "maxValue" }] : []));
|
|
21
|
+
this.showSpinButtons = input(true, ...(ngDevMode ? [{ debugName: "showSpinButtons" }] : []));
|
|
22
|
+
this.thousandsSeparator = model(null, ...(ngDevMode ? [{ debugName: "thousandsSeparator" }] : []));
|
|
23
|
+
this.decimals = input(0, ...(ngDevMode ? [{ debugName: "decimals" }] : []));
|
|
24
|
+
this.changeOnScroll = input(false, ...(ngDevMode ? [{ debugName: "changeOnScroll" }] : []));
|
|
25
|
+
this.step = input(1, ...(ngDevMode ? [{ debugName: "step" }] : []));
|
|
26
|
+
this.mode = signal('digits', ...(ngDevMode ? [{ debugName: "mode" }] : []));
|
|
27
|
+
this.input = viewChild('input', ...(ngDevMode ? [{ debugName: "input" }] : []));
|
|
28
|
+
this.stringValue = '0';
|
|
29
|
+
this.#init = afterNextRender(() => {
|
|
30
|
+
this.onFocus.subscribe(() => {
|
|
31
|
+
this.input().nativeElement.select();
|
|
32
|
+
});
|
|
156
33
|
});
|
|
34
|
+
this.#eff = effect(() => {
|
|
35
|
+
if (this.thousandsSeparator() && this.decimals()) {
|
|
36
|
+
this.mode.set('digits');
|
|
37
|
+
return;
|
|
38
|
+
}
|
|
39
|
+
else if (this.thousandsSeparator()) {
|
|
40
|
+
this.mode.set('thousandsSeparator');
|
|
41
|
+
return;
|
|
42
|
+
}
|
|
43
|
+
else if (this.decimals()) {
|
|
44
|
+
this.mode.set('decimal');
|
|
45
|
+
}
|
|
46
|
+
}, ...(ngDevMode ? [{ debugName: "#eff" }] : []));
|
|
157
47
|
}
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
/**
|
|
163
|
-
* Handles internal option changes and updates the mask accordingly.
|
|
164
|
-
*/
|
|
165
|
-
internalOptionChanged() {
|
|
166
|
-
this._updateMask();
|
|
167
|
-
}
|
|
168
|
-
/**
|
|
169
|
-
* Resets the input element to its default state and calls the parent class reset method.
|
|
170
|
-
*/
|
|
171
|
-
reset() {
|
|
172
|
-
this.input.nativeElement.value = null;
|
|
173
|
-
super.reset(true);
|
|
174
|
-
}
|
|
175
|
-
/**
|
|
176
|
-
* Ensures the value is within the min-max range, returning the default if null.
|
|
177
|
-
* @param value
|
|
178
|
-
*/
|
|
179
|
-
internalSetValue(value) {
|
|
180
|
-
// || (value == 0 && !this._maskObj.value)
|
|
181
|
-
if (value == null) {
|
|
182
|
-
return this.defaultValue;
|
|
48
|
+
internalValueChanged(value) {
|
|
49
|
+
if (!value) {
|
|
50
|
+
this.stringValue = '0';
|
|
51
|
+
return;
|
|
183
52
|
}
|
|
184
|
-
|
|
185
|
-
if (v < this.minValue)
|
|
186
|
-
return this.minValue;
|
|
187
|
-
if (v > this.maxValue)
|
|
188
|
-
return this.maxValue;
|
|
189
|
-
return v;
|
|
53
|
+
this.stringValue = String(value);
|
|
190
54
|
}
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
this.
|
|
204
|
-
return !isNaN(v)
|
|
205
|
-
? v.toLocaleString('en-US', {
|
|
206
|
-
useGrouping: false,
|
|
207
|
-
maximumFractionDigits: 20,
|
|
208
|
-
})
|
|
209
|
-
: '';
|
|
210
|
-
};
|
|
55
|
+
#init;
|
|
56
|
+
#eff;
|
|
57
|
+
plusValue() {
|
|
58
|
+
if (this.disabled || this.readonly) {
|
|
59
|
+
return;
|
|
60
|
+
}
|
|
61
|
+
if (this.mode() === 'thousandsSeparator') {
|
|
62
|
+
const removeSeparator = this.stringValue.split(this.thousandsSeparator()).join('');
|
|
63
|
+
const addStep = +removeSeparator + this.step();
|
|
64
|
+
this.commitValue(addStep);
|
|
65
|
+
const addSeparator = addStep.toLocaleString();
|
|
66
|
+
const replaceSeparator = addSeparator.split(',').join(this.thousandsSeparator());
|
|
67
|
+
this.stringValue = replaceSeparator;
|
|
211
68
|
}
|
|
212
69
|
else {
|
|
213
|
-
this.
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
thousandsSeparator: this.thousandsSeparator || '',
|
|
217
|
-
scale: this.decimals,
|
|
218
|
-
radix: '.',
|
|
219
|
-
padFractionalZeros: this.decimals > 0 && this.padDecimalZeros,
|
|
220
|
-
});
|
|
70
|
+
const convert = +this.stringValue + this.step();
|
|
71
|
+
this.commitValue(convert);
|
|
72
|
+
this.stringValue = convert.toString();
|
|
221
73
|
}
|
|
222
|
-
this._maskDirective?.maskRef?.updateValue();
|
|
223
|
-
this._maskDirective?.maskRef?.updateControl();
|
|
224
74
|
}
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
|
|
75
|
+
minusValue() {
|
|
76
|
+
if (this.disabled || this.readonly) {
|
|
77
|
+
return;
|
|
78
|
+
}
|
|
79
|
+
if (this.mode() === 'thousandsSeparator') {
|
|
80
|
+
const removeSeparator = this.stringValue.split(this.thousandsSeparator()).join('');
|
|
81
|
+
const addStep = +removeSeparator - this.step();
|
|
82
|
+
this.commitValue(addStep);
|
|
83
|
+
const addSeparator = addStep.toLocaleString();
|
|
84
|
+
const replaceSeparator = addSeparator.split(',').join(this.thousandsSeparator());
|
|
85
|
+
this.stringValue = replaceSeparator;
|
|
86
|
+
}
|
|
87
|
+
else {
|
|
88
|
+
const convert = +this.stringValue + this.step() * -1;
|
|
89
|
+
this.commitValue(convert);
|
|
90
|
+
this.stringValue = convert.toString();
|
|
229
91
|
}
|
|
230
|
-
this.commitValue(value, true);
|
|
231
92
|
}
|
|
232
|
-
|
|
233
|
-
|
|
93
|
+
handleOnKeydownEvent(e) {
|
|
94
|
+
if (e.key !== 'ArrowUp' && e.key !== 'ArrowDown')
|
|
95
|
+
return;
|
|
234
96
|
if (this.disabled || this.readonly)
|
|
235
97
|
return;
|
|
236
|
-
|
|
237
|
-
|
|
238
|
-
|
|
239
|
-
|
|
240
|
-
|
|
241
|
-
const valStr = input.value;
|
|
242
|
-
const decimalPointIndex = valStr.indexOf('.');
|
|
243
|
-
const _cursorPos = input.selectionStart;
|
|
244
|
-
if (e.key === 'ArrowUp' || e.key === 'ArrowDown') {
|
|
245
|
-
if (decimalPointIndex > 0 && _cursorPos > decimalPointIndex && this.decimals > 0) {
|
|
246
|
-
e.key === 'ArrowDown' ? this.decimalStepDown(true) : this.decimalStepUp(true);
|
|
247
|
-
}
|
|
248
|
-
else {
|
|
249
|
-
e.key === 'ArrowDown' ? this.stepDown(true) : this.stepUp(true);
|
|
250
|
-
}
|
|
251
|
-
ignore();
|
|
252
|
-
setTimeout(() => {
|
|
253
|
-
input.setSelectionRange(_cursorPos, _cursorPos);
|
|
254
|
-
}, 5);
|
|
98
|
+
if (e.key === 'ArrowUp') {
|
|
99
|
+
this.plusValue();
|
|
100
|
+
}
|
|
101
|
+
else if (e.key === 'ArrowDown') {
|
|
102
|
+
this.minusValue();
|
|
255
103
|
}
|
|
256
|
-
super.emitOnKeydownEvent(e);
|
|
257
104
|
}
|
|
258
|
-
|
|
259
|
-
_handleUpDownClick(v, e) {
|
|
260
|
-
const isUserInteraction = e.isTrusted;
|
|
105
|
+
handleUpClick() {
|
|
261
106
|
if (this.disabled || this.readonly)
|
|
262
107
|
return;
|
|
263
|
-
|
|
108
|
+
this.plusValue();
|
|
264
109
|
}
|
|
265
|
-
|
|
266
|
-
|
|
267
|
-
*/
|
|
268
|
-
stepUp(u = false) {
|
|
269
|
-
if (!this.value) {
|
|
270
|
-
this.commitValue(Math.max(this.minValue, 0), u);
|
|
271
|
-
}
|
|
272
|
-
this.commitValue(this.value + toNumber(this.step), u);
|
|
273
|
-
}
|
|
274
|
-
/**
|
|
275
|
-
* Decreases the value by the step amount, ensuring it's at least the minimum value.
|
|
276
|
-
*/
|
|
277
|
-
stepDown(u = false) {
|
|
278
|
-
if (!this.value) {
|
|
279
|
-
this.commitValue(Math.max(this.minValue, 0), u);
|
|
280
|
-
}
|
|
281
|
-
this.commitValue(this.value - toNumber(this.step), u);
|
|
110
|
+
handleDownClick() {
|
|
111
|
+
this.minusValue();
|
|
282
112
|
}
|
|
283
|
-
|
|
284
|
-
|
|
285
|
-
|
|
286
|
-
|
|
287
|
-
if (!this.value) {
|
|
288
|
-
this.commitValue(Math.max(this.minValue, 0), u);
|
|
289
|
-
}
|
|
290
|
-
this.commitValue(this.value + toNumber(this.decimalStep == 'auto' ? 1 / Math.pow(10, this.decimals) : this.decimalStep), u);
|
|
291
|
-
}
|
|
292
|
-
/**
|
|
293
|
-
* Decreases the value by the decimal step amount, using 'auto' or a custom step value.
|
|
294
|
-
*/
|
|
295
|
-
decimalStepDown(u = false) {
|
|
296
|
-
if (!this.value) {
|
|
297
|
-
this.commitValue(Math.max(this.minValue, 0), u);
|
|
113
|
+
handleOnMaskChanged(e) {
|
|
114
|
+
if (!e.unmasked || isNaN(+e.unmasked)) {
|
|
115
|
+
this.commitValue(null);
|
|
116
|
+
return;
|
|
298
117
|
}
|
|
299
|
-
this.commitValue(
|
|
118
|
+
this.commitValue(+e.unmasked);
|
|
300
119
|
}
|
|
301
120
|
onWheel(event) {
|
|
302
|
-
if (this.changeOnScroll
|
|
121
|
+
if (this.changeOnScroll()) {
|
|
303
122
|
event.preventDefault();
|
|
304
123
|
if (!this.disabled && !this.readonly) {
|
|
305
124
|
if (event.deltaY > 0) {
|
|
306
|
-
this.
|
|
125
|
+
this.minusValue();
|
|
307
126
|
}
|
|
308
127
|
else {
|
|
309
|
-
this.
|
|
128
|
+
this.plusValue();
|
|
310
129
|
}
|
|
311
130
|
}
|
|
312
131
|
}
|
|
@@ -314,8 +133,8 @@ class AXNumberBoxComponent extends classes((MXInputBaseValueComponent), MXLookCo
|
|
|
314
133
|
get __hostName() {
|
|
315
134
|
return this.name;
|
|
316
135
|
}
|
|
317
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.6", ngImport: i0, type: AXNumberBoxComponent, deps:
|
|
318
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.6", type: AXNumberBoxComponent, isStandalone: true, selector: "ax-number-box", inputs: { disabled: { classPropertyName: "disabled", publicName: "disabled", isSignal: false, isRequired: false, transformFunction: null }, readonly: { classPropertyName: "readonly", publicName: "readonly", isSignal: false, isRequired: false, transformFunction: null }, tabIndex: { classPropertyName: "tabIndex", publicName: "tabIndex", isSignal: false, isRequired: false, transformFunction: null }, placeholder: { classPropertyName: "placeholder", publicName: "placeholder", isSignal: false, isRequired: false, transformFunction: null }, value: { classPropertyName: "value", publicName: "value", isSignal: false, isRequired: false, transformFunction: null }, state: { classPropertyName: "state", publicName: "state", isSignal: false, isRequired: false, transformFunction: null }, name: { classPropertyName: "name", publicName: "name", isSignal: false, isRequired: false, transformFunction: null }, id: { classPropertyName: "id", publicName: "id", isSignal: false, isRequired: false, transformFunction: null }, look: { classPropertyName: "look", publicName: "look", isSignal: false, isRequired: false, transformFunction: null },
|
|
136
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.6", ngImport: i0, type: AXNumberBoxComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
|
|
137
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.6", type: AXNumberBoxComponent, isStandalone: true, selector: "ax-number-box", inputs: { disabled: { classPropertyName: "disabled", publicName: "disabled", isSignal: false, isRequired: false, transformFunction: null }, readonly: { classPropertyName: "readonly", publicName: "readonly", isSignal: false, isRequired: false, transformFunction: null }, tabIndex: { classPropertyName: "tabIndex", publicName: "tabIndex", isSignal: false, isRequired: false, transformFunction: null }, placeholder: { classPropertyName: "placeholder", publicName: "placeholder", isSignal: false, isRequired: false, transformFunction: null }, value: { classPropertyName: "value", publicName: "value", isSignal: false, isRequired: false, transformFunction: null }, state: { classPropertyName: "state", publicName: "state", isSignal: false, isRequired: false, transformFunction: null }, name: { classPropertyName: "name", publicName: "name", isSignal: false, isRequired: false, transformFunction: null }, id: { classPropertyName: "id", publicName: "id", isSignal: false, isRequired: false, transformFunction: null }, look: { classPropertyName: "look", publicName: "look", isSignal: false, isRequired: false, transformFunction: null }, minValue: { classPropertyName: "minValue", publicName: "minValue", isSignal: true, isRequired: false, transformFunction: null }, maxValue: { classPropertyName: "maxValue", publicName: "maxValue", isSignal: true, isRequired: false, transformFunction: null }, showSpinButtons: { classPropertyName: "showSpinButtons", publicName: "showSpinButtons", isSignal: true, isRequired: false, transformFunction: null }, thousandsSeparator: { classPropertyName: "thousandsSeparator", publicName: "thousandsSeparator", isSignal: true, isRequired: false, transformFunction: null }, decimals: { classPropertyName: "decimals", publicName: "decimals", isSignal: true, isRequired: false, transformFunction: null }, changeOnScroll: { classPropertyName: "changeOnScroll", publicName: "changeOnScroll", isSignal: true, isRequired: false, transformFunction: null }, step: { classPropertyName: "step", publicName: "step", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { valueChange: "valueChange", stateChange: "stateChange", onValueChanged: "onValueChanged", onBlur: "onBlur", onFocus: "onFocus", readonlyChange: "readonlyChange", disabledChange: "disabledChange", onKeyDown: "onKeyDown", onKeyUp: "onKeyUp", onKeyPress: "onKeyPress", thousandsSeparator: "thousandsSeparatorChange" }, host: { properties: { "attr.name": "this.__hostName" } }, providers: [
|
|
319
138
|
{ provide: AXComponent, useExisting: AXNumberBoxComponent },
|
|
320
139
|
{ provide: AXFocusableComponent, useExisting: AXNumberBoxComponent },
|
|
321
140
|
{ provide: AXClearableComponent, useExisting: AXNumberBoxComponent },
|
|
@@ -325,7 +144,7 @@ class AXNumberBoxComponent extends classes((MXInputBaseValueComponent), MXLookCo
|
|
|
325
144
|
useExisting: forwardRef(() => AXNumberBoxComponent),
|
|
326
145
|
multi: true,
|
|
327
146
|
},
|
|
328
|
-
], viewQueries: [{ propertyName: "input", first: true, predicate: ["input"], descendants: true
|
|
147
|
+
], viewQueries: [{ propertyName: "input", first: true, predicate: ["input"], descendants: true, isSignal: true }], usesInheritance: true, ngImport: i0, template: "<div\n class=\"ax-editor-container ax-{{ look }}\"\n [class.ax-state-disabled]=\"disabled\"\n [class.ax-state-readonly]=\"readonly\"\n>\n <ng-content select=\"ax-prefix\"> </ng-content>\n <input\n #input\n axInputMask\n (onMaskChanged)=\"handleOnMaskChanged($event)\"\n [maskMode]=\"mode()\"\n inputmode=\"numeric\"\n class=\"ax-input\"\n [minValue]=\"minValue()\"\n [maxValue]=\"maxValue()\"\n [separator]=\"thousandsSeparator()\"\n [decimal]=\"decimals()\"\n [id]=\"id\"\n [attr.placeholder]=\"placeholder\"\n [attr.autocomplete]=\"'off'\"\n [class.ax-state-disabled]=\"disabled\"\n [class.ax-state-readonly]=\"readonly\"\n [disabled]=\"disabled\"\n [readonly]=\"readonly\"\n [tabindex]=\"tabIndex\"\n [(ngModel)]=\"stringValue\"\n (keydown)=\"handleOnKeydownEvent($event)\"\n (keyup)=\"emitOnKeyupEvent($event)\"\n (keypress)=\"emitOnKeypressEvent($event)\"\n (focus)=\"emitOnFocusEvent($event)\"\n (blur)=\"emitOnBlurEvent($event)\"\n (wheel)=\"onWheel($event)\"\n />\n @if (input.value && !disabled && !readonly) {\n <ng-content select=\"ax-clear-button\"></ng-content>\n }\n @if (showSpinButtons()) {\n <div class=\"ax-number-box-control\">\n <button\n type=\"button\"\n class=\"ax-editor-button\"\n [class.ax-state-disabled]=\"disabled\"\n (click)=\"handleUpClick()\"\n tabindex=\"-1\"\n [disabled]=\"disabled\"\n >\n <span class=\"ax-icon ax-icon-chevron-up ax-arrow-button\"></span>\n </button>\n <button\n type=\"button\"\n class=\"ax-editor-button\"\n [class.ax-state-disabled]=\"disabled\"\n (click)=\"handleDownClick()\"\n tabindex=\"-1\"\n [disabled]=\"disabled\"\n >\n <span class=\"ax-icon ax-icon-chevron-down ax-arrow-button\"></span>\n </button>\n </div>\n }\n\n <ng-content select=\"ax-suffix\"> </ng-content>\n</div>\n<ng-content select=\"ax-validation-rule\"> </ng-content>\n<div class=\"ax-error-container\"></div>\n", styles: ["ax-number-box input::-webkit-outer-spin-button,ax-number-box input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}ax-number-box input[type=number]{-moz-appearance:textfield}ax-number-box .ax-number-box-control{--ax-comp-editor-button-height: 50%;--ax-comp-editor-button-font-size: .75rem;height:70%;display:flex;flex-direction:column}ax-number-box .ax-number-box-control button{font-size:.75rem;align-items:center}\n"], 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.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: "directive", type: AXInputMaskDirective, selector: "[axInputMask]", inputs: ["maskMode", "separator", "eager", "minValue", "maxValue", "decimal"], outputs: ["onMaskChanged"], exportAs: ["axInputMask"] }, { kind: "ngmodule", type: AXButtonModule }, { kind: "ngmodule", type: AXDecoratorModule }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
|
|
329
148
|
}
|
|
330
149
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.6", ngImport: i0, type: AXNumberBoxComponent, decorators: [{
|
|
331
150
|
type: Component,
|
|
@@ -350,50 +169,18 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.6", ngImpor
|
|
|
350
169
|
useExisting: forwardRef(() => AXNumberBoxComponent),
|
|
351
170
|
multi: true,
|
|
352
171
|
},
|
|
353
|
-
], imports: [FormsModule,
|
|
354
|
-
}],
|
|
355
|
-
type: ViewChild,
|
|
356
|
-
args: ['input']
|
|
357
|
-
}], type: [{ type: i0.Input, args: [{ isSignal: true, alias: "type", required: false }] }], changeOnScroll: [{
|
|
358
|
-
type: Input
|
|
359
|
-
}], allDigits: [{
|
|
360
|
-
type: Input
|
|
361
|
-
}], thousandsSeparator: [{
|
|
362
|
-
type: Input
|
|
363
|
-
}], padDecimalZeros: [{
|
|
364
|
-
type: Input
|
|
365
|
-
}], step: [{
|
|
366
|
-
type: Input
|
|
367
|
-
}], decimals: [{
|
|
368
|
-
type: Input
|
|
369
|
-
}], decimalStep: [{
|
|
370
|
-
type: Input
|
|
371
|
-
}], showSpinButtons: [{
|
|
372
|
-
type: Input
|
|
373
|
-
}], minValue: [{
|
|
374
|
-
type: Input
|
|
375
|
-
}], maxValue: [{
|
|
376
|
-
type: Input
|
|
377
|
-
}], classNames: [{
|
|
378
|
-
type: Input,
|
|
379
|
-
args: ['class']
|
|
380
|
-
}], _maskDirective: [{
|
|
381
|
-
type: ViewChild,
|
|
382
|
-
args: [IMaskDirective]
|
|
383
|
-
}], onWheel: [{
|
|
384
|
-
type: HostListener,
|
|
385
|
-
args: ['wheel', ['$event']]
|
|
386
|
-
}], __hostName: [{
|
|
172
|
+
], imports: [FormsModule, AXInputMaskDirective, AXButtonModule, AXDecoratorModule], template: "<div\n class=\"ax-editor-container ax-{{ look }}\"\n [class.ax-state-disabled]=\"disabled\"\n [class.ax-state-readonly]=\"readonly\"\n>\n <ng-content select=\"ax-prefix\"> </ng-content>\n <input\n #input\n axInputMask\n (onMaskChanged)=\"handleOnMaskChanged($event)\"\n [maskMode]=\"mode()\"\n inputmode=\"numeric\"\n class=\"ax-input\"\n [minValue]=\"minValue()\"\n [maxValue]=\"maxValue()\"\n [separator]=\"thousandsSeparator()\"\n [decimal]=\"decimals()\"\n [id]=\"id\"\n [attr.placeholder]=\"placeholder\"\n [attr.autocomplete]=\"'off'\"\n [class.ax-state-disabled]=\"disabled\"\n [class.ax-state-readonly]=\"readonly\"\n [disabled]=\"disabled\"\n [readonly]=\"readonly\"\n [tabindex]=\"tabIndex\"\n [(ngModel)]=\"stringValue\"\n (keydown)=\"handleOnKeydownEvent($event)\"\n (keyup)=\"emitOnKeyupEvent($event)\"\n (keypress)=\"emitOnKeypressEvent($event)\"\n (focus)=\"emitOnFocusEvent($event)\"\n (blur)=\"emitOnBlurEvent($event)\"\n (wheel)=\"onWheel($event)\"\n />\n @if (input.value && !disabled && !readonly) {\n <ng-content select=\"ax-clear-button\"></ng-content>\n }\n @if (showSpinButtons()) {\n <div class=\"ax-number-box-control\">\n <button\n type=\"button\"\n class=\"ax-editor-button\"\n [class.ax-state-disabled]=\"disabled\"\n (click)=\"handleUpClick()\"\n tabindex=\"-1\"\n [disabled]=\"disabled\"\n >\n <span class=\"ax-icon ax-icon-chevron-up ax-arrow-button\"></span>\n </button>\n <button\n type=\"button\"\n class=\"ax-editor-button\"\n [class.ax-state-disabled]=\"disabled\"\n (click)=\"handleDownClick()\"\n tabindex=\"-1\"\n [disabled]=\"disabled\"\n >\n <span class=\"ax-icon ax-icon-chevron-down ax-arrow-button\"></span>\n </button>\n </div>\n }\n\n <ng-content select=\"ax-suffix\"> </ng-content>\n</div>\n<ng-content select=\"ax-validation-rule\"> </ng-content>\n<div class=\"ax-error-container\"></div>\n", styles: ["ax-number-box input::-webkit-outer-spin-button,ax-number-box input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}ax-number-box input[type=number]{-moz-appearance:textfield}ax-number-box .ax-number-box-control{--ax-comp-editor-button-height: 50%;--ax-comp-editor-button-font-size: .75rem;height:70%;display:flex;flex-direction:column}ax-number-box .ax-number-box-control button{font-size:.75rem;align-items:center}\n"] }]
|
|
173
|
+
}], propDecorators: { minValue: [{ type: i0.Input, args: [{ isSignal: true, alias: "minValue", required: false }] }], maxValue: [{ type: i0.Input, args: [{ isSignal: true, alias: "maxValue", required: false }] }], showSpinButtons: [{ type: i0.Input, args: [{ isSignal: true, alias: "showSpinButtons", required: false }] }], thousandsSeparator: [{ type: i0.Input, args: [{ isSignal: true, alias: "thousandsSeparator", required: false }] }, { type: i0.Output, args: ["thousandsSeparatorChange"] }], decimals: [{ type: i0.Input, args: [{ isSignal: true, alias: "decimals", required: false }] }], changeOnScroll: [{ type: i0.Input, args: [{ isSignal: true, alias: "changeOnScroll", required: false }] }], step: [{ type: i0.Input, args: [{ isSignal: true, alias: "step", required: false }] }], input: [{ type: i0.ViewChild, args: ['input', { isSignal: true }] }], __hostName: [{
|
|
387
174
|
type: HostBinding,
|
|
388
175
|
args: ['attr.name']
|
|
389
176
|
}] } });
|
|
390
177
|
|
|
391
178
|
const COMPONENT = [AXNumberBoxComponent];
|
|
392
|
-
const MODULES = [
|
|
179
|
+
const MODULES = [FormsModule, AXInputMaskDirective, AXButtonModule, AXDecoratorModule];
|
|
393
180
|
class AXNumberBoxModule {
|
|
394
181
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.6", ngImport: i0, type: AXNumberBoxModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
395
|
-
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.3.6", ngImport: i0, type: AXNumberBoxModule, imports: [
|
|
396
|
-
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.3.6", ngImport: i0, type: AXNumberBoxModule, imports: [
|
|
182
|
+
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.3.6", ngImport: i0, type: AXNumberBoxModule, imports: [FormsModule, AXInputMaskDirective, AXButtonModule, AXDecoratorModule, AXNumberBoxComponent], exports: [AXNumberBoxComponent] }); }
|
|
183
|
+
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.3.6", ngImport: i0, type: AXNumberBoxModule, imports: [FormsModule, AXButtonModule, AXDecoratorModule, COMPONENT] }); }
|
|
397
184
|
}
|
|
398
185
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.6", ngImport: i0, type: AXNumberBoxModule, decorators: [{
|
|
399
186
|
type: NgModule,
|