@hestia-earth/pipeline-utils 0.15.2 → 0.15.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/find-nodes.js +11 -10
- package/dist/find-nodes.js.map +1 -1
- package/package.json +1 -1
- package/src/find-nodes.ts +30 -12
package/dist/find-nodes.js
CHANGED
|
@@ -7,10 +7,13 @@ const cache = require('memory-cache');
|
|
|
7
7
|
const schema_1 = require("@hestia-earth/schema");
|
|
8
8
|
const json_schema_1 = require("@hestia-earth/json-schema");
|
|
9
9
|
const utils_1 = require("@hestia-earth/utils");
|
|
10
|
+
const rxjs_1 = require("rxjs");
|
|
11
|
+
const operators_1 = require("rxjs/operators");
|
|
10
12
|
const log_1 = require("./log");
|
|
11
13
|
const es_1 = require("./es");
|
|
12
14
|
const api_1 = require("./api");
|
|
13
15
|
const utils_2 = require("./utils");
|
|
16
|
+
const maxParallelSearch = +(process.env.SEARCH_PARALLEL_COUNT || '100');
|
|
14
17
|
const searchNormalizedEnabled = process.env.SEARCH_NORMALIZED === 'true';
|
|
15
18
|
const cacheMaxSize = +(process.env.CACHE_MAX_SIZE || '0');
|
|
16
19
|
const cacheEnabled = () => !!process.env.CACHE_MAX_SIZE;
|
|
@@ -105,15 +108,13 @@ const findNodeById = async (type, id, keys) => {
|
|
|
105
108
|
return node ? pick(node, filteredKeys(keys)) : null;
|
|
106
109
|
};
|
|
107
110
|
exports.findNodeById = findNodeById;
|
|
108
|
-
const findChildNodes = (schemas, data) =>
|
|
109
|
-
.filter(([key, value]) => !ignoreChildKeys.includes(key) && (0, schema_1.isExpandable)(value))
|
|
110
|
-
.map((
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
return { [key]: res };
|
|
116
|
-
}));
|
|
111
|
+
const findChildNodes = (schemas, data) => (0, rxjs_1.from)(Object.entries(data))
|
|
112
|
+
.pipe((0, operators_1.filter)(([key, value]) => !ignoreChildKeys.includes(key) && (0, schema_1.isExpandable)(value)), (0, operators_1.map)(([key, value]) => ({ key, value: value, isArray: Array.isArray(value) })), (0, operators_1.mergeMap)(({ isArray, key, value }) => isArray
|
|
113
|
+
? (0, rxjs_1.from)(value).pipe((0, operators_1.map)((val, index) => ({ val, index })), (0, operators_1.mergeMap)(({ val, index }) => (0, schema_1.isExpandable)(val)
|
|
114
|
+
? (0, rxjs_1.from)((0, exports.findNodes)(schemas, val)).pipe((0, operators_1.map)(res => ({ val: res, index })))
|
|
115
|
+
: (0, rxjs_1.of)({ val, index }), maxParallelSearch), (0, operators_1.toArray)(), (0, operators_1.map)(res => ({ [key]: res.sort((a, b) => a.index - b.index).map(r => r.val) })))
|
|
116
|
+
: (0, rxjs_1.from)((0, exports.findNodes)(schemas, value)).pipe((0, operators_1.map)(res => ({ [key]: res }))), maxParallelSearch), (0, operators_1.reduce)((prev, value) => ({ ...prev, ...value }), {}))
|
|
117
|
+
.toPromise();
|
|
117
118
|
const findNodeField = (type, field) => searchNormalizedEnabled && [schema_1.SchemaType.Term].includes(type) && ['name'].includes(field)
|
|
118
119
|
? `${field}Normalized`
|
|
119
120
|
: `${field}.keyword`;
|
|
@@ -178,7 +179,7 @@ const findNodes = async (schemas, node, top = false, findChildren = true) => {
|
|
|
178
179
|
const values = findChildren ? await findChildNodes(schemas, data) : [];
|
|
179
180
|
const fullData = {
|
|
180
181
|
...data,
|
|
181
|
-
...values
|
|
182
|
+
...values,
|
|
182
183
|
...(type !== schema_1.SchemaType.Term && existingId
|
|
183
184
|
? {
|
|
184
185
|
'@type': type,
|
package/dist/find-nodes.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"find-nodes.js","sourceRoot":"","sources":["../src/find-nodes.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"find-nodes.js","sourceRoot":"","sources":["../src/find-nodes.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
package/src/find-nodes.ts
CHANGED
|
@@ -4,12 +4,15 @@ const cache = require('memory-cache');
|
|
|
4
4
|
import { SchemaType, JSON as HestiaJson, isExpandable, NodeType, isTypeValid, isTypeNode } from '@hestia-earth/schema';
|
|
5
5
|
import { definitions, uniqueProperties, extendableProperties } from '@hestia-earth/json-schema';
|
|
6
6
|
import { reduceUndefinedValues } from '@hestia-earth/utils';
|
|
7
|
+
import { from, of } from 'rxjs';
|
|
8
|
+
import { filter, map, mergeMap, reduce, toArray } from 'rxjs/operators';
|
|
7
9
|
|
|
8
10
|
import { debug, error } from './log';
|
|
9
11
|
import { client, indexName } from './es';
|
|
10
12
|
import { getNode, isEnabled as isApiEnabled } from './api';
|
|
11
13
|
import { byteSize, isEmpty } from './utils';
|
|
12
14
|
|
|
15
|
+
const maxParallelSearch = +(process.env.SEARCH_PARALLEL_COUNT || '100');
|
|
13
16
|
const searchNormalizedEnabled = process.env.SEARCH_NORMALIZED === 'true';
|
|
14
17
|
const cacheMaxSize = +(process.env.CACHE_MAX_SIZE || '0');
|
|
15
18
|
export const cacheEnabled = () => !!process.env.CACHE_MAX_SIZE;
|
|
@@ -156,17 +159,32 @@ export const findNodeById = async (type: NodeType | SchemaType, id: string, keys
|
|
|
156
159
|
};
|
|
157
160
|
|
|
158
161
|
const findChildNodes = (schemas: definitions, data: any) =>
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
162
|
+
from(Object.entries(data))
|
|
163
|
+
.pipe(
|
|
164
|
+
filter(([key, value]) => !ignoreChildKeys.includes(key) && isExpandable(value)),
|
|
165
|
+
map(([key, value]) => ({ key, value: value as any, isArray: Array.isArray(value) })),
|
|
166
|
+
mergeMap(
|
|
167
|
+
({ isArray, key, value }) =>
|
|
168
|
+
isArray
|
|
169
|
+
? from(value as any[]).pipe(
|
|
170
|
+
// use index to preserve order
|
|
171
|
+
map((val, index) => ({ val, index })),
|
|
172
|
+
mergeMap(
|
|
173
|
+
({ val, index }) =>
|
|
174
|
+
isExpandable(val)
|
|
175
|
+
? from(findNodes(schemas, val)).pipe(map(res => ({ val: res, index })))
|
|
176
|
+
: of({ val, index }),
|
|
177
|
+
maxParallelSearch
|
|
178
|
+
),
|
|
179
|
+
toArray(),
|
|
180
|
+
map(res => ({ [key]: res.sort((a, b) => a.index - b.index).map(r => r.val) }))
|
|
181
|
+
)
|
|
182
|
+
: from(findNodes(schemas, value)).pipe(map(res => ({ [key]: res }))),
|
|
183
|
+
maxParallelSearch
|
|
184
|
+
),
|
|
185
|
+
reduce((prev, value) => ({ ...prev, ...value }), {})
|
|
186
|
+
)
|
|
187
|
+
.toPromise();
|
|
170
188
|
|
|
171
189
|
const findNodeField = (type: SchemaType, field: string) =>
|
|
172
190
|
searchNormalizedEnabled && [SchemaType.Term].includes(type) && ['name'].includes(field)
|
|
@@ -264,7 +282,7 @@ export const findNodes = async (
|
|
|
264
282
|
const values = findChildren ? await findChildNodes(schemas, data) : [];
|
|
265
283
|
const fullData = {
|
|
266
284
|
...data,
|
|
267
|
-
...values
|
|
285
|
+
...values,
|
|
268
286
|
...// for anything but Term, keep original @type/@id or type/id
|
|
269
287
|
(type !== SchemaType.Term && existingId
|
|
270
288
|
? {
|