@datagrok-libraries/utils 1.19.2 → 1.19.4
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/.eslintrc.json +4 -9
- package/package.json +1 -1
- package/src/color.d.ts +5 -0
- package/src/color.d.ts.map +1 -0
- package/src/color.js +13 -0
- package/src/similarity-metrics.d.ts +2 -1
- package/src/similarity-metrics.d.ts.map +1 -1
- package/src/similarity-metrics.js +7 -4
package/.eslintrc.json
CHANGED
|
@@ -25,6 +25,7 @@
|
|
|
25
25
|
],
|
|
26
26
|
"no-unused-vars": "warn",
|
|
27
27
|
"require-jsdoc": "off",
|
|
28
|
+
"valid-jsdoc": "warn",
|
|
28
29
|
"spaced-comment": "off",
|
|
29
30
|
"linebreak-style": "off",
|
|
30
31
|
"curly": [
|
|
@@ -39,19 +40,13 @@
|
|
|
39
40
|
"allowSingleLine": true
|
|
40
41
|
}
|
|
41
42
|
],
|
|
42
|
-
"block-spacing": [
|
|
43
|
-
|
|
44
|
-
"always"
|
|
45
|
-
],
|
|
46
|
-
"comma-dangle": [
|
|
47
|
-
"error",
|
|
48
|
-
{
|
|
43
|
+
"block-spacing": [2, "always"],
|
|
44
|
+
"comma-dangle": ["error", {
|
|
49
45
|
"arrays": "only-multiline",
|
|
50
46
|
"functions": "never",
|
|
51
47
|
"objects": "only-multiline",
|
|
52
48
|
"imports": "only-multiline"
|
|
53
|
-
}
|
|
54
|
-
],
|
|
49
|
+
}],
|
|
55
50
|
"guard-for-in": "off",
|
|
56
51
|
"prefer-spread": "warn"
|
|
57
52
|
}
|
package/package.json
CHANGED
package/src/color.d.ts
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"color.d.ts","sourceRoot":"","sources":["color.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,MAAM,iBAAiB,CAAC;AAEtC,mCAAmC;AACnC,wBAAgB,QAAQ,CAAC,KAAK,EAAE,EAAE,CAAC,SAAS,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,CAMnE;AAED,wBAAgB,MAAM,CAAC,KAAK,EAAE,EAAE,CAAC,SAAS,GAAG,MAAM,CAElD"}
|
package/src/color.js
ADDED
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import * as DG from 'datagrok-api/dg';
|
|
2
|
+
/** Set alpha over {@link color} */
|
|
3
|
+
export function setAlpha(color, alpha) {
|
|
4
|
+
return 0 |
|
|
5
|
+
Math.round(DG.Color.a(color) * alpha) << 24 |
|
|
6
|
+
DG.Color.r(color) << 16 |
|
|
7
|
+
DG.Color.g(color) << 8 |
|
|
8
|
+
DG.Color.b(color);
|
|
9
|
+
}
|
|
10
|
+
export function toRgba(color) {
|
|
11
|
+
return `rgba(${DG.Color.r(color)}, ${DG.Color.g(color)}, ${DG.Color.b(color)}, ${DG.Color.a(color) / 255})`;
|
|
12
|
+
}
|
|
13
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29sb3IuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJjb2xvci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSxPQUFPLEtBQUssRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBRXRDLG1DQUFtQztBQUNuQyxNQUFNLFVBQVUsUUFBUSxDQUFDLEtBQW1CLEVBQUUsS0FBYTtJQUN6RCxPQUFPLENBQUM7UUFDTixJQUFJLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxHQUFHLEtBQUssQ0FBQyxJQUFJLEVBQUU7UUFDM0MsRUFBRSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLElBQUksRUFBRTtRQUN2QixFQUFFLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDO1FBQ3RCLEVBQUUsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDO0FBQ3RCLENBQUM7QUFFRCxNQUFNLFVBQVUsTUFBTSxDQUFDLEtBQW1CO0lBQ3hDLE9BQU8sUUFBUSxFQUFFLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsS0FBSyxFQUFFLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsS0FBSyxFQUFFLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsS0FBSyxFQUFFLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsR0FBRyxHQUFHLEdBQUcsQ0FBQztBQUM5RyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0ICogYXMgZ3JvayBmcm9tICdkYXRhZ3Jvay1hcGkvZ3Jvayc7XG5pbXBvcnQgKiBhcyB1aSBmcm9tICdkYXRhZ3Jvay1hcGkvdWknO1xuaW1wb3J0ICogYXMgREcgZnJvbSAnZGF0YWdyb2stYXBpL2RnJztcblxuLyoqIFNldCBhbHBoYSBvdmVyIHtAbGluayBjb2xvcn0gKi9cbmV4cG9ydCBmdW5jdGlvbiBzZXRBbHBoYShjb2xvcjogREcuQ29sb3JUeXBlLCBhbHBoYTogbnVtYmVyKTogbnVtYmVyIHtcbiAgcmV0dXJuIDAgfFxuICAgIE1hdGgucm91bmQoREcuQ29sb3IuYShjb2xvcikgKiBhbHBoYSkgPDwgMjQgfFxuICAgIERHLkNvbG9yLnIoY29sb3IpIDw8IDE2IHxcbiAgICBERy5Db2xvci5nKGNvbG9yKSA8PCA4IHxcbiAgICBERy5Db2xvci5iKGNvbG9yKTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHRvUmdiYShjb2xvcjogREcuQ29sb3JUeXBlKTogc3RyaW5nIHtcbiAgcmV0dXJuIGByZ2JhKCR7REcuQ29sb3Iucihjb2xvcil9LCAke0RHLkNvbG9yLmcoY29sb3IpfSwgJHtERy5Db2xvci5iKGNvbG9yKX0sICR7REcuQ29sb3IuYShjb2xvcikgLyAyNTV9KWA7XG59XG4iXX0=
|
|
@@ -1,2 +1,3 @@
|
|
|
1
|
-
|
|
1
|
+
import BitArray from './bit-array';
|
|
2
|
+
export declare function getDiverseSubset(fingerprints: BitArray[], length: number, n: number, dist: (i1: number, i2: number) => number): number[];
|
|
2
3
|
//# sourceMappingURL=similarity-metrics.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"similarity-metrics.d.ts","sourceRoot":"","sources":["similarity-metrics.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"similarity-metrics.d.ts","sourceRoot":"","sources":["similarity-metrics.ts"],"names":[],"mappings":"AAAA,OAAO,QAAQ,MAAM,aAAa,CAAC;AAGnC,wBAAgB,gBAAgB,CAAC,YAAY,EAAE,QAAQ,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,KAAK,MAAM,YAuC7H"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { randomInt } from './random';
|
|
2
|
-
export function getDiverseSubset(length, n, dist) {
|
|
2
|
+
export function getDiverseSubset(fingerprints, length, n, dist) {
|
|
3
3
|
function maxBy(values, orderBy) {
|
|
4
4
|
let maxValue = null;
|
|
5
5
|
let maxOrderBy = null;
|
|
@@ -12,10 +12,13 @@ export function getDiverseSubset(length, n, dist) {
|
|
|
12
12
|
}
|
|
13
13
|
return maxValue;
|
|
14
14
|
}
|
|
15
|
-
|
|
15
|
+
let randomIdx = randomInt(length - 1);
|
|
16
|
+
while (fingerprints[randomIdx].allFalse)
|
|
17
|
+
randomIdx = randomInt(length - 1);
|
|
18
|
+
const subset = [randomIdx];
|
|
16
19
|
const complement = new Set();
|
|
17
20
|
for (let i = 0; i < length; ++i) {
|
|
18
|
-
if (!subset.includes(i))
|
|
21
|
+
if (!subset.includes(i) && !fingerprints[i].allFalse)
|
|
19
22
|
complement.add(i);
|
|
20
23
|
}
|
|
21
24
|
while (subset.length < n) {
|
|
@@ -29,4 +32,4 @@ export function getDiverseSubset(length, n, dist) {
|
|
|
29
32
|
}
|
|
30
33
|
return subset;
|
|
31
34
|
}
|
|
32
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
35
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2ltaWxhcml0eS1tZXRyaWNzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsic2ltaWxhcml0eS1tZXRyaWNzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBQyxTQUFTLEVBQUMsTUFBTSxVQUFVLENBQUM7QUFFbkMsTUFBTSxVQUFVLGdCQUFnQixDQUFDLFlBQXdCLEVBQUUsTUFBYyxFQUFFLENBQVMsRUFBRSxJQUF3QztJQUM1SCxTQUFTLEtBQUssQ0FBQyxNQUFnQyxFQUFFLE9BQThCO1FBQzdFLElBQUksUUFBUSxHQUFHLElBQUksQ0FBQztRQUNwQixJQUFJLFVBQVUsR0FBRyxJQUFJLENBQUM7UUFFdEIsS0FBSyxNQUFNLE9BQU8sSUFBSSxNQUFNLEVBQUU7WUFDNUIsTUFBTSxjQUFjLEdBQUcsT0FBTyxDQUFDLE9BQU8sQ0FBQyxDQUFDO1lBQ3hDLElBQUksVUFBVSxJQUFJLElBQUksSUFBSSxjQUFjLEdBQUcsVUFBVSxFQUFFO2dCQUNyRCxRQUFRLEdBQUcsT0FBTyxDQUFDO2dCQUNuQixVQUFVLEdBQUcsY0FBYyxDQUFDO2FBQzdCO1NBQ0Y7UUFDRCxPQUFPLFFBQVEsQ0FBQztJQUNsQixDQUFDO0lBRUQsSUFBSSxTQUFTLEdBQUcsU0FBUyxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUMsQ0FBQztJQUN0QyxPQUFPLFlBQVksQ0FBQyxTQUFTLENBQUMsQ0FBQyxRQUFRO1FBQ3JDLFNBQVMsR0FBRyxTQUFTLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQyxDQUFDO0lBRXBDLE1BQU0sTUFBTSxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUM7SUFDM0IsTUFBTSxVQUFVLEdBQUcsSUFBSSxHQUFHLEVBQUUsQ0FBQztJQUU3QixLQUFLLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEdBQUcsTUFBTSxFQUFFLEVBQUUsQ0FBQyxFQUFFO1FBQy9CLElBQUksQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLENBQUMsQ0FBQyxDQUFDLFFBQVE7WUFDbEQsVUFBVSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQztLQUNyQjtJQUVELE9BQU8sTUFBTSxDQUFDLE1BQU0sR0FBRyxDQUFDLEVBQUU7UUFDeEIsTUFBTSxHQUFHLEdBQUcsS0FBSyxDQUNmLFVBQVUsQ0FBQyxNQUFNLEVBQThCLEVBQy9DLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxJQUFJLEVBQUUsTUFBTSxDQUFDLEdBQUcsQ0FBQyxVQUFTLEdBQUcsRUFBRSxLQUFLO1lBQ3hELE9BQU8sSUFBSSxDQUFDLENBQUMsRUFBRSxHQUFHLENBQUMsQ0FBQztRQUN0QixDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDUCxJQUFJLEdBQUcsSUFBSSxJQUFJLEVBQUU7WUFDZixNQUFNLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO1lBQ2pCLFVBQVUsQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUM7U0FDeEI7S0FDRjtJQUNELE9BQU8sTUFBTSxDQUFDO0FBQ2hCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgQml0QXJyYXkgZnJvbSAnLi9iaXQtYXJyYXknO1xuaW1wb3J0IHtyYW5kb21JbnR9IGZyb20gJy4vcmFuZG9tJztcblxuZXhwb3J0IGZ1bmN0aW9uIGdldERpdmVyc2VTdWJzZXQoZmluZ2VycHJpbnRzOiBCaXRBcnJheVtdLCBsZW5ndGg6IG51bWJlciwgbjogbnVtYmVyLCBkaXN0OiAoaTE6IG51bWJlciwgaTI6IG51bWJlcikgPT4gbnVtYmVyKSB7XG4gIGZ1bmN0aW9uIG1heEJ5KHZhbHVlczogSXRlcmFibGVJdGVyYXRvcjxudW1iZXI+LCBvcmRlckJ5OiAoaTogbnVtYmVyKSA9PiBudW1iZXIpIHtcbiAgICBsZXQgbWF4VmFsdWUgPSBudWxsO1xuICAgIGxldCBtYXhPcmRlckJ5ID0gbnVsbDtcblxuICAgIGZvciAoY29uc3QgZWxlbWVudCBvZiB2YWx1ZXMpIHtcbiAgICAgIGNvbnN0IGVsZW1lbnRPcmRlckJ5ID0gb3JkZXJCeShlbGVtZW50KTtcbiAgICAgIGlmIChtYXhPcmRlckJ5ID09IG51bGwgfHwgZWxlbWVudE9yZGVyQnkgPiBtYXhPcmRlckJ5KSB7XG4gICAgICAgIG1heFZhbHVlID0gZWxlbWVudDtcbiAgICAgICAgbWF4T3JkZXJCeSA9IGVsZW1lbnRPcmRlckJ5O1xuICAgICAgfVxuICAgIH1cbiAgICByZXR1cm4gbWF4VmFsdWU7XG4gIH1cblxuICBsZXQgcmFuZG9tSWR4ID0gcmFuZG9tSW50KGxlbmd0aCAtIDEpO1xuICB3aGlsZSAoZmluZ2VycHJpbnRzW3JhbmRvbUlkeF0uYWxsRmFsc2UpXG4gICAgcmFuZG9tSWR4ID0gcmFuZG9tSW50KGxlbmd0aCAtIDEpO1xuICAgIFxuICBjb25zdCBzdWJzZXQgPSBbcmFuZG9tSWR4XTtcbiAgY29uc3QgY29tcGxlbWVudCA9IG5ldyBTZXQoKTtcblxuICBmb3IgKGxldCBpID0gMDsgaSA8IGxlbmd0aDsgKytpKSB7XG4gICAgaWYgKCFzdWJzZXQuaW5jbHVkZXMoaSkgJiYgIWZpbmdlcnByaW50c1tpXS5hbGxGYWxzZSlcbiAgICAgIGNvbXBsZW1lbnQuYWRkKGkpO1xuICB9XG5cbiAgd2hpbGUgKHN1YnNldC5sZW5ndGggPCBuKSB7XG4gICAgY29uc3QgaWR4ID0gbWF4QnkoXG4gICAgICBjb21wbGVtZW50LnZhbHVlcygpIGFzIEl0ZXJhYmxlSXRlcmF0b3I8bnVtYmVyPixcbiAgICAgIChpKSA9PiBNYXRoLm1pbi5hcHBseShNYXRoLCBzdWJzZXQubWFwKGZ1bmN0aW9uKHZhbCwgaW5kZXgpIHtcbiAgICAgICAgcmV0dXJuIGRpc3QoaSwgdmFsKTtcbiAgICAgIH0pKSk7XG4gICAgaWYgKGlkeCAhPSBudWxsKSB7XG4gICAgICBzdWJzZXQucHVzaChpZHgpO1xuICAgICAgY29tcGxlbWVudC5kZWxldGUoaWR4KTtcbiAgICB9XG4gIH1cbiAgcmV0dXJuIHN1YnNldDtcbn1cbiJdfQ==
|