schema-markdown 1.2.8 → 1.2.9
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/lib/schema.js +8 -5
- package/package.json +3 -3
package/lib/schema.js
CHANGED
|
@@ -136,7 +136,7 @@ export function validateType(types, typeName, value, memberFqn = null) {
|
|
|
136
136
|
|
|
137
137
|
|
|
138
138
|
// Regular expressions used by validateTypeHelper
|
|
139
|
-
const rDate =
|
|
139
|
+
const rDate = /^(?<year>\d{4})-(?<month>\d{2})-(?<day>\d{2})$/;
|
|
140
140
|
const rDatetime = /^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}(?:\.\d{3})?(?:Z|[+-]\d{2}:\d{2})$/;
|
|
141
141
|
|
|
142
142
|
|
|
@@ -200,9 +200,12 @@ function validateTypeHelper(types, type, value, memberFqn) {
|
|
|
200
200
|
// Convert string?
|
|
201
201
|
if (typeof value === 'string') {
|
|
202
202
|
// Valid date format?
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
203
|
+
const mDate = value.match(rDate);
|
|
204
|
+
if (mDate !== null) {
|
|
205
|
+
const year = Number.parseInt(mDate.groups.year, 10);
|
|
206
|
+
const month = Number.parseInt(mDate.groups.month, 10);
|
|
207
|
+
const day = Number.parseInt(mDate.groups.day, 10);
|
|
208
|
+
valueNew = new Date(year, month - 1, day);
|
|
206
209
|
} else if (rDatetime.test(value)) {
|
|
207
210
|
valueNew = new Date(value);
|
|
208
211
|
} else {
|
|
@@ -216,7 +219,7 @@ function validateTypeHelper(types, type, value, memberFqn) {
|
|
|
216
219
|
|
|
217
220
|
// For date type, clear hours, minutes, seconds, and milliseconds
|
|
218
221
|
if (builtin === 'date') {
|
|
219
|
-
valueNew = new Date(valueNew.getFullYear(), valueNew.getMonth(), valueNew.
|
|
222
|
+
valueNew = new Date(valueNew.getFullYear(), valueNew.getMonth(), valueNew.getDate());
|
|
220
223
|
}
|
|
221
224
|
}
|
|
222
225
|
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"type": "module",
|
|
3
3
|
"name": "schema-markdown",
|
|
4
|
-
"version": "1.2.
|
|
4
|
+
"version": "1.2.9",
|
|
5
5
|
"description": "A schema definition and validation library",
|
|
6
6
|
"keywords": [
|
|
7
7
|
"schema",
|
|
@@ -24,8 +24,8 @@
|
|
|
24
24
|
"test": "node --test test/"
|
|
25
25
|
},
|
|
26
26
|
"devDependencies": {
|
|
27
|
-
"c8": "~
|
|
28
|
-
"eslint": "~8.
|
|
27
|
+
"c8": "~8.0",
|
|
28
|
+
"eslint": "~8.52",
|
|
29
29
|
"jsdoc": "~4.0"
|
|
30
30
|
}
|
|
31
31
|
}
|