cmpstr 3.0.4 → 3.1.1
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/LICENSE +2 -2
- package/README.md +3 -2
- package/dist/CmpStr.esm.js +362 -95
- package/dist/CmpStr.esm.js.map +1 -1
- package/dist/CmpStr.esm.min.js +3 -3
- package/dist/CmpStr.esm.min.js.map +1 -1
- package/dist/CmpStr.umd.js +363 -94
- package/dist/CmpStr.umd.js.map +1 -1
- package/dist/CmpStr.umd.min.js +3 -3
- package/dist/CmpStr.umd.min.js.map +1 -1
- package/dist/cjs/CmpStr.cjs +41 -1
- package/dist/cjs/CmpStr.cjs.map +1 -1
- package/dist/cjs/CmpStrAsync.cjs +38 -1
- package/dist/cjs/CmpStrAsync.cjs.map +1 -1
- package/dist/cjs/index.cjs +1 -1
- package/dist/cjs/metric/Cosine.cjs +1 -1
- package/dist/cjs/metric/DamerauLevenshtein.cjs +1 -1
- package/dist/cjs/metric/DiceSorensen.cjs +1 -1
- package/dist/cjs/metric/Hamming.cjs +1 -1
- package/dist/cjs/metric/Jaccard.cjs +1 -1
- package/dist/cjs/metric/JaroWinkler.cjs +1 -1
- package/dist/cjs/metric/LCS.cjs +1 -1
- package/dist/cjs/metric/Levenshtein.cjs +1 -1
- package/dist/cjs/metric/Metric.cjs +1 -1
- package/dist/cjs/metric/NeedlemanWunsch.cjs +1 -1
- package/dist/cjs/metric/SmithWaterman.cjs +1 -1
- package/dist/cjs/metric/qGram.cjs +1 -1
- package/dist/cjs/phonetic/Caverphone.cjs +1 -1
- package/dist/cjs/phonetic/Cologne.cjs +1 -1
- package/dist/cjs/phonetic/Metaphone.cjs +1 -1
- package/dist/cjs/phonetic/Phonetic.cjs +1 -1
- package/dist/cjs/phonetic/Soundex.cjs +1 -1
- package/dist/cjs/root.cjs +13 -1
- package/dist/cjs/root.cjs.map +1 -1
- package/dist/cjs/utils/DeepMerge.cjs +1 -1
- package/dist/cjs/utils/DiffChecker.cjs +1 -1
- package/dist/cjs/utils/Filter.cjs +1 -1
- package/dist/cjs/utils/HashTable.cjs +6 -6
- package/dist/cjs/utils/HashTable.cjs.map +1 -1
- package/dist/cjs/utils/Normalizer.cjs +1 -1
- package/dist/cjs/utils/Pool.cjs +13 -4
- package/dist/cjs/utils/Pool.cjs.map +1 -1
- package/dist/cjs/utils/Profiler.cjs +1 -1
- package/dist/cjs/utils/Registry.cjs +1 -1
- package/dist/cjs/utils/StructuredData.cjs +157 -0
- package/dist/cjs/utils/StructuredData.cjs.map +1 -0
- package/dist/cjs/utils/TextAnalyzer.cjs +1 -1
- package/dist/esm/CmpStr.mjs +41 -1
- package/dist/esm/CmpStr.mjs.map +1 -1
- package/dist/esm/CmpStrAsync.mjs +38 -1
- package/dist/esm/CmpStrAsync.mjs.map +1 -1
- package/dist/esm/index.mjs +1 -1
- package/dist/esm/metric/Cosine.mjs +1 -1
- package/dist/esm/metric/DamerauLevenshtein.mjs +1 -1
- package/dist/esm/metric/DiceSorensen.mjs +1 -1
- package/dist/esm/metric/Hamming.mjs +1 -1
- package/dist/esm/metric/Jaccard.mjs +1 -1
- package/dist/esm/metric/JaroWinkler.mjs +1 -1
- package/dist/esm/metric/LCS.mjs +1 -1
- package/dist/esm/metric/Levenshtein.mjs +1 -1
- package/dist/esm/metric/Metric.mjs +1 -1
- package/dist/esm/metric/NeedlemanWunsch.mjs +1 -1
- package/dist/esm/metric/SmithWaterman.mjs +1 -1
- package/dist/esm/metric/qGram.mjs +1 -1
- package/dist/esm/phonetic/Caverphone.mjs +1 -1
- package/dist/esm/phonetic/Cologne.mjs +1 -1
- package/dist/esm/phonetic/Metaphone.mjs +1 -1
- package/dist/esm/phonetic/Phonetic.mjs +1 -1
- package/dist/esm/phonetic/Soundex.mjs +1 -1
- package/dist/esm/root.mjs +7 -1
- package/dist/esm/root.mjs.map +1 -1
- package/dist/esm/utils/DeepMerge.mjs +1 -1
- package/dist/esm/utils/DiffChecker.mjs +1 -1
- package/dist/esm/utils/Filter.mjs +1 -1
- package/dist/esm/utils/HashTable.mjs +6 -6
- package/dist/esm/utils/HashTable.mjs.map +1 -1
- package/dist/esm/utils/Normalizer.mjs +1 -1
- package/dist/esm/utils/Pool.mjs +13 -4
- package/dist/esm/utils/Pool.mjs.map +1 -1
- package/dist/esm/utils/Profiler.mjs +1 -1
- package/dist/esm/utils/Registry.mjs +1 -1
- package/dist/esm/utils/StructuredData.mjs +155 -0
- package/dist/esm/utils/StructuredData.mjs.map +1 -0
- package/dist/esm/utils/TextAnalyzer.mjs +1 -1
- package/dist/types/CmpStr.d.ts +90 -8
- package/dist/types/CmpStrAsync.d.ts +82 -8
- package/dist/types/index.d.ts +3 -2
- package/dist/types/root.d.ts +3 -2
- package/dist/types/utils/Pool.d.ts +2 -2
- package/dist/types/utils/StructuredData.d.ts +164 -0
- package/dist/types/utils/Types.d.ts +43 -1
- package/package.json +53 -17
package/dist/esm/index.mjs
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
// CmpStr v3.
|
|
1
|
+
// CmpStr v3.1.1 build-a140f52-260119 by Paul Köhler @komed3 / MIT License
|
|
2
2
|
export { CmpStr } from './CmpStr.mjs';
|
|
3
3
|
export { CmpStrAsync } from './CmpStrAsync.mjs';
|
|
4
4
|
export { DiffChecker } from './utils/DiffChecker.mjs';
|
package/dist/esm/metric/LCS.mjs
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
// CmpStr v3.
|
|
1
|
+
// CmpStr v3.1.1 build-a140f52-260119 by Paul Köhler @komed3 / MIT License
|
|
2
2
|
import { Registry } from '../utils/Registry.mjs';
|
|
3
3
|
import { HashTable } from '../utils/HashTable.mjs';
|
|
4
4
|
import { Profiler } from '../utils/Profiler.mjs';
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
// CmpStr v3.
|
|
1
|
+
// CmpStr v3.1.1 build-a140f52-260119 by Paul Köhler @komed3 / MIT License
|
|
2
2
|
import { merge } from '../utils/DeepMerge.mjs';
|
|
3
3
|
import { Registry } from '../utils/Registry.mjs';
|
|
4
4
|
import { HashTable } from '../utils/HashTable.mjs';
|
package/dist/esm/root.mjs
CHANGED
|
@@ -1,4 +1,9 @@
|
|
|
1
|
-
// CmpStr v3.
|
|
1
|
+
// CmpStr v3.1.1 build-a140f52-260119 by Paul Köhler @komed3 / MIT License
|
|
2
|
+
export { CmpStr } from './CmpStr.mjs';
|
|
3
|
+
export { CmpStrAsync } from './CmpStrAsync.mjs';
|
|
4
|
+
export { DiffChecker } from './utils/DiffChecker.mjs';
|
|
5
|
+
export { Normalizer } from './utils/Normalizer.mjs';
|
|
6
|
+
export { TextAnalyzer } from './utils/TextAnalyzer.mjs';
|
|
2
7
|
import './metric/Cosine.mjs';
|
|
3
8
|
import './metric/DamerauLevenshtein.mjs';
|
|
4
9
|
import './metric/DiceSorensen.mjs';
|
|
@@ -26,4 +31,5 @@ export { Filter } from './utils/Filter.mjs';
|
|
|
26
31
|
export { HashTable } from './utils/HashTable.mjs';
|
|
27
32
|
export { Pool } from './utils/Pool.mjs';
|
|
28
33
|
export { Profiler } from './utils/Profiler.mjs';
|
|
34
|
+
export { StructuredData } from './utils/StructuredData.mjs';
|
|
29
35
|
//# sourceMappingURL=root.mjs.map
|
package/dist/esm/root.mjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"root.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"root.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
// CmpStr v3.
|
|
1
|
+
// CmpStr v3.1.1 build-a140f52-260119 by Paul Köhler @komed3 / MIT License
|
|
2
2
|
class Hasher {
|
|
3
3
|
static FNV_PRIME = 0x01000193;
|
|
4
4
|
static HASH_OFFSET = 0x811c9dc5;
|
|
@@ -8,11 +8,11 @@ class Hasher {
|
|
|
8
8
|
const chunks = Math.floor(len / 4);
|
|
9
9
|
for (let i = 0; i < chunks; i++) {
|
|
10
10
|
const pos = i * 4;
|
|
11
|
-
const
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
11
|
+
const c0 = str.charCodeAt(pos);
|
|
12
|
+
const c1 = str.charCodeAt(pos + 1);
|
|
13
|
+
const c2 = str.charCodeAt(pos + 2);
|
|
14
|
+
const c3 = str.charCodeAt(pos + 3);
|
|
15
|
+
const chunk = c0 | (c1 << 8) | (c2 << 16) | (c3 << 24);
|
|
16
16
|
hash ^= chunk;
|
|
17
17
|
hash *= this.FNV_PRIME;
|
|
18
18
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"HashTable.mjs","sources":["../../../src/utils/HashTable.ts"],"sourcesContent":[null],"names":[],"mappings":";AA0BA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAM,MAAM,CAAA;AAGA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAgB,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAS,CAAA,CAAA,CAAW,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAU;AAC9C,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAgB,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAW,CAAA,CAAA,CAAW,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAU;EASjD,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAO,CAAA,CAAA,CAAA,CAAA,CAAK,CAAG,CAAA,CAAA,CAAW,CAAA,CAAA;AAE7B,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAM,CAAA,CAAA,CAAG,CAAA,CAAA,CAAW,CAAA,CAAA,CAAG,CAAC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAM;AAC9B,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAI,CAAA,CAAA,CAAA,CAAI,CAAA,CAAA,CAAW,CAAA,CAAA,CAAA,CAAI,CAAC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAW;IAGnC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAM,CAAA,CAAA,CAAA,CAAA,CAAA,CAAM,CAAA,CAAA,CAAW,CAAA,CAAA,CAAA,CAAI,CAAC,KAAK,CAAE,CAAA,CAAA,CAAG,CAAA,CAAA,CAAG,CAAC,CAAE;AAE5C,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAM,CAAA,CAAA,CAAA,CAAI,CAAC,CAAA,CAAA,CAAG,CAAC,CAAA,CAAE,CAAC,CAAA,CAAA,CAAG,CAAA,CAAA,CAAA,CAAA,CAAA,CAAM,CAAA,CAAE,CAAC,CAAA,CAAE,CAAA,CAAG;AAE/B,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAM,CAAA,CAAA,CAAG,CAAA,CAAA,CAAG,CAAC,GAAG,CAAC;MAGjB,CAAA,CAAA,CAAA,CAAA,CAAA,CAAM,
|
|
1
|
+
{"version":3,"file":"HashTable.mjs","sources":["../../../src/utils/HashTable.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}
|
package/dist/esm/utils/Pool.mjs
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
// CmpStr v3.
|
|
1
|
+
// CmpStr v3.1.1 build-a140f52-260119 by Paul Köhler @komed3 / MIT License
|
|
2
2
|
class RingPool {
|
|
3
3
|
maxSize;
|
|
4
4
|
buffers = [];
|
|
@@ -35,7 +35,7 @@ class Pool {
|
|
|
35
35
|
static CONFIG = {
|
|
36
36
|
uint16: {
|
|
37
37
|
type: 'uint16',
|
|
38
|
-
maxSize:
|
|
38
|
+
maxSize: 64,
|
|
39
39
|
maxItemSize: 2048,
|
|
40
40
|
allowOversize: true
|
|
41
41
|
},
|
|
@@ -45,12 +45,19 @@ class Pool {
|
|
|
45
45
|
maxItemSize: 1024,
|
|
46
46
|
allowOversize: false
|
|
47
47
|
},
|
|
48
|
+
'string[]': {
|
|
49
|
+
type: 'string[]',
|
|
50
|
+
maxSize: 2,
|
|
51
|
+
maxItemSize: 1024,
|
|
52
|
+
allowOversize: false
|
|
53
|
+
},
|
|
48
54
|
set: { type: 'set', maxSize: 8, maxItemSize: 0, allowOversize: false },
|
|
49
55
|
map: { type: 'map', maxSize: 8, maxItemSize: 0, allowOversize: false }
|
|
50
56
|
};
|
|
51
57
|
static POOLS = {
|
|
52
|
-
uint16: new RingPool(
|
|
58
|
+
uint16: new RingPool(64),
|
|
53
59
|
'number[]': new RingPool(16),
|
|
60
|
+
'string[]': new RingPool(2),
|
|
54
61
|
set: new RingPool(8),
|
|
55
62
|
map: new RingPool(8)
|
|
56
63
|
};
|
|
@@ -59,7 +66,9 @@ class Pool {
|
|
|
59
66
|
case 'uint16':
|
|
60
67
|
return new Uint16Array(size);
|
|
61
68
|
case 'number[]':
|
|
62
|
-
return new
|
|
69
|
+
return new Float64Array(size);
|
|
70
|
+
case 'string[]':
|
|
71
|
+
return new Array(size);
|
|
63
72
|
case 'set':
|
|
64
73
|
return new Set();
|
|
65
74
|
case 'map':
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Pool.mjs","sources":["../../../src/utils/Pool.ts"],"sourcesContent":[null],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"Pool.mjs","sources":["../../../src/utils/Pool.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,155 @@
|
|
|
1
|
+
// CmpStr v3.1.1 build-a140f52-260119 by Paul Köhler @komed3 / MIT License
|
|
2
|
+
import { Pool } from './Pool.mjs';
|
|
3
|
+
|
|
4
|
+
class StructuredData {
|
|
5
|
+
static create(data, key) {
|
|
6
|
+
return new StructuredData(data, key);
|
|
7
|
+
}
|
|
8
|
+
data;
|
|
9
|
+
key;
|
|
10
|
+
constructor(data, key) {
|
|
11
|
+
this.data = data;
|
|
12
|
+
this.key = key;
|
|
13
|
+
}
|
|
14
|
+
extractFrom(arr, key) {
|
|
15
|
+
const result = Pool.acquire('string[]', arr.length);
|
|
16
|
+
for (let i = 0; i < arr.length; i++) {
|
|
17
|
+
const val = arr[i][key];
|
|
18
|
+
result[i] = typeof val === 'string' ? val : String(val ?? '');
|
|
19
|
+
}
|
|
20
|
+
return result;
|
|
21
|
+
}
|
|
22
|
+
extract() {
|
|
23
|
+
return this.extractFrom(this.data, this.key);
|
|
24
|
+
}
|
|
25
|
+
isMetricResult(v) {
|
|
26
|
+
return (
|
|
27
|
+
typeof v === 'object' && v !== null && 'a' in v && 'b' in v && 'res' in v
|
|
28
|
+
);
|
|
29
|
+
}
|
|
30
|
+
isCmpStrResult(v) {
|
|
31
|
+
return (
|
|
32
|
+
typeof v === 'object' &&
|
|
33
|
+
v !== null &&
|
|
34
|
+
'source' in v &&
|
|
35
|
+
'target' in v &&
|
|
36
|
+
'match' in v
|
|
37
|
+
);
|
|
38
|
+
}
|
|
39
|
+
normalizeResults(results) {
|
|
40
|
+
if (!Array.isArray(results) || results.length === 0) return [];
|
|
41
|
+
const first = results[0];
|
|
42
|
+
let normalized = [];
|
|
43
|
+
if (this.isMetricResult(first)) normalized = results;
|
|
44
|
+
else if (this.isCmpStrResult(first)) {
|
|
45
|
+
normalized = results.map((r) => ({
|
|
46
|
+
metric: 'unknown',
|
|
47
|
+
a: r.source,
|
|
48
|
+
b: r.target,
|
|
49
|
+
res: r.match,
|
|
50
|
+
raw: r.raw
|
|
51
|
+
}));
|
|
52
|
+
}
|
|
53
|
+
return normalized.map((r, idx) => ({ ...r, __idx: idx }));
|
|
54
|
+
}
|
|
55
|
+
rebuild(results, sourceData, extractedStrings, removeZero, objectsOnly) {
|
|
56
|
+
const stringToIndices = new Map();
|
|
57
|
+
for (let i = 0; i < extractedStrings.length; i++) {
|
|
58
|
+
const str = extractedStrings[i];
|
|
59
|
+
if (!stringToIndices.has(str)) stringToIndices.set(str, []);
|
|
60
|
+
stringToIndices.get(str).push(i);
|
|
61
|
+
}
|
|
62
|
+
const output = new Array(results.length);
|
|
63
|
+
const occurrenceCount = new Map();
|
|
64
|
+
let out = 0;
|
|
65
|
+
for (let i = 0; i < results.length; i++) {
|
|
66
|
+
const result = results[i];
|
|
67
|
+
if (removeZero && result.res === 0) continue;
|
|
68
|
+
const targetStr = result.b || '';
|
|
69
|
+
const indices = stringToIndices.get(targetStr);
|
|
70
|
+
let dataIndex;
|
|
71
|
+
if (indices && indices.length > 0) {
|
|
72
|
+
const occurrence = occurrenceCount.get(targetStr) ?? 0;
|
|
73
|
+
occurrenceCount.set(targetStr, occurrence + 1);
|
|
74
|
+
dataIndex = indices[occurrence % indices.length];
|
|
75
|
+
} else {
|
|
76
|
+
dataIndex = result.__idx ?? i;
|
|
77
|
+
}
|
|
78
|
+
if (dataIndex < 0 || dataIndex >= sourceData.length) continue;
|
|
79
|
+
const sourceObj = sourceData[dataIndex];
|
|
80
|
+
const mappedTarget = extractedStrings[dataIndex] || targetStr;
|
|
81
|
+
if (objectsOnly) output[out++] = sourceObj;
|
|
82
|
+
else
|
|
83
|
+
output[out++] = {
|
|
84
|
+
obj: sourceObj,
|
|
85
|
+
key: this.key,
|
|
86
|
+
result: { source: result.a, target: mappedTarget, match: result.res },
|
|
87
|
+
...(result.raw ? { raw: result.raw } : null)
|
|
88
|
+
};
|
|
89
|
+
}
|
|
90
|
+
output.length = out;
|
|
91
|
+
return output;
|
|
92
|
+
}
|
|
93
|
+
sort(results, sort) {
|
|
94
|
+
if (!sort || results.length <= 1) return results;
|
|
95
|
+
const asc = sort === 'asc';
|
|
96
|
+
return results.sort((a, b) => (asc ? a.res - b.res : b.res - a.res));
|
|
97
|
+
}
|
|
98
|
+
performLookup(fn, extractedStrings, opt) {
|
|
99
|
+
return this.rebuild(
|
|
100
|
+
this.sort(this.normalizeResults(fn()), opt?.sort),
|
|
101
|
+
this.data,
|
|
102
|
+
extractedStrings,
|
|
103
|
+
opt?.removeZero,
|
|
104
|
+
opt?.objectsOnly
|
|
105
|
+
);
|
|
106
|
+
}
|
|
107
|
+
async performLookupAsync(fn, extractedStrings, opt) {
|
|
108
|
+
return this.rebuild(
|
|
109
|
+
this.sort(this.normalizeResults(await fn()), opt?.sort),
|
|
110
|
+
this.data,
|
|
111
|
+
extractedStrings,
|
|
112
|
+
opt?.removeZero,
|
|
113
|
+
opt?.objectsOnly
|
|
114
|
+
);
|
|
115
|
+
}
|
|
116
|
+
lookup(fn, query, opt) {
|
|
117
|
+
const b = this.extract();
|
|
118
|
+
try {
|
|
119
|
+
return this.performLookup(() => fn(query, b, opt), b, opt);
|
|
120
|
+
} finally {
|
|
121
|
+
Pool.release('string[]', b, b.length);
|
|
122
|
+
}
|
|
123
|
+
}
|
|
124
|
+
lookupPairs(fn, other, otherKey, opt) {
|
|
125
|
+
const a = this.extract();
|
|
126
|
+
const b = this.extractFrom(other, otherKey);
|
|
127
|
+
try {
|
|
128
|
+
return this.performLookup(() => fn(a, b, opt), a, opt);
|
|
129
|
+
} finally {
|
|
130
|
+
Pool.release('string[]', a, a.length);
|
|
131
|
+
Pool.release('string[]', b, b.length);
|
|
132
|
+
}
|
|
133
|
+
}
|
|
134
|
+
async lookupAsync(fn, query, opt) {
|
|
135
|
+
const b = this.extract();
|
|
136
|
+
try {
|
|
137
|
+
return await this.performLookupAsync(() => fn(query, b, opt), b, opt);
|
|
138
|
+
} finally {
|
|
139
|
+
Pool.release('string[]', b, b.length);
|
|
140
|
+
}
|
|
141
|
+
}
|
|
142
|
+
async lookupPairsAsync(fn, other, otherKey, opt) {
|
|
143
|
+
const a = this.extract();
|
|
144
|
+
const b = this.extractFrom(other, otherKey);
|
|
145
|
+
try {
|
|
146
|
+
return await this.performLookupAsync(() => fn(a, b, opt), a, opt);
|
|
147
|
+
} finally {
|
|
148
|
+
Pool.release('string[]', a, a.length);
|
|
149
|
+
Pool.release('string[]', b, b.length);
|
|
150
|
+
}
|
|
151
|
+
}
|
|
152
|
+
}
|
|
153
|
+
|
|
154
|
+
export { StructuredData };
|
|
155
|
+
//# sourceMappingURL=StructuredData.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"StructuredData.mjs","sources":["../../../src/utils/StructuredData.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}
|