@dxos/util 0.8.2-main.f081794 → 0.8.2-main.fbd8ed0
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/lib/browser/index.mjs +43 -7
- package/dist/lib/browser/index.mjs.map +4 -4
- package/dist/lib/browser/meta.json +1 -1
- package/dist/lib/node/index.cjs +43 -7
- package/dist/lib/node/index.cjs.map +4 -4
- package/dist/lib/node/meta.json +1 -1
- package/dist/lib/node-esm/index.mjs +43 -7
- package/dist/lib/node-esm/index.mjs.map +4 -4
- package/dist/lib/node-esm/meta.json +1 -1
- package/dist/types/src/array-to-hex.d.ts.map +1 -1
- package/dist/types/src/array.d.ts +8 -0
- package/dist/types/src/array.d.ts.map +1 -1
- package/dist/types/src/binder.d.ts.map +1 -1
- package/dist/types/src/callback.d.ts.map +1 -1
- package/dist/types/src/case.d.ts.map +1 -1
- package/dist/types/src/chunk-array.d.ts.map +1 -1
- package/dist/types/src/clear-undefined.d.ts +5 -0
- package/dist/types/src/clear-undefined.d.ts.map +1 -0
- package/dist/types/src/complex.d.ts.map +1 -1
- package/dist/types/src/deep.d.ts.map +1 -1
- package/dist/types/src/defer-function.d.ts.map +1 -1
- package/dist/types/src/defer.d.ts.map +1 -1
- package/dist/types/src/di-key.d.ts +3 -3
- package/dist/types/src/di-key.d.ts.map +1 -1
- package/dist/types/src/entry.d.ts.map +1 -1
- package/dist/types/src/first-two-chars.d.ts.map +1 -1
- package/dist/types/src/for-each-async.d.ts.map +1 -1
- package/dist/types/src/human-hash.d.ts.map +1 -1
- package/dist/types/src/index.d.ts +1 -0
- package/dist/types/src/index.d.ts.map +1 -1
- package/dist/types/src/instance-id.d.ts.map +1 -1
- package/dist/types/src/interval.d.ts.map +1 -1
- package/dist/types/src/join-tables.d.ts.map +1 -1
- package/dist/types/src/json.d.ts.map +1 -1
- package/dist/types/src/map-values.d.ts.map +1 -1
- package/dist/types/src/map.d.ts.map +1 -1
- package/dist/types/src/order-keys.d.ts.map +1 -1
- package/dist/types/src/order.d.ts.map +1 -1
- package/dist/types/src/pick.d.ts.map +1 -1
- package/dist/types/src/position.d.ts +2 -3
- package/dist/types/src/position.d.ts.map +1 -1
- package/dist/types/src/random.d.ts.map +1 -1
- package/dist/types/src/range.d.ts.map +1 -1
- package/dist/types/src/reducers.d.ts.map +1 -1
- package/dist/types/src/remove-undefined-keys.d.ts.map +1 -1
- package/dist/types/src/safe-await.d.ts.map +1 -1
- package/dist/types/src/safe-instanceof.d.ts.map +1 -1
- package/dist/types/src/safe-parse.d.ts.map +1 -1
- package/dist/types/src/sort.d.ts.map +1 -1
- package/dist/types/src/string.d.ts.map +1 -1
- package/dist/types/src/sum.d.ts.map +1 -1
- package/dist/types/src/throw-unhandled-error.d.ts.map +1 -1
- package/dist/types/src/to-fallback.d.ts.map +1 -1
- package/dist/types/src/tree.d.ts.map +1 -1
- package/dist/types/src/types.d.ts.map +1 -1
- package/dist/types/src/uint8array.d.ts.map +1 -1
- package/dist/types/tsconfig.tsbuildinfo +1 -1
- package/package.json +6 -6
- package/src/array.ts +34 -0
- package/src/clear-undefined.ts +15 -0
- package/src/index.ts +1 -0
- package/src/position.ts +12 -11
|
@@ -60,6 +60,28 @@ var partition = (array, guard) => {
|
|
|
60
60
|
[]
|
|
61
61
|
]);
|
|
62
62
|
};
|
|
63
|
+
var intersectBy = (arrays, selector) => {
|
|
64
|
+
if (arrays.length === 0) {
|
|
65
|
+
return [];
|
|
66
|
+
}
|
|
67
|
+
if (arrays.length === 1) {
|
|
68
|
+
return [
|
|
69
|
+
...arrays[0]
|
|
70
|
+
];
|
|
71
|
+
}
|
|
72
|
+
const [first, ...rest] = arrays;
|
|
73
|
+
const lookups = rest.map((array) => {
|
|
74
|
+
const map = /* @__PURE__ */ new Map();
|
|
75
|
+
for (const item of array) {
|
|
76
|
+
map.set(selector(item), item);
|
|
77
|
+
}
|
|
78
|
+
return map;
|
|
79
|
+
});
|
|
80
|
+
return first.filter((item) => {
|
|
81
|
+
const key = selector(item);
|
|
82
|
+
return lookups.every((lookup) => lookup.has(key));
|
|
83
|
+
});
|
|
84
|
+
};
|
|
63
85
|
|
|
64
86
|
// packages/common/util/src/array-to-hex.ts
|
|
65
87
|
var byteToHex = [];
|
|
@@ -1358,17 +1380,16 @@ var getHostPlatform = () => {
|
|
|
1358
1380
|
};
|
|
1359
1381
|
|
|
1360
1382
|
// packages/common/util/src/position.ts
|
|
1361
|
-
var byPosition = (a, b) => {
|
|
1362
|
-
|
|
1363
|
-
const bPosition = b.position ?? "static";
|
|
1364
|
-
if (aPosition === bPosition) {
|
|
1383
|
+
var byPosition = ({ position: a = "static" }, { position: b = "static" }) => {
|
|
1384
|
+
if (a === b) {
|
|
1365
1385
|
return 0;
|
|
1366
|
-
} else if (
|
|
1386
|
+
} else if (a === "hoist" || b === "fallback") {
|
|
1367
1387
|
return -1;
|
|
1368
|
-
} else if (
|
|
1388
|
+
} else if (b === "hoist" || a === "fallback") {
|
|
1369
1389
|
return 1;
|
|
1390
|
+
} else {
|
|
1391
|
+
return 0;
|
|
1370
1392
|
}
|
|
1371
|
-
return 0;
|
|
1372
1393
|
};
|
|
1373
1394
|
|
|
1374
1395
|
// packages/common/util/src/random.ts
|
|
@@ -2057,6 +2078,19 @@ var removeUndefinedProperties = (object) => {
|
|
|
2057
2078
|
}
|
|
2058
2079
|
return object;
|
|
2059
2080
|
};
|
|
2081
|
+
|
|
2082
|
+
// packages/common/util/src/clear-undefined.ts
|
|
2083
|
+
var clearUndefined = (obj) => {
|
|
2084
|
+
for (const key of [
|
|
2085
|
+
...Object.getOwnPropertyNames(obj),
|
|
2086
|
+
...Object.getOwnPropertySymbols(obj)
|
|
2087
|
+
]) {
|
|
2088
|
+
if (obj[key] === void 0) {
|
|
2089
|
+
delete obj[key];
|
|
2090
|
+
}
|
|
2091
|
+
}
|
|
2092
|
+
return obj;
|
|
2093
|
+
};
|
|
2060
2094
|
export {
|
|
2061
2095
|
BitField,
|
|
2062
2096
|
Callback,
|
|
@@ -2080,6 +2114,7 @@ export {
|
|
|
2080
2114
|
capitalize,
|
|
2081
2115
|
chunkArray,
|
|
2082
2116
|
clamp,
|
|
2117
|
+
clearUndefined,
|
|
2083
2118
|
compareMulti,
|
|
2084
2119
|
compareObject,
|
|
2085
2120
|
compareScalar,
|
|
@@ -2118,6 +2153,7 @@ export {
|
|
|
2118
2153
|
idHue,
|
|
2119
2154
|
inferObjectOrder,
|
|
2120
2155
|
inferRecordOrder,
|
|
2156
|
+
intersectBy,
|
|
2121
2157
|
intersection,
|
|
2122
2158
|
iosCheck,
|
|
2123
2159
|
isNode,
|