@based/schema 2.2.10 → 2.2.12
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/{display → src/display}/index.d.ts +1 -1
- package/dist/src/display/index.js +16 -0
- package/dist/{display → src/display}/number.js +1 -3
- package/dist/{display → src/display}/string.js +1 -3
- package/dist/{display → src/display}/timestamp.js +1 -3
- package/dist/{error.js → src/error.js} +2 -5
- package/dist/src/index.d.ts +5 -0
- package/dist/src/index.js +6 -0
- package/dist/{languages.js → src/languages.js} +1 -4
- package/dist/src/set/fields/array.d.ts +2 -0
- package/dist/{set → src/set}/fields/array.js +10 -14
- package/dist/src/set/fields/index.d.ts +3 -0
- package/dist/src/set/fields/index.js +71 -0
- package/dist/{set → src/set}/fields/number.d.ts +1 -1
- package/dist/{set → src/set}/fields/number.js +15 -21
- package/dist/{set → src/set}/fields/object.d.ts +1 -1
- package/dist/src/set/fields/object.js +28 -0
- package/dist/{set → src/set}/fields/references.d.ts +1 -1
- package/dist/{set → src/set}/fields/references.js +13 -18
- package/dist/src/set/fields/set.d.ts +2 -0
- package/dist/{set → src/set}/fields/set.js +4 -8
- package/dist/{set → src/set}/fields/string.d.ts +1 -1
- package/dist/{set → src/set}/fields/string.js +87 -95
- package/dist/{set → src/set}/index.d.ts +2 -2
- package/dist/{set → src/set}/index.js +21 -25
- package/dist/{set → src/set}/isValidId.d.ts +1 -1
- package/dist/{set → src/set}/isValidId.js +1 -5
- package/dist/{types.d.ts → src/types.d.ts} +7 -6
- package/dist/src/types.js +23 -0
- package/dist/src/updateSchema.d.ts +2 -0
- package/dist/src/updateSchema.js +12 -0
- package/dist/src/validateSchema.d.ts +4 -0
- package/dist/{validateSchema.js → src/validateSchema.js} +5 -11
- package/dist/{walker → src/walker}/args.d.ts +4 -4
- package/dist/{walker → src/walker}/args.js +8 -12
- package/dist/src/walker/index.d.ts +6 -0
- package/dist/src/walker/index.js +31 -0
- package/dist/{walker → src/walker}/parse.d.ts +1 -1
- package/dist/{walker → src/walker}/parse.js +7 -11
- package/dist/{walker → src/walker}/types.d.ts +3 -3
- package/dist/{walker → src/walker}/types.js +2 -5
- package/dist/test/array.d.ts +1 -0
- package/dist/test/array.js +342 -0
- package/dist/test/display.d.ts +1 -0
- package/dist/test/display.js +103 -0
- package/dist/test/number.d.ts +1 -0
- package/dist/test/number.js +374 -0
- package/dist/test/reference.d.ts +1 -0
- package/dist/test/reference.js +186 -0
- package/dist/test/rest.d.ts +1 -0
- package/dist/test/rest.js +168 -0
- package/dist/test/set.d.ts +1 -0
- package/dist/test/set.js +95 -0
- package/dist/test/string.d.ts +1 -0
- package/dist/test/string.js +120 -0
- package/dist/test/text.d.ts +1 -0
- package/dist/test/text.js +324 -0
- package/dist/test/utils/index.d.ts +11 -0
- package/dist/test/utils/index.js +17 -0
- package/dist/test/validateSchema.d.ts +1 -0
- package/dist/test/validateSchema.js +38 -0
- package/dist/test/walker.d.ts +1 -0
- package/dist/test/walker.js +289 -0
- package/package.json +8 -13
- package/dist/display/dateString copy.d.ts +0 -3
- package/dist/display/dateString copy.js +0 -127
- package/dist/display/dateString.d.ts +0 -3
- package/dist/display/dateString.js +0 -127
- package/dist/display/display.d.ts +0 -1
- package/dist/display/display.js +0 -8
- package/dist/display/index.js +0 -26
- package/dist/display/number copy.d.ts +0 -3
- package/dist/display/number copy.js +0 -81
- package/dist/display.d.ts +0 -2
- package/dist/display.js +0 -8
- package/dist/index.d.ts +0 -5
- package/dist/index.js +0 -22
- package/dist/set/fields/array.d.ts +0 -2
- package/dist/set/fields/index.d.ts +0 -3
- package/dist/set/fields/index.js +0 -74
- package/dist/set/fields/object.js +0 -33
- package/dist/set/fields/set.d.ts +0 -2
- package/dist/set/types.d.ts +0 -0
- package/dist/set/types.js +0 -1
- package/dist/types.js +0 -27
- package/dist/updateSchema.d.ts +0 -2
- package/dist/updateSchema.js +0 -16
- package/dist/validateSchema.d.ts +0 -4
- package/dist/walker/index.d.ts +0 -6
- package/dist/walker/index.js +0 -49
- /package/dist/{display → src/display}/number.d.ts +0 -0
- /package/dist/{display → src/display}/string.d.ts +0 -0
- /package/dist/{display → src/display}/timestamp.d.ts +0 -0
- /package/dist/{error.d.ts → src/error.d.ts} +0 -0
- /package/dist/{languages.d.ts → src/languages.d.ts} +0 -0
package/package.json
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@based/schema",
|
|
3
|
-
"version": "2.2.
|
|
3
|
+
"version": "2.2.12",
|
|
4
4
|
"license": "MIT",
|
|
5
|
-
"main": "dist/index.js",
|
|
5
|
+
"main": "dist/src/index.js",
|
|
6
6
|
"files": [
|
|
7
7
|
"dist",
|
|
8
8
|
"!dist/**/*.js.map"
|
|
@@ -11,25 +11,20 @@
|
|
|
11
11
|
"build": "npx tsc",
|
|
12
12
|
"watch": "npx tsc --watch",
|
|
13
13
|
"clean": "rimraf {.turbo,dist,node_modules}",
|
|
14
|
-
"test": "ava --color --
|
|
15
|
-
"test-ci": "ava --color --
|
|
14
|
+
"test": "ava --color --timeout 3m --verbose",
|
|
15
|
+
"test-ci": "ava --color --concurrency 1 --timeout 3m"
|
|
16
16
|
},
|
|
17
17
|
"sideEffects": false,
|
|
18
|
+
"type": "module",
|
|
18
19
|
"dependencies": {
|
|
19
20
|
"validator": "^13.9.0",
|
|
20
21
|
"@saulx/hash": "^2.0.0",
|
|
21
22
|
"@saulx/utils": "^3.5.0"
|
|
22
23
|
},
|
|
23
24
|
"ava": {
|
|
25
|
+
"timeout": "2m",
|
|
24
26
|
"files": [
|
|
25
|
-
"test/*.
|
|
26
|
-
],
|
|
27
|
-
"concurrency": 1,
|
|
28
|
-
"extensions": [
|
|
29
|
-
"ts"
|
|
30
|
-
],
|
|
31
|
-
"require": [
|
|
32
|
-
"ts-node/register"
|
|
27
|
+
"./dist/test/*.js"
|
|
33
28
|
]
|
|
34
29
|
},
|
|
35
30
|
"devDependencies": {
|
|
@@ -37,6 +32,6 @@
|
|
|
37
32
|
"ts-node": "10.9.1",
|
|
38
33
|
"typescript": "^5.1.6",
|
|
39
34
|
"rimraf": "^3.0.2",
|
|
40
|
-
"ava": "3.
|
|
35
|
+
"ava": "5.3.1"
|
|
41
36
|
}
|
|
42
37
|
}
|
|
@@ -1,127 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
const addZero = (d) => {
|
|
4
|
-
const s = d + '';
|
|
5
|
-
if (s.length === 1) {
|
|
6
|
-
return '0' + s;
|
|
7
|
-
}
|
|
8
|
-
return s;
|
|
9
|
-
};
|
|
10
|
-
exports.default = (nr, format) => {
|
|
11
|
-
if (!format) {
|
|
12
|
-
return nr;
|
|
13
|
-
}
|
|
14
|
-
if (typeof nr === 'number') {
|
|
15
|
-
const thenDate = new Date(nr);
|
|
16
|
-
if (format === 'date') {
|
|
17
|
-
return (thenDate.getDate() +
|
|
18
|
-
'/' +
|
|
19
|
-
(thenDate.getMonth() + 1) +
|
|
20
|
-
'/' +
|
|
21
|
-
thenDate.getFullYear());
|
|
22
|
-
}
|
|
23
|
-
else if (format === 'time') {
|
|
24
|
-
return thenDate.getHours() + ':' + addZero(thenDate.getMinutes());
|
|
25
|
-
}
|
|
26
|
-
else if (format === 'time-precise') {
|
|
27
|
-
return (thenDate.getHours() +
|
|
28
|
-
':' +
|
|
29
|
-
addZero(thenDate.getMinutes()) +
|
|
30
|
-
':' +
|
|
31
|
-
addZero(thenDate.getSeconds()));
|
|
32
|
-
}
|
|
33
|
-
else if (format === 'date-time-text') {
|
|
34
|
-
return `${thenDate.toLocaleDateString('default', {
|
|
35
|
-
day: 'numeric',
|
|
36
|
-
month: 'long',
|
|
37
|
-
year: 'numeric',
|
|
38
|
-
})}, ${thenDate.toLocaleTimeString()}`;
|
|
39
|
-
}
|
|
40
|
-
else if (format === 'date-time') {
|
|
41
|
-
return (thenDate.getHours() +
|
|
42
|
-
':' +
|
|
43
|
-
addZero(thenDate.getMinutes()) +
|
|
44
|
-
' ' +
|
|
45
|
-
thenDate.getDate() +
|
|
46
|
-
'/' +
|
|
47
|
-
(thenDate.getMonth() + 1) +
|
|
48
|
-
'/' +
|
|
49
|
-
thenDate.getFullYear());
|
|
50
|
-
}
|
|
51
|
-
else if (format === 'human') {
|
|
52
|
-
const nowDate = new Date();
|
|
53
|
-
if (nowDate.getTime() > thenDate.getTime()) {
|
|
54
|
-
var secondsSince = Math.floor((nowDate.getTime() - thenDate.getTime()) / 1000);
|
|
55
|
-
var interval = secondsSince / 31536000; // seconds in a year
|
|
56
|
-
if (interval > 1) {
|
|
57
|
-
const x = Math.floor(interval);
|
|
58
|
-
return `${x} ${x > 1 ? 'years' : 'year'} ago`;
|
|
59
|
-
}
|
|
60
|
-
interval = secondsSince / 2592000; // seconds in a month
|
|
61
|
-
if (interval > 1) {
|
|
62
|
-
const x = Math.floor(interval);
|
|
63
|
-
return `${x} ${x > 1 ? 'months' : 'month'} ago`;
|
|
64
|
-
}
|
|
65
|
-
interval = secondsSince / 86400; // seconds in a day
|
|
66
|
-
if (interval > 1) {
|
|
67
|
-
const x = Math.floor(interval);
|
|
68
|
-
return `${x} ${x > 1 ? 'days' : 'day'} ago`;
|
|
69
|
-
}
|
|
70
|
-
interval = secondsSince / 3600; // seconds in an hour
|
|
71
|
-
if (interval > 1) {
|
|
72
|
-
const x = Math.floor(interval);
|
|
73
|
-
return `${x} ${x > 1 ? 'hours' : 'hour'} ago`;
|
|
74
|
-
}
|
|
75
|
-
interval = secondsSince / 60; // seconds in a minute :)
|
|
76
|
-
if (interval > 1) {
|
|
77
|
-
const x = Math.floor(interval);
|
|
78
|
-
return `${x} ${x > 1 ? 'minutes' : 'minute'} ago`;
|
|
79
|
-
}
|
|
80
|
-
if (secondsSince > 10) {
|
|
81
|
-
const x = Math.floor(secondsSince);
|
|
82
|
-
return `${x} ${x > 1 ? 'seconds' : 'second'} ago`;
|
|
83
|
-
}
|
|
84
|
-
return 'Now';
|
|
85
|
-
}
|
|
86
|
-
else {
|
|
87
|
-
// in the future
|
|
88
|
-
var secondsSince = Math.floor((thenDate.getTime() - nowDate.getTime()) / 1000);
|
|
89
|
-
var interval = secondsSince / 31536000; // seconds in a year
|
|
90
|
-
if (interval > 1) {
|
|
91
|
-
const x = Math.floor(interval);
|
|
92
|
-
return `${x} ${x > 1 ? 'years' : 'year'} from now`;
|
|
93
|
-
}
|
|
94
|
-
interval = secondsSince / 2592000; // seconds in a month
|
|
95
|
-
if (interval > 1) {
|
|
96
|
-
const x = Math.floor(interval);
|
|
97
|
-
return `${x} ${x > 1 ? 'months' : 'month'} from now`;
|
|
98
|
-
}
|
|
99
|
-
interval = secondsSince / 86400; // seconds in a day
|
|
100
|
-
if (interval > 1) {
|
|
101
|
-
const x = Math.floor(interval);
|
|
102
|
-
return `${x} ${x > 1 ? 'days' : 'day'} from now`;
|
|
103
|
-
}
|
|
104
|
-
interval = secondsSince / 3600; // seconds in an hour
|
|
105
|
-
if (interval > 1) {
|
|
106
|
-
const x = Math.floor(interval);
|
|
107
|
-
return `${x} ${x > 1 ? 'hours' : 'hour'} from now`;
|
|
108
|
-
}
|
|
109
|
-
interval = secondsSince / 60; // seconds in a minute :)
|
|
110
|
-
if (interval > 1) {
|
|
111
|
-
const x = Math.floor(interval);
|
|
112
|
-
return `${x} ${x > 1 ? 'minutes' : 'minute'} from now`;
|
|
113
|
-
}
|
|
114
|
-
if (secondsSince > 10) {
|
|
115
|
-
const x = Math.floor(secondsSince);
|
|
116
|
-
return `${x} ${x > 1 ? 'seconds' : 'second'} from now`;
|
|
117
|
-
}
|
|
118
|
-
return 'Now';
|
|
119
|
-
}
|
|
120
|
-
}
|
|
121
|
-
return String(nr);
|
|
122
|
-
}
|
|
123
|
-
else {
|
|
124
|
-
return nr;
|
|
125
|
-
}
|
|
126
|
-
};
|
|
127
|
-
//# sourceMappingURL=dateString%20copy.js.map
|
|
@@ -1,127 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
const addZero = (d) => {
|
|
4
|
-
const s = d + '';
|
|
5
|
-
if (s.length === 1) {
|
|
6
|
-
return '0' + s;
|
|
7
|
-
}
|
|
8
|
-
return s;
|
|
9
|
-
};
|
|
10
|
-
exports.default = (nr, format) => {
|
|
11
|
-
if (!format) {
|
|
12
|
-
return nr;
|
|
13
|
-
}
|
|
14
|
-
if (typeof nr === 'number') {
|
|
15
|
-
const thenDate = new Date(nr);
|
|
16
|
-
if (format === 'date') {
|
|
17
|
-
return (thenDate.getDate() +
|
|
18
|
-
'/' +
|
|
19
|
-
(thenDate.getMonth() + 1) +
|
|
20
|
-
'/' +
|
|
21
|
-
thenDate.getFullYear());
|
|
22
|
-
}
|
|
23
|
-
else if (format === 'time') {
|
|
24
|
-
return thenDate.getHours() + ':' + addZero(thenDate.getMinutes());
|
|
25
|
-
}
|
|
26
|
-
else if (format === 'time-precise') {
|
|
27
|
-
return (thenDate.getHours() +
|
|
28
|
-
':' +
|
|
29
|
-
addZero(thenDate.getMinutes()) +
|
|
30
|
-
':' +
|
|
31
|
-
addZero(thenDate.getSeconds()));
|
|
32
|
-
}
|
|
33
|
-
else if (format === 'date-time-text') {
|
|
34
|
-
return `${thenDate.toLocaleDateString('default', {
|
|
35
|
-
day: 'numeric',
|
|
36
|
-
month: 'long',
|
|
37
|
-
year: 'numeric',
|
|
38
|
-
})}, ${thenDate.toLocaleTimeString()}`;
|
|
39
|
-
}
|
|
40
|
-
else if (format === 'date-time') {
|
|
41
|
-
return (thenDate.getHours() +
|
|
42
|
-
':' +
|
|
43
|
-
addZero(thenDate.getMinutes()) +
|
|
44
|
-
' ' +
|
|
45
|
-
thenDate.getDate() +
|
|
46
|
-
'/' +
|
|
47
|
-
(thenDate.getMonth() + 1) +
|
|
48
|
-
'/' +
|
|
49
|
-
thenDate.getFullYear());
|
|
50
|
-
}
|
|
51
|
-
else if (format === 'human') {
|
|
52
|
-
const nowDate = new Date();
|
|
53
|
-
if (nowDate.getTime() > thenDate.getTime()) {
|
|
54
|
-
var secondsSince = Math.floor((nowDate.getTime() - thenDate.getTime()) / 1000);
|
|
55
|
-
var interval = secondsSince / 31536000; // seconds in a year
|
|
56
|
-
if (interval > 1) {
|
|
57
|
-
const x = Math.floor(interval);
|
|
58
|
-
return `${x} ${x > 1 ? 'years' : 'year'} ago`;
|
|
59
|
-
}
|
|
60
|
-
interval = secondsSince / 2592000; // seconds in a month
|
|
61
|
-
if (interval > 1) {
|
|
62
|
-
const x = Math.floor(interval);
|
|
63
|
-
return `${x} ${x > 1 ? 'months' : 'month'} ago`;
|
|
64
|
-
}
|
|
65
|
-
interval = secondsSince / 86400; // seconds in a day
|
|
66
|
-
if (interval > 1) {
|
|
67
|
-
const x = Math.floor(interval);
|
|
68
|
-
return `${x} ${x > 1 ? 'days' : 'day'} ago`;
|
|
69
|
-
}
|
|
70
|
-
interval = secondsSince / 3600; // seconds in an hour
|
|
71
|
-
if (interval > 1) {
|
|
72
|
-
const x = Math.floor(interval);
|
|
73
|
-
return `${x} ${x > 1 ? 'hours' : 'hour'} ago`;
|
|
74
|
-
}
|
|
75
|
-
interval = secondsSince / 60; // seconds in a minute :)
|
|
76
|
-
if (interval > 1) {
|
|
77
|
-
const x = Math.floor(interval);
|
|
78
|
-
return `${x} ${x > 1 ? 'minutes' : 'minute'} ago`;
|
|
79
|
-
}
|
|
80
|
-
if (secondsSince > 10) {
|
|
81
|
-
const x = Math.floor(secondsSince);
|
|
82
|
-
return `${x} ${x > 1 ? 'seconds' : 'second'} ago`;
|
|
83
|
-
}
|
|
84
|
-
return 'Now';
|
|
85
|
-
}
|
|
86
|
-
else {
|
|
87
|
-
// in the future
|
|
88
|
-
var secondsSince = Math.floor((thenDate.getTime() - nowDate.getTime()) / 1000);
|
|
89
|
-
var interval = secondsSince / 31536000; // seconds in a year
|
|
90
|
-
if (interval > 1) {
|
|
91
|
-
const x = Math.floor(interval);
|
|
92
|
-
return `${x} ${x > 1 ? 'years' : 'year'} from now`;
|
|
93
|
-
}
|
|
94
|
-
interval = secondsSince / 2592000; // seconds in a month
|
|
95
|
-
if (interval > 1) {
|
|
96
|
-
const x = Math.floor(interval);
|
|
97
|
-
return `${x} ${x > 1 ? 'months' : 'month'} from now`;
|
|
98
|
-
}
|
|
99
|
-
interval = secondsSince / 86400; // seconds in a day
|
|
100
|
-
if (interval > 1) {
|
|
101
|
-
const x = Math.floor(interval);
|
|
102
|
-
return `${x} ${x > 1 ? 'days' : 'day'} from now`;
|
|
103
|
-
}
|
|
104
|
-
interval = secondsSince / 3600; // seconds in an hour
|
|
105
|
-
if (interval > 1) {
|
|
106
|
-
const x = Math.floor(interval);
|
|
107
|
-
return `${x} ${x > 1 ? 'hours' : 'hour'} from now`;
|
|
108
|
-
}
|
|
109
|
-
interval = secondsSince / 60; // seconds in a minute :)
|
|
110
|
-
if (interval > 1) {
|
|
111
|
-
const x = Math.floor(interval);
|
|
112
|
-
return `${x} ${x > 1 ? 'minutes' : 'minute'} from now`;
|
|
113
|
-
}
|
|
114
|
-
if (secondsSince > 10) {
|
|
115
|
-
const x = Math.floor(secondsSince);
|
|
116
|
-
return `${x} ${x > 1 ? 'seconds' : 'second'} from now`;
|
|
117
|
-
}
|
|
118
|
-
return 'Now';
|
|
119
|
-
}
|
|
120
|
-
}
|
|
121
|
-
return String(nr);
|
|
122
|
-
}
|
|
123
|
-
else {
|
|
124
|
-
return nr;
|
|
125
|
-
}
|
|
126
|
-
};
|
|
127
|
-
//# sourceMappingURL=dateString.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export declare const display: (value: string | number | void, field: BasedSchemaField) => string | number | void;
|
package/dist/display/display.js
DELETED
package/dist/display/index.js
DELETED
|
@@ -1,26 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
-
};
|
|
5
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.display = void 0;
|
|
7
|
-
const timestamp_1 = __importDefault(require("./timestamp"));
|
|
8
|
-
const number_1 = __importDefault(require("./number"));
|
|
9
|
-
const string_1 = __importDefault(require("./string"));
|
|
10
|
-
const display = (value, field) => {
|
|
11
|
-
if (field.type === 'timestamp' && typeof value === 'number') {
|
|
12
|
-
// @ts-ignore
|
|
13
|
-
return (0, timestamp_1.default)(value, field.display);
|
|
14
|
-
}
|
|
15
|
-
if (field.type === 'number' && typeof value === 'number') {
|
|
16
|
-
// @ts-ignore
|
|
17
|
-
return (0, number_1.default)(value, field.display);
|
|
18
|
-
}
|
|
19
|
-
if (field.type === 'string' && typeof value === 'string') {
|
|
20
|
-
// @ts-ignore
|
|
21
|
-
return (0, string_1.default)(value, field.display);
|
|
22
|
-
}
|
|
23
|
-
return value;
|
|
24
|
-
};
|
|
25
|
-
exports.display = display;
|
|
26
|
-
//# sourceMappingURL=index.js.map
|
|
@@ -1,81 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
const parseNumber = (nr, format) => {
|
|
4
|
-
if (!format) {
|
|
5
|
-
return nr;
|
|
6
|
-
}
|
|
7
|
-
if (typeof nr === 'number') {
|
|
8
|
-
if (format === 'euro' || format === 'dollar' || format === 'pound') {
|
|
9
|
-
const p = String(parseNumber(nr, 'short'));
|
|
10
|
-
const fraction = format === 'euro' ? ',' : '.';
|
|
11
|
-
const [s, f] = p.split('.');
|
|
12
|
-
return `${format === 'euro'
|
|
13
|
-
? '€'
|
|
14
|
-
: format === 'pound'
|
|
15
|
-
? '£'
|
|
16
|
-
: format === 'dollar'
|
|
17
|
-
? '$'
|
|
18
|
-
: ''}${s}${f ? `${fraction}${f}` : ''}`;
|
|
19
|
-
}
|
|
20
|
-
else if (format.startsWith('round-')) {
|
|
21
|
-
const [, fixed] = format.split('round-');
|
|
22
|
-
const n = Number(fixed);
|
|
23
|
-
if (!n) {
|
|
24
|
-
return `${nr.toFixed()}`;
|
|
25
|
-
}
|
|
26
|
-
return `${nr.toFixed(n)}`;
|
|
27
|
-
}
|
|
28
|
-
else if (format === 'bytes') {
|
|
29
|
-
const kb = nr / 1024;
|
|
30
|
-
const mb = kb / 1024;
|
|
31
|
-
const gb = mb / 1024;
|
|
32
|
-
if (gb >= 1) {
|
|
33
|
-
return `${gb.toFixed(2)} gb`;
|
|
34
|
-
}
|
|
35
|
-
else if (mb >= 1) {
|
|
36
|
-
return `${mb.toFixed(2)} mb`;
|
|
37
|
-
}
|
|
38
|
-
else if (kb >= 1) {
|
|
39
|
-
return `${kb.toFixed(2)} kb`;
|
|
40
|
-
}
|
|
41
|
-
else {
|
|
42
|
-
return `${nr} ${nr === 1 ? 'byte' : 'bytes'}`;
|
|
43
|
-
}
|
|
44
|
-
}
|
|
45
|
-
else if (format === 'ratio') {
|
|
46
|
-
return `${Math.round(nr * 10000) / 100}%`;
|
|
47
|
-
}
|
|
48
|
-
else if (format === 'short') {
|
|
49
|
-
if (nr >= 1e6) {
|
|
50
|
-
nr = nr / 1e6;
|
|
51
|
-
nr = nr.toFixed(1);
|
|
52
|
-
if (nr[nr.length - 1] === '0') {
|
|
53
|
-
nr = nr.slice(0, -2);
|
|
54
|
-
}
|
|
55
|
-
return nr + 'm';
|
|
56
|
-
}
|
|
57
|
-
else if (nr >= 1e3) {
|
|
58
|
-
nr = nr / 1e3;
|
|
59
|
-
nr = nr.toFixed(1);
|
|
60
|
-
if (nr[nr.length - 1] === '0') {
|
|
61
|
-
nr = nr.slice(0, -2);
|
|
62
|
-
}
|
|
63
|
-
return nr + 'k';
|
|
64
|
-
}
|
|
65
|
-
nr = nr.toFixed(2);
|
|
66
|
-
if (nr[nr.length - 1] === '0') {
|
|
67
|
-
nr = nr.slice(0, -3);
|
|
68
|
-
}
|
|
69
|
-
return String(nr);
|
|
70
|
-
}
|
|
71
|
-
else if (format === 'human') {
|
|
72
|
-
return nr.toFixed(2);
|
|
73
|
-
}
|
|
74
|
-
return String(nr);
|
|
75
|
-
}
|
|
76
|
-
else {
|
|
77
|
-
return nr;
|
|
78
|
-
}
|
|
79
|
-
};
|
|
80
|
-
exports.default = parseNumber;
|
|
81
|
-
//# sourceMappingURL=number%20copy.js.map
|
package/dist/display.d.ts
DELETED
package/dist/display.js
DELETED
package/dist/index.d.ts
DELETED
package/dist/index.js
DELETED
|
@@ -1,22 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
-
if (k2 === undefined) k2 = k;
|
|
4
|
-
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
-
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
-
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
-
}
|
|
8
|
-
Object.defineProperty(o, k2, desc);
|
|
9
|
-
}) : (function(o, m, k, k2) {
|
|
10
|
-
if (k2 === undefined) k2 = k;
|
|
11
|
-
o[k2] = m[k];
|
|
12
|
-
}));
|
|
13
|
-
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
-
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
-
};
|
|
16
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
-
__exportStar(require("./types"), exports);
|
|
18
|
-
__exportStar(require("./validateSchema"), exports);
|
|
19
|
-
__exportStar(require("./walker"), exports);
|
|
20
|
-
__exportStar(require("./set"), exports);
|
|
21
|
-
__exportStar(require("./display"), exports);
|
|
22
|
-
//# sourceMappingURL=index.js.map
|
package/dist/set/fields/index.js
DELETED
|
@@ -1,74 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.fields = void 0;
|
|
4
|
-
const error_1 = require("../../error");
|
|
5
|
-
const array_1 = require("./array");
|
|
6
|
-
const object_1 = require("./object");
|
|
7
|
-
const number_1 = require("./number");
|
|
8
|
-
const string_1 = require("./string");
|
|
9
|
-
const references_1 = require("./references");
|
|
10
|
-
const set_1 = require("./set");
|
|
11
|
-
const hash_1 = require("@saulx/hash");
|
|
12
|
-
const utils_1 = require("@saulx/utils");
|
|
13
|
-
exports.fields = {
|
|
14
|
-
array: array_1.array,
|
|
15
|
-
object: object_1.object,
|
|
16
|
-
record: object_1.record,
|
|
17
|
-
number: number_1.number,
|
|
18
|
-
integer: number_1.integer,
|
|
19
|
-
timestamp: number_1.timestamp,
|
|
20
|
-
string: string_1.string,
|
|
21
|
-
set: set_1.set,
|
|
22
|
-
text: string_1.text,
|
|
23
|
-
reference: references_1.reference,
|
|
24
|
-
references: references_1.references,
|
|
25
|
-
cardinality: async (args) => {
|
|
26
|
-
let hashedValue;
|
|
27
|
-
if (args.value && typeof args.value === 'object') {
|
|
28
|
-
args.stop();
|
|
29
|
-
if (args.value.$default !== undefined) {
|
|
30
|
-
args.error(error_1.ParseError.defaultNotSupported);
|
|
31
|
-
return;
|
|
32
|
-
}
|
|
33
|
-
if (args.value.$value !== undefined) {
|
|
34
|
-
hashedValue = (0, hash_1.hashObjectIgnoreKeyOrder)(args.value.$value).toString(16);
|
|
35
|
-
}
|
|
36
|
-
else {
|
|
37
|
-
hashedValue = (0, hash_1.hashObjectIgnoreKeyOrder)(args.value).toString(16);
|
|
38
|
-
}
|
|
39
|
-
}
|
|
40
|
-
else {
|
|
41
|
-
hashedValue = (0, hash_1.hash)(args.value).toString(16);
|
|
42
|
-
}
|
|
43
|
-
args.collect(hashedValue);
|
|
44
|
-
},
|
|
45
|
-
boolean: async (args) => {
|
|
46
|
-
if (typeof args.value !== 'boolean') {
|
|
47
|
-
args.error(error_1.ParseError.incorrectFormat);
|
|
48
|
-
return;
|
|
49
|
-
}
|
|
50
|
-
args.collect();
|
|
51
|
-
},
|
|
52
|
-
json: async (args) => {
|
|
53
|
-
args.stop();
|
|
54
|
-
try {
|
|
55
|
-
const parsedValue = JSON.stringify(args.value);
|
|
56
|
-
args.collect(parsedValue);
|
|
57
|
-
}
|
|
58
|
-
catch (err) {
|
|
59
|
-
args.error(error_1.ParseError.invalidJSON);
|
|
60
|
-
}
|
|
61
|
-
},
|
|
62
|
-
enum: async (args) => {
|
|
63
|
-
// args.stop()
|
|
64
|
-
const enumValues = args.fieldSchema.enum;
|
|
65
|
-
for (let i = 0; i < enumValues.length; i++) {
|
|
66
|
-
if ((0, utils_1.deepEqual)(enumValues[i], args.value)) {
|
|
67
|
-
args.collect(i);
|
|
68
|
-
return;
|
|
69
|
-
}
|
|
70
|
-
}
|
|
71
|
-
args.error(error_1.ParseError.incorrectFormat);
|
|
72
|
-
},
|
|
73
|
-
};
|
|
74
|
-
//# sourceMappingURL=index.js.map
|
|
@@ -1,33 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.record = exports.object = void 0;
|
|
4
|
-
const error_1 = require("../../error");
|
|
5
|
-
const object = async (args) => {
|
|
6
|
-
if (typeof args.value !== 'object' || args.value === null) {
|
|
7
|
-
args.error(error_1.ParseError.incorrectFormat);
|
|
8
|
-
return;
|
|
9
|
-
}
|
|
10
|
-
const isArray = Array.isArray(args.value);
|
|
11
|
-
if (isArray) {
|
|
12
|
-
args.error(error_1.ParseError.incorrectFormat);
|
|
13
|
-
return;
|
|
14
|
-
}
|
|
15
|
-
args.collect();
|
|
16
|
-
return args;
|
|
17
|
-
};
|
|
18
|
-
exports.object = object;
|
|
19
|
-
const record = async (args) => {
|
|
20
|
-
if (typeof args.value !== 'object' || args.value === null) {
|
|
21
|
-
args.error(error_1.ParseError.incorrectFormat);
|
|
22
|
-
return;
|
|
23
|
-
}
|
|
24
|
-
const isArray = Array.isArray(args.value);
|
|
25
|
-
if (isArray) {
|
|
26
|
-
args.error(error_1.ParseError.incorrectFormat);
|
|
27
|
-
return;
|
|
28
|
-
}
|
|
29
|
-
args.collect();
|
|
30
|
-
return args;
|
|
31
|
-
};
|
|
32
|
-
exports.record = record;
|
|
33
|
-
//# sourceMappingURL=object.js.map
|
package/dist/set/fields/set.d.ts
DELETED
package/dist/set/types.d.ts
DELETED
|
File without changes
|
package/dist/set/types.js
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
//# sourceMappingURL=types.js.map
|
package/dist/types.js
DELETED
|
@@ -1,27 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.languages = exports.isCollection = exports.basedSchemaFieldTypes = void 0;
|
|
4
|
-
const languages_1 = require("./languages");
|
|
5
|
-
exports.basedSchemaFieldTypes = [
|
|
6
|
-
'array',
|
|
7
|
-
'object',
|
|
8
|
-
'record',
|
|
9
|
-
'set',
|
|
10
|
-
'string',
|
|
11
|
-
'boolean',
|
|
12
|
-
'number',
|
|
13
|
-
'json',
|
|
14
|
-
'integer',
|
|
15
|
-
'timestamp',
|
|
16
|
-
'reference',
|
|
17
|
-
'references',
|
|
18
|
-
'text',
|
|
19
|
-
'enum',
|
|
20
|
-
'cardinality',
|
|
21
|
-
];
|
|
22
|
-
const isCollection = (type) => {
|
|
23
|
-
return type === 'array' || type === 'object' || type === 'record';
|
|
24
|
-
};
|
|
25
|
-
exports.isCollection = isCollection;
|
|
26
|
-
exports.languages = Object.keys(languages_1.languages);
|
|
27
|
-
//# sourceMappingURL=types.js.map
|
package/dist/updateSchema.d.ts
DELETED
package/dist/updateSchema.js
DELETED
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.updateSchema = void 0;
|
|
4
|
-
const updateSchema = async (newSchema, oldSchema = {
|
|
5
|
-
$defs: {},
|
|
6
|
-
types: {},
|
|
7
|
-
language: 'en',
|
|
8
|
-
root: { fields: {} },
|
|
9
|
-
prefixToTypeMapping: {},
|
|
10
|
-
}) => {
|
|
11
|
-
// add sha
|
|
12
|
-
// put isRequired on the new schema in REQUIRED arrays
|
|
13
|
-
return oldSchema;
|
|
14
|
-
};
|
|
15
|
-
exports.updateSchema = updateSchema;
|
|
16
|
-
//# sourceMappingURL=updateSchema.js.map
|
package/dist/validateSchema.d.ts
DELETED
|
@@ -1,4 +0,0 @@
|
|
|
1
|
-
import { BasedSchemaPartial, BasedSchemaFieldPartial, BasedSchemaTypePartial } from './types';
|
|
2
|
-
export declare const validateType: (fromSchema: BasedSchemaPartial, typeName: string, type: BasedSchemaTypePartial) => void;
|
|
3
|
-
export declare const validateField: (fromSchema: BasedSchemaPartial, path: string[], field: BasedSchemaFieldPartial) => void;
|
|
4
|
-
export declare const validateSchema: (schema: BasedSchemaPartial) => BasedSchemaPartial;
|