@dxos/util 0.6.5 → 0.6.6-staging.582ce24

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.
@@ -1811,9 +1811,43 @@ var SlidingWindowSummary = class {
1811
1811
  return Math.round(value * this._precision) / this._precision;
1812
1812
  }
1813
1813
  };
1814
+
1815
+ // packages/common/util/src/callback-collection.ts
1816
+ var CallbackCollection = class {
1817
+ #callbacks = [];
1818
+ append(callback) {
1819
+ this.#callbacks.push(callback);
1820
+ }
1821
+ prepend(callback) {
1822
+ this.#callbacks.unshift(callback);
1823
+ }
1824
+ remove(callback) {
1825
+ this.#callbacks = this.#callbacks.filter((c) => c !== callback);
1826
+ }
1827
+ callParallel(...args) {
1828
+ return Promise.all(this.#callbacks.map((callback) => callback(...args)));
1829
+ }
1830
+ async callSerial(...args) {
1831
+ const results = [];
1832
+ for (const callback of this.#callbacks) {
1833
+ results.push(await callback(...args));
1834
+ }
1835
+ return results;
1836
+ }
1837
+ };
1838
+
1839
+ // packages/common/util/src/chunk-array.ts
1840
+ var chunkArray = (array, size) => {
1841
+ const result = [];
1842
+ for (let i = 0; i < array.length; i += size) {
1843
+ result.push(array.slice(i, i + size));
1844
+ }
1845
+ return result;
1846
+ };
1814
1847
  export {
1815
1848
  BitField,
1816
1849
  Callback,
1850
+ CallbackCollection,
1817
1851
  CircularBuffer,
1818
1852
  ComplexMap,
1819
1853
  ComplexSet,
@@ -1832,6 +1866,7 @@ export {
1832
1866
  assignDeep,
1833
1867
  boolGuard,
1834
1868
  bufferToArray,
1869
+ chunkArray,
1835
1870
  compareMulti,
1836
1871
  compareObject,
1837
1872
  compareScalar,