jsonschema-key-compression 1.6.0 → 1.7.0
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/es/compress.js +16 -29
- package/dist/es/compress.js.map +1 -1
- package/dist/es/create-compressed-json-schema.js +3 -18
- package/dist/es/create-compressed-json-schema.js.map +1 -1
- package/dist/es/create-compression-table.js +3 -18
- package/dist/es/create-compression-table.js.map +1 -1
- package/dist/es/decompress.js +9 -7
- package/dist/es/decompress.js.map +1 -1
- package/dist/es/util.d.ts +1 -1
- package/dist/es/util.js.map +1 -1
- package/dist/lib/compress.js +16 -29
- package/dist/lib/compress.js.map +1 -1
- package/dist/lib/create-compressed-json-schema.js +3 -18
- package/dist/lib/create-compressed-json-schema.js.map +1 -1
- package/dist/lib/create-compression-table.js +3 -18
- package/dist/lib/create-compression-table.js.map +1 -1
- package/dist/lib/decompress.js +9 -7
- package/dist/lib/decompress.js.map +1 -1
- package/dist/lib/util.d.ts +1 -1
- package/dist/lib/util.js.map +1 -1
- package/package.json +13 -13
- package/src/compress.ts +12 -10
- package/src/create-compressed-json-schema.ts +3 -1
- package/src/create-compression-table.ts +3 -1
- package/src/decompress.ts +8 -6
package/dist/es/compress.js
CHANGED
|
@@ -1,19 +1,3 @@
|
|
|
1
|
-
var __read = (this && this.__read) || function (o, n) {
|
|
2
|
-
var m = typeof Symbol === "function" && o[Symbol.iterator];
|
|
3
|
-
if (!m) return o;
|
|
4
|
-
var i = m.call(o), r, ar = [], e;
|
|
5
|
-
try {
|
|
6
|
-
while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
|
|
7
|
-
}
|
|
8
|
-
catch (error) { e = { error: error }; }
|
|
9
|
-
finally {
|
|
10
|
-
try {
|
|
11
|
-
if (r && !r.done && (m = i["return"])) m.call(i);
|
|
12
|
-
}
|
|
13
|
-
finally { if (e) throw e.error; }
|
|
14
|
-
}
|
|
15
|
-
return ar;
|
|
16
|
-
};
|
|
17
1
|
/**
|
|
18
2
|
* compress the keys of an object via the compression-table
|
|
19
3
|
* @recursive
|
|
@@ -28,13 +12,15 @@ export function compressObject(table, obj) {
|
|
|
28
12
|
}
|
|
29
13
|
else {
|
|
30
14
|
// object
|
|
31
|
-
var
|
|
32
|
-
Object.keys(obj)
|
|
15
|
+
var ret = {};
|
|
16
|
+
var keys = Object.keys(obj);
|
|
17
|
+
for (var index = 0; index < keys.length; index++) {
|
|
18
|
+
var key = keys[index];
|
|
33
19
|
var compressedKey = compressedAndFlaggedKey(table, key);
|
|
34
20
|
var value = compressObject(table, obj[key]);
|
|
35
|
-
|
|
36
|
-
}
|
|
37
|
-
return
|
|
21
|
+
ret[compressedKey] = value;
|
|
22
|
+
}
|
|
23
|
+
return ret;
|
|
38
24
|
}
|
|
39
25
|
}
|
|
40
26
|
/**
|
|
@@ -62,11 +48,11 @@ export function compressedAndFlaggedKey(table, key) {
|
|
|
62
48
|
throwErrorIfCompressionFlagUsed(table, key);
|
|
63
49
|
/**
|
|
64
50
|
* keys could be array-accessors like myArray[4]
|
|
65
|
-
* we have to split and
|
|
51
|
+
* we have to split and read the squared brackets value
|
|
66
52
|
*/
|
|
67
53
|
var splitSquaredBrackets = key.split('[');
|
|
68
|
-
|
|
69
|
-
var compressedKey = table.compressedToUncompressed.get(
|
|
54
|
+
var plainKey = splitSquaredBrackets.shift();
|
|
55
|
+
var compressedKey = table.compressedToUncompressed.get(plainKey);
|
|
70
56
|
if (!compressedKey) {
|
|
71
57
|
return key;
|
|
72
58
|
}
|
|
@@ -113,8 +99,9 @@ export function compressQuery(table, query) {
|
|
|
113
99
|
}
|
|
114
100
|
else {
|
|
115
101
|
var compressedSort_1 = {};
|
|
116
|
-
Object.entries
|
|
117
|
-
|
|
102
|
+
// do not use Object.entries, it is transpiled shitty
|
|
103
|
+
Object.keys(query.sort).forEach(function (key) {
|
|
104
|
+
var direction = query.sort[key];
|
|
118
105
|
var compressedField = compressedPath(table, key);
|
|
119
106
|
compressedSort_1[compressedField] = direction;
|
|
120
107
|
});
|
|
@@ -134,7 +121,7 @@ export function compressQuerySelector(table, selector) {
|
|
|
134
121
|
return selector;
|
|
135
122
|
}
|
|
136
123
|
else if (typeof selector === 'object' && selector !== null) {
|
|
137
|
-
var
|
|
124
|
+
var ret_1 = {};
|
|
138
125
|
Object.keys(selector).forEach(function (key) {
|
|
139
126
|
var useKey;
|
|
140
127
|
if (key.startsWith('$')) {
|
|
@@ -145,9 +132,9 @@ export function compressQuerySelector(table, selector) {
|
|
|
145
132
|
// property path
|
|
146
133
|
useKey = compressedPath(table, key);
|
|
147
134
|
}
|
|
148
|
-
|
|
135
|
+
ret_1[useKey] = compressQuerySelector(table, selector[key]);
|
|
149
136
|
});
|
|
150
|
-
return
|
|
137
|
+
return ret_1;
|
|
151
138
|
}
|
|
152
139
|
else {
|
|
153
140
|
return selector;
|
package/dist/es/compress.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"compress.js","sourceRoot":"","sources":["../../src/compress.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"compress.js","sourceRoot":"","sources":["../../src/compress.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,19 +1,3 @@
|
|
|
1
|
-
var __read = (this && this.__read) || function (o, n) {
|
|
2
|
-
var m = typeof Symbol === "function" && o[Symbol.iterator];
|
|
3
|
-
if (!m) return o;
|
|
4
|
-
var i = m.call(o), r, ar = [], e;
|
|
5
|
-
try {
|
|
6
|
-
while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
|
|
7
|
-
}
|
|
8
|
-
catch (error) { e = { error: error }; }
|
|
9
|
-
finally {
|
|
10
|
-
try {
|
|
11
|
-
if (r && !r.done && (m = i["return"])) m.call(i);
|
|
12
|
-
}
|
|
13
|
-
finally { if (e) throw e.error; }
|
|
14
|
-
}
|
|
15
|
-
return ar;
|
|
16
|
-
};
|
|
17
1
|
import { flatClone } from './util';
|
|
18
2
|
import { compressedPath } from './compress';
|
|
19
3
|
export function createCompressedJsonSchema(compressionTable, schema) {
|
|
@@ -33,8 +17,9 @@ export function createCompressedJsonSchema(compressionTable, schema) {
|
|
|
33
17
|
var cloned = flatClone(schema);
|
|
34
18
|
// compress all property names
|
|
35
19
|
var newProperties_1 = {};
|
|
36
|
-
Object.entries
|
|
37
|
-
|
|
20
|
+
// do not use Object.entries, it is transpiled shitty
|
|
21
|
+
Object.keys(schema.properties).forEach(function (key) {
|
|
22
|
+
var property = schema.properties[key];
|
|
38
23
|
var compressedKey = compressedPath(compressionTable, key);
|
|
39
24
|
newProperties_1[compressedKey] = createCompressedJsonSchema(compressionTable, property);
|
|
40
25
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"create-compressed-json-schema.js","sourceRoot":"","sources":["../../src/create-compressed-json-schema.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"create-compressed-json-schema.js","sourceRoot":"","sources":["../../src/create-compressed-json-schema.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,SAAS,EAAE,MAAM,QAAQ,CAAC;AACnC,OAAO,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAE5C,MAAM,UAAU,0BAA0B,CACtC,gBAAkC,EAClC,MAAkB;IAElB,IAAI,MAAM,CAAC,IAAI,KAAK,OAAO,IAAI,MAAM,CAAC,KAAK,EAAE,CAAC;QAC1C,IAAM,MAAM,GAAG,SAAS,CAAC,MAAM,CAAC,CAAC;QACjC,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC;YAC9B,IAAM,QAAQ,GAAG,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,UAAA,IAAI,IAAI,OAAA,0BAA0B,CAChE,gBAAgB,EAChB,IAAI,CACP,EAHyC,CAGzC,CAAC,CAAC;YACH,MAAM,CAAC,KAAK,GAAG,QAAQ,CAAC;QAC5B,CAAC;aAAM,CAAC;YACJ,IAAM,QAAQ,GAAG,0BAA0B,CACvC,gBAAgB,EAChB,MAAM,CAAC,KAAK,CACf,CAAC;YACF,MAAM,CAAC,KAAK,GAAG,QAAQ,CAAC;QAC5B,CAAC;QACD,OAAO,MAAM,CAAC;IAClB,CAAC;SAAM,IAAI,MAAM,CAAC,IAAI,KAAK,QAAQ,IAAI,MAAM,CAAC,UAAU,EAAE,CAAC;QACvD,IAAM,MAAM,GAAG,SAAS,CAAC,MAAM,CAAC,CAAC;QAEjC,8BAA8B;QAC9B,IAAM,eAAa,GAEf,EAAE,CAAC;QACP,qDAAqD;QACrD,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,OAAO,CAAC,UAAA,GAAG;YACtC,IAAM,QAAQ,GAAI,MAAc,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC;YACjD,IAAM,aAAa,GAAG,cAAc,CAAC,gBAAgB,EAAE,GAAG,CAAC,CAAC;YAC5D,eAAa,CAAC,aAAa,CAAC,GAAG,0BAA0B,CAAC,gBAAgB,EAAE,QAAQ,CAAC,CAAC;QAC1F,CAAC,CAAC,CAAC;QACH,MAAM,CAAC,UAAU,GAAG,eAAa,CAAC;QAElC,mCAAmC;QACnC,IAAI,MAAM,CAAC,QAAQ,EAAE,CAAC;YAClB,MAAM,CAAC,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,UAAA,GAAG,IAAI,OAAA,cAAc,CAAC,gBAAgB,EAAE,GAAG,CAAC,EAArC,CAAqC,CAAC,CAAC;QACxF,CAAC;QAED,OAAO,MAAM,CAAC;IAClB,CAAC;SAAM,CAAC;QACJ,iCAAiC;QACjC,OAAO,MAAM,CAAC;IAClB,CAAC;AACL,CAAC"}
|
|
@@ -1,19 +1,3 @@
|
|
|
1
|
-
var __read = (this && this.__read) || function (o, n) {
|
|
2
|
-
var m = typeof Symbol === "function" && o[Symbol.iterator];
|
|
3
|
-
if (!m) return o;
|
|
4
|
-
var i = m.call(o), r, ar = [], e;
|
|
5
|
-
try {
|
|
6
|
-
while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
|
|
7
|
-
}
|
|
8
|
-
catch (error) { e = { error: error }; }
|
|
9
|
-
finally {
|
|
10
|
-
try {
|
|
11
|
-
if (r && !r.done && (m = i["return"])) m.call(i);
|
|
12
|
-
}
|
|
13
|
-
finally { if (e) throw e.error; }
|
|
14
|
-
}
|
|
15
|
-
return ar;
|
|
16
|
-
};
|
|
17
1
|
import { numberToLetter, alphabeticCompare } from './util';
|
|
18
2
|
/**
|
|
19
3
|
* Compressed property-names begin with the compression-flag
|
|
@@ -44,8 +28,9 @@ export function getPropertiesOfSchema(schema) {
|
|
|
44
28
|
Array.from(keys).forEach(function (k) { return ret.add(k); });
|
|
45
29
|
}
|
|
46
30
|
if (schema.properties) {
|
|
47
|
-
Object.entries
|
|
48
|
-
|
|
31
|
+
// do not use Object.entries, it is transpiled shitty
|
|
32
|
+
Object.keys(schema.properties).forEach(function (property) {
|
|
33
|
+
var deepSchema = schema.properties[property];
|
|
49
34
|
ret.add(property);
|
|
50
35
|
if (!schema.properties) {
|
|
51
36
|
return;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"create-compression-table.js","sourceRoot":"","sources":["../../src/create-compression-table.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"create-compression-table.js","sourceRoot":"","sources":["../../src/create-compression-table.ts"],"names":[],"mappings":"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"}
|
package/dist/es/decompress.js
CHANGED
|
@@ -7,13 +7,15 @@ export function decompressObject(table, obj) {
|
|
|
7
7
|
}
|
|
8
8
|
else {
|
|
9
9
|
// object
|
|
10
|
-
var
|
|
11
|
-
Object.keys(obj)
|
|
10
|
+
var ret = {};
|
|
11
|
+
var keys = Object.keys(obj);
|
|
12
|
+
for (var index = 0; index < keys.length; index++) {
|
|
13
|
+
var key = keys[index];
|
|
12
14
|
var decompressed = decompressedKey(table, key);
|
|
13
15
|
var value = decompressObject(table, obj[key]);
|
|
14
|
-
|
|
15
|
-
}
|
|
16
|
-
return
|
|
16
|
+
ret[decompressed] = value;
|
|
17
|
+
}
|
|
18
|
+
return ret;
|
|
17
19
|
}
|
|
18
20
|
}
|
|
19
21
|
/**
|
|
@@ -37,8 +39,8 @@ export function decompressedKey(table, key) {
|
|
|
37
39
|
* we have to split and readd the squared brackets value
|
|
38
40
|
*/
|
|
39
41
|
var splitSquaredBrackets = key.split('[');
|
|
40
|
-
|
|
41
|
-
var decompressed = table.uncompressedToCompressed.get(
|
|
42
|
+
var plainKey = splitSquaredBrackets.shift();
|
|
43
|
+
var decompressed = table.uncompressedToCompressed.get(plainKey);
|
|
42
44
|
if (!decompressed) {
|
|
43
45
|
return key;
|
|
44
46
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"decompress.js","sourceRoot":"","sources":["../../src/decompress.ts"],"names":[],"mappings":"AAKA,MAAM,UAAU,gBAAgB,CAC5B,KAAuB,EACvB,GAAoB;IAEpB,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,GAAG,KAAK,IAAI;QAAE,OAAO,GAAG,CAAC;SACnD,IAAI,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE;
|
|
1
|
+
{"version":3,"file":"decompress.js","sourceRoot":"","sources":["../../src/decompress.ts"],"names":[],"mappings":"AAKA,MAAM,UAAU,gBAAgB,CAC5B,KAAuB,EACvB,GAAoB;IAEpB,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,GAAG,KAAK,IAAI;QAAE,OAAO,GAAG,CAAC;SACnD,IAAI,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC;QAC1B,QAAQ;QACR,OAAO,GAAG,CAAC,GAAG,CAAC,UAAA,IAAI,IAAI,OAAA,gBAAgB,CAAC,KAAK,EAAE,IAAI,CAAC,EAA7B,CAA6B,CAAC,CAAC;IAC1D,CAAC;SAAM,CAAC;QACJ,SAAS;QACT,IAAM,GAAG,GAAoB,EAAE,CAAC;QAChC,IAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAC9B,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,IAAI,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE,CAAC;YAC/C,IAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC;YACxB,IAAM,YAAY,GAAG,eAAe,CAChC,KAAK,EACL,GAAU,CACb,CAAC;YACF,IAAM,KAAK,GAAG,gBAAgB,CAC1B,KAAK,EACL,GAAG,CAAC,GAAU,CAAC,CAClB,CAAC;YACF,GAAG,CAAC,YAAY,CAAC,GAAG,KAAK,CAAC;QAC9B,CAAC;QACD,OAAO,GAAG,CAAC;IACf,CAAC;AACL,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,gBAAgB,CAC5B,KAAuB,EACvB,IAAY;IAEZ,IAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IACjC,OAAO,QAAQ;SACV,GAAG,CAAC,UAAA,MAAM;QACP,IAAM,aAAa,GAAG,eAAe,CACjC,KAAK,EACL,MAAM,CACT,CAAC;QACF,OAAO,aAAa,CAAC;IACzB,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AACrB,CAAC;AAED,MAAM,UAAU,eAAe,CAC3B,KAAuB,EACvB,GAAW;IAGX;;;UAGM;IACN,IAAM,oBAAoB,GAAG,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAC5C,IAAM,QAAQ,GAAG,oBAAoB,CAAC,KAAK,EAAY,CAAC;IAExD,IAAM,YAAY,GAAG,KAAK,CAAC,wBAAwB,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;IAClE,IAAI,CAAC,YAAY,EAAE,CAAC;QAChB,OAAO,GAAG,CAAC;IACf,CAAC;SAAM,CAAC;QACJ,IAAM,YAAY,GAAG,oBAAoB,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,GAAG,oBAAoB,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QAC7F,OAAO,YAAY,GAAG,YAAY,CAAC;IACvC,CAAC;AACL,CAAC"}
|
package/dist/es/util.d.ts
CHANGED
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
* @link https://github.com/matthewmueller/number-to-letter/blob/master/index.js
|
|
4
4
|
*/
|
|
5
5
|
export declare function numberToLetter(nr: number): string;
|
|
6
|
-
export
|
|
6
|
+
export type SortComparator<T = any> = (a: T, y: T) => -1 | 1 | 0;
|
|
7
7
|
export declare const alphabeticCompare: SortComparator;
|
|
8
8
|
/**
|
|
9
9
|
* does a flat copy on the objects,
|
package/dist/es/util.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"util.js","sourceRoot":"","sources":["../../src/util.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,IAAM,WAAW,GAAG,4DAA4D,CAAC;AACjF,IAAM,YAAY,GAAG,WAAW,CAAC,MAAM,CAAC;AAExC;;;GAGG;AACH,MAAM,UAAU,cAAc,CAAC,EAAU;IACrC,IAAM,MAAM,GAAa,EAAE,CAAC;IAC5B,GAAG;
|
|
1
|
+
{"version":3,"file":"util.js","sourceRoot":"","sources":["../../src/util.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,IAAM,WAAW,GAAG,4DAA4D,CAAC;AACjF,IAAM,YAAY,GAAG,WAAW,CAAC,MAAM,CAAC;AAExC;;;GAGG;AACH,MAAM,UAAU,cAAc,CAAC,EAAU;IACrC,IAAM,MAAM,GAAa,EAAE,CAAC;IAC5B,GAAG,CAAC;QACA,IAAM,CAAC,GAAG,EAAE,GAAG,YAAY,CAAC;QAC5B,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACf,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,GAAG,YAAY,CAAC,CAAC;IACvC,CAAC,QAAQ,EAAE,EAAE,GAAG,CAAC,EAAE;IAEnB,OAAO,MAAM;SACR,OAAO,EAAE;SACT,GAAG,CAAC,UAAA,CAAC,IAAI,OAAA,WAAW,CAAC,CAAC,CAAC,EAAd,CAAc,CAAC;SACxB,IAAI,CAAC,EAAE,CAAC,CAAC;AAClB,CAAC;AAID,MAAM,CAAC,IAAM,iBAAiB,GAAmB,UAAC,CAAC,EAAE,CAAC;IAClD,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;QACR,OAAO,CAAC,CAAC,CAAC;IACd,CAAC;IACD,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;QACR,OAAO,CAAC,CAAC;IACb,CAAC;IACD,OAAO,CAAC,CAAC;AACb,CAAC,CAAC;AAEF;;;;GAIG;AACH,MAAM,UAAU,SAAS,CAAI,GAAM;IAC/B,OAAO,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,GAAG,CAAC,CAAC;AAClC,CAAC"}
|
package/dist/lib/compress.js
CHANGED
|
@@ -1,20 +1,4 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
var __read = (this && this.__read) || function (o, n) {
|
|
3
|
-
var m = typeof Symbol === "function" && o[Symbol.iterator];
|
|
4
|
-
if (!m) return o;
|
|
5
|
-
var i = m.call(o), r, ar = [], e;
|
|
6
|
-
try {
|
|
7
|
-
while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
|
|
8
|
-
}
|
|
9
|
-
catch (error) { e = { error: error }; }
|
|
10
|
-
finally {
|
|
11
|
-
try {
|
|
12
|
-
if (r && !r.done && (m = i["return"])) m.call(i);
|
|
13
|
-
}
|
|
14
|
-
finally { if (e) throw e.error; }
|
|
15
|
-
}
|
|
16
|
-
return ar;
|
|
17
|
-
};
|
|
18
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
19
3
|
exports.compressQuerySelector = exports.compressQuery = exports.compressedAndFlaggedKey = exports.throwErrorIfCompressionFlagUsed = exports.compressedPath = exports.compressObject = void 0;
|
|
20
4
|
/**
|
|
@@ -31,13 +15,15 @@ function compressObject(table, obj) {
|
|
|
31
15
|
}
|
|
32
16
|
else {
|
|
33
17
|
// object
|
|
34
|
-
var
|
|
35
|
-
Object.keys(obj)
|
|
18
|
+
var ret = {};
|
|
19
|
+
var keys = Object.keys(obj);
|
|
20
|
+
for (var index = 0; index < keys.length; index++) {
|
|
21
|
+
var key = keys[index];
|
|
36
22
|
var compressedKey = compressedAndFlaggedKey(table, key);
|
|
37
23
|
var value = compressObject(table, obj[key]);
|
|
38
|
-
|
|
39
|
-
}
|
|
40
|
-
return
|
|
24
|
+
ret[compressedKey] = value;
|
|
25
|
+
}
|
|
26
|
+
return ret;
|
|
41
27
|
}
|
|
42
28
|
}
|
|
43
29
|
exports.compressObject = compressObject;
|
|
@@ -68,11 +54,11 @@ function compressedAndFlaggedKey(table, key) {
|
|
|
68
54
|
throwErrorIfCompressionFlagUsed(table, key);
|
|
69
55
|
/**
|
|
70
56
|
* keys could be array-accessors like myArray[4]
|
|
71
|
-
* we have to split and
|
|
57
|
+
* we have to split and read the squared brackets value
|
|
72
58
|
*/
|
|
73
59
|
var splitSquaredBrackets = key.split('[');
|
|
74
|
-
|
|
75
|
-
var compressedKey = table.compressedToUncompressed.get(
|
|
60
|
+
var plainKey = splitSquaredBrackets.shift();
|
|
61
|
+
var compressedKey = table.compressedToUncompressed.get(plainKey);
|
|
76
62
|
if (!compressedKey) {
|
|
77
63
|
return key;
|
|
78
64
|
}
|
|
@@ -120,8 +106,9 @@ function compressQuery(table, query) {
|
|
|
120
106
|
}
|
|
121
107
|
else {
|
|
122
108
|
var compressedSort_1 = {};
|
|
123
|
-
Object.entries
|
|
124
|
-
|
|
109
|
+
// do not use Object.entries, it is transpiled shitty
|
|
110
|
+
Object.keys(query.sort).forEach(function (key) {
|
|
111
|
+
var direction = query.sort[key];
|
|
125
112
|
var compressedField = compressedPath(table, key);
|
|
126
113
|
compressedSort_1[compressedField] = direction;
|
|
127
114
|
});
|
|
@@ -142,7 +129,7 @@ function compressQuerySelector(table, selector) {
|
|
|
142
129
|
return selector;
|
|
143
130
|
}
|
|
144
131
|
else if (typeof selector === 'object' && selector !== null) {
|
|
145
|
-
var
|
|
132
|
+
var ret_1 = {};
|
|
146
133
|
Object.keys(selector).forEach(function (key) {
|
|
147
134
|
var useKey;
|
|
148
135
|
if (key.startsWith('$')) {
|
|
@@ -153,9 +140,9 @@ function compressQuerySelector(table, selector) {
|
|
|
153
140
|
// property path
|
|
154
141
|
useKey = compressedPath(table, key);
|
|
155
142
|
}
|
|
156
|
-
|
|
143
|
+
ret_1[useKey] = compressQuerySelector(table, selector[key]);
|
|
157
144
|
});
|
|
158
|
-
return
|
|
145
|
+
return ret_1;
|
|
159
146
|
}
|
|
160
147
|
else {
|
|
161
148
|
return selector;
|
package/dist/lib/compress.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"compress.js","sourceRoot":"","sources":["../../src/compress.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"compress.js","sourceRoot":"","sources":["../../src/compress.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,20 +1,4 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
var __read = (this && this.__read) || function (o, n) {
|
|
3
|
-
var m = typeof Symbol === "function" && o[Symbol.iterator];
|
|
4
|
-
if (!m) return o;
|
|
5
|
-
var i = m.call(o), r, ar = [], e;
|
|
6
|
-
try {
|
|
7
|
-
while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
|
|
8
|
-
}
|
|
9
|
-
catch (error) { e = { error: error }; }
|
|
10
|
-
finally {
|
|
11
|
-
try {
|
|
12
|
-
if (r && !r.done && (m = i["return"])) m.call(i);
|
|
13
|
-
}
|
|
14
|
-
finally { if (e) throw e.error; }
|
|
15
|
-
}
|
|
16
|
-
return ar;
|
|
17
|
-
};
|
|
18
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
19
3
|
exports.createCompressedJsonSchema = void 0;
|
|
20
4
|
var util_1 = require("./util");
|
|
@@ -36,8 +20,9 @@ function createCompressedJsonSchema(compressionTable, schema) {
|
|
|
36
20
|
var cloned = (0, util_1.flatClone)(schema);
|
|
37
21
|
// compress all property names
|
|
38
22
|
var newProperties_1 = {};
|
|
39
|
-
Object.entries
|
|
40
|
-
|
|
23
|
+
// do not use Object.entries, it is transpiled shitty
|
|
24
|
+
Object.keys(schema.properties).forEach(function (key) {
|
|
25
|
+
var property = schema.properties[key];
|
|
41
26
|
var compressedKey = (0, compress_1.compressedPath)(compressionTable, key);
|
|
42
27
|
newProperties_1[compressedKey] = createCompressedJsonSchema(compressionTable, property);
|
|
43
28
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"create-compressed-json-schema.js","sourceRoot":"","sources":["../../src/create-compressed-json-schema.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"create-compressed-json-schema.js","sourceRoot":"","sources":["../../src/create-compressed-json-schema.ts"],"names":[],"mappings":";;;AAIA,+BAAmC;AACnC,uCAA4C;AAE5C,SAAgB,0BAA0B,CACtC,gBAAkC,EAClC,MAAkB;IAElB,IAAI,MAAM,CAAC,IAAI,KAAK,OAAO,IAAI,MAAM,CAAC,KAAK,EAAE,CAAC;QAC1C,IAAM,MAAM,GAAG,IAAA,gBAAS,EAAC,MAAM,CAAC,CAAC;QACjC,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC;YAC9B,IAAM,QAAQ,GAAG,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,UAAA,IAAI,IAAI,OAAA,0BAA0B,CAChE,gBAAgB,EAChB,IAAI,CACP,EAHyC,CAGzC,CAAC,CAAC;YACH,MAAM,CAAC,KAAK,GAAG,QAAQ,CAAC;QAC5B,CAAC;aAAM,CAAC;YACJ,IAAM,QAAQ,GAAG,0BAA0B,CACvC,gBAAgB,EAChB,MAAM,CAAC,KAAK,CACf,CAAC;YACF,MAAM,CAAC,KAAK,GAAG,QAAQ,CAAC;QAC5B,CAAC;QACD,OAAO,MAAM,CAAC;IAClB,CAAC;SAAM,IAAI,MAAM,CAAC,IAAI,KAAK,QAAQ,IAAI,MAAM,CAAC,UAAU,EAAE,CAAC;QACvD,IAAM,MAAM,GAAG,IAAA,gBAAS,EAAC,MAAM,CAAC,CAAC;QAEjC,8BAA8B;QAC9B,IAAM,eAAa,GAEf,EAAE,CAAC;QACP,qDAAqD;QACrD,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,OAAO,CAAC,UAAA,GAAG;YACtC,IAAM,QAAQ,GAAI,MAAc,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC;YACjD,IAAM,aAAa,GAAG,IAAA,yBAAc,EAAC,gBAAgB,EAAE,GAAG,CAAC,CAAC;YAC5D,eAAa,CAAC,aAAa,CAAC,GAAG,0BAA0B,CAAC,gBAAgB,EAAE,QAAQ,CAAC,CAAC;QAC1F,CAAC,CAAC,CAAC;QACH,MAAM,CAAC,UAAU,GAAG,eAAa,CAAC;QAElC,mCAAmC;QACnC,IAAI,MAAM,CAAC,QAAQ,EAAE,CAAC;YAClB,MAAM,CAAC,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,UAAA,GAAG,IAAI,OAAA,IAAA,yBAAc,EAAC,gBAAgB,EAAE,GAAG,CAAC,EAArC,CAAqC,CAAC,CAAC;QACxF,CAAC;QAED,OAAO,MAAM,CAAC;IAClB,CAAC;SAAM,CAAC;QACJ,iCAAiC;QACjC,OAAO,MAAM,CAAC;IAClB,CAAC;AACL,CAAC;AA7CD,gEA6CC"}
|
|
@@ -1,20 +1,4 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
var __read = (this && this.__read) || function (o, n) {
|
|
3
|
-
var m = typeof Symbol === "function" && o[Symbol.iterator];
|
|
4
|
-
if (!m) return o;
|
|
5
|
-
var i = m.call(o), r, ar = [], e;
|
|
6
|
-
try {
|
|
7
|
-
while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
|
|
8
|
-
}
|
|
9
|
-
catch (error) { e = { error: error }; }
|
|
10
|
-
finally {
|
|
11
|
-
try {
|
|
12
|
-
if (r && !r.done && (m = i["return"])) m.call(i);
|
|
13
|
-
}
|
|
14
|
-
finally { if (e) throw e.error; }
|
|
15
|
-
}
|
|
16
|
-
return ar;
|
|
17
|
-
};
|
|
18
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
19
3
|
exports.uncompressedToCompressedTable = exports.compressedToUncompressedTable = exports.getPropertiesOfSchema = exports.createCompressionTable = exports.DEFAULT_COMPRESSION_FLAG = void 0;
|
|
20
4
|
var util_1 = require("./util");
|
|
@@ -48,8 +32,9 @@ function getPropertiesOfSchema(schema) {
|
|
|
48
32
|
Array.from(keys).forEach(function (k) { return ret.add(k); });
|
|
49
33
|
}
|
|
50
34
|
if (schema.properties) {
|
|
51
|
-
Object.entries
|
|
52
|
-
|
|
35
|
+
// do not use Object.entries, it is transpiled shitty
|
|
36
|
+
Object.keys(schema.properties).forEach(function (property) {
|
|
37
|
+
var deepSchema = schema.properties[property];
|
|
53
38
|
ret.add(property);
|
|
54
39
|
if (!schema.properties) {
|
|
55
40
|
return;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"create-compression-table.js","sourceRoot":"","sources":["../../src/create-compression-table.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"create-compression-table.js","sourceRoot":"","sources":["../../src/create-compression-table.ts"],"names":[],"mappings":"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"}
|
package/dist/lib/decompress.js
CHANGED
|
@@ -10,13 +10,15 @@ function decompressObject(table, obj) {
|
|
|
10
10
|
}
|
|
11
11
|
else {
|
|
12
12
|
// object
|
|
13
|
-
var
|
|
14
|
-
Object.keys(obj)
|
|
13
|
+
var ret = {};
|
|
14
|
+
var keys = Object.keys(obj);
|
|
15
|
+
for (var index = 0; index < keys.length; index++) {
|
|
16
|
+
var key = keys[index];
|
|
15
17
|
var decompressed = decompressedKey(table, key);
|
|
16
18
|
var value = decompressObject(table, obj[key]);
|
|
17
|
-
|
|
18
|
-
}
|
|
19
|
-
return
|
|
19
|
+
ret[decompressed] = value;
|
|
20
|
+
}
|
|
21
|
+
return ret;
|
|
20
22
|
}
|
|
21
23
|
}
|
|
22
24
|
exports.decompressObject = decompressObject;
|
|
@@ -42,8 +44,8 @@ function decompressedKey(table, key) {
|
|
|
42
44
|
* we have to split and readd the squared brackets value
|
|
43
45
|
*/
|
|
44
46
|
var splitSquaredBrackets = key.split('[');
|
|
45
|
-
|
|
46
|
-
var decompressed = table.uncompressedToCompressed.get(
|
|
47
|
+
var plainKey = splitSquaredBrackets.shift();
|
|
48
|
+
var decompressed = table.uncompressedToCompressed.get(plainKey);
|
|
47
49
|
if (!decompressed) {
|
|
48
50
|
return key;
|
|
49
51
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"decompress.js","sourceRoot":"","sources":["../../src/decompress.ts"],"names":[],"mappings":";;;AAKA,SAAgB,gBAAgB,CAC5B,KAAuB,EACvB,GAAoB;IAEpB,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,GAAG,KAAK,IAAI;QAAE,OAAO,GAAG,CAAC;SACnD,IAAI,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE;
|
|
1
|
+
{"version":3,"file":"decompress.js","sourceRoot":"","sources":["../../src/decompress.ts"],"names":[],"mappings":";;;AAKA,SAAgB,gBAAgB,CAC5B,KAAuB,EACvB,GAAoB;IAEpB,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,GAAG,KAAK,IAAI;QAAE,OAAO,GAAG,CAAC;SACnD,IAAI,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC;QAC1B,QAAQ;QACR,OAAO,GAAG,CAAC,GAAG,CAAC,UAAA,IAAI,IAAI,OAAA,gBAAgB,CAAC,KAAK,EAAE,IAAI,CAAC,EAA7B,CAA6B,CAAC,CAAC;IAC1D,CAAC;SAAM,CAAC;QACJ,SAAS;QACT,IAAM,GAAG,GAAoB,EAAE,CAAC;QAChC,IAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAC9B,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,IAAI,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE,CAAC;YAC/C,IAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC;YACxB,IAAM,YAAY,GAAG,eAAe,CAChC,KAAK,EACL,GAAU,CACb,CAAC;YACF,IAAM,KAAK,GAAG,gBAAgB,CAC1B,KAAK,EACL,GAAG,CAAC,GAAU,CAAC,CAClB,CAAC;YACF,GAAG,CAAC,YAAY,CAAC,GAAG,KAAK,CAAC;QAC9B,CAAC;QACD,OAAO,GAAG,CAAC;IACf,CAAC;AACL,CAAC;AA1BD,4CA0BC;AAED;;;;;;GAMG;AACH,SAAgB,gBAAgB,CAC5B,KAAuB,EACvB,IAAY;IAEZ,IAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IACjC,OAAO,QAAQ;SACV,GAAG,CAAC,UAAA,MAAM;QACP,IAAM,aAAa,GAAG,eAAe,CACjC,KAAK,EACL,MAAM,CACT,CAAC;QACF,OAAO,aAAa,CAAC;IACzB,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AACrB,CAAC;AAbD,4CAaC;AAED,SAAgB,eAAe,CAC3B,KAAuB,EACvB,GAAW;IAGX;;;UAGM;IACN,IAAM,oBAAoB,GAAG,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAC5C,IAAM,QAAQ,GAAG,oBAAoB,CAAC,KAAK,EAAY,CAAC;IAExD,IAAM,YAAY,GAAG,KAAK,CAAC,wBAAwB,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;IAClE,IAAI,CAAC,YAAY,EAAE,CAAC;QAChB,OAAO,GAAG,CAAC;IACf,CAAC;SAAM,CAAC;QACJ,IAAM,YAAY,GAAG,oBAAoB,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,GAAG,oBAAoB,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QAC7F,OAAO,YAAY,GAAG,YAAY,CAAC;IACvC,CAAC;AACL,CAAC;AAnBD,0CAmBC"}
|
package/dist/lib/util.d.ts
CHANGED
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
* @link https://github.com/matthewmueller/number-to-letter/blob/master/index.js
|
|
4
4
|
*/
|
|
5
5
|
export declare function numberToLetter(nr: number): string;
|
|
6
|
-
export
|
|
6
|
+
export type SortComparator<T = any> = (a: T, y: T) => -1 | 1 | 0;
|
|
7
7
|
export declare const alphabeticCompare: SortComparator;
|
|
8
8
|
/**
|
|
9
9
|
* does a flat copy on the objects,
|
package/dist/lib/util.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"util.js","sourceRoot":"","sources":["../../src/util.ts"],"names":[],"mappings":";;;AAAA;;;GAGG;AACH,IAAM,WAAW,GAAG,4DAA4D,CAAC;AACjF,IAAM,YAAY,GAAG,WAAW,CAAC,MAAM,CAAC;AAExC;;;GAGG;AACH,SAAgB,cAAc,CAAC,EAAU;IACrC,IAAM,MAAM,GAAa,EAAE,CAAC;IAC5B,GAAG;
|
|
1
|
+
{"version":3,"file":"util.js","sourceRoot":"","sources":["../../src/util.ts"],"names":[],"mappings":";;;AAAA;;;GAGG;AACH,IAAM,WAAW,GAAG,4DAA4D,CAAC;AACjF,IAAM,YAAY,GAAG,WAAW,CAAC,MAAM,CAAC;AAExC;;;GAGG;AACH,SAAgB,cAAc,CAAC,EAAU;IACrC,IAAM,MAAM,GAAa,EAAE,CAAC;IAC5B,GAAG,CAAC;QACA,IAAM,CAAC,GAAG,EAAE,GAAG,YAAY,CAAC;QAC5B,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACf,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,GAAG,YAAY,CAAC,CAAC;IACvC,CAAC,QAAQ,EAAE,EAAE,GAAG,CAAC,EAAE;IAEnB,OAAO,MAAM;SACR,OAAO,EAAE;SACT,GAAG,CAAC,UAAA,CAAC,IAAI,OAAA,WAAW,CAAC,CAAC,CAAC,EAAd,CAAc,CAAC;SACxB,IAAI,CAAC,EAAE,CAAC,CAAC;AAClB,CAAC;AAZD,wCAYC;AAIM,IAAM,iBAAiB,GAAmB,UAAC,CAAC,EAAE,CAAC;IAClD,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;QACR,OAAO,CAAC,CAAC,CAAC;IACd,CAAC;IACD,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;QACR,OAAO,CAAC,CAAC;IACb,CAAC;IACD,OAAO,CAAC,CAAC;AACb,CAAC,CAAC;AARW,QAAA,iBAAiB,qBAQ5B;AAEF;;;;GAIG;AACH,SAAgB,SAAS,CAAI,GAAM;IAC/B,OAAO,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,GAAG,CAAC,CAAC;AAClC,CAAC;AAFD,8BAEC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "jsonschema-key-compression",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.7.0",
|
|
4
4
|
"description": "Compress json-data based on its json-schema",
|
|
5
5
|
"author": "pubkey",
|
|
6
6
|
"keywords": [
|
|
@@ -29,26 +29,26 @@
|
|
|
29
29
|
"lint:fix": "tslint --project . --fix",
|
|
30
30
|
"transpile": "tsc -p ./ && copyfiles -u 1 \"src/**/*.d.ts\" dist/lib && echo '# transpile es5 (require) sucess!'",
|
|
31
31
|
"transpile:es": "tsc -p ./ --target ES5 --module ES6 --outDir ./dist/es && copyfiles -u 1 \"src/**/*.d.ts\" dist/es && echo '# transpile es6 (modules) sucess!'",
|
|
32
|
-
"build": "rimraf -
|
|
33
|
-
"test": "mocha -r ts-node/register test/unit/index.test.ts",
|
|
32
|
+
"build": "rimraf -fr ./dist && npm run transpile && npm run transpile:es",
|
|
33
|
+
"test": "mocha -r ts-node/register test/unit/index.test.ts --bail",
|
|
34
34
|
"test:performance": "mocha -r ts-node/register --bail --exit ./test/performance.test.ts",
|
|
35
35
|
"test:efficiency": "mocha -r ts-node/register --bail --exit ./test/efficiency.test.ts",
|
|
36
36
|
"dev": "mocha -r ts-node/register test/unit/index.test.ts --watch --watch-extensions ts"
|
|
37
37
|
},
|
|
38
38
|
"devDependencies": {
|
|
39
|
-
"@types/faker": "5.5.
|
|
40
|
-
"@types/mocha": "
|
|
41
|
-
"@types/node": "
|
|
42
|
-
"@types/node-gzip": "1.1.
|
|
43
|
-
"assert": "2.
|
|
44
|
-
"async-test-util": "
|
|
39
|
+
"@types/faker": "5.5.9",
|
|
40
|
+
"@types/mocha": "10.0.6",
|
|
41
|
+
"@types/node": "20.11.16",
|
|
42
|
+
"@types/node-gzip": "1.1.3",
|
|
43
|
+
"assert": "2.1.0",
|
|
44
|
+
"async-test-util": "2.4.0",
|
|
45
45
|
"copyfiles": "2.4.1",
|
|
46
46
|
"faker": "5.5.3",
|
|
47
|
-
"mocha": "
|
|
47
|
+
"mocha": "10.2.0",
|
|
48
48
|
"node-gzip": "1.1.2",
|
|
49
|
-
"rimraf": "
|
|
50
|
-
"ts-node": "10.2
|
|
49
|
+
"rimraf": "5.0.5",
|
|
50
|
+
"ts-node": "10.9.2",
|
|
51
51
|
"tslint": "6.1.3",
|
|
52
|
-
"typescript": "
|
|
52
|
+
"typescript": "5.3.3"
|
|
53
53
|
}
|
|
54
54
|
}
|
package/src/compress.ts
CHANGED
|
@@ -20,17 +20,19 @@ export function compressObject(
|
|
|
20
20
|
} else {
|
|
21
21
|
// object
|
|
22
22
|
const ret: PlainJsonObject = {};
|
|
23
|
-
Object.keys(obj)
|
|
23
|
+
const keys = Object.keys(obj);
|
|
24
|
+
for (let index = 0; index < keys.length; index++) {
|
|
25
|
+
const key = keys[index];
|
|
24
26
|
const compressedKey = compressedAndFlaggedKey(
|
|
25
27
|
table,
|
|
26
|
-
key
|
|
28
|
+
key as any
|
|
27
29
|
);
|
|
28
30
|
const value = compressObject(
|
|
29
31
|
table,
|
|
30
|
-
obj[key]
|
|
32
|
+
obj[key as any]
|
|
31
33
|
);
|
|
32
34
|
ret[compressedKey] = value;
|
|
33
|
-
}
|
|
35
|
+
}
|
|
34
36
|
return ret;
|
|
35
37
|
}
|
|
36
38
|
}
|
|
@@ -77,15 +79,13 @@ export function compressedAndFlaggedKey(
|
|
|
77
79
|
table,
|
|
78
80
|
key
|
|
79
81
|
);
|
|
80
|
-
|
|
81
82
|
/**
|
|
82
83
|
* keys could be array-accessors like myArray[4]
|
|
83
|
-
* we have to split and
|
|
84
|
+
* we have to split and read the squared brackets value
|
|
84
85
|
*/
|
|
85
86
|
const splitSquaredBrackets = key.split('[');
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
const compressedKey = table.compressedToUncompressed.get(key);
|
|
87
|
+
const plainKey = splitSquaredBrackets.shift() as string;
|
|
88
|
+
const compressedKey = table.compressedToUncompressed.get(plainKey);
|
|
89
89
|
if (!compressedKey) {
|
|
90
90
|
return key;
|
|
91
91
|
} else {
|
|
@@ -146,7 +146,9 @@ export function compressQuery(
|
|
|
146
146
|
});
|
|
147
147
|
} else {
|
|
148
148
|
const compressedSort: any = {};
|
|
149
|
-
Object.entries
|
|
149
|
+
// do not use Object.entries, it is transpiled shitty
|
|
150
|
+
Object.keys(query.sort).forEach(key => {
|
|
151
|
+
const direction = (query as any).sort[key];
|
|
150
152
|
const compressedField = compressedPath(
|
|
151
153
|
table,
|
|
152
154
|
key
|
|
@@ -32,7 +32,9 @@ export function createCompressedJsonSchema(
|
|
|
32
32
|
const newProperties: {
|
|
33
33
|
[k: string]: JsonSchema
|
|
34
34
|
} = {};
|
|
35
|
-
Object.entries
|
|
35
|
+
// do not use Object.entries, it is transpiled shitty
|
|
36
|
+
Object.keys(schema.properties).forEach(key => {
|
|
37
|
+
const property = (schema as any).properties[key];
|
|
36
38
|
const compressedKey = compressedPath(compressionTable, key);
|
|
37
39
|
newProperties[compressedKey] = createCompressedJsonSchema(compressionTable, property);
|
|
38
40
|
});
|
|
@@ -51,7 +51,9 @@ export function getPropertiesOfSchema(schema: JsonSchema): Set<string> {
|
|
|
51
51
|
}
|
|
52
52
|
|
|
53
53
|
if (schema.properties) {
|
|
54
|
-
Object.entries
|
|
54
|
+
// do not use Object.entries, it is transpiled shitty
|
|
55
|
+
Object.keys(schema.properties).forEach(property => {
|
|
56
|
+
const deepSchema = (schema as any).properties[property];
|
|
55
57
|
ret.add(property);
|
|
56
58
|
if (!schema.properties) {
|
|
57
59
|
return;
|
package/src/decompress.ts
CHANGED
|
@@ -14,17 +14,19 @@ export function decompressObject(
|
|
|
14
14
|
} else {
|
|
15
15
|
// object
|
|
16
16
|
const ret: PlainJsonObject = {};
|
|
17
|
-
Object.keys(obj)
|
|
17
|
+
const keys = Object.keys(obj);
|
|
18
|
+
for (let index = 0; index < keys.length; index++) {
|
|
19
|
+
const key = keys[index];
|
|
18
20
|
const decompressed = decompressedKey(
|
|
19
21
|
table,
|
|
20
|
-
key
|
|
22
|
+
key as any
|
|
21
23
|
);
|
|
22
24
|
const value = decompressObject(
|
|
23
25
|
table,
|
|
24
|
-
obj[key]
|
|
26
|
+
obj[key as any]
|
|
25
27
|
);
|
|
26
28
|
ret[decompressed] = value;
|
|
27
|
-
}
|
|
29
|
+
}
|
|
28
30
|
return ret;
|
|
29
31
|
}
|
|
30
32
|
}
|
|
@@ -61,9 +63,9 @@ export function decompressedKey(
|
|
|
61
63
|
* we have to split and readd the squared brackets value
|
|
62
64
|
*/
|
|
63
65
|
const splitSquaredBrackets = key.split('[');
|
|
64
|
-
|
|
66
|
+
const plainKey = splitSquaredBrackets.shift() as string;
|
|
65
67
|
|
|
66
|
-
const decompressed = table.uncompressedToCompressed.get(
|
|
68
|
+
const decompressed = table.uncompressedToCompressed.get(plainKey);
|
|
67
69
|
if (!decompressed) {
|
|
68
70
|
return key;
|
|
69
71
|
} else {
|