@dzeio/schema 0.3.1 → 0.3.3
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/dist/Schema.js +18 -4
- package/dist/Schema.mjs +18 -4
- package/package.json +1 -1
package/dist/Schema.js
CHANGED
|
@@ -354,6 +354,7 @@ var SchemaObject = class extends SchemaItem {
|
|
|
354
354
|
};
|
|
355
355
|
}
|
|
356
356
|
const clone = (0, import_object_util2.objectClone)(object);
|
|
357
|
+
const res = {};
|
|
357
358
|
(0, import_object_util2.objectLoop)(this.model, (childSchema, key) => {
|
|
358
359
|
const childValue = clone[key];
|
|
359
360
|
const child = childSchema.parse(childValue);
|
|
@@ -363,13 +364,13 @@ var SchemaObject = class extends SchemaItem {
|
|
|
363
364
|
field: it.field ? `${key}.${it.field}` : key
|
|
364
365
|
})));
|
|
365
366
|
}
|
|
366
|
-
|
|
367
|
+
res[key] = child.object;
|
|
367
368
|
return child.valid || !(options == null ? void 0 : options.fast);
|
|
368
369
|
});
|
|
369
370
|
return {
|
|
370
371
|
valid: errors.length === 0,
|
|
371
372
|
errors,
|
|
372
|
-
object:
|
|
373
|
+
object: res
|
|
373
374
|
};
|
|
374
375
|
}
|
|
375
376
|
isOfType(input) {
|
|
@@ -440,7 +441,16 @@ var SchemaDate = class extends SchemaItem {
|
|
|
440
441
|
switch (format) {
|
|
441
442
|
case "yy-mm-dd":
|
|
442
443
|
case "iso8601": {
|
|
443
|
-
this.addPreProcess((it) =>
|
|
444
|
+
this.addPreProcess((it) => {
|
|
445
|
+
if (typeof it !== "string") {
|
|
446
|
+
return it;
|
|
447
|
+
}
|
|
448
|
+
const date = new Date(it);
|
|
449
|
+
if (isNaN(date.getDate())) {
|
|
450
|
+
return it;
|
|
451
|
+
}
|
|
452
|
+
return date;
|
|
453
|
+
});
|
|
444
454
|
break;
|
|
445
455
|
}
|
|
446
456
|
case "jj/mm/yy": {
|
|
@@ -452,7 +462,11 @@ var SchemaDate = class extends SchemaItem {
|
|
|
452
462
|
if (splitted.length !== 3) {
|
|
453
463
|
return input;
|
|
454
464
|
}
|
|
455
|
-
|
|
465
|
+
const date = new Date(splitted[2], splitted[1] - 1, splitted[0]);
|
|
466
|
+
if (isNaN(date.getDate())) {
|
|
467
|
+
return input;
|
|
468
|
+
}
|
|
469
|
+
return date;
|
|
456
470
|
});
|
|
457
471
|
}
|
|
458
472
|
}
|
package/dist/Schema.mjs
CHANGED
|
@@ -311,6 +311,7 @@ var SchemaObject = class extends SchemaItem {
|
|
|
311
311
|
};
|
|
312
312
|
}
|
|
313
313
|
const clone = objectClone(object);
|
|
314
|
+
const res = {};
|
|
314
315
|
objectLoop(this.model, (childSchema, key) => {
|
|
315
316
|
const childValue = clone[key];
|
|
316
317
|
const child = childSchema.parse(childValue);
|
|
@@ -320,13 +321,13 @@ var SchemaObject = class extends SchemaItem {
|
|
|
320
321
|
field: it.field ? `${key}.${it.field}` : key
|
|
321
322
|
})));
|
|
322
323
|
}
|
|
323
|
-
|
|
324
|
+
res[key] = child.object;
|
|
324
325
|
return child.valid || !(options == null ? void 0 : options.fast);
|
|
325
326
|
});
|
|
326
327
|
return {
|
|
327
328
|
valid: errors.length === 0,
|
|
328
329
|
errors,
|
|
329
|
-
object:
|
|
330
|
+
object: res
|
|
330
331
|
};
|
|
331
332
|
}
|
|
332
333
|
isOfType(input) {
|
|
@@ -397,7 +398,16 @@ var SchemaDate = class extends SchemaItem {
|
|
|
397
398
|
switch (format) {
|
|
398
399
|
case "yy-mm-dd":
|
|
399
400
|
case "iso8601": {
|
|
400
|
-
this.addPreProcess((it) =>
|
|
401
|
+
this.addPreProcess((it) => {
|
|
402
|
+
if (typeof it !== "string") {
|
|
403
|
+
return it;
|
|
404
|
+
}
|
|
405
|
+
const date = new Date(it);
|
|
406
|
+
if (isNaN(date.getDate())) {
|
|
407
|
+
return it;
|
|
408
|
+
}
|
|
409
|
+
return date;
|
|
410
|
+
});
|
|
401
411
|
break;
|
|
402
412
|
}
|
|
403
413
|
case "jj/mm/yy": {
|
|
@@ -409,7 +419,11 @@ var SchemaDate = class extends SchemaItem {
|
|
|
409
419
|
if (splitted.length !== 3) {
|
|
410
420
|
return input;
|
|
411
421
|
}
|
|
412
|
-
|
|
422
|
+
const date = new Date(splitted[2], splitted[1] - 1, splitted[0]);
|
|
423
|
+
if (isNaN(date.getDate())) {
|
|
424
|
+
return input;
|
|
425
|
+
}
|
|
426
|
+
return date;
|
|
413
427
|
});
|
|
414
428
|
}
|
|
415
429
|
}
|