@hestia-earth/utils 0.10.28 → 0.10.30
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/number.d.ts +1 -0
- package/dist/number.js +23 -1
- package/dist/validate-terms.js +82 -49
- package/package.json +2 -2
package/dist/number.d.ts
CHANGED
package/dist/number.js
CHANGED
|
@@ -1,7 +1,23 @@
|
|
|
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
|
+
};
|
|
2
18
|
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t, _u, _v, _w, _x, _y, _z;
|
|
3
19
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
|
-
exports.convertValue = exports.converters = exports.ConvertUnits = exports.toPrecision = exports.isNumber = void 0;
|
|
20
|
+
exports.convertValue = exports.converters = exports.ConvertUnits = exports.toComma = exports.toPrecision = exports.isNumber = void 0;
|
|
5
21
|
var isNumber = function (n) {
|
|
6
22
|
var _a;
|
|
7
23
|
return [
|
|
@@ -18,6 +34,12 @@ var toPrecision = function (n, precision) {
|
|
|
18
34
|
return n === 0 ? 0 : Math.round(n * multiplier) / multiplier;
|
|
19
35
|
};
|
|
20
36
|
exports.toPrecision = toPrecision;
|
|
37
|
+
var toComma = function (n) {
|
|
38
|
+
var _a = __read(n.toString().split('.'), 2), numberPart = _a[0], decimalPart = _a[1];
|
|
39
|
+
var thousands = /\B(?=(\d{3})+(?!\d))/g;
|
|
40
|
+
return "" + numberPart.replace(thousands, ',') + (decimalPart ? "." + decimalPart : '');
|
|
41
|
+
};
|
|
42
|
+
exports.toComma = toComma;
|
|
21
43
|
var C = 12.012;
|
|
22
44
|
var CA = 40.078;
|
|
23
45
|
var H = 1.008;
|
package/dist/validate-terms.js
CHANGED
|
@@ -51,6 +51,11 @@ var __read = (this && this.__read) || function (o, n) {
|
|
|
51
51
|
}
|
|
52
52
|
return ar;
|
|
53
53
|
};
|
|
54
|
+
var __spreadArray = (this && this.__spreadArray) || function (to, from) {
|
|
55
|
+
for (var i = 0, il = from.length, j = to.length; i < il; i++, j++)
|
|
56
|
+
to[j] = from[i];
|
|
57
|
+
return to;
|
|
58
|
+
};
|
|
54
59
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
55
60
|
exports.run = exports.validateTerms = void 0;
|
|
56
61
|
var fs_1 = require("fs");
|
|
@@ -119,30 +124,59 @@ var getAllTerms = function (data) {
|
|
|
119
124
|
})
|
|
120
125
|
.filter(function (term) { return (!!term) && (term['@type'] === 'Term') && (!!term['@id'] || !!term.name); });
|
|
121
126
|
};
|
|
122
|
-
var
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
127
|
+
var searchLimit = 500;
|
|
128
|
+
var searchTerms = function (terms) { return __awaiter(void 0, void 0, void 0, function () {
|
|
129
|
+
var searchedTerms, results, _a, _b, _c;
|
|
130
|
+
return __generator(this, function (_d) {
|
|
131
|
+
switch (_d.label) {
|
|
126
132
|
case 0:
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
must: [{
|
|
130
|
-
match: { '@type': 'Term' }
|
|
131
|
-
}],
|
|
132
|
-
should: terms.map(function (_a) {
|
|
133
|
-
var id = _a["@id"], name = _a.name;
|
|
134
|
-
return ({ match: id ? { '@id.keyword': id } : { 'name.keyword': name } });
|
|
135
|
-
}),
|
|
136
|
-
minimum_should_match: 1
|
|
137
|
-
}
|
|
138
|
-
};
|
|
133
|
+
searchedTerms = terms.slice(0, searchLimit);
|
|
134
|
+
if (!searchedTerms.length) return [3, 2];
|
|
139
135
|
return [4, search({
|
|
140
|
-
limit:
|
|
136
|
+
limit: searchLimit,
|
|
141
137
|
fields: ['@id', 'name'],
|
|
142
|
-
query:
|
|
138
|
+
query: {
|
|
139
|
+
bool: {
|
|
140
|
+
must: [{
|
|
141
|
+
match: { '@type': 'Term' }
|
|
142
|
+
}],
|
|
143
|
+
should: searchedTerms
|
|
144
|
+
.map(function (_a) {
|
|
145
|
+
var id = _a["@id"], name = _a.name;
|
|
146
|
+
return ({ match: id ? { '@id.keyword': id } : { 'name.keyword': name } });
|
|
147
|
+
}),
|
|
148
|
+
minimum_should_match: 1
|
|
149
|
+
}
|
|
150
|
+
}
|
|
143
151
|
})];
|
|
144
152
|
case 1:
|
|
145
|
-
|
|
153
|
+
_a = _d.sent();
|
|
154
|
+
return [3, 3];
|
|
155
|
+
case 2:
|
|
156
|
+
_a = { results: [] };
|
|
157
|
+
_d.label = 3;
|
|
158
|
+
case 3:
|
|
159
|
+
results = (_a).results;
|
|
160
|
+
_b = [__spreadArray([], __read(results))];
|
|
161
|
+
if (!(terms.length > searchLimit)) return [3, 5];
|
|
162
|
+
return [4, searchTerms(terms.slice(searchLimit))];
|
|
163
|
+
case 4:
|
|
164
|
+
_c = _d.sent();
|
|
165
|
+
return [3, 6];
|
|
166
|
+
case 5:
|
|
167
|
+
_c = [];
|
|
168
|
+
_d.label = 6;
|
|
169
|
+
case 6: return [2, __spreadArray.apply(void 0, _b.concat([__read.apply(void 0, [(_c)])]))];
|
|
170
|
+
}
|
|
171
|
+
});
|
|
172
|
+
}); };
|
|
173
|
+
var validateTerms = function (terms) { return __awaiter(void 0, void 0, void 0, function () {
|
|
174
|
+
var results;
|
|
175
|
+
return __generator(this, function (_a) {
|
|
176
|
+
switch (_a.label) {
|
|
177
|
+
case 0: return [4, searchTerms(terms)];
|
|
178
|
+
case 1:
|
|
179
|
+
results = _a.sent();
|
|
146
180
|
return [2, terms.map(function (_a) {
|
|
147
181
|
var id = _a["@id"], name = _a.name;
|
|
148
182
|
var exists = results.find(function (res) { return res['@id'] === id || res.name === name; });
|
|
@@ -152,43 +186,37 @@ var validateTerms = function (terms) { return __awaiter(void 0, void 0, void 0,
|
|
|
152
186
|
});
|
|
153
187
|
}); };
|
|
154
188
|
exports.validateTerms = validateTerms;
|
|
155
|
-
var validateFile = function (_a) {
|
|
156
|
-
var filepath = _a.filepath,
|
|
157
|
-
return
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
missing = _b.sent();
|
|
166
|
-
return [2, {
|
|
167
|
-
filepath: filepath,
|
|
168
|
-
missing: missing
|
|
169
|
-
}];
|
|
170
|
-
}
|
|
171
|
-
});
|
|
189
|
+
var validateFile = function (existingTerms) { return function (_a) {
|
|
190
|
+
var filepath = _a.filepath, terms = _a.terms;
|
|
191
|
+
return ({
|
|
192
|
+
filepath: filepath,
|
|
193
|
+
missing: terms.map(function (_a) {
|
|
194
|
+
var id = _a["@id"], name = _a.name;
|
|
195
|
+
return existingTerms.find(function (res) { return res['@id'] === id || res.name === name; })
|
|
196
|
+
? true
|
|
197
|
+
: id || name;
|
|
198
|
+
}).filter(function (val) { return val !== true; })
|
|
172
199
|
});
|
|
173
|
-
};
|
|
200
|
+
}; };
|
|
174
201
|
var loadFile = function (filepath) { return __awaiter(void 0, void 0, void 0, function () {
|
|
175
|
-
var _a, _b;
|
|
176
|
-
var
|
|
177
|
-
return __generator(this, function (
|
|
178
|
-
switch (
|
|
202
|
+
var _a, _b, _c;
|
|
203
|
+
var _d;
|
|
204
|
+
return __generator(this, function (_e) {
|
|
205
|
+
switch (_e.label) {
|
|
179
206
|
case 0:
|
|
180
|
-
|
|
207
|
+
_d = {
|
|
181
208
|
filepath: filepath
|
|
182
209
|
};
|
|
183
|
-
|
|
210
|
+
_a = getAllTerms;
|
|
211
|
+
_c = (_b = JSON).parse;
|
|
184
212
|
return [4, readFile(filepath, encoding)];
|
|
185
|
-
case 1: return [2, (
|
|
186
|
-
|
|
213
|
+
case 1: return [2, (_d.terms = _a.apply(void 0, [_c.apply(_b, [_e.sent()])]),
|
|
214
|
+
_d)];
|
|
187
215
|
}
|
|
188
216
|
});
|
|
189
217
|
}); };
|
|
190
218
|
var run = function () { return __awaiter(void 0, void 0, void 0, function () {
|
|
191
|
-
var filepaths,
|
|
219
|
+
var filepaths, fileData, allTerms, existingTerms, results, missingFiles;
|
|
192
220
|
return __generator(this, function (_a) {
|
|
193
221
|
switch (_a.label) {
|
|
194
222
|
case 0: return [4, recursiveFiles(folder)];
|
|
@@ -196,10 +224,15 @@ var run = function () { return __awaiter(void 0, void 0, void 0, function () {
|
|
|
196
224
|
filepaths = _a.sent();
|
|
197
225
|
return [4, Promise.all(filepaths.map(loadFile))];
|
|
198
226
|
case 2:
|
|
199
|
-
|
|
200
|
-
|
|
227
|
+
fileData = _a.sent();
|
|
228
|
+
allTerms = array_1.unique(fileData.flatMap(function (_a) {
|
|
229
|
+
var terms = _a.terms;
|
|
230
|
+
return terms;
|
|
231
|
+
}));
|
|
232
|
+
return [4, searchTerms(allTerms)];
|
|
201
233
|
case 3:
|
|
202
|
-
|
|
234
|
+
existingTerms = _a.sent();
|
|
235
|
+
results = fileData.map(validateFile(existingTerms)).filter(Boolean);
|
|
203
236
|
missingFiles = results.filter(function (_a) {
|
|
204
237
|
var missing = _a.missing;
|
|
205
238
|
return missing.length;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@hestia-earth/utils",
|
|
3
|
-
"version": "0.10.
|
|
3
|
+
"version": "0.10.30",
|
|
4
4
|
"description": "Hestia Utils library",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"typings": "dist/index.d.ts",
|
|
@@ -53,4 +53,4 @@
|
|
|
53
53
|
"peerDependencies": {
|
|
54
54
|
"@hestia-earth/glossary": ">=0.8.0"
|
|
55
55
|
}
|
|
56
|
-
}
|
|
56
|
+
}
|