neo.mjs 5.4.5 → 5.4.6

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.
@@ -20,9 +20,9 @@ class ServiceWorker extends ServiceBase {
20
20
  */
21
21
  singleton: true,
22
22
  /**
23
- * @member {String} version='5.4.5'
23
+ * @member {String} version='5.4.6'
24
24
  */
25
- version: '5.4.5'
25
+ version: '5.4.6'
26
26
  }
27
27
 
28
28
  /**
@@ -20,9 +20,9 @@ class ServiceWorker extends ServiceBase {
20
20
  */
21
21
  singleton: true,
22
22
  /**
23
- * @member {String} version='5.4.5'
23
+ * @member {String} version='5.4.6'
24
24
  */
25
- version: '5.4.5'
25
+ version: '5.4.6'
26
26
  }
27
27
 
28
28
  /**
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "neo.mjs",
3
- "version": "5.4.5",
3
+ "version": "5.4.6",
4
4
  "description": "The webworkers driven UI framework",
5
5
  "type": "module",
6
6
  "repository": {
@@ -237,12 +237,12 @@ const DefaultConfig = {
237
237
  useVdomWorker: true,
238
238
  /**
239
239
  * buildScripts/injectPackageVersion.mjs will update this value
240
- * @default '5.4.5'
240
+ * @default '5.4.6'
241
241
  * @memberOf! module:Neo
242
242
  * @name config.version
243
243
  * @type String
244
244
  */
245
- version: '5.4.5'
245
+ version: '5.4.6'
246
246
  };
247
247
 
248
248
  Object.assign(DefaultConfig, {
@@ -247,12 +247,13 @@ class Number extends Text {
247
247
  * @protected
248
248
  */
249
249
  onFocusLeave(data) {
250
- let me = this,
251
- value = me.value;
250
+ let me = this,
251
+ stepSizePow = Math.pow(10, me.stepSizeDigits),
252
+ value = me.value;
252
253
 
253
254
  if (value !== null) {
254
255
  value = me.stepSizeDigits > 0 ? parseFloat(value) : parseInt(value);
255
- value = value - value % me.stepSize;
256
+ value = value - Math.round((value % me.stepSize) * stepSizePow) / stepSizePow;
256
257
  value = Math.max(me.minValue, value);
257
258
  value = Math.min(me.maxValue, value);
258
259
 
@@ -350,6 +351,7 @@ class Number extends Text {
350
351
  maxValue = me.maxValue,
351
352
  minValue = me.minValue,
352
353
  stepSize = me.stepSize,
354
+ stepSizePow = Math.pow(10, me.stepSizeDigits),
353
355
  returnValue = true,
354
356
  errorParam = {maxValue, minValue, stepSize, value};
355
357
 
@@ -364,7 +366,7 @@ class Number extends Text {
364
366
  } else if (Neo.isNumber(minValue) && isNumber && value < minValue) {
365
367
  me[errorField] = me.errorTextMinValue(errorParam);
366
368
  returnValue = false;
367
- } else if (value % me.stepSize !== 0) {
369
+ } else if ((Math.round((value % me.stepSize) * stepSizePow) / stepSizePow) !== 0) {
368
370
  me[errorField] = me.errorTextStepSize(errorParam);
369
371
  returnValue = false;
370
372
  }