@dxos/util 0.6.12-main.ed7cda7 → 0.6.12-staging.0b4bb48
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 +92 -92
- package/dist/lib/browser/index.mjs.map +4 -4
- package/dist/lib/browser/meta.json +1 -1
- package/dist/lib/node/index.cjs +83 -83
- package/dist/lib/node/index.cjs.map +4 -4
- package/dist/lib/node/meta.json +1 -1
- package/dist/types/src/complex.d.ts +8 -8
- package/dist/types/src/complex.d.ts.map +1 -1
- package/dist/types/src/index.d.ts +4 -4
- package/dist/types/src/index.d.ts.map +1 -1
- package/dist/types/src/params.d.ts.map +1 -1
- package/dist/types/src/platform.test.d.ts +2 -0
- package/dist/types/src/platform.test.d.ts.map +1 -0
- package/dist/types/src/weak.d.ts +4 -4
- package/dist/types/src/weak.d.ts.map +1 -1
- package/package.json +7 -8
- package/src/array.test.ts +2 -1
- package/src/bitfield.test.ts +2 -1
- package/src/callback.test.ts +2 -1
- package/src/complex.test.ts +2 -1
- package/src/complex.ts +8 -8
- package/src/defer.test.ts +2 -1
- package/src/human-hash.test.ts +2 -1
- package/src/index.ts +4 -4
- package/src/join-tables.test.ts +2 -1
- package/src/order.test.ts +2 -1
- package/src/params.test.ts +2 -1
- package/src/params.ts +0 -2
- package/src/platform.test.ts +17 -0
- package/src/reducers.test.ts +2 -1
- package/src/safe-instanceof.test.ts +2 -1
- package/src/sort.test.ts +2 -1
- package/src/tracer.test.ts +2 -1
- package/src/types.test.ts +2 -1
- package/src/typings.d.ts +5 -0
- package/src/uint8array.test.ts +2 -1
- package/src/weak.test.ts +8 -4
- package/src/weak.ts +4 -4
- package/dist/lib/node-esm/index.mjs +0 -1978
- package/dist/lib/node-esm/index.mjs.map +0 -7
- package/dist/lib/node-esm/meta.json +0 -1
- package/dist/types/src/platform.browser.test.d.ts +0 -2
- package/dist/types/src/platform.browser.test.d.ts.map +0 -1
- package/dist/types/src/platform.node.test.d.ts +0 -2
- package/dist/types/src/platform.node.test.d.ts.map +0 -1
- package/src/platform.browser.test.ts +0 -11
- package/src/platform.node.test.ts +0 -11
|
@@ -199,39 +199,6 @@ var createSetDispatch = ({ handlers }) => {
|
|
|
199
199
|
});
|
|
200
200
|
};
|
|
201
201
|
|
|
202
|
-
// packages/common/util/src/callback-collection.ts
|
|
203
|
-
var CallbackCollection = class {
|
|
204
|
-
#callbacks = [];
|
|
205
|
-
append(callback) {
|
|
206
|
-
this.#callbacks.push(callback);
|
|
207
|
-
}
|
|
208
|
-
prepend(callback) {
|
|
209
|
-
this.#callbacks.unshift(callback);
|
|
210
|
-
}
|
|
211
|
-
remove(callback) {
|
|
212
|
-
this.#callbacks = this.#callbacks.filter((c) => c !== callback);
|
|
213
|
-
}
|
|
214
|
-
callParallel(...args) {
|
|
215
|
-
return Promise.all(this.#callbacks.map((callback) => callback(...args)));
|
|
216
|
-
}
|
|
217
|
-
async callSerial(...args) {
|
|
218
|
-
const results = [];
|
|
219
|
-
for (const callback of this.#callbacks) {
|
|
220
|
-
results.push(await callback(...args));
|
|
221
|
-
}
|
|
222
|
-
return results;
|
|
223
|
-
}
|
|
224
|
-
};
|
|
225
|
-
|
|
226
|
-
// packages/common/util/src/chunk-array.ts
|
|
227
|
-
var chunkArray = (array, size) => {
|
|
228
|
-
const result = [];
|
|
229
|
-
for (let i = 0; i < array.length; i += size) {
|
|
230
|
-
result.push(array.slice(i, i + size));
|
|
231
|
-
}
|
|
232
|
-
return result;
|
|
233
|
-
};
|
|
234
|
-
|
|
235
202
|
// packages/common/util/src/circular-buffer.ts
|
|
236
203
|
import { invariant as invariant4 } from "@dxos/invariant";
|
|
237
204
|
var __dxlog_file4 = "/home/runner/work/dxos/dxos/packages/common/util/src/circular-buffer.ts";
|
|
@@ -1418,62 +1385,6 @@ var safeParseJson = (data, defaultValue) => {
|
|
|
1418
1385
|
return defaultValue;
|
|
1419
1386
|
};
|
|
1420
1387
|
|
|
1421
|
-
// packages/common/util/src/sliding-window-summary.ts
|
|
1422
|
-
import { invariant as invariant5 } from "@dxos/invariant";
|
|
1423
|
-
var __dxlog_file5 = "/home/runner/work/dxos/dxos/packages/common/util/src/sliding-window-summary.ts";
|
|
1424
|
-
var SlidingWindowSummary = class {
|
|
1425
|
-
constructor(options) {
|
|
1426
|
-
this._sum = 0;
|
|
1427
|
-
this._buffer = new CircularBuffer(options.dataPoints);
|
|
1428
|
-
if (options.precision != null) {
|
|
1429
|
-
invariant5(options.precision >= 0, void 0, {
|
|
1430
|
-
F: __dxlog_file5,
|
|
1431
|
-
L: 26,
|
|
1432
|
-
S: this,
|
|
1433
|
-
A: [
|
|
1434
|
-
"options.precision >= 0",
|
|
1435
|
-
""
|
|
1436
|
-
]
|
|
1437
|
-
});
|
|
1438
|
-
this._precision = Math.pow(10, options.precision);
|
|
1439
|
-
}
|
|
1440
|
-
}
|
|
1441
|
-
record(value) {
|
|
1442
|
-
const evicted = this._buffer.push(value);
|
|
1443
|
-
this._sum += value - (evicted ?? 0);
|
|
1444
|
-
}
|
|
1445
|
-
average() {
|
|
1446
|
-
return this._buffer.elementCount === 0 ? 0 : this._withPrecision(this._sum / this._buffer.elementCount);
|
|
1447
|
-
}
|
|
1448
|
-
computeWindowSummary() {
|
|
1449
|
-
const mean = this.average();
|
|
1450
|
-
const sortedElements = [
|
|
1451
|
-
...this._buffer
|
|
1452
|
-
].sort();
|
|
1453
|
-
const median2 = this._withPrecision(sortedElements.length % 2 === 0 ? (sortedElements[sortedElements.length / 2] + sortedElements[sortedElements.length / 2 - 1]) / 2 : sortedElements[sortedElements.length / 2]);
|
|
1454
|
-
const p90 = this._withPrecision(sortedElements[Math.round(sortedElements.length * 0.9)]);
|
|
1455
|
-
const variance = sortedElements.reduce((acc, v) => acc + Math.pow(v - mean, 2)) / sortedElements.length;
|
|
1456
|
-
const stdDev = this._withPrecision(Math.sqrt(variance));
|
|
1457
|
-
const histogram = sortedElements.reduce((acc, v) => {
|
|
1458
|
-
acc[v] += 1;
|
|
1459
|
-
return acc;
|
|
1460
|
-
}, {});
|
|
1461
|
-
return {
|
|
1462
|
-
mean,
|
|
1463
|
-
median: median2,
|
|
1464
|
-
p90,
|
|
1465
|
-
stdDev,
|
|
1466
|
-
histogram
|
|
1467
|
-
};
|
|
1468
|
-
}
|
|
1469
|
-
_withPrecision(value) {
|
|
1470
|
-
if (this._precision == null) {
|
|
1471
|
-
return value;
|
|
1472
|
-
}
|
|
1473
|
-
return Math.round(value * this._precision) / this._precision;
|
|
1474
|
-
}
|
|
1475
|
-
};
|
|
1476
|
-
|
|
1477
1388
|
// packages/common/util/src/sort.ts
|
|
1478
1389
|
var compareScalar = (inc = true) => (a, b) => (inc ? 1 : -1) * (a < b ? -1 : a > b ? 1 : 0);
|
|
1479
1390
|
var compareString = (inc = true, caseInsensitive = true) => (a, b) => {
|
|
@@ -1496,9 +1407,6 @@ var compareMulti = (sorters) => (a, b) => {
|
|
|
1496
1407
|
return sort();
|
|
1497
1408
|
};
|
|
1498
1409
|
|
|
1499
|
-
// packages/common/util/src/sum.ts
|
|
1500
|
-
var sum = (values) => values.reduce((a, b) => a + b, 0);
|
|
1501
|
-
|
|
1502
1410
|
// packages/common/util/src/throw-unhandled-error.ts
|
|
1503
1411
|
var throwUnhandledError = (error) => {
|
|
1504
1412
|
queueMicrotask(() => {
|
|
@@ -1788,6 +1696,9 @@ var safeParseInt = (value, defaultValue) => {
|
|
|
1788
1696
|
}
|
|
1789
1697
|
};
|
|
1790
1698
|
|
|
1699
|
+
// packages/common/util/src/sum.ts
|
|
1700
|
+
var sum = (values) => values.reduce((a, b) => a + b, 0);
|
|
1701
|
+
|
|
1791
1702
|
// packages/common/util/src/weak.ts
|
|
1792
1703
|
var WeakDictionary = class {
|
|
1793
1704
|
constructor(entries) {
|
|
@@ -1882,6 +1793,95 @@ var WeakDictionary = class {
|
|
|
1882
1793
|
this._finalization.unregister(value);
|
|
1883
1794
|
}
|
|
1884
1795
|
};
|
|
1796
|
+
|
|
1797
|
+
// packages/common/util/src/sliding-window-summary.ts
|
|
1798
|
+
import { invariant as invariant5 } from "@dxos/invariant";
|
|
1799
|
+
var __dxlog_file5 = "/home/runner/work/dxos/dxos/packages/common/util/src/sliding-window-summary.ts";
|
|
1800
|
+
var SlidingWindowSummary = class {
|
|
1801
|
+
constructor(options) {
|
|
1802
|
+
this._sum = 0;
|
|
1803
|
+
this._buffer = new CircularBuffer(options.dataPoints);
|
|
1804
|
+
if (options.precision != null) {
|
|
1805
|
+
invariant5(options.precision >= 0, void 0, {
|
|
1806
|
+
F: __dxlog_file5,
|
|
1807
|
+
L: 26,
|
|
1808
|
+
S: this,
|
|
1809
|
+
A: [
|
|
1810
|
+
"options.precision >= 0",
|
|
1811
|
+
""
|
|
1812
|
+
]
|
|
1813
|
+
});
|
|
1814
|
+
this._precision = Math.pow(10, options.precision);
|
|
1815
|
+
}
|
|
1816
|
+
}
|
|
1817
|
+
record(value) {
|
|
1818
|
+
const evicted = this._buffer.push(value);
|
|
1819
|
+
this._sum += value - (evicted ?? 0);
|
|
1820
|
+
}
|
|
1821
|
+
average() {
|
|
1822
|
+
return this._buffer.elementCount === 0 ? 0 : this._withPrecision(this._sum / this._buffer.elementCount);
|
|
1823
|
+
}
|
|
1824
|
+
computeWindowSummary() {
|
|
1825
|
+
const mean = this.average();
|
|
1826
|
+
const sortedElements = [
|
|
1827
|
+
...this._buffer
|
|
1828
|
+
].sort();
|
|
1829
|
+
const median2 = this._withPrecision(sortedElements.length % 2 === 0 ? (sortedElements[sortedElements.length / 2] + sortedElements[sortedElements.length / 2 - 1]) / 2 : sortedElements[sortedElements.length / 2]);
|
|
1830
|
+
const p90 = this._withPrecision(sortedElements[Math.round(sortedElements.length * 0.9)]);
|
|
1831
|
+
const variance = sortedElements.reduce((acc, v) => acc + Math.pow(v - mean, 2)) / sortedElements.length;
|
|
1832
|
+
const stdDev = this._withPrecision(Math.sqrt(variance));
|
|
1833
|
+
const histogram = sortedElements.reduce((acc, v) => {
|
|
1834
|
+
acc[v] += 1;
|
|
1835
|
+
return acc;
|
|
1836
|
+
}, {});
|
|
1837
|
+
return {
|
|
1838
|
+
mean,
|
|
1839
|
+
median: median2,
|
|
1840
|
+
p90,
|
|
1841
|
+
stdDev,
|
|
1842
|
+
histogram
|
|
1843
|
+
};
|
|
1844
|
+
}
|
|
1845
|
+
_withPrecision(value) {
|
|
1846
|
+
if (this._precision == null) {
|
|
1847
|
+
return value;
|
|
1848
|
+
}
|
|
1849
|
+
return Math.round(value * this._precision) / this._precision;
|
|
1850
|
+
}
|
|
1851
|
+
};
|
|
1852
|
+
|
|
1853
|
+
// packages/common/util/src/callback-collection.ts
|
|
1854
|
+
var CallbackCollection = class {
|
|
1855
|
+
#callbacks = [];
|
|
1856
|
+
append(callback) {
|
|
1857
|
+
this.#callbacks.push(callback);
|
|
1858
|
+
}
|
|
1859
|
+
prepend(callback) {
|
|
1860
|
+
this.#callbacks.unshift(callback);
|
|
1861
|
+
}
|
|
1862
|
+
remove(callback) {
|
|
1863
|
+
this.#callbacks = this.#callbacks.filter((c) => c !== callback);
|
|
1864
|
+
}
|
|
1865
|
+
callParallel(...args) {
|
|
1866
|
+
return Promise.all(this.#callbacks.map((callback) => callback(...args)));
|
|
1867
|
+
}
|
|
1868
|
+
async callSerial(...args) {
|
|
1869
|
+
const results = [];
|
|
1870
|
+
for (const callback of this.#callbacks) {
|
|
1871
|
+
results.push(await callback(...args));
|
|
1872
|
+
}
|
|
1873
|
+
return results;
|
|
1874
|
+
}
|
|
1875
|
+
};
|
|
1876
|
+
|
|
1877
|
+
// packages/common/util/src/chunk-array.ts
|
|
1878
|
+
var chunkArray = (array, size) => {
|
|
1879
|
+
const result = [];
|
|
1880
|
+
for (let i = 0; i < array.length; i += size) {
|
|
1881
|
+
result.push(array.slice(i, i + size));
|
|
1882
|
+
}
|
|
1883
|
+
return result;
|
|
1884
|
+
};
|
|
1885
1885
|
export {
|
|
1886
1886
|
BitField,
|
|
1887
1887
|
Callback,
|